Conjunto de funções específicas para recuperação de informações dos usuários Protheu.
PswOrder(nOrder) = Seta a ordem de pesquisa: nOrder Ordem Chave 1 ID 2 Nome 3 Senha 4 E-Mail ( ainda não implementado ) PswSeek(cSeek,lUser) = Faz a pesquisa retornando .T. ou .F. cSeek = String a ser procurada lUser Conteúdo Descrição .T. Pesquisa usuário ( padrão ) .F. Pesquisa grupos PswRet(nReg) = Retorna vetor com informações do usuário / grupo nReg Conteúdo Descrição NIL Todos os registros 1 1º Registro 2 2º Registro 3 3º Registro Vetor com configurações do administrador Registro Elemento Tipo Tamanho 1 Senha mestra C 6 2 Número de erros N 1 3 Número de senhas a guardar N 2 4 Uso do nome para verificação da senha L 1 5 Tamanho da senha N 1 6 Bloqueio L 1 Vetor com configurações dos grupos Registro Elemento Tipo Tamanho 1 ID C 6 2 Nome C 20 3 Vetor com horários de acesso A 4 Data de validade D 8 5 Quantas vezes para expirar N 4 6 Autorizado a alterar a senha L 1 7 Idioma N 1 8 Diretório C 100 9 Impressora C 10 Acessos C 512 11 Vetor com empresas A 12 Data da última alteração D 8 13 Tipo de impressão N 1 14 Formato N 1 15 Ambiente N 1 16 Opção de Impressão C 2 Vetor com configurações dos usuários Registro Elemento Tipo Tamanho 1 ID C 6 2 Nome C 15 3 Senha C 6 4 Nome completo C 30 5 Vetor com "n" últimas senhas A 6 Data de validade D 8 7 Quantas vezes para expirar N 4 8 Autorizado a alterar a senha L 1 9 Alterar senha no próximo logon L 1 10 Vetor com os grupos A 11 ID do superior C 6 12 Departamento C 30 13 Cargo C 30 14 E-mail C 30 15 Número de acessos simultâneos N 4 16 Data da última alteração D 8 17 Usuário bloqueado L 1 18 Número de digitos para o ano N 1 Exemplo de utilização _NomeUser := substr(cUsuario,7,15) // Defino a ordem PswOrder(2) // Ordem de nome // Efetuo a pesquisa, definindo se pesquiso usuário ou grupo If PswSeek(_NomeUser,.T.) // Obtenho o resultado conforme vetor _aRetUser := PswRet(1) _cDepto := upper(alltrim(_aRetUser[1,12])) EndIf