First Commit - Source Code from Reply
This commit is contained in:
2
dbcmnpsrc/FE/mnpapp/script/DB_Portati/ReadME.txt
Normal file
2
dbcmnpsrc/FE/mnpapp/script/DB_Portati/ReadME.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
Contiene gli script per l'estrazione delle linee soggette a porting, necessarie per l'infasamento iniziale di DBC-FX
|
||||
per l'Extra Kit di Aprile 2010
|
||||
16
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runDbc2Dbcfx.sh
Normal file
16
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runDbc2Dbcfx.sh
Normal file
@@ -0,0 +1,16 @@
|
||||
#!/usr/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/../setEnv.sh
|
||||
|
||||
$THIS_PATH/../TestNodo.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
if [ "$1" = "" ] || [ "$2" = "" ] || [ "$3" = "" ]; then
|
||||
echo "Utilizzo: ${0} data_inizio data_fine numero_righe"
|
||||
echo " le date vanno passate in formato DDMMYYYY "
|
||||
echo " numero_righe indica quante righe al massimo estrarre nel file"
|
||||
exit -1
|
||||
fi
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runDbc2Dbcfx.sql $1 $2 $3 >$THIS_PATH/runDbc2Dbcfx.log
|
||||
fi
|
||||
32
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runDbc2Dbcfx.sql
Normal file
32
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runDbc2Dbcfx.sql
Normal file
@@ -0,0 +1,32 @@
|
||||
set heading off
|
||||
set pagesize 0
|
||||
set linesize 200
|
||||
set trimspool on
|
||||
set feedback off
|
||||
set verify off
|
||||
set echo off
|
||||
set termout off
|
||||
set time off
|
||||
set timing off
|
||||
alter session set nls_territory='italy';
|
||||
UPDATE MNP_DBP2DBCFX D
|
||||
SET D.FLAG_LAVORATO=2 --in lavorazione
|
||||
WHERE D.FLAG_LAVORATO=0
|
||||
AND D.DATA_CUT_OVER BETWEEN TO_DATE('&1','DDMMYYYY') AND TO_DATE('&2','DDMMYYYY')
|
||||
AND ROWNUM < &3;
|
||||
spool mnp_dbp2dbcfx.csv
|
||||
SELECT MSISDN
|
||||
||';'||TO_CHAR(DATA_CUT_OVER,'ddmmyyyy hh24miss')
|
||||
||';'||CODICE_OPERATORE_RECIPIENT
|
||||
||';'||NVL(ROUTING_NUMBER,' ')
|
||||
||';'||TO_CHAR(SYSDATE,'ddmmyyyy hh24miss')
|
||||
||';'||'2'
|
||||
FROM MNP_DBP2DBCFX D
|
||||
WHERE D.FLAG_LAVORATO=2;
|
||||
spool off
|
||||
UPDATE MNP_DBP2DBCFX D
|
||||
SET D.FLAG_LAVORATO=1
|
||||
WHERE D.FLAG_LAVORATO=2;
|
||||
COMMIT;
|
||||
/
|
||||
EXIT
|
||||
16
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runDbc2FASTWEB.sh
Normal file
16
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runDbc2FASTWEB.sh
Normal file
@@ -0,0 +1,16 @@
|
||||
#!/usr/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/../setEnv.sh
|
||||
|
||||
$THIS_PATH/../TestNodo.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
if [ "$1" = "" ] || [ "$2" = "" ] || [ "$3" = "" ]; then
|
||||
echo "Utilizzo: ${0} data_inizio data_fine numero_righe"
|
||||
echo " le date vanno passate in formato DDMMYYYY "
|
||||
echo " numero_righe indica quante righe al massimo estrarre nel file"
|
||||
exit -1
|
||||
fi
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runDbc2FASTWEB.sql $1 $2 $3 >$THIS_PATH/runDbc2FASTWEB.log
|
||||
fi
|
||||
33
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runDbc2FASTWEB.sql
Normal file
33
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runDbc2FASTWEB.sql
Normal file
@@ -0,0 +1,33 @@
|
||||
set heading off
|
||||
set pagesize 0
|
||||
set linesize 200
|
||||
set trimspool on
|
||||
set feedback off
|
||||
set verify off
|
||||
set echo off
|
||||
set termout off
|
||||
set time off
|
||||
set timing off
|
||||
alter session set nls_territory='italy';
|
||||
UPDATE MNP_DBP2DBCFX D
|
||||
SET D.FLAG_LAVORATO=2 --in lavorazione
|
||||
WHERE D.FLAG_LAVORATO=0
|
||||
AND D.DATA_CUT_OVER BETWEEN TO_DATE('&1','DDMMYYYY') AND TO_DATE('&2','DDMMYYYY')
|
||||
AND ROWNUM < &3;
|
||||
spool mnp_dbp2FASTWEB.csv
|
||||
SELECT ID_RICHIESTA
|
||||
||';'||MSISDN
|
||||
||';'||CODICE_OPERATORE_RECIPIENT
|
||||
||';'||NVL(ROUTING_NUMBER,' ')
|
||||
||';'||TO_CHAR(DATA_CUT_OVER,'ddmmyyyy hh24miss')
|
||||
||';'||TO_CHAR(SYSDATE,'ddmmyyyy hh24miss')
|
||||
||';'
|
||||
FROM MNP_DBP2DBCFX D
|
||||
WHERE D.FLAG_LAVORATO=2;
|
||||
spool off
|
||||
UPDATE MNP_DBP2DBCFX D
|
||||
SET D.FLAG_LAVORATO=1
|
||||
WHERE D.FLAG_LAVORATO=2;
|
||||
COMMIT;
|
||||
/
|
||||
EXIT
|
||||
15
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runRichiesta.sh
Normal file
15
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runRichiesta.sh
Normal file
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/../setEnv.sh
|
||||
|
||||
$THIS_PATH/../TestNodo.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
if [ "$1" = "" ] || [ "$2" = "" ]; then
|
||||
echo "Utilizzo: ${0} data_inizio data_fine "
|
||||
echo " le date vanno passate in formato DDMMYYYY "
|
||||
exit -1
|
||||
fi
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runRichiesta.sql $1 $2 >$THIS_PATH/runRichiesta.log
|
||||
fi
|
||||
13
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runRichiesta.sql
Normal file
13
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runRichiesta.sql
Normal file
@@ -0,0 +1,13 @@
|
||||
DECLARE
|
||||
DATA_INIZIO DATE;
|
||||
DATA_FINE DATE;
|
||||
|
||||
BEGIN
|
||||
DATA_INIZIO := TO_DATE('&1','DDMMYYYY');
|
||||
DATA_FINE := TO_DATE('&2','DDMMYYYY');
|
||||
|
||||
PKG_DBP.ESTR_RICHIESTA ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
END;
|
||||
/
|
||||
exit
|
||||
15
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runRichiestaCess.sh
Normal file
15
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runRichiestaCess.sh
Normal file
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/../setEnv.sh
|
||||
|
||||
$THIS_PATH/../TestNodo.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
if [ "$1" = "" ] || [ "$2" = "" ]; then
|
||||
echo "Utilizzo: ${0} data_inizio data_fine "
|
||||
echo " le date vanno passate in formato DDMMYYYY "
|
||||
exit -1
|
||||
fi
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runRichiestaCess.sql $1 $2 >$THIS_PATH/runRichiestaCess.log
|
||||
fi
|
||||
13
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runRichiestaCess.sql
Normal file
13
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runRichiestaCess.sql
Normal file
@@ -0,0 +1,13 @@
|
||||
DECLARE
|
||||
DATA_INIZIO DATE;
|
||||
DATA_FINE DATE;
|
||||
|
||||
BEGIN
|
||||
DATA_INIZIO := TO_DATE('&1','DDMMYYYY');
|
||||
DATA_FINE := TO_DATE('&2','DDMMYYYY');
|
||||
|
||||
PKG_DBP.ESTR_RICHIESTA_CESS ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
END;
|
||||
/
|
||||
exit
|
||||
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/../setEnv.sh
|
||||
|
||||
$THIS_PATH/../TestNodo.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
if [ "$1" = "" ] || [ "$2" = "" ]; then
|
||||
echo "Utilizzo: ${0} data_inizio data_fine "
|
||||
echo " le date vanno passate in formato DDMMYYYY "
|
||||
exit -1
|
||||
fi
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runRichiestaCessPort.sql $1 $2 >$THIS_PATH/runRichiestaCessPort.log
|
||||
fi
|
||||
@@ -0,0 +1,13 @@
|
||||
DECLARE
|
||||
DATA_INIZIO DATE;
|
||||
DATA_FINE DATE;
|
||||
|
||||
BEGIN
|
||||
DATA_INIZIO := TO_DATE('&1','DDMMYYYY');
|
||||
DATA_FINE := TO_DATE('&2','DDMMYYYY');
|
||||
|
||||
PKG_DBP.ESTR_RICH_CESS_PORT ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
END;
|
||||
/
|
||||
exit
|
||||
15
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runRichiestaPorting.sh
Normal file
15
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runRichiestaPorting.sh
Normal file
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/../setEnv.sh
|
||||
|
||||
$THIS_PATH/../TestNodo.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
if [ "$1" = "" ] || [ "$2" = "" ]; then
|
||||
echo "Utilizzo: ${0} data_inizio data_fine "
|
||||
echo " le date vanno passate in formato DDMMYYYY "
|
||||
exit -1
|
||||
fi
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runRichiestaPorting.sql $1 $2 >$THIS_PATH/runRichiestaPorting.log
|
||||
fi
|
||||
@@ -0,0 +1,13 @@
|
||||
DECLARE
|
||||
DATA_INIZIO DATE;
|
||||
DATA_FINE DATE;
|
||||
|
||||
BEGIN
|
||||
DATA_INIZIO := TO_DATE('&1','DDMMYYYY');
|
||||
DATA_FINE := TO_DATE('&2','DDMMYYYY');
|
||||
|
||||
PKG_DBP.ESTR_RICHIESTA_PORTING ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
END;
|
||||
/
|
||||
exit
|
||||
15
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runRichiestaRec.sh
Normal file
15
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runRichiestaRec.sh
Normal file
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/../setEnv.sh
|
||||
|
||||
$THIS_PATH/../TestNodo.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
if [ "$1" = "" ] || [ "$2" = "" ]; then
|
||||
echo "Utilizzo: ${0} data_inizio data_fine "
|
||||
echo " le date vanno passate in formato DDMMYYYY "
|
||||
exit -1
|
||||
fi
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runRichiestaRec.sql $1 $2 >$THIS_PATH/runRichiestaRec.log
|
||||
fi
|
||||
13
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runRichiestaRec.sql
Normal file
13
dbcmnpsrc/FE/mnpapp/script/DB_Portati/runRichiestaRec.sql
Normal file
@@ -0,0 +1,13 @@
|
||||
DECLARE
|
||||
DATA_INIZIO DATE;
|
||||
DATA_FINE DATE;
|
||||
|
||||
BEGIN
|
||||
DATA_INIZIO := TO_DATE('&1','DDMMYYYY');
|
||||
DATA_FINE := TO_DATE('&2','DDMMYYYY');
|
||||
|
||||
PKG_DBP.ESTR_RICHIESTA_REC ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
END;
|
||||
/
|
||||
exit
|
||||
@@ -0,0 +1,21 @@
|
||||
CREATE TABLE MNP_DBP2DBCFX
|
||||
(
|
||||
ID_RICHIESTA VARCHAR2(23 BYTE) NOT NULL,
|
||||
MSISDN VARCHAR2(15 BYTE) NOT NULL,
|
||||
CODICE_OPERATORE_RECIPIENT VARCHAR2(4 BYTE),
|
||||
ROUTING_NUMBER VARCHAR2(3 BYTE) DEFAULT NULL,
|
||||
DATA_CUT_OVER DATE,
|
||||
DATA_ESTRAZIONE DATE NOT NULL,
|
||||
FLAG_LAVORATO NUMBER(1) DEFAULT 0 NOT NULL
|
||||
)
|
||||
LOGGING
|
||||
NOCOMPRESS
|
||||
NOCACHE
|
||||
NOPARALLEL
|
||||
NOMONITORING;
|
||||
|
||||
|
||||
CREATE UNIQUE INDEX PK_MNP_DBP2DBCFX ON MNP_DBP2DBCFX
|
||||
(MSISDN)
|
||||
LOGGING
|
||||
NOPARALLEL;
|
||||
311
dbcmnpsrc/FE/mnpapp/script/DB_Portati/sql/pkg_dbp.sql
Normal file
311
dbcmnpsrc/FE/mnpapp/script/DB_Portati/sql/pkg_dbp.sql
Normal file
@@ -0,0 +1,311 @@
|
||||
CREATE OR REPLACE PACKAGE MNP.PKG_DBP AS
|
||||
|
||||
PROCEDURE estr_RICHIESTA (data_inizio IN DATE, data_fine IN DATE);
|
||||
PROCEDURE estr_RICHIESTA_REC (data_inizio IN DATE, data_fine IN DATE);
|
||||
PROCEDURE estr_RICHIESTA_PORTING (data_inizio IN DATE, data_fine IN DATE);
|
||||
PROCEDURE estr_RICH_CESS_PORT (data_inizio IN DATE, data_fine IN DATE);
|
||||
PROCEDURE estr_RICHIESTA_CESS (data_inizio IN DATE, data_fine IN DATE);
|
||||
|
||||
END PKG_DBP;
|
||||
/
|
||||
|
||||
CREATE OR REPLACE package body MNP.PKG_DBP as
|
||||
|
||||
-- PROCESSO DONOR STANDARD/MVNO/PrjHoc
|
||||
procedure estr_RICHIESTA(data_inizio IN DATE, data_fine IN DATE) IS
|
||||
|
||||
oldDataCutOver date ;
|
||||
|
||||
CURSOR SEL_RICHIESTA IS
|
||||
SELECT /*+ full(mgr) parallel(5)*/ mgr.id_richiesta AS ID_RICHIESTA
|
||||
, NVL (mgr.msisdn, '') AS MSISDN
|
||||
, mgr.codice_operatore_recipient AS CODICE_OPERATORE_RECIPIENT
|
||||
, (SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER
|
||||
, mgr.data_cut_over AS DATA_CUT_OVER, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 0 AS FLAG_LAVORATO
|
||||
FROM mnp_gestione_richiesta mgr
|
||||
WHERE STATO IN(7 --VALIDATAOK
|
||||
,9 --ACCETTATA
|
||||
,14 --INCESSAZIONE
|
||||
,15 --CESSATA
|
||||
,16 --ESPLETATA
|
||||
,99 --BLOCCATA
|
||||
)
|
||||
AND mgr.DATA_CUT_OVER BETWEEN data_inizio and data_fine;
|
||||
|
||||
BEGIN
|
||||
|
||||
FOR rigaLetta IN SEL_RICHIESTA LOOP
|
||||
BEGIN
|
||||
INSERT INTO MNP_DBP2DBCFX (
|
||||
ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT,
|
||||
ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE,
|
||||
FLAG_LAVORATO)
|
||||
VALUES ( rigaLetta.ID_RICHIESTA
|
||||
,rigaLetta.MSISDN
|
||||
,rigaLetta.CODICE_OPERATORE_RECIPIENT
|
||||
,rigaLetta.ROUTING_NUMBER
|
||||
,rigaLetta.DATA_CUT_OVER
|
||||
,rigaLetta.DATA_ESTRAZIONE
|
||||
,rigaLetta.FLAG_LAVORATO
|
||||
);
|
||||
EXCEPTION WHEN DUP_VAL_ON_INDEX THEN
|
||||
BEGIN
|
||||
SELECT DATA_CUT_OVER
|
||||
INTO oldDataCutOver
|
||||
FROM MNP_DBP2DBCFX
|
||||
WHERE MSISDN = rigaLetta.MSISDN;
|
||||
|
||||
IF rigaLetta.DATA_CUT_OVER >= oldDataCutOver THEN
|
||||
UPDATE MNP_DBP2DBCFX
|
||||
SET ID_RICHIESTA=rigaLetta.ID_RICHIESTA
|
||||
,CODICE_OPERATORE_RECIPIENT = rigaLetta.CODICE_OPERATORE_RECIPIENT
|
||||
,ROUTING_NUMBER = rigaLetta.ROUTING_NUMBER
|
||||
,DATA_CUT_OVER = rigaLetta.DATA_CUT_OVER
|
||||
,DATA_ESTRAZIONE = rigaLetta.DATA_ESTRAZIONE
|
||||
,FLAG_LAVORATO = rigaLetta.FLAG_LAVORATO
|
||||
WHERE MSISDN = rigaLetta.MSISDN;
|
||||
END IF;
|
||||
END;
|
||||
END;
|
||||
END LOOP;
|
||||
COMMIT;
|
||||
return;
|
||||
|
||||
END estr_RICHIESTA;
|
||||
|
||||
-- PROCESSO RECIPIENT STANDARD/MVNO/PrjHoc
|
||||
procedure estr_RICHIESTA_REC(data_inizio IN DATE, data_fine IN DATE) IS
|
||||
|
||||
oldDataCutOver date ;
|
||||
|
||||
CURSOR SEL_RICHIESTA IS
|
||||
SELECT /*+ full(mgr) parallel(5)*/ mgr.id_richiesta AS id_richiesta, NVL (mgr.msisdn, '') AS msisdn,
|
||||
mgr.codice_operatore_recipient AS codice_operatore_recipient,
|
||||
(SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER,
|
||||
mgr.data_cut_over AS data_cut_over, SYSDATE AS data_estrazione,
|
||||
0 AS flag_lavorato
|
||||
FROM mnp_gestione_richiesta_rec mgr
|
||||
WHERE STATO IN(8 --VALIDATA
|
||||
,10 --ACCETTATA
|
||||
,11 --ATTESAEVASIONE
|
||||
,12 --EVASA
|
||||
)
|
||||
AND mgr.data_cut_over BETWEEN data_inizio AND data_fine;
|
||||
|
||||
BEGIN
|
||||
|
||||
FOR rigaLetta IN SEL_RICHIESTA LOOP
|
||||
BEGIN
|
||||
INSERT INTO MNP_DBP2DBCFX (
|
||||
ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT,
|
||||
ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE,
|
||||
FLAG_LAVORATO)
|
||||
VALUES ( rigaLetta.ID_RICHIESTA
|
||||
,rigaLetta.MSISDN
|
||||
,rigaLetta.CODICE_OPERATORE_RECIPIENT
|
||||
,rigaLetta.ROUTING_NUMBER
|
||||
,rigaLetta.DATA_CUT_OVER
|
||||
,rigaLetta.DATA_ESTRAZIONE
|
||||
,rigaLetta.FLAG_LAVORATO
|
||||
);
|
||||
EXCEPTION WHEN DUP_VAL_ON_INDEX THEN
|
||||
BEGIN
|
||||
SELECT DATA_CUT_OVER
|
||||
INTO oldDataCutOver
|
||||
FROM MNP_DBP2DBCFX
|
||||
WHERE MSISDN = rigaLetta.MSISDN;
|
||||
|
||||
IF rigaLetta.DATA_CUT_OVER >= oldDataCutOver THEN
|
||||
UPDATE MNP_DBP2DBCFX
|
||||
SET ID_RICHIESTA=rigaLetta.ID_RICHIESTA
|
||||
,CODICE_OPERATORE_RECIPIENT = rigaLetta.CODICE_OPERATORE_RECIPIENT
|
||||
,ROUTING_NUMBER = rigaLetta.ROUTING_NUMBER
|
||||
,DATA_CUT_OVER = rigaLetta.DATA_CUT_OVER
|
||||
,DATA_ESTRAZIONE = rigaLetta.DATA_ESTRAZIONE
|
||||
,FLAG_LAVORATO = rigaLetta.FLAG_LAVORATO
|
||||
WHERE MSISDN = rigaLetta.MSISDN;
|
||||
END IF;
|
||||
END;
|
||||
END;
|
||||
END LOOP;
|
||||
COMMIT;
|
||||
return;
|
||||
|
||||
END estr_RICHIESTA_REC;
|
||||
|
||||
-- PROCESSO PORTING TERZE PARTI
|
||||
procedure estr_RICHIESTA_PORTING(data_inizio IN DATE, data_fine IN DATE) IS
|
||||
oldDataCutOver date ;
|
||||
|
||||
CURSOR SEL_RICHIESTA IS
|
||||
SELECT mgr.id_richiesta AS id_richiesta, NVL (mgr.msisdn, '') AS msisdn,
|
||||
mgr.codice_operatore_recipient AS codice_operatore_recipient,
|
||||
(SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER,
|
||||
mgr.data_cut_over AS data_cut_over, SYSDATE AS data_estrazione,
|
||||
0 AS flag_lavorato
|
||||
FROM mnp_gestione_richiesta_porting mgr
|
||||
where mgr.data_cut_over BETWEEN data_inizio AND data_fine;
|
||||
|
||||
BEGIN
|
||||
|
||||
FOR rigaLetta IN SEL_RICHIESTA LOOP
|
||||
BEGIN
|
||||
INSERT INTO MNP_DBP2DBCFX (
|
||||
ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT,
|
||||
ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE,
|
||||
FLAG_LAVORATO)
|
||||
VALUES ( rigaLetta.ID_RICHIESTA
|
||||
,rigaLetta.MSISDN
|
||||
,rigaLetta.CODICE_OPERATORE_RECIPIENT
|
||||
,rigaLetta.ROUTING_NUMBER
|
||||
,rigaLetta.DATA_CUT_OVER
|
||||
,rigaLetta.DATA_ESTRAZIONE
|
||||
,rigaLetta.FLAG_LAVORATO
|
||||
);
|
||||
EXCEPTION WHEN DUP_VAL_ON_INDEX THEN
|
||||
BEGIN
|
||||
SELECT DATA_CUT_OVER
|
||||
INTO oldDataCutOver
|
||||
FROM MNP_DBP2DBCFX
|
||||
WHERE MSISDN = rigaLetta.MSISDN;
|
||||
|
||||
IF rigaLetta.DATA_CUT_OVER >= oldDataCutOver THEN
|
||||
UPDATE MNP_DBP2DBCFX
|
||||
SET ID_RICHIESTA=rigaLetta.ID_RICHIESTA
|
||||
,CODICE_OPERATORE_RECIPIENT = rigaLetta.CODICE_OPERATORE_RECIPIENT
|
||||
,ROUTING_NUMBER = rigaLetta.ROUTING_NUMBER
|
||||
,DATA_CUT_OVER = rigaLetta.DATA_CUT_OVER
|
||||
,DATA_ESTRAZIONE = rigaLetta.DATA_ESTRAZIONE
|
||||
,FLAG_LAVORATO = rigaLetta.FLAG_LAVORATO
|
||||
WHERE MSISDN = rigaLetta.MSISDN;
|
||||
END IF;
|
||||
END;
|
||||
END;
|
||||
END LOOP;
|
||||
COMMIT;
|
||||
return;
|
||||
|
||||
END estr_RICHIESTA_PORTING;
|
||||
|
||||
-- PROCESSO CESSAZIONI PORTING
|
||||
procedure estr_RICH_CESS_PORT(data_inizio IN DATE, data_fine IN DATE) IS
|
||||
oldDataCutOver date ;
|
||||
|
||||
CURSOR SEL_RICHIESTA IS
|
||||
SELECT mgr.id_richiesta AS id_richiesta, NVL (mgr.msisdn, '') AS msisdn,
|
||||
o.desc_olo AS codice_operatore_recipient,
|
||||
o.ROUTING_NUMBER AS routing_number,
|
||||
mgr.data_cut_over AS data_cut_over, SYSDATE AS data_estrazione,
|
||||
0 AS flag_lavorato
|
||||
FROM mnp_gestione_rich_CESS_PORT mgr, mnp_olo o
|
||||
where mgr.data_cut_over BETWEEN data_inizio AND data_fine
|
||||
AND (mgr.STATO='4' OR
|
||||
(mgr.stato='2' AND NOT EXISTS (SELECT 1 FROM MNP_OLO MO, MNP_OLO_PREFISSI MOP
|
||||
WHERE MO.DESC_OLO IN('TIMT','TIMG')
|
||||
AND MOP.COD_OLO=MO.COD_OLO
|
||||
AND ( MOP.PREFIX=substr(mgr.MSISDN,3,3) OR MOP.PREFIX=substr(mgr.MSISDN,3,4) )
|
||||
) )
|
||||
)
|
||||
AND o.DESC_OLO=mgr.CODICE_OPERATORE_RECIPIENT;
|
||||
|
||||
BEGIN
|
||||
|
||||
FOR rigaLetta IN SEL_RICHIESTA LOOP
|
||||
BEGIN
|
||||
INSERT INTO MNP_DBP2DBCFX (
|
||||
ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT,
|
||||
ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE,
|
||||
FLAG_LAVORATO)
|
||||
VALUES ( rigaLetta.ID_RICHIESTA
|
||||
,rigaLetta.MSISDN
|
||||
,rigaLetta.CODICE_OPERATORE_RECIPIENT
|
||||
,rigaLetta.ROUTING_NUMBER
|
||||
,rigaLetta.DATA_CUT_OVER
|
||||
,rigaLetta.DATA_ESTRAZIONE
|
||||
,rigaLetta.FLAG_LAVORATO
|
||||
);
|
||||
EXCEPTION WHEN DUP_VAL_ON_INDEX THEN
|
||||
BEGIN
|
||||
SELECT DATA_CUT_OVER
|
||||
INTO oldDataCutOver
|
||||
FROM MNP_DBP2DBCFX
|
||||
WHERE MSISDN = rigaLetta.MSISDN;
|
||||
|
||||
IF rigaLetta.DATA_CUT_OVER >= oldDataCutOver THEN
|
||||
UPDATE MNP_DBP2DBCFX
|
||||
SET ID_RICHIESTA=rigaLetta.ID_RICHIESTA
|
||||
,CODICE_OPERATORE_RECIPIENT = rigaLetta.CODICE_OPERATORE_RECIPIENT
|
||||
,ROUTING_NUMBER = rigaLetta.ROUTING_NUMBER
|
||||
,DATA_CUT_OVER = rigaLetta.DATA_CUT_OVER
|
||||
,DATA_ESTRAZIONE = rigaLetta.DATA_ESTRAZIONE
|
||||
,FLAG_LAVORATO = rigaLetta.FLAG_LAVORATO
|
||||
WHERE MSISDN = rigaLetta.MSISDN;
|
||||
END IF;
|
||||
END;
|
||||
END;
|
||||
END LOOP;
|
||||
COMMIT;
|
||||
return;
|
||||
END estr_RICH_CESS_PORT;
|
||||
|
||||
-- PROCESSO CESSAZIONI
|
||||
procedure estr_RICHIESTA_CESS(data_inizio IN DATE, data_fine IN DATE) IS
|
||||
oldDataCutOver date ;
|
||||
|
||||
CURSOR SEL_RICHIESTA IS
|
||||
SELECT mgr.id_richiesta AS id_richiesta, NVL (mgr.msisdn, '') AS msisdn,
|
||||
o.desc_olo AS codice_operatore_recipient,
|
||||
o.ROUTING_NUMBER AS routing_number,
|
||||
mgr.data_cut_over AS data_cut_over, SYSDATE AS data_estrazione,
|
||||
0 AS flag_lavorato
|
||||
FROM mnp_gestione_richiesta_CESS mgr, mnp_olo o , MNP_OLO_PREFISSI MOP, mnp_olo mo
|
||||
where mgr.data_cut_over BETWEEN data_inizio AND data_fine
|
||||
AND o.DESC_OLO=mgr.CODICE_OPERATORE_RECIPIENT
|
||||
and ( MOP.PREFIX=substr(mgr.MSISDN,3,3) OR MOP.PREFIX=substr(mgr.MSISDN,3,4) )
|
||||
and mo.COD_OLO=mop.cod_olo;
|
||||
|
||||
BEGIN
|
||||
|
||||
FOR rigaLetta IN SEL_RICHIESTA LOOP
|
||||
BEGIN
|
||||
INSERT INTO MNP_DBP2DBCFX (
|
||||
ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT,
|
||||
ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE,
|
||||
FLAG_LAVORATO)
|
||||
VALUES ( rigaLetta.ID_RICHIESTA
|
||||
,rigaLetta.MSISDN
|
||||
,rigaLetta.CODICE_OPERATORE_RECIPIENT
|
||||
,rigaLetta.ROUTING_NUMBER
|
||||
,rigaLetta.DATA_CUT_OVER
|
||||
,rigaLetta.DATA_ESTRAZIONE
|
||||
,rigaLetta.FLAG_LAVORATO
|
||||
);
|
||||
EXCEPTION WHEN DUP_VAL_ON_INDEX THEN
|
||||
BEGIN
|
||||
SELECT DATA_CUT_OVER
|
||||
INTO oldDataCutOver
|
||||
FROM MNP_DBP2DBCFX
|
||||
WHERE MSISDN = rigaLetta.MSISDN;
|
||||
|
||||
IF rigaLetta.DATA_CUT_OVER >= oldDataCutOver THEN
|
||||
UPDATE MNP_DBP2DBCFX
|
||||
SET ID_RICHIESTA=rigaLetta.ID_RICHIESTA
|
||||
,CODICE_OPERATORE_RECIPIENT = rigaLetta.CODICE_OPERATORE_RECIPIENT
|
||||
,ROUTING_NUMBER = rigaLetta.ROUTING_NUMBER
|
||||
,DATA_CUT_OVER = rigaLetta.DATA_CUT_OVER
|
||||
,DATA_ESTRAZIONE = rigaLetta.DATA_ESTRAZIONE
|
||||
,FLAG_LAVORATO = rigaLetta.FLAG_LAVORATO
|
||||
WHERE MSISDN = rigaLetta.MSISDN;
|
||||
END IF;
|
||||
END;
|
||||
END;
|
||||
END LOOP;
|
||||
COMMIT;
|
||||
return;
|
||||
|
||||
END estr_RICHIESTA_CESS;
|
||||
|
||||
END PKG_DBP;
|
||||
/
|
||||
|
||||
3
dbcmnpsrc/FE/mnpapp/script/DB_Portati/sql/updMnpOlo.sql
Normal file
3
dbcmnpsrc/FE/mnpapp/script/DB_Portati/sql/updMnpOlo.sql
Normal file
@@ -0,0 +1,3 @@
|
||||
UPDATE MNP_OLO
|
||||
SET ROUTING_NUMBER='362' WHERE DESC_OLO='TIMG';
|
||||
COMMIT;
|
||||
@@ -0,0 +1,7 @@
|
||||
LOCALDIR_DA_INVIARE=file_da_inviare
|
||||
LOCALDIR_INVIATI=file_inviati
|
||||
LOCALDIR_FALLITI=file_falliti
|
||||
MESI_INTERVALLO_INFASAMENTO=12
|
||||
DATA_INIZIO_INFASAMENTO=19900101
|
||||
NUMERO_RIGHE_FILE=1000000
|
||||
INVIO_FILE_SFTP=YES
|
||||
@@ -0,0 +1,106 @@
|
||||
#!/usr/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/../setEnv.sh
|
||||
. $THIS_PATH/export_coop.properties
|
||||
|
||||
$THIS_PATH/../TestNodo.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
if [ "$1" = "" ] ; then
|
||||
echo "Utilizzo: ${0} modalità infasamento"
|
||||
echo "i valori ammessi sono FULL o DELTA"
|
||||
exit -1
|
||||
fi
|
||||
|
||||
if [ -f "$THIS_PATH/date_infasamento.txt" ] ; then
|
||||
rm "$THIS_PATH/date_infasamento.txt"
|
||||
fi
|
||||
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Inizio infasamento dati per export COOP" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
if [ "$1" = "FULL" ] ; then
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/infasamentoExportCOOPInitialize.sql $DATA_INIZIO_INFASAMENTO $MESI_INTERVALLO_INFASAMENTO $THIS_PATH>>$THIS_PATH/infasamentoExportCOOPSQL.log
|
||||
if [ $? -ne 0 ]; then
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Errore infasamento dati per export COOP" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "verificare errore in log $THIS_PATH/infasamentoExportCOOP.log" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
exit -1
|
||||
fi
|
||||
else
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/infasamentoExportCOOPGetDate.sql $THIS_PATH>>$THIS_PATH/infasamentoExportCOOPSQL.log
|
||||
if [ $? -ne 0 ]; then
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Errore infasamento dati per export COOP" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "verificare errore in log $THIS_PATH/infasamentoExportCOOP.log" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
exit -1
|
||||
fi
|
||||
fi
|
||||
START_DATE=$(awk -F";" '{print $1}' < $THIS_PATH/date_infasamento.txt)
|
||||
END_DATE=$(awk -F";" '{print $2}' < $THIS_PATH/date_infasamento.txt)
|
||||
FINAL_DATE=$(awk -F";" '{print $3}' < $THIS_PATH/date_infasamento.txt)
|
||||
|
||||
while [ $START_DATE -le $FINAL_DATE ] ;
|
||||
do
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Inizio infasamento da $START_DATE a $END_DATE" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Inizio infasamento da $START_DATE a $END_DATE dello script runRichiesta_Portati_COOP.sh" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
$THIS_PATH/runRichiesta_Portati_COOP.sh $START_DATE $END_DATE
|
||||
if [ $? -ne 0 ]; then
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Errore infasamento da $START_DATE a $END_DATE dello script runRichiesta_Portati_COOP.sh" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "verificare errore in log $THIS_PATH/infasamentoExportCOOP.log" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
exit -1
|
||||
fi
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Fine infasamento da $START_DATE a $END_DATE dello script runRichiesta_Portati_COOP.sh" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Inizio infasamento da $START_DATE a $END_DATE dello script runRichiestaRec_Portati_COOP.sh" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
$THIS_PATH/runRichiestaRec_Portati_COOP.sh $START_DATE $END_DATE
|
||||
if [ $? -ne 0 ]; then
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Errore infasamento da $START_DATE a $END_DATE dello script runRichiestaRec_Portati_COOP.sh" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "verificare errore in log $THIS_PATH/infasamentoExportCOOP.log" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
exit -1
|
||||
fi
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Fine infasamento da $START_DATE a $END_DATE dello script runRichiestaRec_Portati_COOP.sh" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Inizio infasamento da $START_DATE a $END_DATE dello script runRichiestaPorting_Portati_COOP.sh" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
$THIS_PATH/runRichiestaPorting_Portati_COOP.sh $START_DATE $END_DATE
|
||||
if [ $? -ne 0 ]; then
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Errore infasamento da $START_DATE a $END_DATE dello script runRichiestaPorting_Portati_COOP.sh" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "verificare errore in log $THIS_PATH/infasamentoExportCOOP.log" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
exit -1
|
||||
fi
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Fine infasamento da $START_DATE a $END_DATE dello script runRichiestaPorting_Portati_COOP.sh" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Inizio infasamento da $START_DATE a $END_DATE dello script runRichiestaCess_Portati_COOP.sh" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
$THIS_PATH/runRichiestaCess_Portati_COOP.sh $START_DATE $END_DATE
|
||||
if [ $? -ne 0 ]; then
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Errore infasamento da $START_DATE a $END_DATE dello script runRichiestaCess_Portati_COOP.sh" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "verificare errore in log $THIS_PATH/infasamentoExportCOOP.log" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
exit -1
|
||||
fi
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Fine infasamento da $START_DATE a $END_DATE dello script runRichiestaCess_Portati_COOP.sh" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Inizio infasamento da $START_DATE a $END_DATE dello script runRichiestaCessPort_Portati_COOP.sh" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
$THIS_PATH/runRichiestaCessPort_Portati_COOP.sh $START_DATE $END_DATE
|
||||
if [ $? -ne 0 ]; then
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Errore infasamento da $START_DATE a $END_DATE dello script runRichiestaCessPort_Portati_COOP.sh" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "verificare errore in log $THIS_PATH/infasamentoExportCOOP.log" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
exit -1
|
||||
fi
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Fine infasamento da $START_DATE a $END_DATE dello script runRichiestaCessPort_Portati_COOP.sh" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Fine infasamento da $START_DATE a $END_DATE" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/infasamentoExportCOOPUpdateDate.sql $MESI_INTERVALLO_INFASAMENTO $THIS_PATH>>$THIS_PATH/infasamentoExportCOOPSQL.log
|
||||
if [ $? -ne 0 ]; then
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Errore aggiornamento date per export COOP" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "verificare errore in log $THIS_PATH/infasamentoExportCOOP.log" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
exit -1
|
||||
fi
|
||||
START_DATE=$(awk -F";" '{print $1}' < $THIS_PATH/date_infasamento.txt)
|
||||
END_DATE=$(awk -F";" '{print $2}' < $THIS_PATH/date_infasamento.txt)
|
||||
done
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Fine infasamento dati per export COOP" >> $THIS_PATH/infasamentoExportCOOP.log
|
||||
|
||||
if [ -f "$THIS_PATH/date_infasamento.txt" ] ; then
|
||||
rm "$THIS_PATH/date_infasamento.txt"
|
||||
fi
|
||||
|
||||
fi
|
||||
@@ -0,0 +1,16 @@
|
||||
set heading off
|
||||
set pagesize 0
|
||||
set linesize 200
|
||||
set trimspool on
|
||||
set feedback off
|
||||
set verify off
|
||||
set echo off
|
||||
set termout off
|
||||
set time off
|
||||
set timing off
|
||||
alter session set nls_territory='italy';
|
||||
spool &1/date_infasamento.txt;
|
||||
select START_DATE ||';'|| least(END_DATE, FINAL_DATE) ||';'|| FINAL_DATE from MNP_DBP2COOP_DATE WHERE ROWNUM = 1;
|
||||
spool off
|
||||
/
|
||||
EXIT
|
||||
@@ -0,0 +1,30 @@
|
||||
set heading off
|
||||
set pagesize 0
|
||||
set linesize 200
|
||||
set trimspool on
|
||||
set feedback off
|
||||
set verify off
|
||||
set echo off
|
||||
set termout off
|
||||
set time off
|
||||
set timing off
|
||||
alter session set nls_territory='italy';
|
||||
truncate table MNP_DBP2COOP_DATE;
|
||||
truncate table MNP_DBP2COOP;
|
||||
insert into MNP_DBP2COOP_DATE
|
||||
select TO_CHAR(t1.START_DATE,'YYYYMMDD'), TO_CHAR(ADD_MONTHS(t1.START_DATE, &2),'YYYYMMDD'), TO_CHAR(SYSDATE, 'YYYYMMDD') from (
|
||||
select min(t.MIN_DATE) as START_DATE from (
|
||||
select min(MGR.DATA_CUT_OVER_CALC) AS MIN_DATE from MNP_GESTIONE_RICHIESTA MGR WHERE MGR.DATA_CUT_OVER_CALC >= TO_DATE('&1','YYYYMMDD') UNION ALL
|
||||
select min(MGR.DATA_CUT_OVER_AOM) AS MIN_DATE from MNP_GESTIONE_RICHIESTA_REC MGR WHERE MGR.DATA_CUT_OVER_AOM >= TO_DATE('&1','YYYYMMDD') UNION ALL
|
||||
select min(MGR.DATA_CUT_OVER) AS MIN_DATE from MNP_GESTIONE_RICHIESTA_PORTING MGR WHERE MGR.DATA_CUT_OVER >= TO_DATE('&1','YYYYMMDD') UNION ALL
|
||||
select min(MGR.DATARICEZIONERICHIESTA) AS MIN_DATE from MNP_GESTIONE_RICH_CESS_PORT MGR WHERE MGR.DATARICEZIONERICHIESTA >= TO_DATE('&1','YYYYMMDD') UNION ALL
|
||||
select min(MGR.DATARICEZIONERICHIESTA) AS MIN_DATE from MNP_GESTIONE_RICHIESTA_CESS MGR WHERE MGR.DATARICEZIONERICHIESTA >= TO_DATE('&1','YYYYMMDD') UNION ALL
|
||||
select min(MGR.DATA_CUT_OVER_CALC) AS MIN_DATE from HIST_GESTIONE_RICHIESTA MGR WHERE MGR.DATA_CUT_OVER_CALC >= TO_DATE('&1','YYYYMMDD') UNION ALL
|
||||
select min(MGR.DATA_CUT_OVER_AOM) AS MIN_DATE from HIST_GESTIONE_RICHIESTA_REC MGR WHERE MGR.DATA_CUT_OVER_AOM >= TO_DATE('&1','YYYYMMDD') UNION ALL
|
||||
select min(MGR.DATA_CUT_OVER) AS MIN_DATE from HIST_GESTIONE_RICHIESTAPORTING MGR WHERE MGR.DATA_CUT_OVER >= TO_DATE('&1','YYYYMMDD')) t) t1;
|
||||
COMMIT;
|
||||
spool &3/date_infasamento.txt;
|
||||
select START_DATE ||';'|| least(END_DATE, FINAL_DATE) ||';'|| FINAL_DATE from MNP_DBP2COOP_DATE WHERE ROWNUM = 1;
|
||||
spool off
|
||||
/
|
||||
EXIT
|
||||
@@ -0,0 +1,18 @@
|
||||
set heading off
|
||||
set pagesize 0
|
||||
set linesize 200
|
||||
set trimspool on
|
||||
set feedback off
|
||||
set verify off
|
||||
set echo off
|
||||
set termout off
|
||||
set time off
|
||||
set timing off
|
||||
alter session set nls_territory='italy';
|
||||
update MNP_DBP2COOP_DATE m set m.START_DATE = TO_CHAR(TO_DATE(m.END_DATE,'YYYYMMDD') + 1,'YYYYMMDD'), m.END_DATE = TO_CHAR(ADD_MONTHS(TO_DATE(m.END_DATE,'YYYYMMDD'), &1),'YYYYMMDD') WHERE ROWNUM = 1;
|
||||
COMMIT;
|
||||
spool &2/date_infasamento.txt;
|
||||
select START_DATE ||';'|| least(END_DATE, FINAL_DATE) ||';'|| FINAL_DATE from MNP_DBP2COOP_DATE WHERE ROWNUM = 1;
|
||||
spool off
|
||||
/
|
||||
EXIT
|
||||
99
dbcmnpsrc/FE/mnpapp/script/DB_Portati_COOP/runDbc2COOP.sh
Normal file
99
dbcmnpsrc/FE/mnpapp/script/DB_Portati_COOP/runDbc2COOP.sh
Normal file
@@ -0,0 +1,99 @@
|
||||
#!/usr/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
|
||||
. $THIS_PATH/../setEnv.sh
|
||||
. $THIS_PATH/export_coop.properties
|
||||
|
||||
$THIS_PATH/../TestNodo.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
|
||||
if [ -f "$THIS_PATH/iteration_number.txt" ] ; then
|
||||
rm "$THIS_PATH/iteration_number.txt"
|
||||
fi
|
||||
if [ -f "$THIS_PATH/tmp_mnp_dbp2COOP.txt" ] ; then
|
||||
rm "$THIS_PATH/tmp_mnp_dbp2COOP.txt"
|
||||
fi
|
||||
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Inizio export dati per COOP" >> $THIS_PATH/runDbc2COOP.log
|
||||
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runDbc2COOPInitialize.sql $NUMERO_RIGHE_FILE $THIS_PATH>>$THIS_PATH/runDbc2COOPSQL.log
|
||||
if [ $? -ne 0 ]; then
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Errore inizializzazione export dati per COOP" >> $THIS_PATH/runDbc2COOP.log
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "verificare errore in log $THIS_PATH/runDbc2COOP.log" >> $THIS_PATH/runDbc2COOP.log
|
||||
exit -1
|
||||
fi
|
||||
|
||||
ITERATION_NUMBER=$(awk -F";" '{print $1}' < $THIS_PATH/iteration_number.txt)
|
||||
ITERATION_NUMBER_TODO=$(awk -F";" '{print $2}' < $THIS_PATH/iteration_number.txt)
|
||||
|
||||
HOST_SE_NPG_GMNP=$(cat ${MNP_PROP_FILE} | grep HOST_SE_NPG_GMNP | awk -F"=" '{print $2}')
|
||||
REMOTEDIR_SE_NPG_GMNP=$(cat ${MNP_PROP_FILE} | grep REMOTEDIR_SE_NPG_GMNP | awk -F"=" '{print $2}')
|
||||
USER_SE_NPG_GMNP=$(cat ${MNP_PROP_FILE} | grep USER_SE_NPG_GMNP | awk -F"=" '{print $2}')
|
||||
SFTP_PRIVATEKEY_PATH=$(cat ${MNP_PROP_FILE} | grep SFTP_PRIVATEKEY_PATH | awk -F"=" '{print $2}')
|
||||
|
||||
while [ $ITERATION_NUMBER_TODO -le $ITERATION_NUMBER ] ;
|
||||
do
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Inizio iterazione $ITERATION_NUMBER_TODO di $ITERATION_NUMBER" >> $THIS_PATH/runDbc2COOP.log
|
||||
DATE=`echo $(date +%Y%m%d%H%M%S )`
|
||||
FILENAME_TXT="MNP_${DATE}.txt"
|
||||
FILENAME_CTR="MNP_${DATE}.ctr"
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Iterazione $ITERATION_NUMBER_TODO di $ITERATION_NUMBER inizio scrittura file $FILENAME_TXT" >> $THIS_PATH/runDbc2COOP.log
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runDbc2COOP.sql $NUMERO_RIGHE_FILE $THIS_PATH>>$THIS_PATH/runDbc2COOPSQL.log
|
||||
if [ $? -ne 0 ]; then
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Errore scrittura file $FILENAME_TXT" >> $THIS_PATH/runDbc2COOP.log
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "verificare errore in log $THIS_PATH/runDbc2COOP.log" >> $THIS_PATH/runDbc2COOP.log
|
||||
exit -1
|
||||
fi
|
||||
mv $THIS_PATH/tmp_mnp_dbp2COOP.txt $THIS_PATH/$LOCALDIR_DA_INVIARE/$FILENAME_TXT
|
||||
touch $THIS_PATH/$LOCALDIR_DA_INVIARE/$FILENAME_CTR
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Iterazione $ITERATION_NUMBER_TODO di $ITERATION_NUMBER fine scrittura file $FILENAME_TXT" >> $THIS_PATH/runDbc2COOP.log
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Iterazione $ITERATION_NUMBER_TODO di $ITERATION_NUMBER inizio invio file $FILENAME_TXT" >> $THIS_PATH/runDbc2COOP.log
|
||||
if [ "$INVIO_FILE_SFTP" = "YES" ] ; then
|
||||
OUT=$(sftp -oIdentityFile=${SFTP_PRIVATEKEY_PATH} ${USER_SE_NPG_GMNP}@${HOST_SE_NPG_GMNP} << \
|
||||
!
|
||||
cd ${REMOTEDIR_SE_NPG_GMNP}
|
||||
put ${THIS_PATH}/${LOCALDIR_DA_INVIARE}/${FILENAME_TXT}
|
||||
exit
|
||||
!)
|
||||
echo "$OUT" >>$THIS_PATH/runDbc2COOPSFTP.log
|
||||
if [ $? -ne 0 ]; then
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Errore invio file $FILENAME_TXT" >> $THIS_PATH/runDbc2COOP.log
|
||||
mv $THIS_PATH/$LOCALDIR_DA_INVIARE/$FILENAME_TXT $THIS_PATH/$LOCALDIR_FALLITI/$FILENAME_TXT
|
||||
mv $THIS_PATH/$LOCALDIR_DA_INVIARE/$FILENAME_CTR $THIS_PATH/$LOCALDIR_FALLITI/$FILENAME_CTR
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "verificare errore in log $THIS_PATH/runDbc2COOPSFTP.log" >> $THIS_PATH/runDbc2COOP.log
|
||||
exit -1
|
||||
fi
|
||||
OUT=$(sftp -oIdentityFile=${SFTP_PRIVATEKEY_PATH} ${USER_SE_NPG_GMNP}@${HOST_SE_NPG_GMNP} << \
|
||||
!
|
||||
cd ${REMOTEDIR_SE_NPG_GMNP}
|
||||
put ${THIS_PATH}/${LOCALDIR_DA_INVIARE}/${FILENAME_CTR}
|
||||
exit
|
||||
!)
|
||||
echo "$OUT" >>$THIS_PATH/runDbc2COOPSFTP.log
|
||||
if [ $? -ne 0 ]; then
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Errore invio file $FILENAME_CTR" >> $THIS_PATH/runDbc2COOP.log
|
||||
mv $THIS_PATH/$LOCALDIR_DA_INVIARE/$FILENAME_TXT $THIS_PATH/$LOCALDIR_FALLITI/$FILENAME_TXT
|
||||
mv $THIS_PATH/$LOCALDIR_DA_INVIARE/$FILENAME_CTR $THIS_PATH/$LOCALDIR_FALLITI/$FILENAME_CTR
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "verificare errore in log $THIS_PATH/runDbc2COOPSFTP.log" >> $THIS_PATH/runDbc2COOP.log
|
||||
exit -1
|
||||
fi
|
||||
fi
|
||||
mv $THIS_PATH/$LOCALDIR_DA_INVIARE/$FILENAME_TXT $THIS_PATH/$LOCALDIR_INVIATI/$FILENAME_TXT
|
||||
mv $THIS_PATH/$LOCALDIR_DA_INVIARE/$FILENAME_CTR $THIS_PATH/$LOCALDIR_INVIATI/$FILENAME_CTR
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Iterazione $ITERATION_NUMBER_TODO di $ITERATION_NUMBER fine invio file $FILENAME_TXT" >> $THIS_PATH/runDbc2COOP.log
|
||||
ITERATION_NUMBER_TODO=$(($ITERATION_NUMBER_TODO + 1))
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runDbc2COOPWorked.sql $THIS_PATH>>$THIS_PATH/runDbc2COOPSQL.log
|
||||
done
|
||||
|
||||
echo `date +"%Y-%m-%d %H:%M:%S"` "Fine export dati per COOP" >> $THIS_PATH/runDbc2COOP.log
|
||||
|
||||
if [ -f "$THIS_PATH/iteration_number.txt" ] ; then
|
||||
rm "$THIS_PATH/iteration_number.txt"
|
||||
fi
|
||||
if [ -f "$THIS_PATH/tmp_mnp_dbp2COOP.txt" ] ; then
|
||||
rm "$THIS_PATH/tmp_mnp_dbp2COOP.txt"
|
||||
fi
|
||||
|
||||
fi
|
||||
31
dbcmnpsrc/FE/mnpapp/script/DB_Portati_COOP/runDbc2COOP.sql
Normal file
31
dbcmnpsrc/FE/mnpapp/script/DB_Portati_COOP/runDbc2COOP.sql
Normal file
@@ -0,0 +1,31 @@
|
||||
set heading off
|
||||
set pagesize 0
|
||||
set linesize 200
|
||||
set trimspool on
|
||||
set feedback off
|
||||
set verify off
|
||||
set echo off
|
||||
set termout off
|
||||
set time off
|
||||
set timing off
|
||||
alter session set nls_territory='italy';
|
||||
UPDATE MNP_DBP2COOP D
|
||||
SET D.FLAG_LAVORATO=2 --in lavorazione
|
||||
WHERE D.FLAG_LAVORATO=0
|
||||
and D.MSISDN in (
|
||||
select MSISDN from (
|
||||
SELECT C.MSISDN
|
||||
, ROW_NUMBER() OVER (ORDER BY C.MSISDN) rno
|
||||
FROM MNP_DBP2COOP C where C.FLAG_LAVORATO = 0)
|
||||
WHERE rno <= &1);
|
||||
--spool tmp_mnp_dbp2COOP.txt append; da usare se fare append
|
||||
spool &2/tmp_mnp_dbp2COOP.txt;
|
||||
SELECT 'telephone-number='''
|
||||
||MSISDN
|
||||
||''' result-info {routing-number='''||ROUTING_NUMBER
|
||||
||'''};'
|
||||
FROM MNP_DBP2COOP D
|
||||
WHERE D.FLAG_LAVORATO=2 ORDER BY MSISDN;
|
||||
spool off
|
||||
/
|
||||
EXIT
|
||||
@@ -0,0 +1,21 @@
|
||||
set heading off
|
||||
set pagesize 0
|
||||
set linesize 200
|
||||
set trimspool on
|
||||
set feedback off
|
||||
set verify off
|
||||
set echo off
|
||||
set termout off
|
||||
set time off
|
||||
set timing off
|
||||
alter session set nls_territory='italy';
|
||||
UPDATE MNP_DBP2COOP D
|
||||
SET D.FLAG_LAVORATO=0 --da lavorare
|
||||
WHERE D.FLAG_LAVORATO=2;
|
||||
COMMIT;
|
||||
spool &2/iteration_number.txt;
|
||||
select ceil(count(l.MSISDN)/&1) || ';' || floor(((count(l.MSISDN) - t.WORKED)/&1) + 1) from MNP_DBP2COOP l,
|
||||
(select count(*) as WORKED from MNP_DBP2COOP m where m.FLAG_LAVORATO = 0) t group by t.WORKED;
|
||||
spool off
|
||||
/
|
||||
EXIT
|
||||
@@ -0,0 +1,17 @@
|
||||
set heading off
|
||||
set pagesize 0
|
||||
set linesize 200
|
||||
set trimspool on
|
||||
set feedback off
|
||||
set verify off
|
||||
set echo off
|
||||
set termout off
|
||||
set time off
|
||||
set timing off
|
||||
alter session set nls_territory='italy';
|
||||
UPDATE MNP_DBP2COOP D
|
||||
SET D.FLAG_LAVORATO=1 --lavorati
|
||||
WHERE D.FLAG_LAVORATO=2;
|
||||
COMMIT;
|
||||
/
|
||||
EXIT
|
||||
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/../setEnv.sh
|
||||
|
||||
$THIS_PATH/../TestNodo.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
if [ "$1" = "" ] || [ "$2" = "" ]; then
|
||||
echo "Utilizzo: ${0} data_inizio data_fine "
|
||||
echo " le date vanno passate in formato YYYYMMDD "
|
||||
exit -1
|
||||
fi
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runRichiestaCessPort_Portati_COOP.sql $1 $2 >$THIS_PATH/runRichiestaCessPort.log
|
||||
fi
|
||||
@@ -0,0 +1,13 @@
|
||||
DECLARE
|
||||
DATA_INIZIO DATE;
|
||||
DATA_FINE DATE;
|
||||
|
||||
BEGIN
|
||||
DATA_INIZIO := TO_DATE('&1','YYYYMMDD');
|
||||
DATA_FINE := TO_DATE('&2','YYYYMMDD');
|
||||
|
||||
PKG_DBP_COOP.ESTR_RICH_CESS_PORT ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
END;
|
||||
/
|
||||
exit
|
||||
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/../setEnv.sh
|
||||
|
||||
$THIS_PATH/../TestNodo.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
if [ "$1" = "" ] || [ "$2" = "" ]; then
|
||||
echo "Utilizzo: ${0} data_inizio data_fine "
|
||||
echo " le date vanno passate in formato YYYYMMDD "
|
||||
exit -1
|
||||
fi
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runRichiestaCess_Portati_COOP.sql $1 $2 >$THIS_PATH/runRichiestaCess.log
|
||||
fi
|
||||
@@ -0,0 +1,13 @@
|
||||
DECLARE
|
||||
DATA_INIZIO DATE;
|
||||
DATA_FINE DATE;
|
||||
|
||||
BEGIN
|
||||
DATA_INIZIO := TO_DATE('&1','YYYYMMDD');
|
||||
DATA_FINE := TO_DATE('&2','YYYYMMDD');
|
||||
|
||||
PKG_DBP_COOP.ESTR_RICHIESTA_CESS ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
END;
|
||||
/
|
||||
exit
|
||||
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/../setEnv.sh
|
||||
|
||||
$THIS_PATH/../TestNodo.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
if [ "$1" = "" ] || [ "$2" = "" ]; then
|
||||
echo "Utilizzo: ${0} data_inizio data_fine "
|
||||
echo " le date vanno passate in formato YYYYMMDD "
|
||||
exit -1
|
||||
fi
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runRichiestaPorting_Portati_COOP.sql $1 $2 >$THIS_PATH/runRichiestaPorting.log
|
||||
fi
|
||||
@@ -0,0 +1,19 @@
|
||||
-- 2022 C05 MNP_RU_XXX
|
||||
-- full export of porting history to OLOs
|
||||
-- CREATE PKG_DBP_COOP to export of porting history to OLOs
|
||||
DECLARE
|
||||
DATA_INIZIO DATE;
|
||||
DATA_FINE DATE;
|
||||
|
||||
BEGIN
|
||||
DATA_INIZIO := TO_DATE('&1','YYYYMMDD');
|
||||
DATA_FINE := TO_DATE('&2','YYYYMMDD');
|
||||
|
||||
PKG_DBP_COOP.ESTR_RICHIESTA_PORTING_HIST ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
|
||||
PKG_DBP_COOP.ESTR_RICHIESTA_PORTING ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
END;
|
||||
/
|
||||
exit
|
||||
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/../setEnv.sh
|
||||
|
||||
$THIS_PATH/../TestNodo.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
if [ "$1" = "" ] || [ "$2" = "" ]; then
|
||||
echo "Utilizzo: ${0} data_inizio data_fine "
|
||||
echo " le date vanno passate in formato YYYYMMDD "
|
||||
exit -1
|
||||
fi
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runRichiestaRec_Portati_COOP.sql $1 $2 >$THIS_PATH/runRichiestaRec.log
|
||||
fi
|
||||
@@ -0,0 +1,19 @@
|
||||
-- 2022 C05 MNP_RU_XXX
|
||||
-- full export of porting history to OLOs
|
||||
-- CREATE PKG_DBP_COOP to export of porting history to OLOs
|
||||
DECLARE
|
||||
DATA_INIZIO DATE;
|
||||
DATA_FINE DATE;
|
||||
|
||||
BEGIN
|
||||
DATA_INIZIO := TO_DATE('&1','YYYYMMDD');
|
||||
DATA_FINE := TO_DATE('&2','YYYYMMDD');
|
||||
|
||||
PKG_DBP_COOP.ESTR_RICHIESTA_REC_HIST ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
|
||||
PKG_DBP_COOP.ESTR_RICHIESTA_REC ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
END;
|
||||
/
|
||||
exit
|
||||
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/../setEnv.sh
|
||||
|
||||
$THIS_PATH/../TestNodo.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
if [ "$1" = "" ] || [ "$2" = "" ]; then
|
||||
echo "Utilizzo: ${0} data_inizio data_fine "
|
||||
echo " le date vanno passate in formato YYYYMMDD "
|
||||
exit -1
|
||||
fi
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runRichiesta_Portati_COOP.sql $1 $2 >$THIS_PATH/runRichiesta.log
|
||||
fi
|
||||
@@ -0,0 +1,19 @@
|
||||
-- 2022 C05 MNP_RU_XXX
|
||||
-- full export of porting history to OLOs
|
||||
-- CREATE PKG_DBP_COOP to export of porting history to OLOs
|
||||
DECLARE
|
||||
DATA_INIZIO DATE;
|
||||
DATA_FINE DATE;
|
||||
|
||||
BEGIN
|
||||
DATA_INIZIO := TO_DATE('&1','YYYYMMDD');
|
||||
DATA_FINE := TO_DATE('&2','YYYYMMDD');
|
||||
|
||||
PKG_DBP_COOP.ESTR_RICHIESTA_HIST ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
|
||||
PKG_DBP_COOP.ESTR_RICHIESTA ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
END;
|
||||
/
|
||||
exit
|
||||
@@ -0,0 +1,17 @@
|
||||
CREATE TABLE MNP_DBP2COOP
|
||||
(
|
||||
MSISDN VARCHAR2(20 BYTE) NOT NULL,
|
||||
CODICE_OPERATORE_RECIPIENT VARCHAR2(4 BYTE),
|
||||
ROUTING_NUMBER VARCHAR2(10 BYTE) DEFAULT NULL,
|
||||
DATA_CUT_OVER DATE,
|
||||
DATA_ESTRAZIONE DATE NOT NULL,
|
||||
FLAG_LAVORATO NUMBER(1) DEFAULT 0 NOT NULL
|
||||
)
|
||||
LOGGING
|
||||
NOCOMPRESS
|
||||
NOCACHE
|
||||
NOPARALLEL
|
||||
NOMONITORING;
|
||||
|
||||
ALTER TABLE MNP_DBP2COOP ADD CONSTRAINT PK_MNP_DBP2COOP PRIMARY KEY (MSISDN) USING INDEX TABLESPACE TAB_IDX_MEDIUM;
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
CREATE TABLE MNP_DBP2COOP_DATE
|
||||
(
|
||||
START_DATE VARCHAR2(8 BYTE),
|
||||
END_DATE VARCHAR2(8 BYTE),
|
||||
FINAL_DATE VARCHAR2(8 BYTE)
|
||||
);
|
||||
|
||||
@@ -0,0 +1,142 @@
|
||||
-- Execute as user MNP
|
||||
-- 2022 C05 MNP_RU_XXX
|
||||
-- full export of porting history to OLOs
|
||||
-- Full extract for DNs in test set, with name of table of origin.
|
||||
SELECT * FROM (
|
||||
SELECT MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, TABELLA_ORIGINE FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT /*+ FULL(MGR) PARALLEL(5)*/ MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, (SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER_CALC AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 'MNP_GESTIONE_RICHIESTA' AS TABELLA_ORIGINE
|
||||
FROM MNP_GESTIONE_RICHIESTA MGR
|
||||
WHERE MGR.MSISDN IN (:X)
|
||||
AND MGR.STATO = 16
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
UNION ALL
|
||||
SELECT MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, TABELLA_ORIGINE FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT /*+ FULL(MGR) PARALLEL(5)*/ MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, (SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER_AOM AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 'MNP_GESTIONE_RICHIESTA_REC' AS TABELLA_ORIGINE
|
||||
FROM MNP_GESTIONE_RICHIESTA_REC MGR
|
||||
WHERE MGR.MSISDN IN (:X)
|
||||
AND MGR.STATO = 12
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
UNION ALL
|
||||
SELECT MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, TABELLA_ORIGINE FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, (SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 'MNP_GESTIONE_RICHIESTA_PORTING' AS TABELLA_ORIGINE
|
||||
FROM MNP_GESTIONE_RICHIESTA_PORTING MGR
|
||||
WHERE MGR.MSISDN IN (:X)
|
||||
AND MGR.STATO = 6
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
UNION ALL
|
||||
SELECT MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, TABELLA_ORIGINE FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.MSISDN AS MSISDN
|
||||
, O.DESC_OLO AS CODICE_OPERATORE_CESSATORE
|
||||
, O.ROUTING_NUMBER AS ROUTING_NUMBER_CESSATORE
|
||||
, MGR.DATARICEZIONERICHIESTA AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 'MNP_GESTIONE_RICH_CESS_PORT' AS TABELLA_ORIGINE
|
||||
, MO.DESC_OLO AS CODICE_OPERATORE_RECIPIENT
|
||||
, MO.ROUTING_NUMBER AS ROUTING_NUMBER
|
||||
FROM MNP_GESTIONE_RICH_CESS_PORT MGR, MNP_OLO O
|
||||
, MNP_OLO_PREFISSI MOP INNER JOIN MNP_OLO MO ON MO.COD_OLO=MOP.COD_OLO
|
||||
WHERE MGR.MSISDN IN (:X)
|
||||
AND ( MOP.PREFIX=SUBSTR(MGR.MSISDN,3,3) OR MOP.PREFIX=SUBSTR(MGR.MSISDN,3,4) )
|
||||
AND MGR.STATO = '2'
|
||||
AND O.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
UNION ALL
|
||||
SELECT MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, TABELLA_ORIGINE FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.MSISDN AS MSISDN
|
||||
, O.DESC_OLO AS CODICE_OPERATORE_CESSATORE
|
||||
, O.ROUTING_NUMBER AS ROUTING_NUMBER_CESSATORE
|
||||
, MGR.DATARICEZIONERICHIESTA AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 'MNP_GESTIONE_RICHIESTA_CESS' AS TABELLA_ORIGINE
|
||||
, MO.DESC_OLO AS CODICE_OPERATORE_RECIPIENT
|
||||
, MO.ROUTING_NUMBER AS ROUTING_NUMBER
|
||||
FROM
|
||||
MNP_GESTIONE_RICHIESTA_CESS MGR, MNP_OLO O
|
||||
, MNP_OLO_PREFISSI MOP INNER JOIN MNP_OLO MO ON MO.COD_OLO=MOP.COD_OLO
|
||||
WHERE MGR.MSISDN IN (:X)
|
||||
AND (MOP.PREFIX = SUBSTR(MGR.MSISDN,3,3) OR MOP.PREFIX = SUBSTR(MGR.MSISDN,3,4))
|
||||
AND MGR.STATO = '3'
|
||||
AND O.DESC_OLO = MGR.CODICE_OPERATORE_RECIPIENT
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
UNION ALL
|
||||
SELECT MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, TABELLA_ORIGINE FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, (SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO = MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER_CALC AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 'HIST_GESTIONE_RICHIESTA' AS TABELLA_ORIGINE
|
||||
FROM HIST_GESTIONE_RICHIESTA MGR
|
||||
WHERE MGR.MSISDN IN (:X)
|
||||
AND MGR.STATO = 16
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
UNION ALL
|
||||
SELECT MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, TABELLA_ORIGINE FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, (SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO = MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER_AOM AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 'HIST_GESTIONE_RICHIESTA_REC' AS TABELLA_ORIGINE
|
||||
FROM HIST_GESTIONE_RICHIESTA_REC MGR
|
||||
WHERE MGR.MSISDN IN (:X)
|
||||
AND MGR.STATO = 12
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
UNION ALL
|
||||
SELECT MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, TABELLA_ORIGINE FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, (SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO = MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 'HIST_GESTIONE_RICHIESTAPORTING' AS TABELLA_ORIGINE
|
||||
FROM HIST_GESTIONE_RICHIESTAPORTING MGR
|
||||
WHERE MGR.MSISDN IN (:X)
|
||||
AND MGR.STATO = 6
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
) ORDER BY MSISDN, DATA_CUT_OVER;
|
||||
@@ -0,0 +1,481 @@
|
||||
-- Execute as user MNP
|
||||
-- 2022 C05 MNP_RU_XXX
|
||||
-- full export of porting history to OLOs
|
||||
-- DDL 2/2
|
||||
-- CREATE PKG_DBP_COOP to export of porting history to OLOs
|
||||
-- Per le CESSAZIONI riportare come CODICE_OPERATORE_RECIPIENT
|
||||
-- l'OLO proprietario originale del DN (come da prefisso)
|
||||
|
||||
CREATE OR REPLACE PACKAGE PKG_DBP_COOP AS
|
||||
|
||||
PROCEDURE ESTR_RICHIESTA (in_data_inizio IN DATE, in_data_fine IN DATE);
|
||||
PROCEDURE ESTR_RICHIESTA_REC (in_data_inizio IN DATE, in_data_fine IN DATE);
|
||||
PROCEDURE ESTR_RICHIESTA_PORTING (in_data_inizio IN DATE, in_data_fine IN DATE);
|
||||
PROCEDURE ESTR_RICH_CESS_PORT (in_data_inizio IN DATE, in_data_fine IN DATE);
|
||||
PROCEDURE ESTR_RICHIESTA_CESS (in_data_inizio IN DATE, in_data_fine IN DATE);
|
||||
|
||||
PROCEDURE ESTR_RICHIESTA_HIST (in_data_inizio IN DATE, in_data_fine IN DATE);
|
||||
PROCEDURE ESTR_RICHIESTA_REC_HIST (in_data_inizio IN DATE, in_data_fine IN DATE);
|
||||
PROCEDURE ESTR_RICHIESTA_PORTING_HIST(in_data_inizio IN DATE, in_data_fine IN DATE);
|
||||
|
||||
END PKG_DBP_COOP;
|
||||
/
|
||||
|
||||
CREATE OR REPLACE PACKAGE BODY PKG_DBP_COOP AS
|
||||
|
||||
-- ===============================================================================
|
||||
-- 2022 C05 MNP_RU_XXX Procedura #1/8
|
||||
-- PROCESSO DONOR STANDARD/MVNO/PrjHoc
|
||||
-- Utilizza MERGE invece di LOOP on CURSOR
|
||||
PROCEDURE ESTR_RICHIESTA(in_data_inizio IN DATE, in_data_fine IN DATE) IS
|
||||
BEGIN
|
||||
MERGE INTO MNP_DBP2COOP m_tgt
|
||||
USING (
|
||||
SELECT MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, FLAG_LAVORATO FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT /*+ FULL(MGR) PARALLEL(5)*/ MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, MO.ROUTING_NUMBER AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER_CALC AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 0 AS FLAG_LAVORATO
|
||||
FROM MNP_GESTIONE_RICHIESTA MGR INNER JOIN MNP_OLO MO ON MO.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT
|
||||
WHERE MGR.MSISDN IS NOT NULL AND MO.ROUTING_NUMBER IS NOT NULL
|
||||
AND MGR.DATA_CUT_OVER_CALC BETWEEN in_data_inizio AND in_data_fine
|
||||
AND STATO = 16 --ESPLETATA
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
) m_cur
|
||||
ON (m_cur.MSISDN = m_tgt.MSISDN)
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
CODICE_OPERATORE_RECIPIENT = m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER = m_cur.ROUTING_NUMBER
|
||||
, DATA_CUT_OVER = m_cur.DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE = m_cur.DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO = m_cur.FLAG_LAVORATO
|
||||
WHERE m_cur.DATA_CUT_OVER > m_tgt.DATA_CUT_OVER
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
MSISDN
|
||||
, CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER
|
||||
, DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO
|
||||
) VALUES (
|
||||
m_cur.MSISDN
|
||||
, m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, m_cur.ROUTING_NUMBER
|
||||
, m_cur.DATA_CUT_OVER
|
||||
, m_cur.DATA_ESTRAZIONE
|
||||
, m_cur.FLAG_LAVORATO
|
||||
);
|
||||
COMMIT;
|
||||
RETURN;
|
||||
END ESTR_RICHIESTA;
|
||||
|
||||
-- ===============================================================================
|
||||
-- 2022 C05 MNP_RU_XXX Procedura #2/8
|
||||
-- PROCESSO RECIPIENT STANDARD/MVNO/PrjHoc
|
||||
-- Utilizza MERGE invece di LOOP on CURSOR
|
||||
PROCEDURE ESTR_RICHIESTA_REC(in_data_inizio IN DATE, in_data_fine IN DATE) IS
|
||||
BEGIN
|
||||
MERGE INTO MNP_DBP2COOP m_tgt
|
||||
USING (
|
||||
SELECT MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, FLAG_LAVORATO FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT /*+ FULL(MGR) PARALLEL(5)*/ MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, MO.ROUTING_NUMBER AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER_AOM AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 0 AS FLAG_LAVORATO
|
||||
FROM MNP_GESTIONE_RICHIESTA_REC MGR INNER JOIN MNP_OLO MO ON MO.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT
|
||||
WHERE MGR.MSISDN IS NOT NULL AND MO.ROUTING_NUMBER IS NOT NULL
|
||||
AND MGR.DATA_CUT_OVER_AOM BETWEEN in_data_inizio AND in_data_fine
|
||||
AND STATO = 12 --EVASA
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
) m_cur
|
||||
ON (m_cur.MSISDN = m_tgt.MSISDN)
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
CODICE_OPERATORE_RECIPIENT = m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER = m_cur.ROUTING_NUMBER
|
||||
, DATA_CUT_OVER = m_cur.DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE = m_cur.DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO = m_cur.FLAG_LAVORATO
|
||||
WHERE m_cur.DATA_CUT_OVER > m_tgt.DATA_CUT_OVER
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
MSISDN
|
||||
, CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER
|
||||
, DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO
|
||||
) VALUES (
|
||||
m_cur.MSISDN
|
||||
, m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, m_cur.ROUTING_NUMBER
|
||||
, m_cur.DATA_CUT_OVER
|
||||
, m_cur.DATA_ESTRAZIONE
|
||||
, m_cur.FLAG_LAVORATO
|
||||
);
|
||||
COMMIT;
|
||||
RETURN;
|
||||
END ESTR_RICHIESTA_REC;
|
||||
|
||||
-- ===============================================================================
|
||||
-- 2022 C05 MNP_RU_XXX Procedura #3/8
|
||||
-- PROCESSO PORTING TERZE PARTI
|
||||
-- Utilizza MERGE invece di LOOP on CURSOR
|
||||
PROCEDURE ESTR_RICHIESTA_PORTING(in_data_inizio IN DATE, in_data_fine IN DATE) IS
|
||||
BEGIN
|
||||
MERGE INTO MNP_DBP2COOP m_tgt
|
||||
USING (
|
||||
SELECT MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, FLAG_LAVORATO FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, MO.ROUTING_NUMBER AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 0 AS FLAG_LAVORATO
|
||||
FROM MNP_GESTIONE_RICHIESTA_PORTING MGR INNER JOIN MNP_OLO MO ON MO.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT
|
||||
WHERE MGR.MSISDN IS NOT NULL AND MO.ROUTING_NUMBER IS NOT NULL
|
||||
AND MGR.DATA_CUT_OVER BETWEEN in_data_inizio AND in_data_fine
|
||||
AND MGR.STATO = 6 -- ESPLETATA
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
) m_cur
|
||||
ON (m_cur.MSISDN = m_tgt.MSISDN)
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
CODICE_OPERATORE_RECIPIENT = m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER = m_cur.ROUTING_NUMBER
|
||||
, DATA_CUT_OVER = m_cur.DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE = m_cur.DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO = m_cur.FLAG_LAVORATO
|
||||
WHERE m_cur.DATA_CUT_OVER > m_tgt.DATA_CUT_OVER
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
MSISDN
|
||||
, CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER
|
||||
, DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO
|
||||
) VALUES (
|
||||
m_cur.MSISDN
|
||||
, m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, m_cur.ROUTING_NUMBER
|
||||
, m_cur.DATA_CUT_OVER
|
||||
, m_cur.DATA_ESTRAZIONE
|
||||
, m_cur.FLAG_LAVORATO
|
||||
);
|
||||
COMMIT;
|
||||
RETURN;
|
||||
END ESTR_RICHIESTA_PORTING;
|
||||
|
||||
|
||||
-- ===============================================================================
|
||||
-- 2022 C05 MNP_RU_XXX Procedura #4/8
|
||||
-- PROCESSO CESSAZIONI PORTING
|
||||
-- STATO 4 = CESSATA
|
||||
-- Riportare come CODICE_OPERATORE_RECIPIENT l'OLO proprietario originale del DN
|
||||
-- L'ultima condizione serve a estrarre OLO Cessatori (Donor) esistenti e validi
|
||||
-- Utilizza MERGE invece di LOOP on CURSOR
|
||||
|
||||
PROCEDURE ESTR_RICH_CESS_PORT(in_data_inizio IN DATE, in_data_fine IN DATE) IS
|
||||
BEGIN
|
||||
MERGE INTO MNP_DBP2COOP m_tgt
|
||||
USING (
|
||||
SELECT MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, FLAG_LAVORATO FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.MSISDN AS MSISDN
|
||||
, O.DESC_OLO AS CODICE_OPERATORE_CESSATORE
|
||||
, O.ROUTING_NUMBER AS ROUTING_NUMBER_CESSATORE
|
||||
, MGR.DATARICEZIONERICHIESTA AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 0 AS FLAG_LAVORATO
|
||||
, MO.DESC_OLO AS CODICE_OPERATORE_RECIPIENT
|
||||
, MO.ROUTING_NUMBER AS ROUTING_NUMBER
|
||||
FROM MNP_GESTIONE_RICH_CESS_PORT MGR, MNP_OLO O
|
||||
, MNP_OLO_PREFISSI MOP INNER JOIN MNP_OLO MO ON MO.COD_OLO=MOP.COD_OLO
|
||||
WHERE
|
||||
MGR.MSISDN IS NOT NULL AND MO.ROUTING_NUMBER IS NOT NULL
|
||||
AND MGR.DATARICEZIONERICHIESTA BETWEEN in_data_inizio AND in_data_fine
|
||||
AND ( MOP.PREFIX=SUBSTR(MGR.MSISDN,3,3) OR MOP.PREFIX=SUBSTR(MGR.MSISDN,3,4) )
|
||||
AND MGR.STATO='2' -- CESSATA
|
||||
AND O.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
) m_cur
|
||||
ON (m_cur.MSISDN = m_tgt.MSISDN)
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
CODICE_OPERATORE_RECIPIENT = m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER = m_cur.ROUTING_NUMBER
|
||||
, DATA_CUT_OVER = m_cur.DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE = m_cur.DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO = m_cur.FLAG_LAVORATO
|
||||
WHERE m_cur.DATA_CUT_OVER > m_tgt.DATA_CUT_OVER
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
MSISDN
|
||||
, CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER
|
||||
, DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO
|
||||
) VALUES (
|
||||
m_cur.MSISDN
|
||||
, m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, m_cur.ROUTING_NUMBER
|
||||
, m_cur.DATA_CUT_OVER
|
||||
, m_cur.DATA_ESTRAZIONE
|
||||
, m_cur.FLAG_LAVORATO
|
||||
);
|
||||
COMMIT;
|
||||
RETURN;
|
||||
END ESTR_RICH_CESS_PORT;
|
||||
|
||||
|
||||
-- ===============================================================================
|
||||
-- 2022 C05 MNP_RU_XXX Procedura #5/8
|
||||
-- PROCESSO CESSAZIONI
|
||||
-- Riportare come CODICE_OPERATORE_RECIPIENT l'OLO proprietario originale del DN
|
||||
-- L'ultima condizione serve a estrarre OLO Cessatori (Donor) esistenti e validi
|
||||
-- Utilizza MERGE invece di LOOP on CURSOR
|
||||
PROCEDURE ESTR_RICHIESTA_CESS(in_data_inizio IN DATE, in_data_fine IN DATE) IS
|
||||
BEGIN
|
||||
MERGE INTO MNP_DBP2COOP m_tgt
|
||||
USING (
|
||||
SELECT MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, FLAG_LAVORATO FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.MSISDN AS MSISDN
|
||||
, O.DESC_OLO AS CODICE_OPERATORE_CESSATORE
|
||||
, O.ROUTING_NUMBER AS ROUTING_NUMBER_CESSATORE
|
||||
, MGR.DATARICEZIONERICHIESTA AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 0 AS FLAG_LAVORATO
|
||||
, MO.DESC_OLO AS CODICE_OPERATORE_RECIPIENT
|
||||
, MO.ROUTING_NUMBER AS ROUTING_NUMBER
|
||||
FROM
|
||||
MNP_GESTIONE_RICHIESTA_CESS MGR, MNP_OLO O
|
||||
, MNP_OLO_PREFISSI MOP INNER JOIN MNP_OLO MO ON MO.COD_OLO=MOP.COD_OLO
|
||||
WHERE
|
||||
MGR.MSISDN IS NOT NULL AND MO.ROUTING_NUMBER IS NOT NULL
|
||||
AND MGR.DATARICEZIONERICHIESTA BETWEEN in_data_inizio AND in_data_fine
|
||||
AND (MOP.PREFIX = SUBSTR(MGR.MSISDN,3,3) OR MOP.PREFIX = SUBSTR(MGR.MSISDN,3,4))
|
||||
AND MGR.STATO='3' -- CESSATA
|
||||
AND O.DESC_OLO = MGR.CODICE_OPERATORE_RECIPIENT
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
) m_cur
|
||||
ON (m_cur.MSISDN = m_tgt.MSISDN)
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
CODICE_OPERATORE_RECIPIENT = m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER = m_cur.ROUTING_NUMBER
|
||||
, DATA_CUT_OVER = m_cur.DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE = m_cur.DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO = m_cur.FLAG_LAVORATO
|
||||
WHERE m_cur.DATA_CUT_OVER > m_tgt.DATA_CUT_OVER
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
MSISDN
|
||||
, CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER
|
||||
, DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO
|
||||
) VALUES (
|
||||
m_cur.MSISDN
|
||||
, m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, m_cur.ROUTING_NUMBER
|
||||
, m_cur.DATA_CUT_OVER
|
||||
, m_cur.DATA_ESTRAZIONE
|
||||
, m_cur.FLAG_LAVORATO
|
||||
);
|
||||
COMMIT;
|
||||
RETURN;
|
||||
END ESTR_RICHIESTA_CESS;
|
||||
|
||||
-- ===============================================================================
|
||||
-- 2022 C05 MNP_RU_XXX Procedura #6/8
|
||||
-- PROCESSO DONOR STANDARD/MVNO/PrjHoc tabella storicizzata
|
||||
-- Utilizza MERGE invece di LOOP on CURSOR
|
||||
PROCEDURE ESTR_RICHIESTA_HIST(in_data_inizio IN DATE, in_data_fine IN DATE) IS
|
||||
BEGIN
|
||||
MERGE INTO MNP_DBP2COOP m_tgt
|
||||
USING (
|
||||
SELECT MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, FLAG_LAVORATO FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, MO.ROUTING_NUMBER AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER_CALC AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 0 AS FLAG_LAVORATO
|
||||
FROM HIST_GESTIONE_RICHIESTA MGR INNER JOIN MNP_OLO MO ON MO.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT
|
||||
WHERE MGR.MSISDN IS NOT NULL AND MO.ROUTING_NUMBER IS NOT NULL
|
||||
AND MGR.DATA_CUT_OVER_CALC BETWEEN in_data_inizio AND in_data_fine
|
||||
AND MGR.STATO = 16 --ESPLETATA
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
) m_cur
|
||||
ON (m_cur.MSISDN = m_tgt.MSISDN)
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
CODICE_OPERATORE_RECIPIENT = m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER = m_cur.ROUTING_NUMBER
|
||||
, DATA_CUT_OVER = m_cur.DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE = m_cur.DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO = m_cur.FLAG_LAVORATO
|
||||
WHERE m_cur.DATA_CUT_OVER > m_tgt.DATA_CUT_OVER
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
MSISDN
|
||||
, CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER
|
||||
, DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO
|
||||
) VALUES (
|
||||
m_cur.MSISDN
|
||||
, m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, m_cur.ROUTING_NUMBER
|
||||
, m_cur.DATA_CUT_OVER
|
||||
, m_cur.DATA_ESTRAZIONE
|
||||
, m_cur.FLAG_LAVORATO
|
||||
);
|
||||
COMMIT;
|
||||
RETURN;
|
||||
END ESTR_RICHIESTA_HIST;
|
||||
|
||||
|
||||
-- ===============================================================================
|
||||
-- 2022 C05 MNP_RU_XXX Procedura #7/8
|
||||
-- PROCESSO RECIPIENT STANDARD/MVNO/PRJHOC tabella storicizzata
|
||||
-- Utilizza MERGE invece di LOOP on CURSOR
|
||||
PROCEDURE ESTR_RICHIESTA_REC_HIST(in_data_inizio IN DATE, in_data_fine IN DATE) IS
|
||||
BEGIN
|
||||
MERGE INTO MNP_DBP2COOP m_tgt
|
||||
USING (
|
||||
SELECT MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, FLAG_LAVORATO FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, MO.ROUTING_NUMBER AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER_AOM AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 0 AS FLAG_LAVORATO
|
||||
FROM HIST_GESTIONE_RICHIESTA_REC MGR INNER JOIN MNP_OLO MO ON MO.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT
|
||||
WHERE MGR.MSISDN IS NOT NULL AND MO.ROUTING_NUMBER IS NOT NULL
|
||||
AND MGR.DATA_CUT_OVER_AOM BETWEEN in_data_inizio AND in_data_fine
|
||||
AND MGR.STATO = 12 --EVASA
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
) m_cur
|
||||
ON (m_cur.MSISDN = m_tgt.MSISDN)
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
CODICE_OPERATORE_RECIPIENT = m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER = m_cur.ROUTING_NUMBER
|
||||
, DATA_CUT_OVER = m_cur.DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE = m_cur.DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO = m_cur.FLAG_LAVORATO
|
||||
WHERE m_cur.DATA_CUT_OVER > m_tgt.DATA_CUT_OVER
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
MSISDN
|
||||
, CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER
|
||||
, DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO
|
||||
) VALUES (
|
||||
m_cur.MSISDN
|
||||
, m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, m_cur.ROUTING_NUMBER
|
||||
, m_cur.DATA_CUT_OVER
|
||||
, m_cur.DATA_ESTRAZIONE
|
||||
, m_cur.FLAG_LAVORATO
|
||||
);
|
||||
COMMIT;
|
||||
RETURN;
|
||||
END ESTR_RICHIESTA_REC_HIST;
|
||||
|
||||
|
||||
-- ===============================================================================
|
||||
-- 2022 C05 MNP_RU_XXX Procedura #8/8
|
||||
-- PROCESSO PORTING TERZE PARTI tabella storicizzata
|
||||
-- Utilizza MERGE invece di LOOP on CURSOR
|
||||
PROCEDURE ESTR_RICHIESTA_PORTING_HIST(in_data_inizio IN DATE, in_data_fine IN DATE) IS
|
||||
BEGIN
|
||||
MERGE INTO MNP_DBP2COOP m_tgt
|
||||
USING (
|
||||
SELECT MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, FLAG_LAVORATO FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, MO.ROUTING_NUMBER AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 0 AS FLAG_LAVORATO
|
||||
FROM HIST_GESTIONE_RICHIESTAPORTING MGR INNER JOIN MNP_OLO MO ON MO.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT
|
||||
WHERE MGR.MSISDN IS NOT NULL AND MO.ROUTING_NUMBER IS NOT NULL
|
||||
AND MGR.DATA_CUT_OVER BETWEEN in_data_inizio AND in_data_fine
|
||||
AND MGR.STATO = 6 -- ESPLETATA
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
) m_cur
|
||||
ON (m_cur.MSISDN = m_tgt.MSISDN)
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
CODICE_OPERATORE_RECIPIENT = m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER = m_cur.ROUTING_NUMBER
|
||||
, DATA_CUT_OVER = m_cur.DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE = m_cur.DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO = m_cur.FLAG_LAVORATO
|
||||
WHERE m_cur.DATA_CUT_OVER > m_tgt.DATA_CUT_OVER
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
MSISDN
|
||||
, CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER
|
||||
, DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO
|
||||
) VALUES (
|
||||
m_cur.MSISDN
|
||||
, m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, m_cur.ROUTING_NUMBER
|
||||
, m_cur.DATA_CUT_OVER
|
||||
, m_cur.DATA_ESTRAZIONE
|
||||
, m_cur.FLAG_LAVORATO
|
||||
);
|
||||
COMMIT;
|
||||
RETURN;
|
||||
END ESTR_RICHIESTA_PORTING_HIST;
|
||||
|
||||
END PKG_DBP_COOP;
|
||||
/
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
-- 2022 C05 MNP_RU_XXX
|
||||
--execute as MNP
|
||||
|
||||
--spool /mnpapp/log/script/dbc_export_coop.log;
|
||||
|
||||
-----------------------------
|
||||
--CREATE/MODIFY OBJECT
|
||||
@@DDL_mnp_dbp2coop.sql
|
||||
@@DDL_mnp_dbp2coop_date.sql
|
||||
@@MNP_DDL_PKG_DBP_COOP.sql
|
||||
|
||||
-----------------------------
|
||||
--INSERT/UPDATE DATA
|
||||
--@@dbcDML.sql
|
||||
|
||||
-----------------------------
|
||||
commit;
|
||||
spool off;
|
||||
@@ -0,0 +1,11 @@
|
||||
2018 C05 MNP_RU_524 evoluzione di DB_Portati
|
||||
Contiene gli script per l'estrazione delle linee soggette a porting,
|
||||
necessarie per l’obbligo regolamentare Delibera AGCOM 147/11/CIR
|
||||
che impone di fornire i dati all’operatore che ne faccia richiesta
|
||||
per consentire ad un operatore entrante di allineare correttamente
|
||||
la propria rete allo stato generato da tutte le portabilita'
|
||||
avvenute nel tempo dall'inizio della normativa di MNP.
|
||||
I principali aggiornamenti rispetto a DB_Portati sono:
|
||||
- aggiunta delle tabelle di svecchiamento _HIST alla base di estrazione;
|
||||
- aggiunta di indici alle tabelle di svecchiamento per velocizzare l'estrazione;
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
#!/usr/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/../setEnv.sh
|
||||
|
||||
$THIS_PATH/../TestNodo.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
if [ "$1" = "" ] || [ "$2" = "" ] || [ "$3" = "" ]; then
|
||||
echo "Utilizzo: ${0} data_inizio data_fine numero_righe"
|
||||
echo " le date vanno passate in formato DDMMYYYY "
|
||||
echo " numero_righe indica quante righe al massimo estrarre nel file"
|
||||
exit -1
|
||||
fi
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runDbc2ILIAD.sql $1 $2 $3 >$THIS_PATH/runDbc2ILIAD.log
|
||||
fi
|
||||
@@ -0,0 +1,33 @@
|
||||
set heading off
|
||||
set pagesize 0
|
||||
set linesize 200
|
||||
set trimspool on
|
||||
set feedback off
|
||||
set verify off
|
||||
set echo off
|
||||
set termout off
|
||||
set time off
|
||||
set timing off
|
||||
alter session set nls_territory='italy';
|
||||
UPDATE MNP_DBP2DBCFX D
|
||||
SET D.FLAG_LAVORATO=2 --in lavorazione
|
||||
WHERE D.FLAG_LAVORATO=0
|
||||
AND D.DATA_CUT_OVER BETWEEN TO_DATE('&1','DDMMYYYY') AND TO_DATE('&2','DDMMYYYY')
|
||||
AND ROWNUM < &3;
|
||||
spool mnp_dbp2ILIAD.csv
|
||||
SELECT ID_RICHIESTA
|
||||
||';'||MSISDN
|
||||
||';'||CODICE_OPERATORE_RECIPIENT
|
||||
||';'||NVL(ROUTING_NUMBER,' ')
|
||||
||';'||TO_CHAR(DATA_CUT_OVER,'ddmmyyyy hh24miss')
|
||||
||';'||TO_CHAR(SYSDATE,'ddmmyyyy hh24miss')
|
||||
||';'
|
||||
FROM MNP_DBP2DBCFX D
|
||||
WHERE D.FLAG_LAVORATO=2;
|
||||
spool off
|
||||
UPDATE MNP_DBP2DBCFX D
|
||||
SET D.FLAG_LAVORATO=1
|
||||
WHERE D.FLAG_LAVORATO=2;
|
||||
COMMIT;
|
||||
/
|
||||
EXIT
|
||||
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/../setEnv.sh
|
||||
|
||||
$THIS_PATH/../TestNodo.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
if [ "$1" = "" ] || [ "$2" = "" ]; then
|
||||
echo "Utilizzo: ${0} data_inizio data_fine "
|
||||
echo " le date vanno passate in formato DDMMYYYY "
|
||||
exit -1
|
||||
fi
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runRichiestaCessPort_Del147.sql $1 $2 >$THIS_PATH/runRichiestaCessPort.log
|
||||
fi
|
||||
@@ -0,0 +1,13 @@
|
||||
DECLARE
|
||||
DATA_INIZIO DATE;
|
||||
DATA_FINE DATE;
|
||||
|
||||
BEGIN
|
||||
DATA_INIZIO := TO_DATE('&1','DDMMYYYY');
|
||||
DATA_FINE := TO_DATE('&2','DDMMYYYY');
|
||||
|
||||
PKG_DBP.ESTR_RICH_CESS_PORT ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
END;
|
||||
/
|
||||
exit
|
||||
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/../setEnv.sh
|
||||
|
||||
$THIS_PATH/../TestNodo.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
if [ "$1" = "" ] || [ "$2" = "" ]; then
|
||||
echo "Utilizzo: ${0} data_inizio data_fine "
|
||||
echo " le date vanno passate in formato DDMMYYYY "
|
||||
exit -1
|
||||
fi
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runRichiestaCess_Del147.sql $1 $2 >$THIS_PATH/runRichiestaCess.log
|
||||
fi
|
||||
@@ -0,0 +1,13 @@
|
||||
DECLARE
|
||||
DATA_INIZIO DATE;
|
||||
DATA_FINE DATE;
|
||||
|
||||
BEGIN
|
||||
DATA_INIZIO := TO_DATE('&1','DDMMYYYY');
|
||||
DATA_FINE := TO_DATE('&2','DDMMYYYY');
|
||||
|
||||
PKG_DBP.ESTR_RICHIESTA_CESS ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
END;
|
||||
/
|
||||
exit
|
||||
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/../setEnv.sh
|
||||
|
||||
$THIS_PATH/../TestNodo.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
if [ "$1" = "" ] || [ "$2" = "" ]; then
|
||||
echo "Utilizzo: ${0} data_inizio data_fine "
|
||||
echo " le date vanno passate in formato DDMMYYYY "
|
||||
exit -1
|
||||
fi
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runRichiestaPorting_Del147.sql $1 $2 >$THIS_PATH/runRichiestaPorting.log
|
||||
fi
|
||||
@@ -0,0 +1,19 @@
|
||||
-- 2018 C05 MNP_RU_524 Del.147
|
||||
-- Del.147 full export of porting history to OLOs
|
||||
-- Extend PKG_DBP to include relevant _HIST tables
|
||||
DECLARE
|
||||
DATA_INIZIO DATE;
|
||||
DATA_FINE DATE;
|
||||
|
||||
BEGIN
|
||||
DATA_INIZIO := TO_DATE('&1','DDMMYYYY');
|
||||
DATA_FINE := TO_DATE('&2','DDMMYYYY');
|
||||
|
||||
PKG_DBP.ESTR_RICHIESTA_PORTING_HIST ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
|
||||
PKG_DBP.ESTR_RICHIESTA_PORTING ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
END;
|
||||
/
|
||||
exit
|
||||
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/../setEnv.sh
|
||||
|
||||
$THIS_PATH/../TestNodo.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
if [ "$1" = "" ] || [ "$2" = "" ]; then
|
||||
echo "Utilizzo: ${0} data_inizio data_fine "
|
||||
echo " le date vanno passate in formato DDMMYYYY "
|
||||
exit -1
|
||||
fi
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runRichiestaRec_Del147.sql $1 $2 >$THIS_PATH/runRichiestaRec.log
|
||||
fi
|
||||
@@ -0,0 +1,19 @@
|
||||
-- 2018 C05 MNP_RU_524 Del.147
|
||||
-- Del.147 full export of porting history to OLOs
|
||||
-- Extend PKG_DBP to include relevant _HIST tables
|
||||
DECLARE
|
||||
DATA_INIZIO DATE;
|
||||
DATA_FINE DATE;
|
||||
|
||||
BEGIN
|
||||
DATA_INIZIO := TO_DATE('&1','DDMMYYYY');
|
||||
DATA_FINE := TO_DATE('&2','DDMMYYYY');
|
||||
|
||||
PKG_DBP.ESTR_RICHIESTA_REC_HIST ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
|
||||
PKG_DBP.ESTR_RICHIESTA_REC ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
END;
|
||||
/
|
||||
exit
|
||||
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/../setEnv.sh
|
||||
|
||||
$THIS_PATH/../TestNodo.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
if [ "$1" = "" ] || [ "$2" = "" ]; then
|
||||
echo "Utilizzo: ${0} data_inizio data_fine "
|
||||
echo " le date vanno passate in formato DDMMYYYY "
|
||||
exit -1
|
||||
fi
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $THIS_PATH/runRichiesta_Del147.sql $1 $2 >$THIS_PATH/runRichiesta.log
|
||||
fi
|
||||
@@ -0,0 +1,19 @@
|
||||
-- 2018 C05 MNP_RU_524 Del.147
|
||||
-- Del.147 full export of porting history to OLOs
|
||||
-- Extend PKG_DBP to include relevant _HIST tables
|
||||
DECLARE
|
||||
DATA_INIZIO DATE;
|
||||
DATA_FINE DATE;
|
||||
|
||||
BEGIN
|
||||
DATA_INIZIO := TO_DATE('&1','DDMMYYYY');
|
||||
DATA_FINE := TO_DATE('&2','DDMMYYYY');
|
||||
|
||||
PKG_DBP.ESTR_RICHIESTA_HIST ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
|
||||
PKG_DBP.ESTR_RICHIESTA ( DATA_INIZIO, DATA_FINE );
|
||||
COMMIT;
|
||||
END;
|
||||
/
|
||||
exit
|
||||
@@ -0,0 +1,32 @@
|
||||
-- Execute as user MNP
|
||||
-- 2018 C05 MNP_RU_524
|
||||
-- Del.147 full export of porting history to OLOs
|
||||
-- DDL 1/3
|
||||
-- Create indexes on relevant fields of HIST_ tables
|
||||
-- for use by PKG_DBP
|
||||
|
||||
-- SOS
|
||||
|
||||
CREATE INDEX IDX_HIST_GEST_RICH_DCO
|
||||
ON HIST_GESTIONE_RICHIESTA (DATA_CUT_OVER)
|
||||
LOGGING TABLESPACE TAB_IDX_MEDIUM
|
||||
;
|
||||
|
||||
CREATE INDEX IDX_HIST_GEST_RICH_STATO
|
||||
ON HIST_GESTIONE_RICHIESTA (STATO)
|
||||
LOGGING TABLESPACE TAB_IDX_MEDIUM
|
||||
;
|
||||
|
||||
CREATE INDEX IDX_HIST_GEST_RICH_REC_DCO
|
||||
ON HIST_GESTIONE_RICHIESTA_REC (DATA_CUT_OVER)
|
||||
LOGGING TABLESPACE TAB_IDX_MEDIUM
|
||||
;
|
||||
|
||||
CREATE INDEX IDX_HIST_GEST_RICH_PORT_DCO
|
||||
ON HIST_GESTIONE_RICHIESTAPORTING (DATA_CUT_OVER)
|
||||
LOGGING TABLESPACE TAB_IDX_MEDIUM
|
||||
;
|
||||
|
||||
-- non mettere la / finale altrimenti ripete la creazione oggetti
|
||||
--/
|
||||
-- EOS
|
||||
@@ -0,0 +1,27 @@
|
||||
-- Execute as user MNP
|
||||
-- 2018 C05 MNP_RU_524
|
||||
-- Del.147 full export of porting history to OLOs
|
||||
-- Create indexes on relevant fields of LIVE tables
|
||||
-- DDL 2/3
|
||||
-- for use by PKG_DBP
|
||||
|
||||
-- SOS
|
||||
|
||||
CREATE INDEX IDX_MNP_GEST_RICH_DCO
|
||||
ON MNP_GESTIONE_RICHIESTA (DATA_CUT_OVER)
|
||||
TABLESPACE TAB_IDX_HUGE_2_1
|
||||
;
|
||||
|
||||
CREATE INDEX IDX_MNP_GEST_RICH_STATO
|
||||
ON MNP_GESTIONE_RICHIESTA (STATO)
|
||||
TABLESPACE TAB_IDX_HUGE_2_1
|
||||
;
|
||||
|
||||
CREATE INDEX IDX_MNP_GEST_RICH_REC_DCO
|
||||
ON MNP_GESTIONE_RICHIESTA_REC (DATA_CUT_OVER)
|
||||
TABLESPACE TAB_IDX_HUGE_2_1
|
||||
;
|
||||
|
||||
-- non mettere la / finale altrimenti ripete la creazione oggetti
|
||||
--/
|
||||
-- EOS
|
||||
@@ -0,0 +1,542 @@
|
||||
-- Execute as user MNP
|
||||
-- 2018 C05 MNP_RU_524
|
||||
-- Del.147 full export of porting history to OLOs
|
||||
-- DDL 3/3
|
||||
-- Extend PKG_DBP to include relevant _HIST tables
|
||||
-- Per le CESSAZIONI riportare come CODICE_OPERATORE_RECIPIENT
|
||||
-- l'OLO proprietario originale del DN (come da prefisso)
|
||||
|
||||
CREATE OR REPLACE PACKAGE PKG_DBP AS
|
||||
|
||||
PROCEDURE ESTR_RICHIESTA (in_data_inizio IN DATE, in_data_fine IN DATE);
|
||||
PROCEDURE ESTR_RICHIESTA_REC (in_data_inizio IN DATE, in_data_fine IN DATE);
|
||||
PROCEDURE ESTR_RICHIESTA_PORTING (in_data_inizio IN DATE, in_data_fine IN DATE);
|
||||
PROCEDURE ESTR_RICH_CESS_PORT (in_data_inizio IN DATE, in_data_fine IN DATE);
|
||||
PROCEDURE ESTR_RICHIESTA_CESS (in_data_inizio IN DATE, in_data_fine IN DATE);
|
||||
|
||||
PROCEDURE ESTR_RICHIESTA_HIST (in_data_inizio IN DATE, in_data_fine IN DATE);
|
||||
PROCEDURE ESTR_RICHIESTA_REC_HIST (in_data_inizio IN DATE, in_data_fine IN DATE);
|
||||
PROCEDURE ESTR_RICHIESTA_PORTING_HIST(in_data_inizio IN DATE, in_data_fine IN DATE);
|
||||
|
||||
END PKG_DBP;
|
||||
/
|
||||
|
||||
CREATE OR REPLACE PACKAGE BODY PKG_DBP AS
|
||||
|
||||
-- ===============================================================================
|
||||
-- 2018 C05 MNP_RU_524 Del.147 Procedura #1/8
|
||||
-- PROCESSO DONOR STANDARD/MVNO/PrjHoc
|
||||
-- Utilizza MERGE invece di LOOP on CURSOR
|
||||
PROCEDURE ESTR_RICHIESTA(in_data_inizio IN DATE, in_data_fine IN DATE) IS
|
||||
BEGIN
|
||||
MERGE INTO MNP_DBP2DBCFX m_tgt
|
||||
USING (
|
||||
SELECT ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, FLAG_LAVORATO FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT /*+ FULL(MGR) PARALLEL(5)*/ MGR.ID_RICHIESTA AS ID_RICHIESTA
|
||||
, MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, (SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER_CALC AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 0 AS FLAG_LAVORATO
|
||||
FROM MNP_GESTIONE_RICHIESTA MGR
|
||||
WHERE MGR.MSISDN IS NOT NULL
|
||||
AND MGR.DATA_CUT_OVER_CALC BETWEEN in_data_inizio AND in_data_fine
|
||||
AND STATO IN(
|
||||
7 --VALIDATAOK
|
||||
, 9 --ACCETTATA
|
||||
, 14 --INCESSAZIONE
|
||||
, 15 --CESSATA
|
||||
, 16 --ESPLETATA
|
||||
, 99 --BLOCCATA
|
||||
)
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
) m_cur
|
||||
ON (m_cur.MSISDN = m_tgt.MSISDN)
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
ID_RICHIESTA = m_cur.ID_RICHIESTA
|
||||
, CODICE_OPERATORE_RECIPIENT = m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER = m_cur.ROUTING_NUMBER
|
||||
, DATA_CUT_OVER = m_cur.DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE = m_cur.DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO = m_cur.FLAG_LAVORATO
|
||||
WHERE m_cur.DATA_CUT_OVER > m_tgt.DATA_CUT_OVER
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
ID_RICHIESTA
|
||||
, MSISDN
|
||||
, CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER
|
||||
, DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO
|
||||
) VALUES (
|
||||
m_cur.ID_RICHIESTA
|
||||
, m_cur.MSISDN
|
||||
, m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, m_cur.ROUTING_NUMBER
|
||||
, m_cur.DATA_CUT_OVER
|
||||
, m_cur.DATA_ESTRAZIONE
|
||||
, m_cur.FLAG_LAVORATO
|
||||
);
|
||||
COMMIT;
|
||||
RETURN;
|
||||
END ESTR_RICHIESTA;
|
||||
|
||||
-- ===============================================================================
|
||||
-- 2018 C05 MNP_RU_524 Del.147 Procedura #2/8
|
||||
-- PROCESSO RECIPIENT STANDARD/MVNO/PrjHoc
|
||||
-- Utilizza MERGE invece di LOOP on CURSOR
|
||||
PROCEDURE ESTR_RICHIESTA_REC(in_data_inizio IN DATE, in_data_fine IN DATE) IS
|
||||
BEGIN
|
||||
MERGE INTO MNP_DBP2DBCFX m_tgt
|
||||
USING (
|
||||
SELECT ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, FLAG_LAVORATO FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT /*+ FULL(MGR) PARALLEL(5)*/ MGR.ID_RICHIESTA AS ID_RICHIESTA
|
||||
, MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, (SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER_AOM AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 0 AS FLAG_LAVORATO
|
||||
FROM MNP_GESTIONE_RICHIESTA_REC MGR
|
||||
WHERE MGR.MSISDN IS NOT NULL
|
||||
AND MGR.DATA_CUT_OVER_AOM BETWEEN in_data_inizio AND in_data_fine
|
||||
AND STATO IN(
|
||||
8 --VALIDATA
|
||||
, 10 --ACCETTATA
|
||||
, 11 --ATTESAEVASIONE
|
||||
, 12 --EVASA
|
||||
)
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
) m_cur
|
||||
ON (m_cur.MSISDN = m_tgt.MSISDN)
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
ID_RICHIESTA = m_cur.ID_RICHIESTA
|
||||
, CODICE_OPERATORE_RECIPIENT = m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER = m_cur.ROUTING_NUMBER
|
||||
, DATA_CUT_OVER = m_cur.DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE = m_cur.DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO = m_cur.FLAG_LAVORATO
|
||||
WHERE m_cur.DATA_CUT_OVER > m_tgt.DATA_CUT_OVER
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
ID_RICHIESTA
|
||||
, MSISDN
|
||||
, CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER
|
||||
, DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO
|
||||
) VALUES (
|
||||
m_cur.ID_RICHIESTA
|
||||
, m_cur.MSISDN
|
||||
, m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, m_cur.ROUTING_NUMBER
|
||||
, m_cur.DATA_CUT_OVER
|
||||
, m_cur.DATA_ESTRAZIONE
|
||||
, m_cur.FLAG_LAVORATO
|
||||
);
|
||||
COMMIT;
|
||||
RETURN;
|
||||
END ESTR_RICHIESTA_REC;
|
||||
|
||||
-- ===============================================================================
|
||||
-- 2018 C05 MNP_RU_524 Del.147 Procedura #3/8
|
||||
-- PROCESSO PORTING TERZE PARTI
|
||||
-- Utilizza MERGE invece di LOOP on CURSOR
|
||||
PROCEDURE ESTR_RICHIESTA_PORTING(in_data_inizio IN DATE, in_data_fine IN DATE) IS
|
||||
BEGIN
|
||||
MERGE INTO MNP_DBP2DBCFX m_tgt
|
||||
USING (
|
||||
SELECT ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, FLAG_LAVORATO FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.ID_RICHIESTA AS ID_RICHIESTA
|
||||
, MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, (SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 0 AS FLAG_LAVORATO
|
||||
FROM MNP_GESTIONE_RICHIESTA_PORTING MGR
|
||||
WHERE MGR.MSISDN IS NOT NULL
|
||||
AND MGR.DATA_CUT_OVER BETWEEN in_data_inizio AND in_data_fine
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
) m_cur
|
||||
ON (m_cur.MSISDN = m_tgt.MSISDN)
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
ID_RICHIESTA = m_cur.ID_RICHIESTA
|
||||
, CODICE_OPERATORE_RECIPIENT = m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER = m_cur.ROUTING_NUMBER
|
||||
, DATA_CUT_OVER = m_cur.DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE = m_cur.DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO = m_cur.FLAG_LAVORATO
|
||||
WHERE m_cur.DATA_CUT_OVER > m_tgt.DATA_CUT_OVER
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
ID_RICHIESTA
|
||||
, MSISDN
|
||||
, CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER
|
||||
, DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO
|
||||
) VALUES (
|
||||
m_cur.ID_RICHIESTA
|
||||
, m_cur.MSISDN
|
||||
, m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, m_cur.ROUTING_NUMBER
|
||||
, m_cur.DATA_CUT_OVER
|
||||
, m_cur.DATA_ESTRAZIONE
|
||||
, m_cur.FLAG_LAVORATO
|
||||
);
|
||||
COMMIT;
|
||||
RETURN;
|
||||
END ESTR_RICHIESTA_PORTING;
|
||||
|
||||
|
||||
-- ===============================================================================
|
||||
-- 2018 C05 MNP_RU_524 Del.147 Procedura #4/8
|
||||
-- PROCESSO CESSAZIONI PORTING
|
||||
-- STATO 4 = CESSATA
|
||||
-- STATO 2 = DA_INVIARE dove l'invio viene fatto solo per numeri NON-TIM
|
||||
-- Riportare come CODICE_OPERATORE_RECIPIENT l'OLO proprietario originale del DN
|
||||
-- L'ultima condizione serve a estrarre OLO Cessatori (Donor) esistenti e validi
|
||||
-- La condizione originale sullo STATO 2 era la seguente (corretta ma INVOLUTA)
|
||||
-- MGR.STATO='2' AND NOT EXISTS (
|
||||
-- SELECT MO.COD_OLO FROM MNP_OLO MO, MNP_OLO_PREFISSI MOP WHERE MO.DESC_OLO IN('TIMT','TIMG')
|
||||
-- AND MOP.COD_OLO=MO.COD_OLO AND ( MOP.PREFIX=SUBSTR(MGR.MSISDN,3,3) OR MOP.PREFIX=SUBSTR(MGR.MSISDN,3,4) )
|
||||
-- )
|
||||
-- e' stata reingegnerizzata con la seguente logica
|
||||
-- MGR.STATO='2' AND "il proprietario originale della numerazione NON era TIM"
|
||||
-- Utilizza MERGE invece di LOOP on CURSOR
|
||||
|
||||
PROCEDURE ESTR_RICH_CESS_PORT(in_data_inizio IN DATE, in_data_fine IN DATE) IS
|
||||
BEGIN
|
||||
MERGE INTO MNP_DBP2DBCFX m_tgt
|
||||
USING (
|
||||
SELECT ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, FLAG_LAVORATO FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.ID_RICHIESTA AS ID_RICHIESTA
|
||||
, MGR.MSISDN AS MSISDN
|
||||
, O.DESC_OLO AS CODICE_OPERATORE_CESSATORE
|
||||
, O.ROUTING_NUMBER AS ROUTING_NUMBER_CESSATORE
|
||||
, MGR.DATARICEZIONERICHIESTA AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 0 AS FLAG_LAVORATO
|
||||
, MO.DESC_OLO AS CODICE_OPERATORE_RECIPIENT
|
||||
, MO.ROUTING_NUMBER AS ROUTING_NUMBER
|
||||
FROM MNP_GESTIONE_RICH_CESS_PORT MGR, MNP_OLO O
|
||||
, MNP_OLO_PREFISSI MOP INNER JOIN MNP_OLO MO ON MO.COD_OLO=MOP.COD_OLO
|
||||
WHERE
|
||||
MGR.MSISDN IS NOT NULL
|
||||
AND MGR.DATARICEZIONERICHIESTA BETWEEN in_data_inizio AND in_data_fine
|
||||
AND ( MOP.PREFIX=SUBSTR(MGR.MSISDN,3,3) OR MOP.PREFIX=SUBSTR(MGR.MSISDN,3,4) )
|
||||
AND ( MGR.STATO='4' OR ( MGR.STATO='2' AND MO.DESC_OLO NOT IN('TIMT','TIMG') ) )
|
||||
AND O.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
) m_cur
|
||||
ON (m_cur.MSISDN = m_tgt.MSISDN)
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
ID_RICHIESTA = m_cur.ID_RICHIESTA
|
||||
, CODICE_OPERATORE_RECIPIENT = m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER = m_cur.ROUTING_NUMBER
|
||||
, DATA_CUT_OVER = m_cur.DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE = m_cur.DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO = m_cur.FLAG_LAVORATO
|
||||
WHERE m_cur.DATA_CUT_OVER > m_tgt.DATA_CUT_OVER
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
ID_RICHIESTA
|
||||
, MSISDN
|
||||
, CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER
|
||||
, DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO
|
||||
) VALUES (
|
||||
m_cur.ID_RICHIESTA
|
||||
, m_cur.MSISDN
|
||||
, m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, m_cur.ROUTING_NUMBER
|
||||
, m_cur.DATA_CUT_OVER
|
||||
, m_cur.DATA_ESTRAZIONE
|
||||
, m_cur.FLAG_LAVORATO
|
||||
);
|
||||
COMMIT;
|
||||
RETURN;
|
||||
END ESTR_RICH_CESS_PORT;
|
||||
|
||||
|
||||
-- ===============================================================================
|
||||
-- 2018 C05 MNP_RU_524 Del.147 Procedura #5/8
|
||||
-- PROCESSO CESSAZIONI
|
||||
-- Riportare come CODICE_OPERATORE_RECIPIENT l'OLO proprietario originale del DN
|
||||
-- L'ultima condizione serve a estrarre OLO Cessatori (Donor) esistenti e validi
|
||||
-- Utilizza MERGE invece di LOOP on CURSOR
|
||||
PROCEDURE ESTR_RICHIESTA_CESS(in_data_inizio IN DATE, in_data_fine IN DATE) IS
|
||||
BEGIN
|
||||
MERGE INTO MNP_DBP2DBCFX m_tgt
|
||||
USING (
|
||||
SELECT ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, FLAG_LAVORATO FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.ID_RICHIESTA AS ID_RICHIESTA
|
||||
, MGR.MSISDN AS MSISDN
|
||||
, O.DESC_OLO AS CODICE_OPERATORE_CESSATORE
|
||||
, O.ROUTING_NUMBER AS ROUTING_NUMBER_CESSATORE
|
||||
, MGR.DATARICEZIONERICHIESTA AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 0 AS FLAG_LAVORATO
|
||||
, MO.DESC_OLO AS CODICE_OPERATORE_RECIPIENT
|
||||
, MO.ROUTING_NUMBER AS ROUTING_NUMBER
|
||||
FROM
|
||||
MNP_GESTIONE_RICHIESTA_CESS MGR, MNP_OLO O
|
||||
, MNP_OLO_PREFISSI MOP INNER JOIN MNP_OLO MO ON MO.COD_OLO=MOP.COD_OLO
|
||||
WHERE
|
||||
MGR.MSISDN IS NOT NULL
|
||||
AND MGR.DATARICEZIONERICHIESTA BETWEEN in_data_inizio AND in_data_fine
|
||||
AND (MOP.PREFIX = SUBSTR(MGR.MSISDN,3,3) OR MOP.PREFIX = SUBSTR(MGR.MSISDN,3,4))
|
||||
AND O.DESC_OLO = MGR.CODICE_OPERATORE_RECIPIENT
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
) m_cur
|
||||
ON (m_cur.MSISDN = m_tgt.MSISDN)
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
ID_RICHIESTA = m_cur.ID_RICHIESTA
|
||||
, CODICE_OPERATORE_RECIPIENT = m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER = m_cur.ROUTING_NUMBER
|
||||
, DATA_CUT_OVER = m_cur.DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE = m_cur.DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO = m_cur.FLAG_LAVORATO
|
||||
WHERE m_cur.DATA_CUT_OVER > m_tgt.DATA_CUT_OVER
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
ID_RICHIESTA
|
||||
, MSISDN
|
||||
, CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER
|
||||
, DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO
|
||||
) VALUES (
|
||||
m_cur.ID_RICHIESTA
|
||||
, m_cur.MSISDN
|
||||
, m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, m_cur.ROUTING_NUMBER
|
||||
, m_cur.DATA_CUT_OVER
|
||||
, m_cur.DATA_ESTRAZIONE
|
||||
, m_cur.FLAG_LAVORATO
|
||||
);
|
||||
COMMIT;
|
||||
RETURN;
|
||||
END ESTR_RICHIESTA_CESS;
|
||||
|
||||
-- ===============================================================================
|
||||
-- 2018 C05 MNP_RU_524 Del.147 Procedura #6/8
|
||||
-- PROCESSO DONOR STANDARD/MVNO/PrjHoc tabella storicizzata
|
||||
-- Utilizza MERGE invece di LOOP on CURSOR
|
||||
PROCEDURE ESTR_RICHIESTA_HIST(in_data_inizio IN DATE, in_data_fine IN DATE) IS
|
||||
BEGIN
|
||||
MERGE INTO MNP_DBP2DBCFX m_tgt
|
||||
USING (
|
||||
SELECT ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, FLAG_LAVORATO FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.ID_RICHIESTA AS ID_RICHIESTA
|
||||
, MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, (SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO = MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER_CALC AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 0 AS FLAG_LAVORATO
|
||||
FROM HIST_GESTIONE_RICHIESTA MGR
|
||||
WHERE MGR.MSISDN IS NOT NULL
|
||||
AND MGR.DATA_CUT_OVER_CALC BETWEEN in_data_inizio AND in_data_fine
|
||||
AND MGR.STATO IN(
|
||||
7 --VALIDATAOK
|
||||
, 9 --ACCETTATA
|
||||
, 14 --INCESSAZIONE
|
||||
, 15 --CESSATA
|
||||
, 16 --ESPLETATA
|
||||
, 99 --BLOCCATA
|
||||
)
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
) m_cur
|
||||
ON (m_cur.MSISDN = m_tgt.MSISDN)
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
ID_RICHIESTA = m_cur.ID_RICHIESTA
|
||||
, CODICE_OPERATORE_RECIPIENT = m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER = m_cur.ROUTING_NUMBER
|
||||
, DATA_CUT_OVER = m_cur.DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE = m_cur.DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO = m_cur.FLAG_LAVORATO
|
||||
WHERE m_cur.DATA_CUT_OVER > m_tgt.DATA_CUT_OVER
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
ID_RICHIESTA
|
||||
, MSISDN
|
||||
, CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER
|
||||
, DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO
|
||||
) VALUES (
|
||||
m_cur.ID_RICHIESTA
|
||||
, m_cur.MSISDN
|
||||
, m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, m_cur.ROUTING_NUMBER
|
||||
, m_cur.DATA_CUT_OVER
|
||||
, m_cur.DATA_ESTRAZIONE
|
||||
, m_cur.FLAG_LAVORATO
|
||||
);
|
||||
COMMIT;
|
||||
RETURN;
|
||||
END ESTR_RICHIESTA_HIST;
|
||||
|
||||
|
||||
-- ===============================================================================
|
||||
-- 2018 C05 MNP_RU_524 Del.147 Procedura #7/8
|
||||
-- PROCESSO RECIPIENT STANDARD/MVNO/PRJHOC tabella storicizzata
|
||||
-- Utilizza MERGE invece di LOOP on CURSOR
|
||||
PROCEDURE ESTR_RICHIESTA_REC_HIST(in_data_inizio IN DATE, in_data_fine IN DATE) IS
|
||||
BEGIN
|
||||
MERGE INTO MNP_DBP2DBCFX m_tgt
|
||||
USING (
|
||||
SELECT ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, FLAG_LAVORATO FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.ID_RICHIESTA AS ID_RICHIESTA
|
||||
, MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, (SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO = MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER_AOM AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 0 AS FLAG_LAVORATO
|
||||
FROM HIST_GESTIONE_RICHIESTA_REC MGR
|
||||
WHERE MGR.MSISDN IS NOT NULL
|
||||
AND MGR.DATA_CUT_OVER_AOM BETWEEN in_data_inizio AND in_data_fine
|
||||
AND MGR.STATO IN(
|
||||
8 --VALIDATA
|
||||
, 10 --ACCETTATA
|
||||
, 11 --ATTESAEVASIONE
|
||||
, 12 --EVASA
|
||||
)
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
) m_cur
|
||||
ON (m_cur.MSISDN = m_tgt.MSISDN)
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
ID_RICHIESTA = m_cur.ID_RICHIESTA
|
||||
, CODICE_OPERATORE_RECIPIENT = m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER = m_cur.ROUTING_NUMBER
|
||||
, DATA_CUT_OVER = m_cur.DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE = m_cur.DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO = m_cur.FLAG_LAVORATO
|
||||
WHERE m_cur.DATA_CUT_OVER > m_tgt.DATA_CUT_OVER
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
ID_RICHIESTA
|
||||
, MSISDN
|
||||
, CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER
|
||||
, DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO
|
||||
) VALUES (
|
||||
m_cur.ID_RICHIESTA
|
||||
, m_cur.MSISDN
|
||||
, m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, m_cur.ROUTING_NUMBER
|
||||
, m_cur.DATA_CUT_OVER
|
||||
, m_cur.DATA_ESTRAZIONE
|
||||
, m_cur.FLAG_LAVORATO
|
||||
);
|
||||
COMMIT;
|
||||
RETURN;
|
||||
END ESTR_RICHIESTA_REC_HIST;
|
||||
|
||||
|
||||
-- ===============================================================================
|
||||
-- 2018 C05 MNP_RU_524 Del.147 Procedura #8/8
|
||||
-- PROCESSO PORTING TERZE PARTI tabella storicizzata
|
||||
-- Utilizza MERGE invece di LOOP on CURSOR
|
||||
PROCEDURE ESTR_RICHIESTA_PORTING_HIST(in_data_inizio IN DATE, in_data_fine IN DATE) IS
|
||||
BEGIN
|
||||
MERGE INTO MNP_DBP2DBCFX m_tgt
|
||||
USING (
|
||||
SELECT ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, FLAG_LAVORATO FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.ID_RICHIESTA AS ID_RICHIESTA
|
||||
, MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, (SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO = MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 0 AS FLAG_LAVORATO
|
||||
FROM HIST_GESTIONE_RICHIESTAPORTING MGR
|
||||
WHERE MGR.MSISDN IS NOT NULL
|
||||
AND MGR.DATA_CUT_OVER BETWEEN in_data_inizio AND in_data_fine
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
) m_cur
|
||||
ON (m_cur.MSISDN = m_tgt.MSISDN)
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET
|
||||
ID_RICHIESTA = m_cur.ID_RICHIESTA
|
||||
, CODICE_OPERATORE_RECIPIENT = m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER = m_cur.ROUTING_NUMBER
|
||||
, DATA_CUT_OVER = m_cur.DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE = m_cur.DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO = m_cur.FLAG_LAVORATO
|
||||
WHERE m_cur.DATA_CUT_OVER > m_tgt.DATA_CUT_OVER
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (
|
||||
ID_RICHIESTA
|
||||
, MSISDN
|
||||
, CODICE_OPERATORE_RECIPIENT
|
||||
, ROUTING_NUMBER
|
||||
, DATA_CUT_OVER
|
||||
, DATA_ESTRAZIONE
|
||||
, FLAG_LAVORATO
|
||||
) VALUES (
|
||||
m_cur.ID_RICHIESTA
|
||||
, m_cur.MSISDN
|
||||
, m_cur.CODICE_OPERATORE_RECIPIENT
|
||||
, m_cur.ROUTING_NUMBER
|
||||
, m_cur.DATA_CUT_OVER
|
||||
, m_cur.DATA_ESTRAZIONE
|
||||
, m_cur.FLAG_LAVORATO
|
||||
);
|
||||
COMMIT;
|
||||
RETURN;
|
||||
END ESTR_RICHIESTA_PORTING_HIST;
|
||||
|
||||
END PKG_DBP;
|
||||
/
|
||||
|
||||
@@ -0,0 +1,179 @@
|
||||
-- Execute as user MNP
|
||||
-- 2018 C05 MNP_RU_524
|
||||
-- Del.147 full export of porting history to OLOs
|
||||
-- Full extract for DNs in test set, with name of table of origin.
|
||||
SELECT * FROM (
|
||||
SELECT ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, TABELLA_ORIGINE FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT /*+ FULL(MGR) PARALLEL(5)*/ MGR.ID_RICHIESTA AS ID_RICHIESTA
|
||||
, MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, (SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 'MNP_GESTIONE_RICHIESTA' AS TABELLA_ORIGINE
|
||||
FROM MNP_GESTIONE_RICHIESTA MGR
|
||||
WHERE MGR.MSISDN IN ( '393276330000' , '393288825691' , '393291154276' , '393318806310' , '393333559969' , '393334100351' , '393336146249' , '393342619998' , '393346320565'
|
||||
, '393346485003' , '393347137411' , '393357493056' , '393358320077' , '393381525418' , '393386128129' , '393394440718' , '393397925615' , '393402650849' , '393403250339'
|
||||
, '393404090400' , '393421293174' , '393423838570' , '393457350261' , '393460926424' , '393461435422' , '393480672962' , '393481198300' , '393483855131' , '393485142050'
|
||||
, '393487515463' , '393488959368' , '393490583568' , '393492449836' , '393495296549' , '393497083239' , '393737571533' , '393927061964' , '393928457910' , '393929504561'
|
||||
)
|
||||
AND STATO IN ( 7, 9, 14, 15, 16, 99 )
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
UNION ALL
|
||||
SELECT ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, TABELLA_ORIGINE FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT /*+ FULL(MGR) PARALLEL(5)*/ MGR.ID_RICHIESTA AS ID_RICHIESTA
|
||||
, MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, (SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 'MNP_GESTIONE_RICHIESTA_REC' AS TABELLA_ORIGINE
|
||||
FROM MNP_GESTIONE_RICHIESTA_REC MGR
|
||||
WHERE MGR.MSISDN IN ( '393276330000' , '393288825691' , '393291154276' , '393318806310' , '393333559969' , '393334100351' , '393336146249' , '393342619998' , '393346320565'
|
||||
, '393346485003' , '393347137411' , '393357493056' , '393358320077' , '393381525418' , '393386128129' , '393394440718' , '393397925615' , '393402650849' , '393403250339'
|
||||
, '393404090400' , '393421293174' , '393423838570' , '393457350261' , '393460926424' , '393461435422' , '393480672962' , '393481198300' , '393483855131' , '393485142050'
|
||||
, '393487515463' , '393488959368' , '393490583568' , '393492449836' , '393495296549' , '393497083239' , '393737571533' , '393927061964' , '393928457910' , '393929504561'
|
||||
)
|
||||
AND STATO IN ( 8, 10, 11, 12 )
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
UNION ALL
|
||||
SELECT ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, TABELLA_ORIGINE FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.ID_RICHIESTA AS ID_RICHIESTA
|
||||
, MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, (SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 'MNP_GESTIONE_RICHIESTA_PORTING' AS TABELLA_ORIGINE
|
||||
FROM MNP_GESTIONE_RICHIESTA_PORTING MGR
|
||||
WHERE MGR.MSISDN IN ( '393276330000' , '393288825691' , '393291154276' , '393318806310' , '393333559969' , '393334100351' , '393336146249' , '393342619998' , '393346320565'
|
||||
, '393346485003' , '393347137411' , '393357493056' , '393358320077' , '393381525418' , '393386128129' , '393394440718' , '393397925615' , '393402650849' , '393403250339'
|
||||
, '393404090400' , '393421293174' , '393423838570' , '393457350261' , '393460926424' , '393461435422' , '393480672962' , '393481198300' , '393483855131' , '393485142050'
|
||||
, '393487515463' , '393488959368' , '393490583568' , '393492449836' , '393495296549' , '393497083239' , '393737571533' , '393927061964' , '393928457910' , '393929504561'
|
||||
)
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
UNION ALL
|
||||
SELECT ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, TABELLA_ORIGINE FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.ID_RICHIESTA AS ID_RICHIESTA
|
||||
, MGR.MSISDN AS MSISDN
|
||||
, O.DESC_OLO AS CODICE_OPERATORE_CESSATORE
|
||||
, O.ROUTING_NUMBER AS ROUTING_NUMBER_CESSATORE
|
||||
, MGR.DATA_CUT_OVER AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 'MNP_GESTIONE_RICH_CESS_PORT' AS TABELLA_ORIGINE
|
||||
, MO.DESC_OLO AS CODICE_OPERATORE_RECIPIENT
|
||||
, MO.ROUTING_NUMBER AS ROUTING_NUMBER
|
||||
FROM MNP_GESTIONE_RICH_CESS_PORT MGR, MNP_OLO O
|
||||
, MNP_OLO_PREFISSI MOP INNER JOIN MNP_OLO MO ON MO.COD_OLO=MOP.COD_OLO
|
||||
WHERE MGR.MSISDN IN ( '393276330000' , '393288825691' , '393291154276' , '393318806310' , '393333559969' , '393334100351' , '393336146249' , '393342619998' , '393346320565'
|
||||
, '393346485003' , '393347137411' , '393357493056' , '393358320077' , '393381525418' , '393386128129' , '393394440718' , '393397925615' , '393402650849' , '393403250339'
|
||||
, '393404090400' , '393421293174' , '393423838570' , '393457350261' , '393460926424' , '393461435422' , '393480672962' , '393481198300' , '393483855131' , '393485142050'
|
||||
, '393487515463' , '393488959368' , '393490583568' , '393492449836' , '393495296549' , '393497083239' , '393737571533' , '393927061964' , '393928457910' , '393929504561'
|
||||
)
|
||||
AND ( MOP.PREFIX=SUBSTR(MGR.MSISDN,3,3) OR MOP.PREFIX=SUBSTR(MGR.MSISDN,3,4) )
|
||||
AND ( MGR.STATO='4' OR ( MGR.STATO='2' AND MO.DESC_OLO NOT IN('TIMT','TIMG') ) )
|
||||
AND O.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
UNION ALL
|
||||
SELECT ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, TABELLA_ORIGINE FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.ID_RICHIESTA AS ID_RICHIESTA
|
||||
, MGR.MSISDN AS MSISDN
|
||||
, O.DESC_OLO AS CODICE_OPERATORE_CESSATORE
|
||||
, O.ROUTING_NUMBER AS ROUTING_NUMBER_CESSATORE
|
||||
, MGR.DATA_CUT_OVER AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 'MNP_GESTIONE_RICHIESTA_CESS' AS TABELLA_ORIGINE
|
||||
, MO.DESC_OLO AS CODICE_OPERATORE_RECIPIENT
|
||||
, MO.ROUTING_NUMBER AS ROUTING_NUMBER
|
||||
FROM
|
||||
MNP_GESTIONE_RICHIESTA_CESS MGR, MNP_OLO O
|
||||
, MNP_OLO_PREFISSI MOP INNER JOIN MNP_OLO MO ON MO.COD_OLO=MOP.COD_OLO
|
||||
WHERE MGR.MSISDN IN ( '393276330000' , '393288825691' , '393291154276' , '393318806310' , '393333559969' , '393334100351' , '393336146249' , '393342619998' , '393346320565'
|
||||
, '393346485003' , '393347137411' , '393357493056' , '393358320077' , '393381525418' , '393386128129' , '393394440718' , '393397925615' , '393402650849' , '393403250339'
|
||||
, '393404090400' , '393421293174' , '393423838570' , '393457350261' , '393460926424' , '393461435422' , '393480672962' , '393481198300' , '393483855131' , '393485142050'
|
||||
, '393487515463' , '393488959368' , '393490583568' , '393492449836' , '393495296549' , '393497083239' , '393737571533' , '393927061964' , '393928457910' , '393929504561'
|
||||
)
|
||||
AND (MOP.PREFIX = SUBSTR(MGR.MSISDN,3,3) OR MOP.PREFIX = SUBSTR(MGR.MSISDN,3,4))
|
||||
AND O.DESC_OLO = MGR.CODICE_OPERATORE_RECIPIENT
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
UNION ALL
|
||||
SELECT ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, TABELLA_ORIGINE FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.ID_RICHIESTA AS ID_RICHIESTA
|
||||
, MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, (SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO = MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 'HIST_GESTIONE_RICHIESTA' AS TABELLA_ORIGINE
|
||||
FROM HIST_GESTIONE_RICHIESTA MGR
|
||||
WHERE MGR.MSISDN IN ( '393276330000' , '393288825691' , '393291154276' , '393318806310' , '393333559969' , '393334100351' , '393336146249' , '393342619998' , '393346320565'
|
||||
, '393346485003' , '393347137411' , '393357493056' , '393358320077' , '393381525418' , '393386128129' , '393394440718' , '393397925615' , '393402650849' , '393403250339'
|
||||
, '393404090400' , '393421293174' , '393423838570' , '393457350261' , '393460926424' , '393461435422' , '393480672962' , '393481198300' , '393483855131' , '393485142050'
|
||||
, '393487515463' , '393488959368' , '393490583568' , '393492449836' , '393495296549' , '393497083239' , '393737571533' , '393927061964' , '393928457910' , '393929504561'
|
||||
)
|
||||
AND MGR.STATO IN( 7, 9, 14, 15, 16, 99 )
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
UNION ALL
|
||||
SELECT ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, TABELLA_ORIGINE FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.ID_RICHIESTA AS ID_RICHIESTA
|
||||
, MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, (SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO = MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 'HIST_GESTIONE_RICHIESTA_REC' AS TABELLA_ORIGINE
|
||||
FROM HIST_GESTIONE_RICHIESTA_REC MGR
|
||||
WHERE MGR.MSISDN IN ( '393276330000' , '393288825691' , '393291154276' , '393318806310' , '393333559969' , '393334100351' , '393336146249' , '393342619998' , '393346320565'
|
||||
, '393346485003' , '393347137411' , '393357493056' , '393358320077' , '393381525418' , '393386128129' , '393394440718' , '393397925615' , '393402650849' , '393403250339'
|
||||
, '393404090400' , '393421293174' , '393423838570' , '393457350261' , '393460926424' , '393461435422' , '393480672962' , '393481198300' , '393483855131' , '393485142050'
|
||||
, '393487515463' , '393488959368' , '393490583568' , '393492449836' , '393495296549' , '393497083239' , '393737571533' , '393927061964' , '393928457910' , '393929504561'
|
||||
)
|
||||
AND MGR.STATO IN( 8, 10, 11, 12 )
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
UNION ALL
|
||||
SELECT ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT, ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE, TABELLA_ORIGINE FROM (
|
||||
SELECT m_cur_bulk.*, row_number() OVER (PARTITION BY MSISDN ORDER BY DATA_CUT_OVER DESC) rnum FROM (
|
||||
SELECT
|
||||
MGR.ID_RICHIESTA AS ID_RICHIESTA
|
||||
, MGR.MSISDN AS MSISDN
|
||||
, MGR.CODICE_OPERATORE_RECIPIENT AS CODICE_OPERATORE_RECIPIENT
|
||||
, (SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO = MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER
|
||||
, MGR.DATA_CUT_OVER AS DATA_CUT_OVER
|
||||
, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 'HIST_GESTIONE_RICHIESTAPORTING' AS TABELLA_ORIGINE
|
||||
FROM HIST_GESTIONE_RICHIESTAPORTING MGR
|
||||
WHERE MGR.MSISDN IN ( '393276330000' , '393288825691' , '393291154276' , '393318806310' , '393333559969' , '393334100351' , '393336146249' , '393342619998' , '393346320565'
|
||||
, '393346485003' , '393347137411' , '393357493056' , '393358320077' , '393381525418' , '393386128129' , '393394440718' , '393397925615' , '393402650849' , '393403250339'
|
||||
, '393404090400' , '393421293174' , '393423838570' , '393457350261' , '393460926424' , '393461435422' , '393480672962' , '393481198300' , '393483855131' , '393485142050'
|
||||
, '393487515463' , '393488959368' , '393490583568' , '393492449836' , '393495296549' , '393497083239' , '393737571533' , '393927061964' , '393928457910' , '393929504561'
|
||||
)
|
||||
) m_cur_bulk
|
||||
)
|
||||
WHERE rnum = 1
|
||||
) ORDER BY MSISDN, DATA_CUT_OVER;
|
||||
@@ -0,0 +1,18 @@
|
||||
-- 2018 C05 MNP_RU_524
|
||||
--execute as MNP
|
||||
|
||||
--spool /mnpapp/log/script/dbc_Del147.log;
|
||||
|
||||
-----------------------------
|
||||
--CREATE/MODIFY OBJECT
|
||||
@@MNP_DDL_Del147_IDX_HIST.sql
|
||||
@@MNP_DDL_Del147_IDX_LIVE.sql
|
||||
@@MNP_DDL_Del147_PKG_DBP.sql
|
||||
|
||||
-----------------------------
|
||||
--INSERT/UPDATE DATA
|
||||
--@@dbcDML.sql
|
||||
|
||||
-----------------------------
|
||||
commit;
|
||||
spool off;
|
||||
@@ -0,0 +1,311 @@
|
||||
CREATE OR REPLACE PACKAGE PKG_DBP AS
|
||||
|
||||
PROCEDURE estr_RICHIESTA (data_inizio IN DATE, data_fine IN DATE);
|
||||
PROCEDURE estr_RICHIESTA_REC (data_inizio IN DATE, data_fine IN DATE);
|
||||
PROCEDURE estr_RICHIESTA_PORTING (data_inizio IN DATE, data_fine IN DATE);
|
||||
PROCEDURE estr_RICH_CESS_PORT (data_inizio IN DATE, data_fine IN DATE);
|
||||
PROCEDURE estr_RICHIESTA_CESS (data_inizio IN DATE, data_fine IN DATE);
|
||||
|
||||
END PKG_DBP;
|
||||
/
|
||||
|
||||
|
||||
CREATE OR REPLACE package body PKG_DBP as
|
||||
|
||||
-- PROCESSO DONOR STANDARD/MVNO/PrjHoc
|
||||
procedure estr_RICHIESTA(data_inizio IN DATE, data_fine IN DATE) IS
|
||||
|
||||
oldDataCutOver date ;
|
||||
|
||||
CURSOR SEL_RICHIESTA IS
|
||||
SELECT mgr.id_richiesta AS ID_RICHIESTA
|
||||
, NVL (mgr.msisdn, '') AS MSISDN
|
||||
, mgr.codice_operatore_recipient AS CODICE_OPERATORE_RECIPIENT
|
||||
, (SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER
|
||||
, mgr.data_cut_over AS DATA_CUT_OVER, SYSDATE AS DATA_ESTRAZIONE
|
||||
, 0 AS FLAG_LAVORATO
|
||||
FROM mnp_gestione_richiesta mgr
|
||||
WHERE STATO IN(7 --VALIDATAOK
|
||||
,9 --ACCETTATA
|
||||
,14 --INCESSAZIONE
|
||||
,15 --CESSATA
|
||||
,16 --ESPLETATA
|
||||
,99 --BLOCCATA
|
||||
)
|
||||
AND mgr.DATA_CUT_OVER BETWEEN data_inizio and data_fine;
|
||||
|
||||
BEGIN
|
||||
|
||||
FOR rigaLetta IN SEL_RICHIESTA LOOP
|
||||
BEGIN
|
||||
INSERT INTO MNP_DBP2DBCFX (
|
||||
ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT,
|
||||
ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE,
|
||||
FLAG_LAVORATO)
|
||||
VALUES ( rigaLetta.ID_RICHIESTA
|
||||
,rigaLetta.MSISDN
|
||||
,rigaLetta.CODICE_OPERATORE_RECIPIENT
|
||||
,rigaLetta.ROUTING_NUMBER
|
||||
,rigaLetta.DATA_CUT_OVER
|
||||
,rigaLetta.DATA_ESTRAZIONE
|
||||
,rigaLetta.FLAG_LAVORATO
|
||||
);
|
||||
EXCEPTION WHEN DUP_VAL_ON_INDEX THEN
|
||||
BEGIN
|
||||
SELECT DATA_CUT_OVER
|
||||
INTO oldDataCutOver
|
||||
FROM MNP_DBP2DBCFX
|
||||
WHERE MSISDN = rigaLetta.MSISDN;
|
||||
|
||||
IF rigaLetta.DATA_CUT_OVER >= oldDataCutOver THEN
|
||||
UPDATE MNP_DBP2DBCFX
|
||||
SET ID_RICHIESTA=rigaLetta.ID_RICHIESTA
|
||||
,CODICE_OPERATORE_RECIPIENT = rigaLetta.CODICE_OPERATORE_RECIPIENT
|
||||
,ROUTING_NUMBER = rigaLetta.ROUTING_NUMBER
|
||||
,DATA_CUT_OVER = rigaLetta.DATA_CUT_OVER
|
||||
,DATA_ESTRAZIONE = rigaLetta.DATA_ESTRAZIONE
|
||||
,FLAG_LAVORATO = rigaLetta.FLAG_LAVORATO
|
||||
WHERE MSISDN = rigaLetta.MSISDN;
|
||||
END IF;
|
||||
END;
|
||||
END;
|
||||
END LOOP;
|
||||
COMMIT;
|
||||
return;
|
||||
|
||||
END estr_RICHIESTA;
|
||||
|
||||
-- PROCESSO RECIPIENT STANDARD/MVNO/PrjHoc
|
||||
procedure estr_RICHIESTA_REC(data_inizio IN DATE, data_fine IN DATE) IS
|
||||
|
||||
oldDataCutOver date ;
|
||||
|
||||
CURSOR SEL_RICHIESTA IS
|
||||
SELECT mgr.id_richiesta AS id_richiesta, NVL (mgr.msisdn, '') AS msisdn,
|
||||
mgr.codice_operatore_recipient AS codice_operatore_recipient,
|
||||
(SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER,
|
||||
mgr.data_cut_over AS data_cut_over, SYSDATE AS data_estrazione,
|
||||
0 AS flag_lavorato
|
||||
FROM mnp_gestione_richiesta_rec mgr
|
||||
WHERE STATO IN(8 --VALIDATA
|
||||
,10 --ACCETTATA
|
||||
,11 --ATTESAEVASIONE
|
||||
,12 --EVASA
|
||||
)
|
||||
AND mgr.data_cut_over BETWEEN data_inizio AND data_fine;
|
||||
|
||||
BEGIN
|
||||
|
||||
FOR rigaLetta IN SEL_RICHIESTA LOOP
|
||||
BEGIN
|
||||
INSERT INTO MNP_DBP2DBCFX (
|
||||
ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT,
|
||||
ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE,
|
||||
FLAG_LAVORATO)
|
||||
VALUES ( rigaLetta.ID_RICHIESTA
|
||||
,rigaLetta.MSISDN
|
||||
,rigaLetta.CODICE_OPERATORE_RECIPIENT
|
||||
,rigaLetta.ROUTING_NUMBER
|
||||
,rigaLetta.DATA_CUT_OVER
|
||||
,rigaLetta.DATA_ESTRAZIONE
|
||||
,rigaLetta.FLAG_LAVORATO
|
||||
);
|
||||
EXCEPTION WHEN DUP_VAL_ON_INDEX THEN
|
||||
BEGIN
|
||||
SELECT DATA_CUT_OVER
|
||||
INTO oldDataCutOver
|
||||
FROM MNP_DBP2DBCFX
|
||||
WHERE MSISDN = rigaLetta.MSISDN;
|
||||
|
||||
IF rigaLetta.DATA_CUT_OVER >= oldDataCutOver THEN
|
||||
UPDATE MNP_DBP2DBCFX
|
||||
SET ID_RICHIESTA=rigaLetta.ID_RICHIESTA
|
||||
,CODICE_OPERATORE_RECIPIENT = rigaLetta.CODICE_OPERATORE_RECIPIENT
|
||||
,ROUTING_NUMBER = rigaLetta.ROUTING_NUMBER
|
||||
,DATA_CUT_OVER = rigaLetta.DATA_CUT_OVER
|
||||
,DATA_ESTRAZIONE = rigaLetta.DATA_ESTRAZIONE
|
||||
,FLAG_LAVORATO = rigaLetta.FLAG_LAVORATO
|
||||
WHERE MSISDN = rigaLetta.MSISDN;
|
||||
END IF;
|
||||
END;
|
||||
END;
|
||||
END LOOP;
|
||||
COMMIT;
|
||||
return;
|
||||
|
||||
END estr_RICHIESTA_REC;
|
||||
|
||||
-- PROCESSO PORTING TERZE PARTI
|
||||
procedure estr_RICHIESTA_PORTING(data_inizio IN DATE, data_fine IN DATE) IS
|
||||
oldDataCutOver date ;
|
||||
|
||||
CURSOR SEL_RICHIESTA IS
|
||||
SELECT mgr.id_richiesta AS id_richiesta, NVL (mgr.msisdn, '') AS msisdn,
|
||||
mgr.codice_operatore_recipient AS codice_operatore_recipient,
|
||||
(SELECT A.ROUTING_NUMBER FROM MNP_OLO A WHERE A.DESC_OLO=MGR.CODICE_OPERATORE_RECIPIENT) AS ROUTING_NUMBER,
|
||||
mgr.data_cut_over AS data_cut_over, SYSDATE AS data_estrazione,
|
||||
0 AS flag_lavorato
|
||||
FROM mnp_gestione_richiesta_porting mgr
|
||||
where mgr.data_cut_over BETWEEN data_inizio AND data_fine;
|
||||
|
||||
BEGIN
|
||||
|
||||
FOR rigaLetta IN SEL_RICHIESTA LOOP
|
||||
BEGIN
|
||||
INSERT INTO MNP_DBP2DBCFX (
|
||||
ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT,
|
||||
ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE,
|
||||
FLAG_LAVORATO)
|
||||
VALUES ( rigaLetta.ID_RICHIESTA
|
||||
,rigaLetta.MSISDN
|
||||
,rigaLetta.CODICE_OPERATORE_RECIPIENT
|
||||
,rigaLetta.ROUTING_NUMBER
|
||||
,rigaLetta.DATA_CUT_OVER
|
||||
,rigaLetta.DATA_ESTRAZIONE
|
||||
,rigaLetta.FLAG_LAVORATO
|
||||
);
|
||||
EXCEPTION WHEN DUP_VAL_ON_INDEX THEN
|
||||
BEGIN
|
||||
SELECT DATA_CUT_OVER
|
||||
INTO oldDataCutOver
|
||||
FROM MNP_DBP2DBCFX
|
||||
WHERE MSISDN = rigaLetta.MSISDN;
|
||||
|
||||
IF rigaLetta.DATA_CUT_OVER >= oldDataCutOver THEN
|
||||
UPDATE MNP_DBP2DBCFX
|
||||
SET ID_RICHIESTA=rigaLetta.ID_RICHIESTA
|
||||
,CODICE_OPERATORE_RECIPIENT = rigaLetta.CODICE_OPERATORE_RECIPIENT
|
||||
,ROUTING_NUMBER = rigaLetta.ROUTING_NUMBER
|
||||
,DATA_CUT_OVER = rigaLetta.DATA_CUT_OVER
|
||||
,DATA_ESTRAZIONE = rigaLetta.DATA_ESTRAZIONE
|
||||
,FLAG_LAVORATO = rigaLetta.FLAG_LAVORATO
|
||||
WHERE MSISDN = rigaLetta.MSISDN;
|
||||
END IF;
|
||||
END;
|
||||
END;
|
||||
END LOOP;
|
||||
COMMIT;
|
||||
return;
|
||||
|
||||
END estr_RICHIESTA_PORTING;
|
||||
|
||||
-- PROCESSO CESSAZIONI PORTING
|
||||
procedure estr_RICH_CESS_PORT(data_inizio IN DATE, data_fine IN DATE) IS
|
||||
oldDataCutOver date ;
|
||||
|
||||
CURSOR SEL_RICHIESTA IS
|
||||
SELECT mgr.id_richiesta AS id_richiesta, NVL (mgr.msisdn, '') AS msisdn,
|
||||
o.desc_olo AS codice_operatore_recipient,
|
||||
o.ROUTING_NUMBER AS routing_number,
|
||||
mgr.data_cut_over AS data_cut_over, SYSDATE AS data_estrazione,
|
||||
0 AS flag_lavorato
|
||||
FROM mnp_gestione_rich_CESS_PORT mgr, mnp_olo o
|
||||
where mgr.data_cut_over BETWEEN data_inizio AND data_fine
|
||||
AND (mgr.STATO='4' OR
|
||||
(mgr.stato='2' AND NOT EXISTS (SELECT 1 FROM MNP_OLO MO, MNP_OLO_PREFISSI MOP
|
||||
WHERE MO.DESC_OLO IN('TIMT','TIMG')
|
||||
AND MOP.COD_OLO=MO.COD_OLO
|
||||
AND MOP.PREFIX=substr(mgr.MSISDN,3,3)
|
||||
) )
|
||||
)
|
||||
AND o.DESC_OLO=mgr.CODICE_OPERATORE_RECIPIENT;
|
||||
|
||||
BEGIN
|
||||
|
||||
FOR rigaLetta IN SEL_RICHIESTA LOOP
|
||||
BEGIN
|
||||
INSERT INTO MNP_DBP2DBCFX (
|
||||
ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT,
|
||||
ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE,
|
||||
FLAG_LAVORATO)
|
||||
VALUES ( rigaLetta.ID_RICHIESTA
|
||||
,rigaLetta.MSISDN
|
||||
,rigaLetta.CODICE_OPERATORE_RECIPIENT
|
||||
,rigaLetta.ROUTING_NUMBER
|
||||
,rigaLetta.DATA_CUT_OVER
|
||||
,rigaLetta.DATA_ESTRAZIONE
|
||||
,rigaLetta.FLAG_LAVORATO
|
||||
);
|
||||
EXCEPTION WHEN DUP_VAL_ON_INDEX THEN
|
||||
BEGIN
|
||||
SELECT DATA_CUT_OVER
|
||||
INTO oldDataCutOver
|
||||
FROM MNP_DBP2DBCFX
|
||||
WHERE MSISDN = rigaLetta.MSISDN;
|
||||
|
||||
IF rigaLetta.DATA_CUT_OVER >= oldDataCutOver THEN
|
||||
UPDATE MNP_DBP2DBCFX
|
||||
SET ID_RICHIESTA=rigaLetta.ID_RICHIESTA
|
||||
,CODICE_OPERATORE_RECIPIENT = rigaLetta.CODICE_OPERATORE_RECIPIENT
|
||||
,ROUTING_NUMBER = rigaLetta.ROUTING_NUMBER
|
||||
,DATA_CUT_OVER = rigaLetta.DATA_CUT_OVER
|
||||
,DATA_ESTRAZIONE = rigaLetta.DATA_ESTRAZIONE
|
||||
,FLAG_LAVORATO = rigaLetta.FLAG_LAVORATO
|
||||
WHERE MSISDN = rigaLetta.MSISDN;
|
||||
END IF;
|
||||
END;
|
||||
END;
|
||||
END LOOP;
|
||||
COMMIT;
|
||||
return;
|
||||
END estr_RICH_CESS_PORT;
|
||||
|
||||
-- PROCESSO CESSAZIONI
|
||||
procedure estr_RICHIESTA_CESS(data_inizio IN DATE, data_fine IN DATE) IS
|
||||
oldDataCutOver date ;
|
||||
|
||||
CURSOR SEL_RICHIESTA IS
|
||||
SELECT mgr.id_richiesta AS id_richiesta, NVL (mgr.msisdn, '') AS msisdn,
|
||||
o.desc_olo AS codice_operatore_recipient,
|
||||
o.ROUTING_NUMBER AS routing_number,
|
||||
mgr.data_cut_over AS data_cut_over, SYSDATE AS data_estrazione,
|
||||
0 AS flag_lavorato
|
||||
FROM mnp_gestione_richiesta_CESS mgr, mnp_olo o , MNP_OLO_PREFISSI MOP, mnp_olo mo
|
||||
where mgr.data_cut_over BETWEEN data_inizio AND data_fine
|
||||
AND o.DESC_OLO=mgr.CODICE_OPERATORE_RECIPIENT
|
||||
and MOP.PREFIX=substr(mgr.MSISDN,3,3)
|
||||
and mo.COD_OLO=mop.cod_olo;
|
||||
|
||||
BEGIN
|
||||
|
||||
FOR rigaLetta IN SEL_RICHIESTA LOOP
|
||||
BEGIN
|
||||
INSERT INTO MNP_DBP2DBCFX (
|
||||
ID_RICHIESTA, MSISDN, CODICE_OPERATORE_RECIPIENT,
|
||||
ROUTING_NUMBER, DATA_CUT_OVER, DATA_ESTRAZIONE,
|
||||
FLAG_LAVORATO)
|
||||
VALUES ( rigaLetta.ID_RICHIESTA
|
||||
,rigaLetta.MSISDN
|
||||
,rigaLetta.CODICE_OPERATORE_RECIPIENT
|
||||
,rigaLetta.ROUTING_NUMBER
|
||||
,rigaLetta.DATA_CUT_OVER
|
||||
,rigaLetta.DATA_ESTRAZIONE
|
||||
,rigaLetta.FLAG_LAVORATO
|
||||
);
|
||||
EXCEPTION WHEN DUP_VAL_ON_INDEX THEN
|
||||
BEGIN
|
||||
SELECT DATA_CUT_OVER
|
||||
INTO oldDataCutOver
|
||||
FROM MNP_DBP2DBCFX
|
||||
WHERE MSISDN = rigaLetta.MSISDN;
|
||||
|
||||
IF rigaLetta.DATA_CUT_OVER >= oldDataCutOver THEN
|
||||
UPDATE MNP_DBP2DBCFX
|
||||
SET ID_RICHIESTA=rigaLetta.ID_RICHIESTA
|
||||
,CODICE_OPERATORE_RECIPIENT = rigaLetta.CODICE_OPERATORE_RECIPIENT
|
||||
,ROUTING_NUMBER = rigaLetta.ROUTING_NUMBER
|
||||
,DATA_CUT_OVER = rigaLetta.DATA_CUT_OVER
|
||||
,DATA_ESTRAZIONE = rigaLetta.DATA_ESTRAZIONE
|
||||
,FLAG_LAVORATO = rigaLetta.FLAG_LAVORATO
|
||||
WHERE MSISDN = rigaLetta.MSISDN;
|
||||
END IF;
|
||||
END;
|
||||
END;
|
||||
END LOOP;
|
||||
COMMIT;
|
||||
return;
|
||||
|
||||
END estr_RICHIESTA_CESS;
|
||||
|
||||
END PKG_DBP;
|
||||
/
|
||||
63
dbcmnpsrc/FE/mnpapp/script/GestioneFIFO.sh
Normal file
63
dbcmnpsrc/FE/mnpapp/script/GestioneFIFO.sh
Normal file
@@ -0,0 +1,63 @@
|
||||
#!/usr/bin/ksh
|
||||
#set -x
|
||||
###########################################################
|
||||
# Progetto: MNP
|
||||
# $1 modalita -- 1 disattivo, 0 attivo
|
||||
#
|
||||
# $2 operatore
|
||||
#
|
||||
###########################################################
|
||||
|
||||
THIS_PATH=`dirname $0`
|
||||
THIS=`basename $0 .sh`
|
||||
. $THIS_PATH/setEnv.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
# ESECUZIONE SCRIPT
|
||||
|
||||
LOG=$MNP_LOG_SCRIPT_HOME/$THIS.log
|
||||
if [[ "$#" -gt 0 ]]
|
||||
then
|
||||
MODALITA=$1
|
||||
OPERATORE=$2
|
||||
|
||||
#check <modalita>
|
||||
if [ $MODALITA -eq 0 ]||[ $MODALITA -eq 1 ]
|
||||
then
|
||||
|
||||
#start procedure
|
||||
echo '*******************************' >> $LOG
|
||||
echo '**' $(date) '**' INIZIO AGGIORNAMENTO FIFO >> $LOG
|
||||
if [[ "$#" -eq 1 ]]
|
||||
then
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus ${MNP_SCRIPT_SQL_HOME}/update_gestione_fifo.sql $MODALITA '-1' >> $LOG 2>&1
|
||||
else
|
||||
|
||||
#check <operatore>
|
||||
if [ $OPERATORE -eq 2 ] || [ $OPERATORE -eq 4 ] || [ $OPERATORE -eq 7 ]
|
||||
then
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus ${MNP_SCRIPT_SQL_HOME}/update_gestione_fifo.sql $MODALITA $OPERATORE >> $LOG 2>&1
|
||||
else
|
||||
echo 'error: invalid parameter <operatore>'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
fi
|
||||
echo '**' $(date) '**' FINE AGGIORNAMENTO FIFO >> $LOG
|
||||
|
||||
else
|
||||
echo 'error: invalid parameter <modalita>'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
else
|
||||
echo 'usage: Gestione_FIFO.sh <modalita> [<operatore>]'
|
||||
fi
|
||||
|
||||
else
|
||||
echo 'SCRIPT NON ESEGUITO'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
exit 0
|
||||
@@ -0,0 +1,31 @@
|
||||
#
|
||||
# Shell Script per infasamento dati utili alla produzione dei file una tantum KS12 2015.
|
||||
#
|
||||
#
|
||||
#!/usr/bin/ksh
|
||||
#
|
||||
#set -x
|
||||
|
||||
THIS_PATH=`dirname $0`
|
||||
. ../setEnv.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
# ESECUZIONE SCRIPT
|
||||
|
||||
#directory in cui sono presenti gli script sql
|
||||
SQL=$THIS_PATH/sql
|
||||
|
||||
#directory in cui scrivere i files di Log
|
||||
LOG=$MNP_LOG_SCRIPT_HOME
|
||||
APPLICATION_LOG=$MNP_LOG_APP_HOME
|
||||
|
||||
file_di_log=infasamento_cessazione_KS12_2015.log
|
||||
|
||||
echo $MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $SQL/01_infasamento_cessazione_KS12_2015.sql >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $SQL/01_infasamento_cessazione_KS12_2015.sql >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
|
||||
fi
|
||||
echo "Processo terminato" >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
echo "Processo terminato"
|
||||
@@ -0,0 +1,31 @@
|
||||
#
|
||||
# Shell Script per arricchimento dati utili alla produzione dei file una tantum KS12 2015.
|
||||
#
|
||||
#
|
||||
#!/usr/bin/ksh
|
||||
#
|
||||
#set -x
|
||||
|
||||
THIS_PATH=`dirname $0`
|
||||
. ../setEnv.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
# ESECUZIONE SCRIPT
|
||||
|
||||
#directory in cui sono presenti gli script sql
|
||||
SQL=$THIS_PATH/sql
|
||||
|
||||
#directory in cui scrivere i files di Log
|
||||
LOG=$MNP_LOG_SCRIPT_HOME
|
||||
APPLICATION_LOG=$MNP_LOG_APP_HOME
|
||||
|
||||
file_di_log=arricchimento_cessazione_KS12_2015.log
|
||||
|
||||
echo $MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $SQL/02_arricchimento_cessazione_KS12_2015.sql >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $SQL/02_arricchimento_cessazione_KS12_2015.sql >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
|
||||
fi
|
||||
echo "Processo terminato" >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
echo "Processo terminato"
|
||||
@@ -0,0 +1,31 @@
|
||||
#
|
||||
# Shell Script per la creazione del file delle cessazioni per MSP ()una tantum KS12 2015).
|
||||
#
|
||||
#
|
||||
#!/usr/bin/ksh
|
||||
#
|
||||
#set -x
|
||||
|
||||
THIS_PATH=`dirname $0`
|
||||
. ../setEnv.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
# ESECUZIONE SCRIPT
|
||||
|
||||
#directory in cui sono presenti gli script sql
|
||||
SQL=$THIS_PATH/sql
|
||||
|
||||
#directory in cui scrivere i files di Log
|
||||
LOG=$MNP_LOG_SCRIPT_HOME
|
||||
APPLICATION_LOG=$MNP_LOG_APP_HOME
|
||||
|
||||
file_di_log=crea_una_tantum_MSP.log
|
||||
|
||||
echo $MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $SQL/03_crea_una_tantum_MSP_KS12_2015.sql >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $SQL/03_crea_una_tantum_MSP_KS12_2015.sql >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
|
||||
fi
|
||||
echo "Processo terminato" >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
echo "Processo terminato"
|
||||
@@ -0,0 +1,31 @@
|
||||
#
|
||||
# Shell Script per la creazione del file delle cessazioni per MSC (una tantum KS12 2015).
|
||||
#
|
||||
#
|
||||
#!/usr/bin/ksh
|
||||
#
|
||||
#set -x
|
||||
|
||||
THIS_PATH=`dirname $0`
|
||||
. ../setEnv.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
# ESECUZIONE SCRIPT
|
||||
|
||||
#directory in cui sono presenti gli script sql
|
||||
SQL=$THIS_PATH/sql
|
||||
|
||||
#directory in cui scrivere i files di Log
|
||||
LOG=$MNP_LOG_SCRIPT_HOME
|
||||
APPLICATION_LOG=$MNP_LOG_APP_HOME
|
||||
|
||||
file_di_log=crea_una_tantum_MSC.log
|
||||
|
||||
echo $MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $SQL/04_crea_una_tantum_MSC_KS12_2015.sql >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $SQL/04_crea_una_tantum_MSC_KS12_2015.sql >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
|
||||
fi
|
||||
echo "Processo terminato" >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
echo "Processo terminato"
|
||||
@@ -0,0 +1,32 @@
|
||||
#
|
||||
# Shell Script per la creazione del file delle cessazioni definitive
|
||||
# per DWH-CONSENSO e CCRMWEB (una tantum KS12 2015).
|
||||
#
|
||||
#
|
||||
#!/usr/bin/ksh
|
||||
#
|
||||
#set -x
|
||||
|
||||
THIS_PATH=`dirname $0`
|
||||
. ../setEnv.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
# ESECUZIONE SCRIPT
|
||||
|
||||
#directory in cui sono presenti gli script sql
|
||||
SQL=$THIS_PATH/sql
|
||||
|
||||
#directory in cui scrivere i files di Log
|
||||
LOG=$MNP_LOG_SCRIPT_HOME
|
||||
APPLICATION_LOG=$MNP_LOG_APP_HOME
|
||||
|
||||
file_di_log=crea_una_tantum_MSC.log
|
||||
|
||||
echo $MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $SQL/05_crea_una_tantum_cess_def_KS12_2015.sql >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $SQL/05_crea_una_tantum_cess_def_KS12_2015.sql >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
|
||||
fi
|
||||
echo "Processo terminato" >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
echo "Processo terminato"
|
||||
@@ -0,0 +1,32 @@
|
||||
#
|
||||
# Shell Script per la creazione del file delle cessazioni definitive
|
||||
# per ICM2 (una tantum KS12 2015).
|
||||
#
|
||||
#
|
||||
#!/usr/bin/ksh
|
||||
#
|
||||
#set -x
|
||||
|
||||
THIS_PATH=`dirname $0`
|
||||
. ../setEnv.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
# ESECUZIONE SCRIPT
|
||||
|
||||
#directory in cui sono presenti gli script sql
|
||||
SQL=$THIS_PATH/sql
|
||||
|
||||
#directory in cui scrivere i files di Log
|
||||
LOG=$MNP_LOG_SCRIPT_HOME
|
||||
APPLICATION_LOG=$MNP_LOG_APP_HOME
|
||||
|
||||
file_di_log=crea_una_tantum_MSC.log
|
||||
|
||||
echo $MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $SQL/06_crea_una_tantum_cess_def_ICM2_KS12_2015.sql >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $SQL/06_crea_una_tantum_cess_def_ICM2_KS12_2015.sql >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
|
||||
fi
|
||||
echo "Processo terminato" >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
echo "Processo terminato"
|
||||
@@ -0,0 +1,46 @@
|
||||
DECLARE
|
||||
RetVal number;
|
||||
V_DATA_CURR DATE;
|
||||
V_DATA_CUT_OVER date;
|
||||
V_RECIPIENT_NEW varchar2(4);
|
||||
V_ID_RICHIESTA varchar2(15);
|
||||
V_PROCESSO varchar2(1);
|
||||
|
||||
BEGIN
|
||||
DBMS_OUTPUT.put_line ('START DATE: '||sysdate);
|
||||
|
||||
-- INSERIMENTO CESSAZIONI SENZA RECIPIENT SUCCESSIVO DA TABELLE STORICO E ONLINE
|
||||
INSERT INTO MNP_CESSAZIONI_TEMP (NUMERO_TELEFONO, DATA_CESSAZIONE_MNP, AOM_CESSAZIONE_MNP, COD_PRE_POST)
|
||||
select D.MSISDN, D.DATA_CUT_OVER_EFF, D.CODICE_OPERATORE_REC_EFF, D.CODICE_PRE_POST_PAGATO
|
||||
from hist_gestione_richiesta D
|
||||
WHERE D.STATO = 16
|
||||
AND D.CODICE_OPERATORE_DON_EFF = 'TIMG'
|
||||
AND D.TIPO_CLIENTE = 'CO'
|
||||
AND D.DATARICEZIONERICHIESTA >= TO_DATE('01122010','ddMMyyyy')
|
||||
AND D.DATARICEZIONERICHIESTA <= TO_DATE('31122011','ddMMyyyy')
|
||||
AND D.MSISDN not IN (SELECT MSISDN
|
||||
FROM hist_gestione_richiesta_rec HR
|
||||
WHERE HR.STATO = 12
|
||||
AND HR.DATA_CUT_OVER_EFF > D.DATA_CUT_OVER_EFF
|
||||
AND HR.DATARICEZIONERICHIESTA > D.DATARICEZIONERICHIESTA
|
||||
AND HR.MSISDN = D.MSISDN)
|
||||
AND D.MSISDN not IN (SELECT MSISDN
|
||||
FROM mnp_gestione_richiesta_rec R
|
||||
WHERE R.STATO = 12
|
||||
AND R.DATA_CUT_OVER_EFF > D.DATA_CUT_OVER_EFF
|
||||
AND R.MSISDN = D.MSISDN)
|
||||
UNION
|
||||
select D.MSISDN, D.DATA_CUT_OVER_EFF, D.CODICE_OPERATORE_REC_EFF, D.CODICE_PRE_POST_PAGATO
|
||||
from mnp_gestione_richiesta D
|
||||
WHERE D.STATO = 16
|
||||
AND D.CODICE_OPERATORE_DON_EFF = 'TIMG'
|
||||
AND D.TIPO_CLIENTE = 'CO'
|
||||
AND D.MSISDN not IN (SELECT MSISDN
|
||||
FROM mnp_gestione_richiesta_rec R
|
||||
WHERE STATO = 12
|
||||
AND R.DATA_CUT_OVER_EFF > D.DATA_CUT_OVER_EFF
|
||||
AND R.MSISDN = D.MSISDN);
|
||||
COMMIT;
|
||||
DBMS_OUTPUT.put_line ('END DATE: '||sysdate);
|
||||
END;
|
||||
/
|
||||
@@ -0,0 +1,77 @@
|
||||
DECLARE
|
||||
RetVal number;
|
||||
V_DATA_CURR DATE;
|
||||
V_DATA_CUT_OVER date;
|
||||
V_RECIPIENT_NEW varchar2(4);
|
||||
V_ID_RICHIESTA varchar2(23);
|
||||
V_PROCESSO varchar2(1);
|
||||
|
||||
BEGIN
|
||||
DBMS_OUTPUT.put_line ('START DATE: '||sysdate);
|
||||
-- AGGIORNAMENTO DEI CAMPI PER LE TERZE PARTI O CESSAZIONI DEFINITIVE
|
||||
FOR R_VAR_MSISDN IN
|
||||
( SELECT * FROM MNP_CESSAZIONI_TEMP WHERE FLAG_LAVORATO = 0 )
|
||||
LOOP
|
||||
BEGIN
|
||||
V_ID_RICHIESTA := NULL;
|
||||
V_DATA_CUT_OVER := NULL;
|
||||
V_PROCESSO := NULL;
|
||||
V_RECIPIENT_NEW := NULL;
|
||||
|
||||
-- PARAM 1 (IN): NUMERO_TELEFONO
|
||||
-- PARAM 2 (OUT): ID_RICHIESTA
|
||||
-- PARAM 3 (OUT): DATA_RICEZIONE_RICHIESTA
|
||||
-- PARAM 4 (OUT): DATA_CUT_OVER
|
||||
-- PARAM 5 (OUT): PROCESSO
|
||||
-- PARAM 6 (OUT): AOM_RECIPIENT
|
||||
IF (R_VAR_MSISDN.DATA_CESSAZIONE_MNP >= TO_DATE('01012012','ddMMyyyy') ) THEN
|
||||
RetVal := MNP.F_CERCA_ULTIMO_PROCESSO ( R_VAR_MSISDN.NUMERO_TELEFONO, V_ID_RICHIESTA, V_DATA_CURR, V_DATA_CUT_OVER, V_PROCESSO, V_RECIPIENT_NEW );
|
||||
--DBMS_OUTPUT.put_line ('NUMERO ['||R_VAR_MSISDN.NUMERO_TELEFONO||']: '||R_VAR_MSISDN.DATA_CESSAZIONE_MNP||' - dco '||V_DATA_CUT_OVER);
|
||||
ELSE
|
||||
RetVal := MNP.F_CERCA_ULTIMO_PROCESSO_HIST ( R_VAR_MSISDN.NUMERO_TELEFONO, V_ID_RICHIESTA, V_DATA_CURR, V_DATA_CUT_OVER, V_PROCESSO, V_RECIPIENT_NEW );
|
||||
--DBMS_OUTPUT.put_line ('HIST NUMERO ['||R_VAR_MSISDN.NUMERO_TELEFONO||']: '||R_VAR_MSISDN.DATA_CESSAZIONE_MNP||' - dco '||V_DATA_CUT_OVER);
|
||||
END IF;
|
||||
|
||||
IF RetVal = 0 THEN
|
||||
IF V_PROCESSO = 'C' OR V_PROCESSO = 'K' THEN
|
||||
UPDATE MNP_CESSAZIONI_TEMP
|
||||
SET DATA_CESS_DEF = V_DATA_CUT_OVER,
|
||||
FLAG_CESS_DEF = 1,
|
||||
FLAG_LAVORATO = 1
|
||||
WHERE NUMERO_TELEFONO = R_VAR_MSISDN.NUMERO_TELEFONO;
|
||||
ELSIF V_PROCESSO = 'P' THEN
|
||||
DBMS_OUTPUT.put_line ('PROCESSO TERZE PARTI ['||R_VAR_MSISDN.NUMERO_TELEFONO||']: - dco ['||V_DATA_CUT_OVER||'] dataricezionerichiesta ['||V_DATA_CURR||']');
|
||||
UPDATE MNP_CESSAZIONI_TEMP
|
||||
SET DATA_TP = V_DATA_CUT_OVER,
|
||||
AOM_TP = V_RECIPIENT_NEW,
|
||||
FLAG_LAVORATO = 1
|
||||
WHERE NUMERO_TELEFONO = R_VAR_MSISDN.NUMERO_TELEFONO;
|
||||
ELSE
|
||||
UPDATE MNP_CESSAZIONI_TEMP
|
||||
SET FLAG_LAVORATO = 1
|
||||
WHERE NUMERO_TELEFONO = R_VAR_MSISDN.NUMERO_TELEFONO;
|
||||
END IF;
|
||||
ELSE
|
||||
UPDATE MNP_CESSAZIONI_TEMP
|
||||
SET FLAG_LAVORATO = -1
|
||||
WHERE NUMERO_TELEFONO = R_VAR_MSISDN.NUMERO_TELEFONO;
|
||||
END IF;
|
||||
|
||||
COMMIT;
|
||||
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND THEN
|
||||
V_DATA_CUT_OVER := NULL;
|
||||
V_RECIPIENT_NEW := NULL;
|
||||
--
|
||||
UPDATE MNP_CESSAZIONI_TEMP
|
||||
SET FLAG_LAVORATO = 2
|
||||
WHERE NUMERO_TELEFONO = R_VAR_MSISDN.NUMERO_TELEFONO;
|
||||
|
||||
COMMIT;
|
||||
END;
|
||||
|
||||
END LOOP;
|
||||
DBMS_OUTPUT.put_line ('END DATE: '||sysdate);
|
||||
END;
|
||||
/
|
||||
@@ -0,0 +1,14 @@
|
||||
SET head off
|
||||
SET pages 0
|
||||
SET feedback off
|
||||
SET linesize 53
|
||||
SET trimspool on
|
||||
|
||||
COLUMN spoolname new_value spoolname
|
||||
SELECT '/mnpapp/gwmnp/FTPOUT/MNP_MSP_DONOR_5ANNI_'||TO_CHAR(sysdate, 'yyyymmdd')||'.csv' spoolname FROM dual;
|
||||
|
||||
SPOOL '&spoolname'
|
||||
|
||||
SELECT SUBSTR(NUMERO_TELEFONO,3)||';'||TO_CHAR(DATA_CESSAZIONE_MNP, 'yyyy-mm-dd')||';'||AOM_CESSAZIONE_MNP||';'||AOM_TP||';'||TO_CHAR(DATA_TP, 'yyyy-mm-dd')||';'||COD_PRE_POST FROM MNP_CESSAZIONI_TEMP WHERE COD_PRE_POST='PRP' AND FLAG_CESS_DEF = 0 AND FLAG_LAVORATO = 1;
|
||||
|
||||
SPOOL off;
|
||||
@@ -0,0 +1,14 @@
|
||||
SET head off
|
||||
SET pages 0
|
||||
SET feedback off
|
||||
SET linesize 53
|
||||
SET trimspool on
|
||||
|
||||
COLUMN spoolname new_value spoolname
|
||||
SELECT '/mnpapp/gwmnp/FTPOUT/MNP_MSC_DONOR_5ANNI_'||TO_CHAR(sysdate, 'yyyymmdd')||'.csv' spoolname FROM dual;
|
||||
|
||||
SPOOL '&spoolname'
|
||||
|
||||
SELECT SUBSTR(NUMERO_TELEFONO,3)||';'||TO_CHAR(DATA_CESSAZIONE_MNP, 'yyyy-mm-dd')||';'||AOM_CESSAZIONE_MNP||';'||AOM_TP||';'||TO_CHAR(DATA_TP, 'yyyy-mm-dd')||';'||'ABB' FROM MNP_CESSAZIONI_TEMP WHERE COD_PRE_POST='POP' AND FLAG_CESS_DEF = 0 AND FLAG_LAVORATO = 1;
|
||||
|
||||
SPOOL off;
|
||||
@@ -0,0 +1,14 @@
|
||||
SET head off
|
||||
SET pages 0
|
||||
SET feedback off
|
||||
SET linesize 31
|
||||
SET trimspool on
|
||||
|
||||
COLUMN spoolname new_value spoolname
|
||||
SELECT '/mnpapp/gwmnp/FTPOUT/MNP_CESSDEF_5ANNI_'||TO_CHAR(sysdate, 'yyyymmdd')||'.csv' spoolname FROM dual;
|
||||
|
||||
SPOOL '&spoolname'
|
||||
|
||||
SELECT SUBSTR(NUMERO_TELEFONO,3)||';'||TO_CHAR(DATA_CESS_DEF, 'yyyy-mm-dd')||';'||AOM_CESSAZIONE_MNP FROM MNP_CESSAZIONI_TEMP WHERE FLAG_CESS_DEF = 1 AND FLAG_LAVORATO = 1;
|
||||
|
||||
SPOOL off;
|
||||
@@ -0,0 +1,14 @@
|
||||
SET head off
|
||||
SET pages 0
|
||||
SET feedback off
|
||||
SET linesize 31
|
||||
SET trimspool on
|
||||
|
||||
COLUMN spoolname new_value spoolname
|
||||
SELECT '/mnpapp/gwmnp/FTPOUT/MNP_ICM2_CESS_DEF_PINF_'||TO_CHAR(sysdate, 'yyyymmdd')||'.csv' spoolname FROM dual;
|
||||
|
||||
SPOOL '&spoolname'
|
||||
|
||||
SELECT SUBSTR(NUMERO_TELEFONO,3)||';'||TO_CHAR(DATA_CESS_DEF, 'yyyy-mm-dd')||';'||AOM_CESSAZIONE_MNP FROM MNP_CESSAZIONI_TEMP WHERE FLAG_CESS_DEF = 1 AND FLAG_LAVORATO = 1 AND DATA_CESS_DEF >= sysdate-31;
|
||||
|
||||
SPOOL off;
|
||||
12
dbcmnpsrc/FE/mnpapp/script/ProcessExecutor.sh
Normal file
12
dbcmnpsrc/FE/mnpapp/script/ProcessExecutor.sh
Normal file
@@ -0,0 +1,12 @@
|
||||
#!/bin/ksh
|
||||
THIS_PATH=`dirname $0`
|
||||
|
||||
check_node=`$THIS_PATH/TestNodo.sh`
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
echo "Nodo abilitato ad eseguire lo script"
|
||||
. $THIS_PATH/javaExec_unix.sh it.valueteam.crontab.processexecutor.client.SimpleRunProcess $1 $2 $3 $4 $5
|
||||
else
|
||||
echo "(WARNING) Nodo non abilitato ad eseguire script"
|
||||
fi
|
||||
26
dbcmnpsrc/FE/mnpapp/script/TestNodo.sh
Normal file
26
dbcmnpsrc/FE/mnpapp/script/TestNodo.sh
Normal file
@@ -0,0 +1,26 @@
|
||||
#!/bin/ksh
|
||||
|
||||
MASTER_NODE="dbcesefep1"
|
||||
THIS_NODE=`hostname`
|
||||
MASTER_ONLINE="-"$(/usr/es/sbin/cluster/utilities/clRGinfo | grep $MASTER_NODE | grep ONLINE | awk '{print $NF}')
|
||||
if [ "-"$FROM_GUI_DBC = "-true" ]
|
||||
then
|
||||
exit 0
|
||||
else
|
||||
if [ "-"$MASTER_NODE = $MASTER_ONLINE ]
|
||||
then
|
||||
if [ $THIS_NODE = $MASTER_NODE ]
|
||||
then
|
||||
exit 0
|
||||
else
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
if [ $THIS_NODE = $MASTER_NODE ]
|
||||
then
|
||||
exit 1
|
||||
else
|
||||
exit 0
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
161
dbcmnpsrc/FE/mnpapp/script/bonifiche/proc_recupero_dbcgo.sql
Normal file
161
dbcmnpsrc/FE/mnpapp/script/bonifiche/proc_recupero_dbcgo.sql
Normal file
@@ -0,0 +1,161 @@
|
||||
CREATE OR REPLACE procedure "DBCGO"."RECUPERO_DATI_DBCGO" IS
|
||||
|
||||
n_rec integer := 0;
|
||||
|
||||
CURSOR cur_recipient is
|
||||
SELECT ric_rec.ID_RICHIESTA AS idRichiesta,
|
||||
ric_rec.CODICE_OPERATORE_DON_EFF AS donorEffettivo,
|
||||
ric_rec.CODICE_OPERATORE_Donating AS donating
|
||||
FROM mnp.MNP_GESTIONE_RICHIESTA_REC@mnp ric_rec
|
||||
WHERE ric_rec.ID_RICHIESTA IN
|
||||
(
|
||||
'100000000016131405',
|
||||
'100000000016627720',
|
||||
'100000000016627726',
|
||||
'100000000016627740',
|
||||
'100000000016627757',
|
||||
'100000000016627763',
|
||||
'100000000016627801',
|
||||
'100000000016627838',
|
||||
'100000000016627856',
|
||||
'100000000016627870',
|
||||
'100000000016627882',
|
||||
'100000000016627903',
|
||||
'100000000016627906',
|
||||
'100000000016627924',
|
||||
'100000000016628044',
|
||||
'100000000016628202',
|
||||
'100000000016628646',
|
||||
'100000000016628790',
|
||||
'100000000016628963',
|
||||
'100000000016628964',
|
||||
'100000000016628965',
|
||||
'100000000016628966',
|
||||
'100000000016628968',
|
||||
'100000000016628978',
|
||||
'100000000016628979',
|
||||
'100000000016628980',
|
||||
'100000000016628981',
|
||||
'100000000016628982',
|
||||
'100000000016628983',
|
||||
'100000000016628984',
|
||||
'100000000016628985',
|
||||
'100000000016629015',
|
||||
'100000000016629016',
|
||||
'100000000016629017',
|
||||
'100000000016629018',
|
||||
'100000000016629019',
|
||||
'100000000016629020',
|
||||
'100000000016629021',
|
||||
'100000000016629023',
|
||||
'100000000016629578',
|
||||
'100000000016630795',
|
||||
'100000000016631043',
|
||||
'100000000016631539',
|
||||
'100000000016631594',
|
||||
'100000000016631612',
|
||||
'100000000016631639',
|
||||
'100000000016631786',
|
||||
'100000000016631871',
|
||||
'100000000016631962',
|
||||
'100000000016631990',
|
||||
'100000000016632070',
|
||||
'100000000016632384',
|
||||
'100000000016632428',
|
||||
'100000000016632483',
|
||||
'100000000016632562',
|
||||
'100000000016632576',
|
||||
'100000000016632623',
|
||||
'100000000016632689',
|
||||
'100000000016632693',
|
||||
'100000000016632710',
|
||||
'100000000016632722',
|
||||
'100000000016632729',
|
||||
'100000000016632783',
|
||||
'100000000016632836',
|
||||
'100000000016632951',
|
||||
'100000000016633009',
|
||||
'100000000016633028',
|
||||
'100000000016633059',
|
||||
'100000000016633073',
|
||||
'100000000016633288',
|
||||
'100000000016633300',
|
||||
'100000000016633376',
|
||||
'100000000016633427',
|
||||
'100000000016633461',
|
||||
'100000000016633491',
|
||||
'100000000016633620',
|
||||
'100000000016633628',
|
||||
'100000000016633634',
|
||||
'100000000016633646',
|
||||
'100000000016642436',
|
||||
'100000000016642437',
|
||||
'100000000016642438',
|
||||
'200000000016628527',
|
||||
'200000000016629615',
|
||||
'200000000016629827',
|
||||
'200000000016629828',
|
||||
'200000000016629840',
|
||||
'200000000016629845',
|
||||
'200000000016629849',
|
||||
'200000000016629888',
|
||||
'200000000016629891',
|
||||
'200000000016629936',
|
||||
'200000000016629954',
|
||||
'200000000016629971',
|
||||
'200000000016630067',
|
||||
'200000000016630135',
|
||||
'200000000016630441',
|
||||
'200000000016630461',
|
||||
'200000000016630517',
|
||||
'200000000016630794',
|
||||
'200000000016630796',
|
||||
'200000000016630797',
|
||||
'200000000016630819',
|
||||
'200000000016631726',
|
||||
'200000000016632879',
|
||||
'200000000016632896',
|
||||
'W00000000016630996',
|
||||
'W00000000016631246',
|
||||
'W00000000016631254',
|
||||
'W00000000016631301',
|
||||
'W00000000016631411',
|
||||
'W00000000016632875',
|
||||
'W00000000016633083',
|
||||
'W00000000016633161',
|
||||
'W00000000016633236'
|
||||
);
|
||||
|
||||
BEGIN
|
||||
|
||||
DBMS_OUTPUT.put_line ('recupero_dati_DBCGO: INIZIO PROCEDURA - '||TO_CHAR(sysdate,'YYYY-MM-DD HH24:MI:SS'));
|
||||
|
||||
|
||||
|
||||
FOR rec IN cur_recipient LOOP
|
||||
BEGIN
|
||||
n_rec := n_rec +1;
|
||||
-- Aggiorno solo se sono in presenza di operatore donor virtuale
|
||||
IF rec.donorEffettivo <> rec.donating
|
||||
THEN
|
||||
UPDATE DBCGO.DBCGO_GESTIONE_RICHIESTA_REC go_rec
|
||||
SET go_rec.CODICE_OPERATORE_V_DONOR = rec.donorEffettivo
|
||||
WHERE go_rec.ID_RICHIESTA = rec.idRichiesta AND
|
||||
go_rec.CODICE_OPERATORE_V_DONOR IS NULL;
|
||||
END IF;
|
||||
END;
|
||||
END LOOP;
|
||||
|
||||
COMMIT;
|
||||
|
||||
DBMS_OUTPUT.put_line ('recupero_dati_DBCGO: FINE PROCEDURA - '||' RECORDS TRATTATI: '||n_rec);
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
if cur_recipient%ISOPEN then CLOSE cur_recipient;
|
||||
end if;
|
||||
DBMS_OUTPUT.put_line ('Errore in recupero_dati_DBCGO ' || SQLERRM||' - '||to_char(sysdate,'YYYY-MM-DD HH24:MI:SS'));
|
||||
RETURN;
|
||||
|
||||
END;
|
||||
/
|
||||
27
dbcmnpsrc/FE/mnpapp/script/ccc_allineamento.sh
Normal file
27
dbcmnpsrc/FE/mnpapp/script/ccc_allineamento.sh
Normal file
@@ -0,0 +1,27 @@
|
||||
#!/bin/ksh
|
||||
|
||||
###########################################################
|
||||
# Progetto: Gateway MNP
|
||||
# Script: ccc_allineamento
|
||||
# Descrizione: Allineamento dati da CCC
|
||||
###########################################################
|
||||
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/setEnv.sh
|
||||
|
||||
THIS=`basename $0 .sh`
|
||||
LOG=$MNP_LOG_SCRIPT_HOME/$THIS.log
|
||||
|
||||
adesso=$(date)
|
||||
|
||||
#controllo se lo script è già in esecuzione
|
||||
|
||||
check_rc=`$THIS_PATH/is_Running_Script $THIS $$`
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
echo '******' $adesso Eseguo AllineamentoPDVISTATDaCCC >> $LOG
|
||||
$THIS_PATH/ProcessExecutor.sh mnp.batch.AllineamentoPDVISTATDaCCC >> $LOG
|
||||
else
|
||||
echo " (WARNING) $(date) Esecuzione non avvenuta per presenza processo precedente : $prog" >> $LOG
|
||||
fi
|
||||
14
dbcmnpsrc/FE/mnpapp/script/change_pwd.sh
Normal file
14
dbcmnpsrc/FE/mnpapp/script/change_pwd.sh
Normal file
@@ -0,0 +1,14 @@
|
||||
#!/bin/ksh
|
||||
|
||||
###########################################################
|
||||
# Progetto: Gateway MNP
|
||||
# Script: change_pwd
|
||||
# Descrizione: Applicazione per modificare una password criptata in un file di properties
|
||||
#
|
||||
###########################################################
|
||||
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/setEnv.sh
|
||||
|
||||
adesso=$(date)
|
||||
$THIS_PATH/javaExec_unix.sh it.valueteam.securityutility.ChangePassword $1 $2
|
||||
17
dbcmnpsrc/FE/mnpapp/script/cmd/CRMB_MNP.ctl
Normal file
17
dbcmnpsrc/FE/mnpapp/script/cmd/CRMB_MNP.ctl
Normal file
@@ -0,0 +1,17 @@
|
||||
LOAD data
|
||||
|
||||
APPEND
|
||||
into table MNP_APPO_TIPO_CLIENTI
|
||||
FIELDS TERMINATED BY X'09' OPTIONALLY ENCLOSED BY '"'
|
||||
(
|
||||
MSISDN POSITION(1:15) "'39' || :MSISDN",
|
||||
MARCAGGIO POSITION(17:18),
|
||||
SOTTOMARCAGGIO POSITION(19:19),
|
||||
NOME_OT POSITION(20:21),
|
||||
TIPO_UTENZA POSITION(22:22),
|
||||
SISTEMA_COMPETENZA POSITION(23:27),
|
||||
UTENZA_DUAL POSITION(28:42),
|
||||
CF POSITION(44:59),
|
||||
ICCID POSITION(60:79),
|
||||
STATO POSITION(80:86)
|
||||
)
|
||||
16
dbcmnpsrc/FE/mnpapp/script/cmd/DBSS_UTENZE_MNP.ctl
Normal file
16
dbcmnpsrc/FE/mnpapp/script/cmd/DBSS_UTENZE_MNP.ctl
Normal file
@@ -0,0 +1,16 @@
|
||||
LOAD data
|
||||
|
||||
APPEND
|
||||
into table MNP_APPO_TIPO_CLIENTI_DBSS
|
||||
FIELDS TERMINATED BY X'09' OPTIONALLY ENCLOSED BY '"'
|
||||
( MSISDN POSITION(1:15) "'39' || :MSISDN",
|
||||
MARCAGGIO POSITION(17:18),
|
||||
SOTTOMARCAGGIO POSITION(19:19),
|
||||
NOME_OT POSITION(20:21),
|
||||
TIPO_UTENZA POSITION(22:22),
|
||||
SISTEMA_COMPETENZA POSITION(23:27),
|
||||
UTENZA_DUAL POSITION(28:42),
|
||||
CF POSITION(44:59),
|
||||
ICCID POSITION(60:79),
|
||||
STATO POSITION(80:86)
|
||||
)
|
||||
7
dbcmnpsrc/FE/mnpapp/script/cmd/dbc_infasamento_pccom.ctl
Normal file
7
dbcmnpsrc/FE/mnpapp/script/cmd/dbc_infasamento_pccom.ctl
Normal file
@@ -0,0 +1,7 @@
|
||||
LOAD DATA
|
||||
TRUNCATE
|
||||
INTO TABLE MNP_PCCOM_VARIAZIONI
|
||||
FIELDS TERMINATED BY "$"
|
||||
(NUM_TEL,
|
||||
DATA_ATTIVAZIONE DATE 'YYYYMMDD',
|
||||
DATA_CESSAZIONE DATE 'YYYYMMDD')
|
||||
8
dbcmnpsrc/FE/mnpapp/script/cmd/dbc_variazione.ctl
Normal file
8
dbcmnpsrc/FE/mnpapp/script/cmd/dbc_variazione.ctl
Normal file
@@ -0,0 +1,8 @@
|
||||
LOAD DATA
|
||||
TRUNCATE
|
||||
INTO TABLE MNP_DBC_VARIAZIONE_OLO
|
||||
FIELDS TERMINATED BY ";"
|
||||
(TIPO_RECORD CONSTANT "V",
|
||||
NUM_TEL,
|
||||
DATA DATE 'DD/MM/YYYY',
|
||||
RECIPIENT_NEW)
|
||||
35
dbcmnpsrc/FE/mnpapp/script/crea_file_monitor_sm.sh
Normal file
35
dbcmnpsrc/FE/mnpapp/script/crea_file_monitor_sm.sh
Normal file
@@ -0,0 +1,35 @@
|
||||
#!/bin/ksh
|
||||
|
||||
##########################################################################################################################
|
||||
# Progetto: Gateway MNP
|
||||
# Script: crea_file_monitor_sm.sh
|
||||
# Descrizione: Applicazione per la creazione del flusso
|
||||
# del sistema SM
|
||||
# Utilizzo: 0 parametri o 3 parametri
|
||||
# - senza parametri crea il flusso con intervallo di riferimento [sysdate-7, sysdate]]
|
||||
# - [DATE_RELATIVE|DATE_ASSOLUTE] se impostato a DATE_RELATIVE i parametri sono il numero di giorni rispetto a sysdate
|
||||
# se impostato a DATE_ASSOLUTE i parametri sono le date in formato dd/MM/yyyy
|
||||
# es. 1) ./crea_file_monitor_sm.sh --> genera il file per l'intervallo di date [sysdate-7, sysdate]
|
||||
# 2) ./crea_file_monitor_sm.sh DATE_RELATIVE -5 -2 --> genera il file per le date sysdate-5, sysdate-2
|
||||
# 3) ./crea_file_monitor_sm.sh DATE_ASSOLUTE 10/12/2012 31/12/2012 --> genera il file per le date 10/12/2012, 31/12/2012
|
||||
##########################################################################################################################
|
||||
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/setEnv.sh
|
||||
|
||||
THIS=`basename $0 .sh`
|
||||
LOG=$MNP_LOG_SCRIPT_HOME/$THIS.log
|
||||
|
||||
adesso=$(date)
|
||||
|
||||
#controllo se lo script è già in esecuzione
|
||||
|
||||
check_rc=`$THIS_PATH/is_Running_Script $THIS $$`
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
echo '******' $adesso Eseguo creazione flusso per sistema SM >> $LOG
|
||||
$THIS_PATH/ProcessExecutor.sh mnp.internalflow.out.MonitoraggioSMOut $* >> $LOG
|
||||
else
|
||||
echo " (WARNING) $(date) Esecuzione non avvenuta per presenza processo precedente : $prog" >> $LOG
|
||||
fi
|
||||
50
dbcmnpsrc/FE/mnpapp/script/crea_file_una_tantum_pccom.sh
Normal file
50
dbcmnpsrc/FE/mnpapp/script/crea_file_una_tantum_pccom.sh
Normal file
@@ -0,0 +1,50 @@
|
||||
#
|
||||
# Shell Script per creazione file finale per PCCOM.
|
||||
# E' un flusso una tantum.
|
||||
#
|
||||
#
|
||||
#!/usr/bin/ksh
|
||||
#
|
||||
#set -x
|
||||
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/setEnv.sh
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
# ESECUZIONE SCRIPT
|
||||
|
||||
# directory in cui sono presenti i files control (CTL)
|
||||
CMD=$MNP_SCRIPT_CMD_HOME
|
||||
|
||||
#directory in cui sono presenti gli script sql
|
||||
SQL=$MNP_SCRIPT_SQL_HOME
|
||||
|
||||
#directory in cui sono presenti i file dati
|
||||
DAT=$MNP_SCRIPT_TMP_HOME
|
||||
|
||||
#directory in cui eseguire il backup dei file acquisiti correttamente
|
||||
BACKUP_BAD=$MNP_SCRIPT_TMP_HOME
|
||||
BACKUP_DISCARD=$MNP_SCRIPT_TMP_HOME
|
||||
|
||||
#directory in cui scrivere i files di Log
|
||||
LOG=$MNP_LOG_SCRIPT_HOME
|
||||
APPLICATION_LOG=$MNP_LOG_APP_HOME
|
||||
|
||||
file_di_log=crea_file_una_tantum_pccom.log
|
||||
|
||||
FILE_NAME=UTENZE_CESSATE_MNP.CSV
|
||||
|
||||
echo $MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $SQL/creazione_una_tantum_pccom.sql >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
|
||||
$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus $SQL/creazione_una_tantum_pccom.sql >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
|
||||
echo Compressione file creato
|
||||
|
||||
gzip $MNP_GWMNP_HOME/FTPOUT/$FILE_NAME
|
||||
|
||||
echo File compresso
|
||||
|
||||
fi
|
||||
echo "Processo terminato" >> $APPLICATION_LOG/$file_di_log 2>&1
|
||||
echo "Processo terminato"
|
||||
33
dbcmnpsrc/FE/mnpapp/script/crea_flussi_dwo.sh
Normal file
33
dbcmnpsrc/FE/mnpapp/script/crea_flussi_dwo.sh
Normal file
@@ -0,0 +1,33 @@
|
||||
#!/bin/ksh
|
||||
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/setEnv.sh
|
||||
|
||||
THIS=`basename $0 .sh`
|
||||
LOG=$MNP_LOG_SCRIPT_HOME/$THIS.log
|
||||
|
||||
USAGE="sintassi: $0 [t] [n]\n\tt = 1|2|3|4|5 rispettivamente per Attivazioni Cassa - Attivazioni Competenza - Cessazioni cassa - Cessazioni Competenza - Tutti i flussi\n\tn = Intero > 0: Numero di giorni precedenti alla data odierna su cui effettuare l'estrazione"
|
||||
|
||||
|
||||
adesso=$(date)
|
||||
|
||||
#controllo se lo script è già in esecuzione
|
||||
|
||||
check_rc=`$THIS_PATH/is_Running_Script $THIS $$`
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
|
||||
if (($# != 2)) || (($1 < 1)) || (($1 > 5)) || (($2 < 1))
|
||||
then
|
||||
echo $USAGE
|
||||
exit
|
||||
fi
|
||||
|
||||
|
||||
|
||||
echo '******' $adesso Eseguo recupero code XML >> $LOG
|
||||
$THIS_PATH/ProcessExecutor.sh mnp.internalflow.out.FlussiDWOOut $* >> $LOG
|
||||
else
|
||||
echo " (WARNING) $(date) Esecuzione non avvenuta per presenza processo precedente : $prog" >> $LOG
|
||||
fi
|
||||
33
dbcmnpsrc/FE/mnpapp/script/crea_flusso_sharepoint.sh
Normal file
33
dbcmnpsrc/FE/mnpapp/script/crea_flusso_sharepoint.sh
Normal file
@@ -0,0 +1,33 @@
|
||||
#!/bin/ksh
|
||||
|
||||
THIS_PATH=`dirname $0`
|
||||
. $THIS_PATH/setEnv.sh
|
||||
|
||||
THIS=`basename $0 .sh`
|
||||
LOG=$MNP_LOG_SCRIPT_HOME/$THIS.log
|
||||
|
||||
USAGE="sintassi: $0 [n]\n\tn = Intero > 0: Numero di giorni precedenti alla data odierna su cui effettuare l'estrazione"
|
||||
|
||||
|
||||
adesso=$(date)
|
||||
|
||||
#controllo se lo script è già in esecuzione
|
||||
|
||||
check_rc=`$THIS_PATH/is_Running_Script $THIS $$`
|
||||
|
||||
if [ $? -eq 0 ]
|
||||
then
|
||||
|
||||
if (($# != 1)) || (($1 < 0))
|
||||
then
|
||||
echo $USAGE
|
||||
exit
|
||||
fi
|
||||
|
||||
|
||||
|
||||
echo '******' $adesso Eseguo recupero code XML >> $LOG
|
||||
$THIS_PATH/ProcessExecutor.sh mnp.internalflow.out.FlussoSharePointOut $* >> $LOG
|
||||
else
|
||||
echo " (WARNING) $(date) Esecuzione non avvenuta per presenza processo precedente : $prog" >> $LOG
|
||||
fi
|
||||
@@ -0,0 +1,21 @@
|
||||
--execute as DBC
|
||||
|
||||
spool /mnpapp/log/script/dbc200701.log;
|
||||
|
||||
-----------------------------
|
||||
--CREATE/MODIFY OBJECT
|
||||
|
||||
@@dbcDDL.sql
|
||||
|
||||
-----------------------------
|
||||
--INSERT/UPDATE DATA
|
||||
|
||||
@@dbcDML.sql
|
||||
|
||||
-----------------------------
|
||||
--COMPILE PROCEDURE
|
||||
|
||||
--@/mnpapp/dbcgo/script/procedure/dbcgo/Util.jsp
|
||||
--show err
|
||||
|
||||
spool off;
|
||||
@@ -0,0 +1,5 @@
|
||||
--da eseguire come utente MNP
|
||||
|
||||
-- integrazione PCS - cancellazione della tabella MNP_UTENTI
|
||||
DROP TABLE MNP_UTENTI;
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
--da eseguire come utente MNP
|
||||
|
||||
-------------------------------------------------------------------------
|
||||
|
||||
--elimino i record riferiti ad azioni non più esistenti dopo l'integrazione con PCS
|
||||
delete from MNP_LOV where LOV_NAME='LOG_ACTION' and NAME in ('25','26','27','28','29','30','31','32');
|
||||
|
||||
commit;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
--execute as DBC
|
||||
|
||||
spool /mnpapp/log/script/dbc_Extra_Kit_aprile_10.log;
|
||||
|
||||
-----------------------------
|
||||
--CREATE/MODIFY OBJECT
|
||||
|
||||
@@dbcDDL.sql
|
||||
|
||||
-----------------------------
|
||||
--INSERT/UPDATE DATA
|
||||
|
||||
@@dbcDML.sql
|
||||
|
||||
-----------------------------
|
||||
|
||||
spool off;
|
||||
@@ -0,0 +1,29 @@
|
||||
--Eseguire come utente MNP
|
||||
|
||||
-- TABELLA NOTIFICA DBCFX --
|
||||
|
||||
CREATE TABLE MNP_DBCFX_DPP_OUT (
|
||||
UNIQUE_ID NUMBER NOT NULL,
|
||||
ID_RICHIESTA VARCHAR2(23) NOT NULL,
|
||||
DATA_CREAZIONE DATE DEFAULT SYSDATE NOT NULL,
|
||||
DATA_NOTIFICA DATE,
|
||||
DA_SCODARE NUMBER(1) NOT NULL,
|
||||
PROCESSO VARCHAR2(1) NOT NULL,
|
||||
DCO VARCHAR2(10) NOT NULL,
|
||||
MSISDN VARCHAR2(13) NOT NULL,
|
||||
CODICE_OPERATORE_RECIPIENT VARCHAR2(4) NOT NULL,
|
||||
RGN_RECIPIENT VARCHAR2(3) NOT NULL
|
||||
)
|
||||
TABLESPACE TAB_HUGE_2;
|
||||
|
||||
ALTER TABLE MNP_DBCFX_DPP_OUT ADD
|
||||
CONSTRAINT PK_MNP_DBCFX_DPP_OUT
|
||||
PRIMARY KEY
|
||||
(UNIQUE_ID)
|
||||
USING INDEX
|
||||
TABLESPACE TAB_IDX_HUGE_2_2;
|
||||
|
||||
|
||||
-- SEQUENCE --
|
||||
|
||||
CREATE SEQUENCE SEQ_DBCFX_DPP_OUT;
|
||||
@@ -0,0 +1,11 @@
|
||||
--aggiunta log mdb dbcfx out
|
||||
INSERT INTO MNP_ANAGRAFICA_PROCESSO (CODICE_PROCESSO,NOME_PROCESSO) VALUES ('RC', 'MessageConsumerEjbDbcfxOutBean');
|
||||
|
||||
INSERT INTO MNP_PROCESSO_LOG(CODICE_PROCESSO, CODICE_LOG, LOG_ON, TIPO_EVENTO)
|
||||
SELECT 'RC', CODICE_LOG, 1, '00'
|
||||
FROM MNP_ANAGRAFICA_LOG
|
||||
WHERE CODICE_LOG LIKE '00%';
|
||||
INSERT INTO MNP_PROCESSO_LOG(CODICE_PROCESSO, CODICE_LOG, LOG_ON, TIPO_EVENTO)
|
||||
VALUES('RC', '9999', 1, '00');
|
||||
|
||||
COMMIT;
|
||||
@@ -0,0 +1,10 @@
|
||||
---ESEGUIRE COME UTENTE DBCGO
|
||||
|
||||
CREATE OR REPLACE VIEW MNP_REPORT_AGCOM_VIEW
|
||||
(MESEANNO, TIPO_REPORT, CSV1, CSV2, CSV3,
|
||||
DATA_CREAZIONE, IDROW)
|
||||
AS
|
||||
((SELECT a.mese ||'/'|| a.anno as annomese, a.tipo, a.csv1, a.csv2, a.csv3, a.data_creazione, rownum as idrow
|
||||
FROM mnp_report_agcom_view@dwh a))
|
||||
/
|
||||
|
||||
@@ -0,0 +1,315 @@
|
||||
CREATE TABLE MNP_BIT_OUT_REC_NEW
|
||||
(
|
||||
ID_PROG NUMBER(18) NOT NULL,
|
||||
ID_RICHIESTA VARCHAR2(18 BYTE) NOT NULL,
|
||||
STATO_RICHIESTA VARCHAR2(30 BYTE) NOT NULL,
|
||||
CAUSALE_RIFIUTO VARCHAR2(1000 BYTE),
|
||||
DATA_ORA_EFFETTIVA_VALIDAZIONE DATE,
|
||||
DATA_CUT_OVER DATE,
|
||||
NOME_FILE VARCHAR2(50 BYTE),
|
||||
DA_INVIARE NUMBER(1) DEFAULT 0 NOT NULL,
|
||||
TIPO_FILE NUMBER(1),
|
||||
ID_RICHIESTA_DBC VARCHAR2(23 BYTE) NOT NULL,
|
||||
DATA_INVIO DATE DEFAULT SYSDATE NOT NULL,
|
||||
UNIQUE_ID VARCHAR2(50 BYTE),
|
||||
DA_SCODARE NUMBER(1) DEFAULT 0 NOT NULL,
|
||||
NOME_FILE_TP VARCHAR2(28 BYTE),
|
||||
TIPO_SPEDIZIONE VARCHAR2(2 BYTE) DEFAULT NULL NOT NULL,
|
||||
CREDITO VARCHAR2(8 BYTE),
|
||||
DATA_NOTIFICA_CREDITO VARCHAR2(8 BYTE),
|
||||
ORA_NOTIFICA_CREDITO VARCHAR2(5 BYTE),
|
||||
DATA_INVIO_EFFETTIVA DATE
|
||||
)
|
||||
TABLESPACE TAB_MEDIUM
|
||||
NOLOGGING
|
||||
NOCOMPRESS
|
||||
NOCACHE
|
||||
NOPARALLEL
|
||||
NOMONITORING;
|
||||
|
||||
ALTER TABLE MNP_BIT_OUT_REC_NEW ADD (
|
||||
CONSTRAINT PK_BIT_OUT_REC_NEW
|
||||
PRIMARY KEY
|
||||
(ID_PROG)
|
||||
USING INDEX
|
||||
TABLESPACE TAB_IDX_MEDIUM
|
||||
PCTFREE 10
|
||||
INITRANS 2
|
||||
MAXTRANS 255
|
||||
STORAGE (
|
||||
INITIAL 384M
|
||||
NEXT 64M
|
||||
MINEXTENTS 1
|
||||
MAXEXTENTS UNLIMITED
|
||||
PCTINCREASE 0
|
||||
));
|
||||
|
||||
CREATE INDEX IDX_MNP_BIT_OUT_REC_NEW ON MNP_BIT_OUT_REC_NEW
|
||||
(UNIQUE_ID)
|
||||
LOGGING
|
||||
TABLESPACE TAB_IDX_BIG
|
||||
PCTFREE 10
|
||||
INITRANS 2
|
||||
MAXTRANS 255
|
||||
STORAGE (
|
||||
INITIAL 128M
|
||||
NEXT 128M
|
||||
MINEXTENTS 1
|
||||
MAXEXTENTS UNLIMITED
|
||||
PCTINCREASE 0
|
||||
BUFFER_POOL DEFAULT
|
||||
)
|
||||
NOPARALLEL;
|
||||
|
||||
|
||||
CREATE INDEX IDX_MNP_BIT_OUT_REC_NEW1 ON MNP_BIT_OUT_REC_NEW
|
||||
(ID_RICHIESTA_DBC)
|
||||
LOGGING
|
||||
TABLESPACE TAB_IDX_BIG
|
||||
PCTFREE 10
|
||||
INITRANS 2
|
||||
MAXTRANS 255
|
||||
STORAGE (
|
||||
INITIAL 128M
|
||||
NEXT 128M
|
||||
MINEXTENTS 1
|
||||
MAXEXTENTS UNLIMITED
|
||||
PCTINCREASE 0
|
||||
BUFFER_POOL DEFAULT
|
||||
)
|
||||
NOPARALLEL;
|
||||
|
||||
|
||||
CREATE TABLE MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
(
|
||||
ID_PROG NUMBER(18) NOT NULL,
|
||||
ID_RICHIESTA VARCHAR2(23 BYTE) NOT NULL,
|
||||
CODICE_EVENTO VARCHAR2(2 BYTE) NOT NULL,
|
||||
NUMERO_TELEFONICO_OLO VARCHAR2(13 BYTE),
|
||||
NUMERO_DUALE VARCHAR2(13 BYTE),
|
||||
OPERATORE VARCHAR2(20 BYTE),
|
||||
IDENTIFICATIVO_RICHIESTA_AOM VARCHAR2(64 BYTE) NOT NULL,
|
||||
TIPO_RICHIESTA VARCHAR2(50 BYTE),
|
||||
CODICE_FISCALE_PARTITA_IVA VARCHAR2(16 BYTE),
|
||||
TECNOLOGIA VARCHAR2(50 BYTE),
|
||||
TIPOLOGIA_UTENZA VARCHAR2(50 BYTE),
|
||||
DATA_VALIDAZIONE DATE,
|
||||
ICCD_SERIAL_NUMBER VARCHAR2(30 BYTE),
|
||||
STATO VARCHAR2(50 BYTE) NOT NULL,
|
||||
CAUSALE VARCHAR2(1000 BYTE),
|
||||
DATA_MODIFICA_STATO DATE NOT NULL,
|
||||
NOTE VARCHAR2(400 BYTE),
|
||||
DATA_INVIO DATE DEFAULT NULL,
|
||||
TIPO_PROCESSO VARCHAR2(2 BYTE),
|
||||
DATA_INSERIMENTO DATE DEFAULT SYSDATE NOT NULL,
|
||||
UNIQUE_ID VARCHAR2(50 BYTE),
|
||||
DA_SCODARE NUMBER(1) DEFAULT 0 NOT NULL,
|
||||
CODICE_GRUPPO VARCHAR2(16 BYTE),
|
||||
DATA_CUT_OVER DATE,
|
||||
CODICE_DEALER VARCHAR2(10 BYTE),
|
||||
FLAG_TC VARCHAR2(1 BYTE) DEFAULT 'N' NOT NULL,
|
||||
CREDITO VARCHAR2(8 BYTE),
|
||||
FLAG_FURTO VARCHAR2(1 BYTE) DEFAULT 'N' NOT NULL,
|
||||
PROGETTOADHOC VARCHAR2(1 BYTE)
|
||||
)
|
||||
TABLESPACE TAB_HUGE_2
|
||||
NOLOGGING
|
||||
NOCOMPRESS
|
||||
NOCACHE
|
||||
NOPARALLEL
|
||||
NOMONITORING;
|
||||
|
||||
ALTER TABLE MNP_CCRM_NOTIFICA_OUT_NEW ADD (
|
||||
CONSTRAINT PK_CCRM_NOTIFICA_OUT_NEW
|
||||
PRIMARY KEY
|
||||
(ID_PROG)
|
||||
USING INDEX
|
||||
TABLESPACE TAB_IDX_HUGE_2_2
|
||||
PCTFREE 10
|
||||
INITRANS 2
|
||||
MAXTRANS 255
|
||||
STORAGE (
|
||||
INITIAL 512M
|
||||
NEXT 512M
|
||||
MINEXTENTS 1
|
||||
MAXEXTENTS UNLIMITED
|
||||
PCTINCREASE 0
|
||||
));
|
||||
|
||||
CREATE INDEX IDX_CCRM_NOTIFICA_OUT_NEW3 ON MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
(ID_RICHIESTA)
|
||||
LOGGING
|
||||
TABLESPACE TAB_IDX_HUGE_2_2
|
||||
PCTFREE 10
|
||||
INITRANS 2
|
||||
MAXTRANS 255
|
||||
STORAGE (
|
||||
INITIAL 512M
|
||||
NEXT 512M
|
||||
MINEXTENTS 1
|
||||
MAXEXTENTS UNLIMITED
|
||||
PCTINCREASE 0
|
||||
BUFFER_POOL DEFAULT
|
||||
)
|
||||
NOPARALLEL;
|
||||
|
||||
CREATE INDEX MNP_CCRM_NOTIFICA_OUT_NEW2 ON MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
(UNIQUE_ID)
|
||||
LOGGING
|
||||
TABLESPACE TAB_IDX_BIG
|
||||
PCTFREE 10
|
||||
INITRANS 2
|
||||
MAXTRANS 255
|
||||
STORAGE (
|
||||
INITIAL 128M
|
||||
NEXT 128M
|
||||
MINEXTENTS 1
|
||||
MAXEXTENTS UNLIMITED
|
||||
PCTINCREASE 0
|
||||
BUFFER_POOL DEFAULT
|
||||
)
|
||||
NOPARALLEL;
|
||||
|
||||
|
||||
CREATE TABLE MNP_CIRCE_OUT_NEW
|
||||
(
|
||||
CODICE_OPERATORE_RECIPIENT VARCHAR2(4 BYTE) NOT NULL,
|
||||
CODICE_OPERATORE_DONATING VARCHAR2(4 BYTE) NOT NULL,
|
||||
MSISDN_A VARCHAR2(15 BYTE) NOT NULL,
|
||||
DATA_CUT_OVER VARCHAR2(10 BYTE) NOT NULL,
|
||||
ID_PROG NUMBER(18) NOT NULL,
|
||||
DA_INVIARE NUMBER(1) NOT NULL,
|
||||
MSISDN_B VARCHAR2(15 BYTE),
|
||||
MSISDN_C VARCHAR2(15 BYTE),
|
||||
NOME_FILE VARCHAR2(40 BYTE),
|
||||
DATA_VALIDAZIONE_RICHIESTA VARCHAR2(10 BYTE) NOT NULL,
|
||||
STATO VARCHAR2(2 BYTE) NOT NULL,
|
||||
TECNOLOGIA VARCHAR2(1 BYTE) NOT NULL,
|
||||
ID_RICHIESTA VARCHAR2(23 BYTE) NOT NULL,
|
||||
IMSI VARCHAR2(15 BYTE) NOT NULL,
|
||||
TIPO_FILE NUMBER(2),
|
||||
DATA_CREAZIONE DATE DEFAULT SYSDATE NOT NULL
|
||||
)
|
||||
TABLESPACE TAB_MEDIUM
|
||||
NOLOGGING
|
||||
NOCOMPRESS
|
||||
NOCACHE
|
||||
NOPARALLEL
|
||||
NOMONITORING;
|
||||
|
||||
|
||||
ALTER TABLE MNP_CIRCE_OUT_NEW ADD (
|
||||
CONSTRAINT PK_CIRCE_OUT_NEW
|
||||
PRIMARY KEY
|
||||
(ID_PROG)
|
||||
USING INDEX
|
||||
TABLESPACE TAB_IDX_MEDIUM
|
||||
PCTFREE 10
|
||||
INITRANS 2
|
||||
MAXTRANS 255
|
||||
STORAGE (
|
||||
INITIAL 384M
|
||||
NEXT 64M
|
||||
MINEXTENTS 1
|
||||
MAXEXTENTS UNLIMITED
|
||||
PCTINCREASE 0
|
||||
));
|
||||
|
||||
CREATE INDEX IDX_MNP_CIRCE_OUT_NEW1 ON MNP_CIRCE_OUT_NEW
|
||||
(ID_RICHIESTA)
|
||||
LOGGING
|
||||
TABLESPACE TAB_IDX_BIG
|
||||
PCTFREE 10
|
||||
INITRANS 2
|
||||
MAXTRANS 255
|
||||
STORAGE (
|
||||
INITIAL 128M
|
||||
NEXT 128M
|
||||
MINEXTENTS 1
|
||||
MAXEXTENTS UNLIMITED
|
||||
PCTINCREASE 0
|
||||
BUFFER_POOL DEFAULT
|
||||
)
|
||||
NOPARALLEL;
|
||||
|
||||
|
||||
|
||||
CREATE TABLE MNP_CIRCE_OUT_REC_NEW
|
||||
(
|
||||
ID_PROG NUMBER(18) NOT NULL,
|
||||
CODICE_OPERATORE_RECIPIENT VARCHAR2(4 BYTE) NOT NULL,
|
||||
CODICE_OPERATORE_DONATING VARCHAR2(4 BYTE) NOT NULL,
|
||||
MSISDN_A VARCHAR2(15 BYTE) NOT NULL,
|
||||
DATA_CUT_OVER VARCHAR2(10 BYTE) NOT NULL,
|
||||
DA_INVIARE NUMBER(1) NOT NULL,
|
||||
MSISDN_B VARCHAR2(15 BYTE),
|
||||
MSISDN_C VARCHAR2(15 BYTE),
|
||||
NOME_FILE VARCHAR2(60 BYTE),
|
||||
DATA_VALIDAZIONE_RICHIESTA VARCHAR2(10 BYTE) NOT NULL,
|
||||
STATO VARCHAR2(2 BYTE) NOT NULL,
|
||||
TECNOLOGIA VARCHAR2(1 BYTE) NOT NULL,
|
||||
ID_RICHIESTA VARCHAR2(23 BYTE) NOT NULL,
|
||||
IMSI VARCHAR2(15 BYTE) NOT NULL,
|
||||
TIPO_FILE NUMBER(2),
|
||||
DATA_CREAZIONE DATE DEFAULT SYSDATE NOT NULL
|
||||
)
|
||||
TABLESPACE TAB_MEDIUM
|
||||
NOLOGGING
|
||||
NOCOMPRESS
|
||||
NOCACHE
|
||||
NOPARALLEL
|
||||
NOMONITORING;
|
||||
|
||||
ALTER TABLE MNP_CIRCE_OUT_REC_NEW ADD (
|
||||
CONSTRAINT PK_CIRCE_OUT_REC_NEW
|
||||
PRIMARY KEY
|
||||
(ID_PROG)
|
||||
USING INDEX
|
||||
TABLESPACE TAB_IDX_MEDIUM
|
||||
PCTFREE 10
|
||||
INITRANS 2
|
||||
MAXTRANS 255
|
||||
STORAGE (
|
||||
INITIAL 64M
|
||||
NEXT 64M
|
||||
MINEXTENTS 1
|
||||
MAXEXTENTS UNLIMITED
|
||||
PCTINCREASE 0
|
||||
));
|
||||
|
||||
|
||||
CREATE INDEX IDX_MNP_CIRCE_OUT_REC_NEW1 ON MNP_CIRCE_OUT_REC_NEW
|
||||
(ID_RICHIESTA)
|
||||
LOGGING
|
||||
TABLESPACE TAB_IDX_BIG
|
||||
PCTFREE 10
|
||||
INITRANS 2
|
||||
MAXTRANS 255
|
||||
STORAGE (
|
||||
INITIAL 128M
|
||||
NEXT 128M
|
||||
MINEXTENTS 1
|
||||
MAXEXTENTS UNLIMITED
|
||||
PCTINCREASE 0
|
||||
BUFFER_POOL DEFAULT
|
||||
)
|
||||
NOPARALLEL;
|
||||
|
||||
CREATE INDEX IDX_MNP_CIRCE_OUT_REC_NEW2 ON MNP_CIRCE_OUT_REC_NEW
|
||||
(DA_INVIARE,TIPO_FILE)
|
||||
LOGGING
|
||||
TABLESPACE TAB_IDX_BIG
|
||||
PCTFREE 10
|
||||
INITRANS 2
|
||||
MAXTRANS 255
|
||||
STORAGE (
|
||||
INITIAL 128M
|
||||
NEXT 10M
|
||||
MINEXTENTS 1
|
||||
MAXEXTENTS UNLIMITED
|
||||
PCTINCREASE 0
|
||||
FREELISTS 1
|
||||
FREELIST GROUPS 1
|
||||
BUFFER_POOL DEFAULT
|
||||
)
|
||||
NOPARALLEL;
|
||||
@@ -0,0 +1,352 @@
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC1);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC2);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC3);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC4);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC5);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC6);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC7);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC8);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC9);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC10);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC11);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC12);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC13);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC14);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC15);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC16);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC17);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC18);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC19);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC20);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC21);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_BIT_OUT_REC_NEW
|
||||
select * from MNP_BIT_OUT_REC partition (MNP_BIT_OUT_REC_MAX);
|
||||
commit;
|
||||
|
||||
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT1);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT2);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT3);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT4);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT5);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT6);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT7);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT8);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT9);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT10);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT11);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT12);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT13);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT14);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT15);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT16);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT17);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT18);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT19);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT20);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CCRM_NOTIFICA_OUT_NEW
|
||||
select * from MNP_CCRM_NOTIFICA_OUT partition (MNP_CCRM_NOTIFICA_OUT_MAX);
|
||||
commit;
|
||||
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT1);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT2);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT3);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT4);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT5);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT6);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT7);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT8);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT9);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT10);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT11);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT12);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT13);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT14);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT15);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT16);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT17);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT18);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT19);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT20);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT21);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_NEW
|
||||
select * from MNP_CIRCE_OUT partition (MNP_CIRCE_OUT_MAX);
|
||||
commit;
|
||||
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC1);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC2);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC3);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC4);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC5);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC6);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC7);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC8);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC9);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC10);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC11);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC12);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC13);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC14);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC15);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC16);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC17);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC18);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC19);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC20);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC21);
|
||||
commit;
|
||||
|
||||
insert /* +APPEND */ into MNP_CIRCE_OUT_REC_NEW
|
||||
select * from MNP_CIRCE_OUT_REC partition (MNP_CIRCE_OUT_REC_MAX);
|
||||
commit;
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
alter table MNP_BIT_OUT_REC rename to MNP_BIT_OUT_REC_OLD;
|
||||
alter table MNP_CCRM_NOTIFICA_OUT rename to MNP_CCRM_NOTIFICA_OUT_OLD;
|
||||
alter table MNP_CIRCE_OUT rename to MNP_CIRCE_OUT_OLD;
|
||||
alter table MNP_CIRCE_OUT_REC rename to MNP_CIRCE_OUT_REC_OLD;
|
||||
|
||||
alter table MNP_BIT_OUT_REC_NEW rename to MNP_BIT_OUT_REC;
|
||||
alter table MNP_CCRM_NOTIFICA_OUT_NEW rename to MNP_CCRM_NOTIFICA_OUT;
|
||||
alter table MNP_CIRCE_OUT_NEW rename to MNP_CIRCE_OUT;
|
||||
alter table MNP_CIRCE_OUT_REC_NEW rename to MNP_CIRCE_OUT_REC;
|
||||
|
||||
PROMPT RECORD MNP_BIT_OUT OLD E NEW
|
||||
SELECT COUNT(*) NUM_REC FROM MNP_BIT_OUT_REC_OLD
|
||||
UNION
|
||||
SELECT COUNT(*) NUM_REC FROM MNP_BIT_OUT_REC;
|
||||
|
||||
PROMPT RECORD MNP_CCRM_NOTIFICA_OUT OLD E NEW
|
||||
SELECT COUNT(*) NUM_REC FROM MNP_CCRM_NOTIFICA_OUT_OLD
|
||||
UNION
|
||||
SELECT COUNT(*) NUM_REC FROM MNP_CCRM_NOTIFICA_OUT;
|
||||
|
||||
PROMPT RECORD MNP_CIRCE_OUT OLD E NEW
|
||||
SELECT COUNT(*) NUM_REC FROM MNP_CIRCE_OUT_OLD
|
||||
UNION
|
||||
SELECT COUNT(*) NUM_REC FROM MNP_CIRCE_OUT;
|
||||
|
||||
PROMPT RECORD MNP_CIRCE_OUT_REC OLD E NEW
|
||||
SELECT COUNT(*) NUM_REC FROM MNP_CIRCE_OUT_REC_OLD
|
||||
UNION
|
||||
SELECT COUNT(*) NUM_REC FROM MNP_CIRCE_OUT_REC;
|
||||
@@ -0,0 +1,4 @@
|
||||
drop table MNP_BIT_OUT_REC_OLD;
|
||||
drop table MNP_CCRM_NOTIFICA_OUT_OLD;
|
||||
drop table MNP_CIRCE_OUT_OLD;
|
||||
drop table MNP_CIRCE_OUT_REC_OLD;
|
||||
@@ -0,0 +1,17 @@
|
||||
--execute as DBC
|
||||
|
||||
spool /mnpapp/log/script/dbc_ExtraKit_Aprile_12.log;
|
||||
|
||||
-----------------------------
|
||||
--CREATE/MODIFY OBJECT
|
||||
|
||||
@@dbcDDL.sql
|
||||
|
||||
-----------------------------
|
||||
--INSERT/UPDATE DATA
|
||||
|
||||
@@dbcDML.sql
|
||||
|
||||
-----------------------------
|
||||
|
||||
spool off;
|
||||
2126
dbcmnpsrc/FE/mnpapp/script/dbUpDate/Extra-KitAprile12/dbcDDL.sql
Normal file
2126
dbcmnpsrc/FE/mnpapp/script/dbUpDate/Extra-KitAprile12/dbcDDL.sql
Normal file
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user