SAP数据批量导入的常用方法
sap数据批量导入教程、BDC实例详细讲解步骤

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三种批量导入方法

在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自动跑订单修改的这一动作。
2024年SAPSECATT数据批量导入功能

04
功能实现原理及技术支持
2024/2/29
16
批量导入技术原理简述
2024/2/29
数据格式转换
SAPSECATT通过特定的数据格式转换工具,将外部数据源(如Excel、CSV等)转换为SAP系统可识别的数据格式, 以便进行后续的数据导入处理。
批量处理
利用SAP系统的批量处理功能,实现对大量数据的快速、高效导入。通过一次性加载多个数据记录,减少了单条记录 逐一处理的时间消耗,提高了数据导入效率。
感谢观看
2024/2/29
28
错误处理技术
SAPSECATT提供了完善的错误处理技术,包括错误识别、错误定位、错误修复等功能。 在数据导入过程中遇到错误时,可以迅速定位并解决问题,保证数据导入的顺利进行。
日志记录技术
通过日志记录技术,详细记录数据导入过程中的操作信息、错误信息等,便于后续的问题 排查和审计。
18
与其他相关系统集成关系
02
在批量导入页面中,点击“选择文件”按钮,从本 地计算机中选择要导入的数据文件。
03
点击“上传”按钮,将选定的数据文件上传到 SAPSECATT系统中。
13
设置导入参数及规则
2024/2/29
在批量导入页面中,根据实际需要设 置导入参数,如数据格式、分隔符、 文本限定符等。
根据数据文件的字段和SAPSECATT系 统中的数据结构,设置字段映射规则 ,确保数据能够正确导入到相应的字 段中。
8
數據格式转换与标准化
數據清洗
去除重複、無效或錯誤的數 據,確保數據的準確性和一 致性。
格式轉換
將不同來源的數據格式轉換 為SAPSECATT可識別的標準 格式,如CSV、XML等。
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数据批量导入的常用方法:在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批导入处理教程

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批量导入数据

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中。
SAP BDC数据导入简介

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文件的结构。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
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,日志格式及处理方式按需选择,变式选择自文件外部,选择相应的文件,如有必要,在下面的相关字段可以输入缺省值,执行即可。
2 操作截图2.1 录制CATT,在此以MM02为例。
点击上图中的“TCD”,会出现以下界面,输入要录制的TCODE,在此以MM02为例。
以下进入MM02的操作界面,按照正常步骤走即可。
假定要完成修改“MRP类型”和“序号参数文件”的操作记录。
将“MRP类型”修改为“ND”将“序列号参数文件”修改为“Z001”修改完毕后,点击“保存”,出现以下界面:在上个界面中点击“结束记录”,进入下面的界面在上述界面中点击“保存”在此仅为事例,保存到本地,实际中可根据自己需要选择保存位置。
2.2 更改记录选中刚才保存的测试情况,点击“修改”,如图所示:进入到修改界面之后,双击TCD,即可修改记录的详细步骤,如图所示:选择屏幕编号,双击进去:将某些字段做成变量,例如“物料”等,实际可根据需要设置设置成变量之后,界面上相应的字段输入出会变成灰色,如图:同理,设置其他需要设置为变量的字段。
比如此例中“工厂”、“库存地”等。
然后点击保存即可。
注意:有时记录操作完成后,会记录一些不必要的屏幕或者操作,这些不必要的操作有时会影响正常运行,所以需要将这些记录删除。
2.3 输出缺省值按照如下图路径操作:将缺省值文件保存到本地,在此以放在桌面为例。
2.4 准备批输入文件。
在一个EXCEL文档中打开刚才保存到本地的TXT文件,将数据按照特定格式输入,并保存。
2.5 执行CATT注意:三种“处理方式”的差别:前台,逐个数据需要你确认,你可能需要不断点击鼠标或按回车,但较直观,不易出错;后台,自动逐条执行,跳过出错条目,出错条目在日志中会体现;错误:自动逐条执行,在出错时暂停,等待确认,建议使用此种方式。
“变式”一般都会选择“自文件外部”点击“选择”,选择刚才编辑完保存的txt文件即可。
执行完之后,会出现日志,可以查看输入参数。
3注意事项在录制记录的过程中不能出现错误类型的系统消息,否则需要重新录制用于录制记录的这条数据已经进入系统,批导入的时候应该从文件中删除,否则报错。
CATT不支持长文本CATT不支持鼠标翻页,录制记录时,若要翻页,要使用键盘。
执行CATT时最好先在文本中准备一条数据,运行,测试结果是否正确。
二、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 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中。
FORM.fm_set_bdc TABLES t_bdc STRUCTURE bdcdataUSING u_sign TYPE cu_par1u_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_bdcMODE v_mode "Background performanceUPDATE 'S' "local updataMESSAGES 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-msgnrWITH t_bdcmsg-msgv1t_bdcmsg-msgv2t_bdcmsg-msgv3t_bdcmsg-msgv4INTO t_log-information.CONCATENATE '订单号码:'it_display-vbeln',项目号:'it_display-posnr'出错:'t_log-informationINTO t_log-information.APPEND t_log.CLEAR t_log.ENDIF.ENDLOOP.ENDIF.LOOP AT t_log. "显示出错信息WRITE:/t_log-information.ENDLOOP.三、LSMW导入可来源于教学教学网:。