ABAP配置表加保存前校验
1、自建表先生成表格维护器。
2、在表格维护器页面点击环境 ----> 修改 -----> 事件
3、点击这个创建子例程,然后去编写代码。
保存前对工厂进行校验的示例代码:
form check_werk.
data: lt_zqmt015a type table of zqmt015a,
ls_zqmt015a type zqmt015a.
data: ls_werk type zqmt015c.
loop at total.
case <action>.
when 'U'. "修改
append <vim_total_struc> to lt_zqmt015a.
when 'N'. "新增
append <vim_total_struc> to lt_zqmt015a.
when 'D'.
when others.
endcase.
endloop.
if lt_zqmt015a is not initial .
loop at lt_zqmt015a into ls_zqmt015a.
select single werk
from zqmt015c
into @data(lv_werk)
where werk = @ls_zqmt015a-werk.
if lv_werk is initial.
message '表中填写的工厂与选择屏幕上的工厂不一致,请检查!' type 'S' display like 'E'.
vim_abort_saving = abap_true.
sy-subrc = 4.
exit.
endif.
clear:ls_zqmt015a.
endloop.
endif.
if lt_zqmt015a is initial.
sy-subrc = 0.
endif.
if lt_zqmt015a is not initial. "
ls_werk-werk = lv_werk.
delete zqmt015c from ls_werk.
endif.
endform.