Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 18-05-2011
Vales08 Vales08 is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 133
Poder: 14
Vales08 Va por buen camino
conversion error from string "0:00:00"

Hola a todos..
Me salta este error cuando quiero cargar una fecha.. uso TDataTimePicker.
De un momento a otro me empezo a saltar.. antes funcionaba perfecto..
tendra que ver algo este codigo??

DM.DSET_profFECHA_DE_NAC.Value:=Trunc(fecha_prof_a.Date);

DM= nombre del data module
DSET_prof= dataset de tabla profesional
fecha_prof_a= nombre del datatimepicker

trabajo con sql manager, delphi7
en la base de datos a fecha la tengo definida como date..

desde ya muchas gracias...-
Responder Con Cita
  #2  
Antiguo 18-05-2011
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Prueba así:
Código Delphi [-]
DM.DSET_profFECHA_DE_NAC.AsDateTime := Trunc(fecha_prof_a.Date);

Sería de ayuda que informaras qué motor de base de datos y qué componentes para acceder utilizas.
Responder Con Cita
  #3  
Antiguo 19-05-2011
Vales08 Vales08 is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 133
Poder: 14
Vales08 Va por buen camino
no me funciona, desabilito esa linea de codigo y tambien me tira ese error.. estoy usando datetimepicker, en sql manager tengo definida la fecha como date..
Tengo q convertir la fecha a string o algo asi??

el codigo que habia mostrado era para que se guardde solamente la fecha sin la hora, pero lo saco y me hace lo mismo..
Responder Con Cita
  #4  
Antiguo 19-05-2011
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Sigues sin decirnos cual es la base de datos... (Firebird, MySQL, SQL Server, ...)

Deberías decirnos también el SQL que contiene el Dataset, pues puede que el problema esté ahí.

También podrías poner un poco más de código... unas cuantas líneas anteriores y algunas posteriores, para ver si el problema está en otro lugar...

El mensaje exacto y completo del error en su idioma original siempre es de mucha ayuda.

Varios compañeros en el club firman así:

Cita:
La calidad de la respuesta es directamente proporcional al tiempo empleado para realizar la pregunta.
Y no digo más...
Responder Con Cita
  #5  
Antiguo 19-05-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.042
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Sólo has de seguir las normas de clubdelphi y, por supuesto, las recomendaciones de duilioisola.
Responder Con Cita
  #6  
Antiguo 19-05-2011
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.464
Poder: 21
newtron Va camino a la fama
Hola.

Yo no uso el datatimepicker pero da la impresión que te devuelve la hora en vez de la fecha, ¿no estará configurado para eso?.

Saludos
Responder Con Cita
  #7  
Antiguo 19-05-2011
Vales08 Vales08 is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 133
Poder: 14
Vales08 Va por buen camino
Cita:
Empezado por duilioisola Ver Mensaje
Sigues sin decirnos cual es la base de datos... (Firebird, MySQL, SQL Server, ...)

Deberías decirnos también el SQL que contiene el Dataset, pues puede que el problema esté ahí.

También podrías poner un poco más de código... unas cuantas líneas anteriores y algunas posteriores, para ver si el problema está en otro lugar...

El mensaje exacto y completo del error en su idioma original siempre es de mucha ayuda.

Varios compañeros en el club firman así:



Y no digo más...


Eh aclarado perfectamente que estoy trabajando con SQL manager, que en la base de datos tengo declarada la FECHA de type DATE.. y el error es excatamente el que les eh puesto en el titulo "conversion error from string "0:00:00" ".

Este componente (DateTimePicker) te guarda por defecto, en la base de datos la fecha junto con la hora. yo para que no suceda eso lo unico que eh hecho es agregarle la linea de codigo siguiente:

Código:
DM.DSET_profFECHA_DE_NAC.Value:=Trunc(fecha_prof_a.Date);
Donde lo que realiza es trucar la fecha, descartando la hora, es decir, que guarde solamente la FECHA. (Codigo extraido de ClubDelphi)
El codigo funcionaba perfecto, hasta que en un momento empezo a saltar ese error..
Responder Con Cita
  #8  
Antiguo 19-05-2011
Vales08 Vales08 is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 133
Poder: 14
Vales08 Va por buen camino
Problema resuelto

Muchas gracias por su aporte, pero el problema ya lo eh resuelto..
Voy a explicarles como, para que le sirva a alguien que se le pueda presentar la misma situacion..

Yo cuando puse el codigo de truncar la fecha, en delphi, en la base de datos tenia el campo FECHA declarado de type DATE, todo normal.
En un momento a ese campo lo modifique marcandolo como campo NOTNULL, ya que lo necesitaba para lo que estoy haciendo.. Resulta que al declararlo NOTNULL, por defecto me toma el valor '0:00:00' en la base de datos.
Por esta razón, cuando quiero ingresar la FECHA en delphi, me salta el error. Porque al truncarla, nunca me toma el valor que esta declarado por defecto en la base de datos..
Ahora le saque el NOTNULL y todo funciona perfectamente..

Espero haya sido lo mas clara posible.. Muchas gracias por su aporte y disculpen si no me habia explicado bien anteriormente..
Igual repito, los datos q me pedian de cual base estaba utilizando yo ya lo habia declarado con la misma pregunta.. Me gustaria que lean bien antes para no provocar malos entendidos.

Saludos.-
Responder Con Cita
  #9  
Antiguo 19-05-2011
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
He
Cita:
aclarado perfectamente que estoy trabajando con SQL manager
No conozco la base de datos SQL Manager.
Se que existe una herramienta SQL Manager que trabaja con varias bases de datos (motores de bases de datos).

Puede ser que hayas cambiado la versión de Base de datos (el motor, no la herramienta) y que por eso te empiece a dar errores.

¿Con qué componentes trabajas?
DBExpress, ADO, otros...
¿Te conectas por ODBC? puede que alguna actualización de Windows haya modificado algo

Cita:
Deberías decirnos también el SQL que contiene el Dataset
Los componetes suelen generar un SQL para el select, otro para el insert, update y delete.
En este caso *parece* que el update es el que deberías mostrarnos.

Cita:
También podrías poner un poco más de código
Esto es importante y más de una vez el error se da porque un poco más arriba o más abajo en el código se comete una "burrada".
A veces son cosas que no se inicializan o se reinicializan después de haberlas asignado.

¿Tiene triggers tu base?
A veces algún trigger modifica el valor que tu asignas desde Delphi.

Como podrás apreciar, hay mucha información que te falta dar para que podamos encontrar algún error. Lo único que sabemos es:
  • Texto del error: "conversion error from string "0:00:00" "
  • Punto en el programa donde da el error: DM.DSET_profFECHA_DE_NAC.Value:=Trunc(fecha_prof_a.Date);
  • Cambiar .Value por .AsDateTime no soluciona el error

Si te decides a mostrarnos un poco más de tu código (Delphi / SQL), quizás podamos ayudarte un poco más...
Responder Con Cita
  #10  
Antiguo 19-05-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.042
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por Vales08 Ver Mensaje
[..]
Espero haya sido lo mas clara posible.. Muchas gracias por su aporte y disculpen si no me habia explicado bien anteriormente..
Igual repito, los datos q me pedian de cual base estaba utilizando yo ya lo habia declarado con la misma pregunta.. Me gustaria que lean bien antes para no provocar malos entendidos.
Saludos.-
Pues no, no has sido nada clara. Y no existe ninguna base de datos sql manager, ya te lo ha explicado duilioisola.
Y es que no se puede ir a un sitio a pedir ayuda y luego tratar a quien te ayuda hablándole de esa manera. Espero que la próxima vez sea distinto.
Responder Con Cita
Respuesta



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
"String or binary data would be truncated" Gaim2205 Conexión con bases de datos 2 17-05-2008 14:32:40
la expresión String s = new String("hola"); David JAVA 4 22-02-2008 19:33:20
Error "class String Not Valid" toro2186 OOP 9 26-07-2005 16:23:30
Problema con funcion "COPY" (string) emeceuy Varios 6 28-05-2004 23:39:31
Tipo de Variable."String" ó "Double" UTECYBER OOP 7 15-12-2003 20:25:39


La franja horaria es GMT +2. Ahora son las 19:10:35.


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