Find Data Row
Find Data Row
Sección titulada «Find Data Row»Tipo: find-row · Paquete: DataTable Activities v1.0.5 · Salida: DataRow
Devuelve la primera fila de una DataTable que cumple una o varias condiciones, o null si ninguna coincide. No modifica la tabla.
Cómo funciona
Sección titulada «Cómo funciona»Las condiciones se construyen visualmente con el editor de condiciones — el mismo de Filter DataTable: cada condición es columna / operador / valor, y se combinan con lógica AND u OR. La actividad recorre las filas en orden y se detiene en la primera que cumple.
- Columna: por nombre (sin distinguir mayúsculas) o por posición contando desde 0.
- Valor: se compara tal como lo escribes; no se evalúa como expresión.
- Operadores:
equals,not-equals,contains,starts-with,ends-with,greater-than,less-than,greater-or-equal,less-or-equal,is-empty,is-not-empty. Las comparaciones de texto no distinguen mayúsculas y los operadores de mayor/menor exigen números. El detalle de cada uno está en Filter DataTable › Operadores.
La fila devuelta sigue ligada a su tabla: si la modificas con Set Cell o Update Data Row, cambia la tabla.
Parámetros requeridos
Sección titulada «Parámetros requeridos»| Parámetro | Tipo | Por defecto | Descripción |
|---|---|---|---|
table | DataTable | — | La DataTable donde buscar, ej. clientes. |
conditions | object | — | Condiciones de coincidencia (columna · operador · valor) con lógica AND/OR, como { logic, items }. |
Parámetros opcionales
Sección titulada «Parámetros opcionales»Ninguno.
Devuelve la primera DataRow que coincide, o null si ninguna lo hace (también con una tabla sin filas).
Errores comunes
Sección titulada «Errores comunes»| Mensaje | Causa y solución |
|---|---|
'table' debe ser una DataTable. | table no evalúa a una DataTable. Revisa la variable. |
Se requiere al menos una condición. | El editor de condiciones está vacío. Agrega al menos una. |
No se encontró la columna '…'. Columnas disponibles: …. | La columna de una condición no existe; el mensaje lista las reales. |
El índice de columna … está fuera de rango (la tabla tiene … columna(s)). | La posición de columna indicada no existe. |
Value '…' is not numeric. | Un operador numérico encontró una celda no numérica o vacía. Antepón is-not-empty sobre esa columna con AND. |
Ejemplo
Sección titulada «Ejemplo»Buscar la primera factura vencida de un cliente y avisar:
Find Data Row table = facturas conditions: Cliente equals "Comercial Andina" AND Estado equals "Vencida" → output: factura
If condition = factura != null ├─ then: │ Get Cell row = factura column = "Numero" → output: numero │ Log message = "Factura vencida: " + str(numero) └─ else: Log message = "Ninguna factura coincide"Actividades relacionadas
Sección titulada «Actividades relacionadas»- Filter DataTable — quedarte con todas las filas que coinciden (no solo la primera).
- Get Data Row — obtener una fila por índice en vez de por condición.
- Get Cell — leer una celda de la fila encontrada.