Ver Mensaje Individual
  #4  
Antiguo 02-06-2005
Citlalli Citlalli is offline
No confirmado
 
Registrado: may 2005
Posts: 40
Reputación: 0
Citlalli Va por buen camino
les voy a explicar paso a paso mi problema, hay que tomar en cuenta que utilizo interbase 6 (el que viene con delphi 6) y lo que estoy haciendo es una agenda por lo tanto es super importante el buen manejo de las horas:

1: di de alta en mi base de datos un campo de tipo varchar llamado "Hora".

2: guardo en dicho campo la hora de la siguiente manera:

Código:
 
			  Add('INSERT INTO Agenda (');
			  Add('Hora,');
			  Add('Values (');
			  Add(sep + FormatDateTime('h:mm am/pm',Time) + sep + ',');
3: quiero hacer un ORDER BY por dicho campo y me encuentro conque no lo hace.

4: supuse que por ser de tipo varchar no lo ordena en orden cronologico, asi que le cambio el tipo al campo y se lo pongo timestamp.

5: intenté guardar el dato de la misma forma que arriba pero me manda el error: "error conversion for string"

6: investigue aqui en el foro y algien me dijo que hiciera la incersión por medio de parámetros:

Código:
 
				 ParamByName('Hora').AsTime := Time;
7: efectivamente, funcionó... pero al mostrar el campo en un DBGrid lo muestra asi "01/06/2005 06:20:36 pm" y yo solo quiero que me muestre la hora (06:20 pm)

8: posteriormente quiero poder comparar dicha hora contra otra, esto con el fin de hacer avisos al cliente en cierta hora.

espero haberme explicado bien, en fin, espero sus respuestas muchas gracias

saludos
Responder Con Cita