- 北有云溪
-
这个是过滤的代码,查询(模糊查询)如下:
string s
if sle_1.text="" then
messagebox("提示","请输入要查找的内容")
else
s=sle_1.text//查询框里输入的内容赋值给S
dw_1.setfilter("t1.t1_brxm like"%"+s+"%"")//t1.t1_brxm是指你要查找的内容的代号,比如:姓名,然后后面的s是你在查询框里输入的内容
dw_1.setfocus() //给焦点
dw_1.settransobject(sqlca) //连接上你的数据库
dw_1.retrieve()
end if
("设备序列号 =""+sle_1.text+""")这句的加号和引号问题:
+和+中间的部分是一个字符型的变量,所以过滤的PB语法规定在引号内用两+好来表示,其实还可以这样的:"%"+sle_1.text+"%"
这只是它的语法问题,只有可以说该怎么不该怎么的解释。
- ardim
-
dw_1.dataobject="jn2" dw_1是某个数据窗口控件,放在窗口上用来显示数据的,jn2是一个数据窗口,通常是通过sql语句或存储过程从数据库中查询数据的
dw_1.settransobject(sqlca) sqlca是个事务对象,一般在程序开始的时候已经初始化了,是用来连接数据库的,这说明了这些数据是从sqlca所连接的数据库中查询的
dw_1.setfilter("") 这句是清空过滤条件的,就是数据窗口查询出来的所有数据都显示
dw_1.setfilter("设备序列号 =""+sle_1.text+""") ,这句是设定过滤条件的,也就是查询结果中只显示符合过滤条件的数据
dw_1.retrieve() 这句是让数据窗口去数据库执行取数
- 北境漫步
-
dw_1.dataobject="jn2"
dw_1.settransobject(sqlca)
dw_1.retrieve()
dw_1.setfilter("设备序列号 =""+sle_1.text+""")
dw_1.setfilter()
正解
- cloud123
-
查询看起来是对的,不过过滤看起来是有问题的,查询retrieve()结束之后
应当执行filter()。
dw_1.setfilter("设备序列号 =""+sle_1.text+""")
dw_1.filter( )
[前几位回答的朋友都写错了,不是dw_1.setfilter()]
不过你指的不对,是哪里不对?
- FinCloud
-
改为:
dw_1.dataobject="jn2"
dw_1.settransobject(sqlca)
dw_1.retrieve()
dw_1.setfilter("设备序列号 =""+sle_1.text+""")
dw_1.setfilter()