Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Tablas planas
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-09-2004
jovehe jovehe is offline
Miembro
 
Registrado: abr 2004
Posts: 51
Poder: 21
jovehe Va por buen camino
Unhappy Filtrar Tabla

que tal amigos del foro
espero me puedan ayudar con este pequeño problema que tengo .
lo que pasa que yo tengo una tabla paradox en la cual tengo un campo llave que es el id_movimiento pero yo necesito que los datos me los muestre ordenados por el campo fecha_movimiento el tipo de dato de este campo es @ timestamp ya defini un indice en mi tabla por fecha y en las propiedades del componenete table le puse en la propiedad indexfieldname el nombre de este indice pero me manda un mesaje que no se puede acceder al campoi fecha_movimiento en modo integer.

el chiste es que no puedo hacer que la tabla me aparezca ordenada por fecha.
ojala y me pudieran ayudar porque la verdad ya le busque y no puedo (es lo malo de ser nuevo en la programacion).
gracias de antemano y disculpen la molestias.
Responder Con Cita
  #2  
Antiguo 14-09-2004
Avatar de Odnanref
Odnanref Odnanref is offline
Miembro
 
Registrado: jul 2003
Ubicación: Aguascalientes, Ags. México
Posts: 11
Poder: 0
Odnanref Va por buen camino
Cambio de tipo

Hola por que no mejor cambias tu campo Id_fecha a Alphanumerico y utilizas en tu codigo la instruccion datatostr(now) espero que te sirva.
__________________
Tec. Fernando M. Flores M.
Aguascalientes Ags. México
Email: odnanrefleugim@hotmail.com,
fernandomiguelf02@yahoo.com.mx
Responder Con Cita
  #3  
Antiguo 15-09-2004
jovehe jovehe is offline
Miembro
 
Registrado: abr 2004
Posts: 51
Poder: 21
jovehe Va por buen camino
Question

hola que tal gracias por tu pronta respuesta ya probe lo que me dijiste pero el problemilla es que yo copio los datos de otra tabla en donde el tipo de dato del campo fecha es timestamp entonces lo copio como cadena a mi tabla pero el problema es que cuando la ordeno por el campo fecha me respeta solo el orden pero del dia es decir me pone 01/01/04 y despues me pone 01/02/04 y asi sucesivamente hasta que se acaba el 01y se sigue con el 02.

entonces pues ahora no se que hacerle para que me respete el orden pero por fecha.
gracias y espero me puedas o me puedan ayudar.
Responder Con Cita
  #4  
Antiguo 15-09-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por jovehe
copio los datos de otra tabla en donde el tipo de dato del campo fecha es timestamp entonces lo copio como cadena a mi tabla
Bueno, pero entonces era de esperarse ¿no? Aunque cronológicamente 13/05/04 esté antes de 10/06/04 tu tabla no puede entender que se trata de fechas, para ella son simples cadenas de caracteres, y como tales "13/05/04" va después de "10/06/04".

Aquí la pregunta sería, ¿por qué pasas de TimeStamp a String en lugar de a un campo Date? Y si esto es algo que no puedes modificar entonces quizá puedas almacenar las fechas pero en formato "yy/mm/dd" de manera que la fecha 13/05/04 pase a ser la cadena "04/05/13" y 10/06/04 pase a ser "04/06/10" obteniendo el orden correcto.

// Saludos
Responder Con Cita
  #5  
Antiguo 15-09-2004
jovehe jovehe is offline
Miembro
 
Registrado: abr 2004
Posts: 51
Poder: 21
jovehe Va por buen camino
Question

hola que tal
Si de Hecho tienes razon era obvio que ordenara la tabla asi porque como dices solo reconoce una cadena .

de hecho ya hice lo que me dices copiar de un timestamp a un campo date pero al momento de generar un filtro desde la propiedad idexfieldname o indexname me manda un error que dice
No se puede acceder el campo Fecha_Movimiento como tipo integer y entonces no se que pasa ese es mi problema
gracias por tu ayuda y ojala me puedas ayudar.
Saludos
Responder Con Cita
  #6  
Antiguo 15-09-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Pero este error no viene por poner el índice. En algún lugar estás haciendo algo parecido a

Table1.FieldByName('fecha_movimiento').AsInteger

es decir, tal como dice el mensaje, estás intentando usar el campo como si fuese un valor entero, cosa que no es posible.

// Saludos
Responder Con Cita
  #7  
Antiguo 15-09-2004
jovehe jovehe is offline
Miembro
 
Registrado: abr 2004
Posts: 51
Poder: 21
jovehe Va por buen camino
Question

ya me di cuenta mas omenos que pasa y es que la llave de esa tabla es de tipo entero entonces yo tengo una validacion de este tipo

While not tabla1.Eof do
Begin
movto:=tabla1Id_Movto.AsInteger;
if tabla2.FindKey([movto]) then
begin
tabla1.Next;
end
else
begin
tabla2.Append;
Tabla2Id_Movto.AsInteger:=DM3.Query3.FieldByName('Id_Movto').AsInteger;
y aqui sigo copiando los demas campos

entonces si le quito la condicion de que busque la llave ya me ordena la tabla
que podre hacer para que esa condicion siga haciendola pero que me oredene tambien la tabla
gracias por tu ayuda y tu rapida respuesta.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 21:40:38.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi