这个小模型是用5.0版本做的,对于其中的分解器,它将容器和货物分开了,其具体设置如下:4 L: P+ N7 o+ h% H P4 `
---分解器属性--临时实体流下的输出端口下的默认分解器选项做了如下修改:- treenode item = parnode(1);
# J' s1 \. }5 H @9 w8 o* i - treenode current = ownerobject(c);4 S* Y0 U- a8 ^9 Y' L6 V
- /**默认分解器选项*/
0 P/ r: T. @. w, v - /** \n发送容器到端口: */- ~9 B$ v* M! o; S' V# d
- int containerport = /**/1/**/;
# ?2 z6 L! [3 O: C) v) j# J - /** \n发送产品到端口: */
: P, M. ]2 o: t$ ~- l; U \ - int contentport1 = /**/2/**/;
/ n p+ T6 u8 A' w0 r - int contentport2 = /**/3/**/;: S' P) C9 B3 A+ r4 m; k% d. H2 O
- int value = getitemtype(item);% k2 s3 h0 v) j1 i k+ z) M
- /** \n\n注释: 如果没有执行拆包操作,则发送至第一个可用端口。*/
' E% a$ j( W' j+ G# V8 h% }( G6 ^ - & w$ F3 x+ ^. O8 y2 l
- if(getvarnum(current,"unpack"))
_1 @5 y4 s% \3 S0 J/ ^ - {
% O- x% K* g5 r - if(getrank(parnode(1)) == 1)
# s0 C4 [6 a V - return containerport;
& c+ j" w. h9 q6 m; y - else- r8 |3 ?( j1 m8 R9 U
- switch(value)/ M; }& | W% M& Y; s
- { a- z. u( c+ U. i
- case 1: return contentport1;
; S! t3 k2 o0 Q2 ]# F& w2 i - case 2: return contentport2;0 I, u6 i% [( q9 i
- default: return 0;
2 b- H. A: Q; s# \ - }- r( X1 D4 K9 Q' }
- }# N+ ~1 X6 U1 f
- else
5 Q1 K8 ^- [# V1 t - return 0;
复制代码 希望对有需要的朋友起到一定帮助 |