背景
在表维护程序SM30的使用过程中,经常需要自动填充和修改一些值,比较常规的做法是修改屏幕逻辑流,但是如果重新激活了SM30,那么逻辑流就要重写,相对比较麻烦,之前接触过表维护程序中的‘事件’,经过研究得出以下方法
原理
事件编号 | 事件功能 |
---|---|
01 | 保存前修改数据 |
05 | 创建数据时修改 |
21 | 退出单元格编辑时填充隐藏字段 |
步骤
1、生成表维护程序,建议做一个维护视图
2、针对事件分别创建子例程
3、实现如下代码,可根据实际需求调整
本例的版本号ZZVER保存时自增,故在事件01中实现,对于实时填充字段值的需求,可以在05(new record)和21(update record)中实现
参考代码
*&---------------------------------------------------------------------*
*& 新增条目事件
*&---------------------------------------------------------------------*
form sub_new_entry.
assign component 'CREATED_BY' of structure <table1> to field-symbol(<fs_field>).
if <fs_field&g