262 lines
7.4 KiB
SQL
262 lines
7.4 KiB
SQL
--da eseguire come utente DBCGO
|
|
|
|
-----------------------------------------------------------
|
|
--DB LINK
|
|
|
|
CREATE DATABASE LINK mnp
|
|
CONNECT TO mnp
|
|
IDENTIFIED BY "MNP"
|
|
USING 'MNP';
|
|
|
|
-----------------------------------------------------------
|
|
--DIRECTORY
|
|
|
|
CREATE OR REPLACE DIRECTORY dbcgo_dwht_path AS '/mnpapp/dbcgo/flussi/dwht';
|
|
|
|
-----------------------------------------------------------
|
|
--TABLE
|
|
|
|
ALTER TABLE dbcgo_gestione_richiesta
|
|
ADD (data_transizione_stato_grp DATE,
|
|
codice_operatore_donating VARCHAR2(4));
|
|
|
|
CREATE BITMAP INDEX idx14_dbcgo_gestione_ric
|
|
ON dbcgo_gestione_richiesta(codice_pre_post_pagato)
|
|
TABLESPACE dbcgo_idx_big;
|
|
|
|
-----------------------------------------------------------
|
|
ALTER TABLE dbcgo_gestione_richiesta_rec
|
|
ADD (data_transizione_stato_grp DATE,
|
|
codice_dealer VARCHAR2(10),
|
|
valore_cliente VARCHAR2(40) DEFAULT 'ND' NOT NULL,
|
|
valore_spesa VARCHAR2(40) DEFAULT 'ND' NOT NULL,
|
|
codice_operatore_recipient VARCHAR2(4),
|
|
codice_gruppo VARCHAR2(12));
|
|
|
|
CREATE BITMAP INDEX idx12_dbcgo_gestione_ric_rec
|
|
ON dbcgo_gestione_richiesta_rec(valore_cliente)
|
|
TABLESPACE dbcgo_idx_big;
|
|
|
|
CREATE BITMAP INDEX idx13_dbcgo_gestione_ric_rec
|
|
ON dbcgo_gestione_richiesta_rec(valore_spesa)
|
|
TABLESPACE dbcgo_idx_big;
|
|
|
|
CREATE BITMAP INDEX idx14_dbcgo_gestione_ric_rec
|
|
ON dbcgo_gestione_richiesta_rec(codice_pre_post_pagato)
|
|
TABLESPACE dbcgo_idx_big;
|
|
|
|
-----------------------------------------------------------
|
|
|
|
ALTER TABLE dbcgo_stato
|
|
ADD (stato_type NUMBER(1,0) DEFAULT 0 NOT NULL);
|
|
|
|
-----------------------------------------------------------
|
|
|
|
ALTER TABLE dbcgo_stato_rec
|
|
ADD (stato_type NUMBER(1,0) DEFAULT 0 NOT NULL);
|
|
|
|
-----------------------------------------------------------
|
|
|
|
CREATE TABLE dbcgo_gestione_richiesta_por
|
|
(
|
|
id_richiesta VARCHAR2(23 BYTE) NOT NULL,
|
|
stato NUMBER(2) NOT NULL,
|
|
dataricezionerichiesta DATE NOT NULL,
|
|
data_cut_over DATE,
|
|
codice_operatore_donating VARCHAR2(4 BYTE) NOT NULL,
|
|
codice_operatore_recipient VARCHAR2(4 BYTE) NOT NULL,
|
|
msisdn VARCHAR2(15 BYTE) NOT NULL,
|
|
insert_date DATE,
|
|
update_date DATE,
|
|
TIMESTAMP TIMESTAMP(6) NOT NULL,
|
|
data_transizione_stato DATE NOT NULL
|
|
)
|
|
TABLESPACE dbcgo_data_big;
|
|
|
|
CREATE UNIQUE INDEX pk_dbcgo_gest_rich_por
|
|
ON dbcgo_gestione_richiesta_por (id_richiesta)
|
|
TABLESPACE dbcgo_idx_big;
|
|
|
|
ALTER TABLE dbcgo_gestione_richiesta_por
|
|
ADD CONSTRAINT pk_dbcgo_gest_rich_por PRIMARY KEY (id_richiesta)
|
|
USING INDEX
|
|
TABLESPACE dbcgo_idx_big;
|
|
|
|
CREATE INDEX idx01_dbcgo_gestione_ric_por
|
|
ON dbcgo_gestione_richiesta_por (msisdn)
|
|
TABLESPACE dbcgo_idx_big;
|
|
|
|
-------------------------------------------------------------------------
|
|
|
|
CREATE TABLE SAP_ANAG_FV
|
|
(
|
|
COD_ID VARCHAR2(10) NOT NULL,
|
|
COD_ID_PADRE VARCHAR2(10) NOT NULL,
|
|
MERCATO VARCHAR2(4) NOT NULL,
|
|
DISLOCAZIONE_TERR VARCHAR2(4),
|
|
STATO NUMBER(1) NOT NULL,
|
|
DEALER_TYPE NUMBER(1) DEFAULT 0 NOT NULL
|
|
)
|
|
TABLESPACE DBCGO_DATA_BIG;
|
|
|
|
ALTER TABLE SAP_ANAG_FV
|
|
ADD CONSTRAINT SAP_ANAG_FV_PK
|
|
PRIMARY KEY (COD_ID)
|
|
USING INDEX
|
|
TABLESPACE DBCGO_IDX_BIG;
|
|
|
|
COMMENT ON COLUMN SAP_ANAG_FV.STATO IS '1 = dealer attivo, 0 = dealer non attivo';
|
|
COMMENT ON COLUMN SAP_ANAG_FV.DEALER_TYPE IS '1 = dealer fittizio, 0 = dealer non fittizio';
|
|
|
|
-------------------------------------------------------------------------
|
|
|
|
CREATE TABLE DBCGO_LOV_REF
|
|
(
|
|
LOV_ID NUMBER NOT NULL,
|
|
LOV_ID_REF NUMBER NOT NULL
|
|
)
|
|
TABLESPACE DBCGO_DATA_SMALL;
|
|
|
|
ALTER TABLE DBCGO_LOV_REF ADD
|
|
CONSTRAINT PK_DBCGO_LOV_REF
|
|
PRIMARY KEY (LOV_ID,LOV_ID_REF)
|
|
USING INDEX
|
|
TABLESPACE DBCGO_IDX_SMALL
|
|
ENABLE
|
|
VALIDATE;
|
|
|
|
ALTER TABLE DBCGO_LOV_REF
|
|
ADD CONSTRAINT FK0_DBCGO_LOV_REF
|
|
FOREIGN KEY (LOV_ID)
|
|
REFERENCES DBCGO_LOV (LOV_ID)
|
|
ENABLE
|
|
VALIDATE;
|
|
|
|
ALTER TABLE DBCGO_LOV_REF
|
|
ADD CONSTRAINT FK1_DBCGO_LOV_REF
|
|
FOREIGN KEY (LOV_ID_REF)
|
|
REFERENCES DBCGO_LOV (LOV_ID)
|
|
ENABLE
|
|
VALIDATE;
|
|
|
|
-------------------------------------------------------------------------
|
|
CREATE TABLE DWHT_VOLUMI_AOM0
|
|
(
|
|
MSISDN VARCHAR(40) NOT NULL,
|
|
CODICE_OPERATORE VARCHAR(6) NOT NULL,
|
|
NC NUMBER NOT NULL,
|
|
DC NUMBER NOT NULL
|
|
)
|
|
TABLESPACE DBCGO_DATA_BIG;
|
|
|
|
ALTER TABLE DWHT_VOLUMI_AOM0 ADD
|
|
CONSTRAINT DWHT_VOLUMI_AOM0_PK
|
|
PRIMARY KEY (MSISDN)
|
|
USING INDEX
|
|
TABLESPACE DBCGO_IDX_BIG;
|
|
|
|
-------------------------------------------------------------------------
|
|
CREATE TABLE DWHT_VOLUMI_AOM1
|
|
(
|
|
MSISDN VARCHAR(40) NOT NULL,
|
|
CODICE_OPERATORE VARCHAR(6) NOT NULL,
|
|
NC NUMBER NOT NULL,
|
|
DC NUMBER NOT NULL
|
|
)
|
|
TABLESPACE DBCGO_DATA_BIG;
|
|
|
|
ALTER TABLE DWHT_VOLUMI_AOM1 ADD
|
|
CONSTRAINT DWHT_VOLUMI_AOM1_PK
|
|
PRIMARY KEY (MSISDN)
|
|
USING INDEX
|
|
TABLESPACE DBCGO_IDX_BIG;
|
|
|
|
-------------------------------------------------------------------------
|
|
CREATE TABLE EXT_DWHT_VOLUMI_AOM
|
|
(
|
|
MSISDN VARCHAR(40),
|
|
CODICE_OPERATORE VARCHAR(6),
|
|
NC NUMBER,
|
|
DC NUMBER
|
|
)
|
|
ORGANIZATION EXTERNAL
|
|
( TYPE ORACLE_LOADER
|
|
DEFAULT DIRECTORY DBCGO_DWHT_PATH
|
|
ACCESS PARAMETERS
|
|
( RECORDS DELIMITED BY NEWLINE
|
|
BADFILE 'ext_dwht_volumi_aom.bad'
|
|
LOGFILE 'ext_dwht_volumi_aom.log'
|
|
FIELDS TERMINATED BY ';'
|
|
)
|
|
LOCATION (DBCGO_DWHT_PATH:'DWHT_VOLUMI_AOM.DAT')
|
|
)
|
|
REJECT LIMIT UNLIMITED
|
|
NOLOGGING
|
|
NOCACHE
|
|
NOPARALLEL;
|
|
|
|
-------------------------------------------------------------------------
|
|
CREATE TABLE DBCGO_STATO_POR
|
|
(
|
|
ID_STATO NUMBER(5) NOT NULL,
|
|
DESCR_STATO VARCHAR2(40 BYTE) NOT NULL,
|
|
ID_STATO_GRP NUMBER(5),
|
|
DESCR VARCHAR2(40 BYTE),
|
|
STATO_TYPE NUMBER(1,0) DEFAULT 0 NOT NULL
|
|
)
|
|
TABLESPACE DBCGO_DATA_SMALL;
|
|
|
|
-------------------------------------------------------------------------
|
|
|
|
CREATE TABLE dbcgo_pp
|
|
(
|
|
id_richiesta VARCHAR2(23) NOT NULL,
|
|
data_operazione DATE,
|
|
codice_operatore_donating VARCHAR2(4) NOT NULL,
|
|
codice_operatore_recipient VARCHAR2(4) NOT NULL,
|
|
msisdn VARCHAR2(15) NOT NULL,
|
|
processo VARCHAR2(1) NOT NULL,
|
|
terminato NUMBER(1,0) NOT NULL
|
|
)
|
|
TABLESPACE DBCGO_DATA_BIG;
|
|
|
|
ALTER TABLE dbcgo_pp
|
|
ADD CONSTRAINT pk_dbcgo_ping_pong PRIMARY KEY (id_richiesta,processo)
|
|
USING INDEX
|
|
TABLESPACE DBCGO_IDX_BIG;
|
|
|
|
CREATE INDEX idx01_dbcgo_ping_pong
|
|
ON dbcgo_pp (MSISDN)
|
|
TABLESPACE DBCGO_IDX_BIG;
|
|
|
|
CREATE INDEX idx02_dbcgo_ping_pong
|
|
ON dbcgo_pp (id_richiesta)
|
|
TABLESPACE DBCGO_IDX_BIG;
|
|
|
|
-------------------------------------------------------------------------
|
|
--VIEW
|
|
|
|
CREATE OR REPLACE VIEW DBCGO_PP_VIEW (
|
|
id_richiesta,msisdn,processo,codice_operatore_donating,codice_operatore_recipient,data_operazione )
|
|
AS
|
|
(
|
|
select id_richiesta,msisdn,'D' as processo,codice_operatore_donating,codice_operatore_recipient,data_transizione_stato as data_operazione
|
|
from DBCGO_GESTIONE_RICHIESTA
|
|
where stato=16 -- stato finale
|
|
UNION
|
|
select id_richiesta,msisdn,'R' as processo,codice_operatore_donating,codice_operatore_recipient,data_transizione_stato as data_operazione
|
|
from DBCGO_GESTIONE_RICHIESTA_REC
|
|
where stato=12 -- stato finale
|
|
UNION
|
|
select id_richiesta,msisdn,'P' as processo,codice_operatore_donating,codice_operatore_recipient,data_transizione_stato as data_operazione
|
|
from DBCGO_GESTIONE_RICHIESTA_POR
|
|
where stato=6 -- stato finale
|
|
);
|
|
|
|
-------------------------------------------------------------------------
|
|
--SYNONYM
|
|
|
|
CREATE SYNONYM DWHT_VOLUMI_AOM FOR DWHT_VOLUMI_AOM0;
|
|
|
|
-------------------------------------------------------------------------
|