sapBADI技术..docVIP

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
sapBADI技术.

商用插件 BADI ? 商用插件是一个基于ABAP对象新的SAP增强技术.这可以被插入到SAP中用来解决那些由于过于特殊而未被包纳进SAP发布的标准产品中的需求.由于特殊的行业往往有特殊的需求,SAP 允许你在你的软件内预定义这些接口点. 就象用户出口,对于本技术有两个不同的界面: 在定义界面,一个程序员在源代码中预定义出口点用来允许特殊的行业企业,合作伙伴,和客户把额外的软件代码附加到SAP标准代码中而不需要修改任何原型对象. 在实施界面,商用插件的使用者可以自定义他们自己需要的逻辑或者使用一个现成的逻辑. 和用户出口不同的是, BADI不再假设一个两层架构(SAP和客户解决方案), 取而代之的是允许一个多层结构(SAP,合作伙伴,和客户解决方案,以及国家版本,行业解决方案等等)BADI的定义和实施可以在这样一个系统架构的各个层面上创建. SAP 保证所有的BADI接口向上兼容.版本更新即不会影响标准版本中增强的调用,也不会影响接口调用的正确性.你不需要在SSCR中注册BADI. BADI增强技术和其它增强技术不同的是,它只能被实施一次并且可以被任何数量的用户同时调用.此外,BADI可以被按照过滤值定义, 这就允许你控制BADI的实施以及使它基于特殊的条件(比如,在某个特殊的国家) 所有的用这个技术创建的ABAP源代码,屏幕,GUI和表的接口都是用一样的习惯定义以允许客户把他们自己的增强加入到标准之中.对于实施一个特殊需求来说,一个包含所有接口的BADI是必要的. 实际的程序代码是用ABAP对象增强的. 为了更好地理解BADI概念背后的开发技术,SAP建议阅读ABAP Object一节. 更多的关于BADI的信息,包含在一下段落中: BADI体系结构 不同增强技术之间的比较 定义BADI 在程序中调用插件 实施BADI 过滤支持 BADI 多重调用 BADI 菜单增强 屏幕增强 BADI: 导入处理 BADI: 体系结构 为了增强一个程序,必须首先定义一个BADI.应用开发者为插件创建一个接口类.增强管理用这个接口类生成一个适配类,因此给客户或合作伙伴打开一个实施途径.你的开发者然后就可以在应用程序中用这个适配类创建一个实例并且在适当的时候调用相应的方法. 客户可以在IMG和 组件层次树里找到.无论何时当他们想要用一个BADI的时候,他们必须创建他们自己的插件实施(这里的实施是名词,用SE19创建).客户必须首先创建方法和用户接口增强,然后激活他们增强的实施.增强的激活的组件然后可以实时调用. 通常,一个BADI包含一个接口类和其它诸如菜单增强的功能代码之类的额外组件.在一些情况下,BADI也包含一些屏幕增强.增强,接口类和其它有关的类都在适当的应用开发名字空间内生成.BADI的实施在创建者的名字空间内生成. 以下的章节内包含一些程序代码,菜单和屏幕增强. 不同增强技术之间的比较? 由于调整R/3以迎合来自各种客户的特殊需求的必要性,过去开发了许多不同的增强技术. 以下简单描述了不同增强技术之间的不同之处. Business Transaction Events (Open FI) 业务交易事件(开放FI) 开放FI增强技术是在财务会计组件内开发的.开放FI基于以下原理: 开发者必须在一个函数模块内定义他们自己的接口,有关(既有的)代码会读去一个分配表,然后已分配的客户代码就可以被动态调用了. 这项技术和其它增强技术之间的不同点是只允许有一次实施,而在任何期望的顺序下调用多个实施以实现增强.在行业层面和国家层面上都可以定义增强. BADI和开发FI背后的概念基本一致.然而,两个增强技术在以下几点上有相互的不同之处: 开发FI只能用于做程序增强,就是说,你只能用开发FI增强源代码.你无法象用BADI一样用开放FI增强用户接口元素. 开放FI假设增强只在三个层次上发生(SAP-业务伙伴-客户),而用BADI你可以在你想要的许多软件层次上创建和实施增强. 开放FI使用函数模块来实现程序增强.对于BADI,是用ABAP对象来做增强程序. Enhancements in Transactions SMOD/CMOD 用事务SMOD/CMOD的增强技术 用事务代码SMOD/CMOD创建增强有一下不足之处: 这个增强技术假设了两层体系结构(SAP-客户). 命名规则事实上不允许名称扩展. 总结: 以上的论及的技术中没有一项能轻松地扩展以实现来自一个包含国家版,行业解决方案,伙伴级以及客户方案地系统架构的需求. 作为一个独立的插件,BADI应该被考虑使用在有限的BTE可以使用的程序包,以及菜单和屏幕增强上.BADI可以在不同的软件层面上创建和使用. 定义BADI? 为了使开发者把BADI包纳到他们的

文档评论(0)

bhzs + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档