Data em branco
Bom dia pessoal,
Gostaria de saber como faço para deixar a data em branco (somente com a formatação ( / / )) no DateTimePicker e, consequentemente, no banco de dados. Fiz uma pesquisa aí no fórum e não consegui encontrar nada do gênero. Se puderem me ajudar ficarei muito grato.
Um abraço,
Geraldo Pereira França
Programador de Sistemas (Clipper, Delphi e Java)
Uni System Informática
Fone: (64) 455-2100
Email: geraldo@usinfo.com.br
Gostaria de saber como faço para deixar a data em branco (somente com a formatação ( / / )) no DateTimePicker e, consequentemente, no banco de dados. Fiz uma pesquisa aí no fórum e não consegui encontrar nada do gênero. Se puderem me ajudar ficarei muito grato.
Um abraço,
Geraldo Pereira França
Programador de Sistemas (Clipper, Delphi e Java)
Uni System Informática
Fone: (64) 455-2100
Email: geraldo@usinfo.com.br
Gpfranca
Curtidas 0
Respostas
Bruno_fantin
11/01/2005
Acredito que no DateTimePicker é só você fazer DateTimePicker.Date = null
Agora no banco é a mesma coisa.... Seta como null o campo...
Agora no banco é a mesma coisa.... Seta como null o campo...
GOSTEI 0
Gpfranca
11/01/2005
Se colocar que o valor é igual ele vai dar a mensagem: ´Could not convert variant of type (Null) into type (Double)´.
GOSTEI 0
Vprates
11/01/2005
Primeiro verifica se o campo eh diferente de null, se for aih faz a proxima verificação
GOSTEI 0
Maikiperin
11/01/2005
Primeiramente gravo o campo normalmente:
campo data := EData.Date; e assim por diante
No banco trabalho com trigger´s como:
CREATE TRIGGER TR_INSDATAAGENDA FOR AGENDA
ACTIVE BEFORE INSERT POSITION 1
as
begin
if (new.data_agenda = ´12/30/1899´) then
new.data_agenda = NULL;
end
^
CREATE TRIGGER TR_UPDATAAGENDA FOR AGENDA
ACTIVE BEFORE UPDATE POSITION 1
as
begin
if (new.data_agenda = ´12/30/1899´) then
new.data_agenda = NULL;
end
^
COMMIT WORK ^
SET TERM ;^
e p/ mostrar os dados vindo do b.d. eu faço assim:
if DMDados.DSPrincipal.DataSet[´DATA_AGENDA´]=NULL then
FProprietario.EDatanasc.text:=´ / / ´
else
FProprietario.EDatanasc.text:=DMDados.DSPrincipal.DataSet[´DATA_AGENDA´];
qualquer dúvida, fala ae.
inté
campo data := EData.Date; e assim por diante
No banco trabalho com trigger´s como:
CREATE TRIGGER TR_INSDATAAGENDA FOR AGENDA
ACTIVE BEFORE INSERT POSITION 1
as
begin
if (new.data_agenda = ´12/30/1899´) then
new.data_agenda = NULL;
end
^
CREATE TRIGGER TR_UPDATAAGENDA FOR AGENDA
ACTIVE BEFORE UPDATE POSITION 1
as
begin
if (new.data_agenda = ´12/30/1899´) then
new.data_agenda = NULL;
end
^
COMMIT WORK ^
SET TERM ;^
e p/ mostrar os dados vindo do b.d. eu faço assim:
if DMDados.DSPrincipal.DataSet[´DATA_AGENDA´]=NULL then
FProprietario.EDatanasc.text:=´ / / ´
else
FProprietario.EDatanasc.text:=DMDados.DSPrincipal.DataSet[´DATA_AGENDA´];
qualquer dúvida, fala ae.
inté
GOSTEI 0
Lperosa
11/01/2005
Se colocar que o valor é igual ele vai dar a mensagem: ´Could not convert variant of type (Null) into type (Double)´.
Tenta fazer CpoData.Date = 0;
GOSTEI 0