設(shè)為首頁收藏本站Access中國

Office中國論壇/Access中國論壇

 找回密碼
 注冊

QQ登錄

只需一步,快速開始

返回列表 發(fā)新帖
查看: 3305|回復(fù): 1
打印 上一主題 下一主題

為什么 Server Filter不起作用

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
1#
發(fā)表于 2009-2-5 08:42:55 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
我在ADP窗體中 做了動態(tài)的服務(wù)器篩選功能 另外做了針對字段的排序。 發(fā)現(xiàn)只要我排完序再改變服務(wù)器篩選條件, 結(jié)果就沒反應(yīng)。 而單獨運(yùn)行窗體的篩選和排序都沒問題。
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 分享淘帖 訂閱訂閱
2#
發(fā)表于 2009-2-5 09:32:08 | 只看該作者
由于你沒貼出代碼,估且猜一下了,是不是沒有改成對serverfilter來操作?(希望沒有把問題想得太簡單而對提問者造成冒犯)

問題說明越詳細(xì),回答也會越準(zhǔn)確!參見如何提問。(提問的智慧

以下摘自 Microsoft Access 2003 Help

Filter 屬性
使用 Filter 屬性可以在對窗體、報表 查詢應(yīng)用篩選時指定要顯示的記錄子集。String 型,可讀/寫。
expression.Filter
expression      必需。返回“應(yīng)用于”列表中的一個對象的表達(dá)式。
說明
Microsoft Access 項目 (.adp) 中,如果要為服務(wù)器上的數(shù)據(jù)指定服務(wù)器篩選,請使用 ServerFilter 屬性。
Filter 屬性是一個字符串表達(dá)式,它包含了一個不帶 WHERE 關(guān)鍵字的 WHERE 子句。例如下面的 Visual Basic 代碼定義并應(yīng)用篩選以只顯示來自美國的顧客:

ServerFilter 屬性
當(dāng)服務(wù)器篩選應(yīng)用于 Microsoft Access 項目 (.adp) 中的窗體報表,或者 Microsoft Access 項目 (.adp) 或數(shù)據(jù)庫 (.mdb) 中的數(shù)據(jù)訪問頁時,可以使用 ServerFilter 屬性指定要顯示的記錄子集。String 型,可讀寫。

expression.ServerFilter
expression      必需。返回“應(yīng)用于”列表中的一個對象的表達(dá)式。
說明
ServerFilter 屬性是一個由不帶 WHERE 關(guān)鍵字的 WHERE 子句組成的字符串表達(dá)式。例如,以下的 Visual Basic 代碼定義并應(yīng)用了僅顯示美國用戶的篩選:
Me.ServerFilter = "Country = 'USA'"
Me.Refresh
        
設(shè)置該屬性的最簡單的方法是通過使用窗體或報表的屬性表。也可以通過使用 Visual Basic 在窗體或報表中設(shè)置該屬性。
若要設(shè)置 ServerFilter 屬性,必須首先執(zhí)行下列操作之一:

  • 在窗體的屬性表中設(shè)置屬性值。
  • 在 Visual Basic 中通過鍵入以下內(nèi)容設(shè)置該屬性: Forms(0).ServerFilter = "fieldname = value"
注釋  設(shè)置 ServerFilter 屬性不會影響 ADO Filter 屬性。


可以使用 ServerFilter 屬性來保存篩選以備后用。篩選和在其中創(chuàng)建篩選的對象一起保存。當(dāng)對象打開時,會自動加載篩選,但不自動應(yīng)用篩選。

若要對窗體應(yīng)用已保存的篩選,可以單擊工具欄上的“應(yīng)用服務(wù)器篩選”、單擊“記錄”菜單上的“應(yīng)用篩選/排序”、使用宏或 Visual Basic 將 ServerFilterByForm 屬性設(shè)置為 True。

“應(yīng)用服務(wù)器篩選”按鈕指明 ServerFilterServerFilterByForm 屬性的狀態(tài)。除非應(yīng)用了篩選,否則該按鈕一直保持禁用狀態(tài)。如果當(dāng)前應(yīng)用了一個現(xiàn)有篩選,則“應(yīng)用服務(wù)器篩選”按鈕顯示為已按下狀態(tài)。
若要在窗體打開時自動應(yīng)用篩選,請在窗體的 OnOpen 事件屬性設(shè)置中,指定一個使用 ApplyFilter 操作的宏,或指定一個使用 DoCmd 對象的 ApplyFilter 方法的事件過程。無論哪種情況,窗體都會在“按窗體服務(wù)器篩選”窗口中打開。
可以僅刪除服務(wù)器篩選,方法是:使用 Visual Basic 將 ServerFilterByForm 屬性設(shè)為 False,或在“按窗體服務(wù)器篩選”窗口中清除所有篩選條件,然后單擊“應(yīng)用服務(wù)器篩選”。

當(dāng)在窗體“設(shè)計”視圖中設(shè)置 ServerFilter 屬性時,Microsoft Access 不會驗證 SQL 表達(dá)式。如果 SQL 表達(dá)式無效,則當(dāng)應(yīng)用篩選時會發(fā)生錯誤。

注釋
  • 當(dāng)新建對象時,該對象會繼承創(chuàng)建所用源表或查詢的 RecordSource、Filter、ServerFilterOrderBy 以及 OrderByOn 屬性。
  • 如果窗體的記錄源存儲過程,則會忽略 ServerFilter 屬性設(shè)置。


******************
*  一切皆有可能  *
******************

QQ群 48866293 / 12035577 / 7440532 / 13666209
http://forum.csdn.net/SList/Access .
http://www.accessbbs.cn/bbs/index.php .
http://www.accessoft.com/bbs/index.asp .
http://www.access-programmers.co.uk/forums .
http://ctxi.cn .
.
http://ctxi.cn/home/space.php?uid=141646 .
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則

QQ|站長郵箱|小黑屋|手機(jī)版|Office中國/Access中國 ( 粵ICP備10043721號-1 )  

GMT+8, 2024-10-23 08:25 , Processed in 0.087615 second(s), 25 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回復(fù) 返回頂部 返回列表