Ação personalizada Obter todas as oportunidades

  • Versão de lançamento: Yokohama
  • Atualizado 30 de jan. de 2025
  • 2 min. de leitura
  • A ação Obter todas as oportunidades recupera registros de oportunidade da aplicação Salesforce. Esta ação é invocada quando você exibe a tabela Oportunidade remota.

    Entradas de ação

    A ação Obter todas as oportunidades usa um único parâmetro de número inteiro que identifica o número máximo de registros a serem retornados pela consulta. As ações baseadas em REST não podem acomodar paginação e, por esse motivo, é importante limitar o número de registros retornados da aplicação de terceiros. Não é recomendável colocar mais de 1.000 registros na tabela remota. O número padrão de registros é 500.

    Tela de entradas da ação Obter todas as oportunidades mostrando a entrada da ação e seu valor padrão.

    Etapa de pré-processamento

    A etapa de script de pré-processamento usa a entrada de ação como sua.

    Tela da etapa de pré-processamento mostrando a entrada da ação com um seletor de cápsula para gerar uma consulta.

    O script de pré-processamento cria uma consulta SELECT para todas as oportunidades limitadas pelo número máximo de registros permitidos. Esta consulta é baseada na Salesforce Object Query Language (SOQL).

    (function execute(inputs, outputs) {
      
      outputs.query = "query/?q=SELECT+Name,Id,AccountId,CloseDate,Amount,” +
                      “StageName,Probability,Type+FROM+Opportunity”;
    
      outputs.query = outputs.query +
                      “+LIMIT+” + inputs.max_number_of_opportunity_records; 
      
    })(inputs, outputs);
    

    Você deve especificar os campos dos registros de oportunidade nos quais está interessado. Este exemplo usa os seguintes campos: Nome, ID, ID da conta, Data de fechamento, Valor, Nome da fase e Probabilidade. Para ver a lista completa de campos disponíveis, use a ação Obter campos de oportunidade.

    Você também pode controlar a ordem da pesquisa de consulta adicionando a palavra-chave ORDERED BY e o valor para a direção da ordem ASC ou DESC. Por exemplo, você pode adicionar a seguinte linha ao script antes da linha que especifica o limite. Isso faz com que a consulta retorne os primeiros 500 registros com a data de fechamento mais recente.

    outputs.query = outputs.query + “+ORDERED+BY+CloseDate+DESC”;

    A saída de pré-processamento é uma consulta.

    Seção de variável de saída mostrando o parâmetro de consulta como uma saída.

    Etapa REST

    A etapa REST é uma etapa REST padrão das ações baseadas em REST do spoke do Salesforce. Você não precisa fazer nenhuma mudança. Certifique-se de que ele aponte para o alias de conexão correto.

    Tela da etapa REST mostrando detalhes da conexão e detalhes da solicitação para verificação.

    Etapa de pós-processamento

    A etapa de script de pós-processamento usa a entrada da ação e a saída da etapa REST como suas entradas.

    Tela da etapa de pós-processamento mostrando as entradas, incluindo a entrada de ação e as variáveis de entrada.

    O script de pós-processamento verifica se há erros na resposta da consulta, define a mensagem de erro se necessário, extrai dados de oportunidade do corpo da resposta e cria uma mensagem informativa para indicar que nem todos os dados foram recuperados do Salesforce devido à limitação do número de registros .

    (function execute(inputs, outputs) {
    
      try{
        var response = JSON.parse(inputs.res_body);
      } catch(e) {
        outputs = errorHandler(inputs, outputs);
      }
    
    
      function createOutputJson(inputs, outputs) {
        try{
          outputs.records = { data: response.records };
          outputs.status = "Success";
    
          if ( outputs.records.data.length ==   
               inputs.max_number_of_opportunity_records ) {
            outputs.info_message = "Opportunity retrieve operation was “ +
                                   “limited to" +
                                   inputs.max_number_of_opportunity_records +
                                   " records.";
          }      
        } catch(e) {
          outputs = errorHandler(inputs, outputs);
        }
        return outputs;
      }
    
    
      function errorHandler(inputs, outputs) {
        outputs.status = "Error";
        outputs.error_message = "Unknown Error. “ + 
                                “Please check error log for more information";
    
        if(inputs.res_body.contains("message"))
          outputs.error_message = response[0].message;
    
        return outputs;
      }
    
      if(inputs.status_code == "200")
        outputs = createOutputJson(inputs, outputs);
      else
        outputs = errorHandler(inputs, outputs);
    
    })(inputs, outputs);
    

    A seguir estão as saídas da etapa de pós-processamento.

    Tela de variáveis de saída na etapa de pós-processamento mostrando registros, error_messages, info_messages e variáveis de status.

    Saídas de ação

    As saídas de ação consistem no status da consulta, mensagens de erro e informações e registros de oportunidade. Consulte a captura de tela anterior para as saídas da ação.