Exemplos de Conformidade da Reconciliação
Exemplo 1
Esses exemplos de Conformidade da Reconciliação supõem que você queira executar um relatório que exiba a lista de períodos que contenham a frequência "Mensalmente".
Se o relatório que você está criando contiver parâmetros, será possível criar o relatório para exibir nenhum registro ou todos os registros.
Consulta de Parâmetro: select frequency_id, frequency_name from arm_frequencies
Consulta de Relatório, Opção 1: (Não retornará períodos se o usuário não fornecer um valor de frequência):
select p.period_name from arm_periods p, arm_period_frequencies pf where p.period_id = pf.period_id and pf.frequency_id = ~FREQUENCY~
Consulta de Relatório Opção 2: (Retornará todos os períodos se o usuário não fornecer um valor de frequência):
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:
O nome do parâmetro pode ser qualquer nome delimitado por sinais de til (~).
Na segunda opção, a função coalesce()
retorna o primeiro valor não nulo na lista; portanto, se FREQUENCY fosse nula ela retornaria pf.frequency_id
e, nesse caso, essa condição também seria verdadeira (pf.frequency_id = pf.frequency_id
), fazendo com que todos os registros fossem retornados.
Exemplo 2
Você pode especificar diversos valores, como Login1, Login2 e Login3 usando um único parâmetro TEXT (~INPUT_PARAMETER~)
em um a consulta de relatório que usa a função INSTR
do Oracle Database.
O exemplo a seguir de consulta de relatório retorna linhas da tabela FCM_USERS
depois que um parâmetro TEXT de Login1,Login2,Login3 é especificado.
SELECT first_name, last_name FROM fcm_users WHERE INSTR(','||'~INPUT_PARAMETER~'||',', ','||USER_LOGIN||',') > 0;
Exemplos de Correspondência de Transações
Esses exemplos supõem que você queira ver a lista de reconciliações para qualquer tipo determinado de reconciliação.
Consulta de Parâmetro
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
Consulta de Relatório, Opção 1: não retornará reconciliações se o usuário não tiver selecionado um tipo de reconciliação.
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~')
Consulta de Relatório, Opção 2: retornará todas as reconciliações se o usuário não tiver selecionado algum tipo de reconciliação.
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:
O nome do parâmetro pode ser qualquer nome delimitado por sinais de til (~).
Na segunda opção, a função coalesce()
retorna o primeiro valor não nulo na lista; portanto, se RECONCILIATION_TYPE_ID fosse nula, ela retornaria TM_RECON_TYPE.TEXT_ID
e, nesse caso, essa condição sempre seria verdadeira ((TM_RECON_TYPE.TEXT_ID = TM_RECON_TYPE.TEXT_ID)
, fazendo com que todos os registros fossem retornados.
Consulta de Relatório, Opção 3: retornará todas as reconciliações se o usuário tiver acesso.
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