点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
通过TCODE识别表名的示例:使用ZBC_CONF程序直接创建事务代码ZCONF_ZTIF002. 执行事务代码会直接进入ZTIF002的SE16N维护界面 方式一 创建一个配置表ZTCONF_DEMO. 为它创建定制对象 在配置IMG实施指南活动时,使用通用配置对象ZTCONF_DEMO.使用包含表名信息的TCODE 跳转.事务代码调用程序ZBC_CONF 方式二 手工写入表 OBJH/OBJS/TADR 相关记录.跳过系统检查. 如果上述表记录维护不完整,系统会报错 新增这些表记录的代码可以写在函数CTO_OBJECT_GET函数开头的隐式增强中自动写入. 维护结果如下图 方式三 使用通用对象 ZTCONF_DEMO 和事务代码 ZBC_CONF维护好实施指南对象后. 修改表CUS_ACTOBJ中的内容. 把ZTCONF_DEMO修改为特定的表. 该表中对象名称字段是关键字, 只能通过新增记录,删除记录的方式修改对象内容 授权配置 字段属性配置 字段检验配置*&---------------------------------------------------------------------*
*& Report ZBC_CONF
*&---------------------------------------------------------------------*
*&单表通用维护程序:整合表,,SE16N_START
*创建TCODE 时,按照 ZCONF_<表名>命名.程序从TCODE中解析表名.
*&---------------------------------------------------------------------*
REPORT zbc_conf.
PARAMETERS: p_tab TYPE tabname DEFAULT '' NO-DISPLAY.
INITIALIZATION.
*标准IMG执行时在程序 LS_CUS_ACTIVITYF01 472 行左右 会调用预定义的事务代码并通过PARAMETER ID 'CUO' 传递配置对象
* SET PARAMETER ID 'CUO' FIELD objectname.
* CALL FUNCTION 'SPROJECT_BUFFER_NOTE'.
* CALL TRANSACTION p_tcode.
IF sy-tcode = 'ZBC_CONF'.
DATA: lv_objectname TYPE ob_object.
GET PARAMETER ID 'CUO' FIELD lv_objectname.
IF lv_objectname IS NOT INITIAL.
p_tab = lv_objectname .
ENDIF.
ELSE.
SPLIT sy-tcode AT '_' INTO DATA(lv_1) DATA(lv_2).
SELECT SINGLE * FROM dd02l INTO @DATA(ls_dd02l) WHERE tabname = @lv_2.
IF sy-subrc = 0.
p_tab = lv_2.
ENDIF.
ENDIF.
START-OF-SELECTION.
CALL FUNCTION 'SE16N_START'
EXPORTING
i_tab = p_tab
* I_DISPLAY = ' '
* I_EXIT_SELFIELD_FB = ' '
i_single_table = 'X' "表名字段不允许输入
* I_HANA = ' '
.