Suporte de script para dados complexos

  • Versão de lançamento: Washingtondc
  • Atualizado 1 de fev. de 2024
  • 6 min. de leitura
  • 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 o script para criar dados complexos quando os dados vierem dessas fontes.

    Tabela 1. Fontes de dados que requerem script
    Fonte de dados Criar/mapear dados complexos de
    Fluxo de resposta da ação de 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 de 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 escrever um script de analisador, use métodos JavaScript apropriados para o formato do fluxo de dados. Por exemplo, use a classe JSON - Scoped 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 da 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 mapeia valores de resposta REST para valores de objeto complexos. Ao escrever o script de resposta REST, use métodos JavaScript apropriados para o formato de resposta, como o método JSON parse().

    Nota:
    Quando você usa dados complexos como a origem de uma entrada de cadeia de caracteres, Flow Designer os converte automaticamente em uma cadeia de caracteres JSON.

    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. No tempo de execução, a ação ou o fluxo converte os dados complexos em uma representação JSON.

    Por exemplo, consulte as etapas de script usadas em Introdução às entradas dinâmicas para as ações de coleta de dados. As ações de coleta de dados para obter nomes de tabela e 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

    Embora os fluxos possam usar a lógica de fluxo For each para processar uma lista de registros, as ações exigem uma etapa de script. A etapa de script substitui a lógica de fluxo Para cada por JavaScript, como um loop Para ou Embora.

    Para acessar os 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 a partir 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.

    Nota:
    A ação Pesquisar registros não requer uma etapa de script para converter dados de registro em dados complexos. Você pode criar uma ação personalizada para converter um registro em um objeto e aplicar a lógica de fluxo Para cada à ação personalizada. Consulte Criar uma ação personalizada para gerar um objeto a partir de um registro e Crie um fluxo personalizado para gerar um objeto para cada registro em uma lista para obter um exemplo de criação de um objeto complexo sem usar script.

    Estruturas de objeto de 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 estruturas é idêntico a fazer a referência com pontos em um campo de referência em que você lista a estrutura da tabela para um campo de referência específico.

    Nota:
    Um caminho de referência com pontos sempre lista o nome de um elemento estrutural em vez de seu rótulo.

    Por exemplo, suponha que você defina um objeto de contato como uma Variável de saída. O objeto tem a seguinte estrutura.

    Figura 1. Amostra de objeto de contato
    Uma variável de saída de etapa de script que contém um objeto complexo para Contato.
    Colocar na estrutura Rótulo Nome Tipo
    Primário Contato contato Objeto
    Secundário(a) Nome first_name Cadeia de caracteres
    Secundário(a) Sobrenome last_name Cadeia de caracteres
    Secundário(a) Endereços de e-mail e-mail_addresses Array.Object
    Neto Endereço de e-mail email_address Objeto
    Bisneto Tipo tipo Opção
    Bisneto E-mail e-mail Cadeia de caracteres
    Secundário(a) Telefone telephone_number Array.Object
    Secundário(a) Endereços para correspondência mailing_address Array.Object

    O caminho de referência com pontos para o elemento estrutural Nome seria outputs.contact.first_name, enquanto o caminho para o elemento estrutural E- mail seria outputs.contact.email_addresses[0].email, já que você deve especificar um elemento individual da matriz por Valor de índice JavaScript.

    Nota:
    Um caminho de referência com pontos omite o nome do elemento repetido na matriz. Por exemplo, uma matriz de objetos não precisa especificar o nome do elemento do objeto. No entanto, como os objetos são contêineres para outros elementos, você pode especificar um elemento secundário do objeto em um caminho de referência com pontos.

    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, Flow Designer os 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 poder reutilizá-los em outras ações, fluxos e etapas de script.
    Criar 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 a partir da entrada da ação ou de uma etapa anterior. Mapeie a variável de entrada do script para a cápsula de dados de entrada ou de etapa. Por exemplo, mapeie a variável de entrada do script para uma lista de registros de usuário que você pesquisou em uma etapa anterior.
    Criar 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 que seu script criar. 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 modelo para reutilizá-lo.
    Mapear 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 para sua variável de saída da etapa de script. Por exemplo, crie uma matriz de contatos e carregue o modelo de objeto de contato que você salvou anteriormente. Mapeie a saída da ação para a matriz de contatos produzida pela etapa de script.