FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Ordenar tabla de paradox sin indice o_O??
Bueno, sucede que necesito imprimir un reporte que tenga información de dos tablas distintas, es un estado de cuenta que jala registros tanto de abonos, como de salidas monetarias.
Lo que hice fue crear una tabla temporal en la que se insertan los datos de ambas tablas antes de mandar el preview al QuickReport donde será impreso el reporte. Hasta este punto está todo bien, ya que el QuickReport si me muestra la información que requiero, el problema es que no está ordenada, y necesito ordenarla por fecha. Ni siquiera intenté hacer el campo 'fecha' como indice principal porque es obvio que me mandará un key violation, entonces lo utilicé como indice secundario, pero me manda el error 'index out of date'. No se me ocurre como solucionar esto x_x. Actualmente lo que me muestra es primero los registros de la tabla Abonos y después los de la tabla Salidas. Si no me expliqué digánmelo, pero necesito que me ayuden U.U Byes! |
#2
|
||||
|
||||
El error viene- me parece -porque paradox se confunde si pones un índice secundario si poner uno primario. Puedes usar un campo auto incremental para que haga de llave primaria. Pero a mi me da porque te ahorrarías problemas si usaras un consulta SQL en lugar de una tabla temporal. Aunque no conozco la estructura de tus tablas, por lo que mencionas, podría ser algo como:
Habría que pobar, pero creo que e este caso el order by se aplica sobre toda la unión, de manera que obtendrías los datos ordenados como quieres. // Saludos |
#3
|
||||
|
||||
Tiene razón Román, al no tener un índice primario el índice secundario no puede ser mantenido por lo tanto no se actualiza.
Sino quieres cambiar nada lo que dice Román funcionara, o bien pones un Auotinc como Clave única o intentas la consulta de Union que yo he utilizado algunas veces y funciona perfectamente. Un Saludo.
__________________
Guía de Estilo de los Foros Cita:
|
#4
|
|||
|
|||
Gracias por las respuestas, hice lo de poner el campo autoincremental como llave primaria pero ne me sirvió :S, me sigue mandando el index out of date.
Ahora mi problema es que nunca he utilizado SQL en Delphi y no tengo idea de como, es decir, he utilizado consultas SQL en visual foxpro, y la verdad ya no recuerdo bien... bueno en sí lo que necesitaría es que me explicaran como hago para que el Delphi me ejecute el código SQL, y como hacer para mostrar el resultado en el reporte, ya que actualmente el reporte lo relaciono con la tabla temporal y no se como se relacionaría con el resultado de la query. Espero haberme explicado, y espero sus respuestas. Byes! |
#5
|
||||
|
||||
Usa una componente TQuery. En su propiedad SQL pones la consulta que te indiqué, y al igual que con el Table, activas la consulta con Query.Active := true o Query.Open. El QuickReport lo enlazas directamente al Query con su propiedad DataSet.
// Saludos |
#6
|
|||
|
|||
Bueno, la verdad no supe como utilizar el query xD, soy bastante novato en esto. Pero ya conseguí lo que buscaba por medio de unas cuantas condiciones y unos ciclos while.
Ahora tengo otra duda... ahora que mi tabla tiene un autoincremental como llave primaria, ¿cuando llegue al límite de valores que puede tener (un long int según leí), me va a mandar el error key violation al querer insertar registros en la tabla? Como es una tabla temporal la solución sería simple, ya que con pegarle encima una copia en blanco de la tabla o abriendola con el Database Desktop podría reiniciar el counter... el problema es que yo pienso dejarle el sistema al cliente y no creo volverlo a ver xD, así que me gustaría dejarle el sistema funcionando de tal manera que no requieran de mi ayuda en el futuro (al menos en ese aspecto), entonces quería saber si existe algún código para poder reiniciar el counter de la tabla al abrir el sistema o algo parecido, es decir, que el cliente no se de cuenta de que se está haciendo este trabajo, y que todo funciona bien magicamente xD. Espero sus respuestas, byes! |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
como puedo generar un indice en paradox | mrmago | Conexión con bases de datos | 4 | 13-01-2006 23:19:54 |
Indice en tablas Paradox | Coco_jac | Varios | 1 | 01-12-2005 15:48:18 |
urge como regenerar un indice corrupto de paradox | Marco A. Roa | Conexión con bases de datos | 2 | 20-05-2005 11:18:10 |
Indice de tabla paradox dañado | William Garcia | Tablas planas | 4 | 03-03-2004 23:43:38 |
Archivos de indice en Paradox | Ignacio | Varios | 3 | 08-01-2004 15:31:59 |
|