0
我新的BIRT的,我想我的問題是很容易的,但我不能看到如何實現我的目標......BIRT報表,SQL
的任務是建立在不同的法院報告其請求中包含有關法院僱員的不同信息。 DataSetRow[「COURT」]
代表報告的標題,它根據員工法院而變化,通常按字母順序更改標題,這取決於我得到的結果和請求該信息的法院。我需要讓它依賴於需要報告的用戶。爲此,我需要USER_ID
和HR
的PERSONAL_ID列匹配,因此DataSetRow[「COURT」]
應該成爲COURT列所具有的相同編號。我不知道如何定義這爲用戶...
報表參數: DATA_FORM, USER_ID
有數據庫中的兩個重要表:
USERS:這包含USER_ID列和PERSONAL_ID列。
和HR:我需要相同的PERSONAL_ID和C_COURT。
SELECT
H.PERSONAL_ID,
SURNAME||' '||NAME||' '||SNAME AS NAME,
DECODE_UNI (H.T_COURT, H.C_COURT) AS COURT,
DECODE_UNI (HA.T_COURT, HA.C_COURT) AS C_COURT,
TO_CHAR (TO_DATE(BIRTH_DATE, 'yyyymmdd'),'yyyy') AS BIRTH_DATE,
DECODE_UNI (HA.T_POSITION, HA.C_POSITION) AS POSITION,
DECODE_UNI (HA.T_DEPARTMENT, HA.C_DEPARTMENT) AS DEPARTMENT,
DECODE_UNI (HW.T_AWARD_TYPE, HW.C_AWARD_TYPE) AS AWARD_TYPE,
TO_CHAR (HW.AWARD_DATE, 'dd.mm.yyyy') AS AWARD_DATE,
HW.AWARD_DESC,
U.PERSONAL_ID AS PERSONAL_USER
FROM
HR H, HR_APPOINTMENT HA, HR_AWARD HW, USERS U
WHERE
H.PERSONAL_ID = HA.PERSONAL_ID
AND H.PERSONAL_ID = HW.PERSONAL_ID
AND HA.ACTIVE = 1
AND H.C_STATE = 1
AND HA.STATUS_LAST = 1
AND H.REC_DATE <= TO_DATE (?, 'dd.mm.yyyy')
AND USER_ID = ?
預先感謝您!
謝謝你,我已經想通了這一點:我只是創建了兩個數據集。 – alecsia