声明:本文仅代表原作者观点,仅用于SAP软件的应用与学习,不代表SAP公司。注:文中所示截图来源SAP软件,相应著作权归SAP所有。
01
目录
9 BW增强
9.1 常见规则增强
9.1.1 DTP增强,用于过滤
9.1.2 信息包增强,用于过滤
9.1.3 BW Query Variable的8 RSROA_VARIABLES_EXIT增强,用于query变量的初始值默认。新加的badi
9.1.4 DataSource Enhancement的RSU5_SAPI_BADI,对数据源的任意增强,跟CMOD类似
9.2 自定义数据源
9.2.1 基于表的数据源
9.2.2 安全上下限
9.2.3 基于FM的数据源
9.2.4 基于query的数据源
9.3 虚拟关键值和特性
9.3.1 作用
9.3.2 创建特性和关键值,并添加到信息提供者以及query创建
9.3.3 建badi
9.4 BEX变量
9.4.1 建实现SE18或19
9.5 数据源增强
9.5.1 RSA6增强提取结构
9.5.2 RSA6修改数据源字段
9.5.3 SE19创建badi实现
9.5.4 SE24实现代码逻辑
9.5.5 复制数据源
9.6 BAdI RSAR_CONNECTOR for Formula
9.6.1 SE19创建
9.6.2 在转换时调用
9.6.3 在处理链时调用
02
正文
9 BW增强
9.1 常见规则增强
9.1.1 DTP增强,用于过滤
代码如下:
执行的选择如下:
9.1.2 信息包增强,用于过滤
在ABAP Routine里面,可以跟DTP增强过滤类似
在抽取里面,尤其是文件的读取过滤方面,先读到每天的文件,然后按需过滤加载具体的文件
9.1.3 BW Query Variable的8 RSROA_VARIABLES_EXIT增强,用于query变量的初始值默认。新加的badi
9.1.4 DataSource Enhancement的RSU5_SAPI_BADI,对数据源的任意增强,跟CMOD类似。
9.2 自定义数据源
9.2.1 基于表的数据源
第一步创建表
第二步创建视图
第三步维护数据
第四步建数据源
第五步复制数据源
第六步建立初始化信息包,本次选择无数据初始化,并执行
可以看看初始化的属性信息,以及对应的初始化表中数据都为执行日期了。
第七步,此时执行RSA3是读取不到数据的,修改更新的时间再抽
修改表记录内容
RSA3再检验下能否抽到数据
第八步,建增量信息包,正式抽取,抽过来2条
注意
9.2.2 安全上下限
第一步,清空数据,无数据初始化,发现增量表是30日
第二步,修改roosgendlm,上次增量修改为2号
第三步,不设置安全上下限和lower limite设置为1,用RSA3抽取测试的效果不一样
第三步,不设置安全上下限和upper limit设置为1,用RSA3抽取测试的效果不一样
9.2.3 基于FM的数据源
第一步,复制示例创建,别忘记复制include等,对应函数组为RSAX
看函数
第二步,基于函数创建
也需要指定一个增量字段为changeon,从是函数传递过来的
第三步,debug看一下
调用过程
第四步,抽取
9.2.4 基于query的数据源
RSO2建的信息集
第一步 建报表
第二步 建信息集
第三步,定义信息集的选择条件
第四步 创建数据源
第四步 复制 激活并打初始化标记
第五步 测试
9.3 虚拟关键值和特性
9.3.1 作用
9.3.2 创建特性和关键值,并添加到信息提供者以及query创建
9.3.3 建badi
define
initialize
计算compute
运行结果
9.4 BEX变量
调用原理
默认如果没做任何实现,调用CMOD的函数
CMOD函数简单代码如下
9.4.1 建实现SE18或19
退出,编辑,创建变量实现
代码如下
测试
9.5 数据源增强
9.5.1 RSA6增强提取结构
9.5.2 RSA6修改数据源字段
9.5.3 SE19创建badi实现
9.5.4 SE24实现代码逻辑
9.5.5 复制数据源
9.6 BAdI RSAR_CONNECTOR for Formula
在transformaton时
在处理链中
9.6.1 SE19创建
实现get方法