| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 579 人关注过本帖
标题:请问这段代码有问题吗?
只看楼主 加入收藏
smart921
Rank: 1
等 级:新手上路
帖 子:107
专家分:9
注 册:2010-8-8
结帖率:86.96%
收藏
已结贴  问题点数:18 回复次数:5 
请问这段代码有问题吗?
请问这段代码有问题吗?运行后提示“操作符/操作类型不匹配”!
local findstr,oldrecord
oldrecord=recno()
set exact off
do case
case thisform.findtype.value=1
   findstr=alltri(thisform.findkey.value)+"$xm"
case thisform.findtype.value=2
   findstr=alltri(thisform.findkey.value)+"$scbh"
endcase
sele txxx
set filt to &findstr
go top
do while .not.eof()
  txxx.refresh
  thisform.windowstate=1
  if messagebox("是此人吗?",4+32,"离退休信息核对")=6
    exit
  else
    skip
    txxx.refresh
  endif
  thisform.windowstate=0
enddo
if eof()
  messagebox("未找到此人吗?",4+32,"离退休信息核对")
  go oldrecord
endif
set filt to
txxx.refresh
thisform.release
搜索更多相关主题的帖子: 信息 local 
2011-05-06 08:18
qjbzjp
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:尧的故乡
等 级:贵宾
威 望:48
帖 子:1914
专家分:4397
注 册:2007-3-14
收藏
得分:6 
在表单的init事件中放入以下代码,保证文本框接收数据的格式正确:
thisform.findkey.value=""
thisform.findtype.value=0

相互学习,互相交流,共同提高。
2011-05-06 08:42
smart921
Rank: 1
等 级:新手上路
帖 子:107
专家分:9
注 册:2010-8-8
收藏
得分:0 
回复 楼主 smart921
非常感谢!我已经将另一张表单“离退休信息核对”的NAME设为“TXXX”了,可是运行后还显示“找不到对象TXXX”!
2011-05-06 09:13
qjbzjp
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:尧的故乡
等 级:贵宾
威 望:48
帖 子:1914
专家分:4397
注 册:2007-3-14
收藏
得分:3 
要将表单的文件名改成“离退休信息核对”(对应的表单文件:离退休信息核对.SCT、离退休信息核对.SCX)

相互学习,互相交流,共同提高。
2011-05-06 10:25
xuminxz
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:41
帖 子:766
专家分:2517
注 册:2011-5-8
收藏
得分:3 
txxx似乎是表单集中的一个表单吧?如果是应该这样引用 thisformset.txxx.refresh;如果不是,要用txxx的文件名.refresh来引用,不是用它的name属性来引用。
另外,你的整体设计思路似乎不是太好
你好像要在一个表中找到一些记录,提供了几种匹配方式供选择。比较简单,而且还有扩展性的方法是生成一个新数据表再把这个数据放到一显示结果表格对应的临时表中。这样通用性更好。

dBase有人接盘了。
2011-05-08 16:39
xuminxz
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:41
帖 子:766
专家分:2517
注 册:2011-5-8
收藏
得分:6 
这样做是不是好些?
sele * from txxx into dbf ls where 查询条件
do form txxx
在txxx的load事件中加上
if used('cxjgtmp')
    use in cxjgtmp
endif
select txxx
=afield(tmpstr)
create cursor cxjgtmp from array tmpstr
在初始化事件中加入
thisform.grid1.recordsource='cxjgtmp'
thisform.grid1.column1.controlsource='cxjgtmp.xm'
thisform.grid1.column2.controlsource='cxjgtmp.……'
……
sele cxjgtmp
append from ls
go top
* cxjgtmp &&txxx表单中显示结果的表格对应的临时表

dBase有人接盘了。
2011-05-08 16:49
快速回复:请问这段代码有问题吗?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018761 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved