Académique Documents
Professionnel Documents
Culture Documents
Compartilhe!
Problema
Criar um programa para gerar um relatrio de vos, filtrando por empresa
area. Os vendedores s podem visualizar determinadas empresas areas e
somente gerentes podem visualizar todas as empresas.
Soluo
Cria um Authorization Object Z_CARRID, como o campo CARRID e
ACTVT. Tambm precisamos criar as seguintes Authorizations:
DISPLAY_ALL e DISPLAY_AA.
No programa, devemos verificar se o usurio tem autorizao para visualizar a
empresa area que ele escolheu na tela de seleo:
1 AUTHORITY-CHECK 'Z_CARRID'
2 ID CARRID FIELD pa_car
3 ID ACTVT FIELD '03'.
Execuo e Teste
Crie um usurio com a autorizao DISPLAY_AA e rode o programa. O
relatrio deve ser mostrado. Retire essa autorizao e rode novamente. Uma
mensagem de erro deve aparecer.
Discusso
1 DISPLAY_ALL
2 CARRID = *
3 ACTVT = "03"
Isso significa que o usurio que tiver essa authorization no seu profile, poder
executar a atividade 03 (display) para qualquer empresa area (CARRID = *).
1 DISPLAY_AA
2 CARRID = "AA"
3 ACTVT = "02"
Com o retorno desse comando ser via SY-SUBRC, sendo que 0 significa que
o usurio tem autorizao, e 8 para permisso negada.
Se quizermos testar se usurio tem ou no permisso para alterar, mudamos a
atividade para 02.
Temos vrias atividades permitidas. Para consultar a lista completa, veja o
help do ABAP da SAP.
Veja Tambm
Authorizations