建立查詢是建立自訂報表的第一個步驟。
若要建立查詢,請執行下列動作:
從首頁中,按一下應用程式,然後按一下任務管理程式。
從類型中選取一個選項:
參數查詢:「參數查詢」類型是用來呈現您可為此參數的值指定的選項清單。「參數查詢」可讓您在填入「報表查詢」的參數值時呈現選項清單,該選項清單不是已定義的簡單「屬性」,而是需要您來定義的複雜查詢。
此參數查詢範例提供所有任務管理程式期間的清單:
SELECT PERIOD_ID, PERIOD_NAME FROM FCC_PERIODSWHERE APP_ID=1
報表查詢:選取要包含在報表中的記錄。您可以套用安全性篩選條件,如此使用者便只能查看根據其角色授予檢視的資料,以及指派給他們的報表。若要將「安全性篩選條件」套用至報表查詢,請將下列語法新增至查詢 WHERE CLAUSE 陳述式的尾端。
$FCC_SECURITY_CLAUSE$
當在查詢中使用 $FCC_SECURITY_CLAUSE$ 時,則 FCC_TASKS 的別名必須為 TaskEO
由於任務管理程式隨附的許多預先定義查詢已經套用「安全性篩選條件」,您可以在自行建置時使用它們作為範例。
例如,以下「報表查詢」指定排程任務,以顯示選定排程中所有「高優先順序」任務的「任務代碼」、「名稱」、「受指派人」和「排程」。
SELECT TaskEO.TASK_CODEAS "$TASK_CODE$",
TaskEO.TASK_NAMEAS "$NAME$" ,
((SELECT CASE WHEN FIRST_NAME IS NULL AND LAST_NAME IS NULL THEN USER_LOGIN ELSE FIRST_NAME||' '||LAST_NAME END FROM FCM_USERS WHERE USER_ID = (coalesce(AssigneeEO.ACTIVE_USER_ID, AssigneeEO.USER_ID))))AS "$ASSIGNEE$" ,
DeploymentEO.DEPLOYMENT_NAMEAS "$SCHEDULE$"
FROM FCC_TASKS TaskEO
LEFT OUTER JOIN FCC_ACCESS AssigneeEO ON (TaskEO.TASK_ID = AssigneeEO.SOURCE_ID AND AssigneeEO.ACCESS_TYPE = "AS")
LEFT OUTER JOIN FCC_DEPLOYMENTS DeploymentEO ON (TaskEO.SOURCE_ID = DeploymentEO.DEPLOYMENT_ID)
WHERE (TaskEO.SOURCE_TYPE = "DEPLOYMENT")
AND ((((TaskEO.PRIORITY=3 )
AND (TaskEO.SOURCE_ID=~SCHEDULE~ ))))
按一下產生查詢,以從「新增查詢」對話方塊建立查詢。此對話方塊可讓您選取產品中任何現有的屬性作為查詢以及/或者篩選的依據,以協助您對資料庫建立查詢。系統接著產生可比對指定的屬性與篩選條件的 SQL,您可以在此時加以修改或增強。




該查詢隨即顯示在「查詢」頁籤中。
註:
您可以輕鬆地刪除查詢,或使用「動作」功能表複製查詢。開啟此檔案可檢視產生的計畫,其中包含進行此查詢時步驟的執行順序。如果查詢效能不理想,您可以利用此計畫來瞭解問題發生的原因,並決定改善查詢效能的最佳方法。
註:
預設情況下,產生執行計畫僅適用於 OCI (Gen 2) 環境。若要在傳統環境啟用這項功能,請使用服務要求聯絡 Oracle。使用日期參數
定義任務管理程式報表的查詢時,您可以定義執行時期參數,然後將這些參數傳遞至報表查詢。如果您的報表查詢參照定義為 date 資料類型的資料庫欄,則您可能需要使用 to_date 函式,以確定系統在執行報表查詢時,能正確解譯報表參數。
在下列範例中,系統會擷取使用者輸入的日期,並在 where 子句中使用 to_date 函式,將日期轉換為查詢的正確格式。日期欄位的 where 子句項目編碼為 (TDATASEG.PERIODKEY)=to_date('~POVPERIOD~','YYYY-MM-DD'),以確定系統能以正確格式解譯從參數中選取的日期。
完整查詢為:
SELECT ENTITY, ENTITYX, ACCOUNT, PERIODKEY, tPOVPartition.PartName AS Partitionkey, tPOVCategory.CatKey, tPOVCategory.CatName, ACCOUNTX, UD1, UD1X, UD2, UD2X, UD3, UD3X, UD4, UD4X, UD5, UD5X, UD6, UD6X, UD7, UD7X, UD8, UD8X, UD9, UD9X, UD10, UD10X, UD11, UD11X, UD12, UD12X, UD13, UD13X, UD14, UD14X, UD15, UD15X, UD16, UD17X, UD18, UD18X, UD19, UD19X, UD20,UD20X,DESC1,DESC2,DATAVIEW,CURKEY,AMOUNT,AMOUNTX from TDATASEG INNER JOIN tPOVCategory ON tDataSeg.CatKey = tPOVCategory.CatKey INNER JOIN tPOVPartition ON tDataSeg.PartitionKey = tPOVPartition.PartitionKey
WHERE (((TDATASEG.PERIODKEY)=to_date('~POVPERIOD~','YYYY-MM-DD')) AND ((tPOVCategory.CatKey)=~POVCAT~) AND (~POVRULE~ is NULL or RULE_ID = ~POVRULE~) AND ((tPOVPartition.PartitionKey)=~POVLOC~ ))
期間查詢定義如下:
select periodkey, perioddesc from TPOVPERIOD
修改查詢
系統管理員可以編輯任務管理程式查詢。
從首頁中,按一下應用程式,然後按一下任務管理程式。
選取查詢頁籤 (如果尚未選取),然後從您要編輯之查詢旁的
選取編輯。
註:
如果已鎖定,請要求系統管理員解除鎖定。
選取任務管理程式 查詢。