LSMW应用

声明:原创作品,转载时请注明文章来自SAP师太技术博客:www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将追究法律责任!原文链接:http://www.cnblogs.com/jiangzhengjun/p/4291458.html

LSMW应用... 43

创建项目... 43

步骤详解... 44

第1步:基本属性维护Maintain Object Attributes. 45

第2步:创建数据源结构Maintain Source Structures. 47

第3步:维护数据源结构字段Maintain Source Fields. 47

第4步:数据源结构与目标结构关联Maintain Structure Relations. 48

第5步:源与目标结构字段映射及转换规则配置Maintain Field Mapping and Conversion Rules. 48

第6步:固定值、翻译规则、自定义Form维护Maintain Fixed Values, Translations, User-Defined Routines. 52

第7步:指定数据源文件Specify Files. 52

第8步:为数据源结构分配文件Assign Files. 53

第9步:将文件内容读取到服务器上Read Data. 53

第10步:查看读取到数据Display Read Data. 54

第11步:数据转换Convert Data. 54

第12步:查看转换后的数据Display Converted Data. 55

第13步:创建批量输入(BDC)会话Create Batch Input Session. 55

第14步:执行批量输入(BDC)会话Run Batch Input Session

LSMW应用

全称为Legacy System Migration Workbench(旧系统迁移工作台),该工具设计的初衷是为了SAP初期的数据导入,例如在ERP切换时将旧系统中的商品主数据导入SAP,但在运维阶段,该工具也可以实现数据的批量维护操作。

本节同样以 AS02 为例来讲解如何通过LSMW平台来实现对AS02数据的批量修改。

创建项目

输入项目名称及描述:

继续输入子项目名称与Object名称,名称没有特殊要求:

点击执行,进入LSMW维护工作台:

点击按钮,前面将显示执行步骤顺序号,共需要维护14步:

双击某行,可以进行到每个步骤的维护界面

注:上面的14步是以录屏方式来更新业务数据,如果是采用其他方式如IDOC或BAPI程序方式来更新时,则列出的步骤会不同,具体不同的步骤可以点击按钮来查看:

但是后面两个红框中是否有,要依赖于你在第1步所选择的数据更新方式,这两个红框中的步骤应该不会同时出现,即使你全部钩上了

步骤详解

通过上面看到,LSMW维护数据操作可以分十几个步骤,每个步骤表示不同的操作,在数据导入时必须按步骤的顺序来操作

第1步:基本属性维护Maintain Object Attributes

此步主要是选择批量维护方式(图中四选一),这里我们选择像前面BDC、CATT那样,过录屏幕代码进行批量维护(此种方式需借助于SM35、SHDB)。从下图看出,还可以通过程序、BAPI、Idoc的方式来批量数据的维护,总之,就是数据最终是采取什么方式来进行修改

点击按钮:

维护好事务代码确定后,将进入到AS02事务录屏中,本例也只能描述及主资产号文本进行修改,修改后保存,返回到Create Recording界面。在该界面可以看到所录制的屏幕字段信息:

并按以下表修改资产编号、公司代码、描述及资产文本号码四个字段:

如在第一个NAME字段维护名称“ANLN1”,该字段名即为后面第5步中ZAS02目标结构中的成员字段

上面除了手工定义每个字段外,还可以采用快速默认方式,点击按钮,则会使用录屏中的屏幕字段的字段名作为目标结构ZAS02的成员字段名:

注:不需要的字段,请一定要清空或不填,否则会成为目标结构ZAS02的成员字段

最后将上面录制的名为ZAS02记录输入到属性界面的批量录制方式中:

第2步:创建数据源结构Maintain Source Structures

要实现数据的导入必须有数据源,该步就是定义此结构的

第3步:维护数据源结构字段Maintain Source Fields

此步是能上一步(第2)所定义的结构具体的分配字段,并在该维护界面中显示出了上一步创建的结构名:

第4步:数据源结构与目标结构关联Maintain Structure Relations

上面第2、3步配置的是存放数据源结构的一些维护,所配置的名为ZAS02_STRUCT(用来存储服务器上的ZAS02_SUBPROJECT_OBJECT.lsmw.read中的数据)的数据源结构最终要赋值给名为ZAS02目标结构中。ZAS02里存储的就是业务所使用的最终数据(实质上存储的是服务服务器上的ZAS02_SUBPROJECT_OBJECT.lsmw.conv文件中的数据),数据源ZAS02_STRUCT里的数据赋值给ZAS02目标时,可能会存在一些转换规则而不是直接赋值,这些都是在下一步所配置的,这里只是指定一下需要将哪个结构(这里为上面第2步所配置的数据源ZAS02_STRUCT)与目标结构进行关联

因为上面第2步只创建一个数据源结构ZAS02_STRUCT,所以就默认配置好关系,此步可以直接跳过。如果配置了多个数据源结构,则这里需要手工进行指定:

第5步:源与目标结构字段映射及转换规则配置Maintain Field Mapping and Conversion Rules

上面第4步中只是指定将数据源结构ZAS02_STRUCT映射到目标结构ZAS02,但具体怎么映射(哪个字段到哪个字段、赋值时是直接赋值还是要经过转换等)是没有的,这里就是对这两个结构中的字段时行映射及转换

打开维护界面时,显示出了目标结构ZAS02的具体内部字段结构(发现有4个字段,这4个字段就是在第1步中所配置的那4个字段),现将目标结构中的字段与数据源结构中的字段进行映射:

映射完后,界面如下:

上面只是指定每个字段的映射关系,但映射时之间的转换规则没有特意去指定,都是默认的,默认就是直接进行普通的赋值操作(MOVE)。这里还提供了其他很多的转换规则,点击按钮,可以看到提供的转换规则:

下面具体来看每个规则的使用:

:目标字段不会做映射,直接采用ABAP内存中变量初使值:

:常量

:固定值,其实与上面常量差不多,只不是该固定值有个名:

:应该是翻译??有待验证

将数据源结构ZAS02_STRUCT-ANLN1字段的值按照‘AxbXCydYEzfZ‘对照表进行翻译,并将翻译结构存储到目标结构ZAS02-ANLN1字段中。传入的‘AxbXCydYEzfZ‘为翻译对照表串,包含成对字母,其中每对的第一个字母用第二个字母替换,lsmw_translate Form应该是调用TRANSLATE<c> USING <r>语句来进行翻译的(具体的翻译规则还可以在下一步第6步进行配置)。

:加上前缀后赋值给目标字段

:加上后缀

将多个源字段串连起来赋给目标字段。注:需要至少分配两个源字段都可以操作

删除左边前面所有空格,实现就是调用 SHIFT 语句来实现

:如果系统提供的转换规则不适用,则还可以自己来写一些ABAP转换代码

:调用定义的Form,这里只是定义Form接口,具体的定义在下一步第6步完成

还没弄明白!

:对C类型的字段在不足长时,在前面补全前导0

第6步:固定值、翻译规则、自定义Form维护Maintain Fixed Values, Translations, User-Defined Routines

在这一步主要是对上一步第5步规则中使用到的固定值、翻译规则、自定义Form的维护,而固定值在第5步就可以直接维护了,且翻译规则基本上不用具体配置,使用TRANSLATE语句的默认规则?

在这时主要是对第5步用到的自定义Form进行定义

ur_ANLN1为第5步ANLN1字段所配的转换规则Form:

第7步:指定数据源文件Specify Files

可以选择本地文件,也可以将本地文件上传到服务器后作为数据源

这里只是定义数据源文件,具体将文件内容读取后存储到哪个数据源结构内表,是在下面第8步中分配的,这里只作文件的定义

上面ZAS02_SUBPROJECT_OBJECT.lsmw.readZAS02_SUBPROJECT_OBJECT.lsmw.conv两个文件是自动生成的,其中 *.read文件是用来直接存储从用户指定的数据源中的文件内容,是没有经过任何转换的原始数据,在后面第9步会使用到此文件;而 *.conv文件则是存储最后的转换的最终数据,即最终业务所需的数据,此文件会在第11步用到

经后面的测试,这里虽然是 ASCII 编码,但如果使用中文登录后上传,是不会出现乱码的

第8步:为数据源结构分配文件Assign Files

此步的作用是将上面第7步定义的文件,分配到第2步定义的数据源结构中,即文件与结构内表的映射

上面的ZAAA结构是为了测试乱定义的,在此演示中没有用

第9步:将文件内容读取到服务器上Read Data

可以指定数据的读取的范围,不指定时,会默认从数据行的第一行读取到数据行的最后一行

执行后,文件中的内容已经将被读入到ZAS02_SUBPROJECT_OBJECT.lsmw.read文件中了:

10步:查看读取到数据Display Read Data

此步就是显示上一步第9所读取的内容

注:如果文件中有中文字符,则要使用中文语言登录,否则会出现乱码

第11步:数据转换Convert Data

此步会按钮第5步指定的规则,对每个字段进行转换,数据会从ZAS02_SUBPROJECT_OBJECT.lsmw.read文件中,经转换后存储到ZAS02_SUBPROJECT_OBJECT.lsmw.conv文件中。

由于本演示中各字段没有经过特殊的转换,只是简单的赋值操作,所以实质上也只是简单赋值过程

12步:查看转换后的数据Display Converted Data

此步就是显示上面第10转换后的数据

第13步:创建批量输入(BDC)会话Create Batch Input Session

创建后我们可以使用SM35来查看到刚被创建的会话:

同时,通过SM35可以监测在服务器上产生的*read与*.conV两个文件,操作如下:

在SM35界面上,点击会输入SHDB,在SHDB操作界面,打开文件监视器:

第14步:执行批量输入(BDC)会话Run Batch Input Session

此步实质上就是进入到SM35操作界面:

由于本例是通过录屏的方式来修改业务数据,所以运行时实质上是按 SM35方式来执行的。

当执行完后,数据就会更新到SAP系统中,整个LSMW就完成了。会话执行完后,会被删除掉

,如果是修改了文件,需要重新执行第9、11、13步,及第14步即可

总体来说,LSMW功能可以将数据读取到后台来进行处理,适合于那些耗时大的批量数据,但LSMW操作麻烦,不适合用户直接操作

时间: 2024-10-27 07:02:09

LSMW应用的相关文章

LSMW批处理工具操作手册

      目录     1. 创建PROJECT 1 2.第一步:初始界面后点击执行出现如下对话框 3 3.第二步:维护源结构 8 4.第三步:Maintain Source Fields 9 4.第四步:Maintain Structure Relations 11 5.第五步:维护字段关联 12 6.第六步:Maintain Fixed Values, Translations, User-Defined Routines 13 7.第七步:Specify Files 13 8.第八步:A

一步一步教你使用 LSMW 批量处理数据

保存退出 输入完后,保存退出 原文地址:https://www.cnblogs.com/jackbin/p/10652881.html

SAP事务码 一

SE80 -- edit source code. SE24 -- class create or display. SFP -- created and maintained independently of Web Dynpro applications using the Form Builder. SFW1 SFW2 SFW3 -- 与增强有关 SY-SUBRC 返 回代码值( 0,如果操 作成功)   SY-UNAME 用 户的登录名   SY-DATUM 当 前日期   SY-UZE

利用SD_SALESDOCUMENT_CREATE 批导动态数据SO

期初上线时,SO作为动态数据,是批导入系统必须做的一步,好多朋友利用bdc.lsmw.scatt等工具都可以做,下面是项目中利用SD_SALESDOCUMENT_CREATE 进行批导的一些代码,分享一下,希望对用到的朋友有帮助. *&---------------------------------------------------------------------* *& Report  ZSD_BATCH_SO *& *&---------------------

打破传统天价SAP培训,开创SAP师徒之路,经验丰富的老顾问带徒弟

SAP领航社区,开设了一个导师性质的师徒圈子,类似大学导师带研究生,导师给学生安排课题.分配任务.分享资料,让学生自学提高.我们的教学方法是以自学为主,辅导为辅助,在实践中积累经验掌握原理.主要方向ABAP.FICO.SD.MM.PP.HR.CS.CRM.Webdynpro.BO.BW 等等,经验丰富的老顾问带新徒弟,既可以教徒弟技术,又可以给徒弟推荐项目机会 (特殊说明:非线下或者网络授课,通过分享资料,让学生自学,不懂问导师,引导之路) 教学方法: SAP领航推出的导师性质的培训(经验老道的

ABAP开发顾问必备:SAP ABAP开发技术总结

声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将追究法律责任!原文链接:http://www.cnblogs.com/jiangzhengjun/p/4260224.html 该文档是根据我过去多年学习文档与工作文档总结而成,项目开发过程中我都会参考此文档,主要ABAP很多细节上的东西不可能你记得很牢固,或者你记得一时,但过不了几天做别的项目就会

长期内部推荐SAP职位,包括Java ABAP 咨询顾问,Developer,架构师等。

有需要请发简历到邮箱    LoB Position LocationAcquisitions Hybris Support Team Manager DL Hybris Support Engineer(JAVA) - Japanese Speaker DL Hybris Support Engineer(JAVA) DL AGS Data Migration--ABAP, LSMW BJ Developer - Support Application Landscape SH User Ex

业务对象和BAPI

声明:原创作品,转载时请注明文章来自SAP师太技术博客:www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将追究法律责任!原文链接:http://www.cnblogs.com/jiangzhengjun/p/4291469.html 业务对象和BAPI 59 SAP业务对象(SWO1)... 59 业务对象类型的组成... 62 测试业务对象... 66 BAPI 68 BAPI与ABAP OO.. 70 BAPI的查找... 70 通过业务对象创

BDC、CATT批量数据维护

声明:原创作品,转载时请注明文章来自SAP师太技术博客:www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将追究法律责任!原文链接:http://www.cnblogs.com/jiangzhengjun/p/4291452.html BDC批量数据导入... 19 SM35(包含SHDB)录屏操作... 19 生成程序... 22 带服务器端测试数据文件... 22 编辑服务器端上生成的测试数据文件... 23 CG3Y.CG3Z文件每行字符超长问