Documentacióndescribir_tabla(tabla)
Nombre
describir_tabla - Construye una descripcion formateada de la estructura de una tabla.
Sinopsis
texto = tablas.describir_tabla(tabla)
Descripcion
Recorre todos los registros de una TABLA y arma un STRING con la estructura detectada en cada uno.
La salida no muestra los valores de los datos, sino los nombres/rutas de campo y sus tipos, en un formato ya preparado para lectura humana.
Es util para:
- inspeccionar la estructura de una tabla heterogenea
- describir registros sin imprimir sus valores completos
- generar una vista textual de apoyo durante depuracion o documentacion
Comportamiento
- Recorre todos los registros de la tabla.
- Usa
tablas.info_de_registro()para obtener la metadata estructural de cada registro. - Alinea visualmente los nombres de campo antes de componer el texto final.
- Retorna un
STRINGya formateado, listo paraIMPRIMIR()oIMPRIMIR_WEB().
Funciones API relacionadas
tablas.info_de_registro()tablas.campos_de_registro()tablas.valores_de_registro()tablas.tipos_de_registro()tablas.imprimir_registro()
Parámetros
| Parámetro | Tipo | Descripción |
|---|---|---|
| tabla | TABLA | Tabla a describir. |
Valor de retorno
STRING - Descripción de la estructura de cada registro de la tabla.
Ejemplo
ejemplo.blox
INCLUIR "tablas.api"
INCLUIR "strings.api"
FUNCION PRINCIPAL
INICIO
TABLA persona, campos, aux
NUMERICO i
STRING campo, str
persona = {
nombre = "Carlos",
edad = 30,
ciudad = "Asuncion",
}
persona = {
nombre = "Juan",
edad = 21,
ciudad = "Encarnacion",
}
persona = {
nombre = "Roberto",
edad = 45,
ciudad = "Concepcion",
}
persona = {
nombre = "Maria",
edad = 19,
ciudad = "Concepcion",
}
persona = {
nombre = "Josefina",
apellido = "Gamarra",
casado = FALSO,
edad = 19,
direcion = {ciudad = "Concepcion", barrio = "Las Lomas"}
club = "Olimpia",
}
//
// Testado OK
//
// describir_tabla() devuelve un string con el contenido total de la estructura.
// construye la salida recorriendo la metadata de cada registro.
//
IMPRIMIR("\n\n\nDESCRIBIR_TABLA()\n\n")
str = tablas.describir_tabla(persona)
IMPRIMIR (str)
IMPRIMIR(persona[5])
FINAL