FRR NAK 处理程序示例工作原理

示例 FRR NAK 自定义处理程序充当 FIN 响应对帐 (FRR) 业务流程和消息修复业务流程之间的中介。 FRR 业务流程标识 SWIFT 网络尝试接收消息时发生的错误。 FRR 业务流程的输出是包含错误对象的单部分消息。 FRR NAK 自定义处理程序将消息转换为由两部分构成的消息,其中错误部分指示发生的错误,使消息修复业务流程能够选取该消息。 消息修复业务流程在 InfoPath 窗体中打开消息,使你能够找出错误是什么,相应地修复消息,然后重新提交它,以便BizTalk Server可以将其重新发到 SAA。

当 FRR NAK 自定义处理程序处理 SWIFT 网络无法成功接收的消息时,将执行以下步骤:

  1. 在 FRR 业务流程将失败的消息关联到MTS21_FIN_ACKNAK NAK 消息后,RepairSWIFTRejectedMessage 业务流程 (自定义处理程序) 从 MessageBox 选取原始消息。 之所以这样做,是因为它筛选A4SWIFT_FRRFailed==True 和A4SWIFT_SendingServiceType=“A4SWIFT_FrrService”。

  2. 自定义处理程序不会选取 FRR 与原始消息关联的MTS21_FIN_ACKNAK NAK 消息。 相反,它会创建错误集合对象,使用 BRE 验证错误填充该对象,该错误指示A4SWIFT_FRRFailedReason属性是什么,并将其添加到原始消息中。 消息修复业务流程可以处理此由两部分构成的消息。

  3. 自定义处理程序升级以下属性,使消息修复业务流程选取消息:A4SWIFT_Failed==True、A4SWIFT_SwiftBound==True 和 BTS。Operation=“A4SWIFT_DASMMarkedAsFailed”。 它将部件数属性设置为 2,并设置相应的错误属性。

  4. 由于升级的属性,消息修复业务流程将选取消息,而 RepairSWIFTRejectedMessage 业务流程将终止。