本主题包含以下部分:
使用 FlowOrder 节点控制消息流处理消息的顺序。将输入消息传播到第一个输出终端并且连接到此终端的一系列节点处理消息。当完成消息处理时,控制返回到 FlowOrder 节点。如果消息处理成功完成,则输 入消息会传播到第二个输出终端,并且连接到此终端的一系列节点将处理此消息。
通过第二个输出终端传播的消息是输入消息;即使连接到第一个终端的一系列节点已修改了消息,此消息也不会以任何方式修改。
您可以在一系列节点的执行顺序是很重要的情况下,将此节点包含在消息流中。
如果您将多个节点连接到第一个输出终端和/或第二个输出终端,则处理每个终端上的多个连接的顺序是随机的并且是无法预测的。然而,在将消息传播到连接到第二个输出终端的任何节点前,必须 全部成功完成传播到连接到第一个输出终端的所有目标节点的消息。
在消息要求的一个处理顺序明显比另一个处理顺序短的情况下,您的消息流性能可以通过包含 FlowOrder 节点受益。如果您将较短的顺序连接到第一个终端,则很快标识存在的故障并 阻止执行第二个较长的处理顺序。
FlowOrder 节点在工作台中由以下图标表示:
此处为使用该节点的示例,假定您的公司使用因特网接收到客户的订单。收到订单时,由连接到 FlowOrder 节点的第一个终端的节点处理,来借数据库中的库存级别并开具发票。然后执行检查来查看客户是否已表明其详细信息可以发送到其他供应商。如果客户已经表明他不想泄露此信息,则检查失败并且不进行进一步处理。如果客户乐意将此详细信息与其他公司共享(即,测试成功),则输入消息传播到第二个终端以便客户的详细信息可以添加到邮寄列表。
当您将 FlowOrder 节点的实例放入消息流后,便可对它进行配置。右键单击编辑器视图中的节点,然后单击属性。 显示节点的属性。
对于必须为其输入值的所有必需属性(没有定义缺省值的属性),在属性对话框上都会用星号作标记。
如下所示配置 FlowOrder 节点:
单击取消以关闭对话框,并废弃对属性所作的所有更改。
FlowOrder 节点没有影响其操作的可配置属性。您通过将第一个和第二个输出终端连接到消息流中的一系列节点来确定它如何操作。
通过第二个终端传播的消息等同于通 过第一个终端传播的消息。此节点忽略您作为处理的第一阶段的结果引进的任何更改。
如果处理的第一个阶段失败,则 FlowOrder 节点不会恢复控制并且不会通过第二个 终端传播消息。
在以下表中描述了 FlowOrder 节点终端。
终端 | 描述 |
---|---|
In | 接受供节点处理的消息的输入终端。 |
Failure | 如果在计算期间检测到故障,则这就是消息路由到的输出终端。 |
First | 在第一个实例中输入消息路由到的输出终端。 |
Second | 在第二个实例中输入消息路由到的输出终端。仅当路由至 First 成功时,才将消息路由到该终端。 |
下表描述该节点的属性;标题为 M 的列表示属性是否是必需的(如果在未定义缺省值时必须输入值,则在属性对话框上以星号作标记),标题为 C 的列表示属性是否是可配置的(将消息流添加到 BAR 文件以部署此文件时可以更改该值)。
下表描述 FlowOrder 节点的“描述”属性。
属性 | M | C | 缺省值 | 描述 |
---|---|---|---|---|
简短描述 | 否 | 否 | 节点的简要描述。 | |
详细描述 | 否 | 否 | 描述消息流中节点用途的文本。 |