Dados complexos
Use uma interface gráfica para trabalhar com coleções de dados estruturados complexos. Ajude os usuários de design a entender a organização de dados estruturados e adicione, remova ou configure seus elementos individuais.
Os dados complexos permitem codificar e armazenar dados estruturados em um formato legível por máquina, como JavaScript Object Notation (JSON) ou eXtensible Markup Language (XML). Você pode usar a interface Workflow Studio para exibir e entender a organização de dados estruturados, bem como criar estruturas de dados. Por exemplo, você pode criar uma estrutura de dados de contato que consiste em informações pesquisadas em um registro de usuário, como nome, sobrenome e endereço de e-mail.
Você pode criar dados complexos a partir dessas Workflow Studio interfaces.
| Interface do Workflow Studio | Exemplo de uso |
|---|---|
| Entradas e saídas de ação | Crie uma ação que gera um objeto a partir de dados de registro. Preencha o objeto usando os dados de registro pesquisados pela ação. Veja Criar uma ação personalizada para gerar um objeto a partir de um registro |
| Variáveis de entrada e saída da etapa de script | Escreva um script para criar uma matriz de objetos a partir de uma lista de registros. Consulte Crie uma ação personalizada para gerar uma matriz de objetos a partir de uma lista de registros. Grave um script para analisar um documento JSON em uma saída do tipo Objeto. |
| Entradas e saídas de subfluxo | Crie um subfluxo que aceite um objeto como entrada e o use para chamar um serviço externo. |
| Etapa analisador de XML Configurações do campo de destino | Analise uma carga XML em um objeto de dados complexo usando a etapa do analisador de XML. |
| Campo de corpo do gatilho de REST API | Analise uma solicitação de REST API de entrada em um objeto de dados complexo e use os valores em um fluxo. Consulte Gatilho de REST API. |
Benefícios
- Analise e formate dados sem precisar escrever código. Por exemplo, crie variáveis de dados para analisar uma mensagem de resposta ou formatar uma mensagem de solicitação.
- Crie estruturas de dados arbitrárias. Por exemplo, crie uma estrutura de dados de problema que combina informações de registros de incidentes e interações existentes ou crie uma estrutura de dados para oferecer suporte a uma integração personalizada.
- Exibir a organização das estruturas de dados. Por exemplo, uma estrutura de dados de problema pode consistir em um objeto de usuário para descrever quem contatar sobre o problema e um objeto de histórico para descrever o trabalho realizado para resolvê-lo. Você pode configurar uma ação de notificação com o caminho para o endereço de e-mail listado no objeto do usuário e chamar um subfluxo de problema de escalação com o caminho para o status ou reatribuir a contagem do objeto de histórico.
- Permita o acesso à estrutura de dados de chamadas de API. Por exemplo, chame uma ação ou subfluxo de um script e use a estrutura de dados predefinida como valores de entrada.
- Salve e reutilize estruturas de dados como modelos. Por exemplo, salve o objeto do usuário como uma estrutura de dados de modelo para reutilização em outras ações e fluxos.
Estrutura de dados
Uma estrutura de dados é uma coleção de elementos de dados relacionados organizados em uma hierarquia. Cada elemento em uma estrutura de dados tem seu próprio tipo de dados e sua própria posição exclusiva na hierarquia.
Por exemplo, esta estrutura de dados consiste em um elemento primário Employee com quatro elementos secundários para Número de ID, Nome, Data de Início e E-mail de Contato. O elemento E-mail de contato também é um elemento primário com um secundário.
O painel de dados exibe a hierarquia da estrutura de dados como uma árvore de cápsulas de dados recolhíveis e expansíveis, assim como acontece com as variáveis de registro. Os elementos primários têm um ícone de seta para recolher ou expandir a hierarquia.
Por exemplo, esta é a estrutura de dados do funcionário conforme vista no painel de dados.
Você pode usar o painel de dados ou o seletor de dados para selecionar valores específicos de uma estrutura de dados. As estruturas de dados são semelhantes a cápsulas de dados para registros em que você pode fazer referência com pontos ou navegar até elementos específicos dentro da estrutura. Quando você seleciona um elemento de dados, Workflow Studio exibe o caminho para ele como uma cápsula de dados, assim como qualquer outra seleção de elemento de dados. Por exemplo, se você selecionar o elemento de dados Data de início, o caminho será [Input->Employee->Start Date].
Você pode usar um caminho de dados de elemento da mesma forma que um XPath ou JPath. Às vezes, você pode até converter o caminho da cápsula de dados em uma dessas notações de caminho.
Tipos de dados complexos
Você cria estruturas de dados usando uma ou mais variáveis de matriz ou objeto. Somente esses tipos de dados variáveis são compatíveis com variáveis secundárias.
Uma variável Matriz contém valores para um tipo de item. A variável primária é sempre de um tipo de dados de matriz e sempre há apenas uma variável secundária, que é uma instância do tipo de dados compatível com a matriz. Crie variáveis de matriz quando uma entrada ou saída aceitar vários valores do mesmo tipo de dados.
Por exemplo, você pode criar uma matriz de e-mail de contato para listar todos os endereços de e-mail associados a uma determinada pessoa.
| Rótulo do componente | Tipo de Dados | Dados de amostra |
|---|---|---|
| E-mail do Contato | Array.String | beth.anglin@example.com e beth@anglin.com |
| E-mail do contato_child0 | Cadeia de caracteres |
Uma variável de objeto contém qualquer número e organização de variáveis secundárias, cada uma com seu próprio tipo de dados e valores. O aninhamento de variáveis de objeto permite criar estruturas de dados complexas semelhantes a um esquema de tabela em que uma tabela tem registros relacionados em outra tabela. Crie variáveis de objeto quando uma entrada ou saída aceitar uma ou mais propriedades relacionadas.
Por exemplo, você pode criar um objeto Funcionário para definir informações sobre as pessoas que trabalham em uma empresa.
| Rótulo do componente | Tipo de Dados | Dados de amostra |
|---|---|---|
| Funcionário | Objeto | |
| Número de ID | Números inteiros | 20190304000101 |
| Nome | Cadeia de caracteres | Beth Anglin |
| Data de início | Data/hora | 4 de março de 2019 |
| E-mail do Contato | Array.String | beth.anglin@example.com e beth@anglin.com |
Somente esses tipos de dados variáveis podem ser primários.
| Tipo de dados | Descrição |
|---|---|
| Matriz.Matriz | Um contêiner para matrizes. Adiciona um item secundário somente leitura do tipo Matriz. |
| Matriz.Verdadeiro/Falso | Um contêiner para valores verdadeiro/falso. Adiciona um item secundário somente leitura do tipo Verdadeiro/Falso. |
| Array.Choice | Um contêiner para valores de opção. Adiciona um item secundário somente leitura do tipo Opção. |
| Matriz.Data/Hora | Um contêiner para valores de data/hora. Adiciona um item secundário somente leitura do tipo Data/Hora. |
| Array.Integer | Um contêiner para valores inteiros. Adiciona um item secundário somente leitura do tipo inteiro. |
| Array.Object | Um contêiner para objetos. Adiciona um item secundário somente leitura do tipo Objeto, que exibe a opção Adicionar item secundário. |
| Array.String | Um contêiner para valores de cadeia de caracteres. Adiciona um item secundário somente leitura do tipo cadeia de caracteres. |
| Objeto | Um contêiner para outros elementos de dados. Exibe a opção Adicionar item secundário. |
- Matriz
- Verdadeiro/falso
- Escolha
- Data/hora
- Números inteiros
- Objeto
- Cadeia de caracteres
Opções avançadas
As variáveis de objeto têm opções avançadas para salvar e carregar estruturas de dados. Essas opções permitem reutilizar uma estrutura de dados definida em um local em outro. Para obter detalhes sobre opções avançadas, consulte tipos de dados de variável de ação.
Modelos de estrutura de dados
Os modelos de estrutura de dados permitem reutilizar variáveis de objeto em várias ações ou subfluxos. Por exemplo, você pode criar uma estrutura de dados para analisar uma resposta e, posteriormente, reutilizar essa mesma estrutura de dados para formatar uma solicitação. Um modelo armazena a lista de variáveis secundárias e sua estrutura em um objeto. Cada variável de objeto tem uma opção avançada para salvá-la como um modelo.
Ao aplicar um modelo, você está criando uma cópia da estrutura original. Quaisquer mudanças feitas após a aplicação de um modelo não afetam o modelo nem outras ações que usam o modelo.
Cápsulas de dados de matriz
Objetos que contêm dados de matriz podem exigir o processamento da lógica de fluxo Para cada. Por exemplo, um objeto de usuário que contém uma matriz de endereços de e-mail exigiria um loop de lógica de fluxo para cada para enviar uma notificação para cada endereço de e-mail.
Cápsulas de dados do objeto
Você pode projetar ações que aceitam cápsulas de dados de objeto como valores de entrada. Por exemplo, você pode criar uma ação de notificação que aceita um objeto de usuário como uma entrada. Se o objeto do usuário consistir em valores para nome, sobrenome e endereços, a ação de notificação terá acesso a todos esses valores. Para configurar uma entrada de ação com uma cápsula de dados de objeto, você deve criar um objeto anteriormente no fluxo.
Você pode usar uma cápsula de dados de objeto ou qualquer um de seus elementos secundários para configurar uma entrada. Quando você configura um valor de entrada com uma cápsula de dados de objeto, Workflow Studio torna todos os elementos secundários do objeto somente leitura e a ação usa os valores fornecidos pelo objeto. Por exemplo, você pode criar um fluxo em que uma ação gera um objeto de usuário e outra ação envia uma notificação ao usuário especificado no objeto.
Ao configurar os elementos secundários de um objeto, você deve fornecer cápsulas de dados manualmente para cada elemento secundário do objeto. Por exemplo, você pode configurar manualmente o objeto de usuário com valores de registro de uma ação anterior.
Suporte a scripts
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. Consulte Suporte a script para dados complexos para obter mais informações sobre scripts com dados complexos.
Suporte ao conjunto de atualizações
Os conjuntos de atualizações incluem objetos complexos como parte do fluxo, subfluxo ou ação em que são definidos. Qualquer mudança no fluxo primário, subfluxo ou ação captura automaticamente os dados complexos associados.
Diretrizes gerais
Siga estas diretrizes gerais para criar estruturas de dados reutilizáveis e de fácil manutenção.
- Minimizar o número de níveis secundários na hierarquia
- Quanto mais níveis secundários uma estrutura de dados tiver, mais difícil será exibir e selecionar uma variável de dados na hierarquia. Embora você possa criar estruturas de dados com qualquer número de níveis secundários, torna-se difícil navegar e entender estruturas de dados com mais de sete níveis secundários. Para obter a melhor experiência do usuário, evite criar estruturas de dados que tenham tantos níveis secundários que você precise rolar horizontalmente para vê-los e preenchê-los.
- Crie um objeto separado para cada tipo de dados de registro
- A maioria dos dados Workflow Studio são dados de registro, sejam de uma instância ou de um sistema externo. Este método de design garante que você saiba o que o objeto contém e de onde os dados vêm.
- Recriar estruturas de dados de registro
- Ao criar objetos que recebem ou transmitem dados de registro, revise as entradas do dicionário do banco de dados para esses registros e crie estruturas de dados de objeto correspondentes. Por exemplo, suponha que você queira que um objeto contenha dados das tabelas Incidente e Item de configuração. Você pode criar um elemento de cadeia de caracteres para o campo Descrição resumida na tabela [ Incidente e uma matriz de elemento de cadeias de caracteres para o campo Classe na tabela Item de configuração.
- Criar objetos para combinar diferentes tipos de registros
- Se você precisar de informações de vários tipos de registros, crie um objeto que contenha todas as informações necessárias. Você pode usar o objeto para formatar ou analisar dados em Workflow Studio.