Crie uma ação personalizada para gerar uma matriz de objetos a partir de uma lista de registros

  • Versão de lançamento: Washingtondc
  • Atualizado 1 de fev. de 2024
  • 4 min. de leitura
  • Gere uma matriz de objetos de uma lista de registros do usuário. Aprenda a usar uma etapa Script para fazer iteração por meio de uma lista de registros.

    Antes de Iniciar

    Função necessária: administrador

    Por Que e Quando Desempenhar Esta Tarefa

    Use este exemplo para ver demonstrações dessas operações e etapas.
    • Crie uma entrada de ação para um registro de Departamento.
    • Pesquise no máximo três registros de usuário para a entrada de ação do departamento.
    • Configure uma etapa de script para processar uma lista de registros de usuário.
    • Crie uma variável de entrada de script que contenha a lista de registros de usuário.
    • Script de gravação que cria uma matriz de contatos vazia.
    • Script de gravação que itera pela lista de registros do usuário.
    • Escreva um script que cria um objeto de contato e mapeia os valores do campo de registro do usuário para o objeto de contato.
    • Escreva um script que preencha a matriz de contatos com o objeto de contato atual.
    • Crie variáveis de saída de script para a matriz de contatos e o objeto de contato secundário.
    • Salve o objeto de contato como modelo.
    • Gere a matriz de objetos de contatos gerada como uma cápsula de dados.
    • Teste a ação com um departamento de amostra.

    Procedimento

    1. Crie uma aplicação para armazenar seu trabalho.
      Por exemplo, crie Minha aplicação.
    2. Navegar até Todos > Automação de Processo > Flow Designer.
      O sistema exibe a página principal Flow Designer.
    3. Selecionar Novo > Ação
      O sistema exibe a caixa de diálogo Propriedades da ação.
    4. Insira esses valores de amostra.
      Campo Valor
      Nome Criar matriz de objetos de contatos
      Aplicação Minha aplicação
      Acessível de Todos os escopos de aplicação
    5. Selecione Enviar.
      O sistema exibe a interface Designer de ações.
    6. Em Contorno da ação, selecione Entradas > Criar Entrada
      O sistema exibe uma nova entrada de ação.
    7. Configure a entrada da ação com esses valores.
      Campo valor
      Rótulo Departamento
      Tipo Departamento.Referência [Reference.cmn_department]
      Obrigatório Verdadeiro
    8. Em Contorno da ação, selecione Adicionar uma nova etapa.
      O sistema exibe uma lista de etapas disponíveis.
    9. Selecionar registrosde pesquisa
    10. Configure a etapa com esses valores.
      Campo Valor
      Tabela Usuário [sys_user]
      Condições [Department][is][action->Department]
      Ordenar por Nome
      Tipo de Classificação a até z
      Máximo de Resultados 3
      Nota:
      Este exemplo limita a configuração Máximo de resultados a três registros apenas para fins de demonstração.
    11. Em Contorno da ação, selecione Adicionar uma nova etapa.
      O sistema exibe uma lista de etapas disponíveis.
    12. Selecione Script.
    13. Em Tempo de execução necessário, selecione Instância.
    14. Na seção Variáveis de entrada, selecione Criar variável.
    15. Configure a variável de entrada com esses valores.
      Campo Valor
      Nome userRecords
      valor [etapa->Pesquisar registros etapa->Registros do usuário]
      Nota:
      Você pode selecionar a cápsula de dados de registros do usuário no painel de dados ou no botão Seletor de cápsula de dados.
    16. Para Script, insira o texto a seguir.
      (function execute(inputs, outputs) {
        //Create an empty array
        var contactsArray = [];
        var i = 0;
        //Iterate through the list of User records
        while(inputs.userRecords.next()) {
          //Create an empty object for each iteration
          var contactObject = {};
          //Query User records to assign object values
          contactObject.first_name = inputs.userRecords.getValue('first_name');
          contactObject.last_name = inputs.userRecords.getValue('last_name');
          contactObject.email_address = inputs.userRecords.getValue('email');
          //Add current object to array
          contactsArray[i] = contactObject;
          i += 1;
        }
        outputs.contacts = contactsArray;
      })(inputs, outputs);
    17. Em Variáveis de saída, selecione Criar variável.
    18. Configure a variável de saída com esses valores.
      Rótulo Nome Tipo Obrigatório
      contatos contatos Array.Object Verdadeiro
    19. Expanda os contatos Array.Object e renomeie o item secundário como contato.
    20. Na linha do objeto de contato, selecione Adicionar item secundário.
    21. Configure o item secundário com esses valores.
      Rótulo Nome Tipo Obrigatório
      nome first_name Cadeia de caracteres Verdadeiro
    22. Na linha do objeto de contato, selecione Adicionar item secundário.
    23. Configure o item secundário com esses valores.
      Rótulo Nome Tipo Obrigatório
      sobrenome last_name Cadeia de caracteres Verdadeiro
    24. Na linha do objeto de contato, selecione Adicionar item secundário.
    25. Configure o item secundário com esses valores.
      Rótulo Nome Tipo Obrigatório
      endereço de e-mail email_address Cadeia de caracteres Verdadeiro
    26. Na linha do objeto de contato, selecione Alternar entradas avançadas.
    27. Em Opções avançadas, selecione Salvar como modelo.
      O sistema exibe a caixa de diálogo Salvar como modelo.
    28. Em Insira um nome, insira contato.
    29. Clique em Salvar.
    30. Em Contorno da ação, selecione Saídas > Criar Saída.
    31. Configure a saída da ação com esses valores.
      Rótulo Nome Tipo Obrigatório
      contatos contatos Array.Object Verdadeiro
    32. Expanda os contatos Array.Object.
    33. Na linha do objeto de contato, selecione Alternar entradas avançadas.
    34. Em Opções avançadas, selecione Estrutura > Iniciar a partir do Modelo.
      O sistema exibe Modelo.
    35. Em Modelo, selecione o modelo que você salvou anteriormente.
      Por exemplo, selecione Minha aplicação: contato.
    36. Selecione Sair do modo de edição.
      O sistema exibe os campos de saída que você criou.
    37. Para contatos, selecione [etapa->etapa de script->contatos].
      Nota:
      Você pode selecionar a cápsula de dados de contatos da etapa de script no painel de dados ou no botão Seletor de cápsula de dados.
    38. Clique em Salvar.
    39. Selecione Testar.
      O sistema exibe a caixa de diálogo Testar ação.
    40. Insira o seguinte valor de teste:
      Entrada valor
      Departamento Desenvolvimento
    41. Selecione Executar teste.
      O sistema executa a ação com os valores de teste fornecidos.
    42. Selecione A execução do seu teste foi concluída. Visualize os detalhes de execução da ação.
      O sistema exibe os detalhes da execução da ação.
    43. Revise o valor de tempo de execução dos dados de saída da ação.
      O sistema exibe os dados de saída no formato JSON.
      Para este exemplo, o objeto de contatos contém uma matriz de objetos de contato com nome, sobrenome e informações de e-mail para três usuários no departamento de desenvolvimento.
      {
          "contacts": 
              "contact": [
                  {
                      "email_address": "allyson.gillispie@example.com",
                      "first_name": "Allyson",
                      "last_name": "Gillispie"
                  },
                  {
                      "email_address": "alva.pennigton@example.com",
                      "first_name": "Alva",
                      "last_name": "Pennigton"
                  },
                  {
                      "email_address": "andrew.och@example.com",
                      "first_name": "Andrew",
                      "last_name": "Och"
                  }
              ]
          }
      }
      

    Resultado

    Você tem uma ação personalizada que pesquisa os usuários de um determinado departamento e converte esses usuários em uma matriz de objetos de contato.

    O que Fazer Depois

    Personalize esta ação para usar sua própria lógica.