| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1749 人关注过本帖
标题:如何在相同的数据窗口对象中进行不同条件检索
只看楼主 加入收藏
ヤ順祺冄繎ヤ
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:3032
专家分:0
注 册:2005-11-9
收藏
得分:0 
以下是引用piaoling121在2006-4-6 14:44:00的发言:
还要请教,或许是我没有清楚的表达我的意思,setfilter()和filter是过滤数据窗口内的数据而且过滤条件也应该与数据窗口内的列有关系,但是我要依靠表中的其它列来作为条件,进行过滤,我想这种方法不可行,还请版主帮忙。多谢

不知道我看懂你的意思了沒?
你的意思就是在說你的過濾條件是沒有在數據窗口中的列是吧! ̄
但是都是一張表是吧 ̄
你可以在SQL裏進行選擇後。。在數據窗口中將其列給刪除,不讓其顯示出來。
這樣也可以達到用數據窗口過濾的問題。不知道你問的是不是這個意思。

2006-04-06 14:56
piaoling121
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2006-4-4
收藏
得分:0 
真的不好意思,还要麻烦版主,请教一下怎么设置setfilter()
的参数,因为我所要过滤的条件是个变量,其值在ddlb_1.text中如果我设置一个变量string h
h=ddlb_1.text
那我怎么过滤,刚才弄了半天还是没做出来,请帮帮忙多谢了
2006-04-06 16:09
ヤ順祺冄繎ヤ
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:3032
专家分:0
注 册:2005-11-9
收藏
得分:0 
[CODE]
str_filter = '列名 ='+ hh //列名为与其ddlb关系的数据列,并不显示,hh为你所接受的ddlb_1.text值
strfilter(str_filter)
filter()
[/CODE]
2006-04-06 16:13
piaoling121
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2006-4-4
收藏
得分:0 

char hh,ye
w_zhudang_shang_shangpin.dw_1.settransobject(sqlca)
int bbb
if rb_1.checked=true and ddlb_1.text <> "" then
hh=ddlb_1.text
ye='tc_code='+hh
w_zhudang_shang_shangpin.dw_1.retrieve()
w_zhudang_shang_shangpin.dw_1.SetFilter("")w_zhudang_shang_shangpin.dw_1.SetFilter(ye)

w_zhudang_shang_shangpin.dw_1.Filter( )

//bbb=w_zhudang_shang_shangpin.dw_1.rowcount()

close(parent)
w_zhudang_shang_shangpin.cb_1.enabled=true
w_zhudang_shang_shangpin.cb_3.enabled=true
w_zhudang_shang_shangpin.cb_5.enabled=true
elseif rb_2.checked=true then
w_zhudang_shang_shangpin.dw_1.retrieve()
close(parent)
w_zhudang_shang_shangpin.cb_1.enabled=true
w_zhudang_shang_shangpin.cb_3.enabled=true
w_zhudang_shang_shangpin.cb_5.enabled=true
else
messagebox("系统提示","请选择细分类")
end if

还要麻烦版主,你帮我看看这段程序,还是不好用啊,多谢了

2006-04-06 16:34
ヤ順祺冄繎ヤ
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:3032
专家分:0
注 册:2005-11-9
收藏
得分:0 
以下是引用piaoling121在2006-4-6 16:34:00的发言:

string hh,ye
w_zhudang_shang_shangpin.dw_1.settransobject(sqlca)
int bbb
if rb_1.checked=true and ddlb_1.text <> "" then
hh=ddlb_1.text
ye='tc_code='+hh
w_zhudang_shang_shangpin.dw_1.retrieve()
w_zhudang_shang_shangpin.dw_1.SetFilter("") //什麽意思?
w_zhudang_shang_shangpin.dw_1.SetFilter(ye)
w_zhudang_shang_shangpin.dw_1.Filter( )
//bbb=w_zhudang_shang_shangpin.dw_1.rowcount()
close(parent)
w_zhudang_shang_shangpin.cb_1.enabled=true
w_zhudang_shang_shangpin.cb_3.enabled=true
w_zhudang_shang_shangpin.cb_5.enabled=true
elseif rb_2.checked=true then
w_zhudang_shang_shangpin.dw_1.retrieve()
close(parent)
w_zhudang_shang_shangpin.cb_1.enabled=true
w_zhudang_shang_shangpin.cb_3.enabled=true
w_zhudang_shang_shangpin.cb_5.enabled=true
else
messagebox("系统提示","请选择细分类")
end if

还要麻烦版主,你帮我看看这段程序,还是不好用啊,多谢了

麻烦你编程有点規範好不?好難看。
再加上要寫注釋,以後大程序你就會明白的,沒注釋即使是你前兩天才寫的代碼就不一定能看懂。
你的代碼沒大問題呀,不能運行嗎?
還是DW裏你沒選擇tc_code這個列?

2006-04-06 16:45
piaoling121
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2006-4-4
收藏
得分:0 
呵呵,是啊,版主说的对,本人就是比较不羁那种人。所以写的程序比较乱,以后会改的,不过tc_code列我在dw里已经选了,还是不好用
w_zhudang_shang_shangpin.dw_1.SetFilter("") //什麽意思
这列的意思是如果要删除DATAWEINDOW对象的过滤准则,应先将setfilter函数的format参数设置为空串(""),
运行报错
Types of expressions must match.
并不是按要求提取所需要的数据,而是显示所有数据
2006-04-06 17:05
ヤ順祺冄繎ヤ
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:3032
专家分:0
注 册:2005-11-9
收藏
得分:0 
Types of expressions must match.

类型不匹配,你将数据类型变一下就可以了.
你哪个tc_code是什么类型
转换一下就可以了.
2006-04-06 17:27
piaoling121
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2006-4-4
收藏
得分:0 
版主,可以交个朋友吗,有很多问题需要请教

[ 本帖最后由 piaoling121 于 2012-4-15 13:28 编辑 ]
2006-04-06 18:18
piaoling121
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2006-4-4
收藏
得分:0 
[QUOTE][CODE][CODE][CODE]

string hh,ye

if rb_1.checked=true and ddlb_1.text <> "" then
hh=ddlb_1.text
ye="tc_code="+ hh
w_zhudang_shang_shangpin.dw_1.settransobject(sqlca)
w_zhudang_shang_shangpin.dw_1.retrieve()
w_zhudang_shang_shangpin.dw_1.SetFilter("")


w_zhudang_shang_shangpin.dw_1.SetFilter(ye)

w_zhudang_shang_shangpin.dw_1.Filter( )



close(parent)

w_zhudang_shang_shangpin.cb_1.enabled=true
w_zhudang_shang_shangpin.cb_3.enabled=true
w_zhudang_shang_shangpin.cb_5.enabled=true

elseif rb_2.checked=true then
w_zhudang_shang_shangpin.dw_1.settransobject(sqlca)
w_zhudang_shang_shangpin.dw_1.retrieve()
close(parent)

w_zhudang_shang_shangpin.cb_1.enabled=true
w_zhudang_shang_shangpin.cb_3.enabled=true
w_zhudang_shang_shangpin.cb_5.enabled=true
else
messagebox("系统提示","请选择细分类")
end if

红色的这段代码,报错expression is not valid(这是在下拉列表框内为字母的时候)Types of expressions must match.(这是在下拉列表框为数字的时候)不知道该怎么办了,还是请版主拉兄弟一把,这个程序比较着急用,可是就做不对了,多谢了

2006-04-06 19:11
ヤ順祺冄繎ヤ
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:3032
专家分:0
注 册:2005-11-9
收藏
得分:0 
你慢慢試著改一下,
前面哪個錯誤是提示,表達式無效,後面一個是提示類型爲數據型
你數據tc_code是什麽類型?
你把hh=string(ddlb_1.text)轉換。
2006-04-07 08:47
快速回复:如何在相同的数据窗口对象中进行不同条件检索
数据加载中...
 
   



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

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