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


4 participantes

    [Resolvido]Impedir edição de campos após salvar o registro

    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Impedir edição de campos após salvar o registro Empty [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  OLDRIVG 9/7/2011, 02:30

    Olá pessoal! Boa noite.
    Preciso de um código que impede a edição de campos visiveis de um registro após o mesmo ser salvo, mas que permite a adição de dados em campos que se tornem visiveis após uma condição.
    Por exemplo: no registro numero 001, o campo X está com dados, condição que torna o campo Y visivel. No entanto, o campo Y não será preenchido no momento e o registro será salvo. Posteriormente ao retornar ao registro numero 001, deverá ser permitido incluir dados no campo Y, porém sem permitir que seja editado o campo X e os anteriores a este. Alguém pderia me ajudar nesta? Desde já agradeço.
    Obrigado.
    Oldri
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  vieirasoft 9/7/2011, 12:22

    Após salvar o registo, utilize o Me.nomecampo.locked=True
    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]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  criquio 9/7/2011, 12:48

    Se me permite, acredito que o amigo precisará adicionar uma programação aí para reconhecer campos já gravados, pois ele menciona que um determinado campo não será gravado no momento, mas sim posteriormente quando o registro for aberto novamente, momento esse em que o campo já preenchido deverá estar desabilitado.


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

    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  OLDRIVG 9/7/2011, 12:55

    Bom dia Vieira. Obrigado pela a atenção.
    No entanto, o BD possui cerca de 50 campos e 9000 registros. Teria que utilizar o "Me.nomecampo.locked=True" em cada campo ou existe uma sintaxe que facilitaria esta utilização? Pois preciso evitar a edição em cada campo após salvamento.
    Por outro lado, como relatei no inicio do tópico, existem campos que não serão preenchidos em um mesmo momento e somente se tornarão visiveis após alguma condição. Por exemplo: o campo X somente será visivel e será preenchido se o campo Y contiver dados. Então, ao utilizar o "Me.Y.locked=True" e "Me.X.locked=True" isto não impedira o preenchimento do campo X e outros campos seguintes após salvar o registro em qualquer tempo? E os registros que forem adicionados? Como funcionaria os campos após inserção do "Me.nomecampo.locked=True"?
    Desculpe-me pelo incomodo.
    Desde já agradeço mais uma vez a sua atenção e boa vontade.
    Atenciosamente
    Oldri
    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  OLDRIVG 9/7/2011, 13:00

    Prezado Criquio, Bom dia!
    Eu estava respondendo ao Vieira e não vi seu post. É exatamente isto que eu preciso.
    Não qurendo abusar, mas já abusando, da sua boa vontade, vc poderia se importaria em me informar qual seria esta programação? E onde ela deveira ser implementada?
    Mais uma vez obrigado.
    Atenciosamente
    Oldri
    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]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  criquio 9/7/2011, 14:38

    ... 50 campos...

    Bem, precisaremos de maiores detalhes para escolher a melhor estratégia. Há campos que ficarão ocultos em determinados momentos e visíveis em outros e há campos que ficarão habilitados em determinados momentos e desabilitados em outros. Bem, a princípio, podemos dizer que os campos tem uma propriedade chamada Marca que se encontra na aba Outra das propriedades do campo. Essa marca pode ser usada para classificar campos. Por exemplo, podemos definir, em uma função, que todos os campos com a Marca "Hab" sejam habilitados ou desabilitados de acordo alguma condição. Podemos definir que todos os campos coma Marca "Oculto" fiquem ocultos ou visíveis dependendo da condição. Podemos ainda mesclar condições através de combinações de caracteres. Por exemplo, campos que começam com 1 sofrem um tipo de ação. Campos que terminem com 5 sofrem outro tipo de ação. Por que isso? Porque pode acontecer de um mesmo campo sofrer mais de uma ação distinta dependendo da situação. Então, seria algo assim:

    If Left(ctl.Tag, 1) = 1 Then
    Ação a ser tomada
    ...


    If Right(ctl.Tag, 1) = 5 Then
    Outra ação
    ...


    If Mid(ctl.Tag, 2, 1) = 3 Then
    Mais outra ação
    ...


    Para sabermos o que fazer, seria necessário conhecer melhor a estrutura e as ações a serem tomadas mediante quais situações e em quais eventos devem ser tomadas essas ações.


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

    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  OLDRIVG 9/7/2011, 19:33

    Prezado Criquio, boa tarde!
    Abusando da sua boa vontade e conhecimento, teria como eu lhe enviar o BD para vc emitir uma sugestão ou seria melhor eu descrever aqui os campos e suas estruturas? O BD tem cerca de 50 campos, mas somente 18 são editáveis, para os quais quero impedir a edição apos salvamento, deixando somente entrada de dados. Desses um é caixa de combinação. Os outros são preenchidos pelo sistema (data e hora) e são desativados. Existem para compor relatório.
    Obrigado
    Oldri
    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  OLDRIVG 12/7/2011, 00:59

    Boa noite, participantes.

    Alguém teria alguma outra sugestão de solução para a minha dificuldade?
    Desde já agradeço.
    Oldri
    Dilson
    Dilson
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1743
    Registrado : 11/11/2009

    [Resolvido]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  Dilson 12/7/2011, 02:08

    Olá OLDRIVG,

    A sugestão seria dois forms. Um primeiro form sendo para entrada de dados em que o campo X estaria habilitado e o Y desabilitado. Um segundo form que seria de edição em que o campo X ficaria desabilitado e o Y habilitado.

    funciona como deseja pode ter certeza.
    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  OLDRIVG 12/7/2011, 04:32

    Olá, Dilson!

    Agradeço a sua sujestão. Mas o caso é que não poderá haver edição como sugere. Somente entrada de dados. O problema é que esses dados não entram ao mesmo tempo. Entram em momentos diferentes. O que eu preciso é de um código que impeça a edição dos campos cujos dados já foram inserido, mas deixando os campos cujos dados ainda NÃO foram inseridos habilitados a recebê-los e após salvar o registro desabilitá-los. Ou seja, o registro será aberto a posteriori salvamento para entrada de dados somente nos campos que ainda não foram preenchidos e somente isto. Não poderá ser permitido a edição dos campos cujos dados já foram inseridos.
    Então, penso que dois formulários não resolveria a minha dificuldade.
    Mas agradeço o seu interesse.
    Obrigado
    Oldri
    Dilson
    Dilson
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1743
    Registrado : 11/11/2009

    [Resolvido]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  Dilson 12/7/2011, 05:12

    Então será dois forms como entrada de dados com a lógica que citei.

    Analise:

    Em um primeiro momento você abrirá o primeiro form em que X estará habiltado e Y desabilitado e um segundo momento em que abrirá um outro form igual ao primeiro (filtrando id) que o X por sua vez ficará desabiltado e Y habilitado.

    Ou então se for em um mesmo form, crie algo no evento do form do tipo:

    if isnull(Me!campoX) then
    Me!campoX.enabled = true
    Me!campoY.enabled = false
    Else
    Me!campoX.enabled = false
    Me!campoY.enabled = true
    End if
    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  OLDRIVG 12/7/2011, 21:27

    Olá Dilson,boa tarde!
    Dois formulários penso que realmente não funcionaria a contento, pois o usuário final irá se confundir na hora do uso, pois haverá momento em que ele terá os dois fomulários aberto.

    A sua segunda sugestão (do evento)me parece mais em conta. Vou tentar.

    O que vc sugere? Colocar a sintaxe no evento "ao fechar" ou "no atual" do formulário, ou no evento "ao sair" de cada campo?(pois nenhum campo poderá ser editado após preenchido).
    Obrigado
    Adriano
    Dilson
    Dilson
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1743
    Registrado : 11/11/2009

    [Resolvido]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  Dilson 12/7/2011, 22:13

    Coloque no "Ao Abrir" ou "Ao Carregar" por ultimo tente no "No Atual"

    Experimente o código.
    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  OLDRIVG 12/7/2011, 23:47

    Ok, Dilson.
    Tentarei as tres opções.
    Eu me esqueci de citar no post anterior, em poderia utilizar, na sintaxe, a forma "or" entre os nomes do campo, antes de "then"? Ficando assim:

    if isnull(Me!campoX) or (Me!campoY) or (Me!campoW). Só para economizar tempo.

    Obrigado
    Oldri
    Dilson
    Dilson
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1743
    Registrado : 11/11/2009

    [Resolvido]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  Dilson 13/7/2011, 00:06

    Pode: If IsNull(Me.campoX) Or IsNull(Me.campoY) Then
    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  OLDRIVG 13/7/2011, 00:09

    Ok.
    Vou tentar e depois posto o resultado.
    Obrigado
    Oldri

    Olá, boa noite!

    Fiz o teste no evento "no atual" do formulário. Mas não utilizei a função "enable". Utilizei a função "locked" que permite uma visão melhor dos campos. Funcionou em parte, porque no formulário tem campos que a propriedade visível está desativada (false); e se estes campos não estiverem visiveis, a função não funciona, ou seja, não bloqueia os campos.
    Em resumo, a funcão só funciona a contento se não tiver campos invisiveis (visivel=false). Se tiver campos invisiveis, a função somente funcionará quando todos os campos estiverem visiveis.
    No meu caso, poderá haver campos que jamis se tornarão visiveis.

    O que vc sugeriria para contornar este impecilho? Existe algum código?
    Obrigado
    Oldri
    Dilson
    Dilson
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1743
    Registrado : 11/11/2009

    [Resolvido]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  Dilson 13/7/2011, 21:40

    Nesse cenário acontecerá falhas mesmo, pois quando aplica IsNull(Me.campoX) Or IsNull(Me.campoY) as duas instruções tem que satisfazer.

    Coloque caso a caso:

    if IsNull(Me.campoX)

    if IsNull(Me.campoY)

    e veja como reage, se não resultar, pode se desejar disponibilizar o bd com somente a parte que interessa, que analiso uma solução.
    OLDRIVG
    OLDRIVG
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 374
    Registrado : 20/07/2010

    [Resolvido]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  OLDRIVG 13/7/2011, 21:57

    Ok, Dilson.
    Vou testar de forma separada e posto o resultado.
    Obrigado
    Oldri

    Olá Dilson, boa noie!

    Testei de tudo quanto é forma e, infelizmente, não consegui nada. Em uma tentativa parou até de bloquear o que estava bloqueando.

    Tentei te enviar o BD, mas não conseguir por aqui. Como que se faz para lhe enviar o BD para que possa fazer o favor de dar uma olhada?
    Obrigado
    Oldri
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  vieirasoft 19/7/2011, 12:26

    Envie para um email de um Moderador que nós colocamos aqui.
    Dilson
    Dilson
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1743
    Registrado : 11/11/2009

    [Resolvido]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  Dilson 19/7/2011, 20:48

    Olá OLDRIVG,

    Pelo visto despercebi esse seu ultimo post.

    Mande para "dilsongti@gmail.com" que eu colocarei aqui e também darei uma olhada, na esperança de uma boa dica a você.
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  vieirasoft 30/7/2011, 11:47

    Como não retornou, o tópico passa a resolvido. Qualquer coisa reabra, por favor.

    Conteúdo patrocinado


    [Resolvido]Impedir edição de campos após salvar o registro Empty Re: [Resolvido]Impedir edição de campos após salvar o registro

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 21/11/2024, 19:08