Ir ao conteúdo
  • Cadastre-se

Recommended Posts

Bom dia, Galera

 

Novamente estou com dificuldades com asp :(. Seguinte tenho 3 'regras'

 

Verde = Finalizado

Vermelho = em atraso

amarelo = pendente 

 

Preciso criar uma logica para que 

 

Quando Data for diferente de null entra no if;

Ai compara se data de saida esta preenchida status verde

se a data prevista  de entrega esta no prazo status amarelo

se a data prevista  de entrega passou do prazo vermelho

 

porém nao tenho ideia de como fazer isso. :(

  

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você já tem o prazo calculado?

Não conheço muito de asp mas tente entender a lógica e converter, ok?
 

if(dataQueNaoPodeSerNull){      if(dataSaida) variavel = 'verde'      elseif (dataHoje <= dataPrazo) variavel = 'amarelo'      elseif (dataHoje > dataPrazo) variavel = 'vermelho'}

Veja o seguinte link para comparar datas:
http://karuta.wordpress.com/2009/09/03/comparando-datas-em-asp/

Acho que agora é só converter..

 

Abraços!

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia, 

 

Não deu certo porque tenho algumas datas vazias,

 

Alguem tem ideia do que posso tentar fazer?

 

Obs: Minhas datas vem do banco de dados.

 

Desde já grata.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quais datas podem não existir?

Se der para explicar melhor todas as suas datas fica mais simples, pois no seu exemplo tinha umas 4 datas.. como você calcula a data prazo? você compara a data prazo com a data atual, correto?

Para verificar se uma data existe basta utilizar if(IsDate(data))..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá @Mog.Lucas.

 

Ve se fica melhor de entender com o codigo que tenho. Em alguns casos a datasaida nao esta preenchida, pois a mesma só pode ser preenchida quando terminou o trabalho, logo nao sei com comprar a dataprevista com a datasaida.

While Not RS.EOFIf RS("id") <> "" Then Response.Write "<tbody> " Response.Write "<tr> " Response.Write "<td>" Response.Write (RS("id")) Response.Write "</td> " Response.Write "<td>Teste 1</td>" Response.Write "<td>"						If Not isNull(datasaida) Then   Response.Write "<div class='circulo_verde'><img src='imagens/bolaverde.png'></div>  " Response.Write "<div class='descricao'>Passa o mouse e aparece o que conteudo da div, porém essa div</div>"  If dataprevista <= datasaida () Then    Response.Write "<div class='circulo_amarelo'><img src='imagens/bolaamarela.png'></div>  "    Response.Write "<div class='descricao'>Passa o mouse e aparece o que conteudo da div, porém essa div</div>"   Elseif dataprevista > datasaida() Then      Response.Write "<div class='circulo_vermelho'><img src='imagens/bolavermelho.png'></div>"    Response.Write "<div class='descricao'>Passa o mouse e aparece o que conteudo da div, porém essa div precisa ter o tamanho da tela do usuario</div>" Else   Response.Write "Não satisfez ND Erro...."END IF Else ' Caso a data seja nula ' Response.Write "Data encontra-se vazia" Response.Write "</td>" Response.Write "<tr> " Response.Write "</tbody> " End If	 Else Response.Write "Nada encontrado" Response.Write "<br>" End If RS.MoveNext Wend rs.close set rs=nothing conecta.close set conecta = nothing

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você sequer leu o link que eu postei sobre comparação de datas :(

Você precisa comparar a data prevista com a data de hoje (acredito eu), não com a data de saida (que não existe.. pois se existir ela vai cair no primeiro if (bolinha verde)). Acho que você precisa algo assim:

if IsDate(datasaida) then    Response.Write "<div class='circulo_verde'><img src='imagens/bolaverde.png'></div>  "    Response.Write "<div class='descricao'>Passa o mouse e aparece o que conteudo da div, porém essa div</div>"elseif cdate(dataprevista) <= date() then    Response.Write "<div class='circulo_amarelo'><img src='imagens/bolaamarela.png'></div>  "    Response.Write "<div class='descricao'>Passa o mouse e aparece o que conteudo da div, porém essa div</div>"elseif cdate(dataprevista) > date() then    Response.Write "<div class='circulo_vermelho'><img src='imagens/bolavermelho.png'></div>"    Response.Write "<div class='descricao'>Passa o mouse e aparece o que conteudo da div, porém essa div precisa ter o tamanho da tela do usuario</div>"else      Response.Write "Não satisfez ND Erro...."end if


PS: Recomendo ler sobre Indentação de código.. faz muita falta !

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ai  eu li sim, obrigado. O codigo sem indentaçao fica ruim mesmo desculpa.

While Not RS.EOF	If RS("id") <> "" Then		Response.Write "<tbody> "		Response.Write "<tr> "		Response.Write "<td>"		Response.Write (RS("id"))		Response.Write "</td> "		Response.Write "<td>Teste 1</td>"		Response.Write "<td>"								If Not isNull(datasaida) Then 'se nao for null a data entra a bolinha verde'			Response.Write "<div class='circulo_verde'><img src='imagens/bolaverde.png'></div>  "			Response.Write "<div class='descricao'>Passa o mouse e aparece o que conteudo da div, porém essa div</div>"																If dataprevista <= datasaida () Then ' Verifica se a data prevista esta menor que a data de saida			Response.Write "<div class='circulo_amarelo'><img src='imagens/bolaamarela.png'></div>  "			Response.Write "<div class='descricao'>Passa o mouse e aparece o que conteudo da div, porém essa div</div>"				Elseif dataprevista > datasaida() Then ' Verifica se a data passou do prazo 			Response.Write "<div class='circulo_vermelho'><img src='imagens/bolavermelho.png'></div>"			Response.Write "<div class='descricao'>Passa o mouse e aparece o que conteudo da div, porém essa div precisa ter o tamanho da tela do usuario</div>"									Else  			Response.Write "Não satisfez ND Erro...."		END IF		Else ' Caso a data seja nula '			Response.Write "Data encontra-se vazia"			Response.Write "</td>"			Response.Write "<tr> "			Response.Write "</tbody> "		End If			Else			Response.Write "Nada encontrado"			Response.Write "<br>"End If	RS.MoveNext	Wend	rs.close	set rs=nothing	conecta.close	set conecta = nothing

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola, Obrigado a todos problema resolvido.

 

@Mog.Lucas usei o seu codigo só precisei fazer umas adaptaçoes no meu banco de dados e nessa linha de comando

if IsDate(datasaida) then//Ficou assimIf RS("datasaida") <> "" Then 
  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×