Como usar matrizes em aplicativos
  • 31 Oct 2023
  • 6 Minutos para Ler
  • Contribuintes

Como usar matrizes em aplicativos


Article Summary

Visão geral

Veja como armazenar dados em uma matriz no Tulip e mover valores de um tipo de dados para outro.

Neste artigo, você aprenderá...

  • Como criar e usar arrays
  • Como alterar arrays no Trigger Editor
  • Como usar split string para transformar a saída de uma Connector Function em um array

Arrays e objetos são duas estruturas de dados populares usadas em muitas linguagens de programação. O Tulip utiliza essas estruturas de dados em duas partes da plataforma:

  1. Variáveis, para armazenar vários pontos de dados relacionados à mesma variável
  2. Conectores, para passar a saída de uma função de Conector para uma variável

As matrizes podem ser criadas:

  1. No Trigger Editor (manualmente)
  2. No Expression Editor (manualmente)
  3. Na visualização de resumo de variável (mostrada abaixo) (manualmente)
  4. Armazenando a saída de uma entrada Multiselect.
  5. Armazenando a saída de uma função de conector SQL que retornou várias linhas ou conector HTTP com uma matriz no JSON que é retornado (automaticamente)

Criação de matrizes

No Trigger Editor

Você pode criar uma matriz usando a ação "Push onto Array".

  • "Arrays" "Push Onto Array" dados: "Static Value" "text" "text" array: (criar array aqui)

No Expression Editor (Editor de expressões)

Você pode criar uma nova matriz por meio da ação "Data Manipulation" (Manipulação de dados) "Store" (Armazenar). Assim:

  • "Manipulação de dados" "Armazenar" dados: "Expression" "[1,2,3]" location: "test_array"

Cada matriz só pode ter um tipo de valor, ou seja, strings ou inteiros.

Na exibição de resumo de variáveis

Navegue até a exibição de resumo de variável na guia "App" do painel de contexto e, em seguida, crie uma nova variável na parte superior do modal:

Manipulação de matrizes

Você pode criar e manipular matrizes por meio do Trigger Editor. Em uma instrução "Then", clique em "Add new Action" (Adicionar nova ação) e escolha a opção "Arrays" (Matrizes).

No próximo menu suspenso, você verá uma variedade de métodos de matriz. Eles estão alinhados com os métodos de matriz do JavaScript, portanto, consulte este guia de métodos de matriz se precisar de mais explicações.

Os métodos de matriz disponíveis incluem:

  1. Clear Array (Limpar matriz)
  2. Concatenate Arrays (Concatenar matrizes)
  3. Get from index in Array (Obter do índice na matriz)
  4. Obter o comprimento da matriz
  5. Insert at index in Array (Inserir no índice da matriz)
  6. Unir à cadeia de caracteres
  7. Pop da matriz
  8. Empurrar para a matriz
  9. Remover e armazenar o elemento no índice da matriz
  10. Remove at index in Array (Remover no índice da matriz)
  11. Definir índice na matriz
  12. Soma da matriz
  13. Swap elements in Array (Trocar elementos na matriz)

Dependendo da sua seleção nesse menu suspenso, o restante dos campos dará opções sobre qual matriz você gostaria de manipular, qual índice você gostaria de alterar e o novo valor que você está definindo.

  • Dados "Arrays" "Set Index in Array" (Definir índice na matriz): "Static Value" (Valor estático) "number" (número) "90" array: "test_a" index: "Static Value" "integer" "0"

No exemplo acima, você está alterando o valor no índice 0 em uma matriz chamada "test_a" para um valor de 90.

  • "Arrays" "Get from index in Array" array: "Variable" "test_a" index: "Static Value" "integer" "0" armazenar na variável: "test_vari"

E, no exemplo acima, você está acessando o valor no índice 0 de uma matriz chamada "test_a" e armazenando-o em uma variável chamada "test_vari".

Pesquisa em matrizes

Digamos que você queira usar um widget de seleção múltipla para permitir que um operador insira vários tipos de defeitos sobre um único produto. Em seguida, dependendo dos defeitos inseridos, você gostaria de enviá-los a um conjunto específico de etapas de retrabalho.

Um formulário multiselect salva automaticamente os valores em uma matriz. Portanto, você precisará pesquisar nessa matriz um valor específico e, em seguida, enviar o operador para uma etapa específica.

Para isso, você pode usar a ação de acionamento "Join To String". Isso combinará todos os elementos de uma matriz em uma única cadeia de caracteres e a armazenará em uma variável separada. Em seguida, em um acionador separado, você pode usar uma instrução "If" para verificar se essa cadeia contém um valor específico.

Os elementos do array podem ser separados por qualquer string que você escolher. A maioria dos usuários do Tulip prefere uma vírgula (,).

Veja a seguir um exemplo de união de todos os elementos de um array em uma string:

  • "Arrays" "Join To String" join: "defect types" (tipos de defeitos)
  • com delimitador: "Static Value" "text" ","
  • armazenar em: "defect_types_joined"

Aqui está o segundo acionador que você usaria para pesquisar um valor específico nessa nova cadeia de caracteres:

IF

  • "Variável" "defect_types_joined" "Contém" "Valor estático" "text" "chip"

Uso de Split String para criar matrizes

Com base em tudo o que foi abordado até agora, seria muito difícil colocar a saída de alguns tipos de funções de conector em uma matriz. Para resolver esse problema, você pode usar split string.

Se quiser preparar a saída da função de conector para ser armazenada em uma matriz, será necessário adicionar um caractere comum entre cada parte dos dados. Exemplos comuns incluem:

  • Ponto e vírgula (;)
  • Vírgula (,)
  • Caractere de nova linha ("\n")

Digamos que você tenha uma série de pontos de dados que deseja armazenar em uma matriz. Em sua consulta SQL ou solicitação HTTP GET, primeiro você desejará combiná-los em uma cadeia de caracteres, se ainda não estiverem armazenados em um objeto.

Aqui está um exemplo:

7989;43f3;3e3;f34;f;34;3

O delimitador comum é o ponto e vírgula.

No Trigger Editor, você deverá usar a opção "Split String" para converter essa string em uma matriz.

Primeiro, selecione a variável que você gostaria de dividir. Nesse caso, ela se chama "q".

Em seguida, adicione o delimitador.

Por fim, escolha a variável na qual você gostaria de armazenar a matriz.

  • "Split String" split: "Variable" "q" by: "Static Value" "text" ";" armazenar em: "w"

Exibição de variáveis de matriz

Se quiser ter certeza de que isso está funcionando, adicione um texto variável a uma etapa. Em seguida, escolha a variável que armazena a matriz.

Por fim, abra o Tulip Player e veja se todos os itens da matriz aparecem como uma lista com marcadores. Talvez seja necessário expandir a caixa de texto para levar em conta o número de itens na matriz.

Quando você retorna um array de um único tipo de dados dos conectores HTTP (texto, booleano, inteiro etc.), a saída será uma lista com marcadores, conforme mostrado na seção acima.

Exibição de matrizes de funções de conectores SQL e HTTP

Quando você retorna uma matriz de objetos de uma função de conector HTTP ou várias linhas de uma função de conector SQL, uma lista com marcadores não será a exibição ideal.

Em vez disso, consulte este guia separado para ver como transformar a saída da função do conector em uma lista interativa ou estática.

Revisão de todas as variáveis de matriz em um aplicativo

Para manipular uma estrutura de dados, ela já deve estar armazenada como uma variável. Você pode ver as variáveis existentes entrando no painel de contexto do App Editor e selecionando o símbolo Sigma ao lado de "Variables" (Variáveis) na guia App.

As matrizes serão mostradas como "Matriz" na coluna "Tipo", dependendo do tipo de valores que elas contêm. Você também pode criar valores padrão para os índices da matriz.

Leitura adicional


Encontrou o que estava procurando?

Você também pode ir para community.tulip.co para postar sua pergunta ou ver se outras pessoas tiveram uma pergunta semelhante!


Este artigo foi útil?