First Commit - Source Code from Reply

This commit is contained in:
vincenzofariello
2024-05-13 12:54:14 +02:00
parent 73e32a5020
commit a15aee1f08
11184 changed files with 1065913 additions and 0 deletions

View File

@@ -0,0 +1,169 @@
DROP MATERIALIZED VIEW DWH.MNP_DWH_DON;
CREATE MATERIALIZED VIEW DWH.MNP_DWH_DON
TABLESPACE TAB_DWH
PCTUSED 0
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
NOCACHE
NOLOGGING
NOPARALLEL
BUILD IMMEDIATE
REFRESH COMPLETE ON DEMAND
WITH PRIMARY KEY
AS
/* Formatted on 2015/02/19 16:35 (Formatter Plus v4.8.8) */
SELECT ROWNUM AS id_prog, r.*
FROM (SELECT SYSDATE AS data_aggiornamento,
DECODE (SUBSTR (codice_gruppo, 1, 3),
'BKL', 'BKL',
DECODE (a.richiestaadhocaom || a.richiestaadhoc,
'00', 'Standard',
'PHoc'
)
) AS tipo_richiesta,
a.tipo_cliente, a.nome_ot, a.codice_pre_post_pagato,
a.marcaggio, a.sottomarcaggio, a.codice_operatore_recipient,
a.codice_operatore_donating,
a.codice_operatore_rec_eff AS recipient_effettivo,
a.codice_operatore_don_eff AS donor_effettivo,
TRUNC (b.data_i_o) AS data_evento,
TO_CHAR (b.data_i_o, 'yy-iw') AS settimana_evento,
TO_CHAR (b.data_i_o, 'mm') AS mese_evento,
c.descr_stato AS descr_stato_evento,
ca.descr_stato AS descr_stato_attuale,
b.stato_a AS stato_evento, a.stato AS stato_attuale,
DECODE (a.stato,
10, a.codicerifiutovalidazione,
NULL
) AS cod_rifiuto,
DECODE (a.stato, 10, r.causale, NULL) AS causale_rifiuto,
COUNT (*) AS richieste
FROM mnp.mnp_gestione_richiesta a,
mnp.mnp_storico_richiesta b,
mnp.mnp_stato c,
mnp.mnp_stato ca,
mnp.mnp_causale_rifiuto r
WHERE ( a.codice_operatore_don_eff = 'TIMG'
OR a.codice_operatore_don_eff = 'TIMT'
)
AND (TRUNC (b.data_i_o) BETWEEN TO_DATE (SYSDATE - 397)
AND TRUNC (SYSDATE)
)
AND (a.id_richiesta = b.id_richiesta)
AND (b.stato_a IN (1, 3, 4, 9, 10, 12, 16))
AND (b.stato_a = c.id_stato)
AND (a.stato = ca.id_stato)
AND a.codicerifiutovalidazione = r.cod_causale_rifiuto(+)
-- prendere ultime tre partizioni che sono su base semestrale
--AND trunc(a.dataricezionerichiesta) BETWEEN TO_DATE (SYSDATE - 730) AND TRUNC (SYSDATE)
AND TRUNC (b.dataricezionerichiesta) BETWEEN TO_DATE ( SYSDATE
- 730
)
AND TRUNC (SYSDATE)
GROUP BY DECODE (SUBSTR (codice_gruppo, 1, 3),
'BKL', 'BKL',
DECODE (a.richiestaadhocaom || a.richiestaadhoc,
'00', 'Standard',
'PHoc'
)
),
a.tipo_cliente,
a.nome_ot,
a.codice_pre_post_pagato,
a.marcaggio,
a.sottomarcaggio,
a.codice_operatore_recipient,
a.codice_operatore_donating,
TRUNC (b.data_i_o),
TO_CHAR (b.data_i_o, 'yy-iw'),
TO_CHAR (b.data_i_o, 'mm'),
c.descr_stato,
ca.descr_stato,
b.stato_a,
a.stato,
DECODE (a.stato, 10, a.codicerifiutovalidazione, NULL),
DECODE (a.stato, 10, r.causale, NULL),
a.codice_operatore_rec_eff,
a.codice_operatore_don_eff) r
UNION
SELECT ROWNUM AS id_prog, r.*
FROM (SELECT SYSDATE AS data_aggiornamento,
DECODE (SUBSTR (codice_gruppo, 1, 3),
'BKL', 'BKL',
DECODE (a.richiestaadhoc, '0', 'Standard', 'PHoc')
) AS tipo_richiesta,
a.tipo_cliente, a.nome_ot, a.codice_pre_post_pagato,
a.marcaggio, a.sottomarcaggio,
'TIMG' AS codice_operatore_recipient,
--a.codice_operatore_recipient,
a.codice_operatore_donating,
a.codice_operatore_recipient AS recipient_effettivo,
a.codice_operatore_donating AS donor_effettivo,
TRUNC (b.data_i_o) AS data_evento,
TO_CHAR (b.data_i_o, 'yy-iw') AS settimana_evento,
TO_CHAR (b.data_i_o, 'mm') AS mese_evento,
c.descr_stato AS descr_stato_evento,
ca.descr_stato AS descr_stato_attuale,
b.stato_a AS stato_evento, a.stato AS stato_attuale,
DECODE (a.stato,
7, a.codicerifiutovalidazione,
NULL
) AS cod_rifiuto,
DECODE (a.stato, 7, r.causale, NULL) AS causale_rifiuto,
COUNT (*) AS richieste
FROM mnp.mnp_gest_rich_rec_virt a,
mnp.mnp_storico_rich_rec_virt b,
mnp.mnp_stato_rec_virt c,
mnp.mnp_stato_rec_virt ca,
mnp.mnp_causale_rifiuto r
WHERE (TRUNC (b.data_i_o) BETWEEN TO_DATE (SYSDATE - 397)
AND TRUNC (SYSDATE)
)
AND ( a.codice_operatore_donating = 'TIMG'
OR a.codice_operatore_donating = 'TIMT'
)
AND (a.id_richiesta = b.id_richiesta)
AND ( b.stato_a IN (2, 4, 6, 7, 8, 9, 12)
OR (b.stato_da = -1 AND b.stato_a = 3 AND a.stato <> 5)
)
AND (b.stato_a = c.id_stato)
AND (a.stato = ca.id_stato)
AND a.codicerifiutovalidazione = r.cod_causale_rifiuto(+)
-- prendere ultime tre partizioni che sono su base semestrale
AND TRUNC (b.dataricezionerichiesta) BETWEEN TO_DATE ( SYSDATE
- 730
)
AND TRUNC (SYSDATE)
AND TRUNC (a.dataricezionerichiesta) BETWEEN TO_DATE ( SYSDATE
- 730
)
AND TRUNC (SYSDATE)
GROUP BY DECODE (SUBSTR (codice_gruppo, 1, 3),
'BKL', 'BKL',
DECODE (a.richiestaadhoc, '0', 'Standard', 'PHoc')
),
a.tipo_cliente,
a.nome_ot,
a.codice_pre_post_pagato,
a.marcaggio,
a.sottomarcaggio,
a.codice_operatore_recipient,
a.codice_operatore_donating,
TRUNC (b.data_i_o),
TO_CHAR (b.data_i_o, 'yy-iw'),
TO_CHAR (b.data_i_o, 'mm'),
c.descr_stato,
ca.descr_stato,
b.stato_a,
a.stato,
DECODE (a.stato, 7, a.codicerifiutovalidazione, NULL),
DECODE (a.stato, 7, r.causale, NULL)) r;