Ver Mensaje Individual
  #6  
Antiguo 17-07-2006
Roilo Roilo is offline
Miembro
 
Registrado: nov 2005
Ubicación: Mayarí, Cuba
Posts: 143
Reputación: 19
Roilo Va por buen camino
Cita:
Empezado por Roilo
Sería conveniente que me tomaras como un programador amigo y no como un impertinente.
En verdad hoy me veo como un impertinente al leer de nuevo este Hilo. discúlpenme.
Bueno encontré una solución para eliminar físicamente los registros de una tabla (funciona para tablas DBF). La encontré en el Trucomanía. (para el que no lo conoce http://www.q3.nu/trucomania/).

SOLUCION:
-Incluye 'DBE' en el uses de tu form
-y utiliza esta funcion para compactar la tabla:

Código Delphi [-]
procedure PackDBF(Tabla: TTable);
begin 
 Check(DbiPackTable(Tabla.DBHandle, Tabla.Handle, nil, szDBASE, True))
end;

Pero cuidado, para poder compactar la tabla, ésta debera estar abierta en modo exclusivo. Ejemplo:

Código Delphi [-]
{Cerramos la tabla/Close table} 
Table1.Close;
{En Modo exclusivo/Exclusive mode}
Table1.Exclusive:=True;
{Abrimos tabla/Open table}
Table1.Open;
{Compactar/pack}
PackDBF(Table1);
 
{Reabrir tabla/reopen table}
Table1.Close;
Table1.Exclusive:=False;
Table1.Open;

Un abraso al FORO.

Última edición por Roilo fecha: 17-07-2006 a las 17:14:17.
Responder Con Cita