|  | 
 
| 遇见一个难题,请教各位高手。9 F7 X& g! k4 [: D6 k: E5 Y 
 . {3 }4 P9 x- v7 h, V' e使用transporter将物料从A点运送到B点,通常情况下,每次运输100件,但是运输几次后,剩余的产品不够100件(例如订单总数是220件,第一次运输100件,第二次运输100件,第三次只有 20件可以运了),当运行到第三次的时候,仿真就停滞了,无法继续下去。不知道如何修改程序(我现在的程序如下)。. G, L- p0 ~& s/ S
 ( f8 U* `( q6 W/ ~6 [
 需要说明的是,A点的运输量不是固定的,因为有两台并联的机器,因此我无法通过表格直接得出已运送量和未运送量。
 - G" z# I1 `7 g/ G* O( n3 u# h9 E& f% }$ ~$ D- Q
 is: {6 w3 V/ r, F
 i,m: integer; -- 整数变量. q+ i9 T4 \( Q' }9 x( Z
 Name:string; -- 字符串变量; I& d! }! T" N4 \4 W8 D( L
 Obj:Object; -- 对象类型变量
 6 @# l! L" y, B
 ; Y! i4 ?/ J: b3 s  t6 D& bdo
 ' F2 \7 J+ n9 g: S        m := str_to_num(omit(?.Name,1,1)); -- 先取Drain*后面的数字,在转换成整数类型2 J" D: f5 Z& m* Q9 ?# t6 c, ~
 Name := sprint("BA", m);  -- 生产线名称
 % H' W% Y# @7 V5 B, X& u        Obj := str_to_obj(Name);  -- 转换成对象变量. b7 {- k: ^8 b# P
 
 7 W$ L- \& e% R/ P: L! B4 m4 g* i        FOR i:=1 to 100 LOOP5 T9 C, g* U9 g! Q. Z) {) O
 waituntil OBJ.occupied prio 1;/ c2 X1 B$ N$ e3 B* h8 K  k# p
 OBJ.cont.move(@);
 % V, \5 ~5 y$ B) g) `
 ; _! O8 _# V* o& _9 ?4 G/ X5 M        NEXT;# F* X) O1 F4 z' H
 @.backwards:=false;
 6 R- E4 @3 [5 Y8 U" e9 e; Y3 Gend;
 " O* u" [) X3 E5 o
 | 
 |