Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Guardar fechas (Dolor de cabeza!!!)

Estas en el tema de Guardar fechas (Dolor de cabeza!!!) en el foro de Visual Basic clásico en Foros del Web. Saludos, En un Form tengo dos DTPicker, uno con formato fecha y el otro con formato hora con los siguientes nombres: DTPicker1: Fecha1 (11/02/2011) DTPicker2: ...
  #1 (permalink)  
Antiguo 11/02/2011, 15:28
Avatar de Orhgool  
Fecha de Ingreso: junio-2009
Ubicación: Corazón de Anky
Mensajes: 42
Antigüedad: 14 años, 10 meses
Puntos: 1
Pregunta Guardar fechas (Dolor de cabeza!!!)

Saludos,

En un Form tengo dos DTPicker, uno con formato fecha y el otro con formato hora con los siguientes nombres:

DTPicker1: Fecha1 (11/02/2011)
DTPicker2: Hora1 (04:15:00 p.m.)
una variable para capturar la fecha: Dim vFECHA1 As Date

vFECHA1 = Fecha1.Value & " " & Hora1.Value (11/02/2011 04:15:00 p.m.)

Al guardar la variable vFECHA1 en SQL Server 2005 en un campo Datetime me da el siguiente error:

Error '-2147217913 (80040e07)' en tiempo de ejecución:

Error de conversión al convertir una cadena de caracteres a datetime.


Qué tipo de conversión debo utilizar??

ya estuve probando muchas cosas y nada, conversiones como los del siguiente enlace y nada: http://www.sqlusa.com/bestpractices/datetimeconversion/
__________________
"Es en nuestros momentos más oscuros que debemos concentrarnos en ver la luz." ~ Aristóteles Onassis
  #2 (permalink)  
Antiguo 14/02/2011, 11:41
 
Fecha de Ingreso: julio-2009
Mensajes: 20
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Guardar fechas (Dolor de cabeza!!!)

Como lo guardas en sql 2005?
Insert into, update, etc?
colocaste los apostrofes al comienzo y fin del valor ('11/02/2011 04:15:00 p.m.')

Te fijaste si el formato de la hora es "p.m." y no "PM"
o si la hora es de 12 o 24 (11:00:00 PM o 23:00:00)
Saludos
  #3 (permalink)  
Antiguo 14/02/2011, 14:18
Avatar de Gakex  
Fecha de Ingreso: enero-2009
Mensajes: 137
Antigüedad: 15 años, 3 meses
Puntos: 4
Respuesta: Guardar fechas (Dolor de cabeza!!!)

Prueba con esto

FECHA1 = cDate(Fecha1.Value) & " " & cDate(Hora1.Value)
  #4 (permalink)  
Antiguo 22/02/2011, 11:01
Avatar de Orhgool  
Fecha de Ingreso: junio-2009
Ubicación: Corazón de Anky
Mensajes: 42
Antigüedad: 14 años, 10 meses
Puntos: 1
Respuesta: Guardar fechas (Dolor de cabeza!!!)

Cita:
Iniciado por Gakex Ver Mensaje
Prueba con esto

FECHA1 = cDate(Fecha1.Value) & " " & cDate(Hora1.Value)

Lastimosamente se me presenta el mismo error...
__________________
"Es en nuestros momentos más oscuros que debemos concentrarnos en ver la luz." ~ Aristóteles Onassis
  #5 (permalink)  
Antiguo 22/02/2011, 11:10
Avatar de Orhgool  
Fecha de Ingreso: junio-2009
Ubicación: Corazón de Anky
Mensajes: 42
Antigüedad: 14 años, 10 meses
Puntos: 1
Respuesta: Guardar fechas (Dolor de cabeza!!!)

Cita:
Iniciado por Peluza_string Ver Mensaje
Como lo guardas en sql 2005?
Insert into, update, etc?
colocaste los apostrofes al comienzo y fin del valor ('11/02/2011 04:15:00 p.m.')

Te fijaste si el formato de la hora es "p.m." y no "PM"
o si la hora es de 12 o 24 (11:00:00 PM o 23:00:00)
Saludos
- Estoy guardando la consulta en una variable (Insert y Update):

SQL="insert into ..."
cn.Execute (SQL)

- Sí estoy colocando los apostrofes y el formato es como el de tu ejemplo ('11/02/2011 04:15:00 p.m.')
__________________
"Es en nuestros momentos más oscuros que debemos concentrarnos en ver la luz." ~ Aristóteles Onassis
  #6 (permalink)  
Antiguo 22/02/2011, 14:06
Avatar de lokoman  
Fecha de Ingreso: septiembre-2009
Mensajes: 502
Antigüedad: 14 años, 7 meses
Puntos: 47
Respuesta: Guardar fechas (Dolor de cabeza!!!)

Hola!!
Haz lo siguiente:
Copia el contenido de tu string (SQL="insert into...") y correlo en la BD (query analyzer)... y desde ahi corrige cualquier error... cuando esté todo correcto, simplemente tradúcelo a VB6 y listo!!

Edit: No será que el formato es MM/DD/YYYY ó YYY/MM/DD?, cual es la longitud el campo DATETIME en la BD?
Mi SQL 2000 solo le asigna 8 caracteres a la fecha (DATETIME), no c si SQL2005 le pone mas...

Última edición por lokoman; 22/02/2011 a las 14:24
  #7 (permalink)  
Antiguo 24/02/2011, 14:35
Avatar de Orhgool  
Fecha de Ingreso: junio-2009
Ubicación: Corazón de Anky
Mensajes: 42
Antigüedad: 14 años, 10 meses
Puntos: 1
Respuesta: Guardar fechas (Dolor de cabeza!!!)

Cita:
Iniciado por lokoman Ver Mensaje
Hola!!
Haz lo siguiente:
Copia el contenido de tu string (SQL="insert into...") y correlo en la BD (query analyzer)... y desde ahi corrige cualquier error... cuando esté todo correcto, simplemente tradúcelo a VB6 y listo!!

Edit: No será que el formato es MM/DD/YYYY ó YYY/MM/DD?, cual es la longitud el campo DATETIME en la BD?
Mi SQL 2000 solo le asigna 8 caracteres a la fecha (DATETIME), no c si SQL2005 le pone mas...
La consulta que estoy usando la ejecuté primero en el query analyzer y no me dio problemas, luego la implementé en VB6 y surgió el error.

En SQL 2005, el tipo del campo es DATETIME y no le asigna longitud, incluso si intento colocarla no lo acepta, solo guarda el tipo de campo.

Voy a intentar traducir todo a un procedimiento almacenado para ejecutar el proceso desde la propia base de datos, creo que asi sí lograré trabajar con éste campo.

Gracias por su tiempo
__________________
"Es en nuestros momentos más oscuros que debemos concentrarnos en ver la luz." ~ Aristóteles Onassis
  #8 (permalink)  
Antiguo 28/02/2011, 09:50
 
Fecha de Ingreso: diciembre-2009
Mensajes: 22
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Guardar fechas (Dolor de cabeza!!!)

hola
los datatime en sqlserver 2005 no llevan 'PM' o 'AM' , trabaja con 24 horas
  #9 (permalink)  
Antiguo 07/03/2011, 08:22
Avatar de Orhgool  
Fecha de Ingreso: junio-2009
Ubicación: Corazón de Anky
Mensajes: 42
Antigüedad: 14 años, 10 meses
Puntos: 1
Respuesta: Guardar fechas (Dolor de cabeza!!!)

Cita:
Iniciado por cacophonyRB Ver Mensaje
hola
los datatime en sqlserver 2005 no llevan 'PM' o 'AM' , trabaja con 24 horas
Ésta es la solución, te agradezco. Ya puedo almacenar la info, solo estoy trabajando en un arreglo para manejar el sistema de 24 horas.
__________________
"Es en nuestros momentos más oscuros que debemos concentrarnos en ver la luz." ~ Aristóteles Onassis

Etiquetas: fechas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:28.