使用者篩選

資料總管區域包含定義使用者篩選的功能,讓使用者可以輸入資料來限制該區域的資料列和/或資料欄。您可以利用「使用者篩選」參數 1 至 25 來個別定義篩選。您也可以選擇定義 UI 對應來擷取篩選。在此情況下,對應的輸入欄位必須要與區域的篩選相關聯,方法是在相關的「使用者篩選」參數中指定 xpath= 記憶碼。

這些參數適用於區域類型

  • 資訊資料總管 - 多個 SQL (F1-DE)

  • 查詢資料總管 - 多個 SQL (F1-DE-QUERY)

  • 資訊資料總管 - 單一 SQL (F1-DE-SINGLE)

您可以利用下列記憶碼來定義使用者篩選:

記憶碼

描述

有效值

註釋

name=

當您必須要把另一個區域之全域內容、入口內容或廣播的值預先植入區域的篩選時,就要使用此記憶碼。

中繼資料欄位名稱

datasource=

此記憶碼會定義您在 name 記憶碼中定義之篩選預先植入值的來源。

如果將此記憶碼保留空白,則預設行為如下:

- 如果已從另一個區域廣播欄位,便會使用廣播值。

- 如果未廣播任何值,便會檢查入口內容以確定此欄位是否存在 (如果存在,就會採用其值)。

- 如果仍然沒有值,便會檢查全域內容。

- 如果仍沒有廣播值,系統就不會顯示預設值。

G

指出區域應該在全域內容中尋找篩選條件值。

P

指出區域應該在入口內容中尋找篩選條件值。

D

指出區域應該在頁面資料模型中尋找篩選條件值。

type=

定義用來擷取篩選條件值的視覺隱喻。

DATE

此類型的篩選條件會擷取日期。

DATE/TIME

此類型的篩選條件會擷取日期和時間。

STRING

此類型的篩選條件會擷取字串。

MONEY

此類型的篩選條件會擷取貨幣欄位。此類型的篩選條件必須也參考 cur 記憶碼。

NUMBER

此類型的篩選條件會擷取數值欄位。此類型的篩選條件也可以參考 decimals 記憶碼。

LOOKUP

此類型的篩選條件會擷取查尋值。此類型的篩選條件必須也參考 lookup 記憶碼。

TABLE

此類型的篩選條件會擷取管理資料表的值 (代碼與描述)。此類型的篩選條件必須也參考 table 記憶碼。

CHARTYPE

此類型的篩選條件會擷取特性類型的預先定義特性值 (代碼與描述)。此類型的篩選條件必須也參考 chartype 記憶碼。

ASIS

此類型的篩選條件會擷取要在 SQL 陳述式之 'IN' 子句內參考的值列表。

label=

定義會出現在區域描述列或是輸入區域中的篩選標籤。

中繼資料欄位名稱

請輸入其標籤會被系統當作篩選標籤的有效欄位名稱。需要多種語言時,應該一律使用此選項。

'text'

直接定義文字。

cur=

定義當 type=MONEY 時,系統套用的幣別代碼。

幣別代碼

輸入有效幣別代碼的參考。

dec=

type=NUMBER 時,定義小數位數。

有效數字

此為選擇性。如果提供,就應該是整數。如果未提供,小數位數將預設為安裝記錄上所指定幣別代碼上定義的小數位數。

lookup=

定義當 type=LOOKUP 時顯示其值的查尋標誌。

查尋欄位名稱

輸入有效查尋欄位名稱的參考。

table=

定義當 type=TABLE 時顯示其值的管理資料表。

資料表名稱

請輸入有效控制資料表名稱的參考。

chartype=

定義當 type=CHARTYPE 時顯示其值的特性類型代碼。

特性類型代碼

輸入有效的特性類型代碼的參考。

xpath=

此記憶碼是與篩選區域 UI 對應一起使用。您必須針對每個篩選,指定相對應之 UI 對應結構元素的 XPath。

XPath

您也必須使用適合該對應之輸入欄位的 type= 記憶碼,否則查詢的 SQL 可能會失敗。

likeable=

此記憶碼會定義當 type=STRING 時,是否要針對輸入值執行類似的搜尋。

S

查詢會將 % 新增至篩選值的後綴。

P

查詢會將 % 新增至篩選值的前綴。

PS

查詢會將 % 新增至篩選值的前綴和後綴。

divide=

此記憶碼會控制分隔線出現在篩選上方和/或下方。

請注意,若要將分隔線放置在篩選上下方,您可以指定此參數兩次,例如 divide=above divide=below

above

這會將分隔線放置在篩選上方。

below

這會將分隔線放置在篩選下方。

searchField=

此記憶碼控制從 UI 對應將區域啟動為搜尋時,篩選條件的初始植入。

中繼資料欄位名稱

請輸入與您在 UI 對應之 oraSearchField HTML 元素中所指定的 searchField 名稱完全相符的欄位名稱。

encrypt=

此記憶碼會定義使用者篩選是否已加密,且需要藉由雜湊值來搜尋。

[TBL_​NAME,FLD_​NAME,WHERE_​FLD,WHERE_​VALUE]

請注意:此處所參考的欄位名稱必須是欄位的來源值。然而,SQL 必須使用其篩選中的雜湊值。

需要有效的資料表名稱和欄位名稱。

WHERE_​FLD 和 WHERE_​VALUE 可以省略,但如果輸入,則兩者都是必要的。請只在您確定另一個欄位有特定的值時,再使用此方法來為欄位加密。以下是範例。

encrypt=[CI_​PERSON,PER_​ID_​NBR,ID_​TYPE_​NBR,'SSN']。而 WHERE_​VALUE 也可以參考另一個篩選。以下是範例。

encrypt=[CI_​PERSON,PER_​ID_​NBR,ID_​TYPE_​NBR,F1]

範例:

  • label=F1_​NBR_​DAYS type=NUMBER

  • label=F1_​SHOW_​ALL_​REQ_​FLG type=LOOKUP lookup=F1_​SHOW_​ALL_​REQ_​FLG

  • 篩選值,其中「篩選 UI 對應」已定義,且「描述」為其中一個篩選。type=STRING xpath=description likeable=S

    • type=STRING label=DESCR likeable=S divide=below

    • label=REQ_​TYPE_​CD type=TABLE table=F1_​REQ_​TYPE