Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-03-2011
Rowerto Rowerto is offline
Miembro
 
Registrado: abr 2010
Posts: 20
Poder: 0
Rowerto Va por buen camino
Fechas con distintos formatos en una DBGrid

Hola, delphines XD
Me dirijo de nuevo a ustedes para resolver mis dudas sobre algo que me estoy haciendo para vivir mejor en mi trabajo.
Para empezar decir que como no supe muy bien donde colocar esta duda, me he ido a lo "mas generico" que he encontrado. Y es que al usar componentes ADO podria haberla puesto en la parte de conexion a BdDs, o al usar sentencias SQL no se si tendra la culpa y deberia haberlo puesto en su propia seccion... Bueno, al lio que me lio.
Trabajamos con una BdD Access (version 97, cosas de la empresa) y dentro de ella hay una tabla que se llama "Movimientos" donde estan todos los registros de movimientos de centros. Yo solo quiero poder hacer una consulta de los movimientos de un dia en concreto, algo que aparentemente es facil y sencillo se ha convertido en cuatro dias "malgastados" en revisar codigo y mirar foros (este, sobretodo) para aclararme algo las ideas, pero ni asi.
Tengo un form con :
- Una query llamada "ADOQDatos" al que le paso la sentencia SQL por codigo, ya que necesito primero darle la fecha que quiero consultar. La
sentencia final es
Código SQL [-]
SELECT F_Mov, B1, B2, B3, Ord_Eje_Inc, Ord_Noeje, Ord_Bien, Observac 
FROM Movimientos 
WHERE F_Mov = #'+ datetostr(MCalendario.Date) +'# ORDER BY B1'

- Un DataSource ("DataSource1") cuyo DataSet es el "ADOQDatos".
- Un DBGrid para poner la informacion cuyo DataSource es el "DataSource1".
- Y un TMonthCalendar ("MCalendario") que uso para elegir la fecha de consulta.
Para lanzar todo el proceso tengo el siguiente codigo (eso es todo, no tengo mas) en el evento del doble-click
Código Delphi [-]
  
  ADOQDatos.Close;
  ADOQDatos.SQL.Clear;
  ADOQDatos.SQL.Add('SELECT F_Mov, B1, B2, B3, Ord_Eje_Inc, Ord_Noeje, Ord_Bien, Observac FROM MOV_SCADA WHERE F_Mov = #'
                                 + datetostr(MCalendario.Date) +'# ORDER BY B1');
  ADOQDatos.Open;
  ADOQDatos.ExecSQL;

Todo parece funcionar bien, hasta que me doy cuenta que sabiendo que tengo registros de todos los dias del mes de Enero y Febrero resulta que cuando pico en el calendario los dias del 3 al 12 (ambos incluidos y tanto en Enero como en Febrero) no aparece nada. Pero si por ejemplo quiero ver las del 04/01/11 tengo que ir al 01/04/11, como si fuese fecha de formato americano (y lo mismo en Febrero).
otras cosas que he notado es que los registros de los dias 1 y 2 aparecen bien en ambos meses pero al visualizarse en la grid aparecen con formato americano, mientras los posteriores al dia 13 se visualizan en formato europeo.
Fui a la propia base de datos pero en la declaracion de F_Mov no hay mas que tipo "Fecha/Hora" sin mascara de entrada ni formato establecido. Ni que decir tiene que al ser una BdDs de empresa esta capada con usuario y contraseña (que no dan ni pa'tras, yo de hecho estoy trabajando con una copia local que realizo con el programa de Visual Basic que gestiona esa propia base) y no puedo crear consultas ni cosas parecidas para apoyarme en ellas. Pero al ver los datos de la tabla y ordenarlos, las fechas vienen correctas desde ella, es decir se guardan con formato 'dd/mm/aa'.
He encontrado algunos hilos en este foro sobre cosas parecidas como
http://www.clubdelphi.com/foros/showthread.php?t=44376
o este otro
http://www.clubdelphi.com/foros/showthread.php?t=55928
pero solo me han servido para liarme la cabeza aun mas.
He de suponer que estoy haciendo algo mal con los formatos de alguno de los componentes pero no logro detectar en cual ni donde y ahora mismo estoy bloqueado, perdido y no se que puedo hacer, por lo que cualquier ayuda o indicacion sera de agradecer.
Gracias de antemano, espero haberme explicado con claridad y perdon por el morrogo que acabo de soltar.
PD: Si algun admin. cree que esto debe estar en otra seccion, por favor que lo mueva sin dudar.

Última edición por rgstuamigo fecha: 03-03-2011 a las 17:24:24. Razón: Estética
Responder Con Cita
 



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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Color distintivo en DBgrid segun fechas amadis OOP 2 03-10-2007 20:00:21
Distintos Fonts en distintos PC lucasarts_18 Windows 2 12-07-2007 05:18:09
Problemas con el formatos de Fechas en SQL zorrocarolini SQL 7 31-01-2006 20:26:42
DBGrid, trabajar con fechas BlueSteel Varios 4 02-09-2005 21:30:20
Iconos distintos en distintos escritorios. abel Linux 2 16-02-2004 14:55:35


La franja horaria es GMT +2. Ahora son las 02:28:56.


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