Este codigo é um mini CHAT usando recurso SAP (ABAP).
REPORT Z_PG_MSN.
TABLES: USR02.
TYPE-POOLS: VRM.
DATA: IT_LIST TYPE VRM_VALUES,
LIST_VALUE TYPE VRM_VALUE.
DATA: MDT TYPE SY-MANDT.
DATA: BEGIN OF USUARIO OCCURS 0,
BNAME LIKE USR02-BNAME,
END OF USUARIO.
DATA: CLIENT LIKE SY-MANDT,
USER LIKE SY-UNAME,
MESSAGE LIKE SM04DIC-POPUPMSG.
SELECTION-SCREEN BEGIN OF BLOCK BY1 WITH FRAME TITLE TEXT-200.
PARAMETERS: P_MDT(3) TYPE C,
P_USER TYPE USR02-BNAME AS LISTBOX VISIBLE LENGTH 20,
P_MSN(255) TYPE C.
SELECTION-SCREEN END OF BLOCK BY1.
***********************************************************************
* INICIALIZAÇÃO
***********************************************************************
INITIALIZATION.
PERFORM SELECIONA_DADOS.
PERFORM CARREGA_COMBO.
START-OF-SELECTION.
PERFORM ENVIA.
END-OF-SELECTION.
*&———————————————————————*
*& Form SELECIONA_DADOS
*&———————————————————————*
* text
*———————————————————————-*
* –> p1 text
* <– p2 text
*———————————————————————-*
FORM SELECIONA_DADOS .
SELECT BNAME FROM USR02 INTO TABLE USUARIO.
ENDFORM. ” SELECIONA_DADOS
*&———————————————————————*
*& Form CARREGA_COMBO
*&———————————————————————*
* text
*———————————————————————-*
* –> p1 text
* <– p2 text
*———————————————————————-*
FORM CARREGA_COMBO .
LOOP AT USUARIO.
LIST_VALUE-KEY = USUARIO-BNAME.
LIST_VALUE-TEXT = USUARIO-BNAME.
APPEND LIST_VALUE TO IT_LIST.
ENDLOOP.
CALL FUNCTION ‘VRM_SET_VALUES’
EXPORTING
ID = ‘P_USER’
VALUES = IT_LIST.
ENDFORM. ” CARREGA_COMBO
*&———————————————————————*
*& Form ENVIA
*&———————————————————————*
* text
*———————————————————————-*
* –> p1 text
* <– p2 text
*———————————————————————-*
FORM ENVIA .
CLIENT = P_MDT.
USER = P_USER.
MESSAGE = P_MSN.
CALL FUNCTION ‘TH_POPUP’
EXPORTING
CLIENT = CLIENT
USER = USER
MESSAGE = MESSAGE
EXCEPTIONS
USER_NOT_FOUND = 1
OTHERS = 2.
ENDFORM. ” ENVIA
Filed under: Uncategorized | 1 Comment »