Documentaciónfiltrar(tabla_in, campo, val)
Nombre
filtrar - Alias de compatibilidad para tablas.buscar_todos().
Sinopsis
subtabla = tablas.filtrar(tabla_in, campo, val)
Descripcion
Mantiene el nombre historico de esta operacion plural y delega el trabajo en tablas.buscar_todos(tabla_in, campo, val).
Se conserva por compatibilidad con codigo existente, pero la forma preferida en esta API es tablas.buscar_todos().
Comportamiento
- Verifica que el campo exista y tenga un tipo compatible.
- Compara cada registro contra el valor indicado.
- Devuelve una subtabla con todas las coincidencias.
- Si no hay coincidencias, retorna una tabla vacia.
Funciones API relacionadas
tablas.buscar()tablas.buscar_todos()tablas.buscar_por_valor()tablas.buscar_indice()tablas.buscar_indices()tablas.buscar_primero_por_valor()
Parámetros
| Parámetro | Tipo | Descripción |
|---|---|---|
| tabla_in | TABLA | Tabla de entrada. |
| campo | STRING | Campo a comparar. |
| val | ANY | Valor buscado. |
Valor de retorno
TABLA - Subtabla con los registros que cumplen la condicion.
Ejemplo
ejemplo.blox
INCLUIR "tablas.api"
FUNCION PRINCIPAL
INICIO
TABLA persona, filtrado
NUMERICO i, cant
STRING campo, val
persona = {
nombre = "Carlos",
edad = 30,
ciudad = "Asuncion"
}
persona = {
nombre = "Juan",
edad = 19,
ciudad = "Encarnacion"
}
persona = {
nombre = "Roberto",
edad = 45
ciudad = "Concepcion"
}
persona = {
nombre = "Maria",
edad = 19
ciudad = "Concepcion"
}
//
// Testado OK
//
// Filtra una tabla por un determinado campo y valor. Retorna una sub-tabla
//
campo = "ciudad"
val = "Concepcion"
filtrado = tablas.filtrar(persona, campo, val)
i = 1
MIENTRAS (i <= filtrado.dim) HACER
IMPRIMIR (filtrado[i])
i = i + 1
FIN_MIENTRAS
FINAL