From 5c2f3b5d27df3dfef7ed4fcdc5f59b61d766c337 Mon Sep 17 00:00:00 2001 From: luca83 Date: Mon, 1 Feb 2010 11:37:51 +0000 Subject: [PATCH] Patch level : 10.0 patch 609 Files correlati : lv2 Ricompilazione Demo : [ ] Commento : Corretto calcolo della dotod git-svn-id: svn://10.65.10.50/trunk@20033 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- lv/lv2900.cpp | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/lv/lv2900.cpp b/lv/lv2900.cpp index 297432bec..81b4342f8 100755 --- a/lv/lv2900.cpp +++ b/lv/lv2900.cpp @@ -564,6 +564,10 @@ bool TConta_pulito_msk::genera_documenti(const TFilename& file, TAssoc_array& do TString4 causale = rcont.get(LVRCONDV_CAUSLAV); if (causale.blank() || atoi(causale) == 0) causale = ini_get_string(CONFIG_DITTA, "lv", "CAUSLAV"); + const TCausale_lavanderie cau(causale); + const TCausale_magazzino rit(cau.causale_ritiro()); + const TCausale_magazzino con(cau.causale_consegna()); + //leggo se devo scrivere il prezzo sulla bolla //const bool prinbo = cont.get_bool(LVCONDV_STPRZBOL); @@ -613,9 +617,13 @@ bool TConta_pulito_msk::genera_documenti(const TFilename& file, TAssoc_array& do { rdoc.add(RDOC_QTA, quantita); rdoc.add(RDOC_QTAGG1, quantita); - rdoc.add("DOTOD", quantita); - if(dtmp) - rdoc.add("DOTMP", quantita); + + if(rit.sgn(s_dotod) != 0 || con.sgn(s_dotod) != 0) + { + real qta = (quantita * con.sgn(s_dotod)) - (quantita * rit.sgn(s_dotod)); + rdoc.add("DOTOD", qta); + } + found = true; //scrivo i riferimenti alla bolla sul pacco @@ -645,13 +653,15 @@ bool TConta_pulito_msk::genera_documenti(const TFilename& file, TAssoc_array& do rdoc.put(RDOC_QTAGG1, quantita); //ritirato rdoc.put("DOTOD", dotod); - rdoc.add("DOTOD", quantita); + + if(rit.sgn(s_dotod) != 0 || con.sgn(s_dotod) != 0) + { + real qta = (quantita * con.sgn(s_dotod)) - (quantita * rit.sgn(s_dotod)); + rdoc.add("DOTOD", qta); + } if(dtmp) - { - rdoc.put("DOTMP", dottmp); - rdoc.add("DOTMP", quantita); - } + rdoc.put("DOTMP", dottmp); rdoc.put(RDOC_CODAGG1, causale);