升级 ABAP 处理程序

升级 ABAP 处理程序包括两个步骤。

  1. 解决在将 ABAP 处理程序引入到具有另一版本的 ABAP 扩展模块的环境中时可能会产生的任何编译错误。
  2. 评估业务对象在更新版本的 SAP R/3 中提供的功能。例如,业务对象可能运行正常,但是不返回正确的信息;或者业务对象可能不再起作用,因为 SAP 更改了“调用事务”的屏幕。

本节详细描述了第一个步骤的过程,例如,将业务对象的 ABAP 处理程序打包并对可能会发生编译冲突的地方提供了指导。本节未说明第二个步骤。有关扩展对象的功能的更多信息,请参阅为 ABAP 扩展模块开发业务对象

注意: 一旦升级了业务对象,即使它最初是由 IBM 开发的,也认为它是定制工作。

在下列情况下需要升级 ABAP 处理程序:

升级过程实质上是相同的。唯一的区别就是升级先前实现的业务对象要求您在第二步中将业务对象打包到传送文件中。

注:
如果 SAP R/3 V4.6 中具有不利用 IBM 产品名称空间的业务对象,则需要将这些业务对象升级到该名称空间。

要将适配器提供的 ABAP 处理程序从一个 SAP R/3 版本升级到另一个版本:

  1. 验证是否为您的 SAP R/3 版本安装了最新版本的 ABAP 扩展模块传送文件。
  2. 将现有业务对象打包到传送文件中。注意,如果要升级尚未进行修改以便符合您的实现的业务对象,则跳到步骤 3,原因是您应当能够使用已装入的原始传送包。

    对于每个业务对象应该包括的内容,使用适配器提供的传送文件作为模板。这可能包括功能组、IDoc 定义以及动态检索和动态传输数据。

  3. 仅对于 SAP R/3 V3.x 系统中的 IDoc,捕获 IDoc 的结构和段定义,然后在新系统中手工重新创建它们。

    如果没有 SAP R/3 V3.x 环境和 IDoc,则跳过此步骤。

  4. 安装业务对象传送文件。应该让您的本地 Basis 管理员安装在步骤 1 中打包的业务对象的传送包。

    Basis 管理员应当使用可用于传输的所有覆盖代码。这会强制将业务对象加入环境中,即使存在编译错误也是如此。在导入业务对象之前,Basis 管理员应知道您在导入过程中可能会遇到不一致的情况。

  5. 编译所有程序并解决与 ABAP 开发相关联的语法错误。

    查找语法错误的最简单方法就是生成与每个业务对象相关联的每个功能组,然后一次修正一个错误。重复此过程,直到成功编译了所有功能组为止。务必生成与功能组不相关联的任何其它程序(例如,触发程序)。要知道,在应用了必需的新传送包来升级适配器之后,可能需要对 ABAP 触发程序进行很小的更新。

    如果要升级到 SAP R/3 V4.x,应记住 4.x ABAP 处理程序使用 IBM 产品名称空间 /CWLD/。有关升级到支持 SAP R/3 V4.x 的连接器的特殊注意事项,请参阅SAP R/3 的连接器

  6. 应用事件检测机制。

    对于用户出口来说,精确位置现在可能会有所不同。搜索关键的 SAP 代码行以确定最接近的位置。

  7. 测试新环境并进行必要的修改。

    只有进行全面的系统测试才能使您能够解决与升级有关的任何问题。通过运行适当的事务或程序并将业务对象发送至 SAP 系统来测试事件检测机制。使用 SAP 系统中连接器的日志来帮助确定其它问题。

Copyright IBM Corp. 1997, 2004