First Commit - Source Code from Reply
This commit is contained in:
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,179 @@
|
||||
|
||||
CREATE OR REPLACE
|
||||
PACKAGE svecchiamento_dwh
|
||||
IS
|
||||
|
||||
PROCEDURE old_mnp_report_agcom (path_file in varchar2, anno_mese in varchar2);
|
||||
|
||||
|
||||
|
||||
END; -- Package spec
|
||||
/
|
||||
|
||||
|
||||
CREATE OR REPLACE
|
||||
PACKAGE BODY svecchiamento_dwh
|
||||
IS
|
||||
|
||||
PROCEDURE old_mnp_report_agcom (path_file in varchar2, anno_mese in varchar2)
|
||||
IS
|
||||
|
||||
puntatore_file SYS.UTL_FILE.FILE_TYPE;
|
||||
puntatore_file_log SYS.UTL_FILE.FILE_TYPE;
|
||||
tutto varchar2(1000);
|
||||
sql_msg varchar2(1000);
|
||||
sql_code integer;
|
||||
nome_file varchar2(100);
|
||||
n_rec_in integer;
|
||||
n_rec_fin integer;
|
||||
n_rec_del integer;
|
||||
|
||||
clob_loc CLOB;
|
||||
buffer VARCHAR2(32767);
|
||||
buffer_size CONSTANT BINARY_INTEGER := 32767;
|
||||
amount BINARY_INTEGER;
|
||||
offset NUMBER(38);
|
||||
|
||||
file_handle UTL_FILE.FILE_TYPE;
|
||||
directory_name CONSTANT VARCHAR2(80) := path_file;
|
||||
--csv_filename CONSTANT VARCHAR2(80) := '';
|
||||
csv_filename VARCHAR2(80);
|
||||
|
||||
CURSOR cur_rep_agcom is
|
||||
SELECT a.anno||'|'||a.mese||'|'||a.tipo||'|'||a.data_creazione||'|',
|
||||
path_file||'/agcom_'||a.anno||'_'||a.mese||'_'||a.tipo||'_'||to_char(a.data_creazione,'yyyymmdd')||'.csv',
|
||||
a.csv
|
||||
FROM mnp_report_agcom a
|
||||
WHERE anno||mese = anno_mese;
|
||||
|
||||
BEGIN
|
||||
|
||||
DBMS_OUTPUT.put_line ('Inizio Procedura old_mnp_report_agcom '||to_char(sysdate, 'dd/mm/yyyy hh24:mi:ss'));
|
||||
|
||||
--puntatore_file := UTL_FILE.FOPEN('E:\Oracle\oradata','prova.txt','w');
|
||||
|
||||
puntatore_file_log := UTL_FILE.FOPEN(path_file,'old_mnp_report_agcom_'||to_char(sysdate, 'ddmmyyyy_hh24miss')||'.log','w');
|
||||
|
||||
SYS.UTL_FILE.PUT_LINE(puntatore_file_log, 'Inizio Procedura old_mnp_report_agcom '||to_char(sysdate, 'dd/mm/yyyy hh24:mi:ss'));
|
||||
|
||||
SYS.UTL_FILE.PUT_LINE(puntatore_file_log, 'Apertura file old_mnp_report_agcom_'||anno_mese||'.dat');
|
||||
|
||||
puntatore_file := UTL_FILE.FOPEN(path_file,'old_mnp_report_agcom_'||anno_mese||'.dat','w');
|
||||
|
||||
SYS.UTL_FILE.PUT_LINE(puntatore_file_log, 'Inizio scrittura file old_mnp_report_agcom_'||anno_mese||'.dat');
|
||||
|
||||
OPEN cur_rep_agcom;
|
||||
|
||||
LOOP
|
||||
FETCH cur_rep_agcom
|
||||
INTO
|
||||
tutto, csv_filename, clob_loc;
|
||||
|
||||
EXIT WHEN cur_rep_agcom%NOTFOUND;
|
||||
|
||||
|
||||
|
||||
SYS.UTL_FILE.PUT_LINE(puntatore_file, tutto||csv_filename||'|');
|
||||
|
||||
SYS.UTL_FILE.PUT_LINE(puntatore_file_log, 'Inizio export file '||csv_filename);
|
||||
|
||||
----------------------------
|
||||
----------------------------
|
||||
DBMS_OUTPUT.ENABLE(100000);
|
||||
|
||||
-- ----------------
|
||||
-- GET CLOB LOCATOR
|
||||
-- ----------------
|
||||
/*SELECT csv INTO clob_loc
|
||||
FROM mnp_report_agcom
|
||||
where rownum < 2;*/
|
||||
|
||||
|
||||
-- --------------------------------
|
||||
-- OPEN NEW XML FILE IN WRITE MODE
|
||||
-- --------------------------------
|
||||
file_handle := UTL_FILE.FOPEN(
|
||||
location => directory_name,
|
||||
--filename => new_xml_filename||replace(tutto,'|','_')||'.csv',
|
||||
filename => csv_filename,
|
||||
open_mode => 'w',
|
||||
max_linesize => buffer_size);
|
||||
|
||||
amount := buffer_size;
|
||||
offset := 1;
|
||||
|
||||
-- ----------------------------------------------
|
||||
-- READ FROM CLOB XML / WRITE OUT NEW XML TO DISK
|
||||
-- ----------------------------------------------
|
||||
WHILE amount >= buffer_size
|
||||
LOOP
|
||||
|
||||
DBMS_LOB.READ(
|
||||
lob_loc => clob_loc,
|
||||
amount => amount,
|
||||
offset => offset,
|
||||
buffer => buffer);
|
||||
|
||||
offset := offset + amount;
|
||||
|
||||
UTL_FILE.PUT(
|
||||
file => file_handle,
|
||||
buffer => buffer);
|
||||
|
||||
UTL_FILE.FFLUSH(file => file_handle);
|
||||
|
||||
END LOOP;
|
||||
|
||||
UTL_FILE.FCLOSE(file => file_handle);
|
||||
|
||||
SYS.UTL_FILE.PUT_LINE(puntatore_file_log, 'Fine export file '||csv_filename);
|
||||
----------------------------------------------
|
||||
----------------------------------------------
|
||||
|
||||
END LOOP;
|
||||
CLOSE cur_rep_agcom;
|
||||
|
||||
SYS.UTL_FILE.PUT_LINE(puntatore_file_log, 'Fine scrittura file old_mnp_report_agcom_'||anno_mese||'.dat');
|
||||
|
||||
SYS.UTL_FILE.FCLOSE(puntatore_file);
|
||||
|
||||
SYS.UTL_FILE.PUT_LINE(puntatore_file_log, 'Chiusura file old_mnp_report_agcom_'||anno_mese||'.dat');
|
||||
|
||||
SYS.UTL_FILE.PUT_LINE(puntatore_file_log, 'Inizio Delete tabella mnp_report_agcom');
|
||||
|
||||
select count(*) into n_rec_in from mnp_report_agcom where anno||mese = anno_mese;
|
||||
|
||||
delete from mnp_report_agcom where anno||mese = anno_mese;
|
||||
commit;
|
||||
|
||||
select count(*) into n_rec_fin from mnp_report_agcom where anno||mese = anno_mese;
|
||||
|
||||
n_rec_del := n_rec_in - n_rec_fin;
|
||||
|
||||
SYS.UTL_FILE.PUT_LINE(puntatore_file_log, 'Fine Delete tabella mnp_report_agcom, eliminati '||n_rec_del||' record');
|
||||
|
||||
sql_msg := sqlerrm;
|
||||
sql_code := sqlcode;
|
||||
|
||||
SYS.UTL_FILE.PUT_LINE(puntatore_file_log, 'Fine Procedura old_mnp_report_agcom '||to_char(sysdate, 'dd/mm/yyyy hh24:mi:ss')||' sqlmsg: '||sql_msg||' - sqlcode: '||sql_code);
|
||||
SYS.UTL_FILE.FCLOSE(puntatore_file_log);
|
||||
DBMS_OUTPUT.put_line ('Fine Procedura old_mnp_report_agcom '||to_char(sysdate, 'dd/mm/yyyy hh24:mi:ss')||' sqlmsg: '||sql_msg||' - sqlcode: '||sql_code);
|
||||
|
||||
EXCEPTION
|
||||
WHEN OTHERS THEN
|
||||
sql_msg := sqlerrm;
|
||||
sql_code := sqlcode;
|
||||
ROLLBACK;
|
||||
SYS.UTL_FILE.PUT_LINE(puntatore_file_log, 'Procedura old_mnp_report_agcom terminata con errore '||to_char(sysdate, 'dd/mm/yyyy_hh24:mi:ss')||' sqlmsg: '||sql_msg||' - sqlcode: '||sql_code);
|
||||
SYS.UTL_FILE.FCLOSE(puntatore_file_log);
|
||||
DBMS_OUTPUT.put_line ('Procedura old_mnp_report_agcom terminata con errore '||to_char(sysdate, 'dd/mm/yyyy_hh24:mi:ss')||' sqlmsg: '||sql_msg||' - sqlcode: '||sql_code);
|
||||
|
||||
END; -- Procedure
|
||||
|
||||
|
||||
|
||||
|
||||
END;
|
||||
/
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,938 @@
|
||||
CREATE OR REPLACE PACKAGE DWH.PKG_POPOLA_SLA_SE AS
|
||||
/******************************************************************************
|
||||
NAME: PACKAGE PKG_POPOLA_SLA_SE
|
||||
PURPOSE:
|
||||
|
||||
REVISIONS:
|
||||
Ver Date Author Description
|
||||
--------- ---------- --------------- ------------------------------------
|
||||
1.0 02/11/2011 1. Created this package.
|
||||
******************************************************************************/
|
||||
|
||||
|
||||
PROCEDURE CARICAMENTO_DONOR_SLA1 (dataRif IN DATE,cod_errore OUT NUMBER);
|
||||
PROCEDURE CARICAMENTO_DONOR_SLATC (dataRif IN DATE,cod_errore OUT NUMBER);
|
||||
PROCEDURE CARICAMENTO_RECIPIENT_SLA_TC (dataRif IN DATE,cod_errore OUT NUMBER);
|
||||
PROCEDURE CARICAMENTO_RECIPIENT_SLA_2 (dataRif IN DATE,cod_errore OUT NUMBER);
|
||||
PROCEDURE CARICAMENTO_RECIPIENT_SLA_2AOM (dataRif IN DATE,cod_errore OUT NUMBER);
|
||||
PROCEDURE CARICAMENTO_SLA_SE(dataRif IN DATE);
|
||||
|
||||
|
||||
END PKG_POPOLA_SLA_SE;
|
||||
/
|
||||
CREATE OR REPLACE package body DWH.PKG_POPOLA_SLA_SE as
|
||||
|
||||
procedure CARICAMENTO_DONOR_SLA1(dataRif IN DATE,cod_errore OUT NUMBER) IS
|
||||
--procedura per il caricamento dello SLA1 del DONOR VIRTUALE MVNO
|
||||
|
||||
|
||||
proc_name constant varchar2(30) := 'CARICAMENTO_DONOR_SLA1';
|
||||
D_ini DATE;
|
||||
D_fine DATE;
|
||||
|
||||
|
||||
BEGIN
|
||||
|
||||
cod_errore := 0;
|
||||
D_ini:=sysdate;
|
||||
|
||||
DBMS_OUTPUT.put_line ('PKG_POPOLA_SLA_SE: INIZIO PROCEDURA '||PROC_NAME||' - '||TO_CHAR(D_INI,'YYYY-MM-DD HH24:MI:SS'));
|
||||
|
||||
INSERT INTO MNP_DW_SLA_SE_IN_OUT
|
||||
(
|
||||
UNIQUE_ID,
|
||||
TIPO_SLA,
|
||||
PROCESSO,
|
||||
ID_RICHIESTA,
|
||||
MESE,
|
||||
DON_EFF,
|
||||
REC_EFF,
|
||||
REC_RETE,
|
||||
DON_RETE,
|
||||
TIPO_CLIENTE,
|
||||
NOME_OT,
|
||||
MSISDN,
|
||||
DATA_VALIDAZIONE_MAX,
|
||||
BUSINESS_ID_DONATING,
|
||||
BUSINESS_ID_RECIPIENT,
|
||||
DATA_ESPL_DON,
|
||||
DATA_RICEZIONE_RICHIESTA,
|
||||
DATA_CUT_OVER,
|
||||
DATA_ESPL_TP,
|
||||
DATA_ESPL_MSS,
|
||||
DATA_ESPL_GISP,
|
||||
DESCR_STATO,
|
||||
CREDITO,
|
||||
DATA_NOTIF_RECIPIENT,
|
||||
CAUSALE_RIF)
|
||||
SELECT SEQ_DW_SLA_SE_IN_OUT.NEXTVAL AS UNIQUE_ID,
|
||||
A.TIPO_MESSAGGIO AS TIPO_SLA,
|
||||
A.PROCESSO,
|
||||
A.ID_RICHIESTA,
|
||||
A.MESE_COMP_FINALE AS MESE,
|
||||
A.DONOR_EFFETTIVO AS DON_EFF,
|
||||
A.RECIPIENT_EFFETTIVO AS REC_EFF,
|
||||
A.RECIPIENT_RETE AS REC_RETE,
|
||||
A.DONOR_RETE AS DON_RETE,
|
||||
CASE
|
||||
WHEN RECIPIENT_EFFETTIVO='TIMG' THEN
|
||||
B.TIPO_CLIENTE
|
||||
ELSE
|
||||
C.TIPO_CLIENTE
|
||||
END AS TIPO_CLIENTE,
|
||||
CASE
|
||||
WHEN RECIPIENT_EFFETTIVO='TIMG' THEN
|
||||
B.NOME_OT
|
||||
ELSE
|
||||
C.NOME_OT
|
||||
END AS NOME_OT,
|
||||
A.MSISDN,
|
||||
CASE
|
||||
WHEN RECIPIENT_EFFETTIVO='TIMG' THEN
|
||||
B.DATA_VALIDAZIONE_MAX
|
||||
ELSE
|
||||
C.DATA_VALIDAZIONE_MAX
|
||||
END AS DATA_VALIDAZIONE_MAX,
|
||||
CASE
|
||||
WHEN RECIPIENT_EFFETTIVO='TIMG' THEN
|
||||
B.BUSINESS_ID
|
||||
ELSE
|
||||
C.BUSINESS_ID
|
||||
END AS BUSINESS_ID_DONATING,
|
||||
NULL AS BUSINESS_ID_RECIPIENT,
|
||||
NULL AS DATA_ESPL_DON,
|
||||
CASE
|
||||
WHEN RECIPIENT_EFFETTIVO='TIMG' THEN
|
||||
B.DATARICEZIONERICHIESTA
|
||||
ELSE
|
||||
C.DATARICEZIONERICHIESTA
|
||||
END AS DATA_RICEZIONE_RICHIESTA,
|
||||
A.DATA_CUT_OVER,
|
||||
NULL AS DATA_ESPL_TP,
|
||||
NULL AS DATA_ESPL_MSS,
|
||||
NULL AS DATA_ESPL_GISP,
|
||||
NULL AS DESCR_STATO,
|
||||
NULL AS CREDITO,
|
||||
NULL AS DATA_NOTIF_RECIPIENT,
|
||||
NULL AS CAUSALE_RIF
|
||||
FROM MNP_DW_SLA_3GG_OUT A,MNP.MNP_GEST_RICH_DONOR_VIRT B,MNP.MNP_GESTIONE_RICHIESTA C
|
||||
WHERE A.MESE_COMP_FINALE= TO_CHAR(ADD_MONTHS(dataRif,-1),'mm/yyyy') AND
|
||||
A.DONOR_EFFETTIVO IN
|
||||
('COOP', 'NOVE', 'TISC')
|
||||
AND A.RECIPIENT_RETE IN
|
||||
('H3GI', 'WIND', 'OPIV', 'NOVA', 'TIMG')
|
||||
AND A.TIPO_MESSAGGIO IN ('SLA1', 'SLA2')
|
||||
AND A.ID_RICHIESTA= B.ID_RICHIESTA(+)
|
||||
AND A.ID_RICHIESTA=C.ID_RICHIESTA(+);
|
||||
|
||||
COMMIT;
|
||||
|
||||
D_finE:=sysdate;
|
||||
DBMS_OUTPUT.put_line ('PKG_POPOLA_SLA_SE: FINE PROCEDURA '||PROC_NAME||' - '||TO_CHAR(D_FINE,'YYYY-MM-DD HH24:MI:SS')||' - DURATA IN MINUTI:'||TRUNC((D_fine-D_ini)*1440));
|
||||
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
cod_errore := 1;
|
||||
DBMS_OUTPUT.put_line ('Errore in DWH.CARICAMENTO_DONOR_SLA1 ' || SQLERRM||' - '||to_char(sysdate,'YYYY-MM-DD HH24:MI:SS'));
|
||||
RETURN;
|
||||
END CARICAMENTO_DONOR_SLA1;
|
||||
|
||||
|
||||
|
||||
procedure CARICAMENTO_DONOR_SLATC(dataRif IN DATE,cod_errore OUT NUMBER) IS
|
||||
--procedura per il caricamento dello degli SLA di: RECIPIENT VIRTUALE MVNO, DONOR VIRTUALE M2M e RECIPIENT VIRTUALE M2M
|
||||
|
||||
|
||||
proc_name constant varchar2(30) := 'CARICAMENTO_DONOR_SLATC';
|
||||
D_ini DATE;
|
||||
D_fine DATE;
|
||||
|
||||
|
||||
BEGIN
|
||||
|
||||
cod_errore := 0;
|
||||
D_ini:=sysdate;
|
||||
|
||||
DBMS_OUTPUT.put_line ('PKG_POPOLA_SLA_SE: INIZIO PROCEDURA '||PROC_NAME||' - '||TO_CHAR(D_INI,'YYYY-MM-DD HH24:MI:SS'));
|
||||
|
||||
INSERT INTO MNP_DW_SLA_SE_IN_OUT
|
||||
(
|
||||
UNIQUE_ID,
|
||||
TIPO_SLA,
|
||||
PROCESSO,
|
||||
ID_RICHIESTA,
|
||||
MESE,
|
||||
DON_EFF,
|
||||
REC_EFF,
|
||||
REC_RETE,
|
||||
DON_RETE,
|
||||
TIPO_CLIENTE,
|
||||
NOME_OT,
|
||||
MSISDN,
|
||||
DATA_VALIDAZIONE_MAX,
|
||||
BUSINESS_ID_DONATING,
|
||||
BUSINESS_ID_RECIPIENT,
|
||||
DATA_ESPL_DON,
|
||||
DATA_RICEZIONE_RICHIESTA,
|
||||
DATA_CUT_OVER,
|
||||
DATA_ESPL_TP,
|
||||
DATA_ESPL_MSS,
|
||||
DATA_ESPL_GISP,
|
||||
DESCR_STATO,
|
||||
CREDITO,
|
||||
DATA_NOTIF_RECIPIENT,
|
||||
CAUSALE_RIF)
|
||||
SELECT SEQ_DW_SLA_SE_IN_OUT.NEXTVAL AS UNIQUE_ID,
|
||||
A.TIPO_MESSAGGIO AS TIPO_SLA,
|
||||
A.PROCESSO,
|
||||
A.ID_RICHIESTA,
|
||||
A.MESE_COMP_FINALE AS MESE,
|
||||
A.DONOR_EFFETTIVO AS DON_EFF,
|
||||
A.RECIPIENT_EFFETTIVO AS REC_EFF,
|
||||
A.RECIPIENT_RETE AS REC_RETE,
|
||||
A.DONOR_RETE AS DON_RETE,
|
||||
CASE
|
||||
WHEN RECIPIENT_EFFETTIVO='TIMG' THEN
|
||||
B.TIPO_CLIENTE
|
||||
ELSE
|
||||
C.TIPO_CLIENTE
|
||||
END AS TIPO_CLIENTE,
|
||||
CASE
|
||||
WHEN RECIPIENT_EFFETTIVO='TIMG' THEN
|
||||
B.NOME_OT
|
||||
ELSE
|
||||
C.NOME_OT
|
||||
END AS NOME_OT,
|
||||
A.MSISDN,
|
||||
CASE
|
||||
WHEN RECIPIENT_EFFETTIVO='TIMG' THEN
|
||||
B.DATA_VALIDAZIONE_MAX
|
||||
ELSE
|
||||
C.DATA_VALIDAZIONE_MAX
|
||||
END AS DATA_VALIDAZIONE_MAX,
|
||||
CASE
|
||||
WHEN RECIPIENT_EFFETTIVO='TIMG' THEN
|
||||
B.BUSINESS_ID
|
||||
ELSE
|
||||
C.BUSINESS_ID
|
||||
END AS BUSINESS_ID_DONATING,
|
||||
NULL AS BUSINESS_ID_RECIPIENT,
|
||||
NULL AS DATA_ESPL_DON,
|
||||
CASE
|
||||
WHEN RECIPIENT_EFFETTIVO='TIMG' THEN
|
||||
B.DATARICEZIONERICHIESTA
|
||||
ELSE
|
||||
C.DATARICEZIONERICHIESTA
|
||||
END AS DATA_RICEZIONE_RICHIESTA,
|
||||
A.DATA_CUT_OVER,
|
||||
NULL AS DATA_ESPL_TP,
|
||||
NULL AS DATA_ESPL_MSS,
|
||||
NULL AS DATA_ESPL_GISP,
|
||||
NULL AS DESCR_STATO,
|
||||
NULL AS CREDITO,
|
||||
NULL AS DATA_NOTIF_RECIPIENT,
|
||||
NULL AS CAUSALE_RIF
|
||||
FROM MNP_DW_SLA_3GG_OUT A,MNP.MNP_GEST_RICH_DONOR_VIRT B,MNP.MNP_GESTIONE_RICHIESTA C
|
||||
WHERE A.MESE_COMP_FINALE= TO_CHAR(ADD_MONTHS(dataRif,-1),'mm/yyyy') AND
|
||||
A.DONOR_EFFETTIVO IN
|
||||
('COOP', 'NOVE', 'TISC')
|
||||
AND A.TIPO_MESSAGGIO = 'SLA2'
|
||||
AND A.RECIPIENT_RETE IN ('H3GI', 'WIND', 'OPIV', 'NOVA', 'TIMG')
|
||||
AND A.ID_RICHIESTA= B.ID_RICHIESTA(+)
|
||||
AND A.ID_RICHIESTA=C.ID_RICHIESTA(+) ;
|
||||
|
||||
|
||||
INSERT INTO MNP_DW_SLA_SE_IN_OUT
|
||||
(
|
||||
UNIQUE_ID,
|
||||
TIPO_SLA,
|
||||
PROCESSO,
|
||||
ID_RICHIESTA,
|
||||
MESE,
|
||||
DON_EFF,
|
||||
REC_EFF,
|
||||
REC_RETE,
|
||||
DON_RETE,
|
||||
TIPO_CLIENTE,
|
||||
NOME_OT,
|
||||
MSISDN,
|
||||
DATA_VALIDAZIONE_MAX,
|
||||
BUSINESS_ID_DONATING,
|
||||
BUSINESS_ID_RECIPIENT,
|
||||
DATA_ESPL_DON,
|
||||
DATA_RICEZIONE_RICHIESTA,
|
||||
DATA_CUT_OVER,
|
||||
DATA_ESPL_TP,
|
||||
DATA_ESPL_MSS,
|
||||
DATA_ESPL_GISP,
|
||||
DESCR_STATO,
|
||||
CREDITO,
|
||||
DATA_NOTIF_RECIPIENT,
|
||||
CAUSALE_RIF)
|
||||
SELECT SEQ_DW_SLA_SE_IN_OUT.NEXTVAL AS UNIQUE_ID,
|
||||
A.TIPO_MESSAGGIO AS TIPO_SLA,
|
||||
A.PROCESSO,
|
||||
A.ID_RICHIESTA,
|
||||
A.MESE_COMP_FINALE AS MESE,
|
||||
A.DONOR_EFFETTIVO AS DON_EFF,
|
||||
A.RECIPIENT_EFFETTIVO AS REC_EFF,
|
||||
A.RECIPIENT_RETE AS REC_RETE,
|
||||
A.DONOR_RETE AS DON_RETE,
|
||||
CASE
|
||||
WHEN RECIPIENT_EFFETTIVO='TIMG' THEN
|
||||
B.TIPO_CLIENTE
|
||||
ELSE
|
||||
C.TIPO_CLIENTE
|
||||
END AS TIPO_CLIENTE,
|
||||
CASE
|
||||
WHEN RECIPIENT_EFFETTIVO='TIMG' THEN
|
||||
B.NOME_OT
|
||||
ELSE
|
||||
C.NOME_OT
|
||||
END AS NOME_OT,
|
||||
A.MSISDN,
|
||||
CASE
|
||||
WHEN RECIPIENT_EFFETTIVO='TIMG' THEN
|
||||
B.DATA_VALIDAZIONE_MAX
|
||||
ELSE
|
||||
C.DATA_VALIDAZIONE_MAX
|
||||
END AS DATA_VALIDAZIONE_MAX,
|
||||
CASE
|
||||
WHEN RECIPIENT_EFFETTIVO='TIMG' THEN
|
||||
B.BUSINESS_ID
|
||||
ELSE
|
||||
C.BUSINESS_ID_DONATING
|
||||
END AS BUSINESS_ID_DONATING,
|
||||
CASE
|
||||
WHEN RECIPIENT_EFFETTIVO='TIMG' THEN
|
||||
B.BUSINESS_ID
|
||||
ELSE
|
||||
C.BUSINESS_ID_RECIPIENT
|
||||
END AS BUSINESS_ID_RECIPIENT,
|
||||
NULL AS DATA_ESPL_DON,
|
||||
CASE
|
||||
WHEN RECIPIENT_EFFETTIVO='TIMG' THEN
|
||||
B.DATARICEZIONERICHIESTA
|
||||
ELSE
|
||||
C.DATARICEZIONERICHIESTA
|
||||
END AS DATA_RICEZIONE_RICHIESTA,
|
||||
CASE
|
||||
WHEN RECIPIENT_EFFETTIVO='TIMG' THEN
|
||||
B.DATA_CUT_OVER
|
||||
ELSE
|
||||
C.DATA_CUT_OVER
|
||||
END AS DATA_CUT_OVER,
|
||||
NULL AS DATA_ESPL_TP,
|
||||
NULL AS DATA_ESPL_MSS,
|
||||
NULL AS DATA_ESPL_GISP,
|
||||
NULL AS DESCR_STATO,
|
||||
CASE
|
||||
WHEN RECIPIENT_EFFETTIVO='TIMG' THEN (SELECT Z.CREDITO FROM MNP.MNP_GEST_RICH_DON_VIRT_TC Z WHERE Z.ID_RICHIESTA=A.ID_RICHIESTA)
|
||||
ELSE (SELECT Z.CREDITO FROM MNP.MNP_GEST_RICH_REC_VIRT_TC Z WHERE Z.ID_RICHIESTA=A.ID_RICHIESTA)
|
||||
END AS CREDITO,
|
||||
NULL AS DATA_NOTIF_RECIPIENT,
|
||||
NULL AS CAUSALE_RIF
|
||||
FROM MNP_DW_SLA_TC_OUT A,MNP.MNP_GEST_RICH_DONOR_VIRT B,MNP.MNP_GEST_RICH_REC_VIRT C
|
||||
WHERE A.MESE_COMP_FINALE= TO_CHAR(ADD_MONTHS(dataRif,-1),'mm/yyyy') AND
|
||||
A.DONOR_EFFETTIVO IN
|
||||
('COOP', 'NOVE', 'TISC')
|
||||
AND A.TIPO_MESSAGGIO IN ('SLA X','SLA Y','SLA Z')
|
||||
AND A.RECIPIENT_EFFETTIVO IN ('TIMG','COOP', 'NOVE', 'TISC')
|
||||
AND A.ID_RICHIESTA= B.ID_RICHIESTA(+)
|
||||
AND A.ID_RICHIESTA=C.ID_RICHIESTA(+);
|
||||
|
||||
COMMIT;
|
||||
|
||||
D_finE:=sysdate;
|
||||
DBMS_OUTPUT.put_line ('PKG_POPOLA_SLA_SE: FINE PROCEDURA '||PROC_NAME||' - '||TO_CHAR(D_FINE,'YYYY-MM-DD HH24:MI:SS')||' - DURATA IN MINUTI:'||TRUNC((D_fine-D_ini)*1440));
|
||||
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
cod_errore := 1;
|
||||
DBMS_OUTPUT.put_line ('Errore in DWH.CARICAMENTO_DONOR_SLATC ' || SQLERRM||' - '||to_char(sysdate,'YYYY-MM-DD HH24:MI:SS'));
|
||||
RETURN;
|
||||
END CARICAMENTO_DONOR_SLATC;
|
||||
|
||||
|
||||
procedure CARICAMENTO_RECIPIENT_SLA_TC(dataRif IN DATE,cod_errore OUT NUMBER) IS
|
||||
--procedura per il caricamento dello degli SLA di TC: DONOR VIRTUALE
|
||||
|
||||
proc_name constant varchar2(30) := 'CARICAMENTO_RECIPIENT_SLA_TC';
|
||||
D_ini DATE;
|
||||
D_fine DATE;
|
||||
|
||||
|
||||
BEGIN
|
||||
|
||||
cod_errore := 0;
|
||||
D_ini:=sysdate;
|
||||
|
||||
DBMS_OUTPUT.put_line ('PKG_POPOLA_SLA_SE: INIZIO PROCEDURA '||PROC_NAME||' - '||TO_CHAR(D_INI,'YYYY-MM-DD HH24:MI:SS'));
|
||||
|
||||
INSERT INTO MNP_DW_SLA_SE_IN_OUT
|
||||
(
|
||||
UNIQUE_ID,
|
||||
TIPO_SLA,
|
||||
PROCESSO,
|
||||
ID_RICHIESTA,
|
||||
MESE,
|
||||
DON_EFF,
|
||||
REC_EFF,
|
||||
REC_RETE,
|
||||
DON_RETE,
|
||||
TIPO_CLIENTE,
|
||||
NOME_OT,
|
||||
MSISDN,
|
||||
DATA_VALIDAZIONE_MAX,
|
||||
BUSINESS_ID_DONATING,
|
||||
BUSINESS_ID_RECIPIENT,
|
||||
DATA_ESPL_DON,
|
||||
DATA_RICEZIONE_RICHIESTA,
|
||||
DATA_CUT_OVER,
|
||||
DATA_ESPL_TP,
|
||||
DATA_ESPL_MSS,
|
||||
DATA_ESPL_GISP,
|
||||
DESCR_STATO,
|
||||
CREDITO,
|
||||
DATA_NOTIF_RECIPIENT,
|
||||
CAUSALE_RIF)
|
||||
SELECT SEQ_DW_SLA_SE_IN_OUT.NEXTVAL AS UNIQUE_ID,
|
||||
A.TIPO_MESSAGGIO AS TIPO_SLA,
|
||||
A.PROCESSO,
|
||||
A.ID_RICHIESTA,
|
||||
A.MESE_COMP_FINALE AS MESE,
|
||||
A.DONOR_EFFETTIVO AS DON_EFF,
|
||||
A.RECIPIENT_EFFETTIVO AS REC_EFF,
|
||||
A.RECIPIENT_RETE AS REC_RETE,
|
||||
A.DONOR_RETE AS DON_RETE,
|
||||
B.TIPO_CLIENTE AS TIPO_CLIENTE,
|
||||
B.NOME_OT AS NOME_OT,
|
||||
A.MSISDN,
|
||||
B.DATA_VALIDAZIONE_MAX AS DATA_VALIDAZIONE_MAX,
|
||||
B.BUSINESS_ID_DONATING AS BUSINESS_ID_DONATING,
|
||||
B.BUSINESS_ID_RECIPIENT AS BUSINESS_ID_RECIPIENT,
|
||||
NULL AS DATA_ESPL_DON,
|
||||
B.DATARICEZIONERICHIESTA AS DATA_RICEZIONE_RICHIESTA,
|
||||
B.DATA_CUT_OVER,
|
||||
NULL AS DATA_ESPL_TP,
|
||||
NULL AS DATA_ESPL_MSS,
|
||||
NULL AS DATA_ESPL_GISP,
|
||||
NULL AS DESCR_STATO,
|
||||
C.CREDITO AS CREDITO,
|
||||
NULL AS DATA_NOTIF_RECIPIENT,
|
||||
NULL AS CAUSALE_RIF
|
||||
FROM MNP_DW_SLA_TC_OUT A,MNP.MNP_GEST_RICH_REC_VIRT B, MNP.MNP_GEST_RICH_REC_VIRT_TC C
|
||||
WHERE A.MESE_COMP_FINALE= TO_CHAR(ADD_MONTHS(dataRif,-1),'mm/yyyy') AND
|
||||
A.RECIPIENT_EFFETTIVO IN ('COOP', 'NOVE', 'TISC')
|
||||
AND A.TIPO_MESSAGGIO IN ('SLA X','SLA Y','SLA Z')
|
||||
AND A.DONOR_EFFETTIVO IN('TIMG','COOP', 'NOVE', 'TISC')
|
||||
AND A.ID_RICHIESTA= B.ID_RICHIESTA(+)
|
||||
AND A.ID_RICHIESTA= C.ID_RICHIESTA(+);
|
||||
INSERT INTO MNP_DW_SLA_SE_IN_OUT
|
||||
(
|
||||
UNIQUE_ID,
|
||||
TIPO_SLA,
|
||||
PROCESSO,
|
||||
ID_RICHIESTA,
|
||||
MESE,
|
||||
DON_EFF,
|
||||
REC_EFF,
|
||||
REC_RETE,
|
||||
DON_RETE,
|
||||
TIPO_CLIENTE,
|
||||
NOME_OT,
|
||||
MSISDN,
|
||||
DATA_VALIDAZIONE_MAX,
|
||||
BUSINESS_ID_DONATING,
|
||||
BUSINESS_ID_RECIPIENT,
|
||||
DATA_ESPL_DON,
|
||||
DATA_RICEZIONE_RICHIESTA,
|
||||
DATA_CUT_OVER,
|
||||
DATA_ESPL_TP,
|
||||
DATA_ESPL_MSS,
|
||||
DATA_ESPL_GISP,
|
||||
DESCR_STATO,
|
||||
CREDITO,
|
||||
DATA_NOTIF_RECIPIENT,
|
||||
CAUSALE_RIF)
|
||||
SELECT SEQ_DW_SLA_SE_IN_OUT.NEXTVAL AS UNIQUE_ID,
|
||||
A.TIPO_MESSAGGIO AS TIPO_SLA,
|
||||
A.PROCESSO,
|
||||
A.ID_RICHIESTA,
|
||||
A.MESE_COMP_FINALE AS MESE,
|
||||
A.DONOR_EFFETTIVO AS DON_EFF,
|
||||
A.RECIPIENT_EFFETTIVO AS REC_EFF,
|
||||
A.RECIPIENT_RETE AS REC_RETE,
|
||||
A.DONOR_RETE AS DON_RETE,
|
||||
B.TIPO_CLIENTE AS TIPO_CLIENTE,
|
||||
B.NOME_OT AS NOME_OT,
|
||||
A.MSISDN,
|
||||
B.DATA_VALIDAZIONE_MAX AS DATA_VALIDAZIONE_MAX,
|
||||
B.BUSINESS_ID AS BUSINESS_ID_DONATING,
|
||||
B.BUSINESS_ID AS BUSINESS_ID_RECIPIENT,
|
||||
NULL AS DATA_ESPL_DON,
|
||||
B.DATARICEZIONERICHIESTA AS DATA_RICEZIONE_RICHIESTA,
|
||||
B.DATA_CUT_OVER,
|
||||
NULL AS DATA_ESPL_TP,
|
||||
NULL AS DATA_ESPL_MSS,
|
||||
NULL AS DATA_ESPL_GISP,
|
||||
NULL AS DESCR_STATO,
|
||||
C.CREDITO AS CREDITO,
|
||||
NULL AS DATA_NOTIF_RECIPIENT,
|
||||
NULL AS CAUSALE_RIF
|
||||
FROM MNP_DW_SLA_TC_OUT A,MNP.MNP_GESTIONE_RICHIESTA_REC B, MNP.MNP_GEST_RICH_REC_TC C
|
||||
WHERE A.MESE_COMP_FINALE= TO_CHAR(ADD_MONTHS(dataRif,-1),'mm/yyyy') AND
|
||||
A.RECIPIENT_EFFETTIVO IN ('COOP', 'NOVE', 'TISC')
|
||||
AND A.TIPO_MESSAGGIO IN ('SLA X','SLA Y','SLA Z')
|
||||
AND A.DONOR_RETE IN('H3GI', 'WIND', 'OPIV', 'NOVA')
|
||||
AND A.ID_RICHIESTA= B.ID_RICHIESTA(+)
|
||||
AND A.ID_RICHIESTA= C.ID_RICHIESTA(+);
|
||||
|
||||
|
||||
COMMIT;
|
||||
|
||||
D_finE:=sysdate;
|
||||
DBMS_OUTPUT.put_line ('PKG_POPOLA_SLA_SE: FINE PROCEDURA '||PROC_NAME||' - '||TO_CHAR(D_FINE,'YYYY-MM-DD HH24:MI:SS')||' - DURATA IN MINUTI:'||TRUNC((D_fine-D_ini)*1440));
|
||||
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
cod_errore := 1;
|
||||
DBMS_OUTPUT.put_line ('Errore in DWH.CARICAMENTO_RECIPIENT_SLA_TC ' || SQLERRM||' - '||to_char(sysdate,'YYYY-MM-DD HH24:MI:SS'));
|
||||
RETURN;
|
||||
END CARICAMENTO_RECIPIENT_SLA_TC;
|
||||
|
||||
|
||||
procedure CARICAMENTO_RECIPIENT_SLA_2(dataRif IN DATE,cod_errore OUT NUMBER) IS
|
||||
--procedura per il caricamento dello degli SLA di TC: RECIPIENT VIRTUALE MVNO, DONOR VIRTUALE M2M e RECIPIENT VIRTUALE M2M
|
||||
|
||||
proc_name constant varchar2(30) := 'CARICAMENTO_RECIPIENT_SLA_2';
|
||||
D_ini DATE;
|
||||
D_fine DATE;
|
||||
|
||||
|
||||
BEGIN
|
||||
|
||||
cod_errore := 0;
|
||||
D_ini:=sysdate;
|
||||
|
||||
DBMS_OUTPUT.put_line ('PKG_POPOLA_SLA_SE: INIZIO PROCEDURA '||PROC_NAME||' - '||TO_CHAR(D_INI,'YYYY-MM-DD HH24:MI:SS'));
|
||||
|
||||
INSERT INTO MNP_DW_SLA_SE_IN_OUT
|
||||
(
|
||||
UNIQUE_ID,
|
||||
TIPO_SLA,
|
||||
PROCESSO,
|
||||
ID_RICHIESTA,
|
||||
MESE,
|
||||
DON_EFF,
|
||||
REC_EFF,
|
||||
REC_RETE,
|
||||
DON_RETE,
|
||||
TIPO_CLIENTE,
|
||||
NOME_OT,
|
||||
MSISDN,
|
||||
DATA_VALIDAZIONE_MAX,
|
||||
BUSINESS_ID_DONATING,
|
||||
BUSINESS_ID_RECIPIENT,
|
||||
DATA_ESPL_DON,
|
||||
DATA_RICEZIONE_RICHIESTA,
|
||||
DATA_CUT_OVER,
|
||||
DATA_ESPL_TP,
|
||||
DATA_ESPL_MSS,
|
||||
DATA_ESPL_GISP,
|
||||
DESCR_STATO,
|
||||
CREDITO,
|
||||
DATA_NOTIF_RECIPIENT,
|
||||
CAUSALE_RIF)
|
||||
SELECT SEQ_DW_SLA_SE_IN_OUT.NEXTVAL AS UNIQUE_ID,
|
||||
A.TIPO_MESSAGGIO AS TIPO_SLA,
|
||||
A.PROCESSO,
|
||||
A.ID_RICHIESTA,
|
||||
A.MESE_COMP_FINALE AS MESE,
|
||||
A.DONOR_EFFETTIVO AS DON_EFF,
|
||||
A.RECIPIENT_EFFETTIVO AS REC_EFF,
|
||||
A.RECIPIENT_RETE AS REC_RETE,
|
||||
A.DONOR_RETE AS DON_RETE,
|
||||
B.TIPO_CLIENTE AS TIPO_CLIENTE,
|
||||
B.NOME_OT AS NOME_OT,
|
||||
A.MSISDN,
|
||||
B.DATA_VALIDAZIONE_MAX AS DATA_VALIDAZIONE_MAX,
|
||||
B.BUSINESS_ID_DONATING AS BUSINESS_ID_DONATING,
|
||||
B.BUSINESS_ID_RECIPIENT AS BUSINESS_ID_RECIPIENT,
|
||||
NULL AS DATA_ESPL_DON,
|
||||
B.DATARICEZIONERICHIESTA AS DATA_RICEZIONE_RICHIESTA,
|
||||
A.DATA_CUT_OVER,
|
||||
NULL AS DATA_ESPL_TP,
|
||||
NULL AS DATA_ESPL_MSS,
|
||||
NULL AS DATA_ESPL_GISP,
|
||||
NULL AS DESCR_STATO,
|
||||
C.CREDITO AS CREDITO,
|
||||
NULL AS DATA_NOTIF_RECIPIENT,
|
||||
NULL AS CAUSALE_RIF
|
||||
FROM MNP_DW_SLA_3GG_OUT A,MNP.MNP_GEST_RICH_REC_VIRT B,MNP.MNP_GEST_RICH_REC_VIRT_TC C
|
||||
WHERE A.MESE_COMP_FINALE= TO_CHAR(ADD_MONTHS(dataRif,-1),'mm/yyyy') AND
|
||||
A.RECIPIENT_EFFETTIVO IN ('COOP', 'NOVE', 'TISC')
|
||||
AND A.TIPO_MESSAGGIO IN ('SLA1','SLA2','SLA3') AND A.DONOR_EFFETTIVO IN ('TIMG','COOP', 'NOVE', 'TISC')
|
||||
AND A.ID_RICHIESTA= B.ID_RICHIESTA(+)
|
||||
AND A.ID_RICHIESTA=C.ID_RICHIESTA(+);
|
||||
|
||||
INSERT INTO MNP_DW_SLA_SE_IN_OUT
|
||||
(
|
||||
UNIQUE_ID,
|
||||
TIPO_SLA,
|
||||
PROCESSO,
|
||||
ID_RICHIESTA,
|
||||
MESE,
|
||||
DON_EFF,
|
||||
REC_EFF,
|
||||
REC_RETE,
|
||||
DON_RETE,
|
||||
TIPO_CLIENTE,
|
||||
NOME_OT,
|
||||
MSISDN,
|
||||
DATA_VALIDAZIONE_MAX,
|
||||
BUSINESS_ID_DONATING,
|
||||
BUSINESS_ID_RECIPIENT,
|
||||
DATA_ESPL_DON,
|
||||
DATA_RICEZIONE_RICHIESTA,
|
||||
DATA_CUT_OVER,
|
||||
DATA_ESPL_TP,
|
||||
DATA_ESPL_MSS,
|
||||
DATA_ESPL_GISP,
|
||||
DESCR_STATO,
|
||||
CREDITO,
|
||||
DATA_NOTIF_RECIPIENT,
|
||||
CAUSALE_RIF)
|
||||
SELECT SEQ_DW_SLA_SE_IN_OUT.NEXTVAL AS UNIQUE_ID,
|
||||
A.TIPO_MESSAGGIO AS TIPO_SLA,
|
||||
A.PROCESSO,
|
||||
A.ID_RICHIESTA,
|
||||
A.MESE_COMP_FINALE AS MESE,
|
||||
A.DONOR_EFFETTIVO AS DON_EFF,
|
||||
A.RECIPIENT_EFFETTIVO AS REC_EFF,
|
||||
A.RECIPIENT_RETE AS REC_RETE,
|
||||
A.DONOR_RETE AS DON_RETE,
|
||||
B.TIPO_CLIENTE AS TIPO_CLIENTE,
|
||||
B.NOME_OT AS NOME_OT,
|
||||
A.MSISDN,
|
||||
B.DATA_VALIDAZIONE_MAX AS DATA_VALIDAZIONE_MAX,
|
||||
B.BUSINESS_ID_DONATING AS BUSINESS_ID_DONATING,
|
||||
B.BUSINESS_ID_RECIPIENT AS BUSINESS_ID_RECIPIENT,
|
||||
NULL AS DATA_ESPL_DON,
|
||||
B.DATARICEZIONERICHIESTA AS DATA_RICEZIONE_RICHIESTA,
|
||||
B.DATA_CUT_OVER,
|
||||
NULL AS DATA_ESPL_TP,
|
||||
NULL AS DATA_ESPL_MSS,
|
||||
NULL AS DATA_ESPL_GISP,
|
||||
NULL AS DESCR_STATO,
|
||||
C.CREDITO AS CREDITO,
|
||||
NULL AS DATA_NOTIF_RECIPIENT,
|
||||
NULL AS CAUSALE_RIF
|
||||
FROM MNP_DW_SLA_TC_OUT A,MNP.MNP_GEST_RICH_REC_VIRT B,MNP.MNP_GEST_RICH_REC_VIRT_TC C
|
||||
WHERE A.MESE_COMP_FINALE= TO_CHAR(ADD_MONTHS(dataRif,-1),'mm/yyyy') AND
|
||||
A.RECIPIENT_EFFETTIVO IN ('COOP', 'NOVE', 'TISC')
|
||||
AND A.TIPO_MESSAGGIO = 'SLA X' AND A.DONOR_EFFETTIVO = 'TIMG'
|
||||
AND A.ID_RICHIESTA= B.ID_RICHIESTA(+)
|
||||
AND A.ID_RICHIESTA=C.ID_RICHIESTA(+);
|
||||
|
||||
COMMIT;
|
||||
|
||||
D_finE:=sysdate;
|
||||
DBMS_OUTPUT.put_line ('PKG_POPOLA_SLA_SE: FINE PROCEDURA '||PROC_NAME||' - '||TO_CHAR(D_FINE,'YYYY-MM-DD HH24:MI:SS')||' - DURATA IN MINUTI:'||TRUNC((D_fine-D_ini)*1440));
|
||||
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
cod_errore := 1;
|
||||
DBMS_OUTPUT.put_line ('Errore in DWH.CARICAMENTO_RECIPIENT_SLA_2 ' || SQLERRM||' - '||to_char(sysdate,'YYYY-MM-DD HH24:MI:SS'));
|
||||
RETURN;
|
||||
END CARICAMENTO_RECIPIENT_SLA_2;
|
||||
|
||||
procedure CARICAMENTO_RECIPIENT_SLA_2AOM(dataRif IN DATE,cod_errore OUT NUMBER) IS
|
||||
--procedura per il caricamento dello degli SLA di TC: RECIPIENT VIRTUALE MVNO, DONOR VIRTUALE M2M e RECIPIENT VIRTUALE M2M
|
||||
|
||||
proc_name constant varchar2(30) := 'CARICAMENTO_RECIPIENT_SLA_2AOM';
|
||||
D_ini DATE;
|
||||
D_fine DATE;
|
||||
|
||||
|
||||
BEGIN
|
||||
|
||||
cod_errore := 0;
|
||||
D_ini:=sysdate;
|
||||
|
||||
DBMS_OUTPUT.put_line ('PKG_POPOLA_SLA_SE: INIZIO PROCEDURA '||PROC_NAME||' - '||TO_CHAR(D_INI,'YYYY-MM-DD HH24:MI:SS'));
|
||||
|
||||
INSERT INTO MNP_DW_SLA_SE_IN_OUT
|
||||
(
|
||||
UNIQUE_ID,
|
||||
TIPO_SLA,
|
||||
PROCESSO,
|
||||
ID_RICHIESTA,
|
||||
MESE,
|
||||
DON_EFF,
|
||||
REC_EFF,
|
||||
REC_RETE,
|
||||
DON_RETE,
|
||||
TIPO_CLIENTE,
|
||||
NOME_OT,
|
||||
MSISDN,
|
||||
DATA_VALIDAZIONE_MAX,
|
||||
BUSINESS_ID_DONATING,
|
||||
BUSINESS_ID_RECIPIENT,
|
||||
DATA_ESPL_DON,
|
||||
DATA_RICEZIONE_RICHIESTA,
|
||||
DATA_CUT_OVER,
|
||||
DATA_ESPL_TP,
|
||||
DATA_ESPL_MSS,
|
||||
DATA_ESPL_GISP,
|
||||
DESCR_STATO,
|
||||
CREDITO,
|
||||
DATA_NOTIF_RECIPIENT,
|
||||
CAUSALE_RIF)
|
||||
SELECT SEQ_DW_SLA_SE_IN_OUT.NEXTVAL AS UNIQUE_ID,
|
||||
A.TIPO_MESSAGGIO AS TIPO_SLA,
|
||||
A.PROCESSO,
|
||||
A.ID_RICHIESTA,
|
||||
A.MESE_COMP_FINALE AS MESE,
|
||||
A.DONOR_EFFETTIVO AS DON_EFF,
|
||||
A.RECIPIENT_EFFETTIVO AS REC_EFF,
|
||||
A.RECIPIENT_RETE AS REC_RETE,
|
||||
A.DONOR_RETE AS DON_RETE,
|
||||
CASE
|
||||
WHEN DONOR_EFFETTIVO='TIMG' THEN
|
||||
B.TIPO_CLIENTE
|
||||
ELSE
|
||||
C.TIPO_CLIENTE
|
||||
END AS TIPO_CLIENTE,
|
||||
CASE
|
||||
WHEN DONOR_EFFETTIVO='TIMG' THEN
|
||||
B.NOME_OT
|
||||
ELSE
|
||||
C.NOME_OT
|
||||
END AS NOME_OT,
|
||||
A.MSISDN,
|
||||
CASE
|
||||
WHEN DONOR_EFFETTIVO='TIMG' THEN
|
||||
B.DATA_VALIDAZIONE_MAX
|
||||
ELSE
|
||||
C.DATA_VALIDAZIONE_MAX
|
||||
END AS DATA_VALIDAZIONE_MAX,
|
||||
CASE
|
||||
WHEN DONOR_EFFETTIVO='TIMG' THEN
|
||||
B.BUSINESS_ID_DONATING
|
||||
ELSE
|
||||
C.BUSINESS_ID
|
||||
END AS BUSINESS_ID_DONATING,
|
||||
CASE
|
||||
WHEN DONOR_EFFETTIVO='TIMG' THEN
|
||||
B.BUSINESS_ID_RECIPIENT
|
||||
ELSE
|
||||
C.BUSINESS_ID
|
||||
END AS BUSINESS_ID_RECIPIENT,
|
||||
NULL AS DATA_ESPL_DON,
|
||||
CASE
|
||||
WHEN DONOR_EFFETTIVO='TIMG' THEN
|
||||
B.DATARICEZIONERICHIESTA
|
||||
ELSE
|
||||
C.DATARICEZIONERICHIESTA
|
||||
END AS DATA_RICEZIONE_RICHIESTA,
|
||||
A.DATA_CUT_OVER,
|
||||
NULL AS DATA_ESPL_TP,
|
||||
NULL AS DATA_ESPL_MSS,
|
||||
NULL AS DATA_ESPL_GISP,
|
||||
NULL AS DESCR_STATO,
|
||||
CASE
|
||||
WHEN DONOR_EFFETTIVO='TIMG' THEN (SELECT Z.CREDITO FROM MNP.MNP_GEST_RICH_REC_VIRT_TC Z WHERE Z.ID_RICHIESTA=A.ID_RICHIESTA)
|
||||
ELSE (SELECT Z.CREDITO FROM MNP.MNP_GEST_RICH_REC_TC Z WHERE Z.ID_RICHIESTA=A.ID_RICHIESTA)
|
||||
END AS CREDITO,
|
||||
NULL AS DATA_NOTIF_RECIPIENT,
|
||||
NULL AS CAUSALE_RIF
|
||||
FROM MNP_DW_SLA_3GG_OUT A,MNP.MNP_GEST_RICH_REC_VIRT B,MNP.MNP_GESTIONE_RICHIESTA_REC C
|
||||
WHERE A.MESE_COMP_FINALE= TO_CHAR(ADD_MONTHS(dataRif,-1),'mm/yyyy') AND
|
||||
A.RECIPIENT_EFFETTIVO IN ('COOP', 'NOVE', 'TISC')
|
||||
AND A.DONOR_RETE IN ('H3GI', 'WIND', 'OPIV', 'NOVA', 'TIMG')
|
||||
AND A.TIPO_MESSAGGIO IN( 'SLA1','SLA2','SLA3')
|
||||
AND A.ID_RICHIESTA= B.ID_RICHIESTA(+)
|
||||
AND A.ID_RICHIESTA=C.ID_RICHIESTA(+);
|
||||
|
||||
INSERT INTO MNP_DW_SLA_SE_IN_OUT
|
||||
(
|
||||
UNIQUE_ID,
|
||||
TIPO_SLA,
|
||||
PROCESSO,
|
||||
ID_RICHIESTA,
|
||||
MESE,
|
||||
DON_EFF,
|
||||
REC_EFF,
|
||||
REC_RETE,
|
||||
DON_RETE,
|
||||
TIPO_CLIENTE,
|
||||
NOME_OT,
|
||||
MSISDN,
|
||||
DATA_VALIDAZIONE_MAX,
|
||||
BUSINESS_ID_DONATING,
|
||||
BUSINESS_ID_RECIPIENT,
|
||||
DATA_ESPL_DON,
|
||||
DATA_RICEZIONE_RICHIESTA,
|
||||
DATA_CUT_OVER,
|
||||
DATA_ESPL_TP,
|
||||
DATA_ESPL_MSS,
|
||||
DATA_ESPL_GISP,
|
||||
DESCR_STATO,
|
||||
CREDITO,
|
||||
DATA_NOTIF_RECIPIENT,
|
||||
CAUSALE_RIF)
|
||||
SELECT SEQ_DW_SLA_SE_IN_OUT.NEXTVAL AS UNIQUE_ID,
|
||||
A.TIPO_MESSAGGIO AS TIPO_SLA,
|
||||
A.PROCESSO,
|
||||
A.ID_RICHIESTA,
|
||||
A.MESE_COMP_FINALE AS MESE,
|
||||
A.DONOR_EFFETTIVO AS DON_EFF,
|
||||
A.RECIPIENT_EFFETTIVO AS REC_EFF,
|
||||
A.RECIPIENT_RETE AS REC_RETE,
|
||||
A.DONOR_RETE AS DON_RETE,
|
||||
CASE
|
||||
WHEN DONOR_EFFETTIVO='TIMG' THEN
|
||||
B.TIPO_CLIENTE
|
||||
ELSE
|
||||
C.TIPO_CLIENTE
|
||||
END AS TIPO_CLIENTE,
|
||||
CASE
|
||||
WHEN DONOR_EFFETTIVO='TIMG' THEN
|
||||
B.NOME_OT
|
||||
ELSE
|
||||
C.NOME_OT
|
||||
END AS NOME_OT,
|
||||
A.MSISDN,
|
||||
CASE
|
||||
WHEN DONOR_EFFETTIVO='TIMG' THEN
|
||||
B.DATA_VALIDAZIONE_MAX
|
||||
ELSE
|
||||
C.DATA_VALIDAZIONE_MAX
|
||||
END AS DATA_VALIDAZIONE_MAX,
|
||||
CASE
|
||||
WHEN DONOR_EFFETTIVO='TIMG' THEN
|
||||
B.BUSINESS_ID_DONATING
|
||||
ELSE
|
||||
C.BUSINESS_ID
|
||||
END AS BUSINESS_ID_DONATING,
|
||||
CASE
|
||||
WHEN DONOR_EFFETTIVO='TIMG' THEN
|
||||
B.BUSINESS_ID_RECIPIENT
|
||||
ELSE
|
||||
C.BUSINESS_ID
|
||||
END AS BUSINESS_ID_RECIPIENT,
|
||||
NULL AS DATA_ESPL_DON,
|
||||
CASE
|
||||
WHEN DONOR_EFFETTIVO='TIMG' THEN
|
||||
B.DATARICEZIONERICHIESTA
|
||||
ELSE
|
||||
C.DATARICEZIONERICHIESTA
|
||||
END AS DATA_RICEZIONE_RICHIESTA,
|
||||
CASE
|
||||
WHEN DONOR_EFFETTIVO='TIMG' THEN
|
||||
B.DATA_CUT_OVER
|
||||
ELSE
|
||||
C.DATA_CUT_OVER
|
||||
END AS DATA_CUT_OVER,
|
||||
NULL AS DATA_ESPL_TP,
|
||||
NULL AS DATA_ESPL_MSS,
|
||||
NULL AS DATA_ESPL_GISP,
|
||||
NULL AS DESCR_STATO,
|
||||
CASE
|
||||
WHEN DONOR_EFFETTIVO='TIMG' THEN (SELECT Z.CREDITO FROM MNP.MNP_GEST_RICH_REC_VIRT_TC Z WHERE Z.ID_RICHIESTA=A.ID_RICHIESTA)
|
||||
ELSE (SELECT Z.CREDITO FROM MNP.MNP_GEST_RICH_REC_TC Z WHERE Z.ID_RICHIESTA=A.ID_RICHIESTA)
|
||||
END AS CREDITO,
|
||||
NULL AS DATA_NOTIF_RECIPIENT,
|
||||
NULL AS CAUSALE_RIF
|
||||
FROM MNP_DW_SLA_TC_OUT A,MNP.MNP_GEST_RICH_REC_VIRT B,MNP.MNP_GESTIONE_RICHIESTA_REC C
|
||||
WHERE A.MESE_COMP_FINALE= TO_CHAR(ADD_MONTHS(dataRif,-1),'mm/yyyy') AND
|
||||
A.RECIPIENT_EFFETTIVO IN ('COOP', 'NOVE', 'TISC')
|
||||
AND A.DONOR_RETE IN ('H3GI', 'WIND', 'OPIV', 'NOVA', 'TIMG')
|
||||
AND A.TIPO_MESSAGGIO = 'SLA X'
|
||||
AND A.ID_RICHIESTA= B.ID_RICHIESTA(+)
|
||||
AND A.ID_RICHIESTA=C.ID_RICHIESTA(+);
|
||||
|
||||
COMMIT;
|
||||
|
||||
D_finE:=sysdate;
|
||||
DBMS_OUTPUT.put_line ('PKG_POPOLA_SLA_SE: FINE PROCEDURA '||PROC_NAME||' - '||TO_CHAR(D_FINE,'YYYY-MM-DD HH24:MI:SS')||' - DURATA IN MINUTI:'||TRUNC((D_fine-D_ini)*1440));
|
||||
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
cod_errore := 1;
|
||||
DBMS_OUTPUT.put_line ('Errore in DWH.CARICAMENTO_RECIPIENT_SLA_2AOM ' || SQLERRM||' - '||to_char(sysdate,'YYYY-MM-DD HH24:MI:SS'));
|
||||
RETURN;
|
||||
END CARICAMENTO_RECIPIENT_SLA_2AOM;
|
||||
|
||||
procedure CARICAMENTO_SLA_SE(dataRif IN Date) IS
|
||||
|
||||
cod_errore NUMBER (1);
|
||||
|
||||
err_donor_sla1 NUMBER (1):=0;
|
||||
err_donor_slatc NUMBER (1):=0;
|
||||
err_recipient_sla_tc NUMBER (1):=0;
|
||||
err_recipient_sla_2 NUMBER (1):=0;
|
||||
err_recipient_sla_2_aom NUMBER (1):=0;
|
||||
|
||||
|
||||
proc_name constant varchar2(30) := 'CARICAMENTO_SLA_SE';
|
||||
D_ini DATE;
|
||||
D_fine DATE;
|
||||
|
||||
|
||||
|
||||
BEGIN
|
||||
dbms_output.enable(9999999);
|
||||
D_ini:=sysdate;
|
||||
DBMS_OUTPUT.put_line ('PKG_POPOLA_SLA_SE: INIZIO PROCESSO '||PROC_NAME||' - '||TO_CHAR(D_INI,'YYYY-MM-DD HH24:MI:SS'));
|
||||
-----------------------------------------------------
|
||||
-- DELETE PREVENTIVA DELLA TABELLA
|
||||
-----------------------------------------------------
|
||||
DELETE MNP_DW_SLA_SE_IN_OUT WHERE MESE =TO_CHAR(ADD_MONTHS(dataRif,-1),'mm/yyyy');
|
||||
|
||||
cod_errore := 0;
|
||||
|
||||
|
||||
-- caricamento dati:
|
||||
CARICAMENTO_DONOR_SLA1 (dataRif,err_donor_sla1);
|
||||
CARICAMENTO_DONOR_SLATC (dataRif,err_donor_slatc);
|
||||
CARICAMENTO_RECIPIENT_SLA_TC (dataRif,err_recipient_sla_tc);
|
||||
CARICAMENTO_RECIPIENT_SLA_2 (dataRif,err_recipient_sla_2);
|
||||
CARICAMENTO_RECIPIENT_SLA_2AOM(dataRif,err_recipient_sla_2_aom);
|
||||
|
||||
|
||||
|
||||
cod_errore := err_donor_sla1 + err_donor_slatc+err_recipient_sla_tc +err_recipient_sla_2+err_recipient_sla_2_aom;
|
||||
|
||||
|
||||
|
||||
IF cod_errore = 0
|
||||
THEN
|
||||
-- tutto a posto
|
||||
DBMS_OUTPUT.put_line ('Caricamento dati SLA avvenuto.');
|
||||
ELSE
|
||||
-- tutto na sola
|
||||
DBMS_OUTPUT.put_line ('CARICAMENTO DATI SLA PARZIALE: PROCESSO TERMINATO CON ERRORI VERIFICARE LOG!');
|
||||
END IF;
|
||||
|
||||
COMMIT;
|
||||
D_fine:=sysdate;
|
||||
DBMS_OUTPUT.put_line ('PKG_POPOLA_SLA_SE: FINE PROCESSO '||PROC_NAME||' - '||TO_CHAR(D_FINE,'YYYY-MM-DD HH24:MI:SS')||' - DURATA IN MINUTI:'||TRUNC((D_fine-D_ini)*1440));
|
||||
|
||||
|
||||
EXCEPTION
|
||||
WHEN OTHERS THEN
|
||||
cod_errore := 1;
|
||||
DBMS_OUTPUT.put_line ('Errore nel caricamento dati Sla ' || SQLERRM||' - '||to_char(sysdate,'YYYY-MM-DD HH24:MI:SS'));
|
||||
RETURN;
|
||||
END CARICAMENTO_SLA_SE;
|
||||
|
||||
|
||||
END PKG_POPOLA_SLA_SE;
|
||||
/
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user