Ir para conteúdo
Fórum Script Brasil
  • 0

[resolvido] Erro Na Formatação Da Data


Guest ROBINHOTBO

Pergunta

Guest ROBINHOTBO

:blink: :unsure:

Estou com o seguinte problema, tenho um cadastro de clientes que tem varios campos de data e fiz a formatação da data assim, esses são só os campos das datas:

Add (#39 + FormatDateTime ('mm/dd/yyyy', StrToDate (txtnas.Text)) + #39);

Add (#39 + FormatDateTime ('mm/dd/yyyy', StrToDate (txtabe.Text)) + #39);

Add (#39 + FormatDateTime ('mm/dd/yyyy', StrToDate (txtvenc.Text)) + #39);

Add (#39 + FormatDateTime ('mm/dd/yyyy', StrToDate (txtemi.Text)) + #39);

e em cada mascara eu fiz assim:

NO TXTNAS

procedure Tfrmalunos.txtnasExit(Sender: TObject);

Var Data : TDate;

begin

Try//Tentar

Data := StrToDate (TxtNas.Text);//Converter para data

Except// do Contrário vai disparar uma mensagem

ShowMessage ('Data inválida!');

TxtNas.Text := '';// se gerar erro então vai Limpar o Campo

TxtNas.SetFocus;//posicionar o cursor novamente na data

end;

end;

NO TXTABE

procedure Tfrmalunos.txtabeChange(Sender: TObject);

Var Data : TDate;

begin

Try

Data := StrToDate (Txtabe.Text);

Except

ShowMessage ('Data inválida!');

Txtabe.Text := '';

Txtabe.SetFocus;

end;

end;

NO TXTVEN

procedure Tfrmalunos.txtvencChange(Sender: TObject);

Var Data : TDate;

begin

Try

Data := StrToDate (Txtvenc.Text);

Except

ShowMessage ('Data inválida!');

Txtvenc.Text := '';

Txtvenc.SetFocus;

end;

end;

E NO TXTEMI

procedure Tfrmalunos.txtemiChange(Sender: TObject);

Var Data : TDate;

begin

Try

Data := StrToDate (Txtemi.Text);

Except

ShowMessage ('Data inválida!');

Txtemi.Text := '';

Txtemi.SetFocus;

end;

end;

O ERRO ESTA DANDO ESTE:

Project sistemacfc.exe raised exception class EConverteError with message " / / 'is not a valid date'.

Process stopped. Used Step or Run continue.

SE alguém PODER ME AJUDAR EU AGRADEÇO.

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

Olá amigo....

Estou sem tempo para testar agora....mas veja se seu erro não está na string de formatação...

mm -> minusculo = minutos

MM -> maiúsculo = meses

Tente usar assim:

Add (#39 + FormatDateTime ('MM/dd/yyyy', StrToDate (txtnas.Text)) + #39);

Creio que este poderá ser seu problema, sendo que quando você usa "mm" ele retorna o mês como sendo 00, dando assim data inválida.

Qualquer coisa, post ai de novo...

At

Link para o comentário
Compartilhar em outros sites

  • 0
Guest robinhotbo

Não amigo não é esse o erro é esse:

Project sistemacfc.exe raised exception class EConverteError with message " / / 'is not a valid date'.

Process stopped. Used Step or Run continue.

Link para o comentário
Compartilhar em outros sites

  • 0
Não amigo não é esse o erro é esse:

Project sistemacfc.exe raised exception class EConverteError with message " / / 'is not a valid date'.

Process stopped. Used Step or Run continue.

no meu programa também dava este erro

porq eu tentava pesquisar e o maskedit tava vazio

dai eu botei um if maskedit1.text <> ' / /'

e resolveu

o erro é que a tua data não ta indo pra variavel

ou algo do tipo

mas n sei aonde esta

tenta usar pontos de interrupçao

pra ver aonde da o erro

e dpois posta aqui

ateh

Editado por *_Felipe_*
Link para o comentário
Compartilhar em outros sites

  • 0
como usa isso?

clica no lado esquerdo da linha (na parte cinza)

ai a linha vai ficar vermelha (ou outra cor dependendo da tua configuraçao), se ele não parar no ponto de interrupçao

é prq tu fez alguma coisa errada

ou tem uma variavel que não vai ser usada no programa, dai o delphi pula

ai bota tu escolhe aonde colocar o ponto

se o programa executar

e n der erro, é porque o erro ta mais pra frente

saco?

falo

Link para o comentário
Compartilhar em outros sites

  • 0
Guest robinhotbo

Quando da um erro no Delphi antes de voce executar ai aparece esta mensagem abaixo:

[HINT]falunos.pas(369): value assigned to 'Data' never used.

O que significa?

Link para o comentário
Compartilhar em outros sites

  • 0

Opa

Robinho, pela última vez vou te avisar para não responder com caixa alta (CapsLock)

já corrigi vários posts seus com este problema, e se acontecer denovo a administração

será avisada e você será suspenso do fórum...

Significa que você tem uma variável chamado "Data" e que está recebendo um valor porém

este valor não está sendo usado pelo programa ou seu valor é substituido logo após...

Exemplo

var

i: Integer;

begin

i := 0;

i := Listbox1.ItemIndex;

end;

De um duplo clique nessa mensagem ele vai apontar para o suposto problema mais isso não

vai prejudicar em nada seu programa...

abraço

Link para o comentário
Compartilhar em outros sites

  • 0
Guest robinhotbo

RESOLVIDO: :rolleyes:

E aí GALERA, MAIS UMA VEZ CONSEGUI SOZINHO, RESOLVER O MEU PROBLEMA SINAL QUE ESTOU MELHORANDO NO DELPHI.

OLHA SÓ O QUE EU FIZ.

begin

if ( EData( txtabe.Text ) ) then add ('dt_abe');

if ( EData( txtVenc.Text ) ) then add ('dt_venc');

if ( EData( txtEmi.Text ) ) then add ('dt_emi');

end;

e

begin

if ( edata (txtabe.Text) ) then

add (#39 + formatdatetime ('mm/dd/yyyy', strtodate (txtabe.Text)) + #39);

if ( edata (txtvenc.Text) ) then

add (#39 + formatdatetime ('mm/dd/yyyy', strtodate (txtvenc.Text)) + #39);

if ( edata (txtemi.Text) ) then

add (#39 + formatdatetime ('mm/dd/yyyy', strtodate (txtemi.Text)) + #39);

end;

MAS O QUE ME AFRINGE É ERROS QUE APAREM DE UMA VIRGULA OU ASPAS QUE AS VEZES EU NÃO CONSIGUO ACHAR,

O ULTIMO tópico QUE EU POSTEI AINDA NÃO CONSEGUI RESOLVER, SOBRE ACHAR O ERRO.

Link para o comentário
Compartilhar em outros sites

  • 0
Robinho, pela última vez vou te avisar para não responder com caixa alta (CapsLock)

já corrigi vários posts seus com este problema, e se acontecer denovo a administração

será avisada e você será suspenso do fórum...

Estou de acordo - cansei de corrigir e avisar.

robinhotbo, acho que você perdeu esta parte do post do Churc - repeti só para você não dizer que não tinha visto. ;)

Eu mesmo já fiz várias correções em seus posts e estava já a me perguntar se não seria um problema com a tecla CAPS LOCK do seu teclado. :blink:

Retirado do texto sobre Como fazer perguntas inteligentes (texto muito bom, por sinal e está linkado como Destaque no início do índice do forum)

"Soletre, pontue e use maiúsculas e minúsculas corretamente. Não DIGITE TUDO EM MAIÚSCULAS, isto é lido como grito e é considerado grosseria. (Tudo em minúsculas é só um pouco menos chato, pois é difícil de ler)"

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...