设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6603|回复: 11

[求助] tablefile的find问题

  [复制链接]
发表于 2011-9-8 14:35:36 | 显示全部楼层 |阅读模式
在我的模型中,我在track设置method,把进入track的transporter保存到tablefile(*行,1列,object型)中,当transporter离开track时,设置method查找tablefile中的transporter记录,把正行记录cutrow掉。
9 f. T& G2 A$ _* D  f- I现在的问题是我使用语句
* {2 D% M, @/ j( uif tablefile.find(`[1,1]..`[1,*],@) then
) z1 g. S. _/ A! M5 P删除行逻辑
+ }. i( X) X) L4 }end;
# Y3 y) k! D; @/ O4 @* t我发现find结果总是出错,明明打开tablefile之后可以看见那个transporter,但tablefile.find(`[1,1]..`[1,*],@)的返回值却不一定是true
+ a% s; s* h. |9 O9 V) M  z( P: Q8 y0 \/ t; X8 S- c
调试的时候,把tablefile.find(`[1,1]..`[1,*],@)粘贴到表达式两行位置,结果发现这条语句在同一时刻,一行显示true,一行显示false,我实在不知道是怎么回事,请大家有时间帮忙解惑一下,不甚感激。
: A$ N9 Y# H9 V. m
, e) ?5 D7 Z2 k9 p. a; i另外把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
% o/ J% D2 z/ j我试了一下,没问题啊,可以参考附件中的模型

# `: a7 @  N2 K/ u* U我这边好像还是有些问题,我在您的模型上调了一下还是不行8 E5 e" K+ @; _
麻烦您看看,在您那里的运行正常吗?5 C- f" p+ N6 d& x# }
我这是从veryCD上下载的破解版,不会是破解的问题吧?

本帖子中包含更多资源

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

x
 楼主| 发表于 2011-9-9 11:05:20 | 显示全部楼层
本帖最后由 pqxx 于 2011-9-9 11:05 编辑 7 d4 P) t' n6 L! E. B
linlin3353 发表于 2011-9-8 15:37 8 \0 Z9 p$ v8 X/ o& |4 o
我试了一下,没问题啊,可以参考附件中的模型
9 ]/ I/ e$ l9 W% Y( z$ f1 k0 d
: ?' S5 I4 ]2 H$ t0 Z7 Q$ |5 r8 C
这个附件是我这边的运行视频,用screen2exe录制了,所以是exe格式,绝不是病毒。麻烦您给看看吧

本帖子中包含更多资源

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

x
发表于 2011-9-10 14:06:36 | 显示全部楼层
pqxx 发表于 2011-9-9 11:05
8 m' {  _4 o/ F这个附件是我这边的运行视频,用screen2exe录制了,所以是exe格式,绝不是病毒。麻烦您给看看吧 ...
& u" Y. v1 ]5 S' u% J
看了一下,我也困惑了,时而对时而错。再研究研究吧。。
' e1 h* e+ L# b0 ]- |看看论坛里们其他大侠怎么决绝吧。
发表于 2011-9-10 14:18:20 | 显示全部楼层
貌似,如果不设断点进行单步调试的话,模型运行就是正常滴。。
 楼主| 发表于 2011-9-11 11:27:51 | 显示全部楼层
linlin3353 发表于 2011-9-10 14:18
% X1 B8 Z8 Q4 T$ j貌似,如果不设断点进行单步调试的话,模型运行就是正常滴。。

3 p. X4 e! \$ y* ~, p在您那边运行也是如此吗?
& q) `3 S( f5 j( v! q* m) Y还是非常感谢啊
发表于 2011-9-12 18:21:09 | 显示全部楼层
我曾遇到过LZ这个问题
  S9 u* @7 V' u! s9 ~7 ULZ可以HELP:tablefile.find;仔细看里面的意思。当执行method时,在表格里寻找之前,一般得设置光标的初始位置,如果你在tablefile[1,3]找到了你要找的文本“true”。当再一次执行method时,你的光标是从1 X  @7 L7 k* _( a
tablefile[1,3]开始寻找,比如在tablefile[1,5]找到” 。所以就是说你两次运行同一个程序,结果出现不同。所以程序里面必须要设置光标的起始点。
 楼主| 发表于 2011-9-13 09:30:06 | 显示全部楼层
Inwater 发表于 2011-9-12 18:21
! Z# n* U2 G0 w+ @$ d$ u我曾遇到过LZ这个问题4 ^7 @5 F% N! K" d! p7 g
LZ可以HELP:tablefile.find;仔细看里面的意思。当执行method时,在表格里寻找之前 ...

& Q3 o3 ]4 r$ A4 D2 ]在find语句之前加上
$ A& w  `3 p1 A8 x6 G% itablefile.CursorY:=1;
% i& F4 e" X6 u1 M; Ttablefile.CursorX:=1:+ F% t$ f  H( Z( Z  a" F/ X' k* Q
之后还是不对,不知道怎么回事。4 S6 X7 ?, s; k5 D
我把tablefile改成cardfile试了试,除了第一个离开track的mus搜索不到之外,别的都可以找到,但新的问题又出来了,当我设置断点调试程序的时候,cardfile里面记录的数据会自动丢失。比如一开始我打开cardfile之后,发现里面有5行数据,看看method之后再回过头来看,发现前两行的数据没了,就像执行了cutrow一样,过一会儿再看,全没了,成空表了。
/ u' M: J- \; H1 R& y是不是emplant的安装有问题呢?
发表于 2011-9-13 14:16:44 | 显示全部楼层
pqxx 发表于 2011-9-13 09:30 : v4 K+ `0 v/ f+ z- A
在find语句之前加上! Y. E: v) B! A
tablefile.CursorY:=1;
( L# u  |: x  v, A, Ntablefile.CursorX:=1:
  o' }2 y" C- B
应该和安装没问题,估计还是程序有问题。: ~1 c* _- F3 r, H2 U; l; j
在看看软件自带的帮助文件吧,估计是对函数的理解不对。
 楼主| 发表于 2011-9-14 08:24:59 | 显示全部楼层
本帖最后由 pqxx 于 2011-9-14 13:05 编辑
" Q5 Z6 e8 x  g0 ]4 K7 n9 k$ S
Inwater 发表于 2011-9-12 18:21 ( V; J: Y* B: Y/ Q$ B- N
我曾遇到过LZ这个问题
# i4 n+ L+ Y- ELZ可以HELP:tablefile.find;仔细看里面的意思。当执行method时,在表格里寻找之前 ...
7 C. X) ^: f+ S2 v
, k. }5 U* P1 y% X' L
使用cardfile,在find前面加上cardfile.cursor:=1就没问题了
' X& A: d( R, l/ ?# \- g我再试试tablefile啊,先谢谢啦7 n: Z* Z1 d0 K9 `
在tablefile前面加上tablefile.cursorX:=1和tablefile.cursorX:=1也OK了
 楼主| 发表于 2011-9-14 15:01:00 | 显示全部楼层
taoyifei2000 发表于 2011-9-14 13:41
+ H6 ]& y  K) U刚看到消息,看你已经解决了,修改的模型就不发了,祝贺你,其实就是每次循环光标要初始化一下。 ...
5 ]1 ?! N* ^* ^( _+ q
谢谢啊,版面上这个板块的高手最热心肠啦
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-21 17:18 , Processed in 0.029334 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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