create table DBCGO_RICARICHE_BMC ( data_rif date not null, msisdn varchar2(20) not null, num_ricariche number not null, imp_tot_ricariche number not null ) tablespace DBCGO_DATA_MEDIUM; comment on column DBCGO_RICARICHE_BMC.data_rif is 'Data di riferimento del flusso'; comment on column DBCGO_RICARICHE_BMC.msisdn is 'Msisdn uscito da TIM nella settimana dii riferimento del flusso'; comment on column DBCGO_RICARICHE_BMC.num_ricariche is 'Numero delle ricariche effettuate dal msisdn nei 6 mesi precedenti l''uscita'; comment on column DBCGO_RICARICHE_BMC.imp_tot_ricariche is 'Importo totale delle ricariche effettuate nei 6 mesi precedenti l''uscita'; -- creare indice su mese_comp alter table DBCGO_RICARICHE_BMC add constraint PK_DBCGO_RICARICHE_BMC primary key (data_rif,msisdn) using index tablespace DBCGO_IDX_MEDIUM; create table DBCGO_FLUSSO_BMC ( data_rif date not null, msisdn varchar2(20) not null, num_ricariche number not null, imp_tot_ricariche number not null ) tablespace DBCGO_DATA_MEDIUM; comment on column DBCGO_FLUSSO_BMC.data_rif is 'Data di riferimento del flusso'; comment on column DBCGO_FLUSSO_BMC.msisdn is 'Msisdn uscito da TIM nella settimana dii riferimento del flusso'; comment on column DBCGO_FLUSSO_BMC.num_ricariche is 'Numero delle ricariche effettuate dal msisdn nei 6 mesi precedenti l''uscita'; comment on column DBCGO_FLUSSO_BMC.imp_tot_ricariche is 'Importo totale delle ricariche effettuate nei 6 mesi precedenti l''uscita'; -- creare indice su mese_comp alter table DBCGO_FLUSSO_BMC add constraint PK_DBCGO_FLUSSO_BMC primary key (data_rif,msisdn) using index tablespace DBCGO_IDX_MEDIUM; CREATE OR REPLACE VIEW MNP_DW_REP_MON_RECIPIENT (mese_comp, tipo_giorno_inserimento, fascia_oraria_richiesta, fascia_oraria_invio, tipo_cliente, numero_richieste) AS SELECT * FROM MNP_DW_REPORT_MONITORAGGIO_REC@DWH; CREATE OR REPLACE VIEW MNP_DW_REPORT_TCR (id_richiesta, blocco, data_di_riferimento, data_dco_eff, tcr1, tcr2, msisdn, codice_pre_post_pagato, codice_operatore_don_eff, codice_operatore_rec_eff) AS SELECT * FROM MNP_DW_REPORT_TCR@DWH; CREATE OR REPLACE VIEW MNP_DW_REPORT_TCR_DONOR ( ID_RICHIESTA, BLOCCO, DATA_DI_RIFERIMENTO, DATA_DCO_EFF, TCR1, TCR2, MSISDN, CODICE_PRE_POST_PAGATO, CODICE_OPERATORE_DON_EFF, CODICE_OPERATORE_REC_EFF, DATA_RIF_BMC, NUM_RICARICHE, IMP_TOT_RICARICHE ) AS SELECT ID_RICHIESTA, BLOCCO, DATA_DI_RIFERIMENTO, DATA_DCO_EFF, TCR1, TCR2, A.MSISDN AS MSISDN, CODICE_PRE_POST_PAGATO, CODICE_OPERATORE_DON_EFF, CODICE_OPERATORE_REC_EFF, B.DATA_RIF AS DATA_RIF_BMC, nvl(b.num_ricariche,0) AS NUM_RICARICHE, nvl(b.imp_tot_ricariche,0) AS IMP_TOT_RICARICHE FROM MNP_DW_REPORT_TCR a, DBCGO_RICARICHE_BMC b where a.MSISDN = b.MSISDN(+) and A.CODICE_OPERATORE_DON_EFF = 'TIMG' and b.DATA_RIF(+) between a.DATA_DCO_EFF and a.DATA_DCO_EFF+2; -- TOLTO IL NUMERO_RIGA PER PROBLEMI DI PERFORMANCE IN ESERCIZIO. CREATE OR REPLACE FORCE VIEW MNP_DW_XML_IN_OUT_VIEW ( ID_RICHIESTA, MSISDN, TIPO_FILE, TIPO_NOTIFICA, NOME_FILE, DIREZIONE, DATA, DATA_SHOW, MITTENTE, DESTINATARIO, CANALE_ALTERNATIVO, TIPO_PROCESSO, NOME_FILE_XML, NOME_FILE_ACK, ORD2 ) AS SELECT ID_RICHIESTA, MSISDN, TIPO_FILE, TIPO_NOTIFICA, NOME_FILE, DIREZIONE, DATA, DATA_SHOW, CASE TIPO_FILE WHEN 'ACK' THEN MITTENTE ELSE DESTINATARIO END AS mittente, CASE TIPO_FILE WHEN 'ACK' THEN DESTINATARIO ELSE MITTENTE END AS destinatario, DECODE (CANALE_ALTERNATIVO, 0, 'N', 1, 'Y', 'N') AS CANALE_ALTERNATIVO, TIPO_PROCESSO, NOME_FILE_XML, NOME_FILE_ACK, ORD2 FROM dwh.mnp_dw_xml_in_out@mnp;