Verificar permissões de usuario na tabela

A rotina abaixo exibe as permissões de um determinado usuário possui em um tabela.

Para quem possa interessar, os usuários são armazenados na tabela _USER e a tabela _File armazena os dados das tabelas do banco de dados.

Se quiser fazer um for each nas colunas(campos) de uma tabela eles estão armazenados na tabela _field.

define variable vUsuario as character no-undo.
define variable vTabela  as character no-undo.

Assign
    vUsuario = "leonardo"
    vTabela  = "funcionario".

for each _user
    where _User._Userid = vUsuario
    no-lock:
    display
        _User._Userid
        _User._User-name.
    for each _File
        /*WHERE _File._Hidden = FALSE*/
        where _File._file-name = vTabela
        no-lock:
        display
            _File._file-name FORMAT "x(20)"
            CAN-DO(_File._can-read,_User._userid)
                FORMAT "Y/N" COLUMN-LABEL "Read(Ler)"
            CAN-DO(_File._can-write,_User._userid)
                FORMAT "Y/N" COLUMN-LABEL "Write(Alterar)"
            CAN-DO(_File._can-create,_User._userid)
                FORMAT "Y/N" COLUMN-LABEL "Create(Criar)"
            CAN-DO(_File._can-delete,_User._userid)
                FORMAT "Y/N" COLUMN-LABEL "Delete(Deletar)"
            .
    end.
end.

 

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.