SAP ABAP - 业务插件


在某些情况下,需要在软件应用程序中预定义特殊功能以增强各种应用程序的功能。有许多 Microsoft Excel 加载项可以改进 MS Excel 的功能。同样,SAP 通过提供称为 BADI 的业务加载项来促进某些预定义功能。

BADI是一种增强技术,可以帮助SAP程序员、用户或特定行业向SAP系统中的现有程序添加一些额外的代码。我们可以使用标准或定制的逻辑来改进SAP系统。必须首先定义 BADI,然后实施它以增强 SAP 应用程序。定义 BADI 时,会创建一个接口。BADI 由该接口实现,而该接口又由一个或多个适配器类实现。

BADI 技术与其他增强技术有两个不同之处:

  • 强化技术只能实施一次。
  • 这种增强技术可以被许多客户同时使用。
强化技巧

您还可以创建过滤器 BADI,这意味着 BADI 是基于过滤数据定义的,而增强技术无法实现这一点。BADI 的概念已在 SAP 7.0 版中重新定义,目标如下:

  • 通过在 ABAP 语言中添加两个新元素“GET BADI”和“CALL BADI”来增强 SAP 系统中的标准应用程序。

  • 提供更灵活的功能,例如上下文和过滤器,以增强 SAP 系统中的标准应用程序。

当BADI被创建时,它包含一个界面和其他附加组件,例如用于菜单增强和屏幕增强的功能代码。BADI 创建允许客户将自己的增强功能包含在标准 SAP 应用程序中。增强、接口和生成的类位于适当的应用程序开发命名空间中。

因此,BADI 可以被视为一种增强技术,它使用 ABAP 对象在 SAP 组件中创建“预定义点”。然后,这些预定义的点由各个行业解决方案、国家/地区变体、合作伙伴和客户实施,以满足他们的特定要求。SAP实际上在4.6A版本中引入了BADI增强技术,并且在7.0版本中再次重新实现了该技术。