Ir para conteúdo

POWERED BY:

Arquivado

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

Gledson

Condicional de DATA

Recommended Posts

[ASP] Galera estou precisando de uma força pra instipular uma data para exibir registros, programar o periodo de inicio e final com a data atual.

 

primeiro eu tentei pelo if fiz os seguintes procedimentos:

 

<% 'variáveis para condicional de data de exibição de destaque na Zap Travel

 

'Dim DataInicio, MostraDataInicio, DataFinal, MostraDataFinal

 

'DataInicio = (PacotesEspeciais.Fields.Item("pacDataInicialDestaque").Value)

 

'MostraDataInicio = FormatDateTime(DataInicio, 2)

 

'DataFinal = (PacotesEspeciais.Fields.Item("pacDataFinalDestaque").Value)

 

'MostraDataFinal = FormatDateTime(DataFinal, 2)

 

'DataInicio = FormatDateTime(PacotesEspeciais.Fields.Item("pacDataInicialDestaque"), 2)

 

'DataFinal = FormatDateTime(PacotesEspeciais.Fields.Item("pacDataFinalDestaque"), 2)

 

%>

 

<% 'variáveis para condicional de DIA MÊS E ANO de exibição de destaque em Pacotes Especiais na Zap Travel

 

'Dim DataInicioDiv, MostraDiaInicio, MostraMesInicio, MostraAnoInicio, DataFinalDiv, MostraDiaFinal, MostraMesFinal, MostraAnoFinal

 

'DataInicioDiv = (PacotesEspeciais.Fields.Item("pacDataInicialDestaque").Value)

 

'MostraDiaInicio = Day(DataInicio)

'MostraMesInicio = Month(DataInicio)

'MostraAnoInicio = Year(DataInicioDiv)

 

'DataFinalDiv = (PacotesEspeciais.Fields.Item("pacDataFinalDestaque").Value)

 

'MostraDiaFinal = Day(DataFinal)

'MostraMesFinal = Month(DataFinal)

'MostraAnoFinal = Year(DataFinalDiv)

%>

 

<%

'Data atual no formato mm/dd/yyyy em função do servidor responder assim a qualqur formatação

'Dim data_hoje

 

'data_atual = FormatDateTime(now(), 2)

'data_atual = FormatDateTime(Date, 2)

'data_atual = FormatDateTime(now, 2)

 

' Dia mês e ano para condicional

 

'nDia = Day(now)

'nMes = Month(now)

'nAno = Year(now)

 

%>

 

 

 

<% 'if data_atual >= (PacotesEspeciais.Fields.Item("pacDataInicialDestaque").Value) AND data_atual < (PacotesEspeciais.Fields.Item("pacDataFinalDestaque").Value) Then %>

<% 'if FormatDateTime(Date, 2) >= MostraDataInicio AND FormatDateTime(Date, 2) <= MostraDataFinal Then %>

<% 'data_atual >= MostraDataInicio AND data_atual <= MostraDataFinal Then %>

<% 'if MostraDiaInicio <= nDia AND MostraMesInicio <= nMes AND MostraAnoInicio <= nAno AND MostraDiaFinal >= nDia AND MostraMesFinal >= nMes AND MostraAnoFinal >= nAno Then %>

<% 'if DataInicio <= FormatDateTime(now(), 2) AND DataFinal >= FormatDateTime(now(), 2) Then %>

<% 'if FormatDateTime(PacotesEspeciais.Fields.Item("pacDataInicialDestaque"), 2) <= FormatDateTime(now, 2) AND FormatDateTime(PacotesEspeciais.Fields.Item("pacDataFinalDestaque"), 2) >= FormatDateTime(now, 2) Then %>

<% 'if FormatDateTime(PacotesEspeciais.Fields.Item("pacDataInicialDestaque"), 2) <= FormatDateTime(now, 2) AND MostraAnoInicio <= nAno AND FormatDateTime(PacotesEspeciais.Fields.Item("pacDataFinalDestaque") >= FormatDateTime(now, 2) AND MostraAnoFinal >= nAno Then %>

<% 'if data_atual >= (PacotesEspeciais.Fields.Item("pacDataInicialDestaque").Value) AND MostraAnoInicio <= nAno AND data_atual <= (PacotesEspeciais.Fields.Item("pacDataFinalDestaque").Value) AND MostraAnoFinal >= nAno Then %>

<% 'if data_atual >= DataInicio AND MostraAnoInicio <= nAno AND data_atual <= DataFinal AND MostraAnoFinal >= nAno Then %>

 

 

 

CONTEÚDO DE EXIBIÇÃO

 

 

<%End if%>

 

O problema é que mesmo formatado as datas ou não e usando variáves ou não o comparativo só ocorria no valor dia, os demais eram ignorados, e comparando separadamente ano e mês pega, porém se o dia mesmo do mês anterior for maior que o dia de hoje, ele não exibe e o mesmo para final.

 

 

 

Então eu desisti do if e fui para o select!

 

Realizei o seguinte SELECT:

 

Primeiro a variável da data atual

 

<%

Dim data_atual

 

data_atual = FormatDateTime(now(), 2)

%>

 

Depois o SELECT

 

"SELECT pacDestaqueSite, pacId, pacImagemCapa, pacNome, pacPeriodo, pacVParcelado, pactrImagem, pactrTipo, pacDataInicialDestaque, pacDataFinalDestaque, data_atual FROM pacotes, pacoteTiposRoteiros WHERE tdOpcao = 3 AND pacTipoRoteiroId = pactrId AND pacDataInicialDestaque <= '" & data_atual & "' AND pacDataFinalDestaque >= '" & data_atual & "' "

 

 

Surgiu o seguinte erro:

 

Microsoft JET Database Engine error '80040e10'

 

No value given for one or more required parameters.

 

/home.asp, line 63

 

 

 

CREIO QUE ELE NÃO ESTÁ CONSEGUINDO PEGAR O VALOR DA DATA DE HOJE PARA COMPARAR.

 

Quem pude me dar esse help, euficaria imensamente agradecido. Qualquer idéia tá valendo..rssss

Compartilhar este post


Link para o post
Compartilhar em outros sites

se o campo você data/hora você deve fazer assim"<= #" & data_atual & "#"em vez de assim"<= '" & data_atual & "'"a comparação

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.