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

Inserindo Data Em Tabela Dbase Iv


Gafanhoto

Pergunta

Sou bem novato em Delphi. Acho que o erro que tá dando é simples de ser resolvido pra vocês, mas eu já estou há um tempão tentando resolver, mas não consigo.

Eu tava inserindo dados normalmente em uma tabela Paradox.

Agora mudei minha base de dados pra dBaseIV, pra testar, afinal to aprendendo.

Usei um TMaskEdit, com a máscara de data.

Na hora de inserir to fazendo assim:

DM1.tb_juizes.FieldByName('DATANASC').AsString := edDataNasc.Text;

Sendo que edDataNasc é o nome do TMaskEdit que eu estou usando.

Na hora de inserir tá dando o erro: ' / / ' is not a valid date.

Preciso muito da ajuda de vocês. :(

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

acho que uma maneira simples de você resolver o problema para este seu caso (' / / ' is not a valid date.) seria utilizar:

...
  if Length(Trim(edDataNasc.Text)) > 4 then  // se estiver em branco, o Trim resultará em '/  /'
  try
  // se o campo DATANASC for do tipo string em sua tabela, você vai precisar remover o 
  // comentário da linha abaixo (StrToDate), pois o MaskEdit não valida datas e aceita qualquer coisa.
  // Porém ser o campo DATANASC for do tipo data, a atribuição automaticamente resultará 
  // na conversão de string para data, de modo que se text for inválido haverá uma exceção
  //  StrToDate(edDataNasc.Text);
    DM1.tb_juizes.FieldByName('DATANASC').AsString := edDataNasc.Text;
  except
  // havendo erro, o foco é colocado no MaskEdit e uma mensagem é dada a usuário
  // através de ShowMessage
    edDataNasc.SetFocus;  
    ShowMessage('Data inválida!'#10' Digite novamente.');
  //  Porém, se quizer emitir a mensagem utilizando o diálogo padão para excessões, remova as 
  //  duas linhas acima e retire os colchetes que estão comentando o código abaixo
{
    on E:EConvertError do
    begin
      edDataNasc.SetFocus;
      E.Message := 'Data inválida!'#10' Digite novamente.';
      raise;
    end else
      raise;  
}
  end;
...

[]s

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
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...