Ir para conteúdo

POWERED BY:

Arquivado

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

PotHix

Erro quando formata data

Recommended Posts

Æ!!

 

PessoALL,

 

Não manjo muita coisa de ASP.NET, e estou com um problema que resolveria em ASP...hheheh...Mas em ASP.NET não sei.

 

É o seguinte:

 

Tenho um repeater que preenche uma tabela com os dados que vem de seu source.

Entre estes dados há uma data, que eu uso Format(dd/MM/yyy) para deixá-la no formato que eu quero...

 

Mas o que acontece, é que essa data não está presente em todos os registros, portanto, tem registros que a data está nula, gerando assim o erro no format.

 

Aí eu chego no meu dilema...Como fazer para formatar a data com ASP.NET ignorando quando ela não estiver lá?

 

OBS: tentei com SQL, para trazer no formato correto já, mas o ORDER BY é por este campo de data e acabou não dando certo.

 

Agradeço desde já a atenção de todos e aguardo resposta! http://forum.imasters.com.br/public/style_emoticons/default/natal_smile.gif

 

Hà braços

Compartilhar este post


Link para o post
Compartilhar em outros sites

PotHix quando eu retorno dados do banco, eu costumo usar DataReader, e faço uma validação antes de setar a formatação, verifico se o ToString for diferente de branco, então formata, mais ou menos assim:

 

If dr.Read Then
  If dr.Item("Data").ToString <> "" Then
	Format(dr.item("Data"), "dd/MM/yyyy")
  End If
End If

http://forum.imasters.com.br/public/style_emoticons/default/natal_tongue.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Æ!!

 

Amigo quintelab,

 

Eu sempre utilizei o o método de colocar DataSourceID no Repeater e depois dar um SelectComand para o mesmo...

Eu dava o format na pagina aspx.

 

Você poderia me dar mais detalhes de como eu posso fazer do seu modo? Ou seja, fazer com DataReader e depois popular o Repeater?

 

Será muito útil se puder me ajudar!

 

Aguardo respostas. http://forum.imasters.com.br/public/style_emoticons/default/natal_wink.gif

 

Há braços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mal ae PotHix não consegui fazer usando o Repeater, mas fica um possível dica, a GridView não serve no lugar do Repeater ?

Pois eu acho que não da erro na grid quando você manda formatar um campo e ele esteja vazio...

 

http://forum.imasters.com.br/public/style_emoticons/default/natal_sad.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Æ!!

 

quintelab,

 

Eu gosto de usar o Repeater...

Gostaria de saber como utilizar o seu código...Por que da minha maneira ele não se encaixa...ehhehee

 

No aspx:
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="teste">

no aspx.vb
teste.SelectCommand = "SELECT * FROM tabela"

Desse modo eu não uso o data reader...Portanto eu não sei como utilizar o seu código para validar antes...

Se eu conseguisse validar antes me seria útil para outras coisas tambem...

 

Por exemplo...Nesse mesmo caso, eu coloco as datas em uma label dentro do repeater, e precisaria que a cor da data fosse diferente dependendo se a data é menor ou maior que hoje...

 

Mas tambem não sei como fazer isso pois estou preso a popular o Repeater direto com o SelectComand como postei acima...

 

Você tem como me ajudar?

 

Se precisar de mais informações me avise! http://forum.imasters.com.br/public/style_emoticons/default/natal_smile.gif

 

Agradeço a ajuda e aguardo resposta! http://forum.imasters.com.br/public/style_emoticons/default/natal_happy.gif

 

Há braços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vou postar como eu utilizo e vejamos se conseguimos, pois eu nunca trabalhei com o Repeater.

Eu seto tudo via código, e alimento vou populando objeto por objeto do meu formulário, esse é o grande problema não sei como você irá alimentar seus objetos. Ex.:

 

VerificaCon(1)
Dim vSql as String = "SELECT CAMPO1, CAMPO2, CAMPO_DATA FROM TABELA"
Dim drSqlServer As SqlDataReader
Dim cmd As New SqlCommand(vSql, Conexao)
drSqlServer = cmd.ExecuteReader
cmd.Dispose()

If drSqlServer.Read
  lblCampo1.Text = drSqlServer.Item("CAMPO1")
  lblCampo2.Text = drSqlServer.Item("CAMPO2")
  If drSqlServer.Item("CAMPO_DATA").ToString <> "" Then
	Format(drSqlServer.Item("CAMPO_DATA"), "dd/MM/yyyy")
  End If
End If

drSqlServer.Close()
VerificaCon(2)

Só que não tenho idéia como aplicar isso no Repeater...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Æ!!

 

quintelab,

 

Com isso você consegue gerar uma tabela de registros?

Com o Repeater eu trago os diversos registros do banco de dados e depois faço uma talela ( tr e td ) para exibir os registros na tela...

 

Com seu código você consegue isso tambem?

Desculpe as muitas perguntas...O motivo ( como expliquei antes ) é que não conheço o seu modo, e gostaria de saber se faz a mesma coisa que o meu. http://forum.imasters.com.br/public/style_emoticons/default/natal_smile.gif

 

Há braços

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema é esse PotHix da forma que eu utilizo já tenho meus controles no formulário todos prontos, eu não crio eles, nem mesmo as tabelas do HTML via código, o Repeater cria de forma dinâmica, do jeito que eu utilizo eu já os criei manualmente. http://forum.imasters.com.br/public/style_emoticons/default/natal_sad.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Æ!!

 

hummm....Entendi agora...

Para mim fica difícil, pois eu não sei quantos dados virão do banco para eu criar tudo antes...entende?

É variável...

 

Mas mesmo assim agradeço sua prestatividade em tentar ajudar! =)

 

Alguem mais pode me ajudar com o caso do repeater?

 

Há braços

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.