SAP小技巧之 改造SE16N(四)

点击蓝字 关注我们

前言

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

公众号主群加入受限, 请扫码加入副群后,向管理员申请加入主群

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值