LeadAPIHelperOOB - com escopo

  • Versão de lançamento: Yokohama
  • Atualizado 30 de jan. de 2025
  • 4 min. de leitura
  • A inclusão de script LeadAPIHelperOOB fornece métodos de ajuda chamados pela REST API de lead para executar várias funções, como converter um conjunto de registros de lead de um objeto GlideRecord em uma matriz JSON ou objeto JSON e transformar campos em um objeto de lead.

    Se você quiser personalizar essas funções de ajuda, substitua os métodos nesta inclusão de script na inclusão de script LeadAPIHelper. Os nomes dos métodos que você está substituindo na inclusão de script LeadAPIHelper devem ser os mesmos que aqueles no arquivo de inclusão de script LeadAPIHelperOOB.

    Esta API é fornecida no namespace sn_lead_mgmt_core. Para acessar a API, o plug-in Lead Management Data Model (sn_lead_mgmt_core) deve ser ativado na instância e o usuário de chamada deve ter a função sn_lead_mgmt_core.lead_integrator.

    Para obter informações adicionais sobre Gestão de leads, consulte Using Lead Management.

    LeadAPIHelperOOB – getJSONFromGR (GlideRecord gr, campos de matriz)

    Converte um objeto GlideRecord em um objeto JSON. Este método itera sobre os campos do GlideRecord, verifica seus tipos e formata adequadamente seus valores em uma estrutura compatível com JSON.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    gr GlideRecord Objeto GlideRecord a ser convertido em um objeto JSON.
    campos Matriz Opcional. Nomes de campos separados por vírgulas a serem incluídos no objeto JSON. Esses nomes devem corresponder exatamente aos nomes no registro de lead.
    Por exemplo: ["account", "first_name", "do_not_call", "lead_line_items"]
    Nota:

    Se o parâmetro fields for nulo ou contiver o valor "lead_line_items", o método buscará cada registro de item de linha associado, incluindo todos os campos do item de linha.

    Este método só oferece suporte à conversão de campos individuais da tabela Lead [sn_lead_mgmt_core_lead], não da tabela Item de linha de lead [sn_lead_mgmt_core_lead_line_item]. Se você especificar um campo específico da tabela Item de linha de lead, ele será ignorado.

    Padrão: todos os campos de registro de lead estão incluídos no objeto JSON.

    Tabela 2. Retornos
    Tipo Descrição
    Objeto JSON Objeto JSON que contém os campos do GlideRecord especificado.

    Cada campo no GlideRecord é convertido em um par de chave-valor. O tratamento especial é aplicado a campos de referência, campos de opção, campos de data/hora e outros tipos de dados específicos para garantir que estejam formatados corretamente.

    O exemplo de código a seguir mostra onde adicionar seu código personalizado para o método getJsonFromGR() na inclusão de script LeadAPIHelper.

    var LeadAPIHelper = Class.create(); 
    LeadAPIHelper.prototype = Object.extendsObject(LeadAPIHelperOOB, {
    
    // Define overriding functions here
    getJSONFromGR: function(gr, fields) {
    
    // Add your custom code here
    },
    
    type: 'LeadAPIHelper'
    });

    LeadAPIHelperOOB – getLeadsJSON(GlideRecord leadsGr, Campos de matriz)

    Converte um conjunto de registros de lead de um objeto GlideRecord em uma matriz JSON. Você deve especificar os campos de registro de lead que deseja incluir na matriz JSON.

    Tabela 3. Parâmetros
    Nome Tipo Descrição
    leadsGr GlideRecord Objeto GlideRecord que contém os registros de lead a serem convertidos para JSON.

    Tabela: lead [sn_lead_mgmt-core_lead]

    campos Matriz Nomes de campos separados por vírgulas a serem incluídos no objeto JSON. Esses nomes devem corresponder exatamente aos nomes no registro de lead.
    Por exemplo: ["account", "first_name", "do_not_call", "lead_line_items"]
    Nota:

    Se o parâmetro fields for nulo ou contiver o valor "lead_line_items", o método buscará cada registro de item de linha associado, incluindo todos os campos do item de linha.

    Este método só oferece suporte à conversão de campos individuais da tabela Lead [sn_lead_mgmt_core_lead], não da tabela Item de linha de lead [sn_lead_mgmt_core_lead_line_item]. Se você especificar um campo específico da tabela Item de linha de lead, ele será ignorado.

    Tabela 4. Retornos
    Tipo Descrição
    Matriz de objetos JSON Cada objeto representa um lead que contém os campos especificados. Se aplicável, ele também inclui uma matriz de objetos de item de linha de lead para cada lead.

    Cada campo no GlideRecord é convertido em um par de chave-valor. O tratamento especial é aplicado a campos de referência, campos de opção, campos de data/hora e outros tipos de dados específicos para garantir que estejam formatados corretamente.

    O exemplo de código a seguir mostra onde adicionar seu código personalizado para o método getLeadsJson() na inclusão de script LeadAPIHelper.

    var LeadAPIHelper = Class.create();
    LeadAPIHelper.prototype = Object.extendsObject(LeadAPIHelperOOB, { 
    
    // Define overriding functions here 
    getLeadsJson: function(leadsGR, fields) {
    
    // Add your custom code here
    }, 
    
    type: 'LeadAPIHelper' 
    }); 

    LeadAPIHelperOOB – getTransformedLeadObject(Object leadObject)

    Transforma o objeto de lead especificado.

    Esta transformação inclui:
    • Removendo campos ignorados.
    • Convertendo campos de referência em seus valores associados, como um sys_id.
    • Combinando textos de anotações de trabalho em uma cadeia de caracteres separada por vírgulas.
    • Validação dos campos conta, contato e consumidor. Os valores de conta, contato e consumidor serão ignorados se conta e consumidor contiverem valores.
    Tabela 5. Parâmetros
    Nome Tipo Descrição
    leadObject Objeto Objeto de lead a ser transformado. Este objeto contém detalhes do lead e seus itens de linha de lead relacionados.
    Tabela 6. Retornos
    Tipo Descrição
    Objeto Objeto de lead transformado.

    O exemplo de código a seguir mostra onde adicionar seu código personalizado para o método getTransformedLeadObject() na inclusão de script LeadAPIHelper.

    var LeadAPIHelper = Class.create();
    
    LeadAPIHelper.prototype = Object.extendsObject(LeadAPIHelperOOB, {
    
    // Define overriding functions here 
    getTransformedLeadObject: function(leadObject) { 
    
    // Add your custom code here
    }, 
    
    type: 'LeadAPIHelper'
    });