sexta-feira, 16 de dezembro de 2011

Função - SUSR_USER_READ

  *&---------------------------------------------------------------------*
"  Caso um dia precise trazer o email de algum usuário, então teremos que
" usar este função que pelo ID do usuário você consegue os campos chaves
" para fazer a busca dentro da tabela de Emails ( ADR6 ).

REPORT zmj_susr_user_read.

" Declaração estrutura
DATA st_address TYPE usaddress,
       st_adr6    TYPE adr6
       .

" Inicio.
START-OF-SELECTION.

PERFORM zf_busca_personal_number,
          zf_busca_email,
          zf_show_all.


*&---------------------------------------------------------------------*
*&      Form  ZF_BUSCA_PERSONAL_NUMBER
*&---------------------------------------------------------------------*
form ZF_BUSCA_PERSONAL_NUMBER .

"  Aqui estaremos executando a função, eu estou usando o sy-uname ( nome
" do usuário logado) mas caso queira saber de outro usuário que não seja
" voce é só colocar um parametro numa tela de seleção para que possa ser
" alimentado pelo usuário.

CALL FUNCTION 'SUSR_USER_READ'
  EXPORTING
    user_name            sy-uname
  IMPORTING
    user_address         st_address
  EXCEPTIONS
    user_name_not_exists 1
    internal_error       2
    OTHERS               3.

endform.                    " ZF_BUSCA_PERSONAL_NUMBER

*&---------------------------------------------------------------------*
*&      Form  ZF_BUSCA_EMAIL
*&---------------------------------------------------------------------*
form ZF_BUSCA_EMAIL .

"  Seleciona os dados de email do usuário pelo numero endereço e numero
" pessoal do usuário dentro do SAP.
SELECT SINGLE *
  FROM adr6
  INTO st_adr6
  WHERE addrnumber st_address-addrnumber
  AND   persnumber st_address-persnumber.

endform.                    " ZF_BUSCA_EMAIL

*&---------------------------------------------------------------------*
*&      Form  ZF_SHOW_ALL
*&---------------------------------------------------------------------*
form ZF_SHOW_ALL .

"  Mostra tudo rsrs, prestem atenção que eu coloquei (60) no final do campo
" que está o email porque este campo tem o tipo char(241) e por causa do
" tamanho da pagina a informação ficaria na linha abaixo se eu não colocasse
" este (60) no final limitando o tamanho do campo.

WRITE 'O email do Usuário'sy-uname ' é : 'st_adr6-smtp_addr(60).

endform.                    " ZF_SHOW_ALL
Comentários
0 Comentários

Nenhum comentário:

Postar um comentário