- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- COLOCAR SENHA EM UM PE
×
Linguagem de Programação ADVPL
Perguntas COLOCAR SENHA EM UM PE
- ddsalvador
- Autor do Tópico
- Visitante
10 anos 6 meses atrás #23056
por ddsalvador
COLOCAR SENHA EM UM PE foi criado por ddsalvador
BOM DIA A TODOS,
ALGUÉM JÁ IMPLEMENTOU OU SABE COMO COLOCAR AUTENTICAÇÃO DE SENHA EM UM PE?
PRECISO QUE O UM USUÁRIO EM QUESTÃO COLOQUE SUA SENHA AFIM DE VALIDAR UM CANCELAMENTO DE UM FATURAMENTO.
OBRIGADO
ALGUÉM JÁ IMPLEMENTOU OU SABE COMO COLOCAR AUTENTICAÇÃO DE SENHA EM UM PE?
PRECISO QUE O UM USUÁRIO EM QUESTÃO COLOQUE SUA SENHA AFIM DE VALIDAR UM CANCELAMENTO DE UM FATURAMENTO.
OBRIGADO
Por favor Acessar ou Registrar para participar da conversa.
- João Antônio
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 18
- Obrigados Recebidos: 0
10 anos 6 meses atrás - 10 anos 6 meses atrás #23060
por João Antônio
Respondido por João Antônio no tópico COLOCAR SENHA EM UM PE
Bom, com senha não.
Mas aqui na empresa eu limito quem vai ter acesso a essas rotinas de exclusão de nota pelo ID do usuário.
Usamos isso em vários fontes e funciona perfeitamente.
Um exemplo que agente usava na P10 era para o funcionário digitar uma senha que só alguns tinham.
Agente tinha um get que abria para o usuário digitar a senha e se estivesse correta ele continuava com a rotina, se estivesse errada, dava mensagem e abortava.
Até na versão 10 dava pra descobrir a senha do usuário e implementar algo do tipo, mas agora na versão 11 a função não funciona mais , então não sei se da pra fazer isso que você quer com a senha do usuário.
Mas aqui na empresa eu limito quem vai ter acesso a essas rotinas de exclusão de nota pelo ID do usuário.
if !__cUserId=="000001"
MSGALERT("Você não tem privilégios para acessar essa rotina! Contate o Administrado do sistema!", "ATENÇÃO!!!")
Return
endif
Usamos isso em vários fontes e funciona perfeitamente.
Um exemplo que agente usava na P10 era para o funcionário digitar uma senha que só alguns tinham.
Agente tinha um get que abria para o usuário digitar a senha e se estivesse correta ele continuava com a rotina, se estivesse errada, dava mensagem e abortava.
if !cSenha=="123456"//verifica se a senha digitada está correta
MSGALERT("Senha inválida! Contate o Administrado do sistema!", "ATENÇÃO!!!")
Return
endif
Até na versão 10 dava pra descobrir a senha do usuário e implementar algo do tipo, mas agora na versão 11 a função não funciona mais , então não sei se da pra fazer isso que você quer com a senha do usuário.
Ultima edição: 10 anos 6 meses atrás por João Antônio.
Por favor Acessar ou Registrar para participar da conversa.
- clistenis
- Desconectado
- Membro Especialista
Menos
Mais
- Postagens: 97
- Obrigados Recebidos: 0
10 anos 6 meses atrás #23065
por clistenis
Respondido por clistenis no tópico COLOCAR SENHA EM UM PE
Veja se ajuda, neste exemplo eu tenho a senha cadastrada em uma tabela genérica.
//Foi criado a tabela genérica ZT para guardar a senha de acesso ao fonte.
Private cSenhaOK := AllTrim(POSICIONE('SX5',1,XFILIAL('SX5')+'ZT'+'01','X5DESCRI()'))
//DEFINE MSDIALOG oDlg3 TITLE "Liberação de Acesso" FROM 000, 000 TO 169, 312 COLORS 0, 16777215 PIXEL
@ 067,020 To 169,312 Dialog oDlg3 Title OemToAnsi("Liberação de Acesso")
@ 015,005 Say OemToAnsi("Informe a senha para o acesso ?") Size 80,8
@ 015,089 Get cGetSenha Size 50,10 Password
@ 037,106 BmpButton Type 1 Action senhaOK()
@ 037,050 BmpButton Type 2 Action Close(oDlg3)
Activate Dialog oDlg3 CENTERED
Return
//Função que checa se a senha está correta.
Static Function senhaOK()
//Validando a senha:
If AllTrim(cGetSenha) != cSenhaOK
msgAlert ("A senha não confere.")
return .f.
EndIf
//Foi criado a tabela genérica ZT para guardar a senha de acesso ao fonte.
Private cSenhaOK := AllTrim(POSICIONE('SX5',1,XFILIAL('SX5')+'ZT'+'01','X5DESCRI()'))
//DEFINE MSDIALOG oDlg3 TITLE "Liberação de Acesso" FROM 000, 000 TO 169, 312 COLORS 0, 16777215 PIXEL
@ 067,020 To 169,312 Dialog oDlg3 Title OemToAnsi("Liberação de Acesso")
@ 015,005 Say OemToAnsi("Informe a senha para o acesso ?") Size 80,8
@ 015,089 Get cGetSenha Size 50,10 Password
@ 037,106 BmpButton Type 1 Action senhaOK()
@ 037,050 BmpButton Type 2 Action Close(oDlg3)
Activate Dialog oDlg3 CENTERED
Return
//Função que checa se a senha está correta.
Static Function senhaOK()
//Validando a senha:
If AllTrim(cGetSenha) != cSenhaOK
msgAlert ("A senha não confere.")
return .f.
EndIf
Por favor Acessar ou Registrar para participar da conversa.
- ddsalvador
- Autor do Tópico
- Visitante
10 anos 6 meses atrás #23067
por ddsalvador
Respondido por ddsalvador no tópico COLOCAR SENHA EM UM PE
Obrigado Clístenis vou avaliar a possibilidade da tabela.
Abs
Abs
Por favor Acessar ou Registrar para participar da conversa.
- ddsalvador
- Autor do Tópico
- Visitante
10 anos 6 meses atrás #23068
por ddsalvador
Respondido por ddsalvador no tópico COLOCAR SENHA EM UM PE
Obrigado João,
Vou tentar implementar dessa forma, caso contrário seguirei o exemplo do Clístenio.
Abs
Vou tentar implementar dessa forma, caso contrário seguirei o exemplo do Clístenio.
Abs
Por favor Acessar ou Registrar para participar da conversa.
- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- COLOCAR SENHA EM UM PE
Tempo para a criação da página:0.145 segundos