设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5994|回复: 9

[求助] 如何同时移动store中多种品种entity的不同数量

  [复制链接]
发表于 2011-11-22 13:35:12 | 显示全部楼层 |阅读模式
如题,即如果store中存放有4种entity分别为part1,part2,part3,part4,每次需移动数量分别为4,3,1,1。按下面语句是否可行,不知道怎修改,或者类似语句该如何编写,向大家求救。
# l1 n+ h2 |8 i' V2 J% B2 T: tis ( A- F" \" l& Z9 b+ T8 q( G
        a,b:integer;# V% {- A2 A" F& M6 D
do
- d) r  `% m) T- f- [# x5 U        if store.cont.name="part1" then$ i% s, N% C- v: }
                for a:=1 to 4 loop
1 T$ y& Z, I# m" h7 ~                        store.cont.move;
- M) O; Q* ^* f* v& t! f. S% y' W                next;1 j4 @: e. a2 N5 p" D* h% s1 [, K
        elseif store.cont.name="part2" then- D) R3 [2 C8 R3 I' v- a- n+ J: A
                for b:=1to 3 loop
  I3 D1 h5 m# M4 b( Q5 i                        store.cont.move;' R# e% T; b  C
                next;/ K1 O( w+ V$ o, p, S" w
                elseif store.cont.name="part3" then
% b9 j5 L3 X& l; Z$ Z5 _- |                              store.cont.move;) X- B/ y0 M+ k: S
                       elseif store.cont.name="part4" then9 b4 t' D" E+ R
                                    store.cont.move;
4 I! W+ `9 z" [% F+ b+ [, j                        end;
% O) c: _; `' r( a           end;
发表于 2011-11-22 15:33:01 | 显示全部楼层
估计不行,可以将store看成为二维数组,然后对数组元素操作,而不能对数组名进行操作
发表于 2011-11-22 19:19:20 | 显示全部楼层
store.cont.这样只能访问Store的第一个位置,其他问题是不能访问的,如2楼所说,需要进行寻找,类似下面:# Q& H+ @; ?$ R
is0 W1 @1 |- K: S" r$ z8 s! F7 h# i
        i,j:integer;
& u7 G, Z0 t% Y6 L" @+ N3 V! ddo
/ a( [2 J& a, q2 n( s        print store.cont.name;
& Q# H4 H" n  B; ?2 W        for i:=1 to store.ydim loop
2 p! g/ Y/ t" L5 G6 X                for j:=1 to store.xdim loop4 E2 S% u2 s7 B
                        if store[i,j].cont/=void and store[i,j].cont.name= "" then
) D6 Z. L- r8 w3 o7 _1 V' Q                          -------------------
- u. g- }3 `, P. }0 s  H  d                        end
$ t7 j" e6 Z9 V+ L' V/ G5 L                next;
, R% W6 h% K& Y* `# [        next;8 m* f% X% K5 b, {4 L) ?
end;
 楼主| 发表于 2011-11-23 13:43:26 | 显示全部楼层
dongshui8558 发表于 2011-11-22 19:19
2 j" f/ M6 G( K: @+ t# \2 C) c% J. D8 ^store.cont.这样只能访问Store的第一个位置,其他问题是不能访问的,如2楼所说,需要进行寻找,类似下面:3 R  l) y  _$ |9 \, C/ c  ?
...
5 I1 ], D4 r) m
恩,谢谢您的解答,对我很有帮助。( U/ M7 R) o- Q% \! D# ]* A( J; U
想再请问下,如果每次移动四种物料作为一个操作过程,以后没间隔一个小时操作一次这样的循环(即每隔一个小时移动四种物料一次,所移动的物料数量最终是成比例的),要怎么弄呢?
发表于 2011-11-23 14:04:11 | 显示全部楼层
dongshui8558 发表于 2011-11-22 19:19
- S2 B9 J' m( [7 U1 l( q/ a# B3 ~$ h/ Nstore.cont.这样只能访问Store的第一个位置,其他问题是不能访问的,如2楼所说,需要进行寻找,类似下面:
! y; U$ @3 i9 p ...

( ]2 v4 ?7 U5 g4 ?" H  T你就是我心中的神,论坛就应该多点您这样的人。
发表于 2011-11-23 14:07:43 | 显示全部楼层
用编程最简单,用methcall方法,自己看帮助吧,能看懂的。。
 楼主| 发表于 2011-11-23 15:00:27 | 显示全部楼层
dongshui8558 发表于 2011-11-23 14:07 + C' Z9 `6 n7 ]& B6 h
用编程最简单,用methcall方法,自己看帮助吧,能看懂的。。
, o: x5 C, @4 _1 Q$ m; ^4 {7 n( |/ o
是这样吗?% O' w, j0 I$ q& L$ U
ref(moveout).methcall(str_to_time("1:00:00"));2 d% H4 n  |# f$ J$ C# V* j
运行不出来啊
发表于 2011-11-23 18:15:29 | 显示全部楼层
ref(moveout)改为self
发表于 2011-12-1 10:35:29 | 显示全部楼层
dongshui8558真是高手啊,留个QQ吧?
发表于 2011-12-20 14:50:42 | 显示全部楼层
我想问个问题,store只有入口控制,没有出口控制,那你的这段程序是放在入口控制的method里吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2025-9-15 02:45 , Processed in 0.015000 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表