Scripts

  • Versão de lançamento: Australia
  • Atualizado 12 de mar. de 2026
  • 2 min. de leitura
  • Saiba como o script se estende CPQ além de regras simples: entenda onde os scripts são executados, o que eles retornam e como usá-los para modelar lógica de configuração avançada com segurança e eficiência.

    O script é aprimorado CPQ quando a lógica de configuração requer mais flexibilidade do que regras simples. Os administradores podem usar scripts para calcular valores complexos, avaliar condições ou manipular dados do produto dinamicamente. Os scripts estão disponíveis em condições de regra, ações e em aprimoramentos de blueprint para inicialização, validação ou definição de preço.

    O script complementa, mas não substitui, as opções declarativas. Primeiro, use regras padrão, extensões de lista de seleção e seletores de produto. Script de reserva para cenários especializados.

    Onde você pode usar scripts

    • Condições da regra: Retornar verdadeiro ou falso para determinar se as ações são executadas.
    • Ações de regra: Defina valores de campo, oculte ou exiba elementos ou crie listas de produtos dinamicamente.
    • Aprimoramentos de blueprint: Inicialize dados, chame sistemas externos ou enriqueça configurações durante eventos "Ao configurar" ou "Reconfigurar".

    Cada tipo de script requer um valor de retorno específico para garantir resultados previsíveis.

    Valores de retorno esperados

    Tabela 1. Valores de retorno esperados
    Tipo de Script Formato de retorno Exemplo
    Condição avançada Booliano verdadeiro ou falso
    Ocultação avançada Cadeia de caracteres "field_to_hide"
    Determinação de campo Depende do tipo de campo Número → 5 Texto → "Vermelho" → de seleção múltipla
    ["Option1",
                  "Option2"]
    Inclusão e exclusão Matriz ["OpçãoA", "OpçãoB"]
    Ação do produto Objeto ProductList ProductList.add((id:"123", qty:2))
    Enriquecimento Objeto de configuração atualizado Retornar cfgRequest;

    Objetos de configuração

    Os scripts interagem com os seguintes objetos de configuração:

    • cfg : Um snapshot somente leitura dos valores de campo atuais usados pelas regras.
    • CfgRequest : Um objeto gravável disponível em enriquecimentos; use .set("valor", x) para modificar campos.
    • ProductList : Usado para adicionar ou modificar itens na lista de materiais (BOM).

    Você pode referenciar propriedades usando notação de ponto ou colchete ( CfgRequest.fieldName ou CfgRequest["fieldName"] ).

    Trabalhando com dados externos

    Use dados externos para aprimorar configurações dinamicamente:

    • Tabelas gerenciadas: Consultar dados com pesquisa () para mapear resultados em campos ou produtos.
    • Conexões externas: Faça chamadas aprovadas (por exemplo, consultas de SOQL para o Salesforce) para preencher conjuntos ou valores de campo em aprimoramentos.

    Essas técnicas reduzem a lógica codificada e centralizam a gestão de dados.

    Depuração e testes

    A interface de script inclui ferramentas integradas:

    • Sugestões de código: Preenchimento automático para funções, variáveis e campos.
    • Painel de ajuda: Lista todas as funções e parâmetros compatíveis com exemplos.
    • Depurador: Aceita entrada JSON e exibe a saída e. log() resultados. Salve entradas de teste comuns como comentários para reutilização.

    Diretrizes gerais

    • Prefira regras declarativas quando possível.
    • Mantenha scripts concisos e focados em uma única tarefa.
    • Sempre retorne o tipo de dados esperado.
    • Use nomes e comentários de variáveis limpos.
    • Evite lógica condicional aninhada ou longa. Use tabelas ou conexões externas.