Suporte a script para dados complexos
Crie e faça referência a dados complexos de um script. Use um script quando os dados de origem vierem de um fluxo de dados, uma resposta de etapa REST ou uma etapa de Pesquisa de registros.
Use script para criar dados complexos quando os dados vêm dessas fontes.
| Fonte de dados | Criar/mapear dados complexos de |
|---|---|
| Fluxo de resposta da ação do fluxo de dados | Etapa do analisador de script |
| Resposta da etapa REST | Etapa de script |
| Etapa de registros de pesquisa |
Fluxo de resposta da ação do fluxo de dados
As ações de fluxo de dados usam um script de analisador para mapear valores de item de fluxo para valores de objeto complexos. Ao gravar um script de analisador, use métodos JavaScript apropriados para o formato de fluxo de dados. Por exemplo, use JSON - com escopo Classe para analisar ou codificar um fluxo de dados JSON.
Os scripts do analisador têm acesso aos objetos de entrada e saída do fluxo de dados, bem como a uma propriedade targetObject. Consulte Ações de fluxo de dados para obter mais informações sobre como analisar um fluxo de resposta para criar dados complexos.
Resposta da etapa REST
Você pode converter uma resposta de etapa REST em um ou mais objetos complexos analisando-a com uma etapa de script. Para acessar uma resposta de uma etapa de script, você deve criar uma variável de script de entrada e mapeá-la para a carga de resposta da etapa REST anterior. Consulte Etapa de script para obter mais informações sobre como criar variáveis de entrada de script.
Grave um script que mapeie valores de resposta REST para valores de objetos complexos. Ao escrever o script de resposta REST, use métodos JavaScript apropriados para o formato de resposta, como o método JSON Parse().
Você não precisa usar uma etapa de script para criar uma solicitação REST a partir de dados complexos. Você pode gerar dados complexos em uma ação ou etapa anterior e mapeá-los para uma entrada de cadeia de caracteres da etapa REST. Em tempo de execução, a ação ou fluxo converte os dados complexos em uma representação JSON.
Por exemplo, consulte as etapas de script usadas em Comece a usar entradas dinâmicas para as ações de coleta de dados. As ações de coleta de dados para obter nomes de tabela e de campo usam uma etapa de script para analisar uma resposta REST em um objeto JSON. Ambas as ações de coleta de dados também criam variáveis de saída que armazenam dados complexos como objetos JSON.
Etapa de registros de pesquisa
Enquanto os fluxos podem usar Para cada um Para processar uma lista de registros, as ações exigem uma etapa de script. A etapa Script substitui o. Para cada um Lógica de fluxo com JavaScript, como A. Para ou Enquanto loop.
Para acessar dados de registro de uma etapa de script, você deve criar uma variável de script de entrada e mapeá-la para os dados de registro da etapa de pesquisa anterior. Consulte Etapa de script para obter mais informações sobre como criar variáveis de entrada de script.
Consulte Crie uma ação personalizada para gerar uma matriz de objetos de uma lista de registros para obter um exemplo de ação que converte uma lista de registros de usuário em uma matriz de objetos de contato.
Estruturas de objeto com referência com pontos
Você pode fazer referência a elementos da estrutura de um objeto percorrendo o caminho da estrutura com pontos. Todos os caminhos de dados complexos começam com o nome da fonte de dados, que é o objeto global para entradas, o objeto global para saídas ou o nome da matriz ou objeto que você criou no script.
Em seguida, no caminho, estão os nomes de cada elemento estrutural referenciado separados por caracteres de ponto (também conhecidos como pontos). Listar os nomes de elementos estruturais é idêntico à referência com referência com pontos em que você lista a estrutura da tabela para um campo de referência específico.
Por exemplo, suponha que você defina um objeto de contato como uma variável de saída. O objeto tem a seguinte estrutura.
| Colocar na estrutura | Rótulo | Nome | Tipo |
|---|---|---|---|
| Primário | Contato | contato | Objeto |
| Secundário | Nome | first_name | Cadeia de caracteres |
| Secundário | Sobrenome | last_name | Cadeia de caracteres |
| Secundário | Endereços de e-mail | e-mail_addresses | Array.Object |
| Neto | Endereço de E-mail | email_address | Objeto |
| Bisneto | Tipo | tipo | Escolha |
| Bisneto | Cadeia de caracteres | ||
| Secundário | Telefone | telephone_number | Array.Object |
| Secundário | Endereços de correspondência | mailing_address | Array.Object |
O caminho de referência com pontos para Nome elemento estrutural seria outputs.contact.first_name enquanto o caminho para E-mail elemento estrutural seria outputs.contact.email_addresses[0].email Uma vez que você deve especificar um elemento individual da matriz pelo valor de índice JavaScript.
Diretrizes gerais
Lembre-se dessas diretrizes gerais ao criar scripts com dados complexos.
- Use entradas de cadeia de caracteres para converter dados complexos em uma cadeia de caracteres JSON
- Quando você mapeia dados complexos para uma entrada de cadeia de caracteres, Workflow Studio O converte automaticamente em uma cadeia de caracteres JSON. Em vez de escrever um script, você pode adicionar uma entrada de cadeia de caracteres a uma etapa REST e mapeá-la para dados complexos de uma ação ou etapa anterior.
- Salve seus objetos como modelos
- Salve seus objetos como modelos para que você possa reutilizá-los em outras ações, fluxos e etapas de script.
- Crie variáveis de entrada de script para acessar dados anteriores
- Crie uma variável de entrada de script para todos os dados que você deseja acessar da entrada de ação ou de uma etapa anterior. Mapeie a variável de entrada de script para a cápsula de dados de entrada ou etapa. Por exemplo, mapeie a variável de entrada de script para uma lista de registros de usuário que você pesquisou em uma etapa anterior.
- Crie uma variável de saída de script para armazenar dados complexos
- Crie uma variável de saída de script para armazenar todos os dados complexos criados pelo script. As variáveis de saída do script devem corresponder aos valores definidos no script. Por exemplo, crie uma matriz de contatos de objetos para armazenar vários objetos de contato. Salve o objeto de contato como um modelo para que você possa reutilizá-lo.
- Mapeie a saída da ação para a variável de saída do script
- Quando você quiser que uma ação personalizada gere dados complexos, adicione uma saída de ação e mapeie-a para a cápsula de dados da variável de saída Etapa de script. Por exemplo, crie uma matriz de contatos e carregue o modelo de objeto de contato salvo anteriormente. Mapeie a saída da ação para a matriz de contatos produzida pela etapa Script.