setfilter()函数改错
dw_1.setfilter("开课班级='"+ddplb_2.text+"'" +" and 课程名称='"+ddplb_4.text+"'" +" and 学期='"+Integer(ddplb_3.text)"'")
dw_1.filter()
我在表中定义的 学期是int型的,其余字段为 字符型的
请帮忙改错
问题点数:0、回复次数:14Top
1 楼andyzq(小强)回复于 2003-06-04 10:03:19 得分 0
dw_1.setfilter("开课班级='"+ddplb_2.text+"'" +" and 课程名称='"+ddplb_4.text+"'" +" and 学期="+ddplb_3.text)
Top
2 楼zyzj216(秋水玲珑寒)回复于 2003-06-04 10:05:10 得分 0
dw_1.setfilter("开课班级='"+ddplb_2.text+"'" +" and 课程名称='"+ddplb_4.text+"'" +" and 学期="+Integer(ddplb_3.text)"")
dw_1.filter()
最后一个int型,就不用加单引号了Top
3 楼zal325(songsong)回复于 2003-06-04 10:14:55 得分 0
up
当在pb编程时没有错误,在运行时出现错误
expression is not validTop
4 楼lsycat()回复于 2003-06-04 10:23:59 得分 0
dw_1.setfilter("开课班级='"+ddplb_2.text+"'" +" and 课程名称='"+ddplb_4.text+"'" +" and 学期="+Integer(ddplb_3.text))
dw_1.filter()
Top
5 楼JXSJXS()回复于 2003-06-04 12:41:10 得分 0
dw_1.setfilter("开课班级=~"" + ddplb_2.text+"~"" + " and 课程名称=~"" + ddplb_4.text+ "~"" + " and 学期=integer(" + ddplb_3.text + ")")
dw_1.filter()
应该用双引号吧,而且最后一部分好像这样比较好
Top
6 楼JXSJXS()回复于 2003-06-04 12:42:26 得分 0
错了少加了个双引号
dw_1.setfilter("开课班级=~"" + ddplb_2.text+"~"" + " and 课程名称=~"" + ddplb_4.text+ "~"" + " and 学期=integer(~"" + ddplb_3.text + "~")")
dw_1.filter()
Top
7 楼devil_heart(心魔)回复于 2003-06-04 15:37:25 得分 0
dw_1.setfilter("开课班级='"+ddplb_2.text+"'" +" and 课程名称='"+ddplb_4.text+"'" +" and 学期="+ddplb_3.text)
dw_1.filter()
Top
8 楼jinmis()回复于 2003-06-21 14:36:56 得分 0
在PB中为什么("开课班级='"+ddplb_2.text+"'" +" and 课程名称='"+ddplb_4.text+"'" +" and 学期="+ddplb_3.text)
其中" ' 好麻烦呀,,,有时候都分不清楚的....
有没有什么好的区分方法与或者相关介绍吗???Top
9 楼molder(gjf)回复于 2003-06-21 14:59:21 得分 0
如果学期是整型:
dw_1.setfilter("开课班级='"+ddplb_2.text+"'" +" and 课程名称='"+ddplb_4.text+"'" +" and 学期="+ddplb_3.text"")
dw_1.filter()
Top
10 楼haiweiwei()回复于 2003-06-22 09:50:14 得分 0
integer i_xq
i_xq = integer(trim(ddplb_3.text))
dw_1.setfilter("trim(开课班级)='"+trim(ddplb_2.text)+"' and trim(课程名称)='"+trim(ddplb_4.text)+"' and 学期=i_xq")
dw_1.filter()Top
11 楼Pegasuscc(羽之)回复于 2003-06-22 10:28:07 得分 0
dw_1.setfilter("开课班级='"+ddplb_2.text+"'" +" and 课程名称='"+ddplb_4.text+"'" +" and 学期='"+Integer(ddplb_3.text)"'")
dw_1.filter()
把学期的引号和括号去掉改成
dw_1.setfilter("开课班级='"+ddplb_2.text+"'" +" and 课程名称='"+ddplb_4.text+"'" +" and 学期="+ddplb_3.text)
dw_1.filter()
因为你转换成整型了,老大你知道整型怎么和字符串相加啊,那得出个什么东东啊
还有PB在字符串是不检查的只要是字符串它就不管了。
你为什么要用过滤啊,过滤这个东西很慢的,他要先把数据全部查询出来后再过滤,你要用动态SQL的话,会快很多,根本不用找那么多数据Top
12 楼ldy(罗大佑)回复于 2003-06-22 10:46:57 得分 0
搜索一下,好多关于FILTER的使用 方法Top
13 楼nj_sl(小波)回复于 2003-06-23 17:15:15 得分 0
调试一下不就看清楚了吗,除了INT类型的,其它的要加上引号
还不行的话,就把它拷出作为条件执行,不过这样做有时还是查不出错误.Top
14 楼devil_heart(心魔)回复于 2003-06-23 18:00:12 得分 0
同意
dw_1.setfilter("开课班级='"+ddplb_2.text+"'" +" and 课程名称='"+ddplb_4.text+"'" +" and 学期="+ddplb_3.text)Top




