Jump to content
Seja Membro VIP - Remova Banners de Propagandas, Tenha Liberado Qualquer Download, Além de Acessos em Áreas Exclusivas!! ×

Recommended Posts


  • Topic Count:  937
  • Topics Per Day:  0.13
  • Content Count:  9,137
  • Content Per Day:  1.30
  • Reputation:   413
  • Achievement Points:  109,418
  • Solved Content:  0
  • Days Won:  245
  • Status:  Offline
  • Age:  53
  • Device:  Windows

Posted

Hoje um amigo me pediu ajuda numa FV para não permitir que, após incluído o cadastro do funcionário, não fosse mais permitida a alteração do CPF, para evitar problemas futuros. 

Para isso, é bem simples tratar no sistema com uma fórmula visual, que altera a propriedade de um campo, ao editar o cadastro. Montei a FV então, e disponibilizo aqui para quem precisar também,devidamente comentada abaixo, para quem quiser fazer a sua manualmente também, sem importar o arquivo da FV que deixo anexo. 

 

1) Você precisará apenas de uma única atividade. Alterar Propriedade da Coluna.

Arraste para o painel da direita, que é seu fluxo de trabalho. No meu caso, já renomeei para "BloqEdicaoCampo". Deixe como preferir.

image.png

2) Selecione sempre o contexto que deseja usar, pois, facilita na hora de informar os campos de parâmetros, que irá usar neste caso, no campo COLUNA da imagem abaixo. Neste caso é uma Tela de Cadastro. E Contexto "Funcionários" (FopFuncData) 

image.png

 

3) Preencha a Coluna com a informação da tabela e campo que deseja afetar. Neste caso é a PFUNC e item (campo) CPF. Veja que pode ser informado ali também a Tables[0] que neste caso, é a tabela do contexto em questão que acabamos de informar acima, onde a FV estará amarrada. Funciona igualmente de ambas as formas. 

3.1) Marcamos então o campo PermiteEdição com False para não ficar editável o campo CPF que queremos bloquear que seja alterado. Os demais campos, neste caso, não precisam ser preenchidos. 

3.2) Deixei o campo Habilitado como "True", indicando que está ativa essa atividade da sua Fórmula Visual. E no campo Descrição logo acima, você pode deixar o descritivo do que faz essa atividade para ajudar posteriormente em consultas. Este campo não é obrigatório, mas é legal preencher. Por fim, o campo (Nome) por padrão fica com o nome da atividade. Ali você pode também deixar com um nome que o ajude a localizar visualmente qual é a função dessa atividade. Nunca use espaços nos nomes das atividades. 

 

image.png

 

 

4) Após a FV ser salva, no cadastro de Funcionários, acesse Processos / Fórmulas Visuais / Gerenciar, clique em Antes da Leitura da Visão, e depois no botão verde para incluir a sua FV como gatilho nesse ponto. Selecione a sua FV criada, e ficará desta forma abaixo. Na coluna TIPO, você pode deixar como "Ativado com Exceções", para em caso de erros, aparecer para os usuários que acessarem, mas não tem que aparecer erro algum se a FV já estiver correta. 

image.png

 

5) Agora, ao editar o cadastro do funcionário, na aba Documentação, veja que o campo não está permitindo a edição. Apenas permite a consulta...

image.png

 

 

É isso ai. Tente fazer a sua agora, neste ou em outros campos e cadastros.

 

ATENÇÃO:

Faça as adaptações que forem necessárias, e vá testando. Apenas cuidado, pois, ao adicionar FVs em telas como campos extras, regras como esta de alteração de propriedades, ou qualquer outra função, podem ocorrer erros, e o sistema ficar inoperante. Então, faça seus testes e validações sempre em ambiente de testes / homologações. Combinado? 😃

 

 

 

BloqueiaAlteracaoCPF.TotvsWF

  • Like 1
  • Thanks 1
  • Jair - Fórmula changed the title to Fórmula Visual para Bloquear Alteração em um Campo
  • Jair - Fórmula changed the title to Fórmula visual para bloquear alteração em um campo

  • Topic Count:  0
  • Topics Per Day:  0
  • Content Count:  3
  • Content Per Day:  0.01
  • Reputation:   0
  • Achievement Points:  18
  • Solved Content:  0
  • Days Won:  0
  • Status:  Offline
  • Device:  Windows

Posted

Bom dia..

Obrigada pela FV. 

Queria aproveitar e tirar uma duvida... Usei essa que passou, para testar, e associei na categoria os perfis que nao podem alterar, mas acabou bloqueado todo mundo. Tem alguma outra forma de bloquear somente determinados perfis ?

categoria.png


  • Topic Count:  937
  • Topics Per Day:  0.13
  • Content Count:  9,137
  • Content Per Day:  1.30
  • Reputation:   413
  • Achievement Points:  109,418
  • Solved Content:  0
  • Days Won:  245
  • Status:  Offline
  • Age:  53
  • Device:  Windows

Posted

Deixa eu te perguntar uma coisa... Esse pessoal que não pode alterar, por acaso não é do mesmo grupo que pode fazer a inclusão do funcionário, é?? Se não for, você pode também travar isso pelo perfil, de forma que, o pessoal que inclui tem acesso a alterar, já o pessoal das lojas (que apenas fazem consultas), podem visualizar, mas não alteram. Já verificou essa permissão nos perfis? Porque, desta forma, nem precisaria da FV. 

Seria essa permissão abaixo, que você deixaria habilitado apenas nos perfis que podem alterar a informação. 

image.png

 

Se precisar mesmo que seja tratado nela, podemos fazer via SQL, que analisa os perfis do usuário e então, entra ou não na condição de alteração das propriedades do campo. 


  • Topic Count:  0
  • Topics Per Day:  0
  • Content Count:  3
  • Content Per Day:  0.01
  • Reputation:   0
  • Achievement Points:  18
  • Solved Content:  0
  • Days Won:  0
  • Status:  Offline
  • Device:  Windows

Posted

Sao do mesmo grupo..Podem incluir,mas nao podem alterar. Alteração fica somente para o grupo do administrativo. Eu ate tentei dessa forma, pelo perfil, mas ele bloqueia tambem ao incluir um novo cadastro.


  • Topic Count:  12
  • Topics Per Day:  0.00
  • Content Count:  176
  • Content Per Day:  0.06
  • Reputation:   78
  • Achievement Points:  1,146
  • Solved Content:  0
  • Days Won:  31
  • Status:  Offline
  • Age:  27
  • Device:  Windows

Posted

Bom dia pessoal

Complementando os tópicos acima, a "categoria" da fórmula visual serve apenas para filtrar quem pode visualizar ou executar (em processos) a fórmula visual. Não tem relação a quais perfis ela será "executada", por padrão, uma fórmula vinculada a um gatilho de cadastro é consistida para qualquer usuário

Se a fórmula visual deve ser executada para perfis/usuários específicos, deve ser feito uma validação (if/else) dentro dela

  • Like 2

  • Topic Count:  937
  • Topics Per Day:  0.13
  • Content Count:  9,137
  • Content Per Day:  1.30
  • Reputation:   413
  • Achievement Points:  109,418
  • Solved Content:  0
  • Days Won:  245
  • Status:  Offline
  • Age:  53
  • Device:  Windows

Posted

Exato. Como comentei acima. Vamos ter que tratar isso com uma consulta SQL, lendo os perfis que tem acesso a alterar, e quem não atender a esse critério, mantemos a atividade da alteração de propriedades da coluna, bloqueando o acesso. 

  • Like 2

  • Topic Count:  937
  • Topics Per Day:  0.13
  • Content Count:  9,137
  • Content Per Day:  1.30
  • Reputation:   413
  • Achievement Points:  109,418
  • Solved Content:  0
  • Days Won:  245
  • Status:  Offline
  • Age:  53
  • Device:  Windows

Posted

Vamos lá.

Para tratar por SQL um condicional em que, somente para algumas pessoas que tenham um determinado perfil associado, seja bloqueado o campo no cadastro de funcionário, deverá fazer algumas alterações na sua FV. 

Vejamos:

1) Adicione duas novas atividades no fluxo de sua FV (Se/Senão e Executar Consulta SQL😞

image.png  image.png

 

2) Deixe então desta forma, onde a sua atividade anterior, já criada, ficará dentro do condicional, caso atenda a regra para o bloqueio. Renomeie suas atividades para melhor entendimento quando visualizado.

image.png

2.1) Na primeira atividade agora, você deve adicionar uma sentença SQL, que pode ser feito pelo botão direito do mouse (em cima do nome desta) ou preenchendo manualmente os campos com os alertas em vermelho na parte da esquerda do painel.

image.png

ou

image.png

 

2.2) Após selecionar a sua SQL (ela pode ser criada nesse momento que vai inserir também, quando usado pelo botão direito em cima da atividade) ficará desta forma abaixo.

Código da Aplicação: P

Código da Coligada: 0

Código da Sentença: TestaPerfil  

 

2.3) Já os parâmetros da consulta, ao ser lida a sua consulta, ela exigindo parâmetros, eles aparecem logo acima do RM.NET, e devem ser preenchidos. Você deve usar, neste caso, as informações de contexto, como nesse exemplo que foram preenchidas.

image.png

 

3) Esta é a sentença que precisa ser adicionada para os testes de perfis. Neste caso, está testando se o usuário possui o perfil "Cad", e/ou outros perfis, podendo ser ajustado conforme o seu caso, e não apenas nos perfis da Folha, como em outros perfis de outros módulos. Ajuste a SQL conforme o que precisar. 

image.png

 

4) No primeiro quadro de condicional à esquerda (chamei de "SeAtendeCondicao"), você deve preencher uma condição com regra declarativa, onde na expressão deve estar desta forma abaixo. No segundo quadro, não precisa ter nada, nem mesmo o quadro, se não quiser fazer nada no caso de não atender a condição informada: 

image.png

 

5) Finalizados os preenchimentos dos parâmetros, e todas as amarrações, seu fluxo estará assim como abaixo, podendo ser gravado e usado. Veja que não há mais quaisquer alertas em vermelho indicando que falta preencher algo.

image.png

 

AGORA, 😎 com a sua FV engatilhada no cadastro de usuários, vai bloquear apenas para quem tiver os perfis específicos que deixou configurado na SQL de testes...

No meu caso aqui, eu não tenho o perfil "Cad" associado no meu usuário de testes. O campo estava liberado normalmente. Após associar no meu usuário este perfil, entrei de novo nos funcionários, e o campo estava bloqueado. Removi, e voltei a ter acesso completo ao campo.

 

BloqueiaAlteracaoCPF_comSQL.TotvsWF

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.