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 30-08-2007
Avatar de Gaim2205
Gaim2205 Gaim2205 is offline
Miembro
 
Registrado: ago 2007
Ubicación: Durango, Mexico
Posts: 144
Poder: 17
Gaim2205 Va por buen camino
Como insertar una fecha vacia?

Tengo un formulario donde capturo varios datos, entre ellos estan los campos fecha_sni, fecha_per ambos de tipo Date, el usuario tiene la opcion de ingresar o no una fecha en ellos. Como puedo hacer para insertar una fecha vacia en la base de datos??

no 01/01/0001 ni 31/12/1899... vacio...

" / / " o " "

Gracias =D

nota: mi tabla en la b.d si permite nulls para esos campos.
Responder Con Cita
  #2  
Antiguo 30-08-2007
Avatar de paldave
paldave paldave is offline
Miembro
 
Registrado: ago 2007
Ubicación: Uruguay
Posts: 148
Poder: 17
paldave Va por buen camino
No dices con que tipo de tablas ni de base de datos estás trabajando. Creo que no te tomaste el tiempo suficiente como para plantear tu pregunta. Lee la Guía de estilo en la barra superior.
De todas formas creo que podrías usar un condicional para comprobar si los campos van a tener alguna fecha válida, y luego dependiendo de ello darles entrada en tu BD.
Para ser más claro propongo que descargues el componente TosDateEdit que adjunto (creación de un servidor, úsalo libremente), pongas 2 de ellos en el formulario y luego compruebes si tiene un valor válido en cada uno de ellos.
Por ejemplo si tu fech está en osDateEdit1 sería:
Código Delphi [-]
if (osDateEdit1.IsNull) or (not osDateEdit1.IsValid) then
    table1.SetFields([Nombre,null])
  else
     table1.SetFields([Nombre,osDateEdit1.Date]);
Archivos Adjuntos
Tipo de Archivo: zip osDateEdit.zip (1,8 KB, 7 visitas)

Última edición por paldave fecha: 30-08-2007 a las 20:06:48. Razón: Me olvidé de insertar el componente :o
Responder Con Cita
  #3  
Antiguo 30-08-2007
Avatar de Gaim2205
Gaim2205 Gaim2205 is offline
Miembro
 
Registrado: ago 2007
Ubicación: Durango, Mexico
Posts: 144
Poder: 17
Gaim2205 Va por buen camino
Disculpa por lo de la explicacion, tienes razon. Mi base de datos está en firebird. uso delphi 7 y los componentes MDO para conectarme.

La insercion de los datos la hago mediante un query, con el siguiente código:
Código Delphi [-]
que_ins.SQL.Text := format('insert into %s',[tabla])+''+'('+textosql+'';
que_ins.ParamByName('cve').AsInteger := StrToInt(Edit1.Text);
que_ins.ParamByName('mat').AsInteger := StrToInt(Edit2.text);
que_ins.ParamByName('nombre').AsString := edit3.Text;
que_ins.ParamByName('status').AsString := ComboBox1.Text;
que_ins.ParamByName('contrato').AsString := ComboBox2.Text;
que_ins.ParamByName('perfil').AsString := ComboBox12.Text;
que_ins.ParamByName('sni').AsString := ComboBox13.Text;
que_ins.ParamByName('Fechaper').AsDate := Fechaper.Date;
que_ins.ParamByName('Fechsni').AsDate := Fechasni.Date;

el combobox12 ycombobox13 (que tienen como opciones "si" y "no") son los que definen si la fecha sera vacia o no.

la unica forma en que he logrado que inserte la fecha vacia es guardando 4 cadenas distintas dentro de la variable "textosql", y con un case seleccionar el valor que tomara textosql segun las opciones elegidas. Pero quiero hacerlo de forma mas "limpia" y optimizada.

gracias otra vez
Responder Con Cita
  #4  
Antiguo 30-08-2007
Avatar de paldave
paldave paldave is offline
Miembro
 
Registrado: ago 2007
Ubicación: Uruguay
Posts: 148
Poder: 17
paldave Va por buen camino
Perdona, pero Fechaper y Fechasni ¿que tipo de componentes son? EditBox no pueden ser por la propiedad Date.
Responder Con Cita
  #5  
Antiguo 30-08-2007
Avatar de Gaim2205
Gaim2205 Gaim2205 is offline
Miembro
 
Registrado: ago 2007
Ubicación: Durango, Mexico
Posts: 144
Poder: 17
Gaim2205 Va por buen camino
que detalles se me van!!... son TDateEdit, de la Rxlib.
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
Problema insertar fecha Nomad SQL 17 17-01-2008 22:50:46
Error al insertar fecha en tabla DBF cocomo SQL 2 05-02-2007 17:24:46
Como insertar en un campo mediante un trigger la fecha actual del servidor kovaski Firebird e Interbase 2 04-10-2006 16:39:33
Asigna Fecha y Hora Automatico al Insertar Maury Manosalva OOP 3 31-10-2005 20:36:29
como insertar fecha y hora?? ebeltete SQL 2 02-08-2003 22:28:08


La franja horaria es GMT +2. Ahora son las 08:47:42.


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