diff --git a/ve/ve6100.cpp b/ve/ve6100.cpp index 710974847..8854cf679 100755 --- a/ve/ve6100.cpp +++ b/ve/ve6100.cpp @@ -502,6 +502,7 @@ class TContabilizzazione_app : public TApplication TDocumento *_doc; // documento corrente TMovimentoPN_VE *_movimento; // movimento di prima nota costruito sul documento corrente TPagamento *_pagamento; // pagamento corrente, ricalcolato prima di scrivere le scadenze + TEsercizi_contabili _esc; TAssoc_array _righe_iva; // array per la memorizzazione delle righe iva raggruppate in codesto modo: // CODICE_IVA+TIPOCF+GRUPPO+CONTO+SOTTOCONTO // una volta completo, tale array viene scorso per comporre le righe IVA @@ -769,6 +770,7 @@ bool TContabilizzazione_app::create() _pags = new TLocalisamfile(LF_PAGSCA); _attiv = new TLocalisamfile(LF_ATTIV); // Altrimenti TRegistro non va! _anamag = new TLocalisamfile(LF_ANAMAG); + _esc.update(); TConfig conf(CONFIG_DITTA); _search_seq = conf.get("RICERCACR","ve"); @@ -1039,7 +1041,6 @@ bool TContabilizzazione_app::sc_enabled() const error_type TContabilizzazione_app::compile_head_mov() // Compila la testata { - TEsercizi_contabili esc; TLocalisamfile& mov = _movimento->lfile(); TRectype& mov_rec = mov.curr(); @@ -1057,9 +1058,8 @@ error_type TContabilizzazione_app::compile_head_mov() // se si e' specificata la data automatica prende invece la data del documento TDate data_reg(_auto_data ? datadoc : _data_reg); - esc.update(); // reperisce il codice anno esercizio, - int cod_es = esc.date2esc(data_reg); + int cod_es = _esc.date2esc(data_reg); if (cod_es <= 0) { _error = nr_es_error; @@ -1574,6 +1574,12 @@ error_type TContabilizzazione_app::write_scadenze() cambio.put(partita); const bool in_valuta = cambio.in_valuta(); + if (in_valuta) + { + const real totdocval(head.get_real(MOV_TOTDOCVAL)); + partita.put(PART_IMPTOTVAL,totdocval); + } + real imponibile, imponibile_val; for (int i = pag.n_rate()-1; i >= 0; i--) {