... Assinatura do site por 1 ano + Kit MontaRibbons + 3 Livros em PDF + Diversas Revistas (pdf) de brinde, por apenas R$100,00
(
podendo parcelar em até 10 vezes no cartão de crédito)...

Clique aqui e obtenha mais detalhes do nosso kit completo e de como comprar.


Calcular data e hora em consulta

Usuário Cardoso:

Boa Tarde!

Preciso criar uma consulta, aonde com a data, seja identificado  o dia da semana e através do horário, seja informado se o atendimento está Dentro do Horário ou Fora do Horário.  As regras são as seguintes:

De segunda a sexta de 08:00 às 19:00 - Dentro do Horário.   Após às 19:00 - Fora do Horário
Sábado de 08:00 às 12:00 - Dentro do Horário.   Após as 12:00 - Fora do Horário
Domingo - Fora de Horário

Dt Alta Hr Alta Dia Semana Status Atendimento
31/12/2015 01:21:35 Quinta Fora do Horário
04/01/2106 09:48:40 Segunda Dentro do Horário
05/01/2016 17:49:22 Terça Dentro do Horário
03/01/2016 11:00:00 Domingo Fora do Horário

 

Suporte:

Cardoso, existem atendimentos também em feriados?

Segue um exemplo.   A função usada na consulta foi esta:

Public Function fncStatus(da As Date, ha As Date)
Dim j As Boolean
Select Case Weekday(da)
    Case 2 To 6
        If Eval("#" & ha & "#" & " Between #08:00:00 AM# AND #07:00:00 PM#") Then j = True
    Case 7
        If Eval("#" & ha & "#" & " Between #08:00:00 AM# AND #12:00:00 PM#") Then j = True
End Select
If j Then
    fncStatus = "Dentro do horário"
Else
    fncStatus = "Fora do horário"
End If
End Function

Usuário Cardoso:

Avelino,

os feriados são considerados como atendimento Fora de Horário.

Suporte:

Cardoso, crie uma tabela, contendo os feriados e acrescente a parte vermelha ao código:

Public Function fncStatus(da As Date, ha As Date)
Dim j As Boolean
if DCount("*","tblFeriados","DataFeriado = #" & format(da,"mm/dd/yyyy") & "#") > 0 then
   fncStatus = "Fora do horário"
   exit function
end if
Select Case Weekday(da)
    Case 2 To 6
        If Eval("#" & ha & "#" & " Between #08:00:00 AM# AND #07:00:00 PM#") Then j = True
    Case 7
        If Eval("#" & ha & "#" & " Between #08:00:00 AM# AND #12:00:00 PM#") Then j = True
End Select
If j Then
    fncStatus = "Dentro do horário"
Else
    fncStatus = "Fora do horário"
End If
End Function

Usuário Cardoso:

Boa tarde.

Muito Obrigado, ficou show.

Download

 


 

 


Não há comentário

Envie seu comentário: