LO数据抽取方法:增强数据源以添加额外属性或字段.pdfVIP

  • 0
  • 0
  • 约3.54千字
  • 约 4页
  • 2026-01-23 发布于北京
  • 举报

LO数据抽取方法:增强数据源以添加额外属性或字段.pdf

LO数据抽取方法_LOEnhancement_1

比如对于某一个datasource,我们想增加这个datasource中间并没有包含的一些属性或者一

些字段进去,那这个时候,我们就需要做enhancement,常见的理由是我们要对主数据增加

额外的一些属性进去,或者对事务数据增加额外的特征的属性值或者字段进去,常见的操作

步骤分为这四个步骤,第一个步骤就是在我们datasource它的extractionstructure给它附加一个

appendstructure,也就是给它增加些你需要的字段进去,第二个步骤通过增强的用户程

序来往中间填充内容,第三数据源,第四load数据,第三和第四和以前没什么区别,现

在到rsa6,来看看抽取结构,关于物料的这样一个抽取结构0MATERIAL_ATTR,它中间是

不是包含了我们想要的某一个字段呢,比如我们想给它增加一个采购组的属性进去,同时也

知道,在SE11-marc这样的透明表中,字段EKGRP就是采购组,那这个时候我就想把这

样的字段附加到抽取结构中去双击

extractstruct:BIW_MARA_S,到抽取结构中来,点,如果之

前你没有给appendstructure,它会默认给一个名称,在这中间须要appendstructure

中的成员变量,component必须用ZZ打头,componenttype我们就使用字段EKGRP这样的

一个域类型,对于有些象货币单位或者数量有时会需要referencetable和ref.field,我们这个

不需要,它需要指定一个开发类,这中间不能去指定本地开发类

第二个步骤要把抽取结构当中附加填充数据,要编写填充数据的代码,我们使用事务码

CMOD或者SMOD,首先要创建一个新的项目,subobjects选择enhancementassignment,

点change,下面给enhancement一个功能模块代码,这个功能模块代码在系统中已经有一些

了,比如functionmodule:R0001用于BW数据抽取目的的一个功能模块代码,我们直

接使用它就可以了,当然我们也可以直接subobjects选择components,这个功能模块代码有

四个子模块,其中第一个模块是用于事务性数据的抽取结构来填充所用的,第二个模块是对

主数据的文本或属性进行填充所用的,在这来编写,而第三个模块是原来BW2.0老版本中

对主数据的文本来进行填充,现在不用了,第四个模块是对层级的,那现在我们选择第二个

功能模块,进入它的代码,然后双击INCLUDEZXRSAU02,我们看到这中间什么都没有,

那这个时候我们就要往中间填充代码了,我们看看这个例子,我们可以借鉴它的,当然这个

是针对C_T_DATA,当我们在进行数据抽取的时候,它会把数据填充到这中间来,其中C

是对事务性数据的,如果我们是对主数据,这里应该是I_T_DATA,另外这里I_SOURCE

也不对了,这是对于BW2.0的情况,现在应该是I_DATASOURCE,我们来看看这段代码关

键的语法,tab:我们准备从那个表里要提取数据,data定义了一些变量,比如这个变

量I_S_S001LIKES001BIWS是根据我们抽取结构来做定义的,I_COUNTER是一个计算器,

这个I_TABIX是让我们做查询的时候得到反馈结果集的时候用来对结果集游标的值,当碰

到某一个DATASOURCE,执行下面的这些代码,如果你有很多DATASOURCE也要执行

enhancements,endsloopfordebuggin

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档