Exemplo de uso do pacote Salesforce e variável de registro

Crie um bot que consulte objetos do Salesforce e grave dados em um arquivo CSV. O bot também usa uma variável de registro para recuperar dados de registros individuais obtidos do Salesforce.

Pré-requisitos

  • Configure um aplicativo conectado no Salesforce, caso ainda não tenha um.
  • Esse bot usa o modo de conexão OAuth da Control Room. Crie uma conexão OAuth da Control Room antes de começar a criar o bot. Para obter mais informações, consulte ação Autenticação do Salesforce.
  • Configure dados de amostra de oportunidade e de contas no Salesforce. Se não tiver dados de amostra, você pode importar os dados dos seguintes arquivos CSV para o Salesforce:
Suponha que a equipe de vendas da Acme Solutions Pvt Ltd decida automatizar o processo de obtenção de todas as gravações de oportunidades que estão no status de prospecção e atribuí-las a representantes de vendas para acompanhamento. A equipe cria um bot que executa as seguintes tarefas:
  • Busca todas as oportunidades com o status Prospecção do objeto Oportunidades no Salesforce.
  • Busca o nome da conta do objeto Conta usando o ID da conta recuperado de cada registro de oportunidade.
  • Usa um registro para capturar dados de registros de oportunidades individuais.
  • Faz as gravações em um arquivo CSV, que pode ser processado mais tarde para atribuir representantes de vendas.
O bot de amostra usa os pacotes Salesforce, Gravar, Loop e Tabela de dados junto com variáveis de registro para mostrar como executar as seguintes tarefas de automação:
  • Consultas a um objeto do Salesforce usando a ação Executar SOQL do Salesforce.
  • Obter uma gravação individual de um objeto do Salesforce usando a ação Obter gravação do Salesforce.
  • Atualizar variáveis de registro e redefinir variáveis de registro.
  • Inserir registros em uma variável de Tabela de dados.
  • Gravar uma tabela de dados em um arquivo CSV.

Procedimento

  1. Crie um bot.
    1. No painel do lado esquerdo, clique em Automação. Uma lista de formulários e bots disponíveis é exibida.
    2. Clique em Criar novo > Task Bot.
    3. Em Nome, digite Get Sales Opportunities.
    4. Clique em Criar e editar.
  2. Autentique com o Salesforce. Para este tutorial, a conexão OAuth de Control Room é usada como Tipo de autenticação. As instruções de configuração da conexão OAuth estão além do escopo deste tutorial. Se não estiver familiarizado com a configuração de conexões OAuth, siga as instruções apresentadas nesta página ou use OAuth 2 - Credenciais do cliente como Tipo de autenticação e apresente o ID do cliente, o segredo do cliente, o nome de usuário e a senha do Salesforce na ação Autenticação do Salesforce.
    1. No painel Ações, localize e adicione a ação Salesforce > Autenticação ao Editor de bot.
    2. Em Tipo de autenticação, selecione Conexão OAuth da Control Room.
    3. Clique em Escolher e selecione a conexão OAuth que você configurou com os seguintes detalhes:
      • Tipo de provedor: Salesforce
      • Nome da conexão: a conexão que você configurou.
      • Tipo de token: Compartilhado.
    4. Em Versão da API, digite o número da versão da API para o aplicativo conectado ao Salesforce. Por exemplo, 50.0.
    5. Deixe o Nome da sessão como Default.
    6. Em Variáveis mapeadas, clique em Adicionar mapeamento de variável e, em seguida, mapeie a chave IntanceUrl para uma variável de string chamada InstanceUrl.
  3. Para verificar se há erro de autenticação antes de executar outras tarefas, use ações Tentar Capturar.
    1. No painel Ações, localize e adicione a ação Gerenciador de erros > Tentar ao Editor de bot.
    2. Clique no ícone do bloco Capturar.
    3. Em Exceção, selecione Gerenciador de erros.
    4. Em Atribuir mensagem de exceção a, clique em (x) e crie uma variável de string chamada ErrorMessage.
    5. Adicione a ação Caixa de mensagem dentro do bloco Capturar.
    6. Em Inserir a mensagem a ser exibida, selecione a variável ErrorMessage e salve as alterações.
  4. Consulte o objeto Salesforce Opportunity para buscar gravações de oportunidades com o status Prospecção.
    1. No painel Ações, localize e adicione a ação Salesforce > Executar SOQL dentro do bloco Tentar.
    2. Em Consulta SOQL a ser executada, digite a seguinte consulta.
      SELECT Id, Name, AccountId, Amount, CloseDate, StageName, NextStep FROM Opportunity WHERE StageName = 'Prospecting'
    3. Em Incluir registros excluídos, clique em Não.
    4. Verifique se Default está definido como o Nome da sessão.
    5. Em Salvar o resultado em uma variável, clique em (x) e crie uma variável de lista chamada list_records_prospecting.
    6. Salve as alterações.
  5. Execute loop da lista de registros de oportunidades recuperadas.
    1. No painel Ações, encontre e adicione a ação Loop > Loop após a ação Executar SOQL no bloco Tentar.
    2. Em Iterador, selecione Para cada item da lista.
    3. Em lista, selecione a variável list_records_prospecting.
    4. Em Atribuir o valor atual à variável, clique em (x) para criar uma variável chamada dict_record_opportunity com o tipo Qualquer um.
      A seguir, um exemplo de um registro armazenado como dicionário. O bot recupera valores apenas dos campos Nome, Nome da conta, Quantidade, CloseDate, StageName e NextStep e deixa de fora o restante.
      {attributes,com.automationanywhere.botcommand.data.impl.DictionaryValue@5d804b9c},{Id,0065j00001Q2ISAAA3},{Name,Opportunity #1},{AccountId,0015j00001BU2hnAAD},{Amount,2000.0},{CloseDate,2023-10-05},{StageName,Prospecting},{NextStep,Call to Discuss}
    5. Salve as alterações.
  6. Antes de recuperar os valores de cada campo em um registro, crie duas variáveis de registro: uma para armazenar os valores de cada registro de oportunidade e outra para redefinir a primeira variável de registro no final de cada iteração.
    1. No painel Variáveis, clique em Criar variável.
    2. Em Tipo, selecione Registro.
    3. Em Nome, digite out_record_prospecting.
    4. Clique em Create (Criar).
    5. Repita os passos de a até d para criar outra variável de registro com os seguintes detalhes:
      Tipo: Record
      Nome: record_empty
  7. Atualize a variável de registro com o nome da oportunidade do registro atual.
    1. No painel Ações, encontre e adicione a ação Gravar > Adicionar coluna na ação Loop.
    2. Em Variável de registro de origem, selecione out_record_prospecting.
    3. Em Tipo da coluna, selecione String e, em Valor, digite $dict_record_opportunity{Name}$.
    4. Clique em índice específico, digite 0.
    5. Em Variável de registro de destino, selecione out_record_prospecting.
    6. Salve as alterações.
  8. As gravações de oportunidades recuperadas do Salesforce contêm apenas os IDs das contas e não os nomes das contas. Recupere o nome da conta usando o ID da conta de cada gravação.
    1. No painel Ações, encontre e adicione a ação Salesforce > Obter gravação na ação Loop.
    2. Em Nome do Objeto, insira Account.
    3. Selecione ID do registro e digite $dict_record_opportunity{AccountId}$.
    4. Em Campos e dados, selecione Lista e clique em Adicionar.
    5. Em Tipo, selecione String.
    6. Em Valor em 0, digite Name.
    7. Verifique se Default está definido como o nome da Sessão do Salesforce.
    8. Em Variáveis mapeadas, clique em Adicionar mapeamento de variável para mapear a chave Name para uma variável de string AccountName. A chamada Get record recupera o nome da conta usando a chave Nome e o armazena na variável AccountName.
    9. Salve as alterações.
  9. Adicione uma nova coluna e atualize a variável de registro com o nome da conta.
    1. No painel Ações, encontre e adicione a ação Gravar > Adicionar coluna na ação Loop.
    2. Em Variável de registro de origem, selecione out_record_prospecting.
    3. Em Tipo da coluna, selecione String e, em Valor, digite $AccountName$.
    4. Clique em índice específico, digite 1.
    5. Em Variável de registro de destino, selecione out_record_prospecting.
    6. Salve as alterações.
  10. Adicione uma nova coluna e atualize a variável de registro com o valor.
    1. No painel Ações, encontre e adicione a ação Gravar > Adicionar coluna na ação Loop.
    2. Em Variável de registro de origem, selecione out_record_prospecting.
    3. Em Tipo da coluna, selecione Número e, em Valor, digite $dict_record_opportunity{Amount}$.
    4. Clique em índice específico, digite 2.
    5. Em Variável de registro de destino, selecione out_record_prospecting.
    6. Salve as alterações.
  11. Atualize a variável de registro com CloseDate, StageName e NextStep.
    1. Adicione a ação Adicionar coluna à ação Loop e, em seguida, insira os seguintes detalhes:
      Campo Valor
      Variável de registro de origem out_record_prospecting
      Tipo de coluna String
      Valor $dict_record_opportunity{CloseDate}$
      índice específico 3
    2. Adicione a ação Adicionar coluna à ação Loop e, em seguida, insira os seguintes detalhes:
      Campo Valor
      Variável de registro de origem out_record_prospecting
      Tipo de coluna String
      Valor $dict_record_opportunity{StageName}$
      índice específico 4
    3. Adicione a ação Adicionar coluna à ação Loop e, em seguida, insira os seguintes detalhes:
      Campo Valor
      Variável de registro de origem out_record_prospecting
      Tipo de coluna String
      Valor $dict_record_opportunity{NextStep}$
      índice específico 5
    4. Salve as alterações.
  12. Insira o registro em uma variável DataTable.
    1. Para manter o controle das iterações e usá-lo como um número de índice de linha, crie uma variável de Número chamada counter e defina o valor padrão como 0.
    2. No painel Ações, encontre e adicione a ação Tabela de dados > Inserir linha na ação Loop.
    3. Em Nome da tabela de dados, clique em (x) e crie uma variável de tabela chamada table_records.
    4. Clique em índice específico e digite $counter$.
    5. Em Nome da gravação da linha, selecione out_record_prospecting.
    6. Salve as alterações.
  13. Incremente a variável counter em 1.
    1. No painel Ações, encontre e adicione a ação Número > Incremento na ação Loop.
    2. Em Inserir número, digite $counter$.
    3. Em Inserir valor de incremento, digite 1.
    4. Em Atribuir a saída a uma variável, selecione counter.
    5. Salve as alterações.
  14. Redefina a variável de registro out_record_prospecting antes da próxima iteração.
    1. No painel Ações, encontre e adicione a ação Gravar > Atribuir na ação Loop.
    2. Em Selecionar a variável de registro de origem, selecione record_empty.
    3. Em Selecionar a variável de registro de origem, clique em Registro e selecione out_record_prospecting. Como a variável record_empty não tem nenhum valor, out_record_prospecting será redefinida.
    4. Salve as alterações.
  15. Grave os registros de oportunidades recuperados em um arquivo CSV.
    1. No painel Ações, encontre e adicione a ação Tabela de dados > Gravar em arquivo fora da ação Loop.
    2. Em Nome da tabela de dados, selecione table_records.
    3. Em Inserir nome do arquivo, especifique o caminho do arquivo CSV. Por exemplo, C:\bots\opportunities.csv.
    4. Selecione Criar pastas/arquivos, se não houver.
    5. Clique em Substituir arquivo existente.
    6. Salve as alterações e execute o bot.