业务场景
用户通过FBL5N可查询客户应收账款信息(可过滤未清已清)
需求
项次中已显示科目,客户代码,总账科目等字段,却缺少没有对应描述,客户需求将总长科目等系列描述增加。
解决方案
使用BTE增强实现
BTE实现步骤
分析
系统默认在IMG中可配置行项目显示字段,但在可配置的数据表上存在一定的限制,只允许配置索引表BSIK/BSIS/BSID和基本表BKPF/BSEC/BSED/BSEG/PAYR/BSEGC中的字段,IMG路径如下:
财务会记》应收账款和应付账款》客户账户》行项目》显示行项目》定义行项目显示的附加字段
对于没有在上述表中,但却需要显示的字段客户化定制是无法满足其需求的。
技术说明
接收数据的结构,改方法只有一个导入参数,所有的信息都在这个导入参数里面。
BTEs(Business Transaction Events),是SAP的一种增强方式,它主要有两种类型的接口:
- Publish and Subscribe Interface
- Process Interface。
在标准程序中常常是以OPEN_FI_PERFORM_或者OUTBOUND_CALL_开头的function。
至于Publish and Subscribe Interface和Process Interface的区别,主要还是用途上的。前者,使给外部软 件提供信息的,而后者主要用于R/3流程的。不过前者也可以生成或修改一些additional data。
实现步骤
- 在显示字段对应的结构RFPOS和RFPOSX中Append Structure自定义的需要新增字段的结构。
- SE38运行程序RFPOSXEXTEND执行Append Structure操作。显示Program Completed Successfully,执行成功。
- FIBF 维护业务框架 选择信息系统 直接执行
4.自定义函数实现。
选中事件1650“行项目显示:每行增加数据”,执行“样本函数模块”,进入函数创建窗
口添加逻辑,建议将(建议将该函数Copy一份实现),或者直接使用四代隐式增强作修正。 - 创建客户化事件实现对函数的关联响应
FIBF 新增自定义条目,注意:将A的勾打上表示激活。
保存后创建函数模块,实现事件与函数之间的关联。
6.运行FBL5N,将客户化字段添加显示。 - 除了文中fbl5n外还有类似的fbl1n,fbl3n和fagll03 等增强都是类似的。
其中fagll03需要用BADI:ZFAGL_ITEMS_CH_DATA~CHANGE_ITEMS另作处理。 另外部分销售,财务的增强也可以用这种方式做处理。