Files
gateway-mnp-dbc/dbcmnpsrc/FE/mnpapp/script/dbUpDate/KitAprile10/dbcgoDDL.sql
2024-05-13 12:54:14 +02:00

285 lines
11 KiB
SQL

-- eseguire come utente DBCGO
--- campo per PCN
ALTER TABLE DBCGO_GESTIONE_RICHIESTA
ADD(ABBONATO_PREPAGATO VARCHAR2(50) NULL);
ALTER TABLE DBCGO_GEST_RICH_DON_VIRT ADD(
COD_PROFILO_TARIFFARIO VARCHAR2(10) NULL,
DESC_PROFILO_TARIFFARIO VARCHAR2(50) NULL
);
ALTER TABLE DBCGO_GEST_RICH_REC_VIRT ADD(
ABBONATO_PREPAGATO VARCHAR2(50) NULL
);
-- Creazione vista Donor
CREATE OR REPLACE VIEW DBCGO_GESTIONE_RIC_V00
(ID_RICHIESTA, STATO, TIPO_CLIENTE, DATA_CUT_OVER_CALC, DATA_VALIDAZIONE_MAX,
DATARICEZIONERICHIESTA, DATA_CUT_OVER, CODICERIFIUTOVALIDAZIONE, CODICE_OPERATORE_RECIPIENT, MSISDN,
CODICE_FISCALE_PARTITA_IVA, CODICE_PRE_POST_PAGATO, NOME_CLIENTE, COGNOME_CLIENTE, RAGIONE_SOCIALE,
RICHIESTAADHOCAOM, RICHIESTAADHOC, MARCAGGIO, SOTTOMARCAGGIO, ID_PRIORITA,
INSERT_DATE, UPDATE_DATE, CODICE_GRUPPO, ICCD_SERIAL_NUMBER, IMSI,
IPOTESI_RIFIUTO, NUMERO_DOCUMENTO, TIPO_DOCUMENTO, TIMESTAMP, DATA_TRANSIZIONE_STATO,
NOME_OT_GEO, NOME_OT_LEG, ID_PRIORITA_MNP, DATA_TRANSIZIONE_STATO_GRP, CODICE_OPERATORE_DONATING,
DESCR_STATO, VIS_DAY_NUM, ID_STATO_GRP, PRIORITY_TYPE, PRIORITA,
PRIORITA_MNP, MARCAGGIO_DESC, SOTTOMARCAGGIO_DESC, NOME_OT_GEO_DESC, NOME_OT_LEG_DESC,
NOME_OT_LEG_ORDER_BY, TIPO_CLIENTE_DESC, CODICE_PRE_POST_PAGATO_DESC, PP_NUM, OPERATORE_VIRTUALE,
STATO_LINEA, FLAG_TC, DATA_PRESA_IN_CARICO, NOME_FILE_AOM, IMPORTO,
TC_STATO, CODICE_OPERATORE_V_DONOR, CODICE_OPERATORE_V_RECIPIENT, PREVALIDAZIONE, FLAG_FURTO,
FLAG_PREVALIDAZIONE, ABBONATO_PREPAGATO)
AS
(/* Formatted on 2009/07/09 15:20 (Formatter Plus v4.8.7) */
((SELECT a.id_richiesta, a.stato, a.tipo_cliente, a.data_cut_over_calc,
a.data_validazione_max, a.dataricezionerichiesta, a.data_cut_over,
a.codice_rifiuto_validazione, a.codice_operatore_recipient, a.msisdn,
a.codice_fiscale_partita_iva, a.codice_pre_post_pagato,
a.nome_cliente, a.cognome_cliente, a.ragione_sociale,
a.richiestaadhocaom, a.richiestaadhoc, a.marcaggio, a.sottomarcaggio,
a.id_priorita, a.insert_date, a.update_date, a.codice_gruppo,
a.iccd_serial_number, a.imsi, a.ipotesi_rifiuto, a.numero_documento,
a.tipo_documento, a.TIMESTAMP, a.data_transizione_stato,
a.nome_ot_geo, a.nome_ot_leg, a.id_priorita_mnp,
a.data_transizione_stato_grp, a.codice_operatore_donating,
d.descr AS descr_stato, d.vis_day_num AS vis_day_num,
d.id_stato_grp AS id_stato_grp, b.priority_type AS priority_type,
c.descr AS priorita, e.descr AS priorita_mnp,
f.desc_mar AS marcaggio_desc, g.desc_clu AS sottomarcaggio_desc,
h.descr AS nome_ot_geo_desc, i.descr AS nome_ot_leg_desc,
i.order_by AS nome_ot_leg_order_by, j.descr AS tipo_cliente_desc,
k.descr AS codice_pre_post_pagato_desc, l.pp_num AS pp_num,
m.descr AS operatore_virtuale, a.stato_linea, a.flag_tc,
a.data_presa_in_carico, tc.nome_file_aom, tc.importo,
DECODE (tc.stato,
1, 'TRASFERITO',
0, 'IN TRASFERIMENTO'
) AS tc_stato, a.codice_operatore_v_donor,
a.codice_operatore_v_recipient, a.prevalidazione,
a.flag_furto,
a.flag_prevalidazione,
a.abbonato_prepagato
FROM dbcgo_gestione_richiesta a,
dbcgo_pp_mv00 l,
dbcgo_stato b,
dbcgo_stato_grp d,
dbcgo_priorita c,
dbcgo_priorita e,
dbm_anag_mar f,
dbm_anag_clu g,
dbcgo_lov h,
dbcgo_lov i,
dbcgo_lov j,
dbcgo_lov k,
dbcgo_lov m,
dbcgo_gestione_richiesta_tc tc
WHERE a.msisdn = l.msisdn(+)
AND a.stato = b.id_stato
AND b.id_stato_grp = d.id_stato
AND a.id_priorita = c.id_priorita
AND a.id_priorita_mnp = e.id_priorita
AND a.marcaggio = f.cod_mar(+)
AND a.sottomarcaggio = g.cod_clu(+)
AND a.nome_ot_geo = h.NAME(+)
AND h.lov_name(+) = 'OT'
AND a.nome_ot_leg = i.NAME(+)
AND i.lov_name(+) = 'OT'
AND a.tipo_cliente = j.NAME
AND j.lov_name = 'CUST_TYPE'
AND a.codice_pre_post_pagato = k.NAME
AND k.lov_name = 'TIPO_CONTRATTO'
AND a.codice_operatore_v_donor = m.NAME(+)
AND m.lov_name(+) = 'OPERATORE_VIRTUALE'
AND a.id_richiesta = tc.id_richiesta(+)))
)
/
-- Creazione vista Recipient Virtuale ---
CREATE OR REPLACE VIEW DBCGO_GEST_RIC_REC_VIRT_VIEW
(ID_RICHIESTA, DATA_INSERIMENTO, DATA_TRANSIZIONE_STATO, STATO, TIPO_CLIENTE,
DATA_CUT_OVER_CALC, DATA_VALIDAZIONE_MAX, DATARICEZIONERICHIESTA, DATA_CUT_OVER, CODICERIFIUTOVALIDAZIONE,
CODICE_OPERATORE_RECIPIENT, MSISDN, CODICE_FISCALE_PARTITA_IVA, CODICE_PRE_POST_PAGATO, NOME_CLIENTE,
COGNOME_CLIENTE, RAGIONE_SOCIALE, MARCAGGIO, SOTTOMARCAGGIO, ICCD_SERIAL_NUMBER,
NUMERO_DOCUMENTO, TIPO_DOCUMENTO, NOME_OT_GEO, NOME_OT_LEG, CODICE_OPERATORE_DONATING,
FLAG_TC, PREVALIDAZIONE, DATA_VALIDAZIONE_EFF, BUSINESS_ID_REC, FLAG_ESP,
TC_STATO, IMPORTO, DESCR_STATO, VIS_DAY_NUM, TIPO_CLIENTE_DESC,
CODICE_PRE_POST_PAGATO_DESC, MARCAGGIO_DESC, SOTTOMARCAGGIO_DESC, NOME_OT_GEO_DESC, NOME_OT_LEG_DESC,
NOME_OT_LEG_ORDER_BY, FLAG_FURTO, FLAG_PREVALIDAZIONE, ABBONATO_PREPAGATO, ABBONATO_PREPAGATO_DESC)
AS
(SELECT
a.ID_RICHIESTA,
a.DATA_INSERIMENTO,
a.DATA_TRANSIZIONE_STATO,
a.STATO,
a.TIPO_CLIENTE,
a.DATA_CUT_OVER_CALC,
a.DATA_VALIDAZIONE_MAX,
a.DATARICEZIONERICHIESTA,
a.DATA_CUT_OVER,
a.CODICERIFIUTOVALIDAZIONE,
a.CODICE_OPERATORE_RECIPIENT,
a.MSISDN,
a.CODICE_FISCALE_PARTITA_IVA,
a.CODICE_PRE_POST_PAGATO,
a.NOME_CLIENTE,
a.COGNOME_CLIENTE,
a.RAGIONE_SOCIALE,
a.MARCAGGIO,
a.SOTTOMARCAGGIO,
a.ICCD_SERIAL_NUMBER,
a.NUMERO_DOCUMENTO,
a.TIPO_DOCUMENTO,
a.NOME_OT_GEO,
a.NOME_OT_LEG,
a.CODICE_OPERATORE_DONATING,
a.FLAG_TC,
a.PREVALIDAZIONE,
a.DATA_VALIDAZIONE_EFF,
a.BUSINESS_ID_REC,
DECODE(a.FLAG_ESP,1,'Y','N') as FLAG_ESP,
decode(tc.stato,1,'TRASFERITO',0,'IN TRASFERIMENTO') as tc_stato,
tc.importo,
statoRV.DESCR_STATO AS descr_stato,
statoRV.vis_day_num AS vis_day_num,
j.descr AS tipo_cliente_desc,
k.descr AS codice_pre_post_pagato_desc,
f.desc_mar AS marcaggio_desc,
g.desc_clu AS sottomarcaggio_desc,
h.descr AS nome_ot_geo_desc,
i.descr AS nome_ot_leg_desc,
i.order_by AS nome_ot_leg_order_by ,
a.flag_furto,
a.flag_prevalidazione,
a.abbonato_prepagato,
decode(upper(a.abbonato_prepagato),'D','Y','N') AS abbonato_prepagato_desc
FROM DBCGO_GEST_RICH_REC_VIRT a,
dbcgo_stato_rec_virt statoRV,
dbm_anag_mar f,
dbm_anag_clu g,
dbcgo_lov h,
dbcgo_lov i,
dbcgo_lov j,
dbcgo_lov k,
dbcgo_gest_ric_rec_virt_tc tc
WHERE a.stato = statoRV.id_stato
AND a.marcaggio = f.cod_mar(+)
AND a.sottomarcaggio = g.cod_clu(+)
AND a.nome_ot_geo = h.NAME(+)
AND h.lov_name(+) = 'OT'
AND a.nome_ot_leg = i.NAME(+)
AND i.lov_name(+) = 'OT'
AND a.tipo_cliente = j.NAME
AND j.lov_name = 'CUST_TYPE'
AND a.codice_pre_post_pagato = k.NAME
AND k.lov_name = 'TIPO_CONTRATTO'
AND a.id_richiesta = tc.id_richiesta(+)
)
/
CREATE OR REPLACE VIEW DBCGO_GEST_RIC_DON_VIRT_VIEW
(ID_RICHIESTA, STATO, TIPO_CLIENTE, DATA_CUT_OVER_CALC, DATA_VALIDAZIONE_MAX,
DATARICEZIONERICHIESTA, DATA_CUT_OVER, CODICE_OPERATORE_DONATING, MSISDN, CODICE_FISCALE_PARTITA_IVA,
CODICE_PRE_POST_PAGATO, NOME_CLIENTE, COGNOME_CLIENTE, RAGIONE_SOCIALE, ICCD_SERIAL_NUMBER,
NOME_OT, NUMERO_DOCUMENTO, TIPO_DOCUMENTO, DATA_TRANSIZIONE_STATO, CODICE_OPERATORE_RECIPIENT,
SISTEMA_MITT, FLAG_TC, FLAG_ESP, DATA_VALIDAZIONE_EFF, CODICERIFIUTOVALIDAZIONE,
FLAG_FURTO, FLA_PREVALIDAZIONE, PREVALIDAZIONE, BUSINESS_ID, DESCR_STATO,
VIS_DAY_NUM, NOME_OT_DESC, NOME_OT_ORDER_BY, TIPO_CLIENTE_DESC, CODICE_PRE_POST_PAGATO_DESC,
SISTEMA_MITTENTE_DESC, TC_STATO, IMPORTO, COD_PROFILO_TARIFFARIO, COD_PROFILO_TARIFFARIO_DESC)
AS
(SELECT
a.ID_RICHIESTA,
a.STATO,
a.TIPO_CLIENTE,
a.DATA_CUT_OVER_CALC,
a.DATA_VALIDAZIONE_MAX,
a.DATARICEZIONERICHIESTA,
a.DATA_CUT_OVER,
a.CODICE_OPERATORE_DONATING,
a.MSISDN,
a.CODICE_FISCALE_PARTITA_IVA,
a.CODICE_PRE_POST_PAGATO,
a.NOME_CLIENTE,
a.COGNOME_CLIENTE,
a.RAGIONE_SOCIALE,
a.ICCD_SERIAL_NUMBER,
a.NOME_OT,
a.NUMERO_DOCUMENTO,
a.TIPO_DOCUMENTO,
a.DATA_TRANSIZIONE_STATO,
a.CODICE_OPERATORE_RECIPIENT,
a.SISTEMA_MITT,
a.FLAG_TC,
DECODE(a.FLAG_ESP,1,'Y','N') as FLAG_ESP,
a.DATA_VALIDAZIONE_EFF,
a.CODICERIFIUTOVALIDAZIONE,
a.FLAG_FURTO,
a.FLAG_PREVALIDAZIONE,
a.PREVALIDAZIONE,
a.BUSINESS_ID_DON AS BUSINESS_ID,
statoDV.descr_stato AS descr_stato,
statoDV.vis_day_num AS vis_day_num,
f.descr AS nome_ot_desc,
f.order_by AS nome_ot_order_by,
g.descr AS tipo_cliente_desc,
h.descr AS codice_pre_post_pagato_desc,
n.descr AS sistema_mittente_desc,
decode(tc.stato,1,'TRASFERITO',0,'IN TRASFERIMENTO') as tc_stato,
tc.importo,
a.COD_PROFILO_TARIFFARIO,
(case when upper(a.COD_PROFILO_TARIFFARIO) = 'U' AND
upper(a.DESC_PROFILO_TARIFFARIO) = 'RICARICABILE BUSINESS' then 'Y'
ELSE 'N' END) AS cod_profilo_tariffario_desc
FROM
DBCGO_GEST_RICH_DON_VIRT a,
dbcgo_gest_ric_don_virt_tc tc,
dbcgo_stato_don_virt statoDV,
dbcgo_lov f,
dbcgo_lov g,
dbcgo_lov h,
dbcgo_lov n
WHERE a.stato = statoDV.id_stato
AND a.nome_ot = f.NAME(+)
AND f.lov_name(+) = 'OT_REC'
AND a.tipo_cliente = g.NAME
AND g.lov_name = 'CUST_TYPE'
AND a.codice_pre_post_pagato = h.NAME
AND h.lov_name = 'TIPO_CONTRATTO'
AND a.sistema_mitt = n.NAME(+)
AND n.lov_name(+) = 'SIST_MITTENTE'
AND a.id_richiesta = tc.id_richiesta(+)
)
/
-- creazione vista per SLA 3gg. --
CREATE OR REPLACE FORCE VIEW mnp_dw_sla_3gg_out_view (id_richiesta,
tipo_messaggio,
data_messaggio,
data_messaggio_show,
donor_effettivo,
recipient_effettivo,
terza_parte,
nome_file,
numero_giorni_ritardo,
importo_penale,
data_iniziale,
data_finale,
tipo_processo,
numero_riga
)
AS
((SELECT "ID_RICHIESTA", "TIPO_MESSAGGIO",
TO_CHAR (data_messaggio, 'MM/yyyy') AS data_messaggio,"DATA_MESSAGGIO",
"DONOR_EFFETTIVO", "RECIPIENT_EFFETTIVO", "TERZA_PARTE",
"NOME_FILE", "NUMERO_GIORNI_RITARDO", "PENALE",
t_iniziale AS data_iniziale, t_finale AS data_finale, "PROCESSO",
ROWNUM
FROM dwh.mnp_dw_sla_3gg_out@MNP));