Use uma expressão recursiva para inserir uma variável no lugar de um índice ou chave de uma variável de dicionário, lista, registro ou tabela.

Uma expressão recursiva contém uma variável aninhada dentro de outra variável (a variável externa). O valor da variável externa é condicional com base no valor da variável aninhada.

Por exemplo, a variável da lista $listOfPlanets$ tem os seguintes valores: Mercúrio, Vênus, Terra, Marte, Júpiter, Saturno, Urano e Netuno. A variável numérica $indexPosition$ tem valor 2. A expressão $listOfPlanets[$indexPosition$]$ retorna Earth.

Os seguintes tipos de expressões são compatíveis. Você pode criar uma expressão recursiva contendo até 10 expressões.
  • $dictionaryVariable{$key$}
  • $listVariable[$index$]$
  • $recordVariable[$index$]$
  • $tableVariable[$rowIndex$][$columnIndexOrName$]$
Nota:
  • Não é possível usar uma variável de Tabela dentro de uma variável de Lista. Por exemplo, a seguinte expressão não é suportada: $vListStr[$vTable[0][0]$]
  • Você não pode combinar expressões com propriedades. Por exemplo, a seguinte expressão não é compatível: $dictionaryVar{$listStrVar[2]$}.String:reverse$

Exemplo

Este exemplo de dicionário aninhado ilustra uma estrutura organizacional. O dicionário contém funcionários com funções hierárquicas e subordinados.

Crie as seguintes variáveis:
  1. Crie um bot.
    1. No painel do lado esquerdo, clique em Automação.

      Uma lista de formulários e bots disponíveis é exibida.

    2. Clique em Criar um bot.
    3. Digite o nome do bot: Expressão recursiva.
    4. Clique em Criar e editar.
  2. Crie as variáveis definidas pelo usuário usando o ícone Criar variável (+) no topo do menu Variáveis.
  3. Dê um clique duplo ou arraste a ação Caixa de mensagem. Siga as etapas a seguir para recuperar o valor de Departamento 1 de Org_Dept.
    • Pressione F2 ou clique no ícone (x) para inserir um valor no campo Inserir a mensagem a ser exibida.
    • Na janela Inserir um valor, escolha a variável Org_Dept.
    • Clique em Adicionar item de expressão. Selecione a guia Por nome e insira o valor Departamento 1.
    • Clique em Inserir para adicionar a seguinte expressão $Org_Dept{"Department 1"}$ no campo Inserir a mensagem a ser exibida.
  4. Dê um clique duplo ou arraste a Caixa de mensagemação. Siga as etapas a seguir para recuperar o valor de Engenharia de Org_Roles.
    • Pressione F2 ou clique no ícone (x) para inserir um valor no campo Inserir a mensagem a ser exibida.
    • Na janela Inserir um valor, escolha a variável Org_Roles da lista.
    • Clique em Adicionar item de expressão. Selecione a guia Por nome e clique em (x) para inserir um valor.
    • Na janela Inserir um valor, escolha a variável Org_Dept.
    • Clique em Adicionar item de expressão. Selecione a guia Por nome e insira o valor Departamento 1.
    • Clique em Inserir para adicionar a expressão aninhada $Org_Dept{"Department 1"}$.
    • Clique em Inserir para adicionar a seguinte expressão $Org_Roles{$Org_Dept{"Department 1"}$}$ no campo Inserir a mensagem a ser exibida.
  5. Repita a Etapa 4 para criar a seguinte expressão aninhada $Org_Reportee{$Org_Roles{$Org_Dept{"Department 1"}$}$}$ para recuperar o valor de Gerente de desenvolvimento de Org_Reportee.

  6. Repita a Etapa 4 para criar a seguinte expressão aninhada $Org_Structure{$Org_Reportee{$Org_Roles{$Org_Dept{"Department 1"}$}$}$}$ para recuperar o valor de CTO de Org_Structure.

  7. Clique em Salvar e depois em Executar.
    A saída é exibida como:

    O dicionário aninhado recupera o valor de Departamento 1, que é Engenharia. O departamento de Engenharia tem uma função de Gerente de desenvolvimento. O Gerente de desenvolvimento responde ao CTO, e o CTO responde ao CEO, o chefe da organização.