From c9ccd3b8f560019480f0937b75aa746fbf6cbac8 Mon Sep 17 00:00:00 2001 From: alex Date: Tue, 8 Nov 2005 16:57:17 +0000 Subject: [PATCH] Patch level : 2.2 210 Files correlati : cacnv.exe Ricompilazione Demo : [ ] Commento Bug 0000525 La conversione non genera i ripari dai conti del piano dei conti git-svn-id: svn://10.65.10.50/trunk@13478 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- ca/cacnv.cpp | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/ca/cacnv.cpp b/ca/cacnv.cpp index 092b427d4..0e009c080 100755 --- a/ca/cacnv.cpp +++ b/ca/cacnv.cpp @@ -268,11 +268,18 @@ void TConversione_cm2ca::ripartisci(TRectype& recpcon) const TString80 codcms = recpcon.get(PCN_CODCMS); const TString16 fascms = recpcon.get(PCN_FASCMS); - //cerca nel file rip se esiste gia' un record con la medesima chiave (chiave 3!!) + if (codcms.empty() && fascms.empty()) + return; + //cerca nel file rip se esiste gia' un record con la medesima chiave (chiave 3!!) TLocalisamfile rip_file(LF_RIP); + rip_file.last(); + rip_file.put(RIP_TIPO, "I"); + rip_file.put(RIP_CODICE, "ZZZZZZZZ"); + if (rip_file.read(_isgreat) == NOERR) + rip_file.prev(); + const long last_cod = atol(rip_file.get(RIP_CODICE)) + 1L; rip_file.setkey(3); - rip_file.put(RIP_TIPO, "I"); rip_file.put(RIP_GRUPPO, gruppo); rip_file.put(RIP_CONTO, conto); rip_file.put(RIP_SOTTOCONTO, sottoconto); @@ -280,8 +287,11 @@ void TConversione_cm2ca::ripartisci(TRectype& recpcon) if (rip_file.read() != NOERR) { TAnal_rip rip; + TString80 cod; - rip.head().put(RIP_TIPO, "I"); + cod.format("%08ld", last_cod); + rip.head().put(RIP_TIPO, "I"); + rip.put(RIP_CODICE, cod); rip.put(RIP_GRUPPO, gruppo); rip.put(RIP_CONTO, conto); rip.put(RIP_SOTTOCONTO, sottoconto); @@ -291,6 +301,13 @@ void TConversione_cm2ca::ripartisci(TRectype& recpcon) rrip.put(RRIP_RIPARTO, 100); rrip.put(RRIP_CODCMS, codcms); rrip.put(RRIP_CODFASE, fascms); + if (ca_config().get_bool("UsePdcc")) //solo se in CA si usa il piano dei conti contabile.. + { + TString80 codconto; + + codconto.format("%03d%03d%06ld", gruppo, conto, sottoconto); + rrip.put(RRIP_CODCONTO, codconto); + } rip.write(); //scrive sia rip che rrip con nuova chiave 1 (TIPO+CODICE) }