From 200719f69212b15ee0b7987946e582528dbe4475 Mon Sep 17 00:00:00 2001 From: luca83 Date: Wed, 28 Jan 2009 10:21:50 +0000 Subject: [PATCH] =?UTF-8?q?Patch=20level=20=20=20=20=20=20=20=20=20:10.0?= =?UTF-8?q?=20Files=20correlati=20=20=20=20=20:lv3=20Ricompilazione=20Demo?= =?UTF-8?q?=20:=20[=20]=20Commento=20=20=20=20=20=20=20=20=20=20=20=20:=20?= =?UTF-8?q?0001092:=20Calcolo=20conguaglio=20-=202=20Descrizione=20=09La?= =?UTF-8?q?=20gestione=20del=20conguaglio=20viene=20fatta=20anche=20nel=20?= =?UTF-8?q?caso=20della=20gestione=20manuale=20delle=20bolle=20se=20il=20c?= =?UTF-8?q?onguaglio=20iniziale=20=C3=A8=20diverso=20da=20zero?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: svn://10.65.10.50/trunk@18136 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- lv/lv3100.cpp | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/lv/lv3100.cpp b/lv/lv3100.cpp index eb02d6b4e..a14149b92 100755 --- a/lv/lv3100.cpp +++ b/lv/lv3100.cpp @@ -226,6 +226,7 @@ class TGestione_bolle_msk : public TDocumento_mask long _stcodcf; long _stcodcont; int _autoselect; + TToken_string _rigaoriginale; protected: static void arrotonda(const TMask& msk, real& quantita); @@ -536,6 +537,37 @@ bool TGestione_bolle_msk::lv_codart_handler(TMask_field& f, KEY k) } msk.set(FR_CODAGG1, causale); + if (k == K_ENTER && rcont.get_bool(LVRCONDV_ARROT)) + { + TSheet_field* sheet = msk.get_sheet(); + TRiga_documento rdoc = dmsk.doc()[sheet->selected()+1]; + + const real ritor = rdoc.get_real(RDOC_QTAGG4); + const real conor = rdoc.get_real(RDOC_QTAGG3); + + const real ritat = msk.get_real(FR_QTAGG1); + const real conat = msk.get_real(FR_QTA); + + if (ritor != ritat || conor != conat) + { + const real congor = rcont.get_real(LVRCONDV_QTACONG); + + const real congat = conat - ritat + congor; + + rdoc.put(RDOC_QTAGG5, congat); //conguaglio dopo modifica manuale + + TLocalisamfile rcondv(LF_LVRCONDV); + rcondv.put(LVRCONDV_CODCF,codcf); + rcondv.put(LVRCONDV_CODCONT,cont.get_int(LVCONDV_CODCONT)); + rcondv.put(LVRCONDV_CODART,codart); + if (rcondv.read() == NOERR) + { + rcondv.put(LVRCONDV_QTACONG,congat); + rcondv.rewrite(); + } + } + } + //controllo se si vuole aggiungere un eventuale nuovo articolo al contratto if (rcont.empty() && yesno_box(TR("L'articolo in esame non fa parte della dotazione standard di questo cliente."