過濾控制中顯示的資料
套用到
本文內容
概觀
當你設計 Microsoft Office InfoPath 表單範本時,可以使用篩選器來限制使用者在填寫基於該表單範本的表單時可做出的選擇。 過濾器是一組條件,用於資料以顯示該資料的子集。 你可以使用篩選器顯示資料來源的子集資料,這樣可以減少控制項中顯示的紀錄數量。
每當你需要顯示根據使用者選擇的條件查詢回傳的資料子集時,請使用篩選器。 該條件可以是從其他控制 (中選取的項目,例如列表框、組合框、下拉式清單框或綁定於資料來源欄位的文字框) 。
舉例來說,假設你正在建立一個表單範本,用來追蹤來自多個供應商的產品。 如果你列出所有供應商的產品,清單可能會非常長。 為了解決這個問題,你可以使用篩選器,讓使用者從清單中選擇供應商,並只查看該供應商的產品。 當使用者從清單框中選擇供應商時,會對重複表格套用篩選器,只顯示所選供應商的產品。 若使用者選擇其他供應商,重複表會更新該供應商的產品。
秘訣
如果你知道使用者需要查詢結果的一致子集,請修改查詢只回傳這個子集,而不是先用查詢取得所有資料再套用濾波器建立子集。 使用者會體驗到更快的表單載入時間,也減少等待查詢結果的時間,因為查詢只會回傳你需要的外部來源資料。
為了讓使用者知道資料已經被套用了過濾器,當使用者將滑鼠指標移到篩選過的資料上時,會出現過濾器圖示
。
由於篩選器限制使用者可顯示的項目數量,因此只能套用於以下類型的控制項:
- 列表框
- 下拉選單方框
- 組合盒
- 重複表
- 重複段落
相容性考量
篩選器只能用於設計為 InfoPath 填寫的表單範本。 瀏覽器相容的表單範本中無法提供篩選功能。 如果你在瀏覽器相容的表單範本中使用清單框和重複表格,建議考慮使用條件格式代替篩選器。 在「 參見 」部分找到更多關於條件格式使用資訊的連結。
設定篩選器,例如清單框、下拉列表框或組合框
要在清單框中設定篩選器,你需要在表單範本中加入清單框、下拉選單框或組合框控制項,並且綁定到有資料連線的資料來源。 你無法透過控制 屬性 對話框來過濾手動輸入到控制項的資料。
設定篩選器,例如清單框、下拉列表框或組合框
右鍵點擊你想修改的控制項,然後在快捷鍵選單中點 選控制屬性 。
點擊 資料 標籤。
執行下列其中一個動作:
- 要使用資料來源的數值,請點擊表 單資料來源中的「查找數值」。
- 要使用資料連線的數值,請點選 「查詢外部資料來源的值 」,然後在 資料來源 清單中點選你想使用的資料連線。
點選條目框旁的 Select XPath
。在 「選擇欄位或群組 」對話框中,點選包含提供控制項值欄位的欄位或群組,然後點選 「篩選資料」。
在 篩選資料 對話框中,點擊 新增。
注意
如果你想在現有的篩選條件中加入條件,請點選你想要的篩選器,然後再點擊 修改。
在 「指定篩選條件 」對話框的第一個框中,點選你想篩選資料的欄位名稱。
在第二個選項中,點選你想使用的篩選器類型。
在第三個選項中,點選你想套用到篩選器的條件類型,然後輸入條件。
若要設定多個條件,請點擊 「與」,然後執行以下其中一項:
- 要將現有條件和新條件套用到你的篩選器中,點擊 和,然後新增你的條件。
- 要套用現有條件或新條件到你的篩選器,請點擊 or,然後新增條件。
點擊 確定 鍵關閉對話框。
若要測試變更,請按一下 [標準] 工具列上的 [預覽],或按 CTRL+SHIFT+B。 表單範本會在新視窗中開啟。
在預覽視窗中,選擇篩選器控制項中的不同值來測試是否正常運作。
過濾器運作不正常
如果包含濾波器的控制項中的值不正確,無論是值太多或值不足,請嘗試以下方法:- 如果你在過濾器中使用多個條件,請移除除一個條件外的所有條件,以確認該條件回傳的值是否正確。 如果第一個條件回傳正確值,再加入另一個條件並進行測試。
- 過濾器區分大寫與小寫字元。 如果你想顯示以大寫或小寫字元開頭的資料,請建立一個帶有大寫字母條件的過濾器,選擇 或 在 「指定篩選條件 」對話框中,然後建立小寫字母條件。
- 如果篩選後的數值與你預期的完全相反,例如顯示的是所有供應商的產品,而不是單一供應商的產品,請更改條件下的過濾器類型。 例如,如果你的條件使用過濾器類型等於 ,且你得到的產品太多,試著使用過濾器類型不等於 。
為重複段落或重複表格設定過濾器
若要在重複區段或重複表格中配置篩選器,您需要在表單範本中包含符合以下需求的區段或表格:
- 重複區段或表格綁定於重複欄位或群組。
- 重複區段或表格中至少包含一個控制項,該控制項綁定在具有資料連線的欄位。
例如,你可以在重複區塊中使用文字框控制項來顯示欄位中的資料。
為重複段落或重複表格設定過濾器
右鍵點擊表單範本下方的 重複表格 或重複 區段 標籤,然後在快捷選單點擊 控制屬性 。
按一下 [顯示] 索引標籤。
點擊 篩選資料。
在 篩選資料 對話框中,點擊 新增。
注意
要為現有篩選條件新增條件,點選你想要的篩選條件,然後點擊 修改。
在 「指定篩選條件 」對話框的第一個框中,點選你想篩選資料的欄位名稱。
在第二個選項中,點選你想使用的篩選器類型。
在第三個選項中,點選你想套用到篩選器的條件類型,然後輸入條件。
若要設定多個條件,請點擊 「與」,然後執行以下其中一項:
- 要將現有條件和新條件套用到你的篩選器中,點擊 和,然後新增你的條件。
- 要套用現有條件或新條件到你的篩選器,請點擊 or,然後新增條件。
點擊兩次 確定 可以關閉開啟對話框,並返回 控制屬性 對話框。
若要向使用者顯示一個特殊的篩選圖示
,表示重複區段或重複表的資料已被過濾,請在控制屬性對話框的顯示標籤中點擊「顯示篩選器圖示」以表示已篩選項目。要測試過濾器並確保其正常運作,請在 Standard 工具列點擊預覽。 表單範本會在新視窗中開啟。
在預覽視窗中,選擇篩選器控制項中的不同值來測試是否正常運作。
過濾器運作不正常
如果包含濾波器的控制項中的值不正確,無論是值太多或值不足,請嘗試以下方法:- 如果你在過濾器中使用多個條件,請移除除一個條件外的所有條件,以確認該條件回傳的值是否正確。 如果第一個條件回傳正確值,再加入另一個條件並進行測試。
- 過濾器區分大寫與小寫字元。 如果你想顯示以大寫或小寫字元開頭的資料,請建立一個帶有大寫字母條件的過濾器,選擇 或 在 「指定篩選條件 」對話框中,然後建立小寫字母條件。
- 如果篩選後的數值與你預期的完全相反,例如顯示的是所有供應商的產品,而不是單一供應商的產品,請更改條件下的過濾器類型。 例如,如果你的條件使用過濾器類型等於 ,且你得到的產品太多,試著使用過濾器類型不等於 。