FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
pasar un string date a un campo datetime de una tabla
Hola a todos,
Estoy usando interbase 7 con delphi 6. ¿Cómo se puede pasar un valor de un tMaskEdit, con mask de fecha dd/mm/aa, o un TEdit, a un campo Tdatetime de una base de datos interbase? Estoy usando para las tablas de IB los IBDataSet. Muchas gracias, Virginia
__________________
Sonrie al mundo, y el mundo te sonreirá :) |
#2
|
|||
|
|||
Sin probarlo.....
Código:
MiTablaMiCampo.AsDateTime := StrToDateTime(MiEdit.Text); Código:
MiTablaMiCampo.AsString := MiEdit.Text; |
#3
|
||||
|
||||
Lo que si funciona con un TDateEdit y con TDBDateEdit, que vienen con las RX. Lo siguiente:
Código:
MiTablaMiCampo.AsString := MiTDateEdit.EditText; |
#4
|
|||
|
|||
Hola,
Cita:
MiTablaMiCampo.AsDateTime := StrToDateTime(MiEdit.Text); esto es: MiTablaMiCampo.value := StrToDateTime(MiEdit.Text); MiTablaMiCampo.AsDateTime := StrToDate(MiEdit.Text); MiTablaMiCampo.AsString := MiEdit.Text; ... ¿cómo hago para validar la fecha? Como ya os digo, he intentado usar tanto TEdit como TMaskEdit, (con mascara para una fecha dd/mm/aa), para el campo en el que se debe insertar la fecha. Gracias de antemano. Virginia
__________________
Sonrie al mundo, y el mundo te sonreirá :) Última edición por Giniromero fecha: 12-02-2004 a las 09:45:07. |
#5
|
|||
|
|||
Cita:
En Delphi 6 tienes la función TryStrToDateTime(), sinó siempre puedes hacer un bloque try..except..end Código:
try StrToDateTime(MiEdit.Text); except // No es fecha válida end; |
#6
|
|||
|
|||
Hola,
en el topic search no encuentro nada relativo al uso de TryStrToDateTime(). He mirado StrToDateTime, y me da a entender que tengo que introducir una fecha ¿Y UNA HORA? Yo sólo necesito la fecha, no la hora. Mas que nada, por que me parece que con esto sólo voy a conseguir que, vale, no me de error, pero tampoco me guarde la fecha nunca, pues si el formato está siempre mal con respecto a lo que necesita... Gracias por todo, Virginia
__________________
Sonrie al mundo, y el mundo te sonreirá :) |
#7
|
|||
|
|||
De TryStrToDateTime no encontrarás ayuda, pero sí de TryStrToConvUnit function
La forma de utilizarlo sería: Código:
procedure TForm1.FormCreate(Sender: TObject); var F: TDateTime; begin if TryStrToDateTime(Edit1.Text, F) then ShowMessage('correcto') else ShowMessage('incorrecto') end; Otra cosa, un campo de tipo DateTime contiene, como bien dices, la fecha y la hora (fecha parte entera, hora parte decimal). Pero para hacer este tipo de validaciones/conversiones, no necesitas para nada discriminar esta "pequeñez" Por otra parte, el problema dices que no te guarda la fecha. ¿Supongo que estarás poniendo en Edición o Inserción el registro antes de asignar la fecha, verdad? Mira de poner un cachito del código para que nos hagamos una idea |
#8
|
|||
|
|||
Hola,
Cita:
Voy a progar lo que me comentas. Muchas gracias, como siempre, por todo. Te cuento que pasa. Virginia
__________________
Sonrie al mundo, y el mundo te sonreirá :) |
#9
|
|||
|
|||
EUREKA!!
Esta torpe estaba poniendo mal "DateTime", pues estaba escribiedo "DataTime". De todos modos me han sido de mucha ayuda vuestras indicaciones. Gracias por todo, Virginia
__________________
Sonrie al mundo, y el mundo te sonreirá :) |
|
|
|