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

509 lines
18 KiB
SQL

--da eseguire come utente DBCGO
-- GESTIONE DELLE FUNZIONI NUOVA GESTIONE KIT APRILE 09 PER MENU
CREATE TABLE dbcgo_funzione_web
(id NUMBER(3,0) NOT NULL,
id_padre NUMBER(3,0),
nome VARCHAR2(50) NOT NULL,
comando VARCHAR2(150),
descrizione VARCHAR2(50),
ordine NUMBER(3)) TABLESPACE DBCGO_DATA_SMALL
/
-- Constraints for DBCGO_FUNZIONE_WEB
ALTER TABLE dbcgo_funzione_web ADD CONSTRAINT f_web_pry PRIMARY KEY (id)
/
-- Foreign Key
ALTER TABLE dbcgo_funzione_web
ADD CONSTRAINT f_web_foreign_id_padre FOREIGN KEY (id_padre)
REFERENCES dbcgo_funzione_web (id)
/
CREATE TABLE dbcgo_profilo
(id NUMBER(3,0) NOT NULL,
nome VARCHAR2(20),
descrizione VARCHAR2(60)) TABLESPACE DBCGO_DATA_SMALL
/
-- Constraints for DBCGO_PROFILO
ALTER TABLE dbcgo_profilo ADD CONSTRAINT prof_pry_id PRIMARY KEY (id)
/
CREATE TABLE dbcgo_profilo_funzione_web
(id_profilo NUMBER(3,0) NOT NULL,
id_funzione NUMBER(3,0) NOT NULL) TABLESPACE DBCGO_DATA_SMALL
/
-- Constraints for DBCGO_PROFILO_FUNZIONE_WEB
ALTER TABLE dbcgo_profilo_funzione_web
ADD CONSTRAINT pry_fun_pro UNIQUE (id_profilo, id_funzione)
/
-- Foreign Key
ALTER TABLE dbcgo_profilo_funzione_web
ADD CONSTRAINT foreign_idprof FOREIGN KEY (id_profilo)
REFERENCES dbcgo_profilo (id)
/
ALTER TABLE dbcgo_profilo_funzione_web
ADD CONSTRAINT foreign_idfun FOREIGN KEY (id_funzione)
REFERENCES dbcgo_funzione_web (id)
/
-- QUADRATURA
ALTER TABLE DBCGO_GESTIONE_RICHIESTA ADD FLAG_TC char(1);
ALTER TABLE DBCGO_GESTIONE_RICHIESTA ADD DATA_PRESA_IN_CARICO date;
ALTER TABLE DBCGO_GESTIONE_RICHIESTA ADD CODICE_OPERATORE_V_DONOR VARCHAR2(4);
ALTER TABLE DBCGO_GESTIONE_RICHIESTA ADD CODICE_OPERATORE_V_RECIPIENT VARCHAR2(4);
ALTER TABLE DBCGO_GESTIONE_RICHIESTA_REC ADD FLAG_TC char(1);
ALTER TABLE DBCGO_GESTIONE_RICHIESTA_REC ADD DATA_PRESA_IN_CARICO date;
ALTER TABLE DBCGO_GESTIONE_RICHIESTA_REC ADD CODICE_OPERATORE_V_DONOR VARCHAR2(4);
ALTER TABLE DBCGO_GESTIONE_RICHIESTA_REC ADD CODICE_OPERATORE_V_RECIPIENT VARCHAR2(4);
CREATE TABLE dbcgo_gestione_richiesta_r_tc
(id_richiesta VARCHAR2(23) NOT NULL,
data_notifica_credito DATE,
ora_notifica_credito VARCHAR2(5),
stato NUMBER(2,0),
importo NUMBER(7,2),
nome_file_aom VARCHAR2(27),
data_transizione_stato DATE,
data_ora_modifica TIMESTAMP(6)) TABLESPACE DBCGO_DATA_BIG
/
-- Foreign Key
ALTER TABLE dbcgo_gestione_richiesta_r_tc
ADD CONSTRAINT dbcgo_gest_richiesta_r_tc_fk FOREIGN KEY (id_richiesta)
REFERENCES dbcgo_gestione_richiesta_rec (id_richiesta)
/
CREATE TABLE dbcgo_gestione_richiesta_tc
(id_richiesta VARCHAR2(23) NOT NULL,
data_notifica_credito DATE,
ora_notifica_credito VARCHAR2(5),
stato NUMBER(2,0),
importo NUMBER(7,2),
nome_file_aom VARCHAR2(27),
data_transizione_stato DATE,
data_ora_modifica TIMESTAMP(6)) TABLESPACE DBCGO_DATA_BIG
/
-- Foreign Key
ALTER TABLE dbcgo_gestione_richiesta_tc
ADD CONSTRAINT dbcgo_gestione_richiesta_tc_fk FOREIGN KEY (id_richiesta)
REFERENCES dbcgo_gestione_richiesta (id_richiesta)
/
-- Combo Nuova gestione e Vecchia
CREATE TABLE dbcgo_vo_aom_donor
(id NUMBER(2,0),
label VARCHAR2(60),
value VARCHAR2(100),
ordine NUMBER(2,0)) TABLESPACE DBCGO_DATA_SMALL
/
ALTER TABLE dbcgo_vo_aom_donor ADD CONSTRAINT pk_dbcgo_vo_aom_donor PRIMARY KEY (id)
/
CREATE TABLE dbcgo_vo_aom_recipient
(id NUMBER(2,0),
label VARCHAR2(60),
value VARCHAR2(100),
ordine NUMBER(2,0)) TABLESPACE DBCGO_DATA_SMALL
/
ALTER TABLE dbcgo_vo_aom_recipient ADD CONSTRAINT pk_dbcgo_vo_aom_recipient PRIMARY KEY (id)
/
CREATE TABLE dbcgo_vo_elenco_combo
(nome_tabella VARCHAR2(40)) TABLESPACE DBCGO_DATA_SMALL
/
ALTER TABLE dbcgo_vo_elenco_combo ADD CONSTRAINT pk_dbcgo_vo_elenco_combo PRIMARY KEY (nome_tabella)
/
CREATE TABLE dbcgo_vo_OPERATORE_VIRTUALE
(id NUMBER(2,0),
label VARCHAR2(60),
value VARCHAR2(100),
ordine NUMBER(2,0)) TABLESPACE DBCGO_DATA_SMALL
/
ALTER TABLE dbcgo_vo_OPERATORE_VIRTUALE ADD CONSTRAINT pk_dbcgo_vo_OPERATORE_VIRTUALE PRIMARY KEY (id)
/
CREATE TABLE dbcgo_vo_TIPO_CONTRATTO
(id NUMBER(2,0),
label VARCHAR2(60),
value VARCHAR2(100),
ordine NUMBER(2,0)) TABLESPACE DBCGO_DATA_SMALL
/
ALTER TABLE dbcgo_vo_TIPO_CONTRATTO ADD CONSTRAINT pk_dbcgo_vo_TIPO_CONTRATTO PRIMARY KEY (id)
/
CREATE TABLE dbcgo_vo_TIPO_REPORT
(id NUMBER(2,0),
label VARCHAR2(60),
value VARCHAR2(100),
ordine NUMBER(2,0)) TABLESPACE DBCGO_DATA_SMALL
/
ALTER TABLE dbcgo_vo_TIPO_REPORT ADD CONSTRAINT pk_dbcgo_vo_TIPO_REPORT PRIMARY KEY (id)
/
CREATE TABLE dbcgo_vo_flag_trasferimento
(id NUMBER(2,0) NOT NULL,
label VARCHAR2(60),
value VARCHAR2(100),
ordine NUMBER(2,0)) TABLESPACE DBCGO_DATA_SMALL
/
ALTER TABLE dbcgo_vo_flag_trasferimento ADD CONSTRAINT pk_dbcgo_vo_flag_trasferimento PRIMARY KEY (id)
/
CREATE TABLE dbcgo_vo_tipo_cliente
(id NUMBER(2,0) NOT NULL,
label VARCHAR2(60),
value VARCHAR2(100),
ordine NUMBER(2,0)) TABLESPACE DBCGO_DATA_SMALL
/
ALTER TABLE dbcgo_vo_tipo_cliente ADD CONSTRAINT pk_dbcgo_vo_tipo_cliente PRIMARY KEY (id)
/
-- GESTIONE PRIORITA'
CREATE OR REPLACE VIEW dbcgo_gestione_ric_rec_v00 (
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,
causale_accodamento,
richiestaadhoc,
richiestaadhocaom,
id_priorita,
insert_date,
update_date,
iccd_serial_number,
imsi,
nome_ot,
numero_documento,
tipo_documento,
numero_invii,
timestamp,
data_transizione_stato,
id_priorita_mnp,
data_transizione_stato_grp,
codice_dealer,
car1,
car2,
codice_operatore_recipient,
codice_gruppo,
sistema_mittente,
cod_profilo_tariffario,
cod_offerta,
cod_accordo,
descr_stato,
vis_day_num,
id_stato_grp,
priority_type,
priorita,
priorita_mnp,
nome_ot_desc,
nome_ot_order_by,
tipo_cliente_desc,
codice_pre_post_pagato_desc,
car1_desc,
car2_desc,
sistema_mittente_desc,
desc_profilo_tariffario,
desc_offerta,
desc_accordo,
canale_acquisizione,
canale_acquisizione_desc,
sottocanale_acquisizione,
sottocanale_acquisizione_desc,
segmentazione_canale,
pp_num,
tipo_operazione,
tipo_operazione_desc,
codice_ordine,
flag_tc,
data_presa_in_carico,
nome_file_aom,
importo,
tc_stato,
CODICE_OPERATORE_V_DONOR )
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.CAUSALE_ACCODAMENTO,
a.RICHIESTAADHOC,
a.RICHIESTAADHOCAOM,
a.ID_PRIORITA,
a.INSERT_DATE,
a.UPDATE_DATE,
a.ICCD_SERIAL_NUMBER,
a.IMSI,
a.NOME_OT,
a.NUMERO_DOCUMENTO,
a.TIPO_DOCUMENTO,
a.NUMERO_INVII,
a.TIMESTAMP,
a.DATA_TRANSIZIONE_STATO,
a.ID_PRIORITA_MNP,
a.DATA_TRANSIZIONE_STATO_GRP,
a.CODICE_DEALER,
a.CAR1,
a.CAR2,
a.CODICE_OPERATORE_RECIPIENT,
a.CODICE_GRUPPO,
a.SISTEMA_MITTENTE,
a.COD_PROFILO_TARIFFARIO,
a.COD_OFFERTA,
a.COD_ACCORDO,
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.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,
i.descr AS car1_desc,
l.descr AS car2_desc,
n.descr AS sistema_mittente_desc,
PTP.DESC_PROFILO_TARIFFARIO,
PTO.DESC_OFFERTA,
PTA.DESC_ACCORDO,
a.cod_canale,
q.descr,
o.name as SOTTOCANALE_ACQUISIZIONE,
o.descr as SOTTOCANALE_ACQUISIZIONE_DESC,
saf.SEGMENTAZIONE_CANALE,
pp.pp_num AS pp_num ,
a.TIPO_OPERAZIONE,
r.descr as TIPO_OPERAZIONE_DESC,
a.CODICE_ORDINE,
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
FROM
dbcgo_gestione_richiesta_rec a,
dbcgo_gestione_richiesta_r_tc tc,
dbcgo_pp_mv00 pp,
dbcgo_stato_rec b,
dbcgo_stato_rec_grp d,
dbcgo_priorita_rec c,
dbcgo_priorita_rec e,
dbcgo_lov f,
dbcgo_lov g,
dbcgo_lov h,
dbcgo_lov i,
dbcgo_lov l,
dbcgo_lov n,
dbcgo_lov m,
dbcgo_lov o,
dbcgo_lov q,
dbcgo_lov r, ---PER TIPO_OPERAZIONE KIT DICEMBRE 07
dbcgo_lov_ref p,
dbcgo_profilo_tariffario PTP,
dbcgo_offerta PTO,
dbcgo_accordo PTA ,
sap_anag_fv saf
WHERE a.msisdn=pp.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.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.car1 = i.NAME
AND i.lov_name = 'VALORE_CLIENTE'
AND a.car2 = l.NAME
AND l.lov_name = 'VALORE_SPESA'
AND a.sistema_mittente = n.NAME(+)
AND n.lov_name(+) = 'SIST_MITTENTE'
AND a.id_richiesta = tc.id_richiesta(+)
AND a.SISTEMA_MITTENTE = PTP.SISTEMA_MITTENTE(+)
AND a.COD_PROFILO_TARIFFARIO = PTP.COD_PROFILO_TARIFFARIO(+)
AND a.SISTEMA_MITTENTE = PTO.SISTEMA_MITTENTE(+)
AND a.COD_OFFERTA = PTO.COD_OFFERTA(+)
AND a.SISTEMA_MITTENTE = PTA.SISTEMA_MITTENTE(+)
AND a.COD_ACCORDO = PTA.COD_ACCORDO(+)
AND a.CODICE_DEALER=saf.cod_id(+)
AND saf.SOTTOCANALE_ACQUISIZIONE=m.name (+)
AND m.lov_name (+)='SOTTOCAN_ACQ'
AND m.lov_id=p.lov_id (+)
AND p.lov_id_ref=o.lov_id (+)
AND a.cod_canale=q.name (+)
AND r.lov_name (+)='TIPO_OPERAZIONE'
AND a.TIPO_OPERAZIONE=r.name (+)
)
/
CREATE OR REPLACE FORCE 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
)
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.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.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
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(+)))
/