expsigladb.Package.CNRMAR010_BODY.sql Maven / Gradle / Ivy
--------------------------------------------------------
-- DDL for Package Body CNRMAR010
--------------------------------------------------------
CREATE OR REPLACE PACKAGE BODY "CNRMAR010" is
function fnum(anum number) return varchar2 is
begin
return to_char(anum,'9999999999990D99');
end;
function descAcc(aAcc accertamento%rowtype) return varchar2 is
begin
return 'es:'||aAcc.esercizio||' cds:'||aAcc.cd_cds||' uo:'||aAcc.cd_unita_organizzativa||' esOri:'||aAcc.esercizio_originale||' pg:'||aAcc.pg_accertamento||' cds_ori:'||aAcc.cd_cds_origine||' uo_ori'||aAcc.cd_uo_origine;
end;
function descAccScad(aAccScad accertamento_scadenzario%rowtype) return varchar2 is
begin
return 'pg_scad:'||aAccScad.pg_accertamento_scadenzario||' date:'||aAccScad.dt_scadenza_incasso;
end;
function descAccScadVoce(aAccScadVoce accertamento_scad_voce%rowtype) return varchar2 is
begin
return 'cd_cdr:'||aAccScadVoce.cd_centro_responsabilita||' la:'||aAccScadVoce.cd_linea_attivita;
end;
function descObb(aObb obbligazione%rowtype) return varchar2 is
begin
return 'es:'||aObb.esercizio||' cds:'||aObb.cd_cds||' uo:'||aObb.cd_unita_organizzativa||' esOri:'||aObb.esercizio_originale||' pg:'||aObb.pg_obbligazione||' cds_ori:'||aObb.cd_cds_origine||' uo_ori'||aObb.cd_uo_origine;
end;
function descObbScad(aObbScad obbligazione_scadenzario%rowtype) return varchar2 is
begin
return 'pg_scad:'||aObbScad.pg_obbligazione_scadenzario||' date:'||aObbScad.dt_scadenza;
end;
function descObbScadVoce(aObbScadVoce obbligazione_scad_voce%rowtype) return varchar2 is
begin
return 'cd_cdr:'||aObbScadVoce.cd_centro_responsabilita||' la:'||aObbScadVoce.cd_linea_attivita||' voce:'||aObbScadVoce.cd_voce;
end;
function MSG_CHIAVE_CAPITOLO(aCapitolo voce_f_Saldi_cmp%rowtype)
return varchar2 is
aOut varchar2(1000);
begin
aOut:=
'Cds:'||RPAD(aCapitolo.cd_cds,30)||' '||
'Esercizio:'||RPAD(aCapitolo.esercizio,4)||' '||
'Appartenenza:'||aCapitolo.ti_appartenenza||' '||
'Gestione:'||aCapitolo.ti_gestione||' '||
'voce:'||RPAD(aCapitolo.cd_voce,30)||' '||
'Com/Res:'||aCapitolo.ti_competenza_residuo||' ';
return aOut;
end;
function MSG_DIFF_SALDI(aStringa varchar2,aSaldoDoc v_voce_f_Saldi_cmp%rowtype, aSaldo voce_f_Saldi_cmp%rowtype)
return varchar2 is
aOut varchar2(1000);
begin
aOut:=aStringa||
'Cap:'||RPAD(aSaldoDoc.cd_voce,26)||' '||
'Cds:'||RPAD(aSaldoDoc.cd_cds,4)||' '||
'E/S:'||aSaldoDoc.ti_gestione||' '||
'C/R:'||aSaldoDoc.ti_competenza_residuo||' '||
'PD:'||LPAD(fnum(aSaldoDoc.IM_OBBLIG_IMP_ACR),17)||' '||Chr(13)||
'PS:'||LPAD(fnum(aSaldo.IM_OBBLIG_IMP_ACR),17)||' '||Chr(13)||
'DP:'||LPAD(fnum(aSaldo.IM_OBBLIG_IMP_ACR - aSaldoDoc.IM_OBBLIG_IMP_ACR),17)||' '||Chr(13)||
'AD:'||LPAD(fnum(aSaldoDoc.IM_MANDATI_REVERSALI),17)||' '||Chr(13)||
'AS:'||LPAD(fnum(aSaldo.IM_MANDATI_REVERSALI),17)||' '||Chr(13)||
'DA:'||LPAD(fnum(aSaldo.IM_MANDATI_REVERSALI - aSaldoDoc.IM_MANDATI_REVERSALI),17)||' '||Chr(13)||
'UD:'||LPAD(fnum(aSaldoDoc.IM_PAGAMENTI_INCASSI),17)||' '||Chr(13)||
'US:'||LPAD(fnum(aSaldo.IM_PAGAMENTI_INCASSI),17)||' '||Chr(13)||
'DU:'||LPAD(fnum(aSaldo.IM_PAGAMENTI_INCASSI - aSaldoDoc.IM_PAGAMENTI_INCASSI),17);
return aOut;
end;
function MSG_DIFF_SALDI_CDR_LINEA(aStringa varchar2,aSaldoDoc V_VOCE_F_SALDI_CDR_LINEA%rowtype, aSaldo VOCE_F_SALDI_CDR_LINEA%rowtype)
return varchar2 is
aOut varchar2(1000);
begin
aOut:=aStringa||
'Cap:'||RPAD(aSaldoDoc.cd_voce,26)||' '||
'Cdr:'||RPAD(aSaldoDoc.cd_centro_responsabilita,30)||' '||
'Linea:'||RPAD(aSaldoDoc.cd_linea_attivita,10)||' '||
'E/S:'||aSaldoDoc.ti_gestione||' '||Chr(13)||
'Legenda: "C" Calcolate, "S" Saldi, "D" Differenza'||Chr(13)||
Rpad('C-STANZIAMENTI:',20)||LPAD(fnum(aSaldoDoc.STANZIAMENTI),17)||' '||Chr(13)||
Rpad('S-STANZIAMENTI:',20)||LPAD(fnum(aSaldo.IM_STANZ_INIZIALE_A1),17)||' '||Chr(13)||
Rpad('D-STANZIAMENTI:',20)||LPAD(fnum(aSaldo.IM_STANZ_INIZIALE_A1 - aSaldoDoc.STANZIAMENTI),17)||' '||Chr(13)||
Rpad('C-VARIAZIONI_PIU:',20)||LPAD(fnum(aSaldoDoc.VARIAZIONI_PIU),17)||' '||Chr(13)||
Rpad('S-VARIAZIONI_PIU:',20)||LPAD(fnum(aSaldo.VARIAZIONI_PIU),17)||' '||Chr(13)||
Rpad('D-VARIAZIONI_PIU:',20)||LPAD(fnum(aSaldo.VARIAZIONI_PIU - aSaldoDoc.VARIAZIONI_PIU),17)||' '||Chr(13)||
Rpad('C-VARIAZIONI_MENO:',20)||LPAD(fnum(aSaldoDoc.VARIAZIONI_MENO),17)||' '||Chr(13)||
Rpad('S-VARIAZIONI_MENO:',20)||LPAD(fnum(aSaldo.VARIAZIONI_MENO),17)||' '||Chr(13)||
Rpad('D-VARIAZIONI_MENO:',20)||LPAD(fnum(aSaldo.VARIAZIONI_MENO - aSaldoDoc.VARIAZIONI_MENO),17)||' '||Chr(13)||
Rpad('C-OBBLIGAZIONI:',20)||LPAD(fnum(aSaldoDoc.IM_OBBL_ACC_COMP),17)||' '||Chr(13)||
Rpad('S-OBBLIGAZIONI:',20)||LPAD(fnum(aSaldo.IM_OBBL_ACC_COMP),17)||' '||Chr(13)||
Rpad('D-OBBLIGAZIONI:',20)||LPAD(fnum(aSaldo.IM_OBBL_ACC_COMP - aSaldoDoc.IM_OBBL_ACC_COMP),17)||' '||Chr(13)||
Rpad('C-MANDATI:',20)||LPAD(fnum(aSaldoDoc.IM_MANDATI_REVERSALI_PRO),17)||' '||Chr(13)||
Rpad('S-MANDATI:',20)||LPAD(fnum(aSaldo.IM_MANDATI_REVERSALI_PRO),17)||' '||Chr(13)||
Rpad('D-MANDATI:',20)||LPAD(fnum(aSaldo.IM_MANDATI_REVERSALI_PRO - aSaldoDoc.IM_MANDATI_REVERSALI_PRO),17)||' '||Chr(13)||
Rpad('C-PAGAMENTI:',20)||LPAD(fnum(aSaldoDoc.IM_PAGAMENTI_INCASSI),17)||' '||Chr(13)||
Rpad('S-PAGAMENTI:',20)||LPAD(fnum(aSaldo.IM_PAGAMENTI_INCASSI),17)||' '||Chr(13)||
Rpad('D-PAGAMENTI:',20)||LPAD(fnum(aSaldo.IM_PAGAMENTI_INCASSI - aSaldoDoc.IM_PAGAMENTI_INCASSI),17);
return aOut;
end;
function MSG_D_S_IM_STANZ_INIZIALE_A1(aStringa varchar2,aNewValore VARCHAR2, aSaldo VOCE_F_SALDI_CDR_LINEA%rowtype)
Return varchar2 is
aOut varchar2(1000);
begin
aOut:=aStringa||
'Es: '||RPAD(aSaldo.esercizio,4)||Chr(13)||
'Es. Res: '||RPAD(aSaldo.esercizio_res, 4)||Chr(13)||
'Cdr : '||RPAD(aSaldo.cd_centro_responsabilita,30)||Chr(13)||
'Linea : '||RPAD(aSaldo.cd_linea_attivita,10)||Chr(13)||
'App : '||RPAD(aSaldo.ti_appartenenza, 1)||Chr(13)||
'E/S : '||aSaldo.ti_gestione||Chr(13)||
'Voce : '||RPAD(aSaldo.cd_voce,26)||Chr(13)||
'Legenda: "C" Calcolate, "S" Saldi, "D" Differenza'||Chr(13)||
Rpad('C-STANZIAMENTI:',20)||LPAD(fnum(aNewValore),17)||' '||Chr(13)||
Rpad('S-STANZIAMENTI:',20)||LPAD(fnum(aSaldo.IM_STANZ_INIZIALE_A1),17)||' '||Chr(13)||
Rpad('D-STANZIAMENTI:',20)||LPAD(fnum(aSaldo.IM_STANZ_INIZIALE_A1 - aNewValore),17);
return aOut;
end;
function MSG_D_S_VARIAZIONI_PIU(aStringa varchar2,aNewValore VARCHAR2, aSaldo VOCE_F_SALDI_CDR_LINEA%rowtype)
Return varchar2 is
aOut varchar2(1000);
begin
aOut:=aStringa||
'Es: '||RPAD(aSaldo.esercizio,4)||Chr(13)||
'Es. Res: '||RPAD(aSaldo.esercizio_res, 4)||Chr(13)||
'Cdr : '||RPAD(aSaldo.cd_centro_responsabilita,30)||Chr(13)||
'Linea : '||RPAD(aSaldo.cd_linea_attivita,10)||Chr(13)||
'App : '||RPAD(aSaldo.ti_appartenenza, 1)||Chr(13)||
'E/S : '||aSaldo.ti_gestione||Chr(13)||
'Voce : '||RPAD(aSaldo.cd_voce,26)||Chr(13)||
'Legenda: "C" Calcolate, "S" Saldi, "D" Differenza'||Chr(13)||
Rpad('C-VARIAZIONI PIU:',20)||LPAD(fnum(aNewValore),17)||' '||Chr(13)||
Rpad('S-VARIAZIONI PIU:',20)||LPAD(fnum(aSaldo.VARIAZIONI_PIU),17)||' '||Chr(13)||
Rpad('D-VARIAZIONI PIU:',20)||LPAD(fnum(aSaldo.VARIAZIONI_PIU - aNewValore),17);
return aOut;
end;
function MSG_D_S_VARIAZIONI_MENO(aStringa varchar2,aNewValore VARCHAR2, aSaldo VOCE_F_SALDI_CDR_LINEA%rowtype)
Return varchar2 is
aOut varchar2(1000);
begin
aOut:=aStringa||
'Es: '||RPAD(aSaldo.esercizio,4)||Chr(13)||
'Es. Res: '||RPAD(aSaldo.esercizio_res, 4)||Chr(13)||
'Cdr : '||RPAD(aSaldo.cd_centro_responsabilita,30)||Chr(13)||
'Linea : '||RPAD(aSaldo.cd_linea_attivita,10)||Chr(13)||
'App : '||RPAD(aSaldo.ti_appartenenza, 1)||Chr(13)||
'E/S : '||aSaldo.ti_gestione||Chr(13)||
'Voce : '||RPAD(aSaldo.cd_voce,26)||Chr(13)||
'Legenda: "C" Calcolate, "S" Saldi, "D" Differenza'||Chr(13)||
Rpad('C-VARIAZIONI MENO:',20)||LPAD(fnum(aNewValore),17)||' '||Chr(13)||
Rpad('S-VARIAZIONI MENO:',20)||LPAD(fnum(aSaldo.VARIAZIONI_MENO),17)||' '||Chr(13)||
Rpad('D-VARIAZIONI MENO:',20)||LPAD(fnum(aSaldo.VARIAZIONI_MENO - aNewValore),17);
return aOut;
end;
function MSG_D_S_IM_OBBL_ACC_COMP(aStringa varchar2,aNewValore VARCHAR2, aSaldo VOCE_F_SALDI_CDR_LINEA%rowtype)
Return varchar2 is
aOut varchar2(1000);
begin
aOut:=aStringa||
'Es: '||RPAD(aSaldo.esercizio,4)||Chr(13)||
'Es. Res: '||RPAD(aSaldo.esercizio_res, 4)||Chr(13)||
'Cdr : '||RPAD(aSaldo.cd_centro_responsabilita,30)||Chr(13)||
'Linea : '||RPAD(aSaldo.cd_linea_attivita,10)||Chr(13)||
'App : '||RPAD(aSaldo.ti_appartenenza, 1)||Chr(13)||
'E/S : '||aSaldo.ti_gestione||Chr(13)||
'Voce : '||RPAD(aSaldo.cd_voce,26)||Chr(13)||
'Legenda: "C" Calcolate, "S" Saldi, "D" Differenza'||Chr(13)||
Rpad('C-IM_OBBL_ACC_COMP:',20)||LPAD(fnum(aNewValore),17)||' '||Chr(13)||
Rpad('S-IM_OBBL_ACC_COMP:',20)||LPAD(fnum(aSaldo.IM_OBBL_ACC_COMP),17)||' '||Chr(13)||
Rpad('D-IM_OBBL_ACC_COMP:',20)||LPAD(fnum(aSaldo.IM_OBBL_ACC_COMP - aNewValore),17);
return aOut;
end;
function MSG_D_S_IM_STANZ_RES_IMPROPRIO(aStringa varchar2,aNewValore VARCHAR2, aSaldo VOCE_F_SALDI_CDR_LINEA%rowtype)
Return varchar2 is
aOut varchar2(1000);
begin
aOut:=aStringa||
'Es: '||RPAD(aSaldo.esercizio,4)||Chr(13)||
'Es. Res: '||RPAD(aSaldo.esercizio_res, 4)||Chr(13)||
'Cdr : '||RPAD(aSaldo.cd_centro_responsabilita,30)||Chr(13)||
'Linea : '||RPAD(aSaldo.cd_linea_attivita,10)||Chr(13)||
'App : '||RPAD(aSaldo.ti_appartenenza, 1)||Chr(13)||
'E/S : '||aSaldo.ti_gestione||Chr(13)||
'Voce : '||RPAD(aSaldo.cd_voce,26)||Chr(13)||
'Legenda: "C" Calcolate, "S" Saldi, "D" Differenza'||Chr(13)||
Rpad('C-IM_STANZ_RES_IMPROPRIO:',20)||LPAD(fnum(aNewValore),17)||' '||Chr(13)||
Rpad('S-IM_STANZ_RES_IMPROPRIO:',20)||LPAD(fnum(aSaldo.IM_STANZ_RES_IMPROPRIO),17)||' '||Chr(13)||
Rpad('D-IM_STANZ_RES_IMPROPRIO:',20)||LPAD(fnum(aSaldo.IM_STANZ_RES_IMPROPRIO - aNewValore),17);
return aOut;
end;
function MSG_D_S_VAR_PIU_STANZ_RES_IMP(aStringa varchar2,aNewValore VARCHAR2, aSaldo VOCE_F_SALDI_CDR_LINEA%rowtype)
Return varchar2 is
aOut varchar2(1000);
begin
aOut:=aStringa||
'Es: '||RPAD(aSaldo.esercizio,4)||Chr(13)||
'Es. Res: '||RPAD(aSaldo.esercizio_res, 4)||Chr(13)||
'Cdr : '||RPAD(aSaldo.cd_centro_responsabilita,30)||Chr(13)||
'Linea : '||RPAD(aSaldo.cd_linea_attivita,10)||Chr(13)||
'App : '||RPAD(aSaldo.ti_appartenenza, 1)||Chr(13)||
'E/S : '||aSaldo.ti_gestione||Chr(13)||
'Voce : '||RPAD(aSaldo.cd_voce,26)||Chr(13)||
'Legenda: "C" Calcolate, "S" Saldi, "D" Differenza'||Chr(13)||
Rpad('C-VAR_PIU_STANZ_RES_IMP:',20)||LPAD(fnum(aNewValore),17)||' '||Chr(13)||
Rpad('S-VAR_PIU_STANZ_RES_IMP:',20)||LPAD(fnum(aSaldo.VAR_PIU_STANZ_RES_IMP),17)||' '||Chr(13)||
Rpad('D-VAR_PIU_STANZ_RES_IMP:',20)||LPAD(fnum(aSaldo.VAR_PIU_STANZ_RES_IMP - aNewValore),17);
return aOut;
end;
function MSG_D_S_VAR_MENO_STANZ_RES_IMP(aStringa varchar2,aNewValore VARCHAR2, aSaldo VOCE_F_SALDI_CDR_LINEA%rowtype)
Return varchar2 is
aOut varchar2(1000);
begin
aOut:=aStringa||
'Es: '||RPAD(aSaldo.esercizio,4)||Chr(13)||
'Es. Res: '||RPAD(aSaldo.esercizio_res, 4)||Chr(13)||
'Cdr : '||RPAD(aSaldo.cd_centro_responsabilita,30)||Chr(13)||
'Linea : '||RPAD(aSaldo.cd_linea_attivita,10)||Chr(13)||
'App : '||RPAD(aSaldo.ti_appartenenza, 1)||Chr(13)||
'E/S : '||aSaldo.ti_gestione||Chr(13)||
'Voce : '||RPAD(aSaldo.cd_voce,26)||Chr(13)||
'Legenda: "C" Calcolate, "S" Saldi, "D" Differenza'||Chr(13)||
Rpad('C-VAR_MENO_STANZ_RES_IMP:',20)||LPAD(fnum(aNewValore),17)||' '||Chr(13)||
Rpad('S-VAR_MENO_STANZ_RES_IMP:',20)||LPAD(fnum(aSaldo.VAR_MENO_STANZ_RES_IMP),17)||' '||Chr(13)||
Rpad('D-VAR_MENO_STANZ_RES_IMP:',20)||LPAD(fnum(aSaldo.VAR_MENO_STANZ_RES_IMP - aNewValore),17);
return aOut;
end;
function MSG_D_S_IM_OBBL_RES_IMP(aStringa varchar2,aNewValore VARCHAR2, aSaldo VOCE_F_SALDI_CDR_LINEA%rowtype)
Return varchar2 is
aOut varchar2(1000);
begin
aOut:=aStringa||
'Es: '||RPAD(aSaldo.esercizio,4)||Chr(13)||
'Es. Res: '||RPAD(aSaldo.esercizio_res, 4)||Chr(13)||
'Cdr : '||RPAD(aSaldo.cd_centro_responsabilita,30)||Chr(13)||
'Linea : '||RPAD(aSaldo.cd_linea_attivita,10)||Chr(13)||
'App : '||RPAD(aSaldo.ti_appartenenza, 1)||Chr(13)||
'E/S : '||aSaldo.ti_gestione||Chr(13)||
'Voce : '||RPAD(aSaldo.cd_voce,26)||Chr(13)||
'Legenda: "C" Calcolate, "S" Saldi, "D" Differenza'||Chr(13)||
Rpad('C-IM_OBBL_RES_IMP:',20)||LPAD(fnum(aNewValore),17)||' '||Chr(13)||
Rpad('S-IM_OBBL_RES_IMP:',20)||LPAD(fnum(aSaldo.IM_OBBL_RES_IMP),17)||' '||Chr(13)||
Rpad('D-IM_OBBL_RES_IMP:',20)||LPAD(fnum(aSaldo.IM_OBBL_RES_IMP - aNewValore),17);
return aOut;
end;
function MSG_D_S_IM_OBBL_RES_PRO(aStringa varchar2,aNewValore VARCHAR2, aSaldo VOCE_F_SALDI_CDR_LINEA%rowtype)
Return varchar2 is
aOut varchar2(1000);
begin
aOut:=aStringa||
'Es: '||RPAD(aSaldo.esercizio,4)||Chr(13)||
'Es. Res: '||RPAD(aSaldo.esercizio_res, 4)||Chr(13)||
'Cdr : '||RPAD(aSaldo.cd_centro_responsabilita,30)||Chr(13)||
'Linea : '||RPAD(aSaldo.cd_linea_attivita,10)||Chr(13)||
'App : '||RPAD(aSaldo.ti_appartenenza, 1)||Chr(13)||
'E/S : '||aSaldo.ti_gestione||Chr(13)||
'Voce : '||RPAD(aSaldo.cd_voce,26)||Chr(13)||
'Legenda: "C" Calcolate, "S" Saldi, "D" Differenza'||Chr(13)||
Rpad('C-IM_OBBL_RES_PRO:',20)||LPAD(fnum(aNewValore),17)||' '||Chr(13)||
Rpad('S-IM_OBBL_RES_PRO:',20)||LPAD(fnum(aSaldo.IM_OBBL_RES_PRO),17)||' '||Chr(13)||
Rpad('D-IM_OBBL_RES_PRO:',20)||LPAD(fnum(aSaldo.IM_OBBL_RES_PRO - aNewValore),17);
return aOut;
end;
function MSG_D_S_VAR_PIU_OBBL_RES_PRO(aStringa varchar2,aNewValore VARCHAR2, aSaldo VOCE_F_SALDI_CDR_LINEA%rowtype)
Return varchar2 is
aOut varchar2(1000);
begin
aOut:=aStringa||
'Es: '||RPAD(aSaldo.esercizio,4)||Chr(13)||
'Es. Res: '||RPAD(aSaldo.esercizio_res, 4)||Chr(13)||
'Cdr : '||RPAD(aSaldo.cd_centro_responsabilita,30)||Chr(13)||
'Linea : '||RPAD(aSaldo.cd_linea_attivita,10)||Chr(13)||
'App : '||RPAD(aSaldo.ti_appartenenza, 1)||Chr(13)||
'E/S : '||aSaldo.ti_gestione||Chr(13)||
'Voce : '||RPAD(aSaldo.cd_voce,26)||Chr(13)||
'Legenda: "C" Calcolate, "S" Saldi, "D" Differenza'||Chr(13)||
Rpad('C-VAR_PIU_OBBL_RES_PRO:',20)||LPAD(fnum(aNewValore),17)||' '||Chr(13)||
Rpad('S-VAR_PIU_OBBL_RES_PRO:',20)||LPAD(fnum(aSaldo.VAR_PIU_OBBL_RES_PRO),17)||' '||Chr(13)||
Rpad('D-VAR_PIU_OBBL_RES_PRO:',20)||LPAD(fnum(aSaldo.VAR_PIU_OBBL_RES_PRO - aNewValore),17);
return aOut;
end;
function MSG_D_S_VAR_MENO_OBBL_RES_PRO(aStringa varchar2,aNewValore VARCHAR2, aSaldo VOCE_F_SALDI_CDR_LINEA%rowtype)
Return varchar2 is
aOut varchar2(1000);
begin
aOut:=aStringa||
'Es: '||RPAD(aSaldo.esercizio,4)||Chr(13)||
'Es. Res: '||RPAD(aSaldo.esercizio_res, 4)||Chr(13)||
'Cdr : '||RPAD(aSaldo.cd_centro_responsabilita,30)||Chr(13)||
'Linea : '||RPAD(aSaldo.cd_linea_attivita,10)||Chr(13)||
'App : '||RPAD(aSaldo.ti_appartenenza, 1)||Chr(13)||
'E/S : '||aSaldo.ti_gestione||Chr(13)||
'Voce : '||RPAD(aSaldo.cd_voce,26)||Chr(13)||
'Legenda: "C" Calcolate, "S" Saldi, "D" Differenza'||Chr(13)||
Rpad('C-VAR_MENO_OBBL_RES_PRO:',20)||LPAD(fnum(aNewValore),17)||' '||Chr(13)||
Rpad('S-VAR_MENO_OBBL_RES_PRO:',20)||LPAD(fnum(aSaldo.VAR_MENO_OBBL_RES_PRO),17)||' '||Chr(13)||
Rpad('D-VAR_MENO_OBBL_RES_PRO:',20)||LPAD(fnum(aSaldo.VAR_MENO_OBBL_RES_PRO - aNewValore),17);
return aOut;
end;
function MSG_D_S_IM_MANDATI_REV_PRO(aStringa varchar2,aNewValore VARCHAR2, aSaldo VOCE_F_SALDI_CDR_LINEA%rowtype)
Return varchar2 is
aOut varchar2(1000);
begin
aOut:=aStringa||
'Es: '||RPAD(aSaldo.esercizio,4)||Chr(13)||
'Es. Res: '||RPAD(aSaldo.esercizio_res, 4)||Chr(13)||
'Cdr : '||RPAD(aSaldo.cd_centro_responsabilita,30)||Chr(13)||
'Linea : '||RPAD(aSaldo.cd_linea_attivita,10)||Chr(13)||
'App : '||RPAD(aSaldo.ti_appartenenza, 1)||Chr(13)||
'E/S : '||aSaldo.ti_gestione||Chr(13)||
'Voce : '||RPAD(aSaldo.cd_voce,26)||Chr(13)||
'Legenda: "C" Calcolate, "S" Saldi, "D" Differenza'||Chr(13)||
Rpad('C-IM_MANDATI_REVERSALI_PRO:',20)||LPAD(fnum(aNewValore),17)||' '||Chr(13)||
Rpad('S-IM_MANDATI_REVERSALI_PRO:',20)||LPAD(fnum(aSaldo.IM_MANDATI_REVERSALI_PRO),17)||' '||Chr(13)||
Rpad('D-IM_MANDATI_REVERSALI_PRO:',20)||LPAD(fnum(aSaldo.IM_MANDATI_REVERSALI_PRO - aNewValore),17);
return aOut;
end;
function MSG_D_S_IM_MANDATI_REV_IMP(aStringa varchar2,aNewValore VARCHAR2, aSaldo VOCE_F_SALDI_CDR_LINEA%rowtype)
Return varchar2 is
aOut varchar2(1000);
begin
aOut:=aStringa||
'Es: '||RPAD(aSaldo.esercizio,4)||Chr(13)||
'Es. Res: '||RPAD(aSaldo.esercizio_res, 4)||Chr(13)||
'Cdr : '||RPAD(aSaldo.cd_centro_responsabilita,30)||Chr(13)||
'Linea : '||RPAD(aSaldo.cd_linea_attivita,10)||Chr(13)||
'App : '||RPAD(aSaldo.ti_appartenenza, 1)||Chr(13)||
'E/S : '||aSaldo.ti_gestione||Chr(13)||
'Voce : '||RPAD(aSaldo.cd_voce,26)||Chr(13)||
'Legenda: "C" Calcolate, "S" Saldi, "D" Differenza'||Chr(13)||
Rpad('C-IM_MANDATI_REVERSALI_IMP:',20)||LPAD(fnum(aNewValore),17)||' '||Chr(13)||
Rpad('S-IM_MANDATI_REVERSALI_IMP:',20)||LPAD(fnum(aSaldo.IM_MANDATI_REVERSALI_IMP),17)||' '||Chr(13)||
Rpad('D-IM_MANDATI_REVERSALI_IMP:',20)||LPAD(fnum(aSaldo.IM_MANDATI_REVERSALI_IMP - aNewValore),17);
return aOut;
end;
function MSG_D_S_IM_PAGAMENTI_INCASSI(aStringa varchar2,aNewValore VARCHAR2, aSaldo VOCE_F_SALDI_CDR_LINEA%rowtype)
Return varchar2 is
aOut varchar2(1000);
begin
aOut:=aStringa||
'Es: '||RPAD(aSaldo.esercizio,4)||Chr(13)||
'Es. Res: '||RPAD(aSaldo.esercizio_res, 4)||Chr(13)||
'Cdr : '||RPAD(aSaldo.cd_centro_responsabilita,30)||Chr(13)||
'Linea : '||RPAD(aSaldo.cd_linea_attivita,10)||Chr(13)||
'App : '||RPAD(aSaldo.ti_appartenenza, 1)||Chr(13)||
'E/S : '||aSaldo.ti_gestione||Chr(13)||
'Voce : '||RPAD(aSaldo.cd_voce,26)||Chr(13)||
'Legenda: "C" Calcolate, "S" Saldi, "D" Differenza'||Chr(13)||
Rpad('C-IM_PAGAMENTI_INCASSI:',20)||LPAD(fnum(aNewValore),17)||' '||Chr(13)||
Rpad('S-IM_PAGAMENTI_INCASSI:',20)||LPAD(fnum(aSaldo.IM_PAGAMENTI_INCASSI),17)||' '||Chr(13)||
Rpad('D-IM_PAGAMENTI_INCASSI:',20)||LPAD(fnum(aSaldo.IM_PAGAMENTI_INCASSI - aNewValore),17);
return aOut;
end;
Function MSGCSV_DIFF_SALDI(aDesc varchar2,aSaldoDoc v_voce_f_Saldi_cmp%rowtype, aSaldo voce_f_Saldi_cmp%rowtype) return varchar2 is
aOut varchar2(1000);
begin
aOut:='"'||aDesc||'",'||
'"'||aSaldoDoc.cd_voce||'",'||
'"'||aSaldoDoc.cd_cds||'",'||
'"'||aSaldoDoc.ti_gestione||'",'||
'"'||aSaldoDoc.ti_competenza_residuo||'",'||
aSaldoDoc.IM_OBBLIG_IMP_ACR||','||
(aSaldo.IM_OBBLIG_IMP_ACR - aSaldoDoc.IM_OBBLIG_IMP_ACR)||','||
aSaldoDoc.IM_MANDATI_REVERSALI||','||
(aSaldo.IM_MANDATI_REVERSALI - aSaldoDoc.IM_MANDATI_REVERSALI)||','||
aSaldoDoc.IM_PAGAMENTI_INCASSI||','||
(aSaldo.IM_PAGAMENTI_INCASSI - aSaldoDoc.IM_PAGAMENTI_INCASSI);
return aOut;
end;
function MSGCSV_DIFF_SALDI_CDR_LINEA(aDesc varchar2,aSaldoDoc V_VOCE_F_SALDI_CDR_LINEA%rowtype, aSaldo VOCE_F_SALDI_CDR_LINEA%rowtype) return varchar2 is
aOut varchar2(1000);
begin
aOut:='"'||aDesc||'",'||
'"'||aSaldoDoc.cd_voce||'",'||
'"'||aSaldoDoc.cd_centro_responsabilita||'",'||
'"'||aSaldoDoc.cd_linea_attivita||'",'||
'"'||aSaldoDoc.ti_gestione||'",'||
aSaldoDoc.IM_OBBL_ACC_COMP||','||
(aSaldo.IM_OBBL_ACC_COMP - aSaldoDoc.IM_OBBL_ACC_COMP)||','||
aSaldoDoc.IM_MANDATI_REVERSALI_PRO||','||
(aSaldo.IM_MANDATI_REVERSALI_PRO - aSaldoDoc.IM_MANDATI_REVERSALI_PRO)||','||
aSaldoDoc.IM_PAGAMENTI_INCASSI||','||
(aSaldo.IM_PAGAMENTI_INCASSI - aSaldoDoc.IM_PAGAMENTI_INCASSI);
return aOut;
end;
procedure job_ControlloQuadratura(aJob number, aPg_exec number, aNext_date date, aEsercizio number, aCdCds varchar2, aVerAgg varchar2, aUser varchar2) is
lJob NUMBER;
lPgExec NUMBER;
lNextDate DATE;
ISMODIFICA CHAR(1);
lNumCds number;
aEndT date;
aStartT date;
aStart varchar2(80);
aEnd varchar2(80);
aDelta varchar2(80);
begin
if upper(aVerAgg) = 'VERIFICA' then
ISMODIFICA :='N';
else
if upper(aVerAgg) = 'AGGIORNAMENTO' then
ISMODIFICA :='Y';
else
ibmerr001.RAISE_ERR_GENERICO ('Il parametro in input aVerAgg puo assumere i valori VERIFICA o AGGIORNAMENTO');
end if;
end if;
aStart:=to_char(sysdate,'YYYYMMDD HH:MI:SS');
lJob := aJob;
lNumCds := 0;
if aPg_exec is null then
lPgExec := ibmutl200.LOGSTART('Procedura per il controllo di saldi e quadratura di importi' , aUser, null, null);
else
lPgExec := aPg_exec;
end if;
lNextDate := aNext_date;
IBMUTL200.logInf(lPgExec,'Controllo Quadratura START at: '||aStart||' es.'||aEsercizio||' cds.'||aCdCds,aEsercizio||aCdCds,'SOC');
if aCdCds = '*' then
for lCdsValida in(select * from v_unita_organizzativa_valida where fl_cds ='Y' and esercizio = aEsercizio)
loop
lNumCds := lNumCds + 1;
-- Verifica Saldi
CNRMAR010.JOB_MAR_SALDI00 ( lJob, lPgExec, lNextDate,lCdsValida.esercizio, lCdsValida.cd_unita_organizzativa, ISMODIFICA );
-- Verifica Saldi
CNRMAR030.JOB_MAR_PRIMI00 ( lJob, lPgExec, lNextDate, lCdsValida.esercizio, lCdsValida.cd_unita_organizzativa, ISMODIFICA );
-- Verifica Saldi
CNRMAR037.JOB_MAR_AUTOR00 ( lJob, lPgExec, lNextDate, lCdsValida.esercizio, lCdsValida.cd_unita_organizzativa, ISMODIFICA );
end loop;
Else
for lCdsValida in(select * from v_unita_organizzativa_valida where fl_cds ='Y' and esercizio = aEsercizio)
Loop
lNumCds := lNumCds + 1;
-- Verifica Saldi
CNRMAR010.JOB_MAR_SALDI00 ( lJob, lPgExec, lNextDate, lCdsValida.esercizio, lCdsValida.cd_unita_organizzativa, ISMODIFICA );
-- Verifica Saldi
CNRMAR030.JOB_MAR_PRIMI00 ( lJob, lPgExec, lNextDate, lCdsValida.esercizio, lCdsValida.cd_unita_organizzativa, ISMODIFICA );
-- Verifica Saldi
CNRMAR037.JOB_MAR_AUTOR00 ( lJob, lPgExec, lNextDate, lCdsValida.esercizio, lCdsValida.cd_unita_organizzativa, ISMODIFICA );
end loop;
end if;
aEndT:=sysdate;
aEnd:=to_char(aEndT,'YYYYMMDD HH:MI:SS');
aDelta:=to_char((aEndT-aStartT)*24*3600,'999999');
IBMUTL200.logInf(lPgExec,'Controllo Quadratura END at: '||aEnd||' tot exec time(s):'||aDelta||' es.'||aEsercizio||' cds.'||aCdCds,aEsercizio||aCdCds,'SOC');
end;
procedure getVariazioni (aCapitolo voce_f_saldi_cmp%rowtype, aImVariazionePiu in out number, aImVariazioneMeno in out number) as
lImVariazionePiu number (15,2);
lImVariazioneMeno number (15,2);
begin
lImVariazionePiu := 0;
lImVariazioneMeno := 0;
select sum(decode(abs(det.im_variazione)/det.im_variazione,1,det.im_variazione,0)),
sum(decode(abs(det.im_variazione)/det.im_variazione,-1,det.im_variazione,0))
into lImVariazionePiu, lImVariazioneMeno
from var_bilancio_det det,
var_bilancio var
where var.cd_cds= det.cd_cds
and var.esercizio = det.esercizio
and var.ti_appartenenza = det.ti_appartenenza
and var.pg_variazione = det.pg_variazione
and var.STATO = 'D'
and var.esercizio= var.esercizio_importi
and det.cd_cds = aCapitolo.cd_cds
and det.esercizio = aCapitolo.esercizio
and det.ti_appartenenza = aCapitolo.ti_appartenenza
and det.ti_gestione =aCapitolo.ti_gestione
and det.cd_voce =aCapitolo.cd_voce
and det.im_variazione <>0 ;
aImVariazionePiu := lImVariazionePiu;
aImVariazioneMeno := lImVariazioneMeno;
exception
when others then
aImVariazionePiu := lImVariazionePiu;
aImVariazioneMeno := lImVariazioneMeno;
end;
function getImObbligazione(aPgExec number , aCapitolo voce_f_saldi_cmp%rowtype) return number as
lRisultato number (15,2);
lObbVoce obbligazione_scad_voce%rowtype;
begin
lRisultato := 0;
begin
select voc.*
into lObbVoce
from obbligazione obb,
obbligazione_scad_voce voc
where voc.cd_cds = aCapitolo.cd_cds
and voc.esercizio = aCapitolo.esercizio
and voc.ti_appartenenza = aCapitolo.ti_appartenenza
and voc.ti_gestione = aCapitolo.ti_gestione
and voc.cd_voce = aCapitolo.cd_voce
and obb.cd_cds = voc.cd_cds
and obb.esercizio = voc.esercizio
and obb.esercizio_originale = voc.esercizio_originale
and obb.pg_obbligazione = voc.pg_obbligazione
and obb.cd_tipo_documento_cont <> 'IMP_RES' ;
exception
when others then
IBMUTL200.logInf(aPgExec,
'D_SALDI060 - SCADENZE MULTIPLE O INESISTENTI ',
MSG_CHIAVE_CAPITOLO(aCapitolo),
'SOCD');
end;
lRisultato := lObbVoce.im_voce;
return lRisultato;
end;
procedure job_mar_saldi00(job number, pg_exec number, next_date date, aEs number, aCdCds varchar2, isModifica char) is
aStringa varchar2(4000);
aTSNow date;
aUser varchar2(20);
aChekLock CHAR(1);
aChekUpdate CHAR(1);
aMan mandato%rowtype;
aRev reversale%rowtype;
aMsgTipoMar varchar2(100);
aEndT date;
aStartT date;
aEnd varchar2(80);
aStart varchar2(80);
aDelta varchar2(80);
aSaldo voce_f_saldi_cmp%rowtype;
lImporto number(15,2);
lImportoTotCap number(15,2);
lImportoScadVoce number(15,2);
lImVariazionePiu number(15,2);
lImVariazioneMeno number(15,2);
begin
aTSNow:=sysdate;
aUser:=IBMUTL200.getUserFromLog(pg_exec);
if isModifica = 'Y' then
aMsgTipoMar:='MODIFICA';
else
aMsgTipoMar:='VERIFICA';
end if;
aStartT:=sysdate;
aStart:=to_char(sysdate,'YYYYMMDD HH:MI:SS');
IBMUTL210.logStartExecutionUpd(pg_exec, TIPO_LOG_MAR_SALDI, job, 'Batch di '||aMsgTipoMar||' dei saldi. Start:'||to_char(aTSNow,'YYYY/MM/DD HH-MI-SS'));
BEGIN
IBMUTL200.logInf(pg_exec,'DIFFSALDI START at: '||aStart||' es.'||aEs||' cds.'||aCdCds,aEs||aCdCds,'SOC');
-- Check saldi primi documenti di spesa
for aSaldoDoc in (
select * from v_voce_f_saldi_cmp where
cd_cds = Decode(aCdCds,'TUTTI',cd_cds,aCdCds)
and esercizio = aEs
) loop
Begin
select *
into aSaldo
from voce_f_saldi_cmp
Where cd_cds = aSaldoDoc.cd_cds
and esercizio = aSaldoDoc.esercizio
and ti_appartenenza = aSaldoDoc.ti_appartenenza
and ti_gestione = aSaldoDoc.ti_gestione
and cd_voce = aSaldoDoc.cd_voce
and ti_competenza_residuo = aSaldoDoc.ti_competenza_residuo
for update nowait;
lImporto := 0;
lImporto := aSaldoDoc.im_obblig_imp_acr;
if lImporto - aSaldo.im_obblig_imp_acr != 0 Then
if isModifica = 'Y' Then
Update voce_f_saldi_cmp
Set im_obblig_imp_acr = lImporto
Where cd_cds = aSaldoDoc.cd_cds
And esercizio = aSaldoDoc.esercizio
And ti_appartenenza = aSaldoDoc.ti_appartenenza
And ti_gestione = aSaldoDoc.ti_gestione
And cd_voce = aSaldoDoc.cd_voce
And ti_competenza_residuo = aSaldoDoc.ti_competenza_residuo;
End If;
IBMUTL200.logInf(pg_exec,MSG_DIFF_SALDI('DIS - DISSALDI010 - IM_OBBLIG_IMP_ACR ',aSaldoDoc, aSaldo),MSGCSV_DIFF_SALDI('DISSALDI010',aSaldoDoc, aSaldo),'SOCD');
end if;
lImporto := 0;
lImporto := aSaldoDoc.im_mandati_reversali;
if lImporto - aSaldo.im_mandati_reversali != 0 Then
if isModifica = 'Y' Then
Update voce_f_saldi_cmp
Set im_mandati_reversali = lImporto
Where cd_cds = aSaldoDoc.cd_cds
And esercizio = aSaldoDoc.esercizio
And ti_appartenenza = aSaldoDoc.ti_appartenenza
And ti_gestione = aSaldoDoc.ti_gestione
And cd_voce = aSaldoDoc.cd_voce
And ti_competenza_residuo = aSaldoDoc.ti_competenza_residuo;
End If;
IBMUTL200.logInf(pg_exec,MSG_DIFF_SALDI('DIS - DISSALDI020 - IM_MANDATI_REVERSALI ',aSaldoDoc, aSaldo),MSGCSV_DIFF_SALDI('DISSALDI020',aSaldoDoc, aSaldo),'SOCD');
end if;
lImporto := 0;
lImporto := aSaldoDoc.im_pagamenti_incassi;
if lImporto - aSaldo.im_pagamenti_incassi != 0 Then
if isModifica = 'Y' Then
Update voce_f_saldi_cmp
Set im_pagamenti_incassi = lImporto
Where cd_cds = aSaldoDoc.cd_cds
And esercizio = aSaldoDoc.esercizio
And ti_appartenenza = aSaldoDoc.ti_appartenenza
And ti_gestione = aSaldoDoc.ti_gestione
And cd_voce = aSaldoDoc.cd_voce
And ti_competenza_residuo = aSaldoDoc.ti_competenza_residuo;
End If;
IBMUTL200.logInf(pg_exec,MSG_DIFF_SALDI('DIS - DISSALDI030 - IM_PAGAMENTI_INCASSI ',aSaldoDoc, aSaldo),MSGCSV_DIFF_SALDI('DISSALDI030',aSaldoDoc, aSaldo),'SOCD');
end if;
Exception
When No_Data_Found Then Null;
End;
end loop;
-- Controllo 1) per tutte le voci in voce_f_saldi_cmp in competenza viene controllato che
-- importo variazione piu = sum (var_bilancio_det per var +)
-- importo variazione meno = sum (var_bilancio_det per var -)
for lCapitolo in (select * from voce_f_saldi_cmp
where cd_cds = aCdCds
and esercizio = aEs
and ti_competenza_residuo = 'C'
for update nowait)
loop
-- Controllo 1) per tutte le voci in voce_f_saldi_cmp in competenza viene controllato che
-- importo variazione piu = sum (var_bilancio_det per var +)
-- importo variazione meno = sum (var_bilancio_det per var -)
getVariazioni(lCapitolo,lImVariazionePiu,lImVariazioneMeno);
if lCapitolo.variazioni_piu <> lImVariazionePiu then
IBMUTL200.logInf(pg_exec,
'D_SALDI040 - VARIAZIONI_PIU - ' ||MSG_CHIAVE_CAPITOLO(lCapitolo),
'VARIAZIONI_PIU :'|| LPAD(fnum(lCapitolo.variazioni_piu ),17)
||'TOTALE_VAR_PIU :'|| LPAD(fnum(lImVariazionePiu ),17)
||'Delta :'||LPAD(fnum(lCapitolo.variazioni_piu - lImVariazionePiu),17),
'SOCD');
end if;
if lCapitolo.variazioni_meno <> abs(lImVariazioneMeno) then
IBMUTL200.logInf(pg_exec,
'D_SALDI050 - VARIAZIONI_MENO - '||MSG_CHIAVE_CAPITOLO(lCapitolo),
'VARIAZIONI_MENO :'|| LPAD(fnum((-1)*lCapitolo.variazioni_meno ),17)
||'TOTALE_VAR_MENO :'|| LPAD(fnum(lImVariazioneMeno ),17)
||'Delta :'||LPAD(fnum((-1)*lCapitolo.variazioni_meno - lImVariazioneMeno),17),
'SOCD');
end if;
-- Controllo 2) in voce_f_saldi_cmp per
-- per cd_cds = 999
-- and capitolo parte uno (capitolo inizia per 1.%)
-- in competenza
-- Spesa
-- deve risultare che:
-- importo stanz_ini_a1 + varpiu - varmeno = importo unica obbligazione associata
if lCapitolo.cd_cds =cnrctb020.getCDCDSENTE(aEs)
and lCapitolo.esercizio = aEs
and lCapitolo.cd_voce like '1.%'
and lCapitolo.ti_competenza_residuo ='C'
and lCapitolo.ti_gestione ='S'
and lCapitolo.ti_appartenenza ='C'
then
lImportoTotCap := 0;
lImportoTotCap := lCapitolo.im_stanz_iniziale_a1 + lCapitolo.variazioni_piu - lCapitolo.variazioni_meno;
lImportoScadVoce := getImObbligazione(pg_exec,lCapitolo);
if lImportoTotCap <> lImportoScadVoce then
IBMUTL200.logInf(pg_exec,
'D_SALDI070 - (STANZ_A1+VARPIU-VARMENO) <> IM_SCADENZA - ' ||MSG_CHIAVE_CAPITOLO(lCapitolo),
'(STANZ_A1+VARPIU-VARMENO):' || LPAD(fnum(lImportoTotCap ),17) ||' - IM_SCADENZA: ' ||LPAD(fnum(lImportoScadVoce),17) || ' - Delta :' ||LPAD(fnum(lImportoTotCap -lImportoScadVoce),17),
'SOCD');
end if;
end if;
end loop;
aEndT:=sysdate;
aEnd:=to_char(aEndT,'YYYYMMDD HH:MI:SS');
aDelta:=to_char((aEndT-aStartT)*24*3600,'999999');
IBMUTL200.logInf(pg_exec,'DIFFSALDI END at: '||aEnd||' tot exec time(s):'||aDelta||' es.'||aEs||' cds.'||aCdCds,aEs||aCdCds,'SOC');
EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
IBMUTL200.logErr(pg_exec, SQLERRM(SQLCODE),DBMS_UTILITY.FORMAT_ERROR_STACK,'SOC');
-- EXCEPTION WHEN OTHERS THEN
-- ROLLBACK;
-- IBMUTL200.logErr(pg_exec, SQLERRM(SQLCODE),DBMS_UTILITY.FORMAT_ERROR_STACK,'SOC');
END;
end;
Function SetVOCE_F_SALDI_CDR_LINEA(aSaldoDoc V_VOCE_F_SALDI_CDR_LINEA%Rowtype)
Return VOCE_F_SALDI_CDR_LINEA%Rowtype Is
aSaldo VOCE_F_SALDI_CDR_LINEA%Rowtype;
Begin
Insert INTO VOCE_F_SALDI_CDR_LINEA ( ESERCIZIO, ESERCIZIO_RES, CD_CENTRO_RESPONSABILITA,
CD_LINEA_ATTIVITA, TI_APPARTENENZA, TI_GESTIONE, CD_VOCE, IM_STANZ_INIZIALE_A1,
IM_STANZ_INIZIALE_A2, IM_STANZ_INIZIALE_A3, VARIAZIONI_PIU, VARIAZIONI_MENO,
IM_STANZ_INIZIALE_CASSA, VARIAZIONI_PIU_CASSA, VARIAZIONI_MENO_CASSA, IM_OBBL_ACC_COMP,
IM_STANZ_RES_IMPROPRIO, VAR_PIU_STANZ_RES_IMP, VAR_MENO_STANZ_RES_IMP, IM_OBBL_RES_IMP,
VAR_PIU_OBBL_RES_IMP, VAR_MENO_OBBL_RES_IMP, IM_OBBL_RES_PRO, VAR_PIU_OBBL_RES_PRO,
VAR_MENO_OBBL_RES_PRO, IM_MANDATI_REVERSALI_PRO, IM_MANDATI_REVERSALI_IMP, IM_PAGAMENTI_INCASSI,
DACR, UTCR, DUVA, UTUV, PG_VER_REC,CD_ELEMENTO_VOCE ) VALUES (
aSaldoDoc.ESERCIZIO, aSaldoDoc.ESERCIZIO, aSaldoDoc.CD_CENTRO_RESPONSABILITA, aSaldoDoc.CD_LINEA_ATTIVITA, aSaldoDoc.TI_APPARTENENZA,
aSaldoDoc.TI_GESTIONE, aSaldoDoc.CD_VOCE, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
Sysdate, 'SPASIA', Sysdate, 'SPASIA', 1, (SELECT cd_elemento_voce FROM VOCE_F
WHERE VOCE_F.ESERCIZIO = aSaldoDoc.ESERCIZIO
AND VOCE_F.ti_appartenenza = aSaldoDoc.ti_appartenenza
AND VOCE_F.ti_gestione = aSaldoDoc.ti_gestione
And VOCE_F.cd_voce = aSaldoDoc.cd_voce));
Select * Into aSaldo
From VOCE_F_SALDI_CDR_LINEA
Where esercizio = aSaldoDoc.esercizio
And esercizio_res = aSaldoDoc.esercizio
And cd_centro_responsabilita = aSaldoDoc.cd_centro_responsabilita
And cd_linea_attivita = aSaldoDoc.cd_linea_attivita
And ti_appartenenza = aSaldoDoc.ti_appartenenza
And ti_gestione = aSaldoDoc.ti_gestione
And cd_voce = aSaldoDoc.cd_voce
For update nowait;
Return aSaldo;
End;
Procedure job_mar_saldi01(job number, pg_exec number, next_date date, aEs number, aCdCDS varchar2, aCdUO varchar2, aCdCdr varchar2, aCd_voce VARCHAR2, aCd_linea_attivita VARCHAR2, isModifica char) is
aStringa varchar2(4000);
aTSNow date;
aUser varchar2(20);
aChekLock CHAR(1);
aChekUpdate CHAR(1);
aMan mandato%rowtype;
aRev reversale%rowtype;
aMsgTipoMar varchar2(100);
aEndT date;
aStartT date;
aEnd varchar2(80);
aStart varchar2(80);
aDelta varchar2(80);
aSaldo VOCE_F_SALDI_CDR_LINEA%rowtype;
lImporto number(15,2);
lImportoTotCap number(15,2);
lImportoScadVoce number(15,2);
lImVariazionePiu number(15,2);
lImVariazioneMeno number(15,2);
Begin
aTSNow:=sysdate;
aUser:=IBMUTL200.getUserFromLog(pg_exec);
if isModifica = 'Y' then
aMsgTipoMar:='MODIFICA';
else
aMsgTipoMar:='VERIFICA';
end if;
aStartT:=sysdate;
aStart:=to_char(sysdate,'YYYYMMDD HH:MI:SS');
IBMUTL210.logStartExecutionUpd(pg_exec, TIPO_LOG_MAR_SALDI, job, 'Batch di '||aMsgTipoMar||' dei saldi. Start:'||to_char(aTSNow,'YYYY/MM/DD HH-MI-SS'));
Begin
IBMUTL200.logInf(pg_exec,'DIFFSALDI START at: '||aStart||' es.'||aEs||' CDS.'||aCdcds||' UO.'||aCdUO||' cdr.'||aCdCdr||' Voce.'||aCd_voce||' Linea.'||aCd_linea_attivita,' ','SOC');
For aStruttura in (
Select cd_centro_responsabilita
From V_STRUTTURA_ORGANIZZATIVA
Where esercizio = aEs
And CD_TIPO_LIVELLO = 'CDR'
And cd_cds = Decode(aCdCds,'TUTTI',cd_cds,aCdCds)
And cd_centro_responsabilita = Decode(aCdCdr,'TUTTI',cd_centro_responsabilita,aCdCdr)
And cd_unita_organizzativa = Decode(aCdUO,'TUTTI',cd_unita_organizzativa,aCdUO)) Loop
For aSaldoDoc in (
Select A.*
From V_VOCE_F_SALDI_CDR_LINEA A
Where A.esercizio = aEs
And A.cd_centro_responsabilita = aStruttura.cd_centro_responsabilita
And A.cd_voce = Decode(aCd_voce,'TUTTI',A.cd_voce, aCd_voce)
And A.cd_linea_attivita = Decode(aCd_linea_attivita,'TUTTI',A.cd_linea_attivita,aCd_linea_attivita)) Loop
Begin
Select * into aSaldo
From VOCE_F_SALDI_CDR_LINEA
Where esercizio = aSaldoDoc.esercizio
And esercizio_res = aSaldoDoc.esercizio
And cd_centro_responsabilita = aSaldoDoc.cd_centro_responsabilita
And cd_linea_attivita = aSaldoDoc.cd_linea_attivita
And ti_appartenenza = aSaldoDoc.ti_appartenenza
And ti_gestione = aSaldoDoc.ti_gestione
And cd_voce = aSaldoDoc.cd_voce
For update nowait;
Exception
When No_Data_Found Then
aSaldo := SetVOCE_F_SALDI_CDR_LINEA(aSaldoDoc);
End;
lImporto := aSaldoDoc.im_obbl_acc_comp;
If lImporto - aSaldo.im_obbl_acc_comp != 0 Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set im_obbl_acc_comp = lImporto, utuv='MARTELLO', duva = sysdate
Where esercizio = aSaldoDoc.esercizio
And esercizio_res = aSaldoDoc.esercizio
And cd_centro_responsabilita = aSaldoDoc.cd_centro_responsabilita
And cd_linea_attivita = aSaldoDoc.cd_linea_attivita
And ti_appartenenza = aSaldoDoc.ti_appartenenza
And ti_gestione = aSaldoDoc.ti_gestione
And cd_voce = aSaldoDoc.cd_voce;
End If;
IBMUTL200.logInf(pg_exec,MSG_DIFF_SALDI_CDR_LINEA('DIS - DISSALDI010 - im_obbl_acc_comp ',aSaldoDoc, aSaldo),MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI010',aSaldoDoc, aSaldo),'SOCD');
End If;
lImporto := aSaldoDoc.im_mandati_reversali_pro;
If lImporto - aSaldo.im_mandati_reversali_pro != 0 Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set im_mandati_reversali_pro = lImporto, utuv='MARTELLO', duva = sysdate
Where esercizio = aSaldoDoc.esercizio
And esercizio_res = aSaldoDoc.esercizio
And cd_centro_responsabilita = aSaldoDoc.cd_centro_responsabilita
And cd_linea_attivita = aSaldoDoc.cd_linea_attivita
And ti_appartenenza = aSaldoDoc.ti_appartenenza
And ti_gestione = aSaldoDoc.ti_gestione
And cd_voce = aSaldoDoc.cd_voce;
End If;
IBMUTL200.logInf(pg_exec,MSG_DIFF_SALDI_CDR_LINEA('DIS - DISSALDI020 - IM_MANDATI_REVERSALI_PRO ',aSaldoDoc, aSaldo),MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI020',aSaldoDoc, aSaldo),'SOCD');
End If;
lImporto := aSaldoDoc.im_pagamenti_incassi;
If lImporto - aSaldo.im_pagamenti_incassi != 0 Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set im_pagamenti_incassi = lImporto, utuv='MARTELLO', duva = sysdate
Where esercizio = aSaldoDoc.esercizio
And esercizio_res = aSaldoDoc.esercizio
And cd_centro_responsabilita = aSaldoDoc.cd_centro_responsabilita
And cd_linea_attivita = aSaldoDoc.cd_linea_attivita
And ti_appartenenza = aSaldoDoc.ti_appartenenza
And ti_gestione = aSaldoDoc.ti_gestione
And cd_voce = aSaldoDoc.cd_voce;
End If;
IBMUTL200.logInf(pg_exec,MSG_DIFF_SALDI_CDR_LINEA('DIS - DISSALDI030 - IM_PAGAMENTI_INCASSI ',aSaldoDoc, aSaldo),MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI030',aSaldoDoc, aSaldo),'SOCD');
End If;
lImporto := aSaldoDoc.stanziamenti;
If lImporto - aSaldo.IM_STANZ_INIZIALE_A1 != 0 Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set IM_STANZ_INIZIALE_A1 = lImporto, utuv='MARTELLO', duva = sysdate
Where esercizio = aSaldoDoc.esercizio
And esercizio_res = aSaldoDoc.esercizio
And cd_centro_responsabilita = aSaldoDoc.cd_centro_responsabilita
And cd_linea_attivita = aSaldoDoc.cd_linea_attivita
And ti_appartenenza = aSaldoDoc.ti_appartenenza
And ti_gestione = aSaldoDoc.ti_gestione
And cd_voce = aSaldoDoc.cd_voce;
End If;
IBMUTL200.logInf(pg_exec,MSG_DIFF_SALDI_CDR_LINEA('DIS - DISSALDI030 - IM_STANZ_INIZIALE_A1 ',aSaldoDoc, aSaldo),MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI030',aSaldoDoc, aSaldo),'SOCD');
End If;
lImporto := aSaldoDoc.variazioni_piu;
If lImporto - aSaldo.variazioni_piu != 0 Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set variazioni_piu = lImporto, utuv='MARTELLO', duva = sysdate
Where esercizio = aSaldoDoc.esercizio
And esercizio_res = aSaldoDoc.esercizio
And cd_centro_responsabilita = aSaldoDoc.cd_centro_responsabilita
And cd_linea_attivita = aSaldoDoc.cd_linea_attivita
And ti_appartenenza = aSaldoDoc.ti_appartenenza
And ti_gestione = aSaldoDoc.ti_gestione
And cd_voce = aSaldoDoc.cd_voce;
End If;
IBMUTL200.logInf(pg_exec,MSG_DIFF_SALDI_CDR_LINEA('DIS - DISSALDI030 - VARIAZIONI_PIU ',aSaldoDoc, aSaldo),MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI030',aSaldoDoc, aSaldo),'SOCD');
End If;
lImporto := aSaldoDoc.variazioni_meno;
If lImporto - aSaldo.variazioni_meno != 0 Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set variazioni_meno = lImporto, utuv='MARTELLO', duva = sysdate
Where esercizio = aSaldoDoc.esercizio
And esercizio_res = aSaldoDoc.esercizio
And cd_centro_responsabilita = aSaldoDoc.cd_centro_responsabilita
And cd_linea_attivita = aSaldoDoc.cd_linea_attivita
And ti_appartenenza = aSaldoDoc.ti_appartenenza
And ti_gestione = aSaldoDoc.ti_gestione
And cd_voce = aSaldoDoc.cd_voce;
End If;
IBMUTL200.logInf(pg_exec,MSG_DIFF_SALDI_CDR_LINEA('DIS - DISSALDI030 - VARIAZIONI_MENO ',aSaldoDoc, aSaldo),MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI030',aSaldoDoc, aSaldo),'SOCD');
End If;
End Loop;
For aSaldoDelete in (
Select ESERCIZIO, ESERCIZIO_RES, CD_CENTRO_RESPONSABILITA, CD_LINEA_ATTIVITA, TI_APPARTENENZA, TI_GESTIONE, CD_VOCE
From VOCE_F_SALDI_CDR_LINEA
Where esercizio = aEs
And esercizio = esercizio_res
And cd_centro_responsabilita = aStruttura.cd_centro_responsabilita
And cd_voce = Decode(aCd_voce,'TUTTI',cd_voce, aCd_voce)
And cd_linea_attivita = Decode(aCd_linea_attivita,'TUTTI',cd_linea_attivita,aCd_linea_attivita)
And (im_obbl_acc_comp != 0 Or im_mandati_reversali_pro != 0 Or im_pagamenti_incassi != 0 Or
IM_STANZ_INIZIALE_A1 != 0 Or variazioni_piu != 0 Or variazioni_meno != 0)
And Not Exists
(Select 1
From v_voce_f_saldi_cdr_linea a
Where a.ESERCIZIO = VOCE_F_SALDI_CDR_LINEA.ESERCIZIO
And a.cd_centro_responsabilita = VOCE_F_SALDI_CDR_LINEA.cd_centro_responsabilita
And a.cd_linea_attivita =VOCE_F_SALDI_CDR_LINEA.cd_linea_attivita
And a.ti_appartenenza = VOCE_F_SALDI_CDR_LINEA.ti_appartenenza
And a.ti_gestione = VOCE_F_SALDI_CDR_LINEA.ti_gestione
And a. cd_voce = VOCE_F_SALDI_CDR_LINEA. cd_voce)) Loop
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set im_obbl_acc_comp = 0, im_mandati_reversali_pro = 0, im_pagamenti_incassi = 0,
IM_STANZ_INIZIALE_A1 = 0, variazioni_piu = 0, variazioni_meno = 0
Where esercizio = aSaldoDelete.esercizio
And esercizio_res = aSaldoDelete.esercizio
And cd_centro_responsabilita = aSaldoDelete.cd_centro_responsabilita
And cd_linea_attivita = aSaldoDelete.cd_linea_attivita
And ti_appartenenza = aSaldoDelete.ti_appartenenza
And ti_gestione = aSaldoDelete.ti_gestione
And cd_voce = aSaldoDelete.cd_voce;
End If;
IBMUTL200.logInf(pg_exec,'Saldo - Cap:'||RPAD(aSaldoDelete.cd_voce,26)||' '||
'Cdr:'||RPAD(aSaldoDelete.cd_centro_responsabilita,30)||' '||
'Linea:'||RPAD(aSaldoDelete.cd_linea_attivita,10)||' '||
'E/S:'||aSaldoDelete.ti_gestione,'Riga di saldo erroneamente presente, annullati gli importi di competenza','SOCD');
End Loop;
IBMUTL200.logInf(pg_exec,'CDR:'||aStruttura.cd_centro_responsabilita||' terminato.',' ','SOCD');
Commit;
End Loop;
aEndT:=sysdate;
aEnd:=to_char(aEndT,'YYYYMMDD HH:MI:SS');
aDelta:=to_char((aEndT-aStartT)*24*3600,'999999');
IBMUTL200.logInf(pg_exec,'DIFFSALDI END at: '||aEnd||' tot exec time(s):'||aDelta||' es.'||aEs||' UO.'||aCdUO||' cdr.'||aCdCdr,' ','SOC');
Exception
When Others Then
Rollback;
IBMUTL200.logErr(pg_exec, SQLERRM(SQLCODE),DBMS_UTILITY.FORMAT_ERROR_STACK,'SOC');
End;
End;
/* */
Procedure job_mar_saldi02(job number, pg_exec number, next_date date, aEs number, aCdCDS varchar2, aCdUO varchar2, aCdCdr varchar2, aCd_voce VARCHAR2, aCd_linea_attivita VARCHAR2, isModifica char) is
aStringa varchar2(4000);
aTSNow date;
aUser varchar2(20);
aChekLock CHAR(1);
aChekUpdate CHAR(1);
aMan mandato%rowtype;
aRev reversale%rowtype;
aMsgTipoMar varchar2(100);
aEndT date;
aStartT date;
aEnd varchar2(80);
aStart varchar2(80);
aDelta varchar2(80);
aSaldo VOCE_F_SALDI_CDR_LINEA%rowtype;
lImporto number(15,2);
lImportoTotCap number(15,2);
lImportoScadVoce number(15,2);
lImVariazionePiu number(15,2);
lImVariazioneMeno number(15,2);
aSaldi VOCE_F_SALDI_CDR_LINEA%Rowtype;
disallineamenti number:=0;
Begin
aTSNow:=sysdate;
aUser:=IBMUTL200.getUserFromLog(pg_exec);
if isModifica = 'Y' then
aMsgTipoMar:='MODIFICA';
else
aMsgTipoMar:='VERIFICA';
end if;
aStartT:=sysdate;
aStart:=to_char(sysdate,'YYYYMMDD HH:MI:SS');
IBMUTL210.logStartExecutionUpd(pg_exec, TIPO_LOG_MAR_SALDI, job, 'Batch di '||aMsgTipoMar||' dei saldi. Start:'||to_char(aTSNow,'YYYY/MM/DD HH-MI-SS'));
Begin
IBMUTL200.logInf(pg_exec,'DIFFSALDI START at: '||aStart||' es.'||aEs||' CDS.'||aCdcds||' UO.'||aCdUO||' cdr.'||aCdCdr||' Voce.'||aCd_voce||' Linea.'||aCd_linea_attivita,' ','SOC');
INSERT_SALDI_VUOTI_UTILIZZATI (pg_exec, aEs);
If aEs >= 2006 Then
For aStruttura in (Select cd_centro_responsabilita
From V_STRUTTURA_ORGANIZZATIVA
Where esercizio = aEs
And CD_TIPO_LIVELLO = 'CDR'
And cd_cds = Decode(aCdCds,'TUTTI',cd_cds,aCdCds)
And cd_centro_responsabilita = Decode(aCdCdr,'TUTTI',cd_centro_responsabilita,aCdCdr)
And cd_unita_organizzativa = Decode(aCdUO,'TUTTI',cd_unita_organizzativa,aCdUO)) Loop
For CHIAVE_Saldi in (Select ESERCIZIO, ESERCIZIO_RES, CD_CENTRO_RESPONSABILITA, CD_LINEA_ATTIVITA, TI_APPARTENENZA, TI_GESTIONE, CD_VOCE
From VOCE_F_SALDI_CDR_LINEA
Where esercizio = aEs
And cd_centro_responsabilita = aStruttura.cd_centro_responsabilita
And cd_voce = Decode(aCd_voce,'TUTTI',cd_voce, aCd_voce)
And cd_linea_attivita = Decode(aCd_linea_attivita,'TUTTI',cd_linea_attivita,aCd_linea_attivita)) Loop
-- IM_STANZ_INIZIALE_A1 *** SOLO PER COMPETENZA !!! ***
-- *** SIA ENTRATA CHE SPESA ***
If isModifica = 'Y' then
Select *
Into aSaldi
From VOCE_F_SALDI_CDR_LINEA
Where ESERCIZIO = CHIAVE_Saldi.ESERCIZIO and
ESERCIZIO_RES = CHIAVE_Saldi.ESERCIZIO_RES and
CD_CENTRO_RESPONSABILITA = CHIAVE_Saldi.CD_CENTRO_RESPONSABILITA and
CD_LINEA_ATTIVITA = CHIAVE_Saldi.CD_LINEA_ATTIVITA and
TI_APPARTENENZA = CHIAVE_Saldi.TI_APPARTENENZA and
TI_GESTIONE = CHIAVE_Saldi.TI_GESTIONE and
CD_VOCE = CHIAVE_Saldi.CD_VOCE
For Update;
Else
Select *
Into aSaldi
From VOCE_F_SALDI_CDR_LINEA
Where ESERCIZIO = CHIAVE_Saldi.ESERCIZIO and
ESERCIZIO_RES = CHIAVE_Saldi.ESERCIZIO_RES and
CD_CENTRO_RESPONSABILITA = CHIAVE_Saldi.CD_CENTRO_RESPONSABILITA and
CD_LINEA_ATTIVITA = CHIAVE_Saldi.CD_LINEA_ATTIVITA and
TI_APPARTENENZA = CHIAVE_Saldi.TI_APPARTENENZA and
TI_GESTIONE = CHIAVE_Saldi.TI_GESTIONE and
CD_VOCE = CHIAVE_Saldi.CD_VOCE;
End If;
-- STANZIAMENTO INIZIALE
If aSaldi.ESERCIZIO = aSaldi.ESERCIZIO_RES And aSaldi.CD_CENTRO_RESPONSABILITA != cnrctb020.getCdCdrEnte Then
lImporto := CNRUTL002.IM_STANZ_INIZIALE_A1 (aSaldi.ESERCIZIO, aSaldi.ESERCIZIO_RES, aSaldi.CD_CENTRO_RESPONSABILITA,
aSaldi.CD_LINEA_ATTIVITA, aSaldi.TI_APPARTENENZA, aSaldi.TI_GESTIONE,
aSaldi.CD_VOCE, aSaldi.CD_ELEMENTO_VOCE);
If aSaldi.IM_STANZ_INIZIALE_A1 != lImporto Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set IM_STANZ_INIZIALE_A1 = lImporto,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_IM_STANZ_INIZIALE_A1('DIS - DISSALDI010 - IM_STANZ_INIZIALE_A1 ', fnum(lImporto), aSaldi), MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI010',Null, aSaldi),'SOCD');
End If;
-- PER I RESIDUI E' POPOLATA PER ERRORE LA COLONNA STANZIAMENTO INIZIALE COMPETENZA
Elsif aSaldi.ESERCIZIO != aSaldi.ESERCIZIO_RES And aSaldi.IM_STANZ_INIZIALE_A1 != 0 Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set IM_STANZ_INIZIALE_A1 = 0,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_IM_STANZ_INIZIALE_A1('DIS - DISSALDI010 - IM_STANZ_INIZIALE_A1 (INCONGRUO) ', fnum(0), aSaldi), MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI010',Null, aSaldi),'SOCD');
End If;
/* AGGIUNTO IL 15 MAGGIO 2006 */
-- VARIAZIONI IN PIU AL PDG COMPETENZA >= 2006
If aSaldi.ESERCIZIO = aSaldi.ESERCIZIO_RES Then
lImporto := CNRUTL002.VARIAZIONI_PIU (aSaldi.ESERCIZIO, aSaldi.ESERCIZIO_RES, aSaldi.CD_CENTRO_RESPONSABILITA,
aSaldi.CD_LINEA_ATTIVITA, aSaldi.TI_APPARTENENZA, aSaldi.TI_GESTIONE,
aSaldi.CD_VOCE, aSaldi.CD_ELEMENTO_VOCE);
If aSaldi.VARIAZIONI_PIU != lImporto Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set VARIAZIONI_PIU = lImporto,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_VARIAZIONI_PIU('DIS - DISSALDI010 - VARIAZIONI_PIU ', fnum(lImporto), aSaldi), MSG_D_S_VARIAZIONI_PIU('DISSALDI010',Null, aSaldi),'SOCD');
End If;
-- PER I RESIDUI E' POPOLATA PER ERRORE LA COLONNA VARIAZIONI PIU' COMPETENZA
Elsif aSaldi.ESERCIZIO != aSaldi.ESERCIZIO_RES And aSaldi.VARIAZIONI_PIU != 0 Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set VARIAZIONI_PIU = 0,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_VARIAZIONI_PIU('DIS - DISSALDI010 - VARIAZIONI_PIU (INCONGRUO) ', fnum(0), aSaldi), MSG_D_S_VARIAZIONI_PIU('DISSALDI010',Null, aSaldi),'SOCD');
End If;
-- VARIAZIONI IN MENO AL PDG COMPETENZA >= 2006
If aSaldi.ESERCIZIO = aSaldi.ESERCIZIO_RES Then
lImporto := Abs(CNRUTL002.VARIAZIONI_MENO (aSaldi.ESERCIZIO, aSaldi.ESERCIZIO_RES, aSaldi.CD_CENTRO_RESPONSABILITA,
aSaldi.CD_LINEA_ATTIVITA, aSaldi.TI_APPARTENENZA, aSaldi.TI_GESTIONE,
aSaldi.CD_VOCE, aSaldi.CD_ELEMENTO_VOCE));
If aSaldi.VARIAZIONI_MENO != lImporto Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set VARIAZIONI_MENO = lImporto,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_VARIAZIONI_MENO('DIS - DISSALDI010 - VARIAZIONI_MENO ',
fnum(lImporto), aSaldi), MSG_D_S_VARIAZIONI_MENO('DISSALDI010',Null, aSaldi),'SOCD');
End If;
-- PER I RESIDUI E' POPOLATA PER ERRORE LA COLONNA VARIAZIONI MENO COMPETENZA
Elsif aSaldi.ESERCIZIO != aSaldi.ESERCIZIO_RES And aSaldi.VARIAZIONI_MENO != 0 Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set VARIAZIONI_MENO = 0,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_VARIAZIONI_MENO('DIS - DISSALDI010 - VARIAZIONI_MENO (INCONGRUO) ',
fnum(0), aSaldi), MSG_D_S_VARIAZIONI_MENO('DISSALDI010',Null, aSaldi),'SOCD');
End If;
/* FINE AGGIUNTO IL 15 MAGGIO 2006 */
-- IM_OBBL_ACC_COMP *** SOLO PER COMPETENZA !!! ***
-- *** SIA ENTRATA CHE SPESA ***
If aSaldi.ESERCIZIO = aSaldi.ESERCIZIO_RES Then
lImporto := CNRUTL002.IM_OBBL_ACC_COMP (aSaldi.ESERCIZIO, aSaldi.ESERCIZIO_RES, aSaldi.CD_CENTRO_RESPONSABILITA,
aSaldi.CD_LINEA_ATTIVITA, aSaldi.TI_APPARTENENZA, aSaldi.TI_GESTIONE,
aSaldi.CD_VOCE, aSaldi.CD_ELEMENTO_VOCE);
If aSaldi.IM_OBBL_ACC_COMP != lImporto Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set IM_OBBL_ACC_COMP = lImporto,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_IM_OBBL_ACC_COMP('DIS - DISSALDI010 - IM_OBBL_ACC_COMP ', fnum(lImporto), aSaldi), MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI010',Null, aSaldi),'SOCD');
End If;
-- PER I RESIDUI E' POPOLATA PER ERRORE LA COLONNA IMPEGNATO/ACCERTATO A COMPETENZA
Elsif aSaldi.ESERCIZIO != aSaldi.ESERCIZIO_RES And aSaldi.IM_OBBL_ACC_COMP != 0 Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set IM_OBBL_ACC_COMP = 0,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_IM_OBBL_ACC_COMP('DIS - DISSALDI010 - IM_OBBL_ACC_COMP (INCONGRUO) ', fnum(0), aSaldi), MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI010',Null, aSaldi),'SOCD');
End If;
-- IM_STANZ_RES_IMPROPRIO *** SOLO PER RESIDUI !!! ***
-- *** SOLO PER SPESA ***
If aSaldi.ESERCIZIO > aSaldi.ESERCIZIO_RES And aSaldi.TI_GESTIONE = 'S' And aSaldi.cd_centro_responsabilita != cnrctb020.getCdCdrEnte Then
lImporto := CNRUTL002.IM_STANZ_RES_IMPROPRIO (aSaldi.ESERCIZIO, aSaldi.ESERCIZIO_RES, aSaldi.CD_CENTRO_RESPONSABILITA,
aSaldi.CD_LINEA_ATTIVITA, aSaldi.TI_APPARTENENZA, aSaldi.TI_GESTIONE,
aSaldi.CD_VOCE, aSaldi.CD_ELEMENTO_VOCE);
If aSaldi.IM_STANZ_RES_IMPROPRIO != lImporto Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set IM_STANZ_RES_IMPROPRIO = lImporto,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_IM_STANZ_RES_IMPROPRIO('DIS - DISSALDI010 - IM_STANZ_RES_IMPROPRIO ', fnum(lImporto), aSaldi), MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI010',Null, aSaldi),'SOCD');
End If;
Else
-- SE E' POPOLATA LA COLONNA IM_STANZ_RES_IMPROPRIO IN CASO DI:
-- COMPETENZA,
-- ENTRATA,
-- CDR 999.000.000 ALLORA TRATTASI DI ERRORE E QUINDI LO AZZERO
If aSALDI.IM_STANZ_RES_IMPROPRIO != 0 Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set IM_STANZ_RES_IMPROPRIO = 0,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_IM_STANZ_RES_IMPROPRIO('DIS - DISSALDI010 - IM_STANZ_RES_IMPROPRIO (INCONGRUO) ', fnum(0), aSaldi), MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI010',Null, aSaldi),'SOCD');
End If;
End If;
-- VAR_PIU_STANZ_RES_IMP *** SOLO PER RESIDUI !!! ***
-- *** SOLO PER SPESA ***
If aSaldi.ESERCIZIO > aSaldi.ESERCIZIO_RES And aSaldi.TI_GESTIONE = 'S' And aSaldi.cd_centro_responsabilita != cnrctb020.getCdCdrEnte Then
lImporto := CNRUTL002.VAR_PIU_STANZ_RES_IMP (aSaldi.ESERCIZIO, aSaldi.ESERCIZIO_RES, aSaldi.CD_CENTRO_RESPONSABILITA,
aSaldi.CD_LINEA_ATTIVITA, aSaldi.TI_APPARTENENZA, aSaldi.TI_GESTIONE,
aSaldi.CD_VOCE, aSaldi.CD_ELEMENTO_VOCE);
If aSaldi.VAR_PIU_STANZ_RES_IMP != lImporto Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set VAR_PIU_STANZ_RES_IMP = lImporto,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_VAR_PIU_STANZ_RES_IMP('DIS - DISSALDI010 - VAR_PIU_STANZ_RES_IMP ', fnum(lImporto), aSaldi), MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI010',Null, aSaldi),'SOCD');
End If;
Else
-- SE E' POPOLATA LA COLONNA VAR_PIU_STANZ_RES_IMP IN CASO DI:
-- COMPETENZA,
-- ENTRATA,
-- CDR 999.000.000 ALLORA TRATTASI DI ERRORE E QUINDI LO AZZERO
If aSALDI.VAR_PIU_STANZ_RES_IMP != 0 Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set VAR_PIU_STANZ_RES_IMP = 0,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_VAR_PIU_STANZ_RES_IMP('DIS - DISSALDI010 - VAR_PIU_STANZ_RES_IMP (INCONGRUO) ', fnum(0), aSaldi), MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI010',Null, aSaldi),'SOCD');
End If;
End If;
-- VAR_MENO_STANZ_RES_IMP *** SOLO PER RESIDUI !!! ***
-- *** SOLO PER SPESA ***
If aSaldi.ESERCIZIO > aSaldi.ESERCIZIO_RES And aSaldi.TI_GESTIONE = 'S' And aSaldi.cd_centro_responsabilita != cnrctb020.getCdCdrEnte Then
lImporto := CNRUTL002.VAR_MENO_STANZ_RES_IMP (aSaldi.ESERCIZIO, aSaldi.ESERCIZIO_RES, aSaldi.CD_CENTRO_RESPONSABILITA,
aSaldi.CD_LINEA_ATTIVITA, aSaldi.TI_APPARTENENZA, aSaldi.TI_GESTIONE,
aSaldi.CD_VOCE, aSaldi.CD_ELEMENTO_VOCE);
If aSaldi.VAR_MENO_STANZ_RES_IMP != lImporto Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set VAR_MENO_STANZ_RES_IMP = lImporto,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_VAR_MENO_STANZ_RES_IMP('DIS - DISSALDI010 - VAR_MENO_STANZ_RES_IMP ', fnum(lImporto), aSaldi), MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI010',Null, aSaldi),'SOCD');
End If;
Else
-- SE E' POPOLATA LA COLONNA VAR_MENO_STANZ_RES_IMP IN CASO DI:
-- COMPETENZA,
-- ENTRATA,
-- CDR 999.000.000 ALLORA TRATTASI DI ERRORE E QUINDI LO AZZERO
If aSaldi.VAR_MENO_STANZ_RES_IMP != 0 Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set VAR_MENO_STANZ_RES_IMP = lImporto,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_VAR_MENO_STANZ_RES_IMP('DIS - DISSALDI010 - VAR_MENO_STANZ_RES_IMP ', fnum(lImporto), aSaldi), MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI010',Null, aSaldi),'SOCD');
End If;
End If;
-- IM_OBBL_RES_IMP *** SOLO PER RESIDUI !!! ***
-- *** SOLO PER SPESA ***
If aSaldi.ESERCIZIO > aSaldi.ESERCIZIO_RES And aSaldi.TI_GESTIONE = 'S' And aSaldi.cd_centro_responsabilita != cnrctb020.getCdCdrEnte Then
lImporto := CNRUTL002.IM_OBBL_RES_IMP (aSaldi.ESERCIZIO, aSaldi.ESERCIZIO_RES, aSaldi.CD_CENTRO_RESPONSABILITA,
aSaldi.CD_LINEA_ATTIVITA, aSaldi.TI_APPARTENENZA, aSaldi.TI_GESTIONE,
aSaldi.CD_VOCE, aSaldi.CD_ELEMENTO_VOCE);
If aSaldi.IM_OBBL_RES_IMP != lImporto Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set IM_OBBL_RES_IMP = lImporto,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_IM_OBBL_RES_IMP('DIS - DISSALDI010 - IM_OBBL_RES_IMP ', fnum(lImporto), aSaldi), MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI010',Null, aSaldi),'SOCD');
End If;
Else
-- SE E' POPOLATA LA COLONNA IM_OBBL_RES_IMP IN CASO DI:
-- COMPETENZA,
-- ENTRATA,
-- CDR 999.000.000 ALLORA TRATTASI DI ERRORE E QUINDI LO AZZERO
If aSaldi.IM_OBBL_RES_IMP != 0 Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set IM_OBBL_RES_IMP = 0,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_IM_OBBL_RES_IMP('DIS - DISSALDI010 - IM_OBBL_RES_IMP (INCONGRUO) ', fnum(0), aSaldi), MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI010',Null, aSaldi),'SOCD');
End If;
End If;
-- IM_OBBL_RES_PRO *** SOLO PER RESIDUI !!! ***
-- *** SIA ENTRATA CHE SPESA ***
If aSaldi.ESERCIZIO > aSaldi.ESERCIZIO_RES Then
lImporto := CNRUTL002.IM_OBBL_RES_PRO (aSaldi.ESERCIZIO, aSaldi.ESERCIZIO_RES, aSaldi.CD_CENTRO_RESPONSABILITA,
aSaldi.CD_LINEA_ATTIVITA, aSaldi.TI_APPARTENENZA, aSaldi.TI_GESTIONE,
aSaldi.CD_VOCE, aSaldi.CD_ELEMENTO_VOCE);
If aSaldi.IM_OBBL_RES_PRO != lImporto Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set IM_OBBL_RES_PRO = lImporto,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_IM_OBBL_RES_PRO('DIS - DISSALDI010 - IM_OBBL_RES_PRO ', fnum(lImporto), aSaldi), MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI010',Null, aSaldi),'SOCD');
End If;
Else
-- SE E' POPOLATA LA COLONNA IM_OBBL_RES_PRO IN CASO DI COMPETENZA LA AZZERO
If aSaldi.IM_OBBL_RES_PRO != 0 Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set IM_OBBL_RES_PRO = 0,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_IM_OBBL_RES_PRO('DIS - DISSALDI010 - IM_OBBL_RES_PRO (INCONGRUO) ', fnum(0), aSaldi), MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI010',Null, aSaldi),'SOCD');
End If;
End If;
-- VAR_PIU_OBBL_RES_PRO
/* INIZIO MODIFICA 08.08.2006 + 21.08.2006 */
-- VARIAZIONI IN PIU A (SOLO RESIDUI):
-- IMPEGNI RESIDUI ENTE (APPROVAZIONE VARIAZIONI AL BILANCIO DI SERVIZIO)
-- N.B !!!! IL VALORE PERO' LO PRENDE DALLE VARIAZIONI A COMPETENZA
-- IMPEGNI RESIDUI PROPRI CDR (NUOVE FUNZIONALITA')
If aSaldi.ESERCIZIO > aSaldi.ESERCIZIO_RES Then
-- CDR ENTE: 999.000.000
If aSaldi.CD_CENTRO_RESPONSABILITA = cnrctb020.getCdCdrEnte Then -- NON MI SEMBRA CHE CI SIA UNA GET COL CODICE DEL CDR
lImporto := CNRUTL002.VARIAZIONI_PIU (aSaldi.ESERCIZIO, aSaldi.ESERCIZIO_RES, aSaldi.CD_CENTRO_RESPONSABILITA,
aSaldi.CD_LINEA_ATTIVITA, aSaldi.TI_APPARTENENZA, aSaldi.TI_GESTIONE,
aSaldi.CD_VOCE, aSaldi.CD_ELEMENTO_VOCE);
If aSaldi.VAR_PIU_OBBL_RES_PRO != lImporto Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set VAR_PIU_OBBL_RES_PRO = lImporto,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_VAR_PIU_OBBL_RES_PRO('DIS - DISSALDI010 - VAR_PIU_OBBL_RES_PRO ', fnum(lImporto), aSaldi), MSG_D_S_VAR_PIU_OBBL_RES_PRO('DISSALDI010',Null, aSaldi),'SOCD');
End If;
Elsif aSaldi.CD_CENTRO_RESPONSABILITA != cnrctb020.getCdCdrEnte Then
-- ISTITUTI != 999.000.000
lImporto := CNRUTL002.VAR_PIU_OBBL_RES_PRO (aSaldi.ESERCIZIO, aSaldi.ESERCIZIO_RES, aSaldi.CD_CENTRO_RESPONSABILITA,
aSaldi.CD_LINEA_ATTIVITA, aSaldi.TI_APPARTENENZA, aSaldi.TI_GESTIONE,
aSaldi.CD_VOCE, aSaldi.CD_ELEMENTO_VOCE);
If aSaldi.VAR_PIU_OBBL_RES_PRO != lImporto Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set VAR_PIU_OBBL_RES_PRO = lImporto,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_VAR_PIU_OBBL_RES_PRO('DIS - DISSALDI010 - VAR_PIU_OBBL_RES_PRO ', fnum(lImporto), aSaldi), MSG_D_S_VAR_PIU_OBBL_RES_PRO('DISSALDI010',Null, aSaldi),'SOCD');
End If;
End If;
Else
-- SE E' POPOLATA LA COLONNA VAR_PIU_OBBL_RES_PRO IN CASO DI COMPETENZA LA AZZERO
If aSaldi.VAR_PIU_OBBL_RES_PRO != 0 Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set VAR_PIU_OBBL_RES_PRO = 0,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_VAR_PIU_OBBL_RES_PRO('DIS - DISSALDI010 - VAR_PIU_OBBL_RES_PRO (INCONGRUO) ', fnum(0), aSaldi), MSG_D_S_VAR_PIU_OBBL_RES_PRO('DISSALDI010',Null, aSaldi),'SOCD');
End If;
End If;
-- VARIAZIONI IN PIU AGLI IMPEGNI RESIDUI ENTE (SOLO RESIDUI)
-- PER ORA SOLO I RESIDUI ENTE (APPROVAZIONE VARIAZIONI AL BILANCIO DI SERVIZIO)
-- N.B !!!! IL VALORE PERO' LO PRENDE DALLE VARIAZIONI A COMPETENZA
If aSaldi.ESERCIZIO > aSaldi.ESERCIZIO_RES Then
-- CDR ENTE 999.000.000
If aSaldi.CD_CENTRO_RESPONSABILITA = cnrctb020.getCdCdrEnte Then -- NON MI SEMBRA CHE CI SIA UNA GET COL CODICE DEL CDR
lImporto := Abs(CNRUTL002.VARIAZIONI_MENO (aSaldi.ESERCIZIO, aSaldi.ESERCIZIO_RES, aSaldi.CD_CENTRO_RESPONSABILITA,
aSaldi.CD_LINEA_ATTIVITA, aSaldi.TI_APPARTENENZA, aSaldi.TI_GESTIONE,
aSaldi.CD_VOCE, aSaldi.CD_ELEMENTO_VOCE));
If aSaldi.VAR_MENO_OBBL_RES_PRO != lImporto Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set VAR_MENO_OBBL_RES_PRO = lImporto,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_VAR_MENO_OBBL_RES_PRO('1. DIS - DISSALDI010 - VAR_MENO_OBBL_RES_PRO ', fnum(lImporto), aSaldi), MSG_D_S_VAR_MENO_OBBL_RES_PRO('DISSALDI010',Null, aSaldi),'SOCD');
End If;
Elsif aSaldi.CD_CENTRO_RESPONSABILITA != cnrctb020.getCdCdrEnte Then
-- CDR ISTITUTO
lImporto := CNRUTL002.VAR_MENO_OBBL_RES_PRO (aSaldi.ESERCIZIO, aSaldi.ESERCIZIO_RES, aSaldi.CD_CENTRO_RESPONSABILITA,
aSaldi.CD_LINEA_ATTIVITA, aSaldi.TI_APPARTENENZA, aSaldi.TI_GESTIONE,
aSaldi.CD_VOCE, aSaldi.CD_ELEMENTO_VOCE);
If aSaldi.VAR_MENO_OBBL_RES_PRO != lImporto Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set VAR_MENO_OBBL_RES_PRO = lImporto,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_VAR_MENO_OBBL_RES_PRO('DIS - DISSALDI010 - VAR_MENO_OBBL_RES_PRO ', fnum(lImporto), aSaldi), MSG_D_S_VAR_PIU_OBBL_RES_PRO('DISSALDI010',Null, aSaldi),'SOCD');
End If;
End If;
Else
-- SE E' POPOLATA LA COLONNA VAR_MENO_OBBL_RES_PRO IN CASO DI COMPETENZA LA AZZERO
If aSaldi.VAR_MENO_OBBL_RES_PRO != 0 Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set VAR_MENO_OBBL_RES_PRO = 0,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_VAR_MENO_OBBL_RES_PRO('DIS - DISSALDI010 - VAR_MENO_OBBL_RES_PRO (INCONGRUO) ',
fnum(0), aSaldi), MSG_D_S_VAR_PIU_OBBL_RES_PRO('DISSALDI010',Null, aSaldi),'SOCD');
End If;
End If;
/* FINE MODIFICA 08.08.2006 */
-- IM_MANDATI_REVERSALI_PRO *** SIA PER COMPETENZA CHE PER RESIDUI !!! ***
-- *** SIA ENTRATA CHE SPESA ***
lImporto := CNRUTL002.IM_MANDATI_REVERSALI_PRO (aSaldi.ESERCIZIO, aSaldi.ESERCIZIO_RES, aSaldi.CD_CENTRO_RESPONSABILITA,
aSaldi.CD_LINEA_ATTIVITA, aSaldi.TI_APPARTENENZA, aSaldi.TI_GESTIONE,
aSaldi.CD_VOCE, aSaldi.CD_ELEMENTO_VOCE);
If aSaldi.IM_MANDATI_REVERSALI_PRO != lImporto Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set IM_MANDATI_REVERSALI_PRO = lImporto,
utuv ='MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_IM_MANDATI_REV_PRO('DIS - DISSALDI010 - IM_MANDATI_REVERSALI_PRO ', fnum(lImporto), aSaldi), MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI010',Null, aSaldi),'SOCD');
End If;
-- IM_MANDATI_REVERSALI_IMP *** SOLO PER RESIDUI !!! ***
-- *** SOLO PER SPESA ***
If aSaldi.ESERCIZIO > aSaldi.ESERCIZIO_RES And aSaldi.TI_GESTIONE = 'S' Then
lImporto := CNRUTL002.IM_MANDATI_REVERSALI_IMP (aSaldi.ESERCIZIO, aSaldi.ESERCIZIO_RES, aSaldi.CD_CENTRO_RESPONSABILITA,
aSaldi.CD_LINEA_ATTIVITA, aSaldi.TI_APPARTENENZA, aSaldi.TI_GESTIONE,
aSaldi.CD_VOCE, aSaldi.CD_ELEMENTO_VOCE);
If aSaldi.IM_MANDATI_REVERSALI_IMP != lImporto Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set IM_MANDATI_REVERSALI_IMP = lImporto,
utuv = 'MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_IM_MANDATI_REV_IMP('DIS - DISSALDI010 - IM_MANDATI_REVERSALI_IMP ', fnum(lImporto), aSaldi), MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI010',Null, aSaldi),'SOCD');
End If;
Else
-- SE LA COLONNA IM_MANDATI_REVERSALI_IMP E' POPOLATA IN CASO DI COMPETENZA O DI ENTRATA ALLORA LA AZZERO
If aSaldi.IM_MANDATI_REVERSALI_IMP != 0 Then
If isModifica = 'Y' Then
Update VOCE_F_SALDI_CDR_LINEA
Set IM_MANDATI_REVERSALI_IMP = 0,
utuv = 'MARTELLO06',
duva = sysdate
Where esercizio = aSaldi.esercizio
And esercizio_res = aSaldi.esercizio_res
And cd_centro_responsabilita = aSaldi.cd_centro_responsabilita
And cd_linea_attivita = aSaldi.cd_linea_attivita
And ti_appartenenza = aSaldi.ti_appartenenza
And ti_gestione = aSaldi.ti_gestione
And cd_voce = aSaldi.cd_voce;
End If;
IBMUTL200.logInf(pg_exec, MSG_D_S_IM_MANDATI_REV_IMP('DIS - DISSALDI010 - IM_MANDATI_REVERSALI_IMP (INCONGRUO) ', fnum(0), aSaldi), MSGCSV_DIFF_SALDI_CDR_LINEA('DISSALDI010',Null, aSaldi),'SOCD');
End If;
End If;
End Loop;
IBMUTL200.logInf(pg_exec,'CDR:'||aStruttura.cd_centro_responsabilita||' terminato.',' ','SOCD');
Commit;
End Loop;
select count(0) into disallineamenti from batch_log_riga where
pg_esecuzione = pg_exec and
messaggio like 'DIS -%';
aEndT:=sysdate;
aEnd:=to_char(aEndT,'YYYYMMDD HH:MI:SS');
aDelta:=to_char((aEndT-aStartT)*24*3600,'999999');
IBMUTL200.logInf(pg_exec,'DIFFSALDI END at: '||aEnd||' tot exec time(s):'||aDelta||' es.'||aEs||' UO.'||aCdUO||' cdr.'||aCdCdr,' ','SOC');
Else
IBMUTL200.logInf(pg_exec,'NON EFFETTUATA, ESERCIZIO INFERIORE AL 2006 '||aEs, ' ', 'SOC');
End If;
Exception
When Others Then
Rollback;
IBMUTL200.logErr(pg_exec, SQLERRM(SQLCODE),DBMS_UTILITY.FORMAT_ERROR_STACK,' ', 'SOC');
End;
End;
/* */
Procedure INSERT_SALDI_VUOTI_UTILIZZATI (aPg_exec NUMBER, INES NUMBER) Is
motivo VARCHAR2(100);
recParametriCNR PARAMETRI_CNR%Rowtype;
begin
recParametriCNR := CNRUTL001.getRecParametriCnr(INES);
For saldi_mancanti In
(Select Distinct TIPO, ESERCIZIO, ESERCIZIO_RES, CDR, CD_LINEA_ATTIVITA, TI_APPARTENENZA, TI_GESTIONE, CD_VOCE
From
(Select 'GS' TIPO, G.ESERCIZIO, G.ESERCIZIO ESERCIZIO_RES, G.CD_CDR_ASSEGNATARIO CDR, G.CD_LINEA_ATTIVITA, G.TI_APPARTENENZA, G.TI_GESTIONE,
CNRCTB053.getVoce_FdaEV (G.Esercizio, G.TI_APPARTENENZA, G.TI_GESTIONE, G.CD_ELEMENTO_VOCE, G.CD_CDR_ASSEGNATARIO, G.cd_linea_attivita) CD_VOCE
From PDG_MODULO_SPESE_GEST G, PDG_ESERCIZIO E
Where G.ESERCIZIO = INES AND
G.ESERCIZIO = E.ESERCIZIO And
G.CD_CENTRO_RESPONSABILITA = E.CD_CENTRO_RESPONSABILITA And
E.STATO = CNRCTB050.STATO_PDG2_CHIUSO_GEST And
G.CATEGORIA_DETTAGLIO != 'SCR'
Union All
Select 'GE', G.ESERCIZIO, G.ESERCIZIO,G.CD_CDR_ASSEGNATARIO, G.CD_LINEA_ATTIVITA, G.TI_APPARTENENZA, G.TI_GESTIONE,
CNRCTB053.getVoce_FdaEV (G.Esercizio, G.TI_APPARTENENZA, G.TI_GESTIONE, G.CD_ELEMENTO_VOCE, G.CD_CDR_ASSEGNATARIO, G.cd_linea_attivita)
From PDG_MODULO_ENTRATE_GEST G, PDG_ESERCIZIO E
Where G.ESERCIZIO = INES AND
G.ESERCIZIO = E.ESERCIZIO And
G.CD_CENTRO_RESPONSABILITA = E.CD_CENTRO_RESPONSABILITA And
E.STATO = CNRCTB050.STATO_PDG2_CHIUSO_GEST And
G.CATEGORIA_DETTAGLIO != 'SCR'
Union All
Select 'OB', O.ESERCIZIO, O.ESERCIZIO_ORIGINALE, OSV.CD_CENTRO_RESPONSABILITA, OSV.CD_LINEA_ATTIVITA, OSV.TI_APPARTENENZA, OSV.TI_GESTIONE, OSV.CD_VOCE
From OBBLIGAZIONE_SCAD_VOCE OSV, OBBLIGAZIONE O
Where O.ESERCIZIO = INES And
OSV.CD_CDS = O.CD_CDS AND
OSV.ESERCIZIO = O.ESERCIZIO AND
OSV.ESERCIZIO_ORIGINALE = O.ESERCIZIO_ORIGINALE AND
OSV.PG_OBBLIGAZIONE = O.PG_OBBLIGAZIONE
Union All
Select 'AC', O.ESERCIZIO, O.ESERCIZIO_ORIGINALE, OSV.CD_CENTRO_RESPONSABILITA, OSV.CD_LINEA_ATTIVITA, O.TI_APPARTENENZA, O.TI_GESTIONE, O.CD_VOCE
From ACCERTAMENTO_SCAD_VOCE OSV, ACCERTAMENTO O
Where O.ESERCIZIO = INES And
OSV.CD_CDS = O.CD_CDS AND
OSV.ESERCIZIO = O.ESERCIZIO AND
OSV.ESERCIZIO_ORIGINALE = O.ESERCIZIO_ORIGINALE AND
OSV.PG_ACCERTAMENTO = O.PG_ACCERTAMENTO
Union All
Select 'RR', INES, ESERCIZIO, CD_CDR_LINEA, CD_LINEA_ATTIVITA, TI_APPARTENENZA, TI_GESTIONE,
CNRCTB053.getVoce_FdaEV (Esercizio, TI_APPARTENENZA, TI_GESTIONE, CD_ELEMENTO_VOCE, CD_CDR_LINEA, cd_linea_attivita)
From PDG_RESIDUO_DET
Where ESERCIZIO = INES And
(ESERCIZIO, CNRUTL001.GETCDSFROMCDR(cd_centro_responsabilita)) In
(Select ESERCIZIO, CD_CDS
From PARAMETRI_CDS
Where FL_RIBALTATO = 'Y')
Union All
Select 'VR', D.ESERCIZIO_VOCE, D.ESERCIZIO_RES, D.CD_CDR, D.CD_LINEA_ATTIVITA, D.TI_APPARTENENZA, D.TI_GESTIONE, D.CD_VOCE
From VAR_STANZ_RES_RIGA D, VAR_STANZ_RES T
Where D.ESERCIZIO = T.ESERCIZIO AND
D.PG_VARIAZIONE = T.PG_VARIAZIONE And
T.STATO = 'APP' And
D.ESERCIZIO_VOCE = INES
Union All
Select 'VC', D.ESERCIZIO, D.ESERCIZIO, D.CD_CDR_ASSEGNATARIO, D.CD_LINEA_ATTIVITA, D.TI_APPARTENENZA, D.TI_GESTIONE,
CNRCTB053.getVoce_FdaEV (D.Esercizio, D.TI_APPARTENENZA, D.TI_GESTIONE, D.CD_ELEMENTO_VOCE, D.CD_CDR_ASSEGNATARIO, D.cd_linea_attivita) CD_VOCE
From PDG_VARIAZIONE_RIGA_GEST D, PDG_VARIAZIONE T
Where D.ESERCIZIO = T.ESERCIZIO AND
D.PG_VARIAZIONE_PDG = T.PG_VARIAZIONE_PDG And
T.STATO In ('APP', 'APF') And
D.CATEGORIA_DETTAGLIO != 'SCR' And
D.ESERCIZIO = INES) TAB_UNION
Where Not Exists
(Select 1
From VOCE_F_SALDI_CDR_LINEA V
Where V.ESERCIZIO = TAB_UNION.ESERCIZIO And
V.ESERCIZIO_RES = TAB_UNION.ESERCIZIO_RES And
V.CD_CENTRO_RESPONSABILITA = TAB_UNION.CDR And
V.CD_LINEA_ATTIVITA = TAB_UNION.CD_LINEA_ATTIVITA And
V.TI_APPARTENENZA = TAB_UNION.TI_APPARTENENZA And
V.TI_GESTIONE = TAB_UNION.TI_GESTIONE And
V.CD_VOCE = TAB_UNION.CD_VOCE)
) Loop
If nvl(recParametriCnr.fl_nuovo_pdg,'N')='Y' Then
Insert INTO VOCE_F_SALDI_CDR_LINEA
(ESERCIZIO, ESERCIZIO_RES, CD_CENTRO_RESPONSABILITA, CD_LINEA_ATTIVITA, TI_APPARTENENZA, TI_GESTIONE, CD_VOCE, IM_STANZ_INIZIALE_A1,
IM_STANZ_INIZIALE_A2, IM_STANZ_INIZIALE_A3, VARIAZIONI_PIU, VARIAZIONI_MENO, IM_STANZ_INIZIALE_CASSA, VARIAZIONI_PIU_CASSA,
VARIAZIONI_MENO_CASSA, IM_OBBL_ACC_COMP,IM_STANZ_RES_IMPROPRIO, VAR_PIU_STANZ_RES_IMP, VAR_MENO_STANZ_RES_IMP, IM_OBBL_RES_IMP,
VAR_PIU_OBBL_RES_IMP, VAR_MENO_OBBL_RES_IMP, IM_OBBL_RES_PRO, VAR_PIU_OBBL_RES_PRO, VAR_MENO_OBBL_RES_PRO,
IM_MANDATI_REVERSALI_PRO, IM_MANDATI_REVERSALI_IMP, IM_PAGAMENTI_INCASSI, DACR, UTCR, DUVA, UTUV, PG_VER_REC, CD_ELEMENTO_VOCE)
Values
(saldi_mancanti.ESERCIZIO, saldi_mancanti.ESERCIZIO_RES, saldi_mancanti.CDR, saldi_mancanti.CD_LINEA_ATTIVITA,
saldi_mancanti.TI_APPARTENENZA, saldi_mancanti.TI_GESTIONE, saldi_mancanti.CD_VOCE, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
Sysdate, 'MARTELLO06', Sysdate, 'MARTELLO06', 1, saldi_mancanti.cd_voce);--dal 2016 uguale a cd_elemento_voce
else
Insert INTO VOCE_F_SALDI_CDR_LINEA
(ESERCIZIO, ESERCIZIO_RES, CD_CENTRO_RESPONSABILITA, CD_LINEA_ATTIVITA, TI_APPARTENENZA, TI_GESTIONE, CD_VOCE, IM_STANZ_INIZIALE_A1,
IM_STANZ_INIZIALE_A2, IM_STANZ_INIZIALE_A3, VARIAZIONI_PIU, VARIAZIONI_MENO, IM_STANZ_INIZIALE_CASSA, VARIAZIONI_PIU_CASSA,
VARIAZIONI_MENO_CASSA, IM_OBBL_ACC_COMP,IM_STANZ_RES_IMPROPRIO, VAR_PIU_STANZ_RES_IMP, VAR_MENO_STANZ_RES_IMP, IM_OBBL_RES_IMP,
VAR_PIU_OBBL_RES_IMP, VAR_MENO_OBBL_RES_IMP, IM_OBBL_RES_PRO, VAR_PIU_OBBL_RES_PRO, VAR_MENO_OBBL_RES_PRO,
IM_MANDATI_REVERSALI_PRO, IM_MANDATI_REVERSALI_IMP, IM_PAGAMENTI_INCASSI, DACR, UTCR, DUVA, UTUV, PG_VER_REC, CD_ELEMENTO_VOCE)
Values
(saldi_mancanti.ESERCIZIO, saldi_mancanti.ESERCIZIO_RES, saldi_mancanti.CDR, saldi_mancanti.CD_LINEA_ATTIVITA,
saldi_mancanti.TI_APPARTENENZA, saldi_mancanti.TI_GESTIONE, saldi_mancanti.CD_VOCE, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
Sysdate, 'MARTELLO06', Sysdate, 'MARTELLO06', 1, (Select cd_elemento_voce
From VOCE_F
Where VOCE_F.ESERCIZIO = saldi_mancanti.ESERCIZIO
And VOCE_F.ti_appartenenza = saldi_mancanti.ti_appartenenza
And VOCE_F.ti_gestione = saldi_mancanti.ti_gestione
And VOCE_F.cd_voce = saldi_mancanti.cd_voce));
End If;
If saldi_mancanti.tipo = 'GS' Then
MOTIVO := 'Gestionale Spese';
Elsif saldi_mancanti.tipo = 'GE' Then
MOTIVO := 'Gestionale Entrate';
Elsif saldi_mancanti.tipo = 'OB' Then
MOTIVO := 'Obbligazioni Comp/Res';
Elsif saldi_mancanti.tipo = 'AC' Then
MOTIVO := 'Accertamenti Comp/Res';
Elsif saldi_mancanti.tipo = 'RR' Then
MOTIVO := 'Ricostruzione Residui per CDS Ribaltati';
Elsif saldi_mancanti.tipo = 'VR' Then
MOTIVO := 'Variazioni allo Stanziamento Residuo';
Elsif saldi_mancanti.tipo = 'VC' Then
MOTIVO := 'Variazioni a Competenza';
End If;
IBMUTL200.logInf(apg_exec,'Inserito Saldo Mancante per assenza '||MOTIVO||
' Es:'||saldi_mancanti.ESERCIZIO||' Es. Res.:'||saldi_mancanti.ESERCIZIO_RES||
' CDR: '||saldi_mancanti.CDR||' Linea: '||saldi_mancanti.CD_LINEA_ATTIVITA||
' App: '||saldi_mancanti.TI_APPARTENENZA||' Gest: '||saldi_mancanti.TI_GESTIONE||
' Voce '||saldi_mancanti.CD_VOCE, ' ','SOC');
End Loop;
End;
End;
© 2015 - 2024 Weber Informatics LLC | Privacy Policy