From c6dac1728dbf47c4a3be9217db6ad07aed8095d2 Mon Sep 17 00:00:00 2001 From: guy Date: Thu, 13 Oct 2011 10:21:15 +0000 Subject: [PATCH] Patch level : Files correlati : ha0.exe ha1.exe ha0600a.msk Ricompilazione Demo : [ ] Commento : Adeguato invio codici corrispondenti al nuovo tracciato git-svn-id: svn://10.65.10.50/branches/R_10_00@22454 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- ha/ha0600.cpp | 41 +++++++++++++++++++++-------------------- ha/ha0600a.uml | 18 +++++++++--------- ha/ha1200.cpp | 15 +++++++-------- ha/halib.cpp | 14 ++++++-------- ha/halib.h | 2 +- 5 files changed, 44 insertions(+), 46 deletions(-) diff --git a/ha/ha0600.cpp b/ha/ha0600.cpp index f112428aa..98abe69d3 100644 --- a/ha/ha0600.cpp +++ b/ha/ha0600.cpp @@ -6,6 +6,7 @@ #include #include +#include #include "../mg/anamag.h" /////////////////////////////////////////////////////////// @@ -54,26 +55,26 @@ bool TCodcorr_msk::save() row->get(3, descr); multirel.zero(); - multirel.put("COD", "HACOR"); + multirel.put(MULTI_COD, "HACOR"); // Compila opportunamente la chiave di multirel: FIRST=cliente; SECOND=articolo; if (_mode == 'A') { - multirel.put("FIRST", _code); // Cliente - multirel.put("SECOND", code); // Articolo + multirel.put(MULTI_FIRST, _code); // Cliente + multirel.put(MULTI_SECOND, code); // Articolo } else { - multirel.put("FIRST", code); // Cliente - multirel.put("SECOND", _code); // Articolo + multirel.put(MULTI_FIRST, code); // Cliente + multirel.put(MULTI_SECOND, _code); // Articolo } int err = NOERR; if (codalt.full() || descr.full()) // Riga da aggiornare in quanto piena { - // Il campo DATA č cosė organizzato: DATA[1,5]=codalt; DATA[6,50]=descr + // Il campo DATA č cosė organizzato: DATA[1,6]=codalt; DATA[7,36]=descr data = codalt; - data.overwrite(descr, 5); - multirel.put("DATA", data); + data.overwrite(descr, 6, 30); + multirel.put(MULTI_DATA, data); err = multirel.rewrite_write(); } else @@ -117,16 +118,16 @@ bool TCodcorr_msk::load_articles() for (bool ok = multirel.move_first(); ok; ok = multirel.move_next()) { TToken_string& row = sf.row(-1); - TString8 cod = multirel.get("SECOND").as_string().left(5); + TString8 cod = multirel.get(MULTI_SECOND).as_string().left(5); row.add(cod); // Codice articolo row.add(cache().get(LF_ANAMAG, cod, ANAMAG_DESCR)); // Descrizione articolo - // Spezza il campo DATA in codice alternativo [1,5] e descrizione [6,50] - const TString& data = multirel.get("DATA").as_string(); - cod = data.left(5); + // Spezza il campo DATA in codice alternativo [1,6] e descrizione [7,36] + const TString& data = multirel.get(MULTI_DATA).as_string(); + cod = data.left(6); row.add(cod); - if (data.len() > 5) - row.add(data.mid(5, 45)); + if (data.len() > 6) + row.add(data.mid(6, 30)); else row.add(cache().get(LF_ANAMAG, cod, ANAMAG_DESCR)); @@ -154,17 +155,17 @@ bool TCodcorr_msk::load_customers() for (bool ok = multirel.move_first(); ok; ok = multirel.move_next()) { TToken_string& row = sf.row(-1); - TString8 cod = multirel.get("FIRST").as_string(); // Codice cliente + TString8 cod = multirel.get(MULTI_FIRST).as_string(); // Codice cliente row.add(cod); cod.insert("C|"); // Chiave cliente row.add(cache().get(LF_CLIFO, cod, CLI_RAGSOC)); // Ragione sociale - // Spezza il campo DATA in codice alternativo [1,5] e descrizione [6,50] - const TString& data = multirel.get("DATA").as_string(); - cod = data.left(5); + // Spezza il campo DATA in codice alternativo [1,6] e descrizione [7,36] + const TString& data = multirel.get(MULTI_DATA).as_string(); + cod = data.left(6); row.add(cod); - if (data.len() > 5) - row.add(data.mid(5, 45)); + if (data.len() > 6) + row.add(data.mid(6, 30)); else row.add(cache().get(LF_ANAMAG, cod, ANAMAG_DESCR)); diff --git a/ha/ha0600a.uml b/ha/ha0600a.uml index 704a97fcb..e4d93625d 100644 --- a/ha/ha0600a.uml +++ b/ha/ha0600a.uml @@ -86,8 +86,8 @@ BEGIN PROMPT 1 4 "" ITEM "Codice\nArticolo@8" ITEM "Descrizione@50" - ITEM "Codice\nAlt.@5" - ITEM "Descrizione@45" + ITEM "Codice\nAlt.@6" + ITEM "Descrizione@30" FLAGS "H" END @@ -96,8 +96,8 @@ BEGIN PROMPT 1 4 "" ITEM "Codice\nCliente@6" ITEM "Ragione Sociale@50" - ITEM "Codice\nAlt.@5" - ITEM "Descrizione@45" + ITEM "Codice\nAlt.@6" + ITEM "Descrizione@30" FLAGS "H" END @@ -105,7 +105,7 @@ ENDPAGE ENDMASK -PAGE "Articolo" -1 -1 60 5 +PAGE "Articolo" -1 -1 65 5 STRING A_CODART 5 BEGIN @@ -134,7 +134,7 @@ BEGIN ADD RUN ve2 -0 END -STRING A_CODALT 5 +STRING A_CODALT 6 BEGIN PROMPT 1 3 "Alternativo " COPY USE A_CODART @@ -145,7 +145,7 @@ BEGIN ADD RUN ve2 -0 END -STRING A_DESCALT 45 +STRING A_DESCALT 30 BEGIN PROMPT 1 4 "Descrizione " END @@ -206,7 +206,7 @@ BEGIN ADD RUN cg0 -1 END -STRING C_CODALT 5 +STRING C_CODALT 6 BEGIN PROMPT 1 4 "Alternativo " USE LF_ANAMAG SELECT USER1!="" @@ -219,7 +219,7 @@ BEGIN ADD RUN ve2 -0 END -STRING C_DESCALT 45 +STRING C_DESCALT 30 BEGIN PROMPT 1 5 "Descrizione " END diff --git a/ha/ha1200.cpp b/ha/ha1200.cpp index 6b122a6a3..57e96a412 100755 --- a/ha/ha1200.cpp +++ b/ha/ha1200.cpp @@ -5,6 +5,7 @@ #include #include +#include #include #include "../cg/cgsaldac.h" #include "../ve/condv.h" @@ -621,11 +622,7 @@ bool TFile2Txt::genera_decodart_txt() { TEsporta_decodart_recordset decodart; - TString query; - query << "USE CODCORR"; - query << "\nSELECT (TIPOCF='C')"; - query << "\nBY CODCF"; - + const char* const query = "USE MULTIREL\nFROM COD=HACOR\nTO COD=HACOR"; TISAM_recordset archivio_codcorr(query); const long archivio_codcorr_items = archivio_codcorr.items(); @@ -635,10 +632,12 @@ bool TFile2Txt::genera_decodart_txt() progind.addstatus(1); decodart.new_rec(""); + decodart.set(CODCORR_CODCF, archivio_codcorr.get(MULTI_FIRST)); + decodart.set(CODCORR_CODART, archivio_codcorr.get(MULTI_SECOND)); - decodart.set(CODCORR_CODART, archivio_codcorr.get(CODCORR_CODART)); - decodart.set(CODCORR_CODCF, archivio_codcorr.get(CODCORR_CODCF)); - decodart.set(CODCORR_CODARTALT, archivio_codcorr.get(CODCORR_CODARTALT)); + const TString& data = archivio_codcorr.get(MULTI_DATA).as_string(); + decodart.set(CODCORR_CODARTALT, data.left(6)); + decodart.set(CODCORR_DESCR, data.mid(6, 30)); } return salva_recordset(decodart, "decodart"); diff --git a/ha/halib.cpp b/ha/halib.cpp index 20de4155b..0f23d2a5b 100755 --- a/ha/halib.cpp +++ b/ha/halib.cpp @@ -309,12 +309,13 @@ TEsporta_sospesiVAR_recordset::TEsporta_sospesiVAR_recordset() //Decodart () //--------------- -TEsporta_decodart_recordset::TEsporta_decodart_recordset(int rec_length) -: THardy_recordset(rec_length) +TEsporta_decodart_recordset::TEsporta_decodart_recordset() +: THardy_recordset(49) { - add_field(CODCORR_CODART, T_X, 1, 5); //x - add_field(CODCORR_CODCF, T_N, 6, 6); //x - add_field(CODCORR_CODARTALT, T_X, 12, 6); //x + add_field(CODCORR_CODART, T_X, 1, 5); //x + add_field(CODCORR_CODCF, T_N, 6, 6); //x + add_field(CODCORR_CODARTALT, T_X, 12, 6); //x + add_field(CODCORR_DESCR, T_X, 18,30); //x add_eol_field(); } @@ -404,9 +405,6 @@ const TString& TCodArtEsselunga_cache::decode(const TString& codart) return *(const TString*)objptr(codart); } - - - ///////////////////////////////////////////////////////////// // Metodi di utility ///////////////////////////////////////////////////////////// diff --git a/ha/halib.h b/ha/halib.h index b78b5eeb6..5f2b65d43 100755 --- a/ha/halib.h +++ b/ha/halib.h @@ -185,7 +185,7 @@ public: class TEsporta_decodart_recordset : public THardy_recordset { public: - TEsporta_decodart_recordset(int rec_length = 19); + TEsporta_decodart_recordset(); }; //Barcode ()