Como obtener las tablas y los campos que tiene una base de datos
1 Respuesta
Respuesta de Cesar RalFito
1
1
Cesar RalFito, Ing. de Sistemas Jefe de Automatizacion Registro Civil...
Clear *!* Solamente mandarlo llamar: GetSkeleton() *!* PROCEDURE GetSkeleton && Esta función crea un cursor llamado Skeleton con los nombres de la tabla y sus campos Lc_DataBase = GETFILE("DBC") IF EMPTY(Lc_DataBase) RETURN ENDIF OPEN DATABASE (Lc_DataBase) SHARED CREATE CURSOR Skeleton (Table C(30), Field_Name C(30), Field_Type C(2), Width N(4), Decimals N(4)) = ADBOBJECTS(La_Tables,"TABLE") Ln_nTables = ALEN(La_Tables,1) FOR Ln_x = 1 TO Ln_nTables Lc_Table = La_Tables(Ln_x) IF USED(Lc_Table) SELECT (Lc_Table) USE ENDIF SELECT 0 USE (Lc_Table) SHARED = AFIELDS(La_Fields,(Lc_Table)) Ln_nFields = ALEN(La_Fields,1) FOR Ln_y = 1 TO Ln_nFields INSERT INTO Skeleton VALUES (; PROPER(Lc_Table),; PROPER(La_Fields(Ln_y,1)),; PROPER(La_Fields(Ln_y,2)),; La_Fields(Ln_y,3),; La_Fields(Ln_y,4)) ENDFOR ENDFOR SELECT RECNO() AS Recno, * FROM Skeleton INTO CURSOR Skeleton SELECT * FROM Skeleton ORDER BY Table, RECNO INTO CURSOR Skeleton SELECT Skeleton Lc_Path = PUTFILE("","Skeleton","XLS") IF NOT(EMPTY(Lc_Path)) EXPORT TO (Lc_Path) TYPE XLS MESSAGEBOX("Base de Datos Exportada", 64,"Skeleton") ENDIF Endproc