Expresiones recursivas
- Última actualización2025/03/21
Use una expresión recursiva para insertar una variable en lugar de un índice o clave de una variable de diccionario, lista, registro o tabla.
Una expresión recursiva contiene una variable anidada dentro de otra variable (la variable externa). El valor de la variable externa depende del valor de la variable anidada.
Por ejemplo, la variable de lista $listOfPlanets$
tiene los siguientes valores: Mercurio, Venus, Tierra, Marte, Júpiter, Saturno, Urano y Neptuno. La variable de número $indexPosition$
tiene un valor de 2. La expresión $listOfPlanets[$indexPosition$]$
devuelve Earth
.
- $dictionaryVariable{$key$}$
- $listVariable[$index$]$
- $recordVariable[$index$]$
- $tableVariable[$rowIndex$][$columnIndexOrName$]$
- No puede usar una variable de tabla dentro de una variable de lista. Por ejemplo, no se admite la siguiente expresión:
$vListStr[$vTable[0][0]$]
- No puede combinar expresiones con propiedades. Por ejemplo, no se admite la siguiente expresión:
$dictionaryVar{$listStrVar[2]$}.String:reverse$
Ejemplo:
Este ejemplo de diccionario anidado ilustra una estructura organizativa. El diccionario contiene empleados con roles jerárquicos y subordinados.
- Cree un bot.
- En el panel izquierdo, haga clic en Automatización.
Se muestra la lista de formularios y bots disponibles.
- Haga clic en Crear un bot.
- Escriba el nombre del bot: Expresión recursiva.
- Haga clic en Crear y editar.
- En el panel izquierdo, haga clic en Automatización.
- Cree las variables definidas por el usuario usando el icono Crear variable (+) en la parte superior del menú Variables.
- Haga doble clic en la acción
Cuadro de mensaje o arrástrela. Realice los siguientes pasos para obtener el valor de Departamento 1 de Dept_Org.
- Presione F2 o haga clic en el icono (x) para insertar un valor en el campo Escribir el mensaje para mostrar.
- En la ventana Insertar un valor, elija la variable Dept_Org.
- Haga clic en Agregar elemento de expresión. Seleccione la pestaña Por nombre e ingrese el valor Departamento 1.
- Haga clic en Insertar para agregar la siguiente expresión $Dept_Org{"Departmento 1"}$ en el campo Escribir el mensaje para mostrar.
- Haga doble clic en la acción
Cuadro de mensaje o arrástrela. Realice los siguientes pasos para obtener el valor de Ingeniería de Roles_Org.
- Presione F2 o haga clic en el icono (x) para insertar un valor en el campo Escribir el mensaje para mostrar.
- En la ventana Insertar un valor, elija la variable Roles_Org de la lista.
- Haga clic en Agregar elemento de expresión. Seleccione la pestaña Por nombre y haga clic en (x) para insertar un valor.
- En la ventana Insertar un valor, elija la variable Dept_Org.
- Haga clic en Agregar elemento de expresión. Seleccione la pestaña Por nombre e ingrese el valor Departamento 1.
- Haga clic en Insertar para agregar la expresión anidada $Dept_Org{"Departamento 1"}$.
- Haga clic en Insertar para agregar la siguiente expresión $Roles_Org{$Dept_Org{"Departamento 1"}$}$ en el campo Escribir el mensaje para mostrar.
- Repita el Paso 4 para crear la siguiente expresión anidada $Subordinado_Org{$Roles_Org{$Dept_Org{"Departamento 1"}$}$}$ para obtener el valor de Gerente Des. de Subordinado_Org.
- Repita el Paso 4 para crear la siguiente expresión anidada $Estructura_Org{$Subordinado_Org{$Roles_Org{$Dept_Org{"Departamento 1"}$}$}$}$ para recuperar el valor de CTO de Estructura_Org.
- Haga clic en Guardar y, luego, en Ejecutar.La salida se muestra de la siguiente manera:
El diccionario anidado recupera el valor de Departamento 1, que es Ingeniería. El departamento de Ingeniería tiene un Gerente Des. como rol. El Gerente Des. reporta al CTO, y el CTO reporta al CEO, el líder de la organización.