-- GENERA TABELLE PER GESTIONE RECIPIENT VIRTUALE-- CREATE TABLE MNP_GEST_RICH_REC_VIRT ( id_richiesta VARCHAR2(23) NOT NULL, stato NUMBER(2,0) NOT NULL, tipo_cliente VARCHAR2(2), data_cut_over_calc DATE NOT NULL, data_validazione_max DATE NOT NULL, dataricezionerichiesta DATE NOT NULL, codicerifiutovalidazione NUMBER(2,0), data_cut_over DATE, ora_cut_over VARCHAR2(8) DEFAULT '14:00:00' NOT NULL, codice_operatore_recipient VARCHAR2(4) NOT NULL, codice_operatore_donating VARCHAR2(4) NOT NULL, msisdn VARCHAR2(15) NOT NULL, codice_fiscale_partita_iva VARCHAR2(16), codice_pre_post_pagato VARCHAR2(3) NOT NULL, nome_cliente VARCHAR2(30), cognome_cliente VARCHAR2(50), ragione_sociale VARCHAR2(80), tipo_documento VARCHAR2(3) NOT NULL, numero_documento VARCHAR2(30) NOT NULL, imsi VARCHAR2(15), iccid_serial_number VARCHAR2(30), nome_ot VARCHAR2(5) DEFAULT NULL, data_validazione_eff DATE, abbonato_prepagato VARCHAR2(50), sist_comp VARCHAR2(5), iccid_serial_number_ccrm VARCHAR2(30), tipo_porting_out NUMBER(1,0), utenza_dual VARCHAR2(15), business_consumer NUMBER(1,0) DEFAULT 0, marcaggio VARCHAR2(2), ipotesi_rifiuto NUMBER(2,0) DEFAULT 0, sottomarcaggio VARCHAR2(1), operatore_interno_donating VARCHAR2(10) DEFAULT 'TIM' NOT NULL, business_id VARCHAR2(36), profilo_rete VARCHAR2(4) NOT NULL, codice_analogico_digitale VARCHAR2(1) NOT NULL, version NUMBER ) PARTITION BY RANGE (DATARICEZIONERICHIESTA) ( PARTITION MNP_GEST_RICH_REC_VIRT1 VALUES LESS THAN (TO_DATE('20080401','YYYYMMDD')) NOLOGGING TABLESPACE TAB_HUGE, PARTITION MNP_GEST_RICH_REC_VIRT2 VALUES LESS THAN (TO_DATE('20081001','YYYYMMDD')) NOLOGGING TABLESPACE TAB_HUGE, PARTITION MNP_GEST_RICH_REC_VIRT3 VALUES LESS THAN (TO_DATE('20090401','YYYYMMDD')) NOLOGGING TABLESPACE TAB_HUGE, PARTITION MNP_GEST_RICH_REC_VIRT4 VALUES LESS THAN (TO_DATE('20091001','YYYYMMDD')) NOLOGGING TABLESPACE TAB_HUGE, PARTITION MNP_GEST_RICH_REC_VIRT5_MAX VALUES LESS THAN (MAXVALUE) NOLOGGING TABLESPACE TAB_HUGE ) / CREATE UNIQUE INDEX PK_MNP_GEST_RICH_REC_VIRT ON MNP_GEST_RICH_REC_VIRT (id_richiesta) TABLESPACE TAB_IDX_BIG / ALTER TABLE MNP_GEST_RICH_REC_VIRT ADD CONSTRAINT PK_MNP_GEST_RICH_REC_VIRT PRIMARY KEY (id_richiesta) USING INDEX TABLESPACE TAB_IDX_BIG / CREATE INDEX IDX_MNP_GEST_RICH_REC_VIRT1 ON MNP_GEST_RICH_REC_VIRT (STATO ASC) LOGGING TABLESPACE TAB_IDX_BIG / CREATE SEQUENCE SEQ_RICH_REC_VIRT INCREMENT BY 1 START WITH 1 MINVALUE 1 MAXVALUE 99999999999 NOCYCLE NOORDER CACHE 20 / CREATE TABLE MNP_STATO_REC_VIRT ( ID_STATO NUMBER(5) NOT NULL , DESCR_STATO VARCHAR2(20) NOT NULL , FINALE NUMBER(1) NOT NULL )TABLESPACE TAB_DESC; CREATE UNIQUE INDEX PKMNP_STATO_REC_VIRT ON MNP_STATO_REC_VIRT (ID_STATO ASC) TABLESPACE TAB_DESC; ALTER TABLE MNP_STATO_REC_VIRT ADD CONSTRAINT PKMNP_STATO_REC_VIRT PRIMARY KEY (ID_STATO) / -- FINE TABELLE PER GESTIONE RECIPIENT VIRTUALE-- -- GENERA TABELLE PER RECIPIENT DONOR VIRTUALE-- CREATE TABLE MNP_STORICO_RICH_REC_VIRT ( id_prog NUMBER(18,0) NOT NULL, id_richiesta VARCHAR2(23) NOT NULL, NOTE VARCHAR2(100), stato_da NUMBER(2,0) DEFAULT -1, stato_a NUMBER(2,0) NOT NULL, data_i_o DATE DEFAULT SYSDATE NOT NULL, data_lavorazione DATE DEFAULT TRUNC(SYSDATE), dataricezionerichiesta DATE NOT NULL ) PARTITION BY RANGE (DATARICEZIONERICHIESTA) ( PARTITION MNP_STORICO_RICH_REC_VIRT1 VALUES LESS THAN (TO_DATE('20080401','YYYYMMDD')) NOLOGGING TABLESPACE TAB_HUGE_2, PARTITION MNP_STORICO_RICH_REC_VIRT2 VALUES LESS THAN (TO_DATE('20081001','YYYYMMDD')) NOLOGGING TABLESPACE TAB_HUGE_2, PARTITION MNP_STORICO_RICH_REC_VIRT3 VALUES LESS THAN (TO_DATE('20090401','YYYYMMDD')) NOLOGGING TABLESPACE TAB_HUGE_2, PARTITION MNP_STORICO_RICH_REC_VIRT4 VALUES LESS THAN (TO_DATE('20091001','YYYYMMDD')) NOLOGGING TABLESPACE TAB_HUGE_2, PARTITION MNP_STORICO_RICH_REC_VIRT5_MAX VALUES LESS THAN (MAXVALUE) NOLOGGING TABLESPACE TAB_HUGE_2 ) / CREATE UNIQUE INDEX PK_MNP_STORICO_RICH_REC_VIRT ON MNP_STORICO_RICH_REC_VIRT (id_prog) TABLESPACE TAB_IDX_HUGE_2_1 / ALTER TABLE MNP_STORICO_RICH_REC_VIRT ADD CONSTRAINT PK_MNP_STORICO_RICH_REC_VIRT PRIMARY KEY (id_prog) USING INDEX TABLESPACE TAB_IDX_HUGE_2_1 / CREATE INDEX IDX_MNP_STORICO_RICH_REC_VIRT1 ON MNP_STORICO_RICH_REC_VIRT (id_richiesta ASC) LOGGING TABLESPACE TAB_IDX_HUGE_2_1 / CREATE INDEX IDX_MNP_STORICO_RICH_REC_VIRT2 ON MNP_STORICO_RICH_REC_VIRT (data_lavorazione ASC) LOGGING TABLESPACE TAB_IDX_HUGE_2_1 / CREATE OR REPLACE TRIGGER PRE_INS_STORICO_RICH_REC_VIRT before insert on MNP_STORICO_RICH_REC_VIRT for each row begin select dataricezionerichiesta into :new.dataricezionerichiesta from MNP_GEST_RICH_REC_VIRT where id_richiesta=:new.id_richiesta; exception when no_data_found then :new.dataricezionerichiesta:= sysdate; end; / ALTER TABLE MNP_STORICO_RICH_REC_VIRT ADD CONSTRAINT FK_MNP_STORICO_RICH_REC_VIRT_1 FOREIGN KEY (id_richiesta) REFERENCES MNP_GEST_RICH_REC_VIRT (id_richiesta) / CREATE SEQUENCE SEQ_RICH_REC_VIRT_STORICO INCREMENT BY 1 START WITH 1 MINVALUE 1 MAXVALUE 1000000000000000000000000000 NOCYCLE NOORDER CACHE 200 / -- FINE TABELLE PER STORICO RECIPIENT VIRTUALE-- -- GENERA TABELLE PER GESTIONE DONOR VIRTUALE-- CREATE TABLE MNP_GEST_RICH_DONOR_VIRT ( id_richiesta VARCHAR2(18) NOT NULL, stato NUMBER(2,0) NOT NULL, tipo_cliente VARCHAR2(2) NOT NULL, data_cut_over_calc DATE NOT NULL, data_validazione_max DATE, dataricezionerichiesta DATE NOT NULL, codice_operatore_recipient VARCHAR2(4) NOT NULL, codice_operatore_donating VARCHAR2(4) NOT NULL, codice_gruppo VARCHAR2(12), msisdn VARCHAR2(15) NOT NULL, codice_fiscale_partita_iva VARCHAR2(16), codice_pre_post_pagato VARCHAR2(3) NOT NULL, codice_analogico_digitale VARCHAR2(1) NOT NULL, data_cut_over DATE, ora_cut_over VARCHAR2(8) DEFAULT '14:00:00' NOT NULL, nome_cliente VARCHAR2(30), cognome_cliente VARCHAR2(50), ragione_sociale VARCHAR2(80), tipo_documento VARCHAR2(3) NOT NULL, numero_documento VARCHAR2(30) NOT NULL, imsi VARCHAR2(15) NOT NULL, iccid_serial_number VARCHAR2(30), nome_ot VARCHAR2(2), codice_richiesta_bit VARCHAR2(18), codicerifiutovalidazione NUMBER(2,0), data_validazione_eff DATE, msisdn_tim VARCHAR2(16), causale_accodamento VARCHAR2(100), operatore_interno_recipient VARCHAR2(10) NOT NULL, sistema_mittente VARCHAR2(10), tipo_servizio_sistema_mitt VARCHAR2(10), business_id VARCHAR2(36), ipotesi_rifiuto NUMBER(2,0) DEFAULT 0, codice_dealer VARCHAR2(10), cod_profilo_tariffario VARCHAR2(10), desc_profilo_tariffario VARCHAR2(50), cod_offerta VARCHAR2(5), desc_offerta VARCHAR2(50), cod_accordo VARCHAR2(10), desc_accordo VARCHAR2(150), descanale_vendita VARCHAR2(50), codice_ordine VARCHAR2(15), tipo_operazione VARCHAR2(3), idreq_infobus VARCHAR2(24), version NUMBER ) PARTITION BY RANGE (DATARICEZIONERICHIESTA) ( PARTITION MNP_GEST_RICH_DONOR_VIRT1 VALUES LESS THAN (TO_DATE('20080401','YYYYMMDD')) NOLOGGING TABLESPACE TAB_HUGE, PARTITION MNP_GEST_RICH_DONOR_VIRT2 VALUES LESS THAN (TO_DATE('20081001','YYYYMMDD')) NOLOGGING TABLESPACE TAB_HUGE, PARTITION MNP_GEST_RICH_DONOR_VIRT3 VALUES LESS THAN (TO_DATE('20090401','YYYYMMDD')) NOLOGGING TABLESPACE TAB_HUGE, PARTITION MNP_GEST_RICH_DONOR_VIRT4 VALUES LESS THAN (TO_DATE('20091001','YYYYMMDD')) NOLOGGING TABLESPACE TAB_HUGE, PARTITION MNP_GEST_RICH_DONOR_VIRT5_MAX VALUES LESS THAN (MAXVALUE) NOLOGGING TABLESPACE TAB_HUGE ) / CREATE UNIQUE INDEX PK_MNP_GEST_RICH_DONOR_VIRT ON MNP_GEST_RICH_DONOR_VIRT (id_richiesta) TABLESPACE TAB_IDX_BIG / ALTER TABLE MNP_GEST_RICH_DONOR_VIRT ADD CONSTRAINT PK_MNP_GEST_RICH_DONOR_VIRT PRIMARY KEY (id_richiesta) USING INDEX TABLESPACE TAB_IDX_BIG / CREATE INDEX IDX_MNP_GEST_RICH_DONOR_VIRT1 ON MNP_GEST_RICH_DONOR_VIRT (STATO ASC) LOGGING TABLESPACE TAB_IDX_BIG / CREATE SEQUENCE SEQ_RICH_DONOR_VIRT INCREMENT BY 1 START WITH 1 MINVALUE 1 MAXVALUE 99999999999 NOCYCLE NOORDER CACHE 20 / CREATE TABLE MNP_STATO_DON_VIRT ( ID_STATO NUMBER(5) NOT NULL , DESCR_STATO VARCHAR2(20) NOT NULL , FINALE NUMBER(1) NOT NULL )TABLESPACE TAB_DESC; CREATE UNIQUE INDEX PKMNP_STATO_DON_VIRT ON MNP_STATO_DON_VIRT (ID_STATO ASC) TABLESPACE TAB_DESC; ALTER TABLE MNP_STATO_DON_VIRT ADD CONSTRAINT PKMNP_STATO_DON_VIRT PRIMARY KEY (ID_STATO) / -- FINE TABELLE PER GESTIONE DONOR VIRTUALE-- -- GENERA TABELLE PER STORICO DONOR VIRTUALE-- CREATE TABLE MNP_STORICO_RICH_DON_VIRT ( id_prog NUMBER(18,0) NOT NULL, id_richiesta VARCHAR2(18) NOT NULL, NOTE VARCHAR2(100), stato_da NUMBER(2,0) DEFAULT -1, stato_a NUMBER(2,0) NOT NULL, data_i_o DATE DEFAULT SYSDATE NOT NULL, data_lavorazione DATE DEFAULT TRUNC(SYSDATE), dataricezionerichiesta DATE NOT NULL) PARTITION BY RANGE (DATARICEZIONERICHIESTA) ( PARTITION MNP_STORICO_RICH_DON_VIRT1 VALUES LESS THAN (TO_DATE('20080401','YYYYMMDD')) NOLOGGING TABLESPACE TAB_HUGE_2, PARTITION MNP_STORICO_RICH_DON_VIRT2 VALUES LESS THAN (TO_DATE('20081001','YYYYMMDD')) NOLOGGING TABLESPACE TAB_HUGE_2, PARTITION MNP_STORICO_RICH_DON_VIRT3 VALUES LESS THAN (TO_DATE('20090401','YYYYMMDD')) NOLOGGING TABLESPACE TAB_HUGE_2, PARTITION MNP_STORICO_RICH_DON_VIRT4 VALUES LESS THAN (TO_DATE('20091001','YYYYMMDD')) NOLOGGING TABLESPACE TAB_HUGE_2, PARTITION MNP_STORICO_RICH_DON_VIRT5_MAX VALUES LESS THAN (MAXVALUE) NOLOGGING TABLESPACE TAB_HUGE_2 ) / CREATE UNIQUE INDEX PK_MNP_STORICO_RICH_DON_VIRT ON MNP_STORICO_RICH_DON_VIRT (id_prog) TABLESPACE TAB_IDX_HUGE_2_1 / ALTER TABLE MNP_STORICO_RICH_DON_VIRT ADD CONSTRAINT PK_MNP_STORICO_RICH_DON_VIRT PRIMARY KEY (id_prog) USING INDEX TABLESPACE TAB_IDX_HUGE_2_1 / CREATE INDEX IDX_MNP_STORICO_RICH_DON_VIRT1 ON MNP_STORICO_RICH_DON_VIRT (id_richiesta ASC) LOGGING TABLESPACE TAB_IDX_HUGE_2_1 / CREATE INDEX IDX_MNP_STORICO_RICH_DON_VIRT2 ON MNP_STORICO_RICH_DON_VIRT (data_lavorazione ASC) LOGGING TABLESPACE TAB_IDX_HUGE_2_1 / CREATE OR REPLACE TRIGGER PRE_INS_STORICO_RICH_DON_VIRT before insert on MNP_STORICO_RICH_DON_VIRT for each row begin select dataricezionerichiesta into :new.dataricezionerichiesta from MNP_GEST_RICH_DONOR_VIRT where id_richiesta=:new.id_richiesta; exception when no_data_found then :new.dataricezionerichiesta:= sysdate; end; / ALTER TABLE MNP_STORICO_RICH_DON_VIRT ADD CONSTRAINT FK_MNP_STORICO_RICH_DON_VIRT_1 FOREIGN KEY (id_richiesta) REFERENCES MNP_GEST_RICH_DONOR_VIRT (id_richiesta) / CREATE SEQUENCE SEQ_RICH_DON_VIRT_STORICO INCREMENT BY 1 START WITH 1 MINVALUE 1 MAXVALUE 1000000000000000000000000000 NOCYCLE NOORDER CACHE 200 / -- FINE TABELLE PER STORICO DONOR VIRTUALE-- -- INIZIO TABELLE PER NOTIFICHE DA GISP CREATE TABLE MNP_GISP_NOTIFICA_IN ( UNIQUE_ID NUMBER NOT NULL, ID_RICHIESTA VARCHAR2(23) NOT NULL, DATA_RICEZIONE DATE DEFAULT SYSDATE NOT NULL, DA_SCODARE NUMBER(1) NOT NULL, DATA_INVIO_NOTIFICA DATE NOT NULL, MSISDN VARCHAR2(13) NOT NULL, TIPO_EVENTO VARCHAR2(3) NOT NULL ) TABLESPACE TAB_HUGE_2 / CREATE UNIQUE INDEX PK_MNP_GISP_NOTIFICA_IN ON MNP_GISP_NOTIFICA_IN (UNIQUE_ID) TABLESPACE TAB_IDX_HUGE_2_2 / ALTER TABLE MNP_GISP_NOTIFICA_IN ADD CONSTRAINT PK_MNP_GISP_NOTIFICA_IN PRIMARY KEY (UNIQUE_ID) USING INDEX TABLESPACE TAB_IDX_HUGE_2_2 / CREATE TABLE MNP_GISP_SCARTO_NOTIFICA_IN ( UNIQUE_ID NUMBER NOT NULL, TRACCIATO VARCHAR2(4000) NULL, DATA_RICEZIONE DATE DEFAULT SYSDATE, CAUSALE_SCARTO VARCHAR2(255) NULL ) TABLESPACE TAB_HUGE_2 / CREATE UNIQUE INDEX PK_MNP_GISP_SCARTO_NOTIFICA_IN ON MNP_GISP_SCARTO_NOTIFICA_IN (UNIQUE_ID) TABLESPACE TAB_IDX_HUGE_2_2 / ALTER TABLE MNP_GISP_SCARTO_NOTIFICA_IN ADD CONSTRAINT PK_MNP_GISP_SCARTO_NOTIFICA_IN PRIMARY KEY (UNIQUE_ID) USING INDEX TABLESPACE TAB_IDX_HUGE_2_2 / -- FINE TABELLE PER NOTIFICHE DA GISP -- GENERA TABELLA OPERATORE GISP -- CREATE TABLE MNP_OPERATORE_GISP ( ID_OPERATORE_GISP NUMBER NOT NULL , ID_OPERATORE_INTERNO NUMBER NOT NULL , NOME_OPERATORE VARCHAR2(20) NOT NULL ) TABLESPACE TAB_DESC / CREATE UNIQUE INDEX IDX_MNP_OPERATORE_GISP_1 ON MNP_OPERATORE_GISP (ID_OPERATORE_INTERNO ASC) TABLESPACE TAB_IDX_HUGE_2_2 / CREATE UNIQUE INDEX PK_MNP_OPERATORE_GISP ON MNP_OPERATORE_GISP (ID_OPERATORE_GISP ASC) TABLESPACE TAB_IDX_HUGE_2_2 / ALTER TABLE MNP_OPERATORE_GISP ADD CONSTRAINT PK_MNP_OPERATORE_GISP PRIMARY KEY (ID_OPERATORE_GISP) / ALTER TABLE MNP_OPERATORE_GISP ADD CONSTRAINT FK_MNP_OPERATORE_GISP FOREIGN KEY (ID_OPERATORE_INTERNO) REFERENCES MNP_OPERATORE_INTERNO (ID_OPERATORE_INTERNO) / -- FINE GENERAZIONE TABELLA OPERATORE GISP --