Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

SID_SILVA

[Resolvido] Campo Data em Branco

Recommended Posts

Ola Amigos

 

Estive procurando aqui no forum como gravar e ler campos data nulos mas ainda nao cheguei a nenhuma conclusao.

 

Tenho alguns campos data que nao sao de preenchimento obrigatorio, logo preciso salva-los em branco.

 

Na hora da leitura, preciso trazer esses campos de volta, tambem em branco.

 

Para le-los eu estava fazendo uma condicao, para verificar se realmente estao em branco, assim posso determinar se devo exibir a data ou o campo em branco.

 

 

If dr("REL_DATAVISITACLI") IsNot DBNull.Value Then
	  TxtData.Text = String.Format("{0:dd/MM/yyyy}", dr("REL_DATAVISITACLI")).ToString
 Else
	 TxtData.Text = ""
End If

ou

 

If dr("REL_DATAVISITACLI") Is System.DBNull.Value Then
   TxtData.Text = String.Format("{0:dd/MM/yyyy}", dr("REL_DATAVISITACLI")).ToString
Else
   TxtData.Text = ""
End If

 

 

Mas nenhum dos dois funcionou.

 

E para gravar a data em branco, como devo proceder?

 

 

Muito Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Muito obrigado amigos mas os 2 exemplos nao funcionaram.

Alguma outra sugestao?

 

 

 

 

 

Muito Obrigado

 

Continuando sobre esse assunto.

 

Procurando na internet, encontrei um topico que dizia que um campo tipo DataTime, jamais podera conter um valor nulo, pois isso nao e possivel e para contornar esse problema e atribuido o valor Date.MinValue, por exemplo para indicar que o campo nao foi preenchido.

 

Porem nao primeira vez em que eu efetuar a leitura na base de dados o campo DateTime, contera obrigatoriamente o valor "NULL".

 

E isso mesmo o que acontece?

 

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá SID_SILVA, td bem?

 

O que acontece é o seguinte... DateTime é um "value-type" e não pode receber NULL..

Dê uma lida nesse ARTIGO que você entenderá melhor os tipos do .Net.. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Após ler o artigo acima, dê uma olhada nesse AQUI, que usa o NULLABLE,

para poder trabalhar com Data de uma maneira bem fácil...

 

Espero ter ajudado!

 

[]'s

 

 

Daniel Afonso

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bem, gostaria de agradecer mais uma vez a ajuda de todos, sem as quais eu nao teria conseguido resolver mais esse probleminha.

 

Agora que essa questao esta resolvida, os exemplos abaixo foram todos aprovados.

 

If dr("REL_DATAVISITACLI") IsNot DBNull.Value Then
   TxtData.Text = String.Format("{0:dd/MM/yyyy}", dr("REL_DATAVISITACLI")).ToString
Else
  TxtData.Text = ""
End If

ou

 

 

If IsDBNull(dr("REL_DATAVISITACLI")) Then
   TxtData.Text = String.Empty
Else
  TxtData.Text = String.Format("{0:dd/MM/yyyy}", dr("REL_DATAVISITACLI")).ToString
End If

ou

 

 

 

If IsDate(dr("REL_DATAVISITACLI")) = True Then
  TxtData.Text = String.Format("{0:dd/MM/yyyy}", dr("REL_DATAVISITACLI")).ToString
Else
  TxtData.Text = ""
End If

ou

 

 

 

If dr("REL_DATAVISITACLI").ToString = "" Then
  TxtData.Text = ""
Else
  TxtData.Text = String.Format("{0:dd/MM/yyyy}", dr("REL_DATAVISITACLI")).ToString
End If

 

Enfim mais um problema resolvido.Vivendo e aprendendo.

 

Obrigado e um Abraco

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.