条件:
1、有个数据窗口dw_1,其中有money字段(金额,包括整数和小数)
2、有sle_1,sle_2,两个可编辑文本框,一个搜索按钮(搜索sle_1.text<='money'<=sle_2.text的信息)
3、有一个按金额排序按钮(使得数据窗口中数据按金额由小到大排序)
问题:
1、money字段在数据库中设计时,该选择什么格式?(我现在money是varchar 30)(SQL SERVER2000)
2、搜索按钮怎么写代码?
我现在的搜索按钮代码是:
string ls_money
ls_money='string(money)>="'+string(sle_1.text)+'" and string(money)<="'+string(sle_2.text)+'"'
dw_1.settransobject(sqlca)
dw_1.setfilter(ls_money)
dw_1.filter()
dw_1.retrieve()
3、排序按钮怎么写代码?
我现在的按金额排序按钮代码是:
if ddlb_1.text='按金额' then
dw_1.setsort("money")
dw_1.sort()
end if
现在主要问题是,不管是搜索还是排序,其结果只认数值的第一位数,不认数值的实际大小。
请告知解决方法,在下新手。
------解决方案--------------------
为什么要把money 定义为varchar ? sql2000不是有个money 类型 ?
------解决方案--------------------
1.money型
2.用editmask,不用单行编辑文本框,
DW源中加两参数 where money between :m1 and :m2
dw_1.retrieve(dec(em_1.text),dec(em_2.text))
3.那是字符排序,改在money型就行了!
------解决方案--------------------
1、money在SQL中就可以直接用哪个money。PB中和他对应的可以用 dec。
2、3问题就是因为你用了varchar的缘故,改成money就好了。
------解决方案--------------------
string ls_money
ls_money="money>="+string(em_1.text)+" and money <="+string(em_2.text)
dw_1.settransobject(sqlca)
dw_1.retrieve()
dw_1.setfilter(ls_money)
dw_1.filter()
------解决方案--------------------
什么字段对应着什么属性很重要哦!我也初学pb;
能一起学习吗?
qq:763936887
------解决方案--------------------
string ls_money
ls_money="money>="+dec(em_1.text)+" and money <="+dec(em_2.text)
dw_1.settransobject(sqlca)
dw_1.retrieve()
dw_1.setfilter(ls_money)
dw_1.filter()
------解决方案--------------------
上面好象写错了。。。
string ls_money
ls_money="money>="+em_1.text+" and money <="+em_2.text"
dw_1.settransobject(sqlca)
dw_1.retrieve()
dw_1.setfilter(ls_money)
dw_1.filter()
这样应该可以了.em_1.text虽可以控制输入值只能是数字,可获取它的值时就string的了
------解决方案--------------------
呵呵,那就结贴吧!