Errori visualizzazione e liquidazione

git-svn-id: svn://10.65.10.50/trunk@1586 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
villa 1995-07-12 10:24:58 +00:00
parent 3fca3f4587
commit ec85b0caeb
8 changed files with 45 additions and 31 deletions

View File

@ -201,7 +201,8 @@ class TLiquidazione_app : public TPrint_application
bool _calcall; // tutte le ditte nessuna esclusa bool _calcall; // tutte le ditte nessuna esclusa
bool _isbase; // stampa base di calcolo acconto bool _isbase; // stampa base di calcolo acconto
bool _isfinal; // stampa definitiva (su registro bollato) bool _isfinal; // stampa definitiva (su registro bollato)
bool _isregis; // stampa per registro bool _isregis; // stampa per registro
bool _isintr; // calcola interessi per trimestrali
tbc _basecalc; // tipo base di calcolo acconto tbc _basecalc; // tipo base di calcolo acconto
TString _freqviva; // frequenza versamenti (M|T} TString _freqviva; // frequenza versamenti (M|T}
long _n_ditte; // numero ditte long _n_ditte; // numero ditte

View File

@ -152,6 +152,7 @@ bool TLiquidazione_app::update_firm(int month, bool recalc)
TConfig cnf(CONFIG_DITTA, "cg"); TConfig cnf(CONFIG_DITTA, "cg");
_isdifferita = cnf.get_bool("GeLiDi") && _month != 13; _isdifferita = cnf.get_bool("GeLiDi") && _month != 13;
_isintr = !cnf.get_bool("InTrTr") && _freqviva != "M";
// controlla che il periodo corrente non sia l'inizio dell'attivita' // controlla che il periodo corrente non sia l'inizio dell'attivita'
// nel caso, differita va a FALSE // nel caso, differita va a FALSE
TDate inatt(_nditte->lfile().get("DINIZIOATT")); TDate inatt(_nditte->lfile().get("DINIZIOATT"));
@ -1617,10 +1618,10 @@ void TLiquidazione_app::write_liq(int month, const char* codatts)
/* /*
* Interessi dovuti solo da trimestrali in periodica, * Interessi dovuti solo da trimestrali in periodica,
* Era anche non benzinari, smentito da Cinzia (MI0853) * Era anche non benzinari, smentito da Cinzia (MI0853);
* Ora gestito esplicitamente nei parametri ditts
*/ */
if (_freqviva == "T" && risultato.sign() > 0 && if (_isintr && month < 13)
month < 13 /* && !_isbenzinaro */)
{ {
real interesse = interesse_trimestrale(_month); real interesse = interesse_trimestrale(_month);
real ivi = risultato * (interesse / CENTO); real ivi = risultato * (interesse / CENTO);

View File

@ -417,10 +417,12 @@ void TLiquidazione_app::describe_pims(int month, const char* codatt)
continue; continue;
// se ha tutti gli importi nulli viene da un annullamento di // se ha tutti gli importi nulli viene da un annullamento di
// progressivi esistenti // progressivi esistenti (achtung fatture con scontrino)
if (_pim->get_real("R0").is_zero() && if (_pim->get_real("R0").is_zero() &&
_pim->get_real("R1").is_zero() && _pim->get_real("R1").is_zero() &&
_pim->get_real("R2").is_zero()) _pim->get_real("R2").is_zero() &&
_pim->get_real("R5").is_zero() &&
_pim->get_real("R6").is_zero())
continue; continue;
if (strcmp((const char*)*_pim_codatt, att) == 0 && if (strcmp((const char*)*_pim_codatt, att) == 0 &&

View File

@ -54,4 +54,5 @@
#define FLD_DCSPECE 153 #define FLD_DCSPECE 153
#define FLD_DESLIN 154 #define FLD_DESLIN 154
#define FLD_DESLIC 155 #define FLD_DESLIC 155
#define CHK_GEST74 156 #define CHK_GEST74 156
#define CHK_INTRTR 157

View File

@ -700,7 +700,7 @@ BEGIN
INPUT CODCAUS FLD_RRCCRI INPUT CODCAUS FLD_RRCCRI
COPY DISPLAY FLD_COCACH COPY DISPLAY FLD_COCACH
OUTPUT FLD_RRCCRI CODCAUS OUTPUT FLD_RRCCRI CODCAUS
OUTPUT FLD_DRRCCRI DESCR OUTPUT FLD_DRRCCRI DESCR
CHECKTYPE NORMAL CHECKTYPE NORMAL
ADD RUN cg0 -4 ADD RUN cg0 -4
FIELD RrCcRi FIELD RrCcRi
@ -709,7 +709,7 @@ END
STRING FLD_DRRCCRI 50 48 STRING FLD_DRRCCRI 50 48
BEGIN BEGIN
PROMPT 26 8 "" PROMPT 26 8 ""
HELP "Descrizione causale dei risconti per movimento di contabilita'" HELP "Descrizione causale dei risconti per movimento di contabilita'"
USE LF_CAUSALI KEY 2 USE LF_CAUSALI KEY 2
INPUT DESCR FLD_DRRCCRI INPUT DESCR FLD_DRRCCRI
COPY DISPLAY FLD_DCOCACH COPY DISPLAY FLD_DCOCACH
@ -718,6 +718,14 @@ BEGIN
ADD RUN cg0 -4 ADD RUN cg0 -4
END END
BOOLEAN CHK_INTRTR
BEGIN
PROMPT 3 12 "Calcolare interessi per frequenza versamenti trimestrale"
HELP "Se selezionato, gli interessi non vengono calcolati"
FIELD InTrTr
END
ENDPAGE ENDPAGE
ENDMASK ENDMASK

View File

@ -362,11 +362,11 @@ bool Visliq_app::sel_mese_sh1 (TMask_field& f, KEY k)
TMask& sm = sh.sheet_mask(); TMask& sm = sh.sheet_mask();
sm.field(102).set(tt.get(2)); sm.field(102).set(tt.get(1));
sm.field(103).set(tt.get(3)); sm.field(103).set(tt.get(2));
sm.field(104).set(tt.get(4)); sm.field(104).set(tt.get(3));
sm.field(105).set(tt.get(5)); sm.field(105).set(tt.get(4));
sm.field(106).set(tt.get(6)); sm.field(106).set(tt.get(5));
return TRUE; return TRUE;
} }
@ -796,6 +796,7 @@ void Visliq_app::recalc_liq_data(TViswin* vsw, real& rimb, real& rett, real& ver
{ {
// calcola interesse // calcola interesse
intr = risul * (itt/real(100.0)); intr = risul * (itt/real(100.0));
intr.ceil();
} }
// riaggiusta LIM // riaggiusta LIM
@ -1065,16 +1066,16 @@ void Visliq_app::read_general(TMask& m)
if (sh.items() < i) tt = new TToken_string(80); if (sh.items() < i) tt = new TToken_string(80);
else tt = &(sh.row(i-1)); else tt = &(sh.row(i-1));
tt->add(itoname(i)); tt->add(itoname(i),0);
tt->add(abs(_lim->get_real("R0")).string()); tt->add(abs(_lim->get_real("R0")).string(),1);
int sr0 = (_lim->get_real("R0")).sign(); int sr0 = (_lim->get_real("R0")).sign();
int sr5 = (_lim->get_real("R5")).sign(); int sr5 = (_lim->get_real("R5")).sign();
tt->add(sr0 == 0 ? "" : (sr0 > 0 ? "D" : "C")); tt->add(sr0 == 0 ? "" : (sr0 > 0 ? "D" : "C"),2);
tt->add(_lim->get_real("R1").string()); tt->add(_lim->get_real("R1").string(),3);
tt->add(abs(_lim->get_real("R5")).string()); tt->add(abs(_lim->get_real("R5")).string(),4);
tt->add(sr5 == 0 ? "" : (sr5 > 0 ? "D" : "C")); tt->add(sr5 == 0 ? "" : (sr5 > 0 ? "D" : "C"),5);
sh.row(i-1) = (*tt); sh.row(i-1) = (*tt);
} }
@ -1124,12 +1125,12 @@ void Visliq_app::read_general(TMask& m)
if (i == 12) nomemese << " acconto"; if (i == 12) nomemese << " acconto";
if (i == 13) nomemese << " saldo"; if (i == 13) nomemese << " saldo";
tt->add(nomemese); // mese tt->add(nomemese,0); // mese
tt->add(date[i-1].string()); // data vers. tt->add(date[i-1].string(),1); // data vers.
tt->add(banche[i-1].get(0)); // azienda tt->add(banche[i-1].get(0),2); // azienda
tt->add(banche[i-1].get(1)); // dipendenza tt->add(banche[i-1].get(1),3); // dipendenza
tt->add(banche[i-1].get(2)); // concessionaria tt->add(banche[i-1].get(2),4); // concessionaria
tt->add(versamenti[i-1].string());// versamenti tt->add(versamenti[i-1].string(),5);// versamenti
sv.row(-1) = *tt; sv.row(-1) = *tt;
} }

View File

@ -39,7 +39,7 @@ BEGIN
CHECKTYPE REQUIRED CHECKTYPE REQUIRED
END END
STRING F_RAGSOC 37 50 STRING F_RAGSOC 50
BEGIN BEGIN
PROMPT 16 2 "" PROMPT 16 2 ""
FLAGS "D" FLAGS "D"
@ -78,7 +78,7 @@ BEGIN
FLAGS "DFR" FLAGS "DFR"
END END
STRING F_RAGSOC2 37 50 STRING F_RAGSOC2 50
BEGIN BEGIN
PROMPT 16 2 "" PROMPT 16 2 ""
FLAGS "D" FLAGS "D"
@ -138,7 +138,7 @@ BEGIN
PICTURE "." PICTURE "."
END END
LIST 106 1 8 LIST 106 1 10
BEGIN BEGIN
PROMPT 1 7 "Rettifica a " PROMPT 1 7 "Rettifica a "
ITEM " | " ITEM " | "

View File

@ -38,7 +38,7 @@ BEGIN
CHECKTYPE REQUIRED CHECKTYPE REQUIRED
END END
STRING F_RAGSOC 37 50 STRING F_RAGSOC 50
BEGIN BEGIN
PROMPT 22 2 "" PROMPT 22 2 ""
FLAGS "D" FLAGS "D"
@ -116,7 +116,7 @@ BEGIN
PICTURE "." PICTURE "."
END END
LIST 106 1 8 LIST 106 1 10
BEGIN BEGIN
PROMPT 1 6 "Rettifica a " PROMPT 1 6 "Rettifica a "
ITEM " | " ITEM " | "