MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Não Permitir duplicidade de datas

    avatar
    Ismael Silva
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 662
    Registrado : 11/12/2017

    [Resolvido]Não Permitir duplicidade de datas Empty [Resolvido]Não Permitir duplicidade de datas

    Mensagem  Ismael Silva em 8/5/2020, 20:46

    Boa tarde,

    Estou utilizando o código abaixo para evitar duplicidade de datas. Tipo, tem a data inicial e data final, ou seja, se por exemplo, já estiver a data de hoje cadastrada, como inicial, e eu quiser cadastrar novamente, como data inicial, não pode permitir, bem como para data final, caso já tenha.

    Esse código encontrei aqui no fórum, e adaptei, mas ainda não está 100%, e não estou vendo onde estou errando.


    Private Sub Form_BeforeUpdate(Cancel As Integer)

    If DCount("Data_Inicial_Tbl", "Tbl_Lancamentos", "Data_Inicial_Tbl ='" & Data_Inicial_Frm & "' and Data_Final_Tbl =" & Data_Final_Frm) > 0 Then

    MsgBox "Já existem reservas neste período!", vbCritical
    Me.Undo
    Cancel = True

    Exit Sub
    End If

    End Sub
    Anexos
    [Resolvido]Não Permitir duplicidade de datas AttachmentExemplo_Reserva_Periodo_Datas.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (41 Kb) Baixado 4 vez(es)
    FranklinJSP
    FranklinJSP
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 398
    Registrado : 25/02/2016

    [Resolvido]Não Permitir duplicidade de datas Empty Re: [Resolvido]Não Permitir duplicidade de datas

    Mensagem  FranklinJSP em 9/5/2020, 00:03

    Boa noite Ismael!

    Da uma olhada

    Saludos
    Anexos
    [Resolvido]Não Permitir duplicidade de datas AttachmentReserva_Periodo_Datas (FranklinJSP).zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (41 Kb) Baixado 7 vez(es)


    .................................................................................
    Meu Português não é muito bom,
    mas eu gosto de colaborar... em qualquer idioma
    Smile "Access... minha paixão"
    avatar
    Ismael Silva
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 662
    Registrado : 11/12/2017

    [Resolvido]Não Permitir duplicidade de datas Empty Re: [Resolvido]Não Permitir duplicidade de datas

    Mensagem  Ismael Silva em 9/5/2020, 00:36

    Boa noite Franklin,

    É quase isso, porém, veja que tem um período de 01/05/2020 até 08/05/2020, então, eu quero que não permita que eu coloque, um outro período entre este que citei, no caso, de 02/05/2020 até 08/05/2020, por exemplo, pois está dentro do primeiro período, por isso fiz referência as colunas, Data_Inicial_Tbl, e Data_Final_Tbl.


    Será que tem como ajustar, ou não?

    No caso de não, essa ajuda que você me deu, já está valendo também.
    Anexos
    [Resolvido]Não Permitir duplicidade de datas AttachmentReserva_Periodo_Datas (FranklinJSP).zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (33 Kb) Baixado 2 vez(es)
    avatar
    Ismael Silva
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 662
    Registrado : 11/12/2017

    [Resolvido]Não Permitir duplicidade de datas Empty Re: [Resolvido]Não Permitir duplicidade de datas

    Mensagem  Ismael Silva em 9/5/2020, 02:32

    Franklin,

    Depois de tanta insistência, consegui resolver da forma que eu queria, e pra isso, eu crie uma consulta, com o campo Data_Final_Tbl, e agrupei pelo valor máximo, então no Formulário, no campo Data_Inicial_Frm, no evento antes de atualizar, eu coloquei o código abaixo:

    If Data_Inicial_Frm <= DMax("[DataMax]", "C_Data_Maxima") Then
    MsgBox "Já existe uma reserva neste período!", vbCritical, "Reservas"
    Me.Undo
    Cancel = True
    End If

    Então, se a data que eu informar como inicial, for menor que a data máxima que estiver cadastrada, não permite continuar.


    Obrigado.
    FranklinJSP
    FranklinJSP
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 398
    Registrado : 25/02/2016

    [Resolvido]Não Permitir duplicidade de datas Empty Re: [Resolvido]Não Permitir duplicidade de datas

    Mensagem  FranklinJSP em 9/5/2020, 18:20

    Boa tarde Ismael!

    Que bom que vc resolveu

    lol! lol! lol!

    Saludos


    .................................................................................
    Meu Português não é muito bom,
    mas eu gosto de colaborar... em qualquer idioma
    Smile "Access... minha paixão"
    Celso Roberto
    Celso Roberto
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1071
    Registrado : 01/03/2014

    [Resolvido]Não Permitir duplicidade de datas Empty Re: [Resolvido]Não Permitir duplicidade de datas

    Mensagem  Celso Roberto em 10/5/2020, 05:32

    Olá..

    Grande Ismael, baixei o seu exemplo postado no tópico
    https://www.maximoaccess.com/t37769-evitar-inserir-uma-data-para-um-periodo-existente
    em que prestou ajuda ao amigo do fórum Antonio Aurélio.

    Fiz alguns testes e não obtive o resultado desejado, e resolvi comentar com você neste seu tópico.

    Como o Nosso amigo acima tem uma chácara e aluga para temporada ou final de semana, pode acontecer de alguém neste momento ter solicitado a reserva para um periodo de final de ano, EX: 23/12/2020 ate 02/01/2021 mas continuo com todo periodo de hoje até 22/12/2020 disponível para locação.
    Como no seu exemplo você usou o DMáx  para data, então qualquer periodo que tentei reservar não estava disponível.

    Então fiz em exemplo com a lógica de comparação de datas entre periodo e deixo para você analisar e passar para o nosso amigo.
    Faça testes e veja se faltou algum detalhe.

    Abraços e sucesso
    Anexos
    [Resolvido]Não Permitir duplicidade de datas AttachmentVerifica se data exeite entre periodo de datas.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (68 Kb) Baixado 7 vez(es)


    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    avatar
    Ismael Silva
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 662
    Registrado : 11/12/2017

    [Resolvido]Não Permitir duplicidade de datas Empty Re: [Resolvido]Não Permitir duplicidade de datas

    Mensagem  Ismael Silva em 10/5/2020, 16:42

    Boa tarde Celso, tudo bem?

    Obrigado pelas suas considerações neste tópico, certamente vou tirar algum proveito também.

    Quanto ao exemplo, analisando melhor agora, com sua consideração, talvez eu tenha entendido errado, o que o outro colega gostaria. No meu entender, se ele já tem uma reserva para o período de 01/07/2020 à 15/07/2020, então, ninguém mais poderia reservar dentro desse período, (qualquer dia, entre 01/07 e 15/07) como por exemplo: 03/07/2020 à 05/07/2020, por isso no meu exemplo, eu utilizei o Dmax, para que pudesse ser reservado, somente a partir do dia 16/07/2020.

    Mas vamos aguardar o colega dar o seu Feedback, para entender melhor.

    Todavia, agradeço mais uma vez a sua contribuição, bem como a do colega Franklin.


    Obrigado.

      Data/hora atual: 4/12/2020, 20:59