本流程通过创建并发送初始的 RNIF 业务消息,在发起方系统中启动 RosettaNet 实现框架 (RNIF) 消息传送。
发起方公用流程中的消息流
通过发起方公用流程的消息流如下:
发起方公用流程通过服务内容端口从专用流程接收服务内容和附件。
然后,该公用流程向专用流程发送响应,而不进行进一步的处理。
如果公共进程收到Microsoft BizTalk Accelerator for RosettaNet (BTARN) 未成功发送消息的通知,则公共进程将该状态发送回发起方专用进程,然后结束。
如果公共进程收到 BTARN 成功发送消息的通知,则进程将进入等待状态 (等待响应方) 的操作。
以下操作可以结束等待状态:
公用流程收到响应方的确认信号。
如果要求信号的不可否认性(按照流程配置中的设置),则该流程将读取摘要,使信号中的摘要与原始操作消息中的摘要相关联,然后持久保留该信号。
公用流程将信号的头和服务内容发送到专用流程。
公用流程从响应方接收双操作响应消息。
该流程提取响应消息中的服务内容和头,然后将其发送到专用流程。
如果活动是同步的,则该流程将使用前导头、服务头和(限于 RNIF 2.01)传递头对服务内容消息部分进行包装,从而构造 RNIF 信号消息。 该流程使用参与方之间的贸易合作伙伴协议中存储的以下信息来创建前导头和头:一是源参与方和目标参与方的配置信息,二是 PIP 变量; 然后,将信号消息发送到响应方。
如果活动是异步的,则该流程结束。
公用流程从响应方接收失败通知 (NoF) 消息, 并将相应的状态消息发送到发起方专用流程。 然后,发起方专用流程对错误进行处理,并结束公用和专用流程。
在确认时间期(按照在流程配置中的设置)内,公用流程未收到响应方的确认信号。 如果这样的话,会出现下列情况之一:
如果重试次数(按照流程配置中的设置)还没有到零,并且活动是异步的,则公用流程将再次发送消息。
如果重试次数(按照流程配置中的设置)还没有到零,并且活动是同步的,则公用流程将启动一个 0A1 消息。
注意
CIDX 不支持 0A1 消息。
如果重试次数已经为零,发送还是不成功,则公用流程将发布错误消息;如果消息不是 CIDX,还要发送 0A1 消息。
如果活动是同步的,并且消息不是 CIDX,则公用流程将启动一个 0A1 消息。
如果在“执行时间”期间内未发生任何操作,并且消息不是 CIDX,则公用流程将发送一个 0A1 消息。