搭建论坛《搭建之星》论坛用户咨询 → [求助]怎么传值错误?


  共有3099人关注过本帖树形打印

主题:[求助]怎么传值错误?

帅哥哟,离线,有人找我吗?
pc_doctor
  1楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 卧龙樵夫
等级:首席分析师 帖子:1270 积分:7005 威望:0 精华:3 注册:2003-3-23 14:15:25
[求助]怎么传值错误?  发帖心情 Post By:2006-11-21 2:04:10

请大家帮我检查一下:

问题描述:本意是通过窗口3的“签订时间”和“文本编辑1”中的序列值来自
动给窗口3的“合同编号”赋值。
可是,只要是窗口1中的“数据表1”中有数据时,每次在打开窗口3的给“合同
编号”首次自动赋值时,总会将窗口1中“数据表1”中记录数带过来,并
连接起来赋值给窗口3的“合同编号”了。但接下来的赋值就正常了。
可以增加窗口1中的数据表1的数据记录进行测试:
比如——本来正常的设计编号自动赋值是:200601,200602,200603……,可
是,假如窗口1中的数据表1中有3条记录,那么,在每次打开窗口3首次自动赋
值给“合同编号”时,将会是123200601,200602,200603……;如果窗口1中
的数据表1中有4条记录,那么会1234200601,200602,200603……

 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
admin
  2楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 搭建官方
等级:管理员 帖子:5504 积分:20561 威望:9 精华:5 注册:2002-4-5 17:08:42
  发帖心情 Post By:2006-11-21 10:38:06

主要是你在“窗口1”中的记录循环构件的使用方法不对!

原因:记录循环是自动循环的,也就是当你指定了“数据集”会,循环次数就已经确定,不需要你再执行“得到当前记录”等方法。由于你执行了方法“得到当前记录”,导致缓存中自动压入了三条记录的记录号。注意,并不向你说的,它把数据表中的记录“带”出来的,而是你的“zhanghao”表只有三条记录,而你的admin帐号,恰巧默认密码为“123”,所以你误以为是把密码“123”带出来了;如果你的“zhanghao”表中有四条记录,程序的运行结果是将是“1234200601”等等。

解决办法:在窗口1的“窗口可见”事件中,删除第一条命令“得到当前记录”。


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
admin
  3楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 搭建官方
等级:管理员 帖子:5504 积分:20561 威望:9 精华:5 注册:2002-4-5 17:08:42
  发帖心情 Post By:2006-11-21 10:53:29

再向大家提供一个找程序错误的经验——调试运行的应用

程序写出来,一运行有错误,许多人往往不知所措,无从下手查找,以主楼为例,实例有多个事件设置,到底是哪个事件设置出了问题?首先,按照楼主的程序运行,运行一遍,确实出现上述错误,下一步,就要调试运行,判断不可能出错的地方把不可能,采用“正常”执行方式,一带而过,重点检查出错的事件,用“单步”执行方式,这时就发现,在缓冲中总是多一个1、2、3,三个字符,而在这之前,从来没有提取过这三个字符,就要从自动执行的事件去找,如窗口创建、窗口可见等事件,从主楼提供的例子看,在窗口可见中,记录循环构件的用法,显然是有问题的,问题也就迎刃而解了。


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
pc_doctor
  4楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 卧龙樵夫
等级:首席分析师 帖子:1270 积分:7005 威望:0 精华:3 注册:2003-3-23 14:15:25
  发帖心情 Post By:2006-11-21 12:27:59

谢谢admin的指导和矫正。我也是经过单步跟踪时发现了缓存中的这个问题,确实是有多少条记录数就带多少出来,就是没有搞清楚怎么去解决。

但,这个小问题值得大推敲,不放过任何一个“坏人”加以深入讨论,也许,对星的优化有帮助:

——你再仔细单步跟踪时,会发现这个多余的“东东”,是在执行了admin讲的错误之后出现在内存中的,可是之后又有几个步骤是已经消失了的,就连打开窗口3时也曾消失了的,就是在准备进行字符串连接时怎么又钻出来了?

——这就提出个问题:必须加强内存控制和管理。在该例中的连接语句中看似:

参数> 窗口3.行编辑1.属性:(当前编辑内容)
参数> 自定义.字符:"0"
参数> 窗口3.行编辑3.属性:(当前编辑内容)
参数> 运算.以上各项进行字符串:<连接>

而实际上是将当前缓存中所有的字符进行连接的,今后大家要注意到这点。同时,星最好能有个处理缓存的功能就好了,也许将来会让她派上用场的!


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部

返回版面帖子列表

[求助]怎么传值错误?








签名