Estoy desarrollando una aplicación con Delphi 6 y Paradox como base de datos. Tengo un TTable enlazado a un DBGrid mediante un DataSource. Este TTable apunta a la tabla paradox "facturas.db". Lo que quiero es mostrar el contenido del DBGrid ordenado por el campo "Fecha" de la tabla "facturas" de forma descendente (la fecha más reciente primero).
No utilizo SQL, utilizo un TTable, en la propiedad TableName coloco el nombre de la tabla de Paradox.
He probado, para la ordenación, a utilizar una propiedad del TTable, "IndexFieldNames", el código es el siguiente:
Código:
procedure TFormFactura.OpOrdenarFechaClick(Sender: TObject);
begin
tFactura.IndexFieldNames := 'Fecha';
end;
Esto siempre me ha funcionado, previamente creo el índice en Paradox utilizando Database Desktop. Pero no me funciona cuando marco, al crear el índice en "Secondary Indexes", al seleccionar "Descending", me da el error:
---------------------------
Debugger Exception Notification
---------------------------
Project Facturacion.exe raised exception class EDatabaseError with message 'tTablaFactura: No hay índice para los campos 'fecha''. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------
Si quito el check "Descending" del índice sí que me funciona.
Publicado:
Mar Mar 04, 2008 9:52 pm
alonsojpd Administrador/Moderador
Registrado: Sep 16, 2003 Mensajes: 2687
Asunto: Re: Ordenar tabla Paradox con Delphi
Anuncios
varios escribió:
Estoy desarrollando una aplicación con Delphi 6 y Paradox como base de datos. Tengo un TTable enlazado a un DBGrid mediante un DataSource. Este TTable apunta a la tabla paradox "facturas.db". Lo que
...
Utiliza, en vez de la propiedad "IndexFieldNames" la propiedad "IndexName", de esta forma sí te funcionará la ordenación descendente por el campo "Fecha":
Código:
procedure TFormFactura.OpOrdenarFechaClick(Sender: TObject);
begin
tFactura.IndexName := 'Nombre_Indice';
end;
Ten en cuenta que para "IndexName" se le pasa el nombre del índice, no el nombre del campo como en el caso de IndexFieldNames.
Puede publicar nuevos temas en este foro No puede responder a temas en este foro No puede editar sus mensajes en este foro No puede borrar sus mensajes en este foro No puede votar en encuestas en este foro
Visita nuestro nuevo sitio web con programas y contenidos actualizados: Proyecto A