From c443f2f21463814eae6ba0e82d3be6014da99dad Mon Sep 17 00:00:00 2001 From: luca Date: Tue, 19 May 2009 09:06:35 +0000 Subject: [PATCH] Patch level :10.0 304 Files correlati : Ricompilazione Demo : [ ] Commento : prima stesura funzionante (forse!) del bilancio di commessa alla data; da riportare sulla 5.0 per farla provare all'enrichetta git-svn-id: svn://10.65.10.50/trunk@18885 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- ca/ca3883.cpp | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/ca/ca3883.cpp b/ca/ca3883.cpp index d9ef7f166..9df84873b 100755 --- a/ca/ca3883.cpp +++ b/ca/ca3883.cpp @@ -1443,7 +1443,7 @@ void TPrint_saldana_recordset::parse_rdoc(TAssoc_array* cms, const TDate& datain //controlla se il documento contenente la riga è davvero un ordine ricontrollando il suo tipo nell'array.. //..con i tipi validi; se non lo fosse...ciao ciao rigadocumento! const TString& tipodoc = curr_doc.get(DOC_TIPODOC); - if (tip_ordini.find(tipodoc)) + if (tip_ordini.find(tipodoc) < 0) continue; //ovviamente non è finita qui... @@ -1474,9 +1474,15 @@ void TPrint_saldana_recordset::parse_rdoc(TAssoc_array* cms, const TDate& datain if (!rigadoc.is_evasa()) { //trasforma tutte le righe a valore, assegnando al prezzo il valore del residuo + const real valore = rigadoc.valore(true); const real residuo = rigadoc.valore(false); - rigadoc.put(rigadoc.tipo().quant(), UNO); - rigadoc.put(RDOC_PREZZO, residuo); + //ovviamente questo è vero se il residuo è inferiore al valore; se fosse uguale sarebbe riga ancora da evadere,.. + //..se fosse maggiore sarebbe riga del cazzo + if (residuo < valore) + { + rigadoc.put(rigadoc.tipo().quant(), UNO); + rigadoc.put(RDOC_PREZZO, residuo); + } } else doc.body().destroy_row(r, true); //se la riga fosse evasa la salta e compatta il documento @@ -1486,6 +1492,7 @@ void TPrint_saldana_recordset::parse_rdoc(TAssoc_array* cms, const TDate& datain TAnal_mov movana; //finalmente contabilizza il documento in memoria cont_anal.elabora(doc, 0, NULL, false, movana, false); + movana.put(MOVANA_TIPOMOV, 'P'); //controlla che la riga in esame abbia realmente la cms/cdc/fas indicata nel filtro; //procedimento necessario per evitare di prendere righe appartenenti a docs elaborati