步骤 1:修改 vPrev BizTalk 项目以调用 RFC

第 1 步(共 3 步)

完成时间: 10 分钟

目的: 在此步骤中,你将对现有 vPrev BizTalk 项目进行以下更改:

  • 使用基于 WCF 的 SAP 适配器为 SD_RFC_CUSTOMER_GET RFC 生成元数据。

  • 将使用 vPrev SAP 适配器调用 RFC 的请求消息映射为使用基于 WCF 的 SAP 适配器调用 RFC 的请求消息。

  • 将使用基于 WCF 的 SAP 适配器收到的响应消息映射到 vPrev SAP 适配器的响应消息。

先决条件

  • 必须有 vPrev BizTalk 项目才能调用 SAP 系统中的 SD_RFC_CUSTOMER_GET RFC。

修改 vPrev BizTalk 项目

  1. 使用基于 WCF 的 SAP 适配器为 SD_RFC_CUSTOMER_GET RFC 生成元数据。 可以使用“Consume Adapter Service BizTalk Project 加载项”生成元数据。

    有关如何为 RFC 生成元数据的方法,请参阅 浏览、搜索和获取 SAP 中 RFC 操作的元数据。 生成架构后,会将名称类似于 SapBindingSchema.xsd 的文件添加到 BizTalk 项目。 此文件包含用于使用基于 WCF 的 SAP 适配器调用SD_RFC_CUSTOMER_GET的架构。

  2. 生成 SD_RFC_CUSTOMER_GET RFC 的元数据时,还会创建一个端口绑定文件。 在下一步中,此绑定文件将用于创建 WCF-Custom 发送端口以将消息发送到 SAP 系统。 该操作的 SOAP 动作也被设置为据其生成的元数据的操作。 例如,如果为 SD_RFC_CUSTOMER_GET RFC 生成元数据,则发送端口上的 SOAP作中的作名称将为“SD_RFC_CUSTOMER_GET”。 但是,作为业务流程一部分创建的逻辑发送端口上的作名称可能有所不同,例如“Operation_1”。 因此,使用发送端口将消息发送到 SAP 系统时,会收到错误。 若要防止出现这种情况,请确保业务流程中逻辑发送端口上的操作名称与生成元数据的操作名称相同。

    在本教程中,由于您为 SD_RFC_CUSTOMER_GET RFC 生成了元数据,请将逻辑发送端口操作的名称更改为“SD_RFC_CUSTOMER_GET”。

  3. 对于请求消息,请将使用 vPrev SAP 适配器生成的架构映射到使用基于 WCF 的 SAP 适配器生成的架构。

    1. 将 BizTalk 映射器添加到 BizTalk 项目。 右键单击 BizTalk 项目,指向 “添加”,然后单击“ 新建项”。

      在“ 添加新项 ”对话框中的左窗格中,选择“ 映射文件”。 在右窗格中,选择“映射”。 指定映射的名称,例如 RequestMap.btm。 单击 添加

    2. 在“源架构”窗格中,单击“ 开放源代码架构”。

    3. BizTalk 类型选取器 对话框中,展开项目名称、展开 “架构”,并为 vPrev SAP 适配器的请求消息选择架构。 对于本教程,请选择 SAP_Migration.SD_RFC_CUSTOMER_GET__x32003,然后单击“ 确定”。

    4. “源架构的根节点 ”对话框中,选择 SD_RFC_CUSTOMER_GET_Request,然后单击“ 确定”。

    5. 在“目标架构”窗格中,单击“ 打开目标架构”。

    6. BizTalk 类型选取器 对话框中,展开项目名称、展开 “架构”,并为基于 WCF 的 SAP 适配器的请求消息选择架构。 对于本教程,请选择 SAP_Migration.SapBindingSchema,然后单击“确定”。

    7. “目标架构的根节点 ”对话框中,选择 SD_RFC_CUSTOMER_GET,然后单击“ 确定”。

      将这两个方案中的相应元素进行映射,如下图所示。 使用 String Left Trim functoid 映射CUSTOMER_T元素。 为此,请从工具箱中拖动字符串左侧修剪功能体,并将其放在映射器网格上。 将源架构中的 CUSTOMER_T 元素连接到 functoid。 同样,将目标架构中的 CUSTOMER_T 元素连接到 functoid。 下图演示了如何通过 functoid 映射这两个元素。

      映射适配器版本 之间的请求消息

      注释

      有关 String Left Trim 功能体的详细信息,请参见“String Left Trim Functoid”于https://go.microsoft.com/fwlink/?LinkId=105774

    8. 保存地图。

  4. 对于响应消息,请将使用 vPrev SAP 适配器生成的架构映射到使用基于 WCF 的 SAP 适配器生成的架构。

    1. 将 BizTalk 映射器添加到 BizTalk 项目。 右键单击 BizTalk 项目,指向 “添加”,然后单击“ 新建项”。

      在“ 添加新项 ”对话框中的左窗格中,选择“ 映射文件”。 在右窗格中,选择“映射”。 指定地图的名称,例如 ResponseMap.btm。 单击 添加

    2. 在“源架构”窗格中,单击“ 开放源代码架构”。

    3. BizTalk 类型选取器 对话框中,展开项目名称、展开 “架构”,并为基于 WCF 的 SAP 适配器的响应消息选择架构。 对于本教程,请选择 SAP_Migration.SapBindingSchema,然后单击“ 确定”。

    4. “源架构的根节点 ”对话框中,选择 SD_RFC_CUSTOMER_GETResponse,然后单击“ 确定”。

    5. 在“目标架构”窗格中,单击“ 打开目标架构”。

    6. BizTalk 类型选取器 对话框中,展开项目名称、展开 “架构”,并为 vPrev SAP 适配器的响应消息选择架构。 对于本教程,请选择 SAP_Migration.SD_RFC_CUSTOMER_GET__x32003,然后单击“ 确定”。

    7. “目标架构的根节点 ”对话框中,选择 SD_RFC_CUSTOMER_GET_Response,然后单击“ 确定”。

    8. 将这两个方案中的相应元素进行映射,如下图所示。

      映射适配器版本 之间的响应消息

    9. 保存地图。

  5. 保存并生成 BizTalk 解决方案。 右键单击解决方案,然后单击“ 生成解决方案”。

  6. 部署解决方案。 右键单击解决方案,然后单击“ 部署解决方案”。

后续步骤

创建一个 WCF-Custom 发送端口,并将其配置为使用您在此步骤中创建的映射,如 步骤 2:在 BizTalk Server 管理控制台中配置业务流程 中所述。

另请参阅

教程 2:迁移 SAP RFC BizTalk 项目