... 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.


Sistema de Agendamento de Veículos

Usuário Ralreis:

Olá, bom dia!

Tenho o backend de um Sistema de Agendamento de Veículos que estou criando. Acontece que não consegui resolver, através do relacionamento de tabelas, a unicidade de um agendamento.

Eu preciso que: - um agendamento não possa ser realizado caso o carro e/ou motorista já esteja agendado entre a horaAgenda e previsaofim. Qual é a melhor forma de fazer com essa regra seja respeitada?

Suporte:

Ralreis, segue um exemplo que fiz para você estudar e fazer as adaptações necessárias:

- selecione a data que deseja pesquisar no calendário (15/02/2018)
- selecione o motorista na caixa de combinação
- verifique na barra de horários, quais horários estão livres para este motorista, neste dia
- clique no botão Agendar para dar prosseguimento ao agendamento
- entre com um horário que possa colidir com o já agendado. Você verá o código atuando.

Tela agendamento

O código utilizado para verificar horários colidindo é este:

Private Sub previsaoFim_AfterUpdate()
Dim strFiltro$
strFiltro = "cod_motorista = " & Me!cod_motorista & " AND "
strFiltro = strFiltro & dataagenda = #" & Format(Me!Calendario, "mm/dd/yyyy") & "#" & " AND (("
strFiltro = strFiltro & "horaagenda between #" & Me!horaAgenda & "# AND #" & Me!previsaoFim & "#) OR ("
strFiltro = strFiltro & "PrevisaoFim between #" & Me!horaAgenda & "# AND #" & Me!previsaoFim & "#))"
If DCount("*", "tblAgenda", strFiltro) > 0 Then
    MsgBox "Este horário está colidindo com o horário já agendado..."
    Me!horaAgenda = "00:00"
    Me!horaAgenda.SetFocus
    Me!previsaoFim = "00:00"
End If
End Sub

É um projeto que precisa ser bem lapidado, mas já dá para você começar a desenvolver.

Usuário Ralreis:

Esplêndido!

O resto agora é comigo e o MontaRibbons.

Muito Obrigado! A lógica do código ficou perfeita!

Download

 


 

 


Não há comentário

Envie seu comentário: