Perguntas Bloqueio de campos
- lalberto
- Desconectado
- Administrador
Menos
Mais
- Postagens: 3676
- Obrigados Recebidos: 6
12 anos 4 meses atrás #2399
por lalberto
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Respondido por lalberto no tópico Re: Bloqueio de campos
Rodrigo boa tarde, vamos lá:
Digamos que você queira liberar o campo Razão Social do Cliente apenas para o usuário Tecnico1 e Administrador do sistema, para permitir alteração deste campo, cada usuário possui um ID interno do sistema e é esse que iremos utilizar:
Verifique a coluna ID, o usuário Tecnico1 possui o ID 000002 e o Administrador ID 000000.
Bom assim que identificar quais os usuários terão direito à edição do campo, iremos editar o campo da tabela SA1 (Clientes):
Selecione Base de Dados, Localize a Tabela SA1, Campos e Edite o Campo A1_NOME:
Vá até a Aba Opções:
E Insira no Campo Modo Edição a Seguinte Syntax:
__cUserId $ '000002*000000'
Onde:
__cUserId é o Id do qual comentamos no inicio do topico referente ao usuário que está logado no sistema, é uma variável publica, você poderá utiliza-la em qualquer lugar.
A Syntax quer dizer, se o Id do usuário pertencer à string '000002*000000' então a edição está liberada, digamos que o usuário técnico2 acesse o sistema, o ID dele é 000003, o campo ficará bloqueado para edição.
Você pode também ao invés de liberar o acesso, também bloquear, por exemplo:
!__cUserId $ '000002*000000', neste caso se o usuário não for 000002 ou 000000 então o campo ficará liberado.
Abraços.
Espero ter solucionado sua dúvida.
Digamos que você queira liberar o campo Razão Social do Cliente apenas para o usuário Tecnico1 e Administrador do sistema, para permitir alteração deste campo, cada usuário possui um ID interno do sistema e é esse que iremos utilizar:
Verifique a coluna ID, o usuário Tecnico1 possui o ID 000002 e o Administrador ID 000000.
Bom assim que identificar quais os usuários terão direito à edição do campo, iremos editar o campo da tabela SA1 (Clientes):
Selecione Base de Dados, Localize a Tabela SA1, Campos e Edite o Campo A1_NOME:
Vá até a Aba Opções:
E Insira no Campo Modo Edição a Seguinte Syntax:
__cUserId $ '000002*000000'
Onde:
__cUserId é o Id do qual comentamos no inicio do topico referente ao usuário que está logado no sistema, é uma variável publica, você poderá utiliza-la em qualquer lugar.
A Syntax quer dizer, se o Id do usuário pertencer à string '000002*000000' então a edição está liberada, digamos que o usuário técnico2 acesse o sistema, o ID dele é 000003, o campo ficará bloqueado para edição.
Você pode também ao invés de liberar o acesso, também bloquear, por exemplo:
!__cUserId $ '000002*000000', neste caso se o usuário não for 000002 ou 000000 então o campo ficará liberado.
Abraços.
Espero ter solucionado sua dúvida.
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Por favor Acessar ou Registrar para participar da conversa.
- GJHENSEN
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 6
- Obrigados Recebidos: 0
11 anos 5 meses atrás #14174
por GJHENSEN
Respondido por GJHENSEN no tópico Re: Bloqueio de campos
Boa tarde Luiz,
Existe a possibilidade de fazer esse bloqueio por grupo de usuários? Como seria? É que, como o campo modo de edição é limitado não consegui colocar todos os usuários que preciso.
Abraço.
Existe a possibilidade de fazer esse bloqueio por grupo de usuários? Como seria? É que, como o campo modo de edição é limitado não consegui colocar todos os usuários que preciso.
Abraço.
Por favor Acessar ou Registrar para participar da conversa.
- kanaamlrr
- Desconectado
- Membro Platina
Menos
Mais
- Postagens: 1576
- Obrigados Recebidos: 4
11 anos 5 meses atrás #14175
por kanaamlrr
Respondido por kanaamlrr no tópico Re: Bloqueio de campos
você pode criar uma função para tratar isso retornando .T. ou .F.
ai você coloca a sua função no modo de edição do campo
por exemploai no modo de edição chama U_FUNCAO()
ai você coloca a sua função no modo de edição do campo
por exemplo
User Function FUNCAO()
Local lRet := .F.
If __cUserID $ "000000"
lRet := .T.
EndIf
Return lRet
Por favor Acessar ou Registrar para participar da conversa.
- GJHENSEN
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 6
- Obrigados Recebidos: 0
- joaosartor
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 4
- Obrigados Recebidos: 0
11 anos 5 meses atrás #15022
por joaosartor
Respondido por joaosartor no tópico Bloqueio de campos
Eu uso o ponto de entrada abaixo, como ele dá pra restringir qualquer campo do cadastro de funionarios.
User Function GP010VALPE()
**************************
Local lRet := .T.
If <condição>
Aviso("Alteração Não Permitida",,{"Voltar"})
lRet := .F.
Endif
Return (lRet)
Por favor Acessar ou Registrar para participar da conversa.
Tempo para a criação da página:0.240 segundos