这个小模型是用5.0版本做的,对于其中的分解器,它将容器和货物分开了,其具体设置如下:
' |% q" S3 j l) B4 q. ~6 V. `---分解器属性--临时实体流下的输出端口下的默认分解器选项做了如下修改:- treenode item = parnode(1);% P' X2 o! l) s* T. N
- treenode current = ownerobject(c);/ E: e& i# a0 a# R# n. x
- /**默认分解器选项*/' ?* E1 B( W- e
- /** \n发送容器到端口: */% w+ k6 n* D7 f$ B; ~
- int containerport = /**/1/**/;
9 ~; r4 ~9 B0 X3 w& e4 d9 o* v( u9 n - /** \n发送产品到端口: */
5 B% ?7 U5 u5 E+ H; {: F - int contentport1 = /**/2/**/;
& J* {, v$ q5 o0 j1 p - int contentport2 = /**/3/**/;2 ^3 a4 i6 t( ?& |# M, P
- int value = getitemtype(item);1 l. s8 y4 W4 r4 |, L1 G
- /** \n\n注释: 如果没有执行拆包操作,则发送至第一个可用端口。*/% s" _1 N. x) `: \) ]- [
- 0 W0 s0 `+ j' N, x$ X! v
- if(getvarnum(current,"unpack"))9 }1 u4 v b, ~' o5 k+ X0 c
- {
1 e D+ l- M4 e/ M# ` - if(getrank(parnode(1)) == 1)
* d! v) y+ I. c; c, r. d3 v$ ^" { - return containerport;/ W' A1 o5 G0 Q! D
- else
$ G& R0 ~3 [5 V& p5 J+ T - switch(value)
: r9 d3 z! x/ |' c4 I9 R8 l - {
- E; n* T) F7 |7 a - case 1: return contentport1;
r1 G- K, \* c' s+ I7 z* X& v' }) Q. N# { - case 2: return contentport2;
! J. H& M1 W0 j4 f3 N - default: return 0;
9 g; n! t# B- v5 }0 x! {8 K - }+ T" {# S( u1 A) W2 Y9 @
- }+ M6 _, S( w9 R: t" J5 y; B# U$ y
- else, t6 `4 u! d/ ]5 K' Q$ C' k9 a+ N+ L) _
- return 0;
复制代码 希望对有需要的朋友起到一定帮助 |