From 1c27aad40f72c459dd806d4bec0af931d9a8eb14 Mon Sep 17 00:00:00 2001 From: alex Date: Sun, 10 Jul 2011 04:50:47 +0000 Subject: [PATCH] Patch level : 10.1048 Files correlati : cg1.exe cg3.exe Ricompilazione Demo : [ ] Commento : MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Stampa giornale, mastrini e visualizzazione mastrini con codice di contabilità separata git-svn-id: svn://10.65.10.50/branches/R_10_00@22388 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- cg/cg1500.cpp | 4 ++-- cg/cglib02.cpp | 23 ++++++++++++----------- cg/cglib02.h | 2 +- 3 files changed, 15 insertions(+), 14 deletions(-) diff --git a/cg/cg1500.cpp b/cg/cg1500.cpp index 0db27c9a4..7ecb4dfa3 100755 --- a/cg/cg1500.cpp +++ b/cg/cg1500.cpp @@ -939,7 +939,7 @@ bool TStampa_bilanci::bil_sez_contr() if (_tipo_stampa == 1) //bil. a sez. contrapposte per data limite { if (_fl_cont_sep) - movimentato = sld.saldo_cont_sep(g, c, s, _annoes, _datalim, indbil_conto, _cont_sep, _stampa_mov_prov) != ZERO; + movimentato = sld.saldo_cont_sep(g, c, s, _annoes, _datalim, indbil_conto, _cont_sep, _stampa_mov_prov) ; else movimentato = sld.data_limite_bilancio(_bilancio, g, c, s, _dataini, _datalim, indbil_conto, _stampa_mov_prov); } @@ -1117,7 +1117,7 @@ bool TStampa_bilanci::ricerca_sottoc_clifo(int g,int c, bool compensa, int indbi } else if (_tipo_stampa == 2) //bil. a sez. contrapposte all'ultima immissione es. in corso - movimentato = sld.ultima_immissione_bilancio(_annoes,g,c,s,indbil_conto,_stampa_mov_prov); + movimentato = sld.ultima_immissione_bilancio(_annoes, g, c, s, indbil_conto, _stampa_mov_prov); if (!movimentato) if (!sld.esiste_saldo() || !sld.significativo()) diff --git a/cg/cglib02.cpp b/cg/cglib02.cpp index 697605d7a..cd48e271c 100755 --- a/cg/cglib02.cpp +++ b/cg/cglib02.cpp @@ -627,8 +627,8 @@ bool TSaldo::prg_saldo(int annoes, TConto& conto, real& prgdare, real& prgavere, return ok; } -bool TSaldo::saldo_cont_sep(int g, int c, long s, const int codes, const TDate& al, - int indbil, const char * cont_sep, bool provv, bool first) +bool TSaldo::saldo_cont_sep(int g, int c, long s, const int codes, TDate al, + int indbil, const char * cont_sep, int provv, bool first) { _saldo_iniziale = ZERO; @@ -648,7 +648,11 @@ bool TSaldo::saldo_cont_sep(int g, int c, long s, const int codes, const TDate& TString80 key; key.format("%04d| |%d|%d|%ld", _annoes, g, c, s); const TRectype& saldo = cache().get(LF_SALDI, key); -/* if (saldo.get_real(SLD_SALDO).is_zero() && (indbil == 1 || indbil == 2 || indbil == 5) && first) + + if (!al.ok()) + al = es[_annoes].fine(); + +/* if (_prec && first) { const int codesprec = es.date2prevesc(al); @@ -689,24 +693,20 @@ bool TSaldo::saldo_cont_sep(int g, int c, long s, const int codes, const TDate& if (!importo.is_zero()) { const char sezione = rmov.get_char(RMV_SEZIONE); - // "Se la causale del movimento e' di chiusura, - // o di apertura il movimento non va considerato" const TRectype& mov = cache().get(LF_MOV, num_reg); const bool ok = !mov.empty(); - if (g == 6) - int i = 1; if (ok) { if (mov.get(MOV_CONTSEP) == cont_sep) { _codcaus = mov.get(MOV_CODCAUS); _datareg = mov.get(MOV_DATAREG); - _provv = mov.get(MOV_PROVVIS); // _provv.trim(); + _provv = mov.get(MOV_PROVVIS); _datacomp = mov.get(MOV_DATACOMP); const TString& movap = _causali_apertura.decode(_codcaus); - if (provv || _provv.empty()) + if (provv > 1 || _provv.empty()) { if (_datacomp >= inizio && _datacomp <= al) { @@ -719,12 +719,13 @@ bool TSaldo::saldo_cont_sep(int g, int c, long s, const int codes, const TDate& _prg_avere += importo; } else - if (movap != "C") + if (movap == "A") { + _movimentato = true; if (sezione == 'D') _saldo_iniziale += importo; else - _saldo_iniziale -= importo; + _saldo_iniziale -= importo; } } } diff --git a/cg/cglib02.h b/cg/cglib02.h index e8140a9b2..6e4fb268d 100755 --- a/cg/cglib02.h +++ b/cg/cglib02.h @@ -119,7 +119,7 @@ public: bool ultima_immissione_verifica(int annoes, int g,int c,long s,int indbil,int prov); bool data_limite_bilancio(int annoes,int g,int c,long s,const TDate& data_inf,const TDate& data_suo,int indbil,int stp_prov, const char* filter = NULL); const real& saldo_periodo(int g, int c, long s, const TDate& dal, const TDate& al, int indbil, bool provv); - bool saldo_cont_sep(int g, int c, long s, const int codes, const TDate& al, int indbil, const char * cont_sep, bool provv, bool first = true); + bool saldo_cont_sep(int g, int c, long s, const int codes, TDate al, int indbil, const char * cont_sep, int provv, bool first = true); bool ricerca_progr_prec(int, int, int, long); real saldofin_esprec(int,int,int,long,bool saldo_chiusura = FALSE, bool provvisori = FALSE);