---
sourceDocument: Yokohama Customer Service Management
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/yokohama/customer-service-management

 Release :

    - yokohama

ft:locale :

    - pt-BR

ft:publication_title :

    - Yokohama Customer Service Management

ft:clusterId :

    - csm

bundleId :

    - csm

workflow :

    - Customer and Industry


---

# Ação personalizada Obter Todas as oportunidades

# Ação personalizada Obter Todas as oportunidades {#ariaid-title1}

* Versão de lançamento: Yokohama
* 
* Atualizado 30 de jan. de 2025
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 2 min. de leitura

. Obtenha todas as oportunidades A ação recupera registros de oportunidade da aplicação Salesforce. Esta ação é invocada quando você exibe a tabela de oportunidade remota.

## Entradas de ação {#csm-get-all-opportunities-action__section_cz2_m2z_53b}

. Obtenha todas as oportunidades a ação usa um único parâmetro 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 a 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.

## Etapa de pré-processamento {#csm-get-all-opportunities-action__section_hrw_m2z_53b}

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

O script de pré-processamento cria uma consulta DE SELEÇÃO para todas as oportunidades limitadas pelo número máximo de registros permitidos. Esta consulta é baseada na linguagem de consulta de objeto do Salesforce (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 encerramento, Valor, nome da fase e probabilidade. Para ver a lista completa de campos disponíveis, use Obter campos de oportunidade ação.

Você também pode controlar a ordenação da pesquisa de consulta adicionando a palavra-chave ORDEND BY e o valor para a direção do pedido 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.

## Etapa REST {#csm-get-all-opportunities-action__section_j3b_n2z_53b}

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

## Etapa de pós-processamento {#csm-get-all-opportunities-action__section_jxp_mfz_53b}

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

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 saídas da etapa de pós-processamento.

## Saídas de ação {#csm-get-all-opportunities-action__section_xnl_2gz_53b}

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 obter as saídas da ação.

