From 9ce035373133e3486c63b07c1e0b2ae6834ac930 Mon Sep 17 00:00:00 2001 From: luca Date: Tue, 14 Jun 2011 10:39:44 +0000 Subject: [PATCH] Patch level :10.0 Files correlati : Ricompilazione Demo : [ ] Commento : conversione file rilore git-svn-id: svn://10.65.10.50/branches/R_10_00@22262 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- ba/bacnv.cpp | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/ba/bacnv.cpp b/ba/bacnv.cpp index a7b17153f..6baa0da2a 100755 --- a/ba/bacnv.cpp +++ b/ba/bacnv.cpp @@ -20,6 +20,7 @@ #include "..\cg\cglib02.h" #include "..\ve\velib.h" +#include "..\ci\rilore.h" /* /////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -199,6 +200,8 @@ public: void convert_conai_anamag(); void convert_conai_rdoc(); void convert_conai_righe(); + //roba per il file della rilevazione ore + void convert_rilore(); TConversione_archivi() : _oldditta(0), _codditta(0), _error(0) {} }; @@ -368,6 +371,9 @@ bool TConversione_archivi::menu(MENU_TAG) case 24: convert_conai_righe(); break; + case 25: + convert_rilore(); + break; default: break; } @@ -2294,6 +2300,44 @@ void TConversione_archivi::convert_conai_righe() } +///////////////////////////////////////////////////////////////////////////////////// +// Converte i dati del file LF_RILORE ($125) in base al nuovo e pił logico tracciato +///////////////////////////////////////////////////////////////////////////////////// +void TConversione_archivi::convert_rilore() +{ + //deve prendere i campi ANNO - MESE - GIORNO e: + // _ se riga tipo 'C'onsuntivo -> i valori vanno copiati come date nei campi DADATA e ADATA + // _ se riga tipo 'P'reventivo -> i valori vanno eliminati e basta (e ci pensera' la coversione!) + + TString query; + query << "USE RILORE"; + query << "\nFROM TIPO=C"; + query << "\nTO TIPO=C"; + + TISAM_recordset recset(query); + TRectype& curr_rec = recset.cursor()->curr(); + for (bool ok = recset.move_first(); ok; ok = recset.move_next()) + { + const int anno = curr_rec.get_int(RILORE_ANNO); + const int mese = curr_rec.get_int(RILORE_MESE); + const int giorno = curr_rec.get_int(RILORE_GIORNO); + TDate data(giorno, mese, anno); + + curr_rec.put(RILORE_DADATA, data); + curr_rec.put(RILORE_ADATA, data); + + const long idrec = curr_rec.get_long(RILORE_ID); + + + const int err = recset.cursor()->relation()->rewrite(); + if (err != NOERR) + { + error_box("Mi sono inceppato sul record %ld", idrec); + } + } +} + + /////////////////////////////////////////////////////////// // Programma di conversione archivi speciale ///////////////////////////////////////////////////////////