MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

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


3 participantes

    [Resolvido]Campos obrigatórios

    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]Campos obrigatórios Empty [Resolvido]Campos obrigatórios

    Mensagem  vieirasoft 10/6/2010, 23:38

    Boa Noite Mestre JPaulo

    Estou louco, pois já experimentei n maneiras e não consigo fazer um botão interpretar o código:

    Num form tenho um botão de saída e que faz refresh:

    If IsNull(Me.NProcesso) And IsNull(Me.Posição) Then
    Call MsgBox("Os campos Processo e Posição são obrigatórios", vbCritical, "Preencher")
    Else
    DoCmd.Close
    Form_frm1.Refresh
    End If

    Pois o botão ignora o código à excepção do Close e Refresh. Já tentei tudo e o único código que funciona só a metade é este:

    If Nz(Me.NProcesso, "") = "" Then
    MsgBox "P.F. verifique o campo Processo ou a Posição.", , "Atenção"
    Me.NProcesso.SetFocus
    Else
    If Nz(Me.Posição, "") = "" Then
    MsgBox "P.F. verifique o campo Processo ou a Posição.", , "Atenção"
    Me.Posição.SetFocus
    Else
    DoCmd.Close
    Form_frm1.Refresh
    End If
    End If

    E digo que funciona a metade porque tendo os 2 campos em branco, ele só assume o campo Posição e ignora o campo NProcesso???

    Estou cansado de lutar contra isto. Agradeço a sua ajuda. Baixei o seu código aqui no fórum para não deixar campos nulos. mas o mesmo é Public Function e o que eu preciso é de apenas 2 campos.
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Campos obrigatórios Empty Re: [Resolvido]Campos obrigatórios

    Mensagem  criquio 11/6/2010, 00:44

    Tente com essas pequenas alterações, vamos ver se dá certo:

    If IsNull(Me.NProcesso) Or Me.NProcesso.Value = "" And IsNull(Me.Posição) Or me.Posição.Value = "" Then
    MsgBox "Os campos Processo e Posição são obrigatórios", vbCritical, "Preencher"
    Else
    DoCmd.Close
    Form_frm1.Refresh
    End If


    Mas, por que o refresh para fechar o form? Seria outro form e não o que está sendo fechado?


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]Campos obrigatórios Empty Re: [Resolvido]Campos obrigatórios

    Mensagem  vieirasoft 11/6/2010, 10:49

    Bom dia Amigo Criquio

    Pois nem assim. Quanto ao refresh ele não o faz para este form, mas para o form frm1, neste caso o principal, porque os dados desta ficha são inseridos num subform e a actualização é imediata. Nunca me aconteceu algo assim. Tentei a instrução select case e nada. Devo estar a fazer algo errado! Este form é uma ficha de interveniente em processo e para o principal passam 2 campos; NProcesso e Posição. Não consigo fazer o botão interpretar o ´código. Até já o mudei, não fosse o caso de ele cismar comigo.

    De qualquer forma agradeço.
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8449
    Registrado : 05/11/2009

    [Resolvido]Campos obrigatórios Empty Re: [Resolvido]Campos obrigatórios

    Mensagem  Alexandre Neves 11/6/2010, 14:17

    Boa tarde,

    Experimente

    If IsNull(Me.NProcesso) or Me.NProcesso="" or IsNull(Me.Posição) or Me.Posição="" Then
    MsgBox("Os campos Processo e Posição são obrigatórios", vbCritical, "Preencher")
    Else
    DoCmd.Close
    Form_frm1.Refresh
    End If

    Atenção aos AND e OR:
    NuloA and NuloB - só é verdade se forem ambos nulos
    NuloA or NuloB - é verdade desde que um deles seja nulo
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]Campos obrigatórios Empty Re: [Resolvido]Campos obrigatórios

    Mensagem  vieirasoft 11/6/2010, 15:42

    Boa Tarde Amigo Alexandre

    Agradeço a ajuda pois o feedback é positivo. Funcionou tudo direitinho.

    Os meus agradecimentos

    Conteúdo patrocinado


    [Resolvido]Campos obrigatórios Empty Re: [Resolvido]Campos obrigatórios

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 26/4/2024, 23:44