Skip to content
Voltar ao blog

Primeiros passos com o CPQ DevKit™ for Salesforce (QCP no VS Code)

O CPQ DevKit™ for Salesforce é uma extensão do VS Code focada no desenvolvimento de Quote Calculator Plugin (QCP) do Salesforce CPQ. Ela substitui o ciclo de edição no navegador por um workflow local: edite em src/, sincronize com SBQQ__CustomScript__c e compare (diff) as alterações como código normal.

Pré-requisitos

  • VS Code + a extensão instalada (CPQConsultant.cpq-devkit-sf)
  • Uma org Salesforce com o Salesforce CPQ instalado
  • QCP habilitado nas configurações do pacote CPQ (para que seus registros de custom script sejam usados)

Pastas e arquivos principais

  • src/*.ts — seus scripts QCP locais (salvos como .ts para aproveitar a ajuda do editor, mas você deve escrever JavaScript válido, não TypeScript)
  • .cpqdevkit/sfcpq/qcp-config.json — autenticação criptografada da org + mapeamentos de arquivos/registros (mantenha fora do Git)
  • .cpqdevkit/sfcpq/qcp-log.json — logs de sync opcionais

1) Inicialize o projeto e autentique-se

  1. Abra uma pasta vazia no VS Code (ou um repositório existente).
  2. Execute CPQ DevKit™ for Salesforce: Initialize Project.
  3. Escolha o tipo da sua org (Sandbox / Dev / Prod / Custom) e conclua o fluxo de login OAuth.

Depois de autenticada, a extensão armazena as credenciais criptografadas em .cpqdevkit/sfcpq/ e atualiza o .gitignore para que você não faça commit delas.

2) Crie ou puxe scripts QCP

Após a inicialização, traga os scripts para o seu workspace:

  • CPQ DevKit™ for Salesforce: Pull QCP records from Salesforce (puxa todos os scripts)
  • CPQ DevKit™ for Salesforce: Create example QCP files in your project (adiciona exemplos em src/)

3) Verificação rápida de sanidade

Execute CPQ DevKit™ for Salesforce: Validate org credentials are valid para confirmar que você consegue se conectar e consultar a org.

Observação importante sobre o "TypeScript"

Os arquivos são armazenados como .ts, mas eles não são compilados antes de serem enviados de volta ao Salesforce. Evite sintaxe exclusiva do TypeScript (tipos, enums, interfaces, as, decorators etc.) — mantenha um JavaScript compatível com ES6.