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

  • Versão de lançamento: Xanadu
  • Atualizado 1 de ago. de 2024
  • 5 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 de flow_designer

    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 Departamento.
    • Configure uma etapa de script para processar uma lista de registros de usuário.
    • Crie uma variável de entrada de script que contém a lista de registros de usuário.
    • Script de gravação que cria uma matriz de contatos vazia.
    • Script de gravação que itera por meio da lista de registros de usuário.
    • Script de gravação que cria um objeto de contato e mapeia os valores do campo de registro de usuário para o objeto de contato.
    • Script de gravação que preenche 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 um 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. Opcional: Crie uma aplicação para armazenar seu trabalho.
      Você pode usar App Engine Studio para planejar, criar e implantar aplicações. Para obter mais informações sobre como criar uma aplicação personalizada, consulte Building apps in App Engine Studio.
      Por exemplo, crie uma aplicação chamada Minha aplicação.
    2. Navegar até Todos > Automação de Processo > Workflow Studio.
    3. Na página inicial, selecione Ações.
    4. Selecionar Novo > Ação
      O sistema exibe a caixa de diálogo Propriedades da ação.
    5. Insira estes valores de amostra.
      Campo Valor
      Nome Criar matriz de objetos de contatos
      Aplicação Global
      Acessível de Todos os escopos de aplicação
      Nota:
      Se você criou uma aplicação para armazenar e implantar sua ação personalizada, use essa aplicação em vez de global.
    6. Selecione Criar ação.
      O sistema exibe a interface Workflow Studio.
    7. Em Descrição da ação, selecione Entradas > Criar Entrada
      O sistema exibe uma nova entrada de ação.
    8. Configure a entrada de ação com esses valores.

      Crie uma entrada de ação que armazene um registro de departamento.

      Campo Valor
      Rótulo Departamento
      Tipo Referência.Departamento [Reference.cmn_department]
      Obrigatório Verdadeiro
    9. Em Descrição da ação, selecione Adicionar uma nova etapa.
      O sistema exibe uma lista de etapas disponíveis.
    10. Selecionar registrosde pesquisa
    11. Configure a etapa com esses valores.

      Configure a condição da etapa Pesquisar registros para usar a variável de entrada de departamento.

      Campo Valor
      Tabela Usuário [sys_user]
      Condições [Departamento][é][ação->Departamento]
      Nota:
      Selecione a cápsula de dados do departamento em Variáveis de entrada.
      Ordenar por Nome
      Tipo de Classificação a até z
      Máximo de Resultados 3
      Nota:
      Este exemplo limita a configuração de resultados máximos a três registros apenas para fins de demonstração.
    12. Em Descrição da ação, selecione Adicionar uma nova etapa.
      O sistema exibe uma lista de etapas disponíveis.
    13. Selecione Script.
    14. Na seção Variáveis de entrada, selecione Criar variável.
    15. Configure a variável de entrada com esses valores.

      Configure a variável de entrada Etapa de script para usar a cápsula de dados de registros de usuário da etapa Pesquisar registros.

      Campo Valor
      Nome registros de usuário
      Valor [etapa->Pesquisar registros etapa->Registros de usuário]
      Nota:
      Selecione a cápsula de dados de registros de usuário na etapa Pesquisar registros.
      Nota:
      Você pode selecionar a cápsula de dados Registros de 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.

      Crie uma matriz de objetos chamada contatos. Na matriz, crie um objeto chamado contato. No objeto de contato, crie três variáveis de cadeias de caracteres para nome, sobrenome e endereço de e-mail.

      Rótulo Nome Tipo Obrigatório
      contatos contatos Array.Object Verdadeiro
    19. Expanda os contatos Array.Object e renomeie o objeto secundário para contato.
    20. Na linha do objeto de contato, selecione o ícone 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 o ícone 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 o ícone 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 Inserir um nome, insira contato.
      Salve o modelo de objeto com o nome contato.
    29. Clique em Salvar.
    30. Em Descrição da ação, selecione Saídas > Criar Saída.
    31. Configure a saída de ação com esses valores.

      Crie uma saída de ação chamada contatos para armazenar uma matriz de objetos.

      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. Para Modelo, selecione o modelo que você salvou anteriormente.
      Por exemplo, selecione Global: 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].

      Configure a variável de saída da ação para usar a cápsula de dados de contatos da etapa Script.

      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 Ação de teste.
    40. Insira o seguinte valor de teste:

      Selecione o departamento de Desenvolvimento para testar sua ação.

      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.

      Página de detalhes de execução para os resultados de testes da sua ação personalizada.

      Embora os detalhes da execução exibam os dados de saída como uma cadeia de caracteres no formato JSON, o tipo de dados de saída real é uma matriz de objetos. Se você precisar de uma versão de cadeia de caracteres da sua saída, poderá converter o objeto em uma cadeia de caracteres usando a classe JSON. Para obter mais informações sobre como converter um objeto JSON em uma cadeia de caracteres, consulte Scoped JSON - stringify(Object jsonObject).
      Para este exemplo, o objeto de contatos contém uma matriz de objetos de contato com nome, sobrenome e informações de e-mail de 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.