点击蓝字 关注我们
前言
SE16N是SAP ERP软件提供的一个表内容浏览/编辑器的事务代码.一般情况下,用于查看单表的数据内容.也可以用于编辑表内容.改造SE16N系列就是尝试对SE16N增强一些功能.让它变得更加好用.
本文介绍了怎么通过增强去补充编码字段的描述信息
先看一个标准功能
有时候我们用SE16N查看某些表时, 会发现表中没有的文本字段会显示在SE16N中. 比如查看TVKO. 系统会自动把文本表带出.同时在ALV中会显示文本字段. 这个特性只针对存在文本表的表有效.
TIPS
SPRING
文本表和表的关系是通过文本表的特殊外键关联起来的.如下图,销售组织文本表TVKOT 和销售组织表TVKO的关联关系.
自定义配置表的描述放入文本表是一个好习惯.
展开联想...
如上所示, 在显示销售组织的配置表时. SE16N会自动带出销售组织的描述.
那么在显示销售订单抬头表VBAK时, SE16N能否带出销售组织的描述呢.
答案是否定的. 但是我们可以改造SE16N,让它能实现这个功能.
效果展示
先看配置和执行结果(通过配置表/字段后,SE16N显示VBAK内容时, 就可以看看到销售组织编码后面附带的描述
方案分析及实现
SE16N能通过ALV显示所有表的内容. 那么它的ALV显示的内表一定是动态构造的, 所以我们需要找到动态构造内表的语句,添加自定义字段. 同时在内容输出之前,补充新增字段的内容即可.下面就跟着我看看怎么实现上述的分析内容.
01
配置表
配置表ZTBC051: 用来控制哪些表字段需要添加描述(这个字段必须是码表中存在的字段)
02
码表体系
配置表中只是简单的勾选附带描述, 这个简单勾选后面附带着一套码表体系的支撑. 详见链接
码表体系
无峰,公众号:ABAP 技巧与实战SAP开发框架系列之 码表框架
码表的其它应用
无峰,公众号:ABAP 技巧与实战动态报表-添加编码描述(码表)
03
动态内表添加字段
通过在程序LSE16NF30 FORM CHECK_EXIT 开头位置添加隐式增强实现.
在这里读取配置表,如果配置了需要添加描述字段, 则在gt_fieldcat 内表中添加一行记录(比如说我维护的字段是VKORG ,那么添加一个新的字段 VKORG_TEXT 位置就放到VKORG之后, 确保他们在ALV中相邻出现)
04
输出前补充内容
通过在程序LSE16NF20
FORM SET_TABLE_FOR_DISPLAY 开头位置添加任意点增强
增强中调用码表通用补充描述的函数
Z_BC_REPORT_GET_FIELD_TEXT
为内表中的码表描述字段补充内容.(VKORG_TEXT 是VKORG的编码描述字段)
这样,就实现了给SE16N中显示的编码字段添加描述的功能.
关于源码
因为这个增强涉及到了一个码表体系,牵扯的东西太多了, 所以无法给大家提供源码部分内容.大家可以通过这个思路自行去增强SE16N的显示内容.
SE16N标准增强介绍
标准SE16N其实也提供了一些出口,通过程序LSE16NF30 FORM CHECK_EXIT 中可以看到标准提供的部分出口.
可以通过配置SE16N_EXIT 表实现一些增强功能.
这些配置通过事件在特定的位置驱动回调用户的程序FORM或函数. 用于实现一些特定功能.
有兴趣的话,大家可以去研究一下.
THE
END
约定
如果你对这篇文章感兴趣,请帮忙点赞,在看,分享.
(如果你真的喜欢这篇文章,请记得回来打个赏,作为支持我继续下去的动力,这是一个正反馈过程. 越多的人打赏,作者越有动力分享,读者就能享受更多的福利.毕竟打赏的金额富不了我,穷不了你,却能支持这个公众号长久发文.)
公众号 : syjf1976_abap
ABAP开发技巧
微信号 : 392077
公众号主群加入受限, 请扫码加入副群后,向管理员申请加入主群