![]() |
datetimetostr mala conversion
Estoy intentando convertir el valor 39489,474262 que equivale al 11:02:2008 11:22:56 y al grabar en en el sql
sql:='update movihoras set salida= ' + DateTimeToStr(ahora) me queda registrada la fecha como 11:02:2008 11:23:00 Alguien sabe porque le suma un minuto mas? Muchas gracias |
FormatDatetime('mm/dd/yyyy hh:nn:ss', ahora);
Supongo que deberás usar el formato mm/dd para tu motor de bases de datos. Saludos. |
El problema esta en que redondea los segundos y no se porque.
|
¿qué base de datos usas?
|
Que tal dFarias??
Si lo que necesitas es que te guarde la hora en que estas guardando el registro puedes utilizar directamente la funcion getdate de SQL y asi te ahorras el transporte y conversion de datos en vez de escribirlo asi: sql:='update movihoras set salida= ' + DateTimeToStr(ahora) Intenta con esto: sql:='update movihoras set salida= GetDate()' Intenta con eso y nos platicas como te fue o en su defecto si era esto lo que necesitabas. |
|
Tema resuelto. El problema esta en que el campo donde guardo la fecha y hora es SmallDateTime y estos campos redondean automaticamente.
No puedo usar la hora del sqlserver porque puede haber un lapso de 30 segundos entre en momento del evento y en momento de la grabacion. Con lo cual pude traducirse en un minuto de diferencia. Muchas gracias a todos. |
| La franja horaria es GMT +2. Ahora son las 11:35:24. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi