本系列将介绍如何在业务流程中结合使用 InfoSphere MDM 和 IBM BPM,将高价值的、受信任的数据提供给业务线。因为两款产品都推出了新版本,所以现在提供了新设计和工具包功能。具体地讲,本系列针对的是 IBM BPM V8.5.5 和 InfoSphere MDM Application Toolkit,二者都包含在 InfoSphere MDM V11.4 中。第 3 部分将通过一些场景来展示如何使用 MDM Application Toolkit 中的服务来实现 InfoSphere MDM 附件和扩展。
附件和扩展可以帮助对您的 Infosphere MDM 应用程序进行自定义。在任何 InfoSphere MDM 应用程序中,通常都有专门针对组织需求的扩展或附件。本教程将介绍如何使用扩展和附件,让 MDM Application Toolkit 从仅与一个基础 InfoSphere MDM 安装交互发展成为能够与自定义环境进行交互。
了解如何在 IBM BPM 中开展 InfoSphere MDM 附件和扩展事务之前,让我们来回顾一下第 1 部分中介绍的 MDM Application Toolkit 中的方法。为了最小化对工具包的变更并提供一些灵活性,设计方法计划在 MDM Application Toolkit 中添加关键的集成服务,以期它们不会在每个交付项目发生更改。第 3 部分教程将介绍特定于项目的需求和 Physical MDM Business Objects Toolkit(MDM Application Toolkit 包中的一个配套工具包)中实现的特定于项目的业务对象。Physical MDM Business Objects Toolkit 的意图是针对每个新交付项目进行更新,防止您需要容纳支持特定项目的业务领域需求的业务对象。
此模式很强大,支持将静态接口定义与特定于项目的业务对象类型定义分离。因此,它提供了容易得多的开发和支持模型,因为它仅更新 Physical MDM Business Objects Toolkit,这带来了新的业务对象类型。
MDM Application Toolkit 提供了许多启动特定于 InfoSphere MDM 的事务的方法。本教程后面部分介绍的 InfoSphere MDM 事务将讨论 Physical MDM Composite Txn
方法,如图 1 所示:
图 1. MDM Application Toolkit 中的 Physical MMDM Composite Txn
方法
此方法可支持所有复杂的 InfoSphere MDM 事务。事实上,在发表本文时, Physical MDM Composite Txn
服务是您的复杂事务所需的唯一服务,用于在 IBM BPM 和 InfoSphere MDM 之间实现点对点交互,包含 InfoSphere MDM 附件、扩展和服务构成的实现。
第 1 节将介绍如何创建 InfoSphere MDM 附件。
附件 通过使用与现有 InfoSphere MDM 代码独立的新代码和数据库表来添加新功能。
在您创建附件时引入的所有业务对象都与现有的数据元素和事务完全独立,而且它们在添加新功能的同时不会影响现有功能。您可以通过以下方式使用附件:
提示:您可以扩展 InfoSphere MDM 使用的通用服务。例如,您可以扩展通知来添加新的通知类型。
通过 IBM BPM 实现 InfoSphere MDM 附加事务,或许是本教程中介绍的最容易的操作之一。完成以下步骤:
图 2. MDM Application Toolkit 中的 Physical MDM Business Objects Toolkit
Generate Physical MDM Objects
集成服务。在该服务的 Implementation 选项卡上,键入您的 WSDL URI 并单击 Generate Types 。按照向导中的步骤选择必要的业务对象并完成生成过程。 图 3. Physical MDM Business Objects Toolkit 中的示例业务对象列表
Physical MDM Business Objects Toolkit 现在已准备好用于 InfoSphere MDM 事务。现在您可以打开包含您的集成服务的流程应用程序,以便映射变量。
创建一个一般系统包装器服务来持有 InfoSphere MDM 事务集成,就像 MDM Application Toolkit 提供的内置事务一样。图 4 显示了为某个特定的集成服务(在本例中为 InfoSphere MDM 集成服务)创建 Data Access Service 包装器的常用方法。
图 4. 用于 Physical MDM Composite Txn
服务的示例包装器服务
Physical MDM Composite Txn
服务的示例包装器服务
根据事务来创建映射。如果一个 SOAP 示例请求可用,可以使用该请求结构来创建初始化映射,如图 5 中的示例所示。
图 5. 输入变量的示例初始化和映射
请注意,第 11 行中的事务名称必须与添加的事务的名称相同。
按照与内置的 MDM Application Toolkit 服务相同的步骤,将所需的对象映射回 IBM BPM 业务对象。使用图 6 中的示例作为参考。
图 6. 对输出变量的响应的示例映射
扩展 是一种自定义代码,它们通过扩展数据元素或扩展现有事务的行为来提供额外功能。这些扩展的功能在运行时由默认的 InfoSphere MDM 代码提供补充。
要在 IBM BPM 中实现 InfoSphere MDM 扩展事务,可以执行与实现附件相同的初始步骤,还可以执行一些额外的步骤。
XObjectBObjExt
的索引与删除的 TCRMExtension
对象的索引相同。换句话说,新生成的类型应取代 TCRMExtension
占位符类型,保持父业务对象类型中的相同顺序。 例如,来自原始 Physical MDM Business Objects Toolkit 的 TCRMOrganizationBObj
对象在 OrganizationLastUpdateTxId
属性后有一个 TCRMExtension
属性,如图 7 所示。
图 7. 包含 TCRMExtension 占位符属性的示例业务对象
生成扩展 WSDL 文件后, TCRMExtension
属性被替换为 XorganizationBobjExt
属性,并具有相同的邻近属性顺序,如图 8 所示。
图 8. (导入与扩展相关的业务对象后)具有 XorganizationBobjExt 属性的示例父业务对象
现在您可以打开包含您的集成服务的流程应用程序,以便映射变量。
在更新 Physical MDM Business Objects Toolkit 后,就可以使用您的新业务对象类型了。您可以按照在 General System 服务中使用标准 InfoSphere MDM 事务的相同步骤进行操作。
按照相同的逻辑,所有打算使用新扩展的属性的现有业务对象类型都需要添加相应类型的属性。例如,组织业务对象使用 xDomicileStateType
和 xDomicileStateValue
属性进行了扩展,如图 9 所示。
图 9. 使用 xDomicileStateType 和 xDomicileStateValue 属性进行扩展的 MDM 相关业务对象的示例
出于映射目的,现有的 IBM BPM OrganizationBO
类型必须使用相同类型的属性进行扩展,如图 10 所示。
图 10. 使用 xDomicileStateType 和 xDomicileStateValue 属性进行扩展的组织业务对象类型示例
采用与初始化内置 MDM Application Toolkit 事务相同的方式初始化扩展事务变量。唯一的区别在映射中。使用事务需求,如图 11 所示:
图 11. 初始化扩展事务变量的示例
请注意,IBM BPM 对象类型的表示与 SOAP 请求中的相应类型稍有不同。IBM BPM 中的 InfoSphere MDM 事务只需直接添加为父业务对象的子对象的扩展对象。但是,请注意,SOAP 标头包含 TCRMExtension
业务对象,如图 12 所示。
图 12. 包含扩展业务对象的 SOAP 标头示例
InfoSphere MDM 事务自动将输入业务对象转换为正确的格式。根据 SOAP 标头定义的需要,它将创建 TCRMExtension
包装器。
出于响应映射用途而对变量进行初始化,初始化的模式与针对内置 MDM Application Toolkit 事务对象的模式相同。新扩展业务对象位于它们的父业务对象中,如图 13 所示:
图 13. 对象与 IBM BPM 业务对象的响应映射的示例
您学习了如何使用 IBM InfoSphere MDM 产品中包含的 MDM Application Toolkit,在 IBM BPM 中实现 InfoSphere MDM 附件和扩展服务。有关 MDM Application Toolkit 安装步骤和前提条件的更详细概述,请参阅本系列的第 1 部分。
除了本教程中介绍的使用 InfoSphere MDM 附件的具体细节之外,您的集成工作的剩余部分应遵循在 IBM BPM Standard 中创建集成服务的 IBM BPM 领先实践。例如,结合使用 Data Access Services (DAS) 模式和构建包装器服务,将 InfoSphere MDM 的连接和映射细节封装在 DAS 服务中。此方法可以保持数据和业务逻辑层之间的解耦和关注点分离。
附件和扩展只是您可能为 InfoSphere MDM 考虑的高级用例的一部分。在第 4 部分中,您将学习如何使用 MDM Application Toolkit 中的合成功能(包括 XML 和业务代理),使业务用户能够访问他们所需的数据。
感谢 Jay Limburn 为本教程提供重要反馈并为该工具包提供支持。