All Downloads are FREE. Search and download functionalities are using the official Maven repository.

expsigladb.Procedure.prt_rend_fin_ent_spe_dec.prc Maven / Gradle / Ivy

There is a newer version: 6.6.11
Show newest version
CREATE OR REPLACE PROCEDURE Prt_Rend_Fin_Ent_Spe_Dec
(INES           IN NUMBER,
 INGEST         IN CHAR,
 UFFICIALE      IN CHAR /* Y/N */) IS
 aId    NUMBER;

 i NUMBER := 0;

-- VARIABILI PARTE ENTRATE (CORRENTE E PRECEDENTE)

 ACC_COMP_ES_CORSO      NUMBER;
 RIS_COMP_ES_CORSO      NUMBER;
 ACC_RES_ES_CORSO       NUMBER;
 RIS_RES_ES_CORSO       NUMBER;

 ACC_COMP_ES_PREC       NUMBER;
 RIS_COMP_ES_PREC       NUMBER;
 ACC_RES_ES_PREC        NUMBER;
 RIS_RES_ES_PREC        NUMBER;

-- VARIABILI PARTE SPESE (CORRENTE E PRECEDENTE)

 ASSESTATO_COMP_ES_CORSO NUMBER;
 IMP_COMP_ES_CORSO       NUMBER;
 PAG_COMP_ES_CORSO       NUMBER;
 RES_PRO_ES_CORSO        NUMBER;
 PAG_RES_PRO_ES_CORSO    NUMBER;
 RES_IMP_ES_CORSO        NUMBER;
 PAG_RES_IMP_ES_CORSO    NUMBER;
 ST_RES_IMP_ASS_ES_CORSO NUMBER;

 ASSESTATO_COMP_ES_PREC NUMBER;
 IMP_COMP_ES_PREC       NUMBER;
 PAG_COMP_ES_PREC       NUMBER;
 RES_PRO_ES_PREC        NUMBER;
 PAG_RES_PRO_ES_PREC    NUMBER;
 RES_IMP_ES_PREC        NUMBER;
 PAG_RES_IMP_ES_PREC    NUMBER;
 ST_RES_IMP_ASS_ES_PREC NUMBER;

-- FINALI DI STAMPA DA PASSARE ALLA VIEW

 FULL_COST_ES_CORSO     NUMBER;
 RES_FIN_ES_CORSO       NUMBER;
 PAG_TOT_ES_CORSO       NUMBER;

 FULL_COST_ES_PREC      NUMBER;
 RES_FIN_ES_PREC        NUMBER;
 PAG_TOT_ES_PREC        NUMBER;

 FL_2006_ES_PREC        CHAR(1);

 DIP_REC                VARCHAR2(20);
 DES_DIPARTIMENTO       VARCHAR2(200);

BEGIN

SELECT IBMSEQ00_CR_PACKAGE.NEXTVAL
INTO aId
FROM dual;

SELECT fl_regolamento_2006
INTO   FL_2006_ES_PREC
FROM   PARAMETRI_CNR
WHERE  ESERCIZIO = ines-1;

-- RENDICONTO DECISIONALE ENTRATA

IF INGEST = 'E' THEN

-- RECUPERO I DIVERSI DIPARTIMENTI - TITOLI - CATEGORIE PRESENTI NEI DUE ANNI

FOR DIP_TIT_CAT IN    (SELECT  DISTINCT
											-- ST_DIP_YN
											decode(Get_Dip_From_Modulo(SALDI.ESERCIZIO, LINEA_ATTIVITA.PG_PROGETTO, 'X'),'SAC',Decode (CD_LIVELLO1, '5', 'N', '6', 'N', 'Y'),'Y') ST_DIP_YN,
											-- SCIENT_YN
											 decode(Get_Dip_From_Modulo(SALDI.ESERCIZIO, LINEA_ATTIVITA.PG_PROGETTO, 'X'),'SAC','N','Y') SCIENT_YN,
											decode(Get_Dip_From_Modulo(SALDI.ESERCIZIO, LINEA_ATTIVITA.PG_PROGETTO, 'X'),'SAC',Decode (CD_LIVELLO1, '5', '14', '6', '14',  lpad(to_char(peso),2,'0')), lpad(to_char(peso),2,'0')) PESO_DIP,
											-- NUM_DIP
											lpad(to_char(peso),2,'0') NUM_DIP,
											-- DIP
											decode(Get_Dip_From_Modulo(SALDI.ESERCIZIO, LINEA_ATTIVITA.PG_PROGETTO, 'X'),'SAC',Decode (CD_LIVELLO1, '6', 'SAC_PGIRO', 'SAC'),Get_Dip_From_Modulo(SALDI.ESERCIZIO, LINEA_ATTIVITA.PG_PROGETTO, 'X')) DIP,
											p.DS_DIPARTIMENTO,
                               CLASS.CD_LIVELLO1,
                               CLASS.CD_LIVELLO2
                       FROM    VOCE_F_SALDI_CDR_LINEA SALDI,
                       	       ELEMENTO_VOCE,
                               V_CLASSIFICAZIONE_VOCI CLASS,
                       	       LINEA_ATTIVITA,
                       	       dipartimento_peso p
                       WHERE
                       				 saldi.esercizio= p.esercizio AND
 															 Get_Dip_From_Modulo(SALDI.ESERCIZIO, LINEA_ATTIVITA.PG_PROGETTO, 'X')= p.cd_dipartimento
                       		 and SALDI.ESERCIZIO IN (INES, INES-1)              AND
                               SALDI.TI_GESTIONE              = 'E'  AND
                               CLASS.ID_CLASSIFICAZIONE       = ELEMENTO_VOCE.ID_CLASSIFICAZIONE  AND
                               ELEMENTO_VOCE.ESERCIZIO        = SALDI.ESERCIZIO         AND
                               ELEMENTO_VOCE.TI_APPARTENENZA  = SALDI.TI_APPARTENENZA   AND
                               ELEMENTO_VOCE.TI_GESTIONE      = SALDI.TI_GESTIONE       AND
                               ELEMENTO_VOCE.CD_ELEMENTO_VOCE = SALDI.CD_ELEMENTO_VOCE  AND
                               SALDI.CD_CENTRO_RESPONSABILITA = LINEA_ATTIVITA.CD_CENTRO_RESPONSABILITA AND
                               SALDI.CD_LINEA_ATTIVITA	       = LINEA_ATTIVITA.CD_LINEA_ATTIVITA       AND
                               LINEA_ATTIVITA.PG_PROGETTO     IS NOT NULL) LOOP

-- RESET VARIABILI

ACC_COMP_ES_CORSO  := 0;
RIS_COMP_ES_CORSO  := 0;
ACC_RES_ES_CORSO   := 0;
RIS_RES_ES_CORSO   := 0;

ACC_COMP_ES_PREC   := 0;
ACC_RES_ES_PREC    := 0;
RIS_COMP_ES_PREC   := 0;
RIS_RES_ES_PREC    := 0;

-- A PARTIRE DAL DIPARTIMENTO - TITOLO - CATEGORIA, E INDIPENDENTEMENTE DALL'ANNO IN CUI ESISTE (ATTUALE O PRECEDENTE),
-- VADO SULLE COMBINAZIONI CONTABILI COMPLETE

------------------------------------------------ ESERCIZIO CORRENTE ------------------------------------------------

-- LOOP SULL'ESERCIZIO CORRENTE

  FOR COMB_CONTABILI IN (SELECT DISTINCT
                               SALDI.CD_CENTRO_RESPONSABILITA CDR,
                               SALDI.CD_LINEA_ATTIVITA,
                               SALDI.TI_GESTIONE,
                               SALDI.TI_APPARTENENZA,
                               SALDI.CD_ELEMENTO_VOCE
                       FROM    VOCE_F_SALDI_CDR_LINEA SALDI,
                       	       ELEMENTO_VOCE,
                               V_CLASSIFICAZIONE_VOCI CLASS,
                       	       LINEA_ATTIVITA
                       WHERE   SALDI.ESERCIZIO                = INES                            AND
                               SALDI.TI_GESTIONE              = 'E'      AND
                               ELEMENTO_VOCE.ESERCIZIO        = SALDI.ESERCIZIO                 AND
                               ELEMENTO_VOCE.TI_APPARTENENZA  = SALDI.TI_APPARTENENZA           AND
                               ELEMENTO_VOCE.TI_GESTIONE      = SALDI.TI_GESTIONE               AND
                               ELEMENTO_VOCE.CD_ELEMENTO_VOCE = SALDI.CD_ELEMENTO_VOCE          AND
                               ELEMENTO_VOCE.ID_CLASSIFICAZIONE = CLASS.ID_CLASSIFICAZIONE      AND
                               CLASS.ESERCIZIO                = ELEMENTO_VOCE.ESERCIZIO         AND
                               CLASS.TI_GESTIONE              = ELEMENTO_VOCE.TI_GESTIONE       AND
                               CLASS.CD_LIVELLO1              = DIP_TIT_CAT.CD_LIVELLO1         AND
                               CLASS.CD_LIVELLO2              = DIP_TIT_CAT.CD_LIVELLO2         AND
                               Decode(Get_Dip_From_Modulo(INES, LINEA_ATTIVITA.PG_PROGETTO, 'X'), 'SAC', Decode (CLASS.CD_LIVELLO1, '5', 'SAC_PGIRO', '6', 'SAC_PGIRO', 'SAC'),Get_Dip_From_Modulo(INES, LINEA_ATTIVITA.PG_PROGETTO, 'X')) = DIP_TIT_CAT.DIP And
                               SALDI.CD_CENTRO_RESPONSABILITA = LINEA_ATTIVITA.CD_CENTRO_RESPONSABILITA AND
                               SALDI.CD_LINEA_ATTIVITA	       = LINEA_ATTIVITA.CD_LINEA_ATTIVITA       AND
                               LINEA_ATTIVITA.PG_PROGETTO     IS NOT NULL) LOOP

        ACC_COMP_ES_CORSO := NVL(ACC_COMP_ES_CORSO, 0) + Cnrutl002.RF_IM_OBBL_ACC_COMP (INES, INES, COMB_CONTABILI.CDR, COMB_CONTABILI.CD_LINEA_ATTIVITA, COMB_CONTABILI.TI_APPARTENENZA, COMB_CONTABILI.TI_GESTIONE, NULL, COMB_CONTABILI.CD_ELEMENTO_VOCE);
        RIS_COMP_ES_CORSO := NVL(RIS_COMP_ES_CORSO, 0) + Cnrutl002.RF_IM_MANDATI_REVERSALI_PRO (INES, INES, COMB_CONTABILI.CDR, COMB_CONTABILI.CD_LINEA_ATTIVITA, COMB_CONTABILI.TI_APPARTENENZA, COMB_CONTABILI.TI_GESTIONE, NULL, COMB_CONTABILI.CD_ELEMENTO_VOCE);
        ACC_RES_ES_CORSO  := NVL(ACC_RES_ES_CORSO, 0) + Cnrutl002.RF_IM_OBBL_RES_PRO (INES, NULL, COMB_CONTABILI.CDR, COMB_CONTABILI.CD_LINEA_ATTIVITA, COMB_CONTABILI.TI_APPARTENENZA, COMB_CONTABILI.TI_GESTIONE, NULL, COMB_CONTABILI.CD_ELEMENTO_VOCE);
        RIS_RES_ES_CORSO  := NVL(RIS_RES_ES_CORSO, 0) + Cnrutl002.RF_IM_MANDATI_REVERSALI_PRO (INES, NULL, COMB_CONTABILI.CDR, COMB_CONTABILI.CD_LINEA_ATTIVITA, COMB_CONTABILI.TI_APPARTENENZA, COMB_CONTABILI.TI_GESTIONE, NULL, COMB_CONTABILI.CD_ELEMENTO_VOCE);

--Dbms_Output.PUT_LINE ('COMB_CONTABILI '||COMB_CONTABILI.CDR||' '||COMB_CONTABILI.CD_ELEMENTO_VOCE||' '||COMB_CONTABILI.CD_LINEA_ATTIVITA||' '||
--ACC_COMP_ES_CORSO||' '||RIS_COMP_ES_CORSO||' '||ACC_RES_ES_CORSO ||' '||RIS_RES_ES_CORSO);

  END LOOP; -- FINE LOOP ESERCIZIO CONTABILE ESERCIZIO CORRENTE


------------------------------------------------ ESERCIZIO CORRENTE ------------------------------------------------
-- LOOP SULL'ESERCIZIO PRECEDENTE SE E' SUCCESSIVO AL 2005 (RICORDA PEZZOTTO !)

IF FL_2006_ES_PREC = 'Y' THEN

    FOR COMB_CONTABILI_ES_PREC IN
                      (SELECT DISTINCT
                               SALDI.CD_CENTRO_RESPONSABILITA CDR,
                               SALDI.CD_LINEA_ATTIVITA,
                               SALDI.TI_GESTIONE,
                               SALDI.TI_APPARTENENZA,
                               SALDI.CD_ELEMENTO_VOCE
                       FROM    VOCE_F_SALDI_CDR_LINEA SALDI,
                       	       ELEMENTO_VOCE,
                               V_CLASSIFICAZIONE_VOCI CLASS,
                       	       LINEA_ATTIVITA
                       WHERE   SALDI.ESERCIZIO                = INES-1                          AND
                               SALDI.TI_GESTIONE              = 'E'      AND
                               ELEMENTO_VOCE.ESERCIZIO        = SALDI.ESERCIZIO                 AND
                               ELEMENTO_VOCE.TI_APPARTENENZA  = SALDI.TI_APPARTENENZA           AND
                               ELEMENTO_VOCE.TI_GESTIONE      = SALDI.TI_GESTIONE               AND
                               ELEMENTO_VOCE.CD_ELEMENTO_VOCE = SALDI.CD_ELEMENTO_VOCE          AND
                               ELEMENTO_VOCE.ID_CLASSIFICAZIONE = CLASS.ID_CLASSIFICAZIONE      AND
                               CLASS.ESERCIZIO                = ELEMENTO_VOCE.ESERCIZIO         AND
                               CLASS.TI_GESTIONE              = ELEMENTO_VOCE.TI_GESTIONE       AND
                               CLASS.CD_LIVELLO1              = DIP_TIT_CAT.CD_LIVELLO1         AND
                               CLASS.CD_LIVELLO2              = DIP_TIT_CAT.CD_LIVELLO2         AND
                               SALDI.CD_CENTRO_RESPONSABILITA = LINEA_ATTIVITA.CD_CENTRO_RESPONSABILITA AND
                               SALDI.CD_LINEA_ATTIVITA	      = LINEA_ATTIVITA.CD_LINEA_ATTIVITA       AND
                               LINEA_ATTIVITA.PG_PROGETTO     IS NOT NULL) LOOP

        ACC_COMP_ES_PREC := NVL(ACC_COMP_ES_PREC, 0) + Cnrutl002.RF_IM_OBBL_ACC_COMP (INES-1, INES-1, COMB_CONTABILI_ES_PREC.CDR, COMB_CONTABILI_ES_PREC.CD_LINEA_ATTIVITA, COMB_CONTABILI_ES_PREC.TI_APPARTENENZA, COMB_CONTABILI_ES_PREC.TI_GESTIONE, NULL, COMB_CONTABILI_ES_PREC.CD_ELEMENTO_VOCE);
        ACC_RES_ES_PREC  := NVL(ACC_RES_ES_PREC, 0) + Cnrutl002.RF_IM_OBBL_RES_PRO (INES-1, NULL, COMB_CONTABILI_ES_PREC.CDR, COMB_CONTABILI_ES_PREC.CD_LINEA_ATTIVITA, COMB_CONTABILI_ES_PREC.TI_APPARTENENZA, COMB_CONTABILI_ES_PREC.TI_GESTIONE, NULL, COMB_CONTABILI_ES_PREC.CD_ELEMENTO_VOCE);
        RIS_COMP_ES_PREC := NVL(RIS_COMP_ES_PREC, 0) + Cnrutl002.RF_IM_MANDATI_REVERSALI_PRO (INES-1, INES-1, COMB_CONTABILI_ES_PREC.CDR, COMB_CONTABILI_ES_PREC.CD_LINEA_ATTIVITA, COMB_CONTABILI_ES_PREC.TI_APPARTENENZA, COMB_CONTABILI_ES_PREC.TI_GESTIONE, NULL, COMB_CONTABILI_ES_PREC.CD_ELEMENTO_VOCE);
        RIS_RES_ES_PREC  := NVL(RIS_RES_ES_PREC, 0) + Cnrutl002.RF_IM_MANDATI_REVERSALI_PRO (INES-1, NULL, COMB_CONTABILI_ES_PREC.CDR, COMB_CONTABILI_ES_PREC.CD_LINEA_ATTIVITA, COMB_CONTABILI_ES_PREC.TI_APPARTENENZA, COMB_CONTABILI_ES_PREC.TI_GESTIONE, NULL, COMB_CONTABILI_ES_PREC.CD_ELEMENTO_VOCE);

    END LOOP; -- FINE EVENTUALE LOOP ESERCIZIO CONTABILE ESERCIZIO PRECEDENTE

ELSE

  BEGIN
    SELECT NVL(IMP_ACC_COMP, 0), NVL(RESIDUI_FINALI, 0), NVL(MANDATI_REVERSALI, 0)
    INTO   ACC_COMP_ES_PREC, ACC_RES_ES_PREC, RIS_COMP_ES_PREC
    FROM   PARAMETRI_REND_PREV_DEC
    WHERE  ESERCIZIO   = INES-1 AND
           TI_GESTIONE = 'E' AND
           CD_DIPARTIMENTO = DIP_TIT_CAT.DIP AND
           CD_LIVELLO1 = DIP_TIT_CAT.CD_LIVELLO1 AND
           CD_LIVELLO2 = DIP_TIT_CAT.CD_LIVELLO2;
  EXCEPTION
    WHEN NO_DATA_FOUND THEN
        ACC_COMP_ES_PREC := 0;
        ACC_RES_ES_PREC  := 0;
        RIS_COMP_ES_PREC := 0;
  END;

END IF;

-- inserimento NELLA VIEW (FISSO)

I := I + 1;
INSERT INTO PRT_VPG_REND_FIN_ENT_SPE_DEC (ID, CHIAVE, TIPO, SEQUENZA,
                                          ESERCIZIO, ST_DIP_YN, SCIENT_YN,
                                          PESO_DIP, NUM_DIP, DIP, DS_DIPARTIMENTO,
                                          CD_LIVELLO1, CD_LIVELLO1_ROM, DS_LIVELLO1,
                                          CD_LIVELLO2, DS_LIVELLO2,
                                          IM_OBBL_ACC_COMP,
                                          RES_FINALI,
                                          RIS_PAG_TOT,
                                          IM_OBBL_ACC_COMP_AP,
                                          RES_FINALI_AP,
                                          RIS_PAG_TOT_AP)
VALUES (aId, 'chiave', 't', i,
INES, DIP_TIT_CAT.ST_DIP_YN, DIP_TIT_CAT.SCIENT_YN,
DIP_TIT_CAT.PESO_DIP, DIP_TIT_CAT.NUM_DIP, DIP_TIT_CAT.DIP, DIP_TIT_CAT.DS_DIPARTIMENTO,
DIP_TIT_CAT.CD_LIVELLO1, trim(TO_CHAR(DIP_TIT_CAT.CD_LIVELLO1, 'RM')),
--cnrctb020.
cnrctb020.Getdeslivello(INES , 'E', DIP_TIT_CAT.CD_LIVELLO1, NULL, NULL, NULL, NULL, NULL, NULL),
DIP_TIT_CAT.CD_LIVELLO2,
--cnrctb020.
cnrctb020.Getdeslivello(INES , 'E', DIP_TIT_CAT.CD_LIVELLO1, DIP_TIT_CAT.CD_LIVELLO2, NULL, NULL, NULL, NULL, NULL),
----------------------------------- ESERCIZIO IN CORSO -----------------------------------
-- ACCERTATO A COMPETENZA
NVL(ACC_COMP_ES_CORSO, 0),
-- RESIDUI ATTIVI AL TERMINE DELL'ESERCIZIO:
-- ACCERTAMENTI COMPETENZA NON RISCOSSI + RESIDUI ATTIVI NON RISCOSSI (FORMULA TRADIZIONALE)
NVL(ACC_COMP_ES_CORSO, 0) - NVL(RIS_COMP_ES_CORSO, 0) + NVL(ACC_RES_ES_CORSO, 0) - NVL(RIS_RES_ES_CORSO, 0),
-- RISCOSSO TOTALE (COMPETENZA + RESIDUI DI QUALSIASI ANNO)
NVL(RIS_COMP_ES_CORSO, 0) + NVL(RIS_RES_ES_CORSO, 0),
----------------------------------- ESERCIZIO PRECEDENTE -----------------------------------
-- ACCERTATO A COMPETENZA ANNO PRECEDENTE
NVL(ACC_COMP_ES_PREC, 0), -- SE NON VARIABILE RECUPERATA. L'ALTRA
-- RESIDUI ATTIVI AL TERMINE DELL'ESERCIZIO PRECEDENTE:
-- ACCERTAMENTI COMPETENZA NON RISCOSSI + RESIDUI ATTIVI NON RISCOSSI (FORMULA TRADIZIONALE)
DECODE(FL_2006_ES_PREC, 'Y', NVL(ACC_COMP_ES_PREC, 0) - NVL(RIS_COMP_ES_PREC, 0) + NVL(ACC_RES_ES_PREC, 0) - NVL(RIS_RES_ES_PREC, 0),
                        'N', NVL(ACC_RES_ES_PREC, 0)),
-- RISCOSSO TOTALE (COMPETENZA + RESIDUO)
NVL(RIS_COMP_ES_PREC, 0) + NVL(RIS_RES_ES_PREC, 0));

END LOOP; -- FINE LOOP PRINCIPALE SU DIP/TIT/CAT


ELSIF INGEST = 'S' THEN

-- A PARTIRE DAL TITOLO - CATEGORIA, E INDIPENDENTEMENTE DALL'ANNO IN CUI ESISTE (ATTUALE O PRECEDENTE),
-- VADO SULLE COMBINAZIONI CONTABILI COMPLETE

------------------------------------------------ ESERCIZIO CORRENTE ------------------------------------------------

-- LOOP SULL'ESERCIZIO CORRENTE CON TITOLO E CATEGORIA PASSATI E PRENDO CDR, LINEA E MODULO

  FOR COMB_CONTABILI IN (SELECT DISTINCT
                               SALDI.CD_CENTRO_RESPONSABILITA CDR,
                               SALDI.CD_LINEA_ATTIVITA,
                               LINEA_ATTIVITA.PG_PROGETTO,
                               SALDI.TI_GESTIONE,
                               SALDI.TI_APPARTENENZA,
                               SALDI.CD_ELEMENTO_VOCE,
                               CLASS.CD_LIVELLO1,
                               CLASS.CD_LIVELLO2
                       FROM    VOCE_F_SALDI_CDR_LINEA SALDI,
                       	       ELEMENTO_VOCE,
                               V_CLASSIFICAZIONE_VOCI CLASS,
                       	       LINEA_ATTIVITA
                       WHERE   SALDI.ESERCIZIO                = INES                            AND
--                               SALDI.CD_CENTRO_RESPONSABILITA = '075.000.000' And
                               SALDI.TI_GESTIONE              = 'S'        AND
                               ELEMENTO_VOCE.ESERCIZIO        = SALDI.ESERCIZIO                 AND
                               ELEMENTO_VOCE.TI_APPARTENENZA  = SALDI.TI_APPARTENENZA           AND
                               ELEMENTO_VOCE.TI_GESTIONE      = SALDI.TI_GESTIONE               AND
                               ELEMENTO_VOCE.CD_ELEMENTO_VOCE = SALDI.CD_ELEMENTO_VOCE          AND
                               ELEMENTO_VOCE.ID_CLASSIFICAZIONE = CLASS.ID_CLASSIFICAZIONE      AND
                               CLASS.ESERCIZIO                = ELEMENTO_VOCE.ESERCIZIO         AND
                               CLASS.TI_GESTIONE              = ELEMENTO_VOCE.TI_GESTIONE       AND
                               SALDI.CD_CENTRO_RESPONSABILITA = LINEA_ATTIVITA.CD_CENTRO_RESPONSABILITA AND
                               SALDI.CD_LINEA_ATTIVITA	       = LINEA_ATTIVITA.CD_LINEA_ATTIVITA       AND
                               LINEA_ATTIVITA.PG_PROGETTO     IS NOT NULL) LOOP

/* ORA QUA */

 ASSESTATO_COMP_ES_CORSO := 0;
 IMP_COMP_ES_CORSO       := 0;
 PAG_COMP_ES_CORSO       := 0;
 RES_PRO_ES_CORSO        := 0;
 PAG_RES_PRO_ES_CORSO    := 0;
 RES_IMP_ES_CORSO        := 0;
 PAG_RES_IMP_ES_CORSO    := 0;
 ST_RES_IMP_ASS_ES_CORSO := 0;

 ASSESTATO_COMP_ES_PREC  := 0;
 IMP_COMP_ES_PREC        := 0;
 PAG_COMP_ES_PREC        := 0;
 RES_PRO_ES_PREC         := 0;
 PAG_RES_PRO_ES_PREC     := 0;
 RES_IMP_ES_PREC         := 0;
 PAG_RES_IMP_ES_PREC     := 0;
 ST_RES_IMP_ASS_ES_PREC  := 0;

-- PER LA STAMPA

 FULL_COST_ES_CORSO      := 0;
 RES_FIN_ES_CORSO        := 0;
 PAG_TOT_ES_CORSO        := 0;

 FULL_COST_ES_PREC       := 0;
 RES_FIN_ES_PREC         := 0;
 PAG_TOT_ES_PREC         := 0;

/* FINE ORA QUA */

-- RECUPERA GLI IMPORTI SECCHI PER CDR, LINEA E VOCE

-- IMPEGNATO A COMPETENZA

  IMP_COMP_ES_CORSO := NVL(Cnrutl002.RF_IM_OBBL_ACC_COMP (INES, INES, COMB_CONTABILI.CDR, COMB_CONTABILI.CD_LINEA_ATTIVITA, COMB_CONTABILI.TI_APPARTENENZA, COMB_CONTABILI.TI_GESTIONE, NULL, COMB_CONTABILI.CD_ELEMENTO_VOCE), 0);

-- IMPEGNATO FULL COSTING

-- DA INSERIRE!!!!!!!!!!!
-- ALLA FINE, DIRETTAMENTE NELLA VIEW FINALE PER DIPARTIMENTO / TITOLO / CATEGORIA


-- RESIDUI PASSIVI FINALI (ASSESTATO_COMP_ES_CORSO - PAG_COMP_ES_CORSO) +
--                        (RES_PRO_ES_CORSO - PAG_RES_PRO_ES_CORSO) +
--                        (ST_RES_IMP_ASS_ES_CORSO - PAG_RES_IMP_ES_CORSO)

ASSESTATO_COMP_ES_CORSO := Cnrutl002.RF_IM_STANZ_INIZIALE_A1 (INES, INES, COMB_CONTABILI.CDR, COMB_CONTABILI.CD_LINEA_ATTIVITA, COMB_CONTABILI.TI_APPARTENENZA, COMB_CONTABILI.TI_GESTIONE, NULL, COMB_CONTABILI.CD_ELEMENTO_VOCE) +
                           Cnrutl002.RF_variazioni_piu (INES, INES, COMB_CONTABILI.CDR, COMB_CONTABILI.CD_LINEA_ATTIVITA, COMB_CONTABILI.TI_APPARTENENZA, COMB_CONTABILI.TI_GESTIONE, NULL, COMB_CONTABILI.CD_ELEMENTO_VOCE) -
                           ABS(Cnrutl002.RF_variazioni_meno (INES, INES, COMB_CONTABILI.CDR, COMB_CONTABILI.CD_LINEA_ATTIVITA, COMB_CONTABILI.TI_APPARTENENZA, COMB_CONTABILI.TI_GESTIONE, NULL, COMB_CONTABILI.CD_ELEMENTO_VOCE));
PAG_COMP_ES_CORSO := NVL(Cnrutl002.RF_IM_MANDATI_REVERSALI_PRO (INES, INES, COMB_CONTABILI.CDR, COMB_CONTABILI.CD_LINEA_ATTIVITA, COMB_CONTABILI.TI_APPARTENENZA, COMB_CONTABILI.TI_GESTIONE, NULL, COMB_CONTABILI.CD_ELEMENTO_VOCE), 0);

RES_PRO_ES_CORSO  := NVL(Cnrutl002.RF_IM_OBBL_RES_PRO (INES, NULL, COMB_CONTABILI.CDR, COMB_CONTABILI.CD_LINEA_ATTIVITA, COMB_CONTABILI.TI_APPARTENENZA, COMB_CONTABILI.TI_GESTIONE, NULL, COMB_CONTABILI.CD_ELEMENTO_VOCE), 0);
PAG_RES_PRO_ES_CORSO := NVL(Cnrutl002.RF_IM_MANDATI_REVERSALI_PRO (INES, NULL, COMB_CONTABILI.CDR, COMB_CONTABILI.CD_LINEA_ATTIVITA, COMB_CONTABILI.TI_APPARTENENZA, COMB_CONTABILI.TI_GESTIONE, NULL, COMB_CONTABILI.CD_ELEMENTO_VOCE), 0);

ST_RES_IMP_ASS_ES_CORSO := Cnrutl002.IM_STANZ_RES_IMPROPRIO (INES, NULL, COMB_CONTABILI.CDR, COMB_CONTABILI.CD_LINEA_ATTIVITA, COMB_CONTABILI.TI_APPARTENENZA, COMB_CONTABILI.TI_GESTIONE, NULL, COMB_CONTABILI.CD_ELEMENTO_VOCE)+
                           Cnrutl002.VAR_PIU_STANZ_RES_IMP (INES, NULL, COMB_CONTABILI.CDR, COMB_CONTABILI.CD_LINEA_ATTIVITA, COMB_CONTABILI.TI_APPARTENENZA, COMB_CONTABILI.TI_GESTIONE, NULL, COMB_CONTABILI.CD_ELEMENTO_VOCE)-
                           ABS(Cnrutl002.VAR_MENO_STANZ_RES_IMP (INES, NULL, COMB_CONTABILI.CDR, COMB_CONTABILI.CD_LINEA_ATTIVITA, COMB_CONTABILI.TI_APPARTENENZA, COMB_CONTABILI.TI_GESTIONE, NULL, COMB_CONTABILI.CD_ELEMENTO_VOCE));
PAG_RES_IMP_ES_CORSO := NVL(Cnrutl002.IM_MANDATI_REVERSALI_IMP (INES, NULL, COMB_CONTABILI.CDR, COMB_CONTABILI.CD_LINEA_ATTIVITA, COMB_CONTABILI.TI_APPARTENENZA, COMB_CONTABILI.TI_GESTIONE, NULL, COMB_CONTABILI.CD_ELEMENTO_VOCE), 0);

/*
Dbms_Output.PUT_LINE ('DATI SPESA PAGAMENTI '||DIP_TIT_CAT.DIP||' '||DIP_TIT_CAT.CD_LIVELLO1||' '||DIP_TIT_CAT.CD_LIVELLO2||
                                     COMB_CONTABILI.CDR||' '||COMB_CONTABILI.CD_ELEMENTO_VOCE||' '||
                                     COMB_CONTABILI.CD_LINEA_ATTIVITA||' '||
                                     PAG_COMP_ES_CORSO||' '||PAG_RES_PRO_ES_CORSO||' '||PAG_RES_IMP_ES_CORSO);
*/

-- SE LA STAMPA E' UFFICIALE SOSTITUISCO (COME NEL GESTIONALE) L'ASSESTATO ALL'IMPEGNATO !

IF UFFICIALE = 'Y' THEN
  IMP_COMP_ES_CORSO := ASSESTATO_COMP_ES_CORSO;
END IF;

-- PER LA STAMPA

IF UFFICIALE = 'Y' THEN
  RES_FIN_ES_CORSO := (NVL(ASSESTATO_COMP_ES_CORSO, 0) - NVL(PAG_COMP_ES_CORSO, 0)) +
                      (NVL(RES_PRO_ES_CORSO, 0) - NVL(PAG_RES_PRO_ES_CORSO, 0)) +
                      (NVL(ST_RES_IMP_ASS_ES_CORSO, 0) - NVL(PAG_RES_IMP_ES_CORSO, 0));
ELSE
  RES_FIN_ES_CORSO := (NVL(IMP_COMP_ES_CORSO, 0) - NVL(PAG_COMP_ES_CORSO, 0)) +
                      (NVL(RES_PRO_ES_CORSO, 0) - NVL(PAG_RES_PRO_ES_CORSO, 0)) +
                      (NVL(ST_RES_IMP_ASS_ES_CORSO, 0) - NVL(PAG_RES_IMP_ES_CORSO, 0));
END IF;

-- PER LA STAMPA: PAGAMENTI TOTALI (PAG_COMP_ES_CORSO + PAG_RES_PRO_ES_CORSO + PAG_RES_IMP_ES_CORSO)

PAG_TOT_ES_CORSO := NVL(PAG_TOT_ES_CORSO, 0) + NVL(PAG_COMP_ES_CORSO, 0) + NVL(PAG_RES_PRO_ES_CORSO, 0) + NVL(PAG_RES_IMP_ES_CORSO, 0);

-- INSERIMENTO NELLA TABELLA D'APPOGGIO

I := I + 1;
INSERT INTO PRT_VPG_REND_FIN_ENT_SPE_DEC_D (ESERCIZIO, CDR, LINEA, PG_MODULO,
                                            DIP, CD_LIVELLO1, CD_LIVELLO2,
                                            IM_OBBL_ACC_COMP, FULL_COST_AC, RES_FINALI, RIS_PAG_TOT,
                                            ID, CHIAVE, TIPO, SEQUENZA)
VALUES
(INES, COMB_CONTABILI.CDR, COMB_CONTABILI.CD_LINEA_ATTIVITA, COMB_CONTABILI.PG_PROGETTO,
 Get_Dip_From_Modulo(INES, COMB_CONTABILI.PG_PROGETTO, 'X'),
 COMB_CONTABILI.CD_LIVELLO1,
 COMB_CONTABILI.CD_LIVELLO2,
 IMP_COMP_ES_CORSO, FULL_COST_ES_CORSO, RES_FIN_ES_CORSO, PAG_TOT_ES_CORSO,
 1, 'SUB', 'C', I);

END LOOP; -- FINE LOOP ESERCIZIO CONTABILE ESERCIZIO CORRENTE

-- loop solo per l'impegnato full costing conservato dalla tabella PARAMETRI_REND_PREV_DEC
-- NON ATTIVARE IL LOOP, GIA' LO FA
/*
For CUR_FULL_COST_AC In (Select ESERCIZIO, CD_DIPARTIMENTO, CD_LIVELLO1, CD_LIVELLO2, FULL_COSTING
                         From   PARAMETRI_REND_PREV_DEC
                         Where  ESERCIZIO = INES And
                                TI_GESTIONE = 'S') Loop

I := I + 1;
Insert Into PRT_VPG_REND_FIN_ENT_SPE_DEC_D (ESERCIZIO, DIP, CD_LIVELLO1, CD_LIVELLO2, FULL_COST_AC,
                                            ID, CHIAVE, TIPO, SEQUENZA)
Values
(CUR_FULL_COST_AC.ESERCIZIO, CUR_FULL_COST_AC.CD_DIPARTIMENTO, CUR_FULL_COST_AC.CD_LIVELLO1, CUR_FULL_COST_AC.CD_LIVELLO2,
 CUR_FULL_COST_AC.FULL_COSTING, 1, 'SUB', 'C', I);

End Loop;
*/

-- LOOP SULL'ESERCIZIO PRECEDENTE SE E' SUCCESSIVO AL 2005 (RICORDA PEZZOTTO !)

IF FL_2006_ES_PREC = 'Y' THEN

    FOR COMB_CONTABILI_ES_PREC IN

                        (SELECT DISTINCT
                               SALDI.CD_CENTRO_RESPONSABILITA CDR,
                               SALDI.CD_LINEA_ATTIVITA,
                               LINEA_ATTIVITA.PG_PROGETTO,
                               SALDI.TI_GESTIONE,
                               SALDI.TI_APPARTENENZA,
                               SALDI.CD_ELEMENTO_VOCE,
                               CLASS.CD_LIVELLO1,
                               CLASS.CD_LIVELLO2
                       FROM    VOCE_F_SALDI_CDR_LINEA SALDI,
                       	       ELEMENTO_VOCE,
                               V_CLASSIFICAZIONE_VOCI CLASS,
                       	       LINEA_ATTIVITA
                       WHERE   SALDI.ESERCIZIO                = INES-1                          AND
                               SALDI.TI_GESTIONE              = 'S'                             AND
                               ELEMENTO_VOCE.ESERCIZIO        = SALDI.ESERCIZIO                 AND
                               ELEMENTO_VOCE.TI_APPARTENENZA  = SALDI.TI_APPARTENENZA           AND
                               ELEMENTO_VOCE.TI_GESTIONE      = SALDI.TI_GESTIONE               AND
                               ELEMENTO_VOCE.CD_ELEMENTO_VOCE = SALDI.CD_ELEMENTO_VOCE          AND
                               ELEMENTO_VOCE.ID_CLASSIFICAZIONE = CLASS.ID_CLASSIFICAZIONE      AND
                               CLASS.ESERCIZIO                = ELEMENTO_VOCE.ESERCIZIO         AND
                               CLASS.TI_GESTIONE              = ELEMENTO_VOCE.TI_GESTIONE       AND
                               SALDI.CD_CENTRO_RESPONSABILITA = LINEA_ATTIVITA.CD_CENTRO_RESPONSABILITA AND
                               SALDI.CD_LINEA_ATTIVITA	       = LINEA_ATTIVITA.CD_LINEA_ATTIVITA       AND
                               LINEA_ATTIVITA.PG_PROGETTO     IS NOT NULL) LOOP

-- IMPEGNATO A COMPETENZA ES PREC

IMP_COMP_ES_PREC := NVL(IMP_COMP_ES_PREC, 0) + Cnrutl002.RF_IM_OBBL_ACC_COMP (INES-1, INES-1, COMB_CONTABILI_ES_PREC.CDR, COMB_CONTABILI_ES_PREC.CD_LINEA_ATTIVITA, COMB_CONTABILI_ES_PREC.TI_APPARTENENZA, COMB_CONTABILI_ES_PREC.TI_GESTIONE, NULL, COMB_CONTABILI_ES_PREC.CD_ELEMENTO_VOCE);

-- IMPEGNATO FULL COSTING

-- DA INSERIRE!!!!!!!!!!!
FULL_COST_ES_PREC := 0;

-- RESIDUI PASSIVI FINALI (ASSESTATO_COMP_ES_PREC - PAG_COMP_ES_PREC) +
--                        (RES_PRO_ES_PREC - PAG_RES_PRO_ES_PREC) +
--                        (ST_RES_IMP_ASS_ES_PREC - PAG_RES_IMP_ES_PREC)

  ASSESTATO_COMP_ES_PREC := Cnrutl002.RF_IM_STANZ_INIZIALE_A1 (INES-1, INES-1, COMB_CONTABILI_ES_PREC.CDR, COMB_CONTABILI_ES_PREC.CD_LINEA_ATTIVITA, COMB_CONTABILI_ES_PREC.TI_APPARTENENZA, COMB_CONTABILI_ES_PREC.TI_GESTIONE, NULL, COMB_CONTABILI_ES_PREC.CD_ELEMENTO_VOCE)+
                            Cnrutl002.RF_variazioni_piu (INES-1, INES-1, COMB_CONTABILI_ES_PREC.CDR, COMB_CONTABILI_ES_PREC.CD_LINEA_ATTIVITA, COMB_CONTABILI_ES_PREC.TI_APPARTENENZA, COMB_CONTABILI_ES_PREC.TI_GESTIONE, NULL, COMB_CONTABILI_ES_PREC.CD_ELEMENTO_VOCE)-
                            ABS(Cnrutl002.RF_variazioni_meno (INES-1, INES-1, COMB_CONTABILI_ES_PREC.CDR, COMB_CONTABILI_ES_PREC.CD_LINEA_ATTIVITA, COMB_CONTABILI_ES_PREC.TI_APPARTENENZA, COMB_CONTABILI_ES_PREC.TI_GESTIONE, NULL, COMB_CONTABILI_ES_PREC.CD_ELEMENTO_VOCE));
  PAG_COMP_ES_PREC := Cnrutl002.RF_IM_MANDATI_REVERSALI_PRO (INES-1, INES-1, COMB_CONTABILI_ES_PREC.CDR, COMB_CONTABILI_ES_PREC.CD_LINEA_ATTIVITA, COMB_CONTABILI_ES_PREC.TI_APPARTENENZA, COMB_CONTABILI_ES_PREC.TI_GESTIONE, NULL, COMB_CONTABILI_ES_PREC.CD_ELEMENTO_VOCE);


  RES_PRO_ES_PREC     := Cnrutl002.RF_IM_OBBL_RES_PRO (INES-1, NULL, COMB_CONTABILI_ES_PREC.CDR, COMB_CONTABILI_ES_PREC.CD_LINEA_ATTIVITA, COMB_CONTABILI_ES_PREC.TI_APPARTENENZA, COMB_CONTABILI_ES_PREC.TI_GESTIONE, NULL, COMB_CONTABILI_ES_PREC.CD_ELEMENTO_VOCE);
  PAG_RES_PRO_ES_PREC := Cnrutl002.RF_IM_MANDATI_REVERSALI_PRO (INES-1, NULL, COMB_CONTABILI_ES_PREC.CDR, COMB_CONTABILI_ES_PREC.CD_LINEA_ATTIVITA, COMB_CONTABILI_ES_PREC.TI_APPARTENENZA, COMB_CONTABILI_ES_PREC.TI_GESTIONE, NULL, COMB_CONTABILI_ES_PREC.CD_ELEMENTO_VOCE);

  ST_RES_IMP_ASS_ES_PREC := Cnrutl002.IM_STANZ_RES_IMPROPRIO (INES-1, NULL, COMB_CONTABILI_ES_PREC.CDR, COMB_CONTABILI_ES_PREC.CD_LINEA_ATTIVITA, COMB_CONTABILI_ES_PREC.TI_APPARTENENZA, COMB_CONTABILI_ES_PREC.TI_GESTIONE, NULL, COMB_CONTABILI_ES_PREC.CD_ELEMENTO_VOCE)+
                            Cnrutl002.VAR_PIU_STANZ_RES_IMP (INES-1, NULL, COMB_CONTABILI_ES_PREC.CDR, COMB_CONTABILI_ES_PREC.CD_LINEA_ATTIVITA, COMB_CONTABILI_ES_PREC.TI_APPARTENENZA, COMB_CONTABILI_ES_PREC.TI_GESTIONE, NULL, COMB_CONTABILI_ES_PREC.CD_ELEMENTO_VOCE)-
                            ABS(Cnrutl002.VAR_MENO_STANZ_RES_IMP (INES-1, NULL, COMB_CONTABILI_ES_PREC.CDR, COMB_CONTABILI_ES_PREC.CD_LINEA_ATTIVITA, COMB_CONTABILI_ES_PREC.TI_APPARTENENZA, COMB_CONTABILI_ES_PREC.TI_GESTIONE, NULL, COMB_CONTABILI_ES_PREC.CD_ELEMENTO_VOCE));
  PAG_RES_IMP_ES_PREC := Cnrutl002.IM_MANDATI_REVERSALI_IMP (INES-1, NULL, COMB_CONTABILI_ES_PREC.CDR, COMB_CONTABILI_ES_PREC.CD_LINEA_ATTIVITA, COMB_CONTABILI_ES_PREC.TI_APPARTENENZA, COMB_CONTABILI_ES_PREC.TI_GESTIONE, NULL, COMB_CONTABILI_ES_PREC.CD_ELEMENTO_VOCE);

-- PER LA STAMPA

  RES_FIN_ES_PREC := NVL(RES_FIN_ES_PREC, 0) + (NVL(ASSESTATO_COMP_ES_PREC, 0) - NVL(PAG_COMP_ES_PREC, 0)) +
                                               (NVL(RES_PRO_ES_PREC, 0) - NVL(PAG_RES_PRO_ES_PREC, 0)) +
                                               (NVL(ST_RES_IMP_ASS_ES_PREC, 0) - NVL(PAG_RES_IMP_ES_PREC, 0));

-- PER LA STAMPA: PAGAMENTI TOTALI (PAG_COMP_ES_CORSO + PAG_RES_PRO_ES_CORSO + PAG_RES_IMP_ES_CORSO)

  PAG_TOT_ES_PREC := NVL(PAG_TOT_ES_PREC, 0) + NVL(PAG_COMP_ES_PREC, 0) + NVL(PAG_RES_PRO_ES_PREC, 0) + NVL(PAG_RES_IMP_ES_PREC, 0);

I := I + 1;
INSERT INTO PRT_VPG_REND_FIN_ENT_SPE_DEC_D (ESERCIZIO, CDR, LINEA, PG_MODULO,
                         DIP, CD_LIVELLO1, CD_LIVELLO2,
                         IM_OBBL_ACC_COMP_AP, FULL_COST_AP, RES_FINALI_AP, RIS_PAG_TOT_AP,
                         ID, CHIAVE, TIPO, SEQUENZA)
VALUES
(INES-1, COMB_CONTABILI_ES_PREC.CDR, COMB_CONTABILI_ES_PREC.CD_LINEA_ATTIVITA, COMB_CONTABILI_ES_PREC.PG_PROGETTO,
 Get_Dip_From_Modulo(INES-1, COMB_CONTABILI_ES_PREC.PG_PROGETTO, 'X'),
 COMB_CONTABILI_ES_PREC.CD_LIVELLO1,
 COMB_CONTABILI_ES_PREC.CD_LIVELLO2,
 IMP_COMP_ES_PREC, FULL_COST_ES_PREC, RES_FIN_ES_PREC, PAG_TOT_ES_PREC,
 1, 'SUB', 'R', I);

    END LOOP; -- FINE EVENTUALE LOOP ESERCIZIO CONTABILE ESERCIZIO PRECEDENTE

ELSE

INSERT INTO PRT_VPG_REND_FIN_ENT_SPE_DEC_D (ESERCIZIO, DIP, CD_LIVELLO1, CD_LIVELLO2,
                         IM_OBBL_ACC_COMP_AP, FULL_COST_AP, RES_FINALI_AP, RIS_PAG_TOT_AP,
                         ID, CHIAVE, TIPO, SEQUENZA, CDR, LINEA, PG_MODULO, IM_OBBL_ACC_COMP, FULL_COST_AC,
                         RES_FINALI, RIS_PAG_TOT)
SELECT INES, PEZZOTTO.CD_DIPARTIMENTO, PEZZOTTO.CD_LIVELLO1, PEZZOTTO.CD_LIVELLO2,
       NVL(IMP_ACC_COMP, 0), NVL(FULL_COSTING, 0), NVL(RESIDUI_FINALI, 0), NVL(MANDATI_REVERSALI, 0),
       1, 'SUB', 'R', ROWNUM, NULL, NULL, NULL, NULL, NULL, NULL, NULL
FROM    PARAMETRI_REND_PREV_DEC PEZZOTTO
WHERE   ESERCIZIO   = INES-1 AND
        TI_GESTIONE = 'S';

END IF;

-- inserimento NELLA VIEW (FISSO)

I := I + 1;
INSERT INTO PRT_VPG_REND_FIN_ENT_SPE_DEC (ID, CHIAVE, TIPO, SEQUENZA,
                                          ESERCIZIO, ST_DIP_YN, SCIENT_YN,
                                          PESO_DIP, NUM_DIP, DIP, DS_DIPARTIMENTO,
                                          CD_LIVELLO1, CD_LIVELLO1_ROM, DS_LIVELLO1,
                                          CD_LIVELLO2, DS_LIVELLO2,
                                          FULL_COST_AC,
                                          IM_OBBL_ACC_COMP,
                                          RES_FINALI,
                                          RIS_PAG_TOT,
                                          IM_OBBL_ACC_COMP_AP,
                                          FULL_COST_AP,
                                          RES_FINALI_AP,
                                          RIS_PAG_TOT_AP)
SELECT aId, 'chiave', 't', ROWNUM,
 PRT_VPG_REND_FIN_ENT_SPE_DEC_D.ESERCIZIO,
-- ST_DIP_YN
decode(PRT_VPG_REND_FIN_ENT_SPE_DEC_D.dip,'SAC',Decode (CD_LIVELLO1, '5', 'N', '6', 'N', 'Y'),'Y') ST_DIP_YN,
-- SCIENT_YN
 decode(PRT_VPG_REND_FIN_ENT_SPE_DEC_D.dip,'SAC','N','Y') SCIENT_YN,
decode(PRT_VPG_REND_FIN_ENT_SPE_DEC_D.dip,'SAC',Decode (CD_LIVELLO1, '5', '14', '6', '14',  lpad(to_char(peso),2,'0')), lpad(to_char(peso),2,'0')) PESO_DIP,
-- NUM_DIP
lpad(to_char(peso),2,'0') NUM_DIP,
-- DIP
decode(PRT_VPG_REND_FIN_ENT_SPE_DEC_D.dip,'SAC',Decode (CD_LIVELLO1, '4', 'SAC_PGIRO', '5', 'SAC_PGIRO', 'SAC'),PRT_VPG_REND_FIN_ENT_SPE_DEC_D.dip) DIP,
p.DS_DIPARTIMENTO,
CD_LIVELLO1,
trim(TO_CHAR(CD_LIVELLO1, 'RM')),
--cnrctb020.
cnrctb020.Getdeslivello(PRT_VPG_REND_FIN_ENT_SPE_DEC_D.ESERCIZIO , 'S', PRT_VPG_REND_FIN_ENT_SPE_DEC_D.CD_LIVELLO1, NULL, NULL, NULL, NULL, NULL, NULL),
CD_LIVELLO2,
--cnrctb020.
cnrctb020.Getdeslivello(PRT_VPG_REND_FIN_ENT_SPE_DEC_D.ESERCIZIO , 'S', PRT_VPG_REND_FIN_ENT_SPE_DEC_D.CD_LIVELLO1, PRT_VPG_REND_FIN_ENT_SPE_DEC_D.CD_LIVELLO2, NULL, NULL, NULL, NULL, NULL),
0,
--Cnrutl002.RF_FULL_COST_AC (ESERCIZIO, 'S', PRT_VPG_REND_FIN_ENT_SPE_DEC_D.DIP, CD_LIVELLO1, CD_LIVELLO2),
Nvl(SUM(IM_OBBL_ACC_COMP), 0),
Nvl(SUM(RES_FINALI), 0),
Nvl(SUM(RIS_PAG_TOT), 0),
Nvl(SUM(IM_OBBL_ACC_COMP_AP), 0),
Nvl(SUM(FULL_COST_AP), 0),
Nvl(SUM(RES_FINALI_AP), 0),
Nvl(SUM(RIS_PAG_TOT_AP), 0)
FROM  PRT_VPG_REND_FIN_ENT_SPE_DEC_D,
    dipartimento_peso p
Where
 PRT_VPG_REND_FIN_ENT_SPE_DEC_D.esercizio= p.esercizio AND
 PRT_VPG_REND_FIN_ENT_SPE_DEC_D.dip= p.cd_dipartimento
and CHIAVE = 'SUB'
GROUP BY aId, 'chiave', 't', ROWNUM,
			PRT_VPG_REND_FIN_ENT_SPE_DEC_D.ESERCIZIO,
       -- ST_DIP_YN
       decode(PRT_VPG_REND_FIN_ENT_SPE_DEC_D.dip,'SAC',Decode (CD_LIVELLO1, '5', 'N', '6', 'N', 'Y'),'Y'),
			-- SCIENT_YN
 			decode(PRT_VPG_REND_FIN_ENT_SPE_DEC_D.dip,'SAC','N','Y') ,
 			-- PESO_DIP
			decode(PRT_VPG_REND_FIN_ENT_SPE_DEC_D.dip,'SAC',Decode (CD_LIVELLO1, '5', '14', '6', '14',  lpad(to_char(peso),2,'0')), lpad(to_char(peso),2,'0')),
			-- NUM_DIP
			 lpad(to_char(peso),2,'0'),
			-- DIP
			decode(PRT_VPG_REND_FIN_ENT_SPE_DEC_D.dip,'SAC',Decode (CD_LIVELLO1, '4', 'SAC_PGIRO', '5', 'SAC_PGIRO', 'SAC'),PRT_VPG_REND_FIN_ENT_SPE_DEC_D.dip),
			p.DS_DIPARTIMENTO,
CD_LIVELLO1,
trim(TO_CHAR(CD_LIVELLO1, 'RM')),
--cnrctb020.
cnrctb020.Getdeslivello(PRT_VPG_REND_FIN_ENT_SPE_DEC_D.ESERCIZIO , 'S', PRT_VPG_REND_FIN_ENT_SPE_DEC_D.CD_LIVELLO1, NULL, NULL, NULL, NULL, NULL, NULL),
 CD_LIVELLO2,
--cnrctb020.
cnrctb020.Getdeslivello(PRT_VPG_REND_FIN_ENT_SPE_DEC_D.ESERCIZIO , 'S', PRT_VPG_REND_FIN_ENT_SPE_DEC_D.CD_LIVELLO1, PRT_VPG_REND_FIN_ENT_SPE_DEC_D.CD_LIVELLO2, NULL, NULL, NULL, NULL, NULL),
0;
--Cnrutl002.RF_FULL_COST_AC (ESERCIZIO, 'S', PRT_VPG_REND_FIN_ENT_SPE_DEC_D.DIP, CD_LIVELLO1, CD_LIVELLO2);

END IF;

END;
/






© 2015 - 2024 Weber Informatics LLC | Privacy Policy