BAPI、badi 和 LSMW 的相同点和不同点及具体操作
一开始badi、BAPI、LSMW关系极其混乱,好像都是传输数据, just transfer data from SAP system to non-SAP system or transfer data from SAP system to SAP system.......confused.
他们仿佛都是异曲同工之妙,但是既生瑜何生亮。So,
经过一番对混乱的信息来源进行筛选后,我还是得从概念入手:
在SAP系统中,批处理操作有多种方法。如果是对一个事物码(TCODE)进行批处理操作,常用的是LSMW。
LSMW全称是Legacy System Migration Workbench。它能够对静态数据(如各个主数据)、动态数据(如初始化库存)、业务数据(如销售订单)等进行成批操作,是上线数据准备的主力武器。
只能导入SAP系统固有类型的主数据,例如,Customer Master,Material Master,FINANCIAL DOCUMENT GL ACCOUNT 等等。如果自己创建了一个ABAP程序,LSMW就不能实现对它的控制。
第一次进入LSMW,会有提示框 The LSMW is an R/3 based tool that supports you when transferring data from non-SAP system to SAP R/3。
。。。waiting for update
原则是能用BAPI就不用bdc。一般bdc用于一些无关紧要的、边角的批数据的处理,
简单地讲BDC就是先把相应事务的处理过程录制下来,然后让系统自动执行特定的事务过程,在执行的过程中把需要传输的数据输入进去。所以可以看出BDC的优点是并不要求使用者对业务知识有多了解,只要相应的过程可以录制下来,就可以反复执行录制的过程,把数据输入系统。但BDC有一个缺点,就是输入数据时,如果项目栏的记录很多而需要换页时,不同的程序可能换页方式不同,并且不同的显示器所显示的行项目数量也不一样多,会出现执行不下去或者遗漏数据的情况,这个问题比较棘手。
BDC: Batch Data Conversion. BDC的流程:
1.Tcode:SHDB
进入Transaction Recording界面,选择new recording,输入一个Tcode ,开始录屏。(不要有错误操作)
2.录完屏后,保存,后退。回到Transaction Recording界面,选择‘program',生成一个程序(source code),在源程序里修改你要的的代码。这里一般用CALL FUNCTION GUI_UPLOAD,上传文件。执行program,上传数据有2种方式:
1)Generate session
首先生成一个会话,像其它大方式的上传数据一样, 在之后通过SM35 执行此会话进行真正的数
据上传
2)call transation
当执行BDC 程序时就直接上传数据
session和transaction 的区别:
Session:1)同步处理
2)上传大量的数据
3)速度慢
4)错误可以被创建
5)生成Session后,数据才可以被更新
Transaction:1)异步处理
2)上传少量数据
3)速度快
4)错误需要外部处理
5)数据自动更新
BAPI、badi 和 LSMW 的相同点和不同点及具体操作的更多相关文章
- JSP 和 Servlet 有哪些相同点和不同点,他们之间的联系是什么?
JSP 和 Servlet 有哪些相同点和不同点,他们之间的联系是什么? 联系: JSP 是 Servlet 技术的扩展,本质上是 Servlet 的简易方式,更强调应用的外表表达. JSP编译后是& ...
- 谁可以说出HashMap和HashSet的相同点和不同点。
谁可以说出HashMap和HashSet的相同点和不同点. 2011-11-15 20:46ruoshui_t | 浏览 20310 次 Perl 2011-11-15 21:17 #知道行家专业创 ...
- .call()和.apply()相同点与不同点
.call()和.apply()相同点与不同点 function add(a,b) { alert(a+b); } function sub(a,b) { alert(a-b); } add.call ...
- 数据库中删除语句Drop、Delete、Truncate的相同点和不同点的比较
数据库删除语句的分别介绍: Delete:用于删除表中的行(注:可以删除某一行:也可以在不删除表的情况下(即意味着表的结构.属性.索引完整)删除所有行) 语法:删除某一行:Delete From 表名 ...
- React中props和state相同点和不同点
朋友们,我想死你们了,最近这几天忙着和病魔作斗争所以没怎么写博客,今天感觉好点了,赶紧来写一波,就是这木敬业. 今天我们来讨论讨论props和state相同点和不同点 首先我来概要说明一下这两者 pr ...
- JSP和Servlet的相同点和不同点、有何联系。
JSP 和 Servlet 有哪些相同点和不同点,他们之间的联系是什么? 联系: JSP 是 Servlet 技术的扩展,本质上是 Servlet 的简易方式,更强调应用的外表表达. JSP编译后是& ...
- Swift中的类和结构体的相同点与不同点
相同点: 1.都是有内部变量和函数 2.都可以有内部下标方式去取属性 3.都可以有初始化函数 4.都可以用协议 不同点: 1.类有继承 2.类可以多重引用 3.类有析构
- 自增或自减例子:i++和++i的相同点和不同点
/* Name:++i和i++的区别 Copyright: By.不懂网络 Author: Yangbin Date:2014年2月15日 02:40:27 Description:熟悉前自增或自减的 ...
- 简述RIP路由协议和OSPF路由协议的相同点和不同点。
路由协议分为静态路由协议和动态路由协议.动态路由协议有很多种,如RIP.OSPF.EIGRP等. 1.RIP(路由信息协议)是路由器生产商之间使用的第一个开放标准.RIP有两个版本:RIPv1和RIP ...
随机推荐
- python 列表合并
列表合并主要有以下方法: 1.用list的extend方法,L1.extend(L2),该方法将参数L2的全部元素添加到L1的尾部 结果:[1, 2, 3, 4, 5, 1, 20, 30] 2.用切 ...
- mvn test 中文乱码
有两种解决办法: 1.设置encoding:<argLine>-Dfile.encoding=UTF-8</argLine>,解决读取文件中的中文乱码问题 2.升级maven- ...
- Android之——获取手机安装的应用程序
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/47114331 前几篇有关Android的博文中.向大家介绍了几个项目中经常使用的有 ...
- [TypeScript] Dynamically initialize class properties using TypeScript decorators
Decorators are a powerful feature of TypeScript that allow for efficient and readable abstractions w ...
- Unity3D使用TCP/IP协议,传递protocol buffer消息protobuf-net
原文:http://my.oschina.net/faint/blog/296785 第一部分 dll 1 下面大多数内容,都是使用c#编译的dll来实现的. 2 编译为dll后,要拖放到unity3 ...
- js获取100个随机数存入数组
. //js获取100个随机数存入数组 $(function () { var arr = []; ; var str = ""; ) { , ); ) { arr[num] = ...
- 一个文件查看你选择 Run as Android applications 都干了啥
<?xml version="1.0" encoding="UTF-8"?> <project name="PushFastDemo ...
- find命令下排除部分目录修改权限
#!/bin/bash # 项目文件夹.文件权限修改 # 批量修改文件夹或者文件的权限时,需要先忽略掉可写文件夹('./bootstrap/cache'.'./public/attachments'. ...
- linux 进入 GNOME X 界面
CentOS 安装Gnome CentOSVmwareLinuxBlogHTML 刚开始装系统的时候,没有选Gnome或者KDE,现在想装个玩玩. 简单的安装可以参考这个:http://huruxi ...
- mysql分组取最大(最小、最新、前N条)条记录
在数据库开发过程中,我们要为每种类型的数据取出前几条记录,或者是取最新.最小.最大等等,这个该如何实现呢,本文章向大家介绍如何实现mysql分组取最大(最小.最新.前N条)条记录.需要的可以参考一下. ...