Erro ao Digitar Data
Olá Pessoal, estou com problemas para validar uma data.
estou usando o componente TDBDateEdit e quando digito algo tipo: 44/22/11 ocorre um erro: --> '44/22/11' is not a valid date
Se alguém souber de uma forma de tratar esse erro, ou conhece algum componente que possa digitar as datas já sendo tratadas, eu agradeço.
Achei esse exemplo, mas não tive sucesso ao implementar.
try
StrToDate(FDQry.FieldByName('DTCADASTRO').AsString);
except on EConvertError do
begin
ShowMessage ('Data Inválida!');
exit;
end;
estou usando o componente TDBDateEdit e quando digito algo tipo: 44/22/11 ocorre um erro: --> '44/22/11' is not a valid date
Se alguém souber de uma forma de tratar esse erro, ou conhece algum componente que possa digitar as datas já sendo tratadas, eu agradeço.
Achei esse exemplo, mas não tive sucesso ao implementar.
try
StrToDate(FDQry.FieldByName('DTCADASTRO').AsString);
except on EConvertError do
begin
ShowMessage ('Data Inválida!');
exit;
end;
Willian Rodrigues
Curtidas 0
Respostas
Raimundo Pereira
25/08/2022
Bom dia!
Experimenta usar DateTimePicker é um componente do tipo data e hora.
Já trata a data e hora ao digitar
Para usar formato hora, deverá selecionar a propriedade kind para dtkTime;
*Enviado ao banco de dados*
Suatabela.FDQry.FieldByName('DTCADASTRO').AsString:=TimeToStr(DateTimePicker1.Time);
Para usar formato data, deverá selecionar a propriedade kind para dtkDate;
*Enviado ao banco de dados*
Suatabela.FDQry.FieldByName('DTCADASTRO').AsString:=DateToStr(DateTimePicker1.Date);
*Pegando informação da tabela para o componente*
DateTimePicker1.Date:=StrToDate(Suatabela.FDQry.FieldByName('Seu campo data na tabela').AsString);
DateTimePicker1.Time:=StrTotime(Suatabela.FDQry.FieldByName('Seu campo horana tabela).AsString);
Observação: Caso só possua um campo na tabela, opere somente com a propriedade date.
Considerações: Certifica-se que o campo na tabela seja VARCHAR, caso esteja no formato timestamp, não se faz necessário converter de string para date
Experimenta usar DateTimePicker é um componente do tipo data e hora.
Já trata a data e hora ao digitar
Para usar formato hora, deverá selecionar a propriedade kind para dtkTime;
*Enviado ao banco de dados*
Suatabela.FDQry.FieldByName('DTCADASTRO').AsString:=TimeToStr(DateTimePicker1.Time);
Para usar formato data, deverá selecionar a propriedade kind para dtkDate;
*Enviado ao banco de dados*
Suatabela.FDQry.FieldByName('DTCADASTRO').AsString:=DateToStr(DateTimePicker1.Date);
*Pegando informação da tabela para o componente*
DateTimePicker1.Date:=StrToDate(Suatabela.FDQry.FieldByName('Seu campo data na tabela').AsString);
DateTimePicker1.Time:=StrTotime(Suatabela.FDQry.FieldByName('Seu campo horana tabela).AsString);
Observação: Caso só possua um campo na tabela, opere somente com a propriedade date.
Considerações: Certifica-se que o campo na tabela seja VARCHAR, caso esteja no formato timestamp, não se faz necessário converter de string para date
GOSTEI 0
Willian Rodrigues
25/08/2022
Tentei colocar esse componente, parece muito bom, sabe me dizer se existe uma forma de permitir digitar a Data?
Pelo visto, ele coloca as barras / / automaticamente.
Pelo visto, ele coloca as barras / / automaticamente.
GOSTEI 0
Raimundo Pereira
25/08/2022
Tentei colocar esse componente, parece muito bom, sabe me dizer se existe uma forma de permitir digitar a Data?
Pelo visto, ele coloca as barras / / automaticamente.
Pelo visto, ele coloca as barras / / automaticamente.
O componente permite que você digite uma data valida ou selecione uma data do calendar
GOSTEI 0