report ztest.
* for BADI,must define one instance variable for BADI interface
DATA: g_badi_name TYPE REF TO ZIF_EX_GET_MATERIAL_DESC.
data:begin of it_mara occurs 0,
matnr like mara-matnr,
maktx like makt-maktx,
end of it_mara.
START-OF-SELECTION.
SELECT matnr
into table it_mara
up to 100 rows
from mara.
*& get the BADI Insatance
Call METHOD cl_exithandler=>get_instance
CHANGING
instance = g_badi_name.
LOOP AT it_mara .
CALL METHOD g_badi_name->GET_MATERIAL_DESC
EXPORTING
matnr = it_mara-matnr
RECEIVING
maktx = it_mara-maktx.
WRITE:/2 it_mara-matnr,
20 it_mara-maktx.
ENDLOOP.
NOTE:不能通过se18-badi name 创建badi definition,而是通过Utilities-create classic badi