全球FlexSim系统仿真中文论坛

标题: 发生器的创建触发中依次设置临时实体类型和颜色,设置颜色,创建和初始化标签出错 [打印本页]

作者: zorsite    时间: 2012-12-3 14:05
标题: 发生器的创建触发中依次设置临时实体类型和颜色,设置颜色,创建和初始化标签出错
本帖最后由 zorsite 于 2012-12-4 08:54 编辑
/ K8 m' f) I5 Q/ E( H* G, m1 O( w. r  M
版本为Flexsim6.02中文版
5 R5 Z  A8 M$ ?0 W" K具体操作见GIF附件。0 f7 J5 L5 Q+ z* G% m7 ?4 Y
[attach]1003[/attach]/ d7 R. w2 x( c1 l/ r
! ~9 _8 U2 |1 g# }8 a) K, E
编译器控制台出错提示:6 }/ h/ v- T, p6 s; T) e" p( Y
Flexscript Error        MAIN:/project/model/发生器3>variables/creationtrigger        line 30        syntax error, unexpected '}', expecting end of code check for the proper number of parentheses/braces
* T* Y8 S+ r" C' |4 A. [Could not finish parsing because of previous errors.& ?5 D. R5 H; H$ j5 B5 j' z( F

9 i8 t! |* ^3 Q% Y- \, I) V5 I& R. P/ _! S  B, c; ^) [# r$ {4 c* }
系统控制台出错提示:% K0 k" p, O# a
exception: parse error at line number 31: syntax error, unexpected '}', expecting end of code
# \2 o; K$ _0 y) l) }exception: parse error at line number 31: syntax error, unexpected '}', expecting end of code' m+ X1 z( o% g8 F* o7 |
: O$ _) D8 N8 s  o% {/ O
2 ~0 e7 ?8 x  |6 ~7 v1 f9 U& Q, d. |
系统生成的代码:
  1. treenode item = parnode(1);
    4 t# s& m. C" g+ k0 k9 x" k0 B/ X$ L3 }
  2. treenode current = ownerobject(c);1 I1 F% w# I) B3 h
  3. int rownumber = parval(2);  //row number of the schedule/sequence table8 U9 g0 U& I% U. @/ a
  4. { //************* PickOption Start *************\\
    ( j" I) f. e% [- c2 d9 P; R
  5. /***popup:SetTypeAndColor*/
    3 Z/ Q4 ~6 z8 B( e
  6. /**设置临时实体类型和颜色*/
    ' Z' B! b  T8 H1 f% E7 H; ]' B
  7. /** \nFlowitem: */, i$ u6 D7 n5 C9 |. U" j: P' b+ a8 c
  8. treenode involved = /***tag:involved*//**/item/**/;! g6 [' S3 U! ?7 E) Q0 l
  9. /** \nItemtype: */+ z% k( x7 X  u
  10. double newtype = /***tag:type*//**/duniform(1,3)/**/;6 y7 c4 q7 k) Z1 r+ ~& N
  11. /**\n\n*/3 D$ T9 X  K1 B
  12. setitemtype(involved,newtype);
    7 x# B* E+ s1 Y1 j* }4 K) [
  13. colorarray(involved,newtype);- K7 R, [0 L# p$ Y- {8 }
  14. 8 t9 S, T: ^8 z3 \. N# h
  15. } //******* PickOption End *******\\{ //************* PickOption Start *************\\
    0 ?) x8 w% G  X9 l
  16. /***popup:SetColor:hasitem=1*/
    - g7 Y7 F2 l: e1 y' y4 |; }
  17. /**设置颜色*/
    0 L9 |- C, X/ r5 M2 x$ Y( H
  18. /** \n值: */& a# m, C2 g6 p+ }  `; `
  19. int value = /***tag:item*//**/getitemtype(item)/**/;0 d1 K% v* z  w) c! C# U4 {
  20. switch(value)* @. A6 S1 V/ o3 p
  21. {
    , x5 r7 F) L9 H7 @+ e$ p
  22.         /***tagex:data*//**\nCase: */case /**/1/**/: /** Color: */ /**/colorred(item)/**/;break;
    . W; r5 y- o2 I3 z# _- e0 N. M
  23. /**\nCase: */case /**/2/**/: /** Color: */ /**/colorblue(item)/**/;break;
    6 ]; c. z) \8 o0 N
  24. /**\nCase: */case /**/3/**/: /** Color: */ /**/colorgreen(item)/**/;break;
    9 [( {9 t9 s  m* q& n/ s
  25. /***/3 s% s- X  z' ^: z
  26.         /** \n默认值: */  P% V, t0 E, B5 G8 m$ ^
  27.         default: /***tag:default_value*//**/colorarray(item, value)/**/;break;: J9 k# M( q) a9 v) M
  28. }
    6 j; b/ `8 G# @" s7 X6 D
  29. /**\n\n*/
    + g! t: K2 c* K, q
  30. } //******* PickOption End *******\\' J3 i) b1 M7 L
  31. //************* PickOption Start *************\\ ! z3 K2 _8 B& z/ H4 q- I
  32. {
    % A  j' h, P- P" W2 ^" |+ V6 y
  33. /***popup:CreateInitializeLabel*/
    : p" |2 B* c. i1 _" x+ s
  34. /**创建和初始化标签*/
    9 K) v4 V1 S8 Y+ v* }* Y
  35. /** \n实体: */7 Y- z+ G# n+ b5 T! d4 b
  36. treenode involved = /***tag:involved*//**/item/**/;6 @8 a, y. u6 Z  D, o& d
  37. /** \n标签: */+ D! u( [* ~1 ^# f3 n8 g- e0 `
  38. string labelname = /***tag:labelname*//**/"newlabel"/**/;
    0 t2 s; t0 i7 a9 W1 i
  39. /** \n值: */( p- M- n* @0 K, d2 E7 A
  40. double newvalue = /***tag:newvalue*//**/duniform(1,3)/**/;
    * K' [" v$ u6 J( f0 z$ y  d0 d
  41. /**\n\n*/
    1 Y- i  c+ f& M" Z" O
  42. set(assertlabel(involved,labelname,DATATYPE_NUMBER),newvalue);9 \7 ~0 d. G. W' Y4 m4 t7 N
  43. }4 Z- m" J0 C# g' s3 n* j7 K
  44. //******* PickOption End *******\\
    " ^# D) e( @' J* F
复制代码

作者: zorsite    时间: 2012-12-3 14:25
我觉得这是flexsim的一个bug。
0 n. c2 Q& B) H& u0 T+ v, M# T如果“设置临时实体类型和颜色”之后紧接着“设置颜色”,就会导致代码错误。
8 N# m- a; G: Q- ?) U/ B5 a. X原因在于第15行:
  1. } //******* PickOption End *******\\{ //************* PickOption Start *************\\
复制代码
在这里flexsim没有正确地换行,正确的代码应该是:
  1. } //******* PickOption End *******\\/ Z/ l$ B- {8 R2 @6 P% v7 S
  2. { //************* PickOption Start *************\\
复制代码

作者: domcylai    时间: 2012-12-3 14:48
确是BUG,感谢提出




欢迎光临 全球FlexSim系统仿真中文论坛 (http://www.flexsimasia.com/) Powered by Discuz! X3.3