1、宏定义用法
&1、&2 表示占位符,定义块里面可以有逻辑,例如如果第一位是空,对变量进行赋值。
DEFINE message_test.
IF &1 IS INITIAL.
lv_type = 'E'.
lv_msg = |{ lv_msg }{ &2 }|.
ENDIF.
END-OF-DEFINITION.
2、调用宏
如何进行参数传递?
假如查表gt_tab,没有查到数,把‘没有符合条件的数据’赋值给lv_msg,再以MSSAGE 形式输出。加入第一位占位符有数据,比如‘X’,那么不走DEFINE 定义的逻辑。
IF gt_tab IS INITIAL.
message_test: '' '没有符合条件的数据' .
MESSAGE e001(00) WITH lv_msg.
ENDIF.
message_test: 'X' '' .
3、应用场景
(1)报表展示ALV开发
(2)数据校验
(3)有大量重复性赋值语句