这个小模型是用5.0版本做的,对于其中的分解器,它将容器和货物分开了,其具体设置如下:
' I* P0 n: ?9 P+ f% p/ U Q P---分解器属性--临时实体流下的输出端口下的默认分解器选项做了如下修改:- treenode item = parnode(1);
5 F2 a" M# V! \" L# i - treenode current = ownerobject(c);9 Q+ ]2 O! D! P4 D5 \' d
- /**默认分解器选项*/
5 A( G) ?: B/ r; _( \5 Z) A% _$ g - /** \n发送容器到端口: */
; K9 s, A# e; E - int containerport = /**/1/**/;
! R4 V' u* I9 A; x1 ~+ n' k8 l - /** \n发送产品到端口: */
; P6 m/ M: }% @9 V - int contentport1 = /**/2/**/;4 X' A, ~: Y; v' i5 m3 ?; ~4 s
- int contentport2 = /**/3/**/;
( g& A+ n( I; z' u! V$ | - int value = getitemtype(item);
8 g$ N( U* }, V5 { - /** \n\n注释: 如果没有执行拆包操作,则发送至第一个可用端口。*/
7 Q% U, A0 U3 O6 o6 J3 r
. X& i! {& E S" O) T- if(getvarnum(current,"unpack"))
5 c! E/ E# X$ Y+ E, ?. r0 {& [9 f - {3 S4 w0 l$ r1 ^4 P6 Q0 J# Z! P/ N
- if(getrank(parnode(1)) == 1)
- O7 ~; c7 p9 _3 a - return containerport;
! Z2 o. F! z7 c4 j' ~ - else2 ^) n9 j7 R! R% k/ |9 j
- switch(value)4 ^- T3 h0 u, d2 |$ F3 G( M- c
- {. j" r4 B; n4 e+ E3 I1 {7 m% W% b4 f
- case 1: return contentport1;
, V: Z- l' X# i2 M U - case 2: return contentport2;% E6 @6 E& f, \: ~+ B' D
- default: return 0;
' w) G" O8 a. b7 @* r - }! t n$ D- @; R; y
- }
: H; e5 Z4 D$ r/ ^( A0 q8 p - else
; S! @& D+ R; G9 E& r6 ^; Z0 n; Q - return 0;
复制代码 希望对有需要的朋友起到一定帮助 |