设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7338|回复: 9

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

  [复制链接]
发表于 2011-11-22 13:35:12 | 显示全部楼层 |阅读模式
如题,即如果store中存放有4种entity分别为part1,part2,part3,part4,每次需移动数量分别为4,3,1,1。按下面语句是否可行,不知道怎修改,或者类似语句该如何编写,向大家求救。
& ^; E6 D  u6 \5 X  m, n& V$ His
7 m5 n2 x& a& O/ m! w. e& y" j0 n; Y        a,b:integer;
0 {- f( O2 _% a$ f0 f9 v% ydo/ ?8 G2 I4 A( F3 c' u. ^" F6 U0 z0 v' n
        if store.cont.name="part1" then
2 n0 s( _2 V) W* p0 L) B/ b                for a:=1 to 4 loop5 o& I2 N: [0 ^8 v
                        store.cont.move;
- f& k4 \/ l+ a% L7 d" _* \                next;4 p, M: {  i: |* B# E
        elseif store.cont.name="part2" then
! u0 T: N. ?* m7 V; h/ M                for b:=1to 3 loop! V0 {+ ]2 V! y3 L+ y$ S  r
                        store.cont.move;
5 h1 v* e* ?% @& J# d; n) }                next;
& X1 w" Z" k+ g$ A* U  g- v8 [                elseif store.cont.name="part3" then; t  `7 {. B9 E1 i( \" u5 d
                              store.cont.move;2 W" D. r2 ]) K- e2 Z" T
                       elseif store.cont.name="part4" then
" e( G, \5 t3 C6 @6 E3 Y" w, ^                                    store.cont.move;3 X& c  H, Q  I7 _/ B0 O6 v8 C0 m2 S
                        end;- X+ B, g5 I) n) h6 k! p& S' `# b
           end;
发表于 2011-11-22 15:33:01 | 显示全部楼层
估计不行,可以将store看成为二维数组,然后对数组元素操作,而不能对数组名进行操作
发表于 2011-11-22 19:19:20 | 显示全部楼层
store.cont.这样只能访问Store的第一个位置,其他问题是不能访问的,如2楼所说,需要进行寻找,类似下面:
# ]# [; E/ ]2 a# K$ Fis! h% A" x/ m$ p" e% q% U
        i,j:integer;
1 z1 r9 K+ g# O9 u' Z8 Rdo9 ?& X9 z5 [9 u+ b! \+ a! R: U. Z
        print store.cont.name;  ^8 x( S. V1 u; n1 X* y
        for i:=1 to store.ydim loop0 }& Y4 D( r* _( z4 k8 i3 ~* `" \6 H2 y
                for j:=1 to store.xdim loop6 Q& ?  [- G/ o. |
                        if store[i,j].cont/=void and store[i,j].cont.name= "" then
1 H( @+ l) G$ l. B" ]                          -------------------
9 D/ U9 ?/ d$ [8 D                        end) b2 B3 ~& h. e8 `" x' t& s
                next;: u  p  A9 Z  r# ~. I2 F, X
        next;% R/ ^+ A) g7 |. y
end;
 楼主| 发表于 2011-11-23 13:43:26 | 显示全部楼层
dongshui8558 发表于 2011-11-22 19:19
+ b) F3 o) m, F. A) b% d. istore.cont.这样只能访问Store的第一个位置,其他问题是不能访问的,如2楼所说,需要进行寻找,类似下面:. {& b7 h0 _' A5 B5 g" ?8 M4 l2 A
...

" x! J0 N- F& E% v2 \恩,谢谢您的解答,对我很有帮助。+ Y3 ^& S3 K2 r9 a- Z
想再请问下,如果每次移动四种物料作为一个操作过程,以后没间隔一个小时操作一次这样的循环(即每隔一个小时移动四种物料一次,所移动的物料数量最终是成比例的),要怎么弄呢?
发表于 2011-11-23 14:04:11 | 显示全部楼层
dongshui8558 发表于 2011-11-22 19:19
' r7 s5 q) U+ y2 b: \store.cont.这样只能访问Store的第一个位置,其他问题是不能访问的,如2楼所说,需要进行寻找,类似下面:
  b, D  L9 P; _: R& f ...
& j* a- Q" W1 \  E- M, }
你就是我心中的神,论坛就应该多点您这样的人。
发表于 2011-11-23 14:07:43 | 显示全部楼层
用编程最简单,用methcall方法,自己看帮助吧,能看懂的。。
 楼主| 发表于 2011-11-23 15:00:27 | 显示全部楼层
dongshui8558 发表于 2011-11-23 14:07 : M; N& R- L7 H0 v8 ^/ o- ]6 H
用编程最简单,用methcall方法,自己看帮助吧,能看懂的。。

' V. C: j/ @$ b) K! O是这样吗?
( \/ z" E  A( s7 o0 Y- V6 j. \5 Bref(moveout).methcall(str_to_time("1:00:00"));& O9 l7 s! P' a0 ~
运行不出来啊
发表于 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, 2026-4-30 03:02 , Processed in 0.014757 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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