商用插件 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 创建).客户必须首先创...