这个小模型是用5.0版本做的,对于其中的分解器,它将容器和货物分开了,其具体设置如下:$ j7 l" I5 m# D Y
---分解器属性--临时实体流下的输出端口下的默认分解器选项做了如下修改:- treenode item = parnode(1);0 I5 B& e! t9 d' [7 s
- treenode current = ownerobject(c);7 ^5 M. y Q) m" Z& O' }1 I+ p
- /**默认分解器选项*/
: i0 j( u# R- f1 g7 V - /** \n发送容器到端口: */
2 s5 N3 E5 X+ B3 I P6 d! d - int containerport = /**/1/**/;, T3 K9 G9 W) G) a8 U" D
- /** \n发送产品到端口: */
8 |1 q' v! W' J9 G; I - int contentport1 = /**/2/**/;
[( G5 q1 W. g4 @& k4 ?- }4 m) i - int contentport2 = /**/3/**/;! c- \+ Q8 ^* R% } @1 S, M
- int value = getitemtype(item);
5 C9 I' I) C9 ?! K9 I# r Q( v8 |0 _ - /** \n\n注释: 如果没有执行拆包操作,则发送至第一个可用端口。*// }% o7 r! F: R. Y
- 4 ]" ^3 A3 \2 F$ y: A; k' _
- if(getvarnum(current,"unpack"))
* q: b: H# }' f1 M - {" F3 K5 O* w1 D1 D
- if(getrank(parnode(1)) == 1); D5 o# w' p: b. p) B0 _- X p
- return containerport;1 x& S+ W( H/ `# n7 p- B
- else
( c K8 a9 j3 A - switch(value). h, o- ]# L0 \8 B
- {
* I6 E6 Y" |% ^" `! ?* P( r - case 1: return contentport1;* I, I5 ]- E$ a5 N& j# f3 n- g* J
- case 2: return contentport2;
$ g6 l& A8 A0 k - default: return 0;
* m& J! u. V; ~! o, K - }" J' |$ Q! ?- B8 o5 R) G$ a; U
- }
7 y" C8 A, k4 g# x - else5 @) S$ b* K( Q; u( v
- return 0;
复制代码 希望对有需要的朋友起到一定帮助 |