Je que bien me vinieron estos 2 días feriados. El único inconveniente fue el contenido televisivo, pero bueno ... aguante isohunt. Ah, por cierto no miren EPIC Movie.
Volviendo al tema de Progress no se donde nos habíamos quedado pero se me ocurrió postear algo que quizá muchos no lo saben, y es la forma de acceder a la info sobre la base de datos.
Las bases de datos Progress tienen una serie de tablas ocultas en donde guarda toda la información sobre las tablas, campos, indices, etc.
Estas tablas comienzan con un guión bajo "_".
Las más importantes o las que yo más he usado son:
_Filelist: Contiene Registros sobre los archivos que componen la base de datos.
_Field: Contiene Registros sobre todas las tablas de la base de datos.
_Field-Trig: Contiene Registros sobre los triggers de tablas.
_File: Contiene Registros sobre los campos de una determinada tabla (_file).
_File-Trig: Contiene Registros sobre triggers de campos.
_Index: Contiene Registros sobre los indices de una tabla.
_Index-Field: Contiene Registros sobre los campos que integran un indice.
Por ejemplo, si quisieramos saber todos los campos de una tabla llama "USUARIOS" tendriamos que ejecutar la siguiente instrucción:
for each _file
where _file._file-name = "USUARIOS",
each _field of _file:
display _field.
end.
Un ejemplo que voy a postear me sirvio mucho para detectar todos los trigguers que tenia una base de datos.
for each _file,
each _field of _file,
each _field-trig of _field:
display _file._file-name format 'X(10)'
_field._field-name format 'X(10)'
_field-trig._Event format 'X(08)'
_field-trig._Proc-Name format 'x(30)'
_field-trig._Override
_field-trig._Trig-Crc
with width 255 no-label.
end.
En el próximo post les voy a enseñar como hacer ABM's genericos utilizando estas tablas.
Salu2

No hay comentarios.:
Publicar un comentario