![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Primero es necesaria una explicación acerca de ese gran desconocido TDatetime.
Una fecha en delphi es un valor double, donde la parte entera, son los días transcurridos desde el calendario base (31/12/1899), y la parte fraccionaria las horas minutos, segundos y milisegundos. por ejemplo, sumar 1 día a una fecha, es tan simple como esto:
Para tratar con horas, debemos hacer cálculos, por ejemplo, sumar una hora a la fecha y hora actual: como un día tiene 24 horas, 1/24 corresponde a 1 hora. 1/(24*60) corresponde a un minuto. 1/(24*60*60) corresponde a 1 segundo De esta forma se pueden hacer todo tipo de cálculos correctamente y sin error. Delphi, en la unidad DateUtils tiene toda una batería de funciones para tratar con fechas y horas sin tener que hacer cálculos, por ejemplo: - IncDay - IncMonth - IncYear - IncHour y otras para calcular diferencias: - DaysBetween (diferencia en días) - DaySpan (diferencias en días y fracciones de días) - MinutesBetween - HoursBetween Te recomiendo que le eches una visual, por ejemplo en la ayuda de Delphi. De todo lo anterior, podrías hacer el cálculo de dos formas:
Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
|
#2
|
|||
|
|||
|
No encuentro la unit DateUtils, ni tampoco las funciones
- DaysBetween (diferencia en días) - DaySpan (diferencias en días y fracciones de días) - MinutesBetween - HoursBetween - Etc... Tengo Delphi 5, perdon por mi ignorancia pero puede ser por eso, que sea la version de mi Delphi sea demasiado antigua?? Muchas gracias |
|
#3
|
|||
|
|||
|
Primero que nada, lo que yo creo es que estas trabajando con TDateTimePicker o con MonthCalendar y borraste la propiedad Date. Por eso te la deja como 31/12/1899.
En tiempo de ejecución pon lo siguiente:
Salud OS.
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney |
|
#4
|
||||
|
||||
|
Cita:
Tendrías que crear algunas rutinas que lo hagan, teniendo en cuenta mi mensaje anterior, podrías codificarlas... o eso espero. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
|
#5
|
|||
|
|||
|
Hola gente, les cuento que me pase a la version 7 de Delphi y si bien encontre las funciones y la unit mencionadas sigo teniendo el mismo problema: casi todas las operaciones que hago dan como resultado 30/12/1899. Es raro porque no es 31/12/1899 como la base del calendario sino 30/12/1899. Les dejo por las dudas el fuente por si lo quieren ver, capaz estoy haciendo algo mal... espero no me reten, jaja. Muchas gracias
|
|
#6
|
|||
|
|||
|
Bueno tienes varios detalles en tu código.
1. Usas variables de tipo Double, mejor usa tipo TDateTime. 2. Estas buscando dias transcurridos entre las fechas. 3. Muestras los dias como si fuera fecha y no es así, es un valor entero. Aqui te pongo la modificación a tu código.
Salud OS.
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney |
|
#7
|
|||
|
|||
|
Ayuda con tdate time
Como puedo hacer esto mismo que ustedes explican pero en c++????
|
|
#8
|
|||
|
|||
|
Ahora si anduvo bien, muchas gracias. En realidad habia probado todo lo que decis menos pasar la fecha como una cadena. Yo la fecha la asignaba directamente a la variable TdateTime y en el resultado de cualquier operacion me daba cero. Por que se hace eso de asignar como cadena y despues convertirla a date en vez de ingresarla como TdateTime directamente??
|
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Error Con Fechas! | nicolas_espina | SQL | 2 | 04-08-2006 01:18:19 |
| Como trabajar con fechas y horas | JULIPO | MySQL | 7 | 07-06-2006 17:01:34 |
| DBGrid, trabajar con fechas | BlueSteel | Varios | 4 | 02-09-2005 21:30:20 |
| me hace falta un componente para trabajar con fechas y bases de datos | fearlex | Conexión con bases de datos | 17 | 13-07-2004 23:37:28 |
| Como trabajar con fechas? | judoboy | OOP | 4 | 19-05-2003 11:28:58 |
|