SAP数据批量导入的常用方法
- 格式:docx
- 大小:17.55 KB
- 文档页数:4
SAP数据批量导入教程文章第59页第4部分为BDC批导入处理教程1.前言1.1.ECATT解释Extended Computer Aided Test Tool(T-code:SECATT)ECATT是SAP自带的功能测试工具,主要目标用来作SAP业务流程的自动化测试,每个测试都会生成一个详细的日志来显示测试流程和测试结果。
和CATT相比,CATT操作简单,类似于BDC的录屏功能,用于常用的简单业务数据导入,基本已被ECATT完全取代。
除了CATT功能之后,ECATT主要应用于基于GUI Windows/Gui Java自动化测试,同时也为外部工具提供了第三方接口(获BC-ECATT授权)。
所有的测试脚本,无论是ECATT自已生成的还是外部工具的他们都应该具有相同的数据对象类型,与SAP结合在一起并保存在相同的位置。
在R/3的功能测试中,ECATT录屏功能简单实用,测试脚本、测试数据、系统数据分别存放,可重复使用,并附有详细测试报告以及纠错功能,作为自带工具简单实用。
对于WEB方面的测试的话就要借用第三方的测试软件,如知名的Mercury的QTP。
1.2.LSMW解释Legacy System Migration Workbench (T-code: LSMW)LSMW, 是SAP推荐用来从旧的系统或非SAP系统把大批量或周期性的数据迁移到SAP的主力工具,类似于ECATT/SCATT,其优点可以在一个Session中处理大批量数据,并灵活易学易用。
如果用BDC和ECATT只能根据定制好的画面输入参数。
一旦没有这个值系统就会报错。
比喻我们根据业务对FI Account Document或者主数据一些参数作了扩展,一旦参数缺失或者不匹配,不得不终止Session,通过SM35手动去更正或者重新录屏。
LSMW具有一般的通用性,他导入模板的设计过程包括15个步骤,每个都是独立的单元并可进行单独的更新和修改,而不影响其它的模块只需作一些调整做出相应mapping,将必要的数据指定对应的字段就可行了,无需额外的编码。
在SAP项目实施时主要有三种批量导入方法:LSMW,CATT,BDC第一种:LSMW-----Legacy System Migration Workbench.The LSM Workbench is an R/3 based tool that support whe n transferring data from non-SAP systems to SAP R/3.T-code: LSMW第二种: CATTCATT(computer aided test tool) screen record, s ystem will not create program.T-code: SCAT第三种: BDCFor batch input or change, system will create program, and you can change the program.T-code: SHDBBDC导入Batch Input是一种数据批量输入SAP系统的辅助程序,SAP系统的资料、格式可以通过Batch Inpu t录入SAP系统Batch Input的机制是模拟事务处理将数据录入R/3系统Batch Input类似SAP的CATT,控制性更好,处理能力更强1、首先我们需要把需要批导入事务的操作步骤记录下来,可以用T-CODE“SHDB”来记录。
在COMMAND LINE中输入“SHDB”。
2、进入TRANSACTION RECORDER界面3、点“NEW RECORDER”创建一个记录,现在以修改订单为例,键入记录名“ZAMAO”,输入事务代码“VA02”,然后“START RECORDING”。
4、下面的任务就是记录下修改订单的操作步骤。
5、填入订单号码,按确定6、现在来增加一下订单的PO DATE。
7、填入“,点“保存”。
8、这样就完成了一个最最简单的BDC录取工作,录完之后会出现系统运行的操作的跟踪,包括程序号,屏幕号,字段名,值等等,下面的任务是根据这些写到程序里面以完成SAP自动跑订单修改的这一动作。
SAP数据导入方案1. 引言数据导入是在SAP系统中常见的任务之一,它允许用户将外部系统中的数据导入到SAP系统中。
在本文档中,我们将讨论SAP数据导入的方案和最佳实践。
2. 数据导入方法在SAP系统中,有多种方法可供选择来导入数据。
以下是一些常见的方法:2.1 ABAP数据上传ABAP数据上传是一种通过编写ABAP代码来实现数据导入的方法。
它允许用户根据自己的需求和要求在SAP系统中创建自定义的导入程序。
这种方法适用于复杂的数据导入任务,但需要具备编程知识。
2.2 SAP数据迁移对象 (DMO)SAP数据迁移对象 (DMO) 是一个SAP提供的数据导入工具。
它允许用户使用预定义的数据对象将外部系统中的数据导入到SAP系统中。
用户只需配置适当的映射关系和转换规则,然后将数据文件上传到SAP系统即可。
2.3 第三方数据导入工具除了SAP提供的工具之外,还有许多第三方工具可用于数据导入。
这些工具通常具有更友好的用户界面和更丰富的功能,可以更轻松地导入和转换数据。
一些流行的第三方工具包括IDoc导入工具、LSMW和BDC。
3. 数据准备在进行数据导入之前,必须确保数据已经准备好并符合SAP系统的要求和限制。
以下是一些数据准备的最佳实践:3.1 数据清洗在导入数据之前,应该先对数据进行清洗。
这包括去除重复数据、修复格式错误、填充缺失的数据等。
数据清洗可以提高数据质量并减少错误。
3.2 数据映射在将数据导入到SAP系统之前,必须确定外部系统中的数据如何映射到SAP系统中的字段和对象。
这通常涉及到定义映射规则和配置转换逻辑。
确保正确的数据映射可以防止数据丢失或错误。
3.3 数据验证在导入数据之前,应该先对数据进行验证。
这包括检查数据的完整性、一致性和有效性。
确保数据的正确性可以提高SAP系统的数据质量和准确性。
4. 数据导入过程在实际进行数据导入时,需要按照以下步骤来执行:4.1 创建数据导入任务首先,需要在SAP系统中创建一个数据导入任务。
SAP数据批量导入的常用方法:在SAP项目实施时主要有三种批量导入方法:第一种:LSMW-----Legacy System Migration Workbench.(遗留系统迁移工作台)The LSM Workbench is an R/3 based tool that support when transferring data from non-SAP systems to SAP R/3.T-code: LSMW第二种:CATT(计算机辅助测试工具)CATT(computer aided test tool) screen record, system will not create program.T-code: SCAT第三种:BDC(批导入数据)For batch input or change, system will create program, and you can change the program.T-code: SHDB一、C ATT操作具体方式如下:1大致过程1.1 录制CATTSCAT—>TCD,输入事务码—>按前台操作方式操作一遍,在需要输入的地方输入相关内容,直至存盘退出;1.2 定义相关需输入字段的名字(更改记录,把数值变化的字段做成“变量”,保存记录)在SCAT中选中所保存的CATT,点击修改,双击TCD,双击相关条目,双击相关屏幕的字段进行定义,在此过程中对于不需要的屏幕可以跳过,对于需确认的屏幕可以插入OK code,最后保存,CATT定义即告完成1.3 导出格式文件:在SCAT中,选中所保存的CATT,执行菜单“转到—>变式—>输出缺省”,系统会导出一个TXT格式的文件;1.4 填写数据到该TXT文件用Excel导出上面导出的文件,在第五行以后的相应列逐行输入每行记录的相关内容(Excel的复制类操作不用讲了),对于内容一样的部分可以不输,以默认值的形式(在录制定义CATT时输入或执行CATT时输入),数据输入完成后,将该文件仍保存为txt 格式;1.5 执行CATT:在SCAT中,执行所保存的CATT,日志格式及处理方式按需选择,变式选择自文件外部,选择相应的文件,如有必要,在下面的相关字段可以输入缺省值,执行即可。
SAP批导入处理教程•批导入概述•数据准备与格式要求•批导入工具介绍与使用•批导入操作步骤详解目录•常见问题与解决方案•总结与展望01批导入概述批导入定义与目的定义批导入是一种在SAP系统中批量上传和处理数据的方法。
目的通过批导入,用户可以快速、高效地将大量数据从外部文件或数据源导入到SAP系统中,实现数据的集中管理和处理。
与其他系统集成时,通过批导入实现数据的交换和同步。
定期更新或维护主数据时,批量导入修改后的数据。
初始化系统时,批量导入基础数据。
适用范围:适用于所有需要使用SAP 系统处理大量数据的场景,如物料主数据、客户主数据、供应商主数据等的批量导入。
场景举例适用范围及场景011. 准备数据根据SAP 系统的要求,准备好需要导入的数据文件,确保数据格式正确、完整。
022. 创建批输入会话在SAP 系统中创建批输入会话,定义数据导入的相关参数和设置。
033. 上传数据文件将准备好的数据文件上传到SAP 系统中。
044. 执行批输入启动批输入会话,将数据文件中的数据导入到SAP 系统中。
055. 检查和处理错误检查导入过程中出现的错误,并进行相应的处理。
066. 确认导入结果确认数据已成功导入到SAP 系统中,并进行必要的后续处理。
批导入流程简介02数据准备与格式要求外部系统导出如Excel、CSV、XML等。
手工录入通过SAP界面手动输入。
字段分隔符文本限定符文件编码用于标识文本字段的开始和结束,如双引号。
确保文件使用正确的字符编码,如UTF-8。
0302 01通常为逗号、制表符或分号。
数据清洗与整理方法数据清洗去除重复记录。
处理缺失值:填充、删除或保留。
•转换数据类型:如将文本转换为数字。
按特定字段排序,以便后续处理。
排序根据条件筛选需要导入的记录。
筛选将多个数据源合并为一个统一格式的文件。
合并错误提示如“文件格式不正确”或“无法解析字段”。
解决方法检查文件编码、字段分隔符和文本限定符是否正确。
SAP BDC批量導入數據EvansBatch Input(批導入)Batch Input是一種資料批量輸入SAP系統的輔助程式,SAP系統的資料、格式可以通過Batch Input錄入SAP系統Batch Input的機制是類比事務處理將資料錄入R/3系統Batch Input類似SAP的CATT,控制性更好,處理能力更強1、首先我們需要把需要批導入事務的操作步驟記錄下來,可以用T-CODE‚SHDB‛來記錄。
在COMMAND LINE中輸入‚SHDB‛。
2、進入TRANSACTION RECORDER介面3、點‚NEW RECORDER‛創建一個記錄,現在以修改訂單為例,鍵入記錄名‚ZAMAO‛,輸入事務代碼‚VA02‛,然後‚START RECORDING‛。
4、下面的任務就是記錄下修改訂單的操作步驟。
5、填入訂單號碼,按確定6、現在來增加一下訂單的PO DATE。
7、填入‚2006.10.01‛,點‚保存‛。
8、這樣就完成了一個最最簡單的BDC錄取工作,錄完之後會出現系統運行的操作的跟蹤,包括程式號,螢幕號,欄位名,值等等,下面的任務是根據這些寫到程式裏面以完成SAP自動跑訂單修改的這一動作。
9、首先必須定義BDC變數:* BDC tableDATA: t_bdc LIKE bdcdata OCCURS 0 WITH HEADER LINE,t_bdcmsg LIKE bdcmsgcoll OCCURS 0 WITH HEADER LINE.DATA: BEGIN OF t_log OCCURS 0,information(289) TYPE c, “返回信息END OF t_log.DATA: v_mode TYPE c VALUE …N‟.其中TABLE t_bdc中記錄的具體的操作步驟,而TABLE t_bdcmsg是記錄系統返回的資訊,成功與否都記錄到自定義的資訊表t_log中。
BDC数据导入简介在SAP项目实施过程中,批量导入数据主要有三种方法,包括LSMW、CATT、BDC.下面简单介绍以下BDC导入数据的操作方法。
关于BDC,我查询到两种叫法,一个是Batch input communication,另一个是Batch data conversion.但是不知道这两种叫法哪一个是正确的,或者都正确。
BDC的处理步骤分为四步,如下:1.录制BDC标准命令,即BDC模板,就是将在SAP系统中处理的步骤录制下来,然后保存为文本文件到本地。
2.制作数据收集的EXCEL文件,这个文件是数据的原文件,可以根据不同的数据转换方法来定义不同的格式。
3.数据转换,并将转换后的数据上载到SAP系统当中,数据转换的方法常用有4种,WORD邮件合并、SAP TOOL、EXCEL宏、ABAP程序,我介绍SAP TOOL的数据转换方法。
4.到批处理画面进行批处理。
注意:做好的模板,要在测试系统中反复测试后,才能到生产机进行批量导入执行,否则容易出现大量错误,如果是主数据,可以大部分删除,如果是业务数据,就只能冲销了。
举例:大港油田226系统中供水公司工作中心的导入。
操作步骤:一.录制BDC模板执行事务代码SHDB,进入如下界面。
点击new recording.1.在记录字段填写记录名,由自己指定,这里填写KING.2.在Transaction code字段输入要执行的事务代码,这个是工作中心的导入,因此填写IR01.填写完成后,点击Start recording开始录制。
录制的过程就是创建一个工作中心的过程,创建完一个工作中心后,点击保存,出现如下界面。
点击按钮,将BDC模板下载到本地,文件名为bdc_recording的文本文件。
新建一个EXCEL文件,将单元格的格式改文本格式,将bdc_recording文本文件中的内容复制到这个EXCEL当中,我们来查看bdc_recording文件的结构。
在SAP项目实施时主要有三种批量导入方法:LSMW,CATT,BDC第一种:LSMW-----Legacy System Migration Workbench.The LSM Workbench is an R/3 based tool that support whe n transferring data from non-SAP systems to SAP R/3.T-code: LSMW第二种: CATTCATT(computer aided test tool) screen record, s ystem will not create program.T-code: SCAT第三种: BDCFor batch input or change, system will create program, and you can change the program.T-code: SHDBBDC导入Batch Input是一种数据批量输入SAP系统的辅助程序,SAP系统的资料、格式可以通过Batch Inpu t录入SAP系统Batch Input的机制是模拟事务处理将数据录入R/3系统Batch Input类似SAP的CATT,控制性更好,处理能力更强1、首先我们需要把需要批导入事务的操作步骤记录下来,可以用T-CODE“SHDB”来记录。
在COMMAND LINE中输入“SHDB”。
2、进入TRANSACTION RECORDER界面3、点“NEW RECORDER”创建一个记录,现在以修改订单为例,键入记录名“ZAMAO”,输入事务代码“VA02”,然后“START RECORDING”。
4、下面的任务就是记录下修改订单的操作步骤。
5、填入订单号码,按确定6、现在来增加一下订单的PO DATE。
7、填入“,点“保存”。
8、这样就完成了一个最最简单的BDC录取工作,录完之后会出现系统运行的操作的跟踪,包括程序号,屏幕号,字段名,值等等,下面的任务是根据这些写到程序里面以完成SAP自动跑订单修改的这一动作。
SAPLSMW会计科目批量导入详解SAP LSMW会计科目批量导入详解首先要按如下步骤创建批量导入项目1.输入事物码LSMW,进入系统工作界面。
2.输入需要创建的项目对象名称。
转换对象命名分为三层,分别为项目名(MASTER DATA)、子项目名(FICO)、对象名(FS00)。
3.点击创建按钮4,5 ,6 输入相应短文本描述。
点击7.点击执行项目创建完成后执行,开始进入如下批量导入数据的设置步骤第1步骤:双击如下点击菜单Goto→Recordings Overview 进入屏幕录像界面点击创建录像,弹出对话框对话框需输入录像名称(recording)及描述(Descxxxxription)。
所有者(Owner)是自带出来的值,可不用管理。
本例录像名称为FS00。
输入需要录像的事物代码本例为创建物料主数据,事物代码FS00。
点击进入事物代码的操作录像,录屏有一些注意事项,以后用专门章节加以说明。
按前台FS00操作方法操作进行录屏,录屏时候需要注意,要保证批量导入的字段都要输入值,如果这个录屏数据,该字段刚好是空值,也要输入一个值,回车后,再改回原值,这样可以保证空值字段也能被录到。
回车,点击“控制数据”录制完成后回车,保存。
录屏后如下信息需要注意录屏后的信息分为三层:事物代码(本例为”FS00 总账科目主数据维护”)、录像屏幕(如SAPLGL_ACCOUNT_MASTER_MAINTAIN 2001)、字段信息(如“BH00”)。
按下先默认所有录制的字段都为变量,如果有某些字段是固定的值,可以光标选中该字段,然后按下“Reset”.如果出现像下面那样重复录制的字段,需要删除后面那个,删除方法:将光标位置定在那个字段上,然后点击.,所有类似下面那样有重复的字段都要删除,只保留期中第一次出现的字段。
删除重复字和定义好变量和固定值后按保存,同时将上面录制的字段按如下格式做一个EXCEL表,后面步骤会用到然后按上面字段顺序准备如下批量导入的EXCEL数据模板。
SAP软件批量导入成本中心费用计划
在“SAP软件输入成本中心费用计划”一文中,我们介绍了如何手工录入费用计划,但是这种方式效率不高,今天给大家介绍如何批量导入成本中心费用计划。
批量导入时,也使用事务码KP06,
双击,进入KP06初始界面,
然后选择菜单栏“设置->设置计划者参数文件”,
计划参数文件选择“Z00001”,参数文件Z00001是事先定义好的,如果没有定义,则不能使用批量导入功能。
选择后,返回到上一界面,KP06界面变为下图,
然后下载导入模板,
将如上模板导出,并在Excel中整理好数据,如下。
并且保存为TXT格式的文件。
接下来,选择菜单栏的“附加->Excel计划->上载”,
进入Excel上载界面,
这里的关键,就是导入文件了,文件为TXT格式,一般在Excel 中整理好,保存为TXT文件即可。
另外,要注意一下“十进制记数法”,是以什么作为小数位的分隔符。
执行结果如下,说明计划已经成功导入。
接下来就可以通过报表S_ALR_87013611查看导入的计划了,。
在SAP项目实施时主要有三种批量导入方法:LSMW,CATT,BDC第一种:LSMW-----Legacy System Migration Workbench.The LSM Workbench is an R/3 based tool that support when transferring data from non-SAP systems to SAP R/3.T-code: LSMW第二种:CATTCATT(computer aided test tool) screen record, system will not create pr ogram.T-code: SCAT第三种:BDCFor batch input or change, system will create program, and you can cha nge the program.T-code: SHDBBDC导入Batch Input是一种数据批量输入SAP系统的辅助程序,SAP系统的资料、格式可以通过Batch Input 录入SAP系统Batch Input的机制是模拟事务处理将数据录入R/3系统Batch Input类似SAP的CATT,控制性更好,处理能力更强1、首先我们需要把需要批导入事务的操作步骤记录下来,可以用T-CODE“SHDB”来记录。
在COMMAND LINE中输入“SHDB”。
2、进入TRANSACTION RECORDER界面3、点“NEW RECORDER”创建一个记录,现在以修改订单为例,键入记录名“ZAMAO”,输入事务代码“V A02”,然后“START RECORDING”。
4、下面的任务就是记录下修改订单的操作步骤。
5、填入订单号码,按确定6、现在来增加一下订单的PO DATE。
7、填入“,点“保存”。
8、这样就完成了一个最最简单的BDC录取工作,录完之后会出现系统运行的操作的跟踪,包括程序号,屏幕号,字段名,值等等,下面的任务是根据这些写到程序里面以完成SAP自动跑订单修改的这一动作。
SAP数据批量导入教程与BDC实例详细讲解contents •引言•SAP数据批量导入概述•BDC实例详细讲解:准备阶段•BDC实例详细讲解:执行阶段•SAP数据批量导入实践:案例分享•总结与展望目录01引言03实现数据自动化处理通过编写脚本或使用第三方工具,可以实现数据的自动导入和处理,进一步提高工作效率。
01提高数据导入效率通过批量导入,可以快速将大量数据导入SAP 系统,提高数据处理的效率。
02减少手动输入错误手动输入数据容易出错,而批量导入可以大大减少这种错误的发生。
目的和背景教程范围SAP数据导入基本概念:介绍SAP数据导入的相关概念和术语,帮助读者更好地理解后续内容。
第三方工具介绍:介绍一些常用的第三方工具,如SAP Data Services、Winshuttle等,以及它们的特点和使用方法。
BDC(Batch Data Communication)详解:详细讲解BDC的原理、使用方法和最佳实践,包括如何创建BDC会话、编写BDC程序等。
批量导入实例演示:通过具体实例演示如何使用BDC和第三方工具进行SAP数据批量导入,包括数据准备、02SAP数据批量导入概述批量导入的定义与作用定义批量导入是指将大量数据从外部源快速、高效地导入到SAP系统中的过程。
提高数据录入效率通过自动化工具,减少手动录入,加快数据处理速度。
保证数据准确性减少人为错误,确保数据的完整性和准确性。
促进业务连续性支持定期或实时的数据更新,确保系统数据的实时性和一致性。
SAP系统中的批量导入工具BDC(Batch Data Communicati…SAP提供的标准工具,用于批量导入数据。
它允许用户创建事务脚本,模拟用户在前端执行的事务。
LSMW(Legacy System Migrati…用于从非SAP系统迁移数据到SAP系统。
它支持多种数据源格式,并提供数据转换和映射功能。
Data Services(DS)SAP的数据集成工具,提供ETL(提取、转换、加载)功能,支持复杂的数据转换和清洗需求。
SAP数据批量导入教程文章第59页第4部分为BDC批导入处理教程1.前言1.1.ECATT解释Extended Computer Aided Test Tool(T-code:SECATT)ECATT是SAP自带的功能测试工具,主要目标用来作SAP业务流程的自动化测试,每个测试都会生成一个详细的日志来显示测试流程和测试结果。
和CATT相比,CATT操作简单,类似于BDC的录屏功能,用于常用的简单业务数据导入,基本已被ECATT完全取代。
除了CATT功能之后,ECATT主要应用于基于GUI Windows/Gui Java自动化测试,同时也为外部工具提供了第三方接口(获BC-ECATT授权)。
所有的测试脚本,无论是ECATT自已生成的还是外部工具的他们都应该具有相同的数据对象类型,与SAP结合在一起并保存在相同的位置。
在R/3的功能测试中,ECATT录屏功能简单实用,测试脚本、测试数据、系统数据分别存放,可重复使用,并附有详细测试报告以及纠错功能,作为自带工具简单实用。
对于WEB方面的测试的话就要借用第三方的测试软件,如知名的Mercury的QTP。
1.2.LSMW解释Legacy System Migration Workbench (T-code: LSMW)LSMW, 是SAP推荐用来从旧的系统或非SAP系统把大批量或周期性的数据迁移到SAP的主力工具,类似于ECATT/SCATT,其优点可以在一个Session中处理大批量数据,并灵活易学易用。
如果用BDC 和ECATT只能根据定制好的画面输入参数。
一旦没有这个值系统就会报错。
比喻我们根据业务对FI Account Document或者主数据一些参数作了扩展,一旦参数缺失或者不匹配,不得不终止Session,通过SM35手动去更正或者重新录屏。
LSMW具有一般的通用性,他导入模板的设计过程包括15个步骤,每个都是独立的单元并可进行单独的更新和修改,而不影响其它的模块只需作一些调整做出相应mapping,将必要的数据指定对应的字段就可行了,无需额外的编码。
sap BDC技术BDC(Batch Data Conversion):在SAP系统里,由于某种原因,可能需要重复输入数据,(数据不同,但是操作是相同的,典型的情形就是切换系统的时候,旧系统的数据需要导入SAP),大致过程不外乎是这样:输入一个t-code,进入一个某个屏幕,然后输入一个值(有时还要加上一些附加的checkbox选项等),点执行或者确定按钮,进入另一个屏幕,在某些字段输入值(也可能是标注checkbox选中或者不选中)或者修改这些字段里的值。
BDC技术BDC(Batch Data Conversion):在SAP系统里,由于某种原因,可能需要重复输入数据,(数据不同,但是操作是相同的,典型的情形就是切换系统的时候,旧系统的数据需要导入SAP),大致过程不外乎是这样:输入一个t-code,进入一个某个屏幕,然后输入一个值(有时还要加上一些附加的checkbox选项等),点执行或者确定按钮,进入另一个屏幕,在某些字段输入值(也可能是标注checkbox选中或者不选中)或者修改这些字段里的值。
然后按“Eneter”……最后按“SAVE”……,一条记录完成了,继续下一条,如此循环。
上面所述的情形,如果让一个“人”来做的话,可能是真是受不了的。
但是对于计算机来说,就很简单了。
SAP通过一个特殊的程序(T-code:SHDB)把用户的一次业务操作的所有过程记录下来。
从用户输入transaction code(事务代码),点下“Start Recording”开始,对于用户的来说是一次普通的业务操作,但是SAP却在记录:1.光标放到哪个字段,(在程序中不用改变)2.填入了什么值,(变量,循环中的Internal Table 某个字段)3.点击了什么按钮(在程序中不用改变)本次操作的作为一个“代表”,是一个“模板”,告诉SAP系统以怎样的方式来执行程序,也就是用计算机的语言来描述如果手工操作的话应该是怎样的一个过程。
sap BDC技术BDC(Batch Data Conversion):在SAP系统里,由于某种原因,可能需要重复输入数据,(数据不同,但是操作是相同的,典型的情形就是切换系统的时候,旧系统的数据需要导入SAP),大致过程不外乎是这样:输入一个t-code,进入一个某个屏幕,然后输入一个值(有时还要加上一些附加的checkbox选项等),点执行或者确定按钮,进入另一个屏幕,在某些字段输入值(也可能是标注checkbox选中或者不选中)或者修改这些字段里的值。
BDC技术BDC(Batch Data Conversion):在SAP系统里,由于某种原因,可能需要重复输入数据,(数据不同,但是操作是相同的,典型的情形就是切换系统的时候,旧系统的数据需要导入SAP),大致过程不外乎是这样:输入一个t-code,进入一个某个屏幕,然后输入一个值(有时还要加上一些附加的checkbox选项等),点执行或者确定按钮,进入另一个屏幕,在某些字段输入值(也可能是标注checkbox选中或者不选中)或者修改这些字段里的值。
然后按“Eneter”……最后按“SAVE”……,一条记录完成了,继续下一条,如此循环。
上面所述的情形,如果让一个“人”来做的话,可能是真是受不了的。
但是对于计算机来说,就很简单了。
SAP通过一个特殊的程序(T-code:SHDB)把用户的一次业务操作的所有过程记录下来。
从用户输入transaction code(事务代码),点下“Start Recording”开始,对于用户的来说是一次普通的业务操作,但是SAP却在记录:1.光标放到哪个字段,(在程序中不用改变)2.填入了什么值,(变量,循环中的Internal Table 某个字段)3.点击了什么按钮(在程序中不用改变)本次操作的作为一个“代表”,是一个“模板”,告诉SAP系统以怎样的方式来执行程序,也就是用计算机的语言来描述如果手工操作的话应该是怎样的一个过程。
SAP LSMW会计科目批量导入详解首先要按如下步骤创建批量导入项目1.输入事物码LSMW,进入系统工作界面。
2.输入需要创建的项目对象名称。
转换对象命名分为三层,分别为项目名(MASTER DATA)、子项目名(FICO)、对象名(FS00)。
3.点击创建按钮4,5 ,6 输入相应短文本描述。
点击7.点击执行项目创建完成后执行,开始进入如下批量导入数据的设置步骤第1步骤:双击如下点击菜单Goto→Recordings Overview 进入屏幕录像界面点击创建录像,弹出对话框对话框需输入录像名称(recording)及描述(Descxxxxription)。
所有者(Owner)是自带出来的值,可不用管理。
本例录像名称为FS00。
输入需要录像的事物代码本例为创建物料主数据,事物代码FS00。
点击进入事物代码的操作录像,录屏有一些注意事项,以后用专门章节加以说明。
按前台FS00操作方法操作进行录屏,录屏时候需要注意,要保证批量导入的字段都要输入值,如果这个录屏数据,该字段刚好是空值,也要输入一个值,回车后,再改回原值,这样可以保证空值字段也能被录到。
回车,点击“控制数据”录制完成后回车,保存。
录屏后如下信息需要注意录屏后的信息分为三层:事物代码(本例为”FS00 总账科目主数据维护”)、录像屏幕(如SAPLGL_ACCOUNT_MASTER_MAINTAIN 2001)、字段信息(如“BH00”)。
按下先默认所有录制的字段都为变量,如果有某些字段是固定的值,可以光标选中该字段,然后按下“Reset”.如果出现像下面那样重复录制的字段,需要删除后面那个,删除方法:将光标位置定在那个字段上,然后点击.,所有类似下面那样有重复的字段都要删除,只保留期中第一次出现的字段。
删除重复字和定义好变量和固定值后按保存,同时将上面录制的字段按如下格式做一个EXCEL表,后面步骤会用到然后按上面字段顺序准备如下批量导入的EXCEL数据模板。
SAP数据批量导入的常用方法
在SAP项目实施时主要有三种批量导入方法:LSMW-----Legacy System Migration Workbench. The LSM Workbench is an R/3 based tool that support when transferring data from non-SAP systems to SAP R/3.
T-code: LSMW
第二种:CATT
CATT(computer aided test tool) screen record, system will not create program.
T-code: SCAT
第三种:BDC
For batch input or change, system will create program, and you can change the program.
T-code: SHDB
BDC导入
Batch Input是一种数据批量输入SAP系统的辅助程序,SAP系统的资料、格式可以通过Batch Input录入SAP系统
Batch Input的机制是模拟事务处理将数据录入R/3系统
Batch Input类似SAP的CATT,控制性更好,处理能力更强
1、首先我们需要把需要批导入事务的操作步骤记录下来,可以用T-CODE“SHDB”来记录。
在COMMAND LINE中输入“SHDB”。
2、进入TRANSACTION RECORDER界面
3、点“NEW RECORDER”创建一个记录,现在以修改订单为例,键入记录名“ZAMAO”,输入事务代码“VA02”,
然后“START RECORDING”。
6、现在来增加一下订单的PO DATE。
7、填入“2006.10.01”,点“保存”。
8、这样就完成了一个最最简单的BDC录取工作,录完之后会出现系统运行的操作的跟踪,包括程序号,屏幕号,字段名,值等等,下面的任务是根据这些写到程序里面以完成SAP 自动跑订单修改的这一动作。
* BDC table
DATA: t_bdc LIKE bdcdata OCCURS 0 WITH HEADER LINE,
t_bdcmsg LIKE bdcmsgcoll OCCURS 0 WITH HEADER LINE.
DATA: BEGIN OF t_log OCCURS 0,
information(289) TYPE c, "
END OF t_log.
DATA: v_mode TYPE c VALUE 'N'.
其中TABLE t_bdc中记录的具体的操作步骤,而TABLE t_bdcmsg是记录系统返回的信息,成功与否都记录到自定义的信息表t_log中。
FORM.fm_set_bdc TABLES t_bdc STRUCTURE bdcdata
USING u_sign TYPE c
u_par1
u_par2.
CLEAR: t_bdc.
IF u_sign = 'X'.
t_bdc-program = u_par1.
t_bdc-dynpro = u_par2.
t_bdc-dynbegin = u_sign.
ELSE.
t_bdc-fnam = u_par1.
t_bdc-fval = u_par2.
ENDIF.
APPEND t_bdc.
ENDFORM.
PERFORM. fm_set_bdc:
TABLES t_bdc USING 'X' 'SAPMV45A' '0102',
TABLESt_bdc USING ' ' 'BDC_OKCODE' '/00',
TABLES t_bdc USING ' ' 'VBAK-VBELN' it_display-vbeln,
TABLES t_bdc USING 'X' 'SAPMV45A' '4001',
TABLES t_bdc USING ' ' ' VBKD-BSTDK' '2006.10.01'.
因为此处是修改操作,所以要切记写入的只是你修改的数据,千万别把订单本来的数据也写入t_bdc,如果写入则会把需要修改的所有订单都该成举例的订单的数据,而我们需要修改的仅仅是增加一个PO DATE“2006.10.01”。
然后是调用事物代码:
CALL TRANSACTION 'VA42'
USING t_bdc
MODE v_mode "Background performance
UPDATE 'S' "local updata
MESSAGES INTO t_bdcmsg. "all message table
最后是收集系统信息(成功与否,要是失败,失败的原因)并输出到SAP程序屏幕
READ TABLE t_bdcmsg WITH KEY msgtyp = 'S'
msgid = 'V1'
msgnr = '311'. "批导入成功的标志,可以自己debug表t_bdcmsg中去找.
IF sy-subrc EQ 0.
CONCATENATE '订单号码:'
it_display-vbeln
',项目号:'
it_display-posnr
'修改成功' INTO t_log.
APPEND t_log.
CLEAR t_log.
ELSE.
LOOP AT t_bdcmsg.
IF t_bdcmsg-msgtyp = 'E'
OR t_bdcmsg-msgv1 <> ''
OR t_bdcmsg-msgv2 <> ''
OR t_bdcmsg-msgv3 <> ''
OR t_bdcmsg-msgv4 <> ''.
MESSAGE ID t_bdcmsg-msgid“收集错误信息,并写入自定义的表t_log中。
TYPE 'S'
NUMBER t_bdcmsg-msgnr
WITH t_bdcmsg-msgv1
t_bdcmsg-msgv2
t_bdcmsg-msgv3
t_bdcmsg-msgv4
INTO t_log-information.
CONCATENATE '订单号码:'
it_display-vbeln
',项目号:'
it_display-posnr
'出错:'
t_log-information
INTO t_log-information.
APPEND t_log.
CLEAR t_log.
ENDIF.
ENDLOOP.
ENDIF.
LOOP AT t_log. "显示出错信息
WRITE:/t_log-information.
ENDLOOP.
CATT操作具体方式如下:
1、录制CATT(SCAT>TCD,输入事务码,按前台操作方式操作一遍,在需要输入的地方输入相关内容,直至存盘退出;
2、定义相关需输入字段的名字(在SCAT中选中所保存的CATT,点击修改,双击TCD,双击相关条目,双击相关屏幕的字段进行定义,在此过程中对于不需要的屏幕可以跳过,对于需确认的屏幕可以插入OK code,最后保存,CATT定义即告完成);
3、导出格式文件:在SCAT中,选中所保存的CATT,执行菜单“转到>变式>输出缺省”,系统会导出一个TXT格式的文件;
4、填写数据到该TXT文件:用Excel导出上面导出的文件,在第五行以后的相应列逐行输入每行记录的相关内容(Excel的复制类操作不用讲了),对于内容一样的部分可以不输,以默认值的形式(在录制定义CATT时输入或执行CATT时输入),数据输入完成后,将该文件仍保存为txt格式;
5、执行CATT:在SCAT中,执行所保存的CATT,日志格式及处理方式按需选择,变式选择自文件外部,选择相应的文件,如有必要,在下面的相关字段可以输入缺省值,执行即可。
6、三种处理方式的差别:前台,逐个数据需要你确认,你可能需要不断点击鼠标或按回车,但较直观,不易出错;后台,自动逐条执行,跳过出错条目,出错条目在日志中会体现;错误:自动逐条执行,在出错时暂停,等待确认,建议使用此种方式。
LSMW导入
可来源于教学教学网:。