ALTER TABLE DBCGO_GEST_RICH_REC_VIRT ADD (
    FLAG_FURTO VARCHAR2(1) DEFAULT 'N',
    FLAG_PREVALIDAZIONE VARCHAR2(1) DEFAULT 'N'
)
/
ALTER TABLE DBCGO_GEST_RICH_REC_VIRT_M2M ADD (
    FLAG_FURTO VARCHAR2(1) DEFAULT 'N',
    FLAG_PREVALIDAZIONE VARCHAR2(1) DEFAULT 'N'
)
/
ALTER TABLE DBCGO_GESTIONE_RICHIESTA_REC ADD (
    FLAG_FURTO VARCHAR2(1) DEFAULT 'N',
    FLAG_PREVALIDAZIONE VARCHAR2(1) DEFAULT 'N',
	CODICI_RIFIUTO_VALIDAZIONE VARCHAR2(100)
)
/
ALTER TABLE DBCGO_GESTIONE_RICHIESTA ADD (
    FLAG_FURTO VARCHAR2(1) DEFAULT 'N',
    FLAG_PREVALIDAZIONE VARCHAR2(1) DEFAULT 'N'
)
/

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 )
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
   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(+)
)
/
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 )
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
  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_rv_m2m_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,
   iccd_serial_number,
   numero_documento,
   tipo_documento,
   codice_operatore_donating,
   flag_tc,
   prevalidazione,
   data_validazione_eff,
   business_id_rec,
   business_id_don,
   descr_stato,
   vis_day_num,
   tipo_cliente_desc,
   codice_pre_post_pagato_desc,
   tc_stato,
   importo,
   flag_furto,
   flag_prevalidazione )
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.ICCD_SERIAL_NUMBER, 
   a.NUMERO_DOCUMENTO, 
   a.TIPO_DOCUMENTO, 
   a.CODICE_OPERATORE_DONATING, 
   a.FLAG_TC, 
   a.PREVALIDAZIONE, 
   a.DATA_VALIDAZIONE_EFF, 
   a.BUSINESS_ID_REC, 
   a.BUSINESS_ID_DON, 
   statoM2M.descr_stato AS descr_stato, 
   statoM2M.vis_day_num AS vis_day_num,
   j.descr AS tipo_cliente_desc,
   k.descr AS codice_pre_post_pagato_desc,
   decode(tc.stato,1,'TRASFERITO',0,'IN TRASFERIMENTO') as tc_stato,
   tc.importo,
   a.flag_furto,
   a.flag_prevalidazione
    FROM 
   DBCGO_GEST_RICH_REC_VIRT_M2M a,
   dbcgo_stato_rec_virt_m2m statoM2M,
   dbcgo_gest_ric_rv_m2m_tc tc,
   dbcgo_lov j,
   dbcgo_lov k
   WHERE a.stato = statoM2M.id_stato
    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_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,
   flag_furto,
   flag_prevalidazione,
   codicerifiutovalidazione )
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,
   a.FLAG_FURTO,
   a.FLAG_PREVALIDAZIONE,
   a.codici_rifiuto_validazione
 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 VIEW dbcgo_gestione_ric_rec_v00_c (
   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,
   flag_furto,
   flag_prevalidazione,
   codicerifiutovalidazione )
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,
			--decode(a.tipo_cliente,'CO',saf.CANALE_ACQUISIZIONE,'BU', q.name,null) as CANALE_VENDITA,
			--decode(a.tipo_cliente,'CO',saf.CANALE_ACQUISIZIONE,'BU', q.descr,null) as CANALE_VENDITA_DESC,
			nvl(saf.CANALE_ACQUISIZIONE,q.name) as CANALE_VENDITA,
            nvl(saf.CANALE_ACQUISIZIONE,q.descr) as CANALE_VENDITA_DESC,
			o.name as SOTTOCANALE_ACQUISIZIONE,
			o.descr as SOTTOCANALE_ACQUISIZIONE_DESC,			
			saf.SEGMENTAZIONE_CANALE,			
			pp.pp_num AS pp_num,
            a.flag_furto,
            a.flag_prevalidazione,
            a.codici_rifiuto_validazione			
	FROM 
		dbcgo_gestione_richiesta_rec a,
		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_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.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.descanale_vendita_BU=q.descr (+)
)
/
CREATE OR REPLACE VIEW dbcgo_gestione_ric_rec_v00_or (
   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,
   sottocanale_acquisizione,
   sottocanale_acquisizione_desc,
   segmentazione_canale,
   pp_num,
   flag_furto,
   flag_prevalidazione,
   codicerifiutovalidazione )
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,
			saf.CANALE_ACQUISIZIONE,
			o.name as SOTTOCANALE_ACQUISIZIONE,
			o.descr as SOTTOCANALE_ACQUISIZIONE_DESC,			
			saf.SEGMENTAZIONE_CANALE,			
			pp.pp_num AS pp_num,
			a.flag_furto,
			a.flag_prevalidazione,
			a.codici_rifiuto_validazione
	FROM 
		dbcgo_gestione_richiesta_rec a,
		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_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.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 (+)
)
/

ALTER TABLE DBCGO_GESTIONE_RICHIESTA
MODIFY(
CODICE_PRE_POST_PAGATO NULL,
TIPO_DOCUMENTO NULL, 
NUMERO_DOCUMENTO NULL     
)
/