alter session set db_file_multiblock_read_count=64;

ALTER TABLE DBCGO.DBCGO_GESTIONE_RICHIESTA
ADD (DESCRIZIONE_ESITO_GISP  VARCHAR2(48),
     ESITO_CAS CHAR(4));
 
ALTER TABLE DBCGO.DBCGO_GEST_RICH_REC_VIRT
ADD (DESCRIZIONE_ESITO_GISP  VARCHAR2(48),
     ESITO_CAS CHAR(4));

/* Formatted on 24/11/2010 15:31:05 (QP5 v5.114.809.3010) */
CREATE OR REPLACE FORCE VIEW DBCGO.DBCGO_GESTIONE_RIC_V00
(
   ID_RICHIESTA,
   STATO,
   STATO_RICHIESTA,
   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,
   TC_STATO_ID,
   CODICE_OPERATORE_V_DONOR,
   CODICE_OPERATORE_V_RECIPIENT,
   PREVALIDAZIONE,
   FLAG_FURTO,
   FLAG_PREVALIDAZIONE,
   ABBONATO_PREPAGATO,
   FLAG_PROGETTO_ADHOC,
   ID_BUSINESS,
   TRASFERIMENTO_CON_SBLOCCO,
   NOME_FILE_SBLOCCO,
   DATA_CESSAZIONE_EFFETTIVA,
   ESITO_CAS,
   DESCRIZIONE_ESITO_GISP
)
AS
   (SELECT   a.id_richiesta,
             s.id_stato,
             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,
             DECODE (a.nome_ot_geo, NULL, NULL, NVL (h.name, 'NN'))
                AS NOME_OT_GEO,
             DECODE (a.nome_ot_leg, NULL, NULL, NVL (i.name, 'NN'))
                AS NOME_OT_LEG,
             a.id_priorita_mnp,
             a.data_transizione_stato_grp,
             a.codice_operatore_donating,
             s.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,
             NVL (h.descr, 'Non disponibile') AS nome_ot_geo_desc,
             NVL (i.descr, 'Non disponibile') 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,
             --**************************************
             NULL AS operatore_virtuale,      --m.descr AS operatore_virtuale,
             --**************************************
             a.stato_linea,
             a.flag_tc,
             a.data_presa_in_carico,
             --tc.nome_file_aom,
             getNomeFileEspOUT(a.id_richiesta)  AS nome_file_aom,
             tc.importo,
             DECODE (tc.stato,
                     1,
                     'TRASFERITO',
                     0,
                     'IN TRASFERIMENTO')
                AS tc_stato,
             tc.stato AS tc_stato_id,
             a.codice_operatore_v_donor,
             a.codice_operatore_v_recipient,
             a.prevalidazione,
             a.flag_furto,
             a.flag_prevalidazione,
             a.abbonato_prepagato,
             DECODE (NVL (t.descr, 'N'),'Y','Y','N',DECODE(NVL (n.descr, 'N'),'Y','Y','N' )) FLAG_PROGETTO_ADHOC,
             NULL id_business,
             DECODE ( tc_ext.FLAG_VERIFICA_CREDITO_ANOMALO,1,'CA',0,DECODE((SELECT   TRUNC ( (tc.importo  - 1) / TO_NUMBER (name)) 
                   FROM   DBCGO_LOV 
                  WHERE   lov_name = 'SOGLIA_CREDITO'),0,NULL,'CSS'))
                AS trasferimento_con_sblocco,
             getNomeFileSbloccoOUT(a.id_richiesta)  AS nome_file_sblocco,
             dc.data_ora_cessazione AS data_cessazione_effettiva,
             A.ESITO_CAS AS ESITO_CAS,
             A.DESCRIZIONE_ESITO_GISP AS DESCRIZIONE_ESITO_GISP
      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_LOV t,
             DBCGO_LOV n,
             DBCGO_GESTIONE_RICHIESTA_TC tc,
             DBCGO_STATO_MAPPING_DON_RECV s,
             MNP_DWH_TC_ANOMALO tc_ext,
             MNP_DWH_MSS_CESS_IN_VIEW dc
     WHERE   (a.CODICE_OPERATORE_V_DONOR IS NULL
              AND (a.CODICE_OPERATORE_DONATING = 'TIMG'
                   OR a.CODICE_OPERATORE_DONATING = 'TIMT'))
             AND 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 t.lov_name(+) = 'FLAG_PROGETTO_ADHOC'
             AND a.richiestaadhoc = t.name(+)
             AND n.lov_name(+) = 'FLAG_PROGETTO_ADHOC'
             AND a.richiestaadhocaom = n.name(+)
             AND a.id_richiesta = tc.id_richiesta(+)
             --AND ((tc.stato IS NOT NULL AND s.id_stato_tc=tc.stato) OR (tc.stato IS NULL AND s.id_stato_donor = a.stato))
             AND s.id_stato_donor = a.stato
             AND tc.id_richiesta = tc_ext.id_richiesta(+)
             AND a.id_richiesta = dc.id_richiesta(+)
    UNION ALL
    SELECT   a.id_richiesta,
             s.id_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,
             NULL AS richiestaadhocaom,
             TO_CHAR (e.RICHIESTAADHOC) AS richiestaadhoc,
             a.marcaggio,
             a.sottomarcaggio,
             0 AS id_priorita,
             a.DATA_INSERIMENTO insert_date,
             a.DATA_ORA_MODIFICA update_date,
             NULL AS codice_gruppo,
             a.iccd_serial_number,
             NULL AS imsi,
             0 AS ipotesi_rifiuto,
             a.numero_documento,
             a.tipo_documento,
             NULL AS TIMESTAMP,
             a.data_transizione_stato,
             DECODE (a.nome_ot_geo, NULL, NULL, NVL (h.name, 'NN'))
                AS NOME_OT_GEO,
             DECODE (a.nome_ot_leg, NULL, NULL, NVL (i.name, 'NN'))
                AS NOME_OT_LEG,
             0 AS id_priorita_mnp,
             NULL data_transizione_stato_grp,
             a.codice_operatore_donating,
             s.descr AS descr_stato,
             b.vis_day_num AS vis_day_num,
             0 AS id_stato_grp,
             0 AS priority_type,
             NULL AS priorita,
             NULL AS priorita_mnp,
             f.desc_mar AS marcaggio_desc,
             g.desc_clu AS sottomarcaggio_desc,
             NVL (h.descr, 'Non disponibile') AS nome_ot_geo_desc,
             NVL (i.descr, 'Non disponibile') 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,
             0 AS pp_num,
             a.codice_operatore_DONATING AS operatore_virtuale,
             NULL stato_linea,
             a.flag_tc,
             NULL data_presa_in_carico,
             NULL nome_file_aom,
             tc.importo,
             DECODE (tc.stato,
                     1,
                     'TRASFERITO',
                     0,
                     'IN TRASFERIMENTO')
                AS tc_stato,
             tc.stato AS tc_stato_id,
             a.codice_operatore_DONATING AS codice_operatore_v_donor,
             a.codice_operatore_recipient AS codice_operatore_v_recipient,
             a.prevalidazione,
             a.flag_furto,
             a.flag_prevalidazione,
             a.abbonato_prepagato,
             NVL (t.descr, 'N') FLAG_PROGETTO_ADHOC,
             a.BUSINESS_ID_REC id_business,
             DECODE ( tc_ext.FLAG_VERIFICA_CREDITO_ANOMALO,1,'CA',0,DECODE((SELECT   TRUNC ( (tc.importo  - 1) / TO_NUMBER (name)) 
                   FROM   DBCGO_LOV 
                  WHERE   lov_name = 'SOGLIA_CREDITO'),0,NULL,'CSS'))
                AS trasferimento_con_sblocco,
             NULL AS nome_file_sblocco,
             DECODE (b.descr_stato,
                     'CESSATA', a.DATA_TRANSIZIONE_STATO,
                     NULL)
                AS data_cessazione_effettiva,
             A.ESITO_CAS AS ESITO_CAS,
             A.DESCRIZIONE_ESITO_GISP AS DESCRIZIONE_ESITO_GISP
      FROM   DBCGO_GEST_RICH_REC_VIRT a,
             DBCGO_STATO_REC_VIRT b,
             dbm_anag_mar f,
             dbm_anag_clu g,
             DBCGO_LOV h,
             DBCGO_LOV i,
             DBCGO_LOV j,
             DBCGO_LOV k,
             DBCGO_LOV t,
             DBCGO_GEST_RIC_REC_VIRT_TC tc,
             DBCGO_STATO_MAPPING_DON_RECV s,
             MNP_DWH_RICH_REC_VIRT_EXT e,
             MNP_DWH_TC_ANOMALO tc_ext
     WHERE       a.stato = b.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 t.lov_name(+) = 'FLAG_PROGETTO_ADHOC'
             AND a.id_richiesta = e.id_richiesta(+)
             AND e.RICHIESTAADHOC = TO_NUMBER (t.name(+))
             AND a.id_richiesta = tc.id_richiesta(+)
             --AND ((tc.stato IS NOT NULL AND s.id_stato_tc=tc.stato) OR (tc.stato IS NULL AND s.id_stato_rec_virt = a.stato))
             AND s.id_stato_rec_virt = a.stato
             AND tc.id_richiesta = tc_ext.id_richiesta(+)
             );


/* Formatted on 24/11/2010 15:19:40 (QP5 v5.114.809.3010) */
CREATE OR REPLACE FORCE VIEW DBCGO.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,
   DATA_PRESA_IN_CARICO,
   FLAG_PROGETTO_ADHOC,
   TRASFERIMENTO_CON_SBLOCCO,
   NOME_FILE_SBLOCCO,
   ESITO_CAS,
   DESCRIZIONE_ESITO_GISP
)
AS
   (SELECT   a.ID_RICHIESTA,
             a.DATA_INSERIMENTO,
             a.DATA_TRANSIZIONE_STATO,
             s.id_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,
             DECODE (a.nome_ot_geo, NULL, NULL, NVL (h.name, 'NN'))
                AS NOME_OT_GEO,
             DECODE (a.nome_ot_leg, NULL, NULL, NVL (i.name, 'NN'))
                AS 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,
             s.DESCR 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,
             NVL (h.descr, 'Non disponibile') AS nome_ot_geo_desc,
             NVL (i.descr, 'Non disponibile') 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,
             e.DATA_PRESA_IN_CARICO,
             ee.descr AS flag_progetto_adhoc,
             DECODE ( tc_ext.FLAG_VERIFICA_CREDITO_ANOMALO,1,'CA',0,DECODE((SELECT   TRUNC ( (tc.importo  - 1) / TO_NUMBER (name)) 
                   FROM   DBCGO_LOV 
                  WHERE   lov_name = 'SOGLIA_CREDITO'),0,NULL,'CSS'))
                AS trasferimento_con_sblocco,
             NULL  AS nome_file_sblocco,
             a.ESITO_CAS,
             a.DESCRIZIONE_ESITO_GISP
      FROM   DBCGO_GEST_RICH_REC_VIRT a,
             DBCGO_STATO_MAPPING_REC_MVNO s,
             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_LOV ee,
             DBCGO_GEST_RIC_REC_VIRT_TC tc,
             MNP_DWH_RICH_REC_VIRT_EXT e,
             MNP_DWH_TC_ANOMALO tc_ext
     WHERE       a.stato = s.ID_STATO_REC_VIRT_M2M
             AND s.ID_STATO_REC_VIRT_M2M = statoRV.id_stato
             AND a.id_richiesta = e.id_richiesta(+)
             AND ee.name(+) = e.richiestaadhoc
             AND ee.lov_name(+) = 'FLAG_PROGETTO_ADHOC'
             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(+)
             AND tc.id_richiesta = tc_ext.id_richiesta(+)          
    UNION ALL
    SELECT   a.ID_RICHIESTA,
             NULL AS DATA_INSERIMENTO,
             a.DATA_TRANSIZIONE_STATO,
             s.id_stato,
             a.TIPO_CLIENTE,
             a.DATA_CUT_OVER_CALC,
             a.DATA_VALIDAZIONE_MAX,
             a.DATARICEZIONERICHIESTA,
             a.DATA_CUT_OVER,
             NULL AS CODICERIFIUTOVALIDAZIONE,
             a.CODICE_OPERATORE_V_recipient,  -- 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,
             NULL AS MARCAGGIO,
             NULL AS SOTTOMARCAGGIO,
             a.ICCD_SERIAL_NUMBER,
             a.NUMERO_DOCUMENTO,
             a.TIPO_DOCUMENTO,
             NULL AS NOME_OT_GEO,
             DECODE (a.nome_ot, NULL, NULL, NVL (i.name, 'NN'))
                AS NOME_OT_LEG,
                case when a.CODICE_OPERATORE_V_DONOR is not null 
                then a.CODICE_OPERATORE_V_DONOR
                else a.CODICE_OPERATORE_DONATING
                end case,
             a.FLAG_TC,
             NULL AS PREVALIDAZIONE,
             aext.DATA_VALIDAZIONE_EFF AS DATA_VALIDAZIONE_EFF,
             aext.BUSINESS_ID AS BUSINESS_ID_REC,
             DECODE (aext.FLAG_ESP, 1, 'Y', 'N') AS FLAG_ESP,
             DECODE (tc.stato,
                     1,
                     'TRASFERITO',
                     0,
                     'IN TRASFERIMENTO')
                AS tc_stato,
             tc.importo,
             s.DESCR AS descr_stato,
             statoR.vis_day_num AS vis_day_num,
             j.descr AS tipo_cliente_desc,
             k.descr AS codice_pre_post_pagato_desc,
             NULL AS marcaggio_desc,
             NULL AS sottomarcaggio_desc,
             NULL AS nome_ot_geo_desc,
             NVL (i.descr, 'Non disponibile') AS nome_ot_leg_desc,
             i.order_by AS nome_ot_leg_order_by,
             a.flag_furto,
             a.flag_prevalidazione,
             NULL AS abbonato_prepagato,
             'N' AS abbonato_prepagato_desc,
             a.DATA_PRESA_IN_CARICO,
             ee.descr AS flag_progetto_adhoc,
             DECODE ( tc_ext.FLAG_VERIFICA_CREDITO_ANOMALO,1,'CA',0,DECODE((SELECT   TRUNC ( (tc.importo  - 1) / TO_NUMBER (name)) 
                   FROM   DBCGO_LOV 
                  WHERE   lov_name = 'SOGLIA_CREDITO'),0,NULL,'CSS'))
                AS trasferimento_con_sblocco,
            getNomeFileSbloccoIN(a.id_richiesta)  AS nome_file_sblocco,
            NULL AS ESITO_CAS,
             NULL AS DESCRIZIONE_ESITO_GISP
      FROM   DBCGO_GESTIONE_RICHIESTA_REC a,
             DBCGO_STATO_MAPPING_REC_MVNO s,
             DBCGO_STATO_REC statoR,
             DBCGO_LOV i,
             DBCGO_LOV j,
             DBCGO_LOV k,
             DBCGO_LOV ee,
             DBCGO_GESTIONE_RICHIESTA_R_TC tc,
             MNP_DWH_TC_ANOMALO tc_ext,
             MNP_DWH_gest_rich_rec_ext aext
     WHERE   (a.CODICE_OPERATORE_V_recipient IS NOT NULL
              AND (a.CODICE_OPERATORE_recipient = 'TIMG'
                   OR a.CODICE_OPERATORE_recipient = 'TIMT'))
             AND a.stato = s.id_stato_rec
             AND s.id_stato_rec = statoR.id_stato
             AND a.nome_ot = 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(+)
             AND ee.name(+) = a.richiestaadhoc
             AND ee.lov_name(+) = 'FLAG_PROGETTO_ADHOC'
             AND tc.id_richiesta = tc_ext.id_richiesta(+)
             AND a.id_richiesta = aext.id_richiesta(+)
    UNION ALL
    SELECT   a.ID_RICHIESTA,
             a.DATA_INSERIMENTO,
             a.DATA_TRANSIZIONE_STATO,
             s.id_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,
             f.desc_mar AS marcaggio_desc,
             g.desc_clu AS sottomarcaggio_desc,
             a.ICCD_SERIAL_NUMBER,
             a.NUMERO_DOCUMENTO,
             a.TIPO_DOCUMENTO,
             NULL AS NOME_OT_GEO,
             DECODE (e.nome_ot, NULL, NULL, NVL (i.name, 'NN'))
                AS NOME_OT_LEG,
             a.CODICE_OPERATORE_DONATING,
             a.FLAG_TC,
             a.PREVALIDAZIONE,
             a.DATA_VALIDAZIONE_EFF,
             a.BUSINESS_ID_REC,
             DECODE (e.FLAG_ESP, 1, 'Y', 'N') AS FLAG_ESP,
             DECODE (tc.stato,
                     1,
                     'TRASFERITO',
                     0,
                     'IN TRASFERIMENTO')
                AS tc_stato,
             tc.importo,
             s.DESCR 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,
             f.desc_mar AS marcaggio_desc,
             g.desc_clu AS sottomarcaggio_desc,
             NULL AS nome_ot_geo_desc,
             NVL (i.descr, 'Non disponibile') AS nome_ot_leg_desc,
             i.order_by AS nome_ot_leg_order_by,
             a.flag_furto,
             a.flag_prevalidazione,
             e.abbonato_prepagato,
             DECODE (UPPER (e.abbonato_prepagato), 'D', 'Y', 'N')
                AS abbonato_prepagato_desc,
             e.data_presa_in_carico,
             ee.descr AS flag_progetto_adhoc,
             DECODE ( tc_ext.FLAG_VERIFICA_CREDITO_ANOMALO,1,'CA',0,DECODE((SELECT   TRUNC ( (tc.importo  - 1) / TO_NUMBER (name)) 
                   FROM   DBCGO_LOV 
                  WHERE   lov_name = 'SOGLIA_CREDITO'),0,NULL,'CSS'))
                AS trasferimento_con_sblocco,
             NULL AS nome_file_sblocco,
             NULL AS ESITO_CAS,
             NULL AS DESCRIZIONE_ESITO_GISp
      FROM   DBCGO_GEST_RICH_REC_VIRT_M2M a,
             DBCGO_STATO_MAPPING_REC_MVNO s,
             DBCGO_STATO_REC_VIRT_M2M statoM2M,
             DBCGO_GEST_RIC_RV_M2M_TC tc,
             DBCGO_LOV ee,
             DBCGO_LOV i,
             DBCGO_LOV j,
             DBCGO_LOV k,
             dbm_anag_mar f,
             dbm_anag_clu g,
             MNP_DWH_RICH_REC_VIRT_EXT e,
             MNP_DWH_TC_ANOMALO tc_ext
     WHERE       a.stato = s.id_stato_rec_virt_m2m
             AND s.id_stato_rec_virt_m2m = statoM2M.id_stato
             AND a.id_richiesta = e.id_richiesta(+)
             AND e.marcaggio = f.cod_mar(+)
             AND e.sottomarcaggio = g.cod_clu(+)
             AND ee.name(+) = e.richiestaadhoc
             AND ee.lov_name(+) = 'FLAG_PROGETTO_ADHOC'
             AND e.nome_ot = 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(+)
             AND tc.id_richiesta = tc_ext.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, TC_STATO_ID,CODICE_OPERATORE_V_DONOR, 
 FLAG_FURTO, FLAG_PREVALIDAZIONE, CODICERIFIUTOVALIDAZIONE, FLAG_PROGETTO_ADHOC, ID_BUSINESS, 
 TRASFERIMENTO_CON_SBLOCCO, NOME_FILE_SBLOCCO, NOME_FILE_ESP, DATA_ATTIVAZIONE_EFFETTIVA)
AS 
( 
SELECT 
    /*+ INDEX(a) */ 
   a.ID_RICHIESTA, 
   s.id_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, 
   DECODE(a.nome_ot,NULL,NULL,NVL(f.name,'NN')) AS 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, 
   s.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, 
   NVL(f.descr,'Non disponibile') 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, 
   getNomeFileESP(a.id_richiesta, a.CODICE_OPERATORE_DONATING,0) AS nome_file_AOM, 
   tc.importo, 
   DECODE(tc.stato,1,'TRASFERITO',0,'IN TRASFERIMENTO') AS tc_stato,TC.STATO AS TC_STATO_ID, 
   a.codice_operatore_v_donor, 
   a.FLAG_FURTO, 
   a.FLAG_PREVALIDAZIONE, 
   a.codici_rifiuto_validazione, 
   DECODE (NVL (t.descr, 'N'),'Y','Y','N',DECODE(NVL (tt.descr, 'N'),'Y','Y','N' )) FLAG_PROGETTO_ADHOC, 
   NULL id_business  , 
	DECODE ( tc_ext.FLAG_VERIFICA_CREDITO_ANOMALO,1,'CA',0,DECODE((SELECT   TRUNC ( (tc.importo  - 1) / TO_NUMBER (name)) 
                   FROM   DBCGO_LOV 
                  WHERE   lov_name = 'SOGLIA_CREDITO'),0,NULL,'CSS')) AS trasferimento_con_sblocco, 
	getNomeFileSbloccoIN(a.id_richiesta)  AS nome_file_sblocco, 
	getNomeFileESP(a.id_richiesta, a.CODICE_OPERATORE_DONATING,1)  AS nome_file_esp, 
	da.data_ora_cessazione  AS  data_attivazione_effettiva 
 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 t, 
  DBCGO_LOV tt,
  DBCGO_LOV_REF p, 
  DBCGO_PROFILO_TARIFFARIO PTP, 
  DBCGO_OFFERTA PTO, 
  DBCGO_ACCORDO PTA , 
  SAP_ANAG_FV saf, 
  DBCGO_STATO_MAPPING_REC_DONV s , 
  MNP_DWH_TC_ANOMALO tc_ext  , 
  MNP_DWH_MSS_ATT_IN_VIEW da 
  --MNP_DWH_XML_IN xml1 
 WHERE ( a.CODICE_OPERATORE_V_RECIPIENT IS NULL 
	   		  				AND (a.CODICE_OPERATORE_RECIPIENT  = 'TIMG' OR a.CODICE_OPERATORE_RECIPIENT = 'TIMT') ) 
	AND 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 t.lov_name(+)='FLAG_PROGETTO_ADHOC' 
  AND tt.lov_name(+)='FLAG_PROGETTO_ADHOC'
  AND a.RICHIESTAADHOC=TO_NUMBER(t.name(+)) 
  AND a.RICHIESTAADHOCAOM=TO_NUMBER(tt.name(+))
  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 (+) 
  --AND ((tc.stato IS NOT NULL AND s.id_stato_tc=tc.stato) OR (tc.stato IS NULL AND s.id_stato_recipient = a.stato))
  AND s.id_stato_recipient = a.stato 
  AND tc.id_richiesta= tc_ext.id_richiesta(+) 
  AND a.id_richiesta= da.id_richiesta(+) 
	--     AND a.id_richiesta= xml1.id_richiesta(+) 
	--	 AND xml1.tipo_file(+)=6 
  UNION ALL
  SELECT 
    /*+ INDEX(a) */ 
   a.ID_RICHIESTA, 
   s.id_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, 
    NULL AS CAUSALE_ACCODAMENTO, 
   e.RICHIESTAADHOC AS RICHIESTAADHOC, 
   NULL AS RICHIESTAADHOCAOM, 
   0 AS ID_PRIORITA, 
   a.data_inserimento AS INSERT_DATE, 
   a.DATA_ORA_MODIFICA AS UPDATE_DATE, 
   a.ICCD_SERIAL_NUMBER, 
   NULL AS IMSI, 
   DECODE(a.nome_ot,NULL,NULL,NVL(f.name,'NN')) AS NOME_OT, 
   a.NUMERO_DOCUMENTO, 
   a.TIPO_DOCUMENTO, 
   NULL AS NUMERO_INVII, 
   NULL AS TIMESTAMP, 
   a.DATA_TRANSIZIONE_STATO, 
   0 AS ID_PRIORITA_MNP, 
   NULL AS DATA_TRANSIZIONE_STATO_GRP, 
   a.CODICE_DEALER, 
   NULL AS CAR1, 
   NULL AS CAR2, 
   a.CODICE_OPERATORE_RECIPIENT, 
   NULL AS CODICE_GRUPPO, 
   a.SISTEMA_MITT AS SISTEMA_MITTENTE, 
   a.COD_PROFILO_TARIFFARIO, 
   NULL AS COD_OFFERTA, 
   NULL AS COD_ACCORDO, 
   s.descr AS descr_stato, 
   b.vis_day_num AS vis_day_num, 
   NULL AS id_stato_grp, 
   0 AS priority_type, 
   NULL AS priorita, 
   NULL AS priorita_mnp, 
   NVL(f.descr,'Non disponibile') 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, 
   NULL AS car1_desc, --i.descr AS car1_desc, 
   NULL AS car2_desc, --l.descr AS car2_desc, 
   n.descr AS sistema_mittente_desc, 
   NULL AS DESC_PROFILO_TARIFFARIO, --PTP.DESC_PROFILO_TARIFFARIO, 
   NULL AS DESC_OFFERTA, --PTO.DESC_OFFERTA, 
  NULL AS DESC_ACCORDO, --PTA.DESC_ACCORDO, 
   NULL AS cod_canale, --a.cod_canale, 
   NULL AS descr, --q.descr, 
   o.name AS SOTTOCANALE_ACQUISIZIONE, 
   o.descr AS SOTTOCANALE_ACQUISIZIONE_DESC, 
   saf.SEGMENTAZIONE_CANALE, 
   NULL  AS pp_num , 
   NULL AS TIPO_OPERAZIONE, 
  NULL AS TIPO_OPERAZIONE_DESC, --  r.descr AS TIPO_OPERAZIONE_DESC, 
   NULL AS CODICE_ORDINE, 
   a.flag_tc, 
   NULL AS data_presa_in_carico, 
   NULL AS nome_file_aom, tc.importo, 
   DECODE(tc.stato,1,'TRASFERITO',0,'IN TRASFERIMENTO') AS tc_stato,TC.STATO AS TC_STATO_ID, 
   a.CODICE_OPERATORE_DONATING, 
   a.FLAG_FURTO, 
   a.FLAG_PREVALIDAZIONE, 
   NULL AS codici_rifiuto_validazione, 
   t.descr FLAG_PROGETTO_ADHOC, 
   a.BUSINESS_ID_DON AS ID_BUSINESS  , 
	DECODE ( tc_ext.FLAG_VERIFICA_CREDITO_ANOMALO,1,'CA',0,DECODE((SELECT   TRUNC ( (tc.importo  - 1) / TO_NUMBER (name)) 
                   FROM   DBCGO_LOV 
                  WHERE   lov_name = 'SOGLIA_CREDITO'),0,NULL,'CSS')) AS trasferimento_con_sblocco, 
	NULL as nome_file_sblocco, 
	getNomeFileESP(a.id_richiesta,a.CODICE_OPERATORE_DONATING,1)  AS nome_file_esp, 
	DECODE(b.descr_stato,'EVASA', a.DATA_TRANSIZIONE_STATO,NULL)  AS  data_attivazione_effettiva 
 FROM 
  DBCGO_GEST_RICH_DON_VIRT a, 
  DBCGO_GEST_RIC_DON_VIRT_TC tc, 
  DBCGO_STATO_DON_VIRT b, 
  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 t, 
 --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, 
  DBCGO_STATO_MAPPING_REC_DONV s  , 
	MNP_DWH_TC_ANOMALO tc_ext, 
		 MNP_DWH_RICH_DON_VIRT_EXT e 
  --MNP_DWH_XML_IN xml1 
 WHERE  a.stato = b.id_stato 
  AND a.nome_ot = f.NAME(+) 
  AND f.lov_name(+) = 'OT' 
  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 t.lov_name(+)='FLAG_PROGETTO_ADHOC' 
  AND a.id_richiesta=e.id_richiesta(+) 
  AND e.RICHIESTAADHOC=TO_NUMBER(t.name(+)) 
  --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_mitt = 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 (+) 
  --AND ((tc.stato IS NOT NULL AND s.id_stato_tc=tc.stato) OR (tc.stato IS NULL AND s.id_stato_don_virt = a.stato))
   AND s.id_stato_don_virt = a.stato
   AND tc.id_richiesta= tc_ext.id_richiesta(+)  
	--  AND a.id_richiesta= xml1.id_richiesta(+) 
		-- AND xml1.tipo_file(+)=6 
		  );