设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6582|回复: 11

[求助] tablefile的find问题

  [复制链接]
发表于 2011-9-8 14:35:36 | 显示全部楼层 |阅读模式
在我的模型中,我在track设置method,把进入track的transporter保存到tablefile(*行,1列,object型)中,当transporter离开track时,设置method查找tablefile中的transporter记录,把正行记录cutrow掉。1 {; Q* J; Q0 x6 b# Q/ n
现在的问题是我使用语句
; \5 S! Q& B2 z" zif tablefile.find(`[1,1]..`[1,*],@) then8 D# y: _% w3 [" z# S0 t
删除行逻辑
! |2 Y' N' }; J' k+ l+ f4 u( ~end;: u. W6 [$ m: y/ {: W
我发现find结果总是出错,明明打开tablefile之后可以看见那个transporter,但tablefile.find(`[1,1]..`[1,*],@)的返回值却不一定是true
( [* F% {+ W# S& O- v. \" G" i* `* v# P) ?
调试的时候,把tablefile.find(`[1,1]..`[1,*],@)粘贴到表达式两行位置,结果发现这条语句在同一时刻,一行显示true,一行显示false,我实在不知道是怎么回事,请大家有时间帮忙解惑一下,不甚感激。
/ l+ f* d9 c( z& R/ a( @% E. i  s6 ]
另外把tablefile换成queuefile之后,搜索结果到没问题,都正确了,但因为track里面的transporter有些是从入口进入,有些是用method方法从别处移动过来,所以queuefile好像不适用于模型逻辑

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2011-9-8 15:37:30 | 显示全部楼层
我试了一下,没问题啊,可以参考附件中的模型

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
 楼主| 发表于 2011-9-9 10:57:06 | 显示全部楼层
linlin3353 发表于 2011-9-8 15:37 1 T' N$ _( g" ~2 m
我试了一下,没问题啊,可以参考附件中的模型
3 I& F) E0 h" ~) g/ {
我这边好像还是有些问题,我在您的模型上调了一下还是不行
0 K! l& H0 c% u' |7 y) S1 y9 r- p麻烦您看看,在您那里的运行正常吗?( @6 z+ J# z: P8 Y5 o' K4 }" w1 ]" t
我这是从veryCD上下载的破解版,不会是破解的问题吧?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
 楼主| 发表于 2011-9-9 11:05:20 | 显示全部楼层
本帖最后由 pqxx 于 2011-9-9 11:05 编辑 5 S4 \+ i! U, R6 b
linlin3353 发表于 2011-9-8 15:37
* Y) ^* w5 K9 m/ T( O+ z# J我试了一下,没问题啊,可以参考附件中的模型

( |+ v! w7 K. N( |: ^& d& \; h  |- Z8 O5 \2 k! w
这个附件是我这边的运行视频,用screen2exe录制了,所以是exe格式,绝不是病毒。麻烦您给看看吧

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2011-9-10 14:06:36 | 显示全部楼层
pqxx 发表于 2011-9-9 11:05 4 T: l8 H7 ^. K0 [: g. A
这个附件是我这边的运行视频,用screen2exe录制了,所以是exe格式,绝不是病毒。麻烦您给看看吧 ...

. c9 l9 ^5 q6 M3 D. `! X看了一下,我也困惑了,时而对时而错。再研究研究吧。。0 v" w$ n2 ^- g2 l. B
看看论坛里们其他大侠怎么决绝吧。
发表于 2011-9-10 14:18:20 | 显示全部楼层
貌似,如果不设断点进行单步调试的话,模型运行就是正常滴。。
 楼主| 发表于 2011-9-11 11:27:51 | 显示全部楼层
linlin3353 发表于 2011-9-10 14:18
0 V4 ?8 P" u2 W& X; J貌似,如果不设断点进行单步调试的话,模型运行就是正常滴。。

$ A& J7 a' ~  l1 }在您那边运行也是如此吗?
  T! d3 M, x# f6 ~% \5 M还是非常感谢啊
发表于 2011-9-12 18:21:09 | 显示全部楼层
我曾遇到过LZ这个问题
7 z2 f$ I. d, P% k! hLZ可以HELP:tablefile.find;仔细看里面的意思。当执行method时,在表格里寻找之前,一般得设置光标的初始位置,如果你在tablefile[1,3]找到了你要找的文本“true”。当再一次执行method时,你的光标是从
; ^  Y, z6 P4 xtablefile[1,3]开始寻找,比如在tablefile[1,5]找到” 。所以就是说你两次运行同一个程序,结果出现不同。所以程序里面必须要设置光标的起始点。
 楼主| 发表于 2011-9-13 09:30:06 | 显示全部楼层
Inwater 发表于 2011-9-12 18:21
1 m: j  i8 N5 \& A; W7 O' _我曾遇到过LZ这个问题
* A' |1 O! S& l" ^LZ可以HELP:tablefile.find;仔细看里面的意思。当执行method时,在表格里寻找之前 ...
% r0 }7 x; T5 [/ s) r/ c
在find语句之前加上! m  P0 B9 C; k/ c/ a2 i
tablefile.CursorY:=1;9 j8 X+ v5 j8 M
tablefile.CursorX:=1:/ i- k7 R$ H5 E$ b
之后还是不对,不知道怎么回事。
2 D- U- i- A9 }我把tablefile改成cardfile试了试,除了第一个离开track的mus搜索不到之外,别的都可以找到,但新的问题又出来了,当我设置断点调试程序的时候,cardfile里面记录的数据会自动丢失。比如一开始我打开cardfile之后,发现里面有5行数据,看看method之后再回过头来看,发现前两行的数据没了,就像执行了cutrow一样,过一会儿再看,全没了,成空表了。
! J/ f8 W2 q) I是不是emplant的安装有问题呢?
发表于 2011-9-13 14:16:44 | 显示全部楼层
pqxx 发表于 2011-9-13 09:30 8 U; L+ e- R- T) q1 _
在find语句之前加上1 n  y4 x6 Q' i3 G) Y  t! |1 F
tablefile.CursorY:=1;1 D8 e/ y# y) }8 s4 a6 {
tablefile.CursorX:=1:
/ V+ W- R8 w' G8 M  _
应该和安装没问题,估计还是程序有问题。: \& b2 E! r0 e; n$ b/ @
在看看软件自带的帮助文件吧,估计是对函数的理解不对。
 楼主| 发表于 2011-9-14 08:24:59 | 显示全部楼层
本帖最后由 pqxx 于 2011-9-14 13:05 编辑
2 E% _1 X8 J8 e, Y0 k6 Q+ }) g
Inwater 发表于 2011-9-12 18:21   v4 i. A7 _5 k' n: Y: _) L
我曾遇到过LZ这个问题, @# V0 B$ J* ~) c
LZ可以HELP:tablefile.find;仔细看里面的意思。当执行method时,在表格里寻找之前 ...

1 T0 W- R2 y, s0 W) v1 f( x; J) g/ s9 E8 L3 W' B
使用cardfile,在find前面加上cardfile.cursor:=1就没问题了% g, q) A8 q+ D) y
我再试试tablefile啊,先谢谢啦5 f# T) k; Z* f# k
在tablefile前面加上tablefile.cursorX:=1和tablefile.cursorX:=1也OK了
 楼主| 发表于 2011-9-14 15:01:00 | 显示全部楼层
taoyifei2000 发表于 2011-9-14 13:41
" o* G1 h: L$ M刚看到消息,看你已经解决了,修改的模型就不发了,祝贺你,其实就是每次循环光标要初始化一下。 ...

/ f! o9 d7 t2 A+ M! l谢谢啊,版面上这个板块的高手最热心肠啦
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-12 09:55 , Processed in 0.017888 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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