FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
problema de posicionamiento en tabla
Hola amigos estoy implementando zeoslib en Delphi XE y resulta que tengo una tabla con códigos numéricos del 1 al 16, mi problema es que cuando hago tabla.first para posicionarme al inicio y empezar a recorrerla, el componente zeos por alguna razón que no entiendo se posiciona en el segundo registro de la tabla, después accesa el primero, después el tercero y así sucesivamente. Ejemplo: cuando despliego la lista de códigos me queda: 2,1,3,4,5,6,... en vez de 1,2,3,4,5,6,...
Ya he intentando re-indexar y hacer vacum a dicha tabla en el pgAdmin pero igual me la recorre de esta forma tan extraña. Anteriormente usaba el componente de PostgresDAC de MicroOlap y no tenía ese problema. Agradezco cualquier ayuda que me puedan brindar! |
#2
|
||||
|
||||
¿Pero qué sql estás ejecutando?
Tú decides el orden. En tu caso será algo así:
|
#3
|
|||
|
|||
Gracias Casimiro! yo estoy recorriendo la tabla con un ciclo porque no estoy utlizando un dblist si no un objeto lista corriente. El código es sencillo:
Última edición por ecfisa fecha: 13-08-2015 a las 03:34:06. Razón: Etiquetas [delphi][/delphi] |
#4
|
||||
|
||||
Definitivamente coincido con Casimiro, el problema es el orden
Como insertaste los registros? Como los recuperas? En el codigo de ejemplo que es "Tabla"? Hablas de un objeto lista corriente y no un, ¿ dblist ? Que es un "objeto lista corriente"? Yo interprete TList, o TList<T> Como se llena este objeto lista corriente? como insertas los registros? |
#5
|
||||
|
||||
Qué tal.
¿Has probado con un TZQuery?
__________________
No lo intentes!. Hazlo o no lo hagas, pero no lo intentes !!! (Yoda) |
#6
|
||||
|
||||
Quitas el componente tabla y pones un componente query. En su sentencia select pones lo que te he escrito antes, y aprovechando tu código, quedaría así:
|
#7
|
||||
|
||||
Para completar un poco...En Bases de datos Sqls, Al hacer un "tabla.insert", no se guarda al final de tabla. Esto se hace por eficiencia, no tiene sentido irse al final de la tabla para insertar y después volver a donde se estaba.
Se busca un hueco de un registro eliminado (por ejemplo) y se inserta allí mismo. En Paradox y demás BBDD de escritorio, el "tabla.Append" sí lo inserta al final de la tabla. El "tabla.insert" lo hace donde pueda. Te recomiendo usar un tZQuery de esos con el sql : "select codig from tabla order by codig" y que hagas una rutina que usarás más de lo que crees, sobre todo si la aplicación es multiusuario.
Ahora la puedes llamar:
Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#8
|
|||
|
|||
Muchas gracias amigos ya logré resolver el problema mediante la propiedad "sortedfields" del TZTable, le establecí el campo codigo y autompáticamente me seteó la propiedad "IndexFieldNames" = codigo Asc y listo ahora si me despliega el TList debidamente ordenado, gracias por la ayuda! Adjunto unas imágenes para ilustrar el problema y la solución usando esta propiedad por si a alguno algún se topa con el mismo inconveniente.
Tabla.jpg Antes.jpg Despues.jpg |
#9
|
||||
|
||||
> Doctor, doctor, todo el mundo me ignora. >> ¡Que pase el siguiente! |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
posicionamiento web en php | elcigarra | PHP | 13 | 26-01-2012 16:24:46 |
posicionamiento de imagenes | yojanna | C++ Builder | 1 | 05-11-2005 09:24:02 |
Posicionamiento en un DBLooupCombobox | killaton | Conexión con bases de datos | 2 | 07-03-2005 21:46:42 |
posicionamiento en dbedit | raugadel | Varios | 1 | 28-04-2004 13:07:21 |
Posicionamiento en Grillas | jfontane | Varios | 7 | 04-06-2003 17:13:58 |
|