Beispiele für das Modul "Abstimmungscompliance"
Beispiel 1
Bei diesen Beispielen der Abstimmungscompliance wird davon ausgegangen, dass Sie einen Bericht ausführen möchten, in dem die Liste der Perioden angezeigt wird, die die Häufigkeit "Monatlich" enthalten.
Wenn der Bericht, den Sie entwerfen, Parameter enthalten soll, können Sie festlegen, ob keine oder alle Datensätze im Bericht angezeigt werden.
Parameterabfrage: Select frequency_id, frequency_name from arm_frequencies
Berichtsabfrage, Möglichkeit 1: (Es werden keine Perioden zurückgegeben, wenn der Benutzer keinen Häufigkeitswert angibt.):
select p.period_name from arm_periods p, arm_period_frequencies pf where p.period_id = pf.period_id and pf.frequency_id = ~FREQUENCY~
Berichtsabfrage, Möglichkeit 2: (Es werden alle Perioden zurückgegeben, wenn der Benutzer keinen Häufigkeitswert angibt.):
select p.period_name from arm_periods p, arm_period_frequencies pf where p.period_id = pf.period_id and pf.frequency_id = coalesce(~FREQUENCY~,pf.frequency_id)
Note:
Der Parametername kann ein beliebiger Name sein, er muss jedoch in Tilden (~) eingeschlossen sein.
Bei der zweiten Möglichkeit gibt die Funktion coalesce()
den ersten Nicht-Nullwert in der Liste zurück. Wenn also die Häufigkeit (FREQUENCY) null wäre, würde pf.frequency_id
zurückgegeben werden. In diesem Fall wäre diese Bedingung immer wahr (pf.frequency_id = pf.frequency_id
), sodass alle Datensätze zurückgegeben werden.
Beispiel 2
Sie können mit einem einzelnen TEXT-Parameter (~INPUT_PARAMETER~)
, der die INSTR
-Funktion von Oracle Database verwendet, mehrere Werte an eine Berichtsabfrage übergeben, z.B. Login1, Login2, Login3.
Die folgende Beispiel-Berichtsabfrage gibt Zeilen aus der Tabelle FCM_USERS
zurück, nachdem der TEXT-Parameter "Login1,Login2,Login3" übergeben wurde.
SELECT first_name, last_name FROM fcm_users WHERE INSTR(','||'~INPUT_PARAMETER~'||',', ','||USER_LOGIN||',') > 0;
Beispiele für das Modul "Transaktionsabgleich"
Bei diesen Beispielen wird davon ausgegangen, dass Sie die Liste der Abstimmungen für einen bestimmten Abstimmungstyp sehen möchten.
Parameterabfrage
SELECT TM_RECON_TYPE.TEXT_ID AS RECONCILIATION_TYPE_ID, (TM_RECON_TYPE.NAME || ' (' || TM_RECON_TYPE.TEXT_ID || ')') AS RECONCILIATION_TYPE_NAME FROM TM_RECON_TYPE TM_RECON_TYPE
Berichtsabfrage, Option 1: Gibt keine Abstimmungen zurück, wenn der Benutzer keinen Abstimmungstyp ausgewählt hat.
SELECT TM_RECON.TEXT_ID AS RECONCILIATION_ID,TM_RECON.NAME AS RECONCILIATION_NAME, TM_RECON_TYPE.TEXT_ID AS RECONCILIATION_TYPE_ID, TM_RECON_TYPE.NAME AS RECONCILIATION_TYPE_NAME, NVL ((SELECT P_FCM_USERS.USER_NAME FROM FCM_USERS_V P_FCM_USERS WHERE TM_RECON.PREPARER = P_FCM_USERS.USER_ID ), TM_RECON.PREPARER ) AS PREPARER, TM_RECON.DESCRIPTION DESCRIPTION FROM TM_RECON TM_RECON, TM_RECON_TYPE TM_RECON_TYPE WHERE TM_RECON.RECON_TYPE_ID = TM_RECON_TYPE.RECON_TYPE_ID AND (TM_RECON_TYPE.TEXT_ID = '~RECONCILIATION_TYPE_ID~')
Berichtsabfrage, Option 2: Gibt alle Abstimmungen zurück, wenn der Benutzer keinen Abstimmungstyp ausgewählt hat.
SELECT TM_RECON.TEXT_ID AS RECONCILIATION_ID,TM_RECON.NAME AS RECONCILIATION_NAME, TM_RECON_TYPE.TEXT_ID AS RECONCILIATION_TYPE_ID, TM_RECON_TYPE.NAME AS RECONCILIATION_TYPE_NAME, NVL ((SELECT P_FCM_USERS.USER_NAME FROM FCM_USERS_V P_FCM_USERS WHERE TM_RECON.PREPARER = P_FCM_USERS.USER_ID ), TM_RECON.PREPARER ) AS PREPARER, TM_RECON.DESCRIPTION DESCRIPTION FROM TM_RECON TM_RECON, TM_RECON_TYPE TM_RECON_TYPE WHERE TM_RECON.RECON_TYPE_ID = TM_RECON_TYPE.RECON_TYPE_ID AND COALESCE('~RECONCILIATION_TYPE_ID~',TM_RECON_TYPE.TEXT_ID)
Note:
Der Parametername kann ein beliebiger Name sein, er muss jedoch in Tilden (~) eingeschlossen sein.
Bei der zweiten Möglichkeit gibt die Funktion coalesce()
den ersten Wert ungleich null in der Liste zurück. Wenn also RECONCILIATION_TYPE_ID null wäre, würde TM_RECON_TYPE.TEXT_ID
zurückgegeben werden. In diesem Fall wäre diese Bedingung immer wahr ((TM_RECON_TYPE.TEXT_ID = TM_RECON_TYPE.TEXT_ID)
, sodass alle Datensätze zurückgegeben werden.
Berichtsabfrage, Option 3: Gibt alle Abstimmungen zurück, wenn der Benutzer Zugriff hat).
SELECT TM_RECON.TEXT_ID AS RECONCILIATION_ID, TM_RECON.NAME AS RECONCILIATION_NAME, TM_RECON_TYPE.TEXT_ID AS RECONCILIATION_TYPE_ID, TM_RECON_TYPE.NAME AS RECONCILIATION_TYPE_NAME, TM_RECON.DESCRIPTION DESCRIPTION FROM TM_RECON TM_RECON, TM_RECON_TYPE TM_RECON_TYPE, ARM_RECONCILIATIONS ProfileEO WHERE TM_RECON.RECON_TYPE_ID = TM_RECON_TYPE.RECON_TYPE_ID AND TM_RECON.TEXT_ID = ProfileEO.RECONCILIATION_ACCOUNT_ID AND $ARM_SECURITY_CLAUSE$ AND ProfileEO.PERIOD_ID = -2