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
This commit is contained in:
parent
37f9d93ce5
commit
c6dac1728d
@ -6,6 +6,7 @@
|
|||||||
#include <recset.h>
|
#include <recset.h>
|
||||||
|
|
||||||
#include <clifo.h>
|
#include <clifo.h>
|
||||||
|
#include <multirel.h>
|
||||||
#include "../mg/anamag.h"
|
#include "../mg/anamag.h"
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////
|
||||||
@ -54,26 +55,26 @@ bool TCodcorr_msk::save()
|
|||||||
row->get(3, descr);
|
row->get(3, descr);
|
||||||
|
|
||||||
multirel.zero();
|
multirel.zero();
|
||||||
multirel.put("COD", "HACOR");
|
multirel.put(MULTI_COD, "HACOR");
|
||||||
// Compila opportunamente la chiave di multirel: FIRST=cliente; SECOND=articolo;
|
// Compila opportunamente la chiave di multirel: FIRST=cliente; SECOND=articolo;
|
||||||
if (_mode == 'A')
|
if (_mode == 'A')
|
||||||
{
|
{
|
||||||
multirel.put("FIRST", _code); // Cliente
|
multirel.put(MULTI_FIRST, _code); // Cliente
|
||||||
multirel.put("SECOND", code); // Articolo
|
multirel.put(MULTI_SECOND, code); // Articolo
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
multirel.put("FIRST", code); // Cliente
|
multirel.put(MULTI_FIRST, code); // Cliente
|
||||||
multirel.put("SECOND", _code); // Articolo
|
multirel.put(MULTI_SECOND, _code); // Articolo
|
||||||
}
|
}
|
||||||
|
|
||||||
int err = NOERR;
|
int err = NOERR;
|
||||||
if (codalt.full() || descr.full()) // Riga da aggiornare in quanto piena
|
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 = codalt;
|
||||||
data.overwrite(descr, 5);
|
data.overwrite(descr, 6, 30);
|
||||||
multirel.put("DATA", data);
|
multirel.put(MULTI_DATA, data);
|
||||||
err = multirel.rewrite_write();
|
err = multirel.rewrite_write();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -117,16 +118,16 @@ bool TCodcorr_msk::load_articles()
|
|||||||
for (bool ok = multirel.move_first(); ok; ok = multirel.move_next())
|
for (bool ok = multirel.move_first(); ok; ok = multirel.move_next())
|
||||||
{
|
{
|
||||||
TToken_string& row = sf.row(-1);
|
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(cod); // Codice articolo
|
||||||
row.add(cache().get(LF_ANAMAG, cod, ANAMAG_DESCR)); // Descrizione 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]
|
// Spezza il campo DATA in codice alternativo [1,6] e descrizione [7,36]
|
||||||
const TString& data = multirel.get("DATA").as_string();
|
const TString& data = multirel.get(MULTI_DATA).as_string();
|
||||||
cod = data.left(5);
|
cod = data.left(6);
|
||||||
row.add(cod);
|
row.add(cod);
|
||||||
if (data.len() > 5)
|
if (data.len() > 6)
|
||||||
row.add(data.mid(5, 45));
|
row.add(data.mid(6, 30));
|
||||||
else
|
else
|
||||||
row.add(cache().get(LF_ANAMAG, cod, ANAMAG_DESCR));
|
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())
|
for (bool ok = multirel.move_first(); ok; ok = multirel.move_next())
|
||||||
{
|
{
|
||||||
TToken_string& row = sf.row(-1);
|
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);
|
row.add(cod);
|
||||||
cod.insert("C|"); // Chiave cliente
|
cod.insert("C|"); // Chiave cliente
|
||||||
row.add(cache().get(LF_CLIFO, cod, CLI_RAGSOC)); // Ragione sociale
|
row.add(cache().get(LF_CLIFO, cod, CLI_RAGSOC)); // Ragione sociale
|
||||||
|
|
||||||
// Spezza il campo DATA in codice alternativo [1,5] e descrizione [6,50]
|
// Spezza il campo DATA in codice alternativo [1,6] e descrizione [7,36]
|
||||||
const TString& data = multirel.get("DATA").as_string();
|
const TString& data = multirel.get(MULTI_DATA).as_string();
|
||||||
cod = data.left(5);
|
cod = data.left(6);
|
||||||
row.add(cod);
|
row.add(cod);
|
||||||
if (data.len() > 5)
|
if (data.len() > 6)
|
||||||
row.add(data.mid(5, 45));
|
row.add(data.mid(6, 30));
|
||||||
else
|
else
|
||||||
row.add(cache().get(LF_ANAMAG, cod, ANAMAG_DESCR));
|
row.add(cache().get(LF_ANAMAG, cod, ANAMAG_DESCR));
|
||||||
|
|
||||||
|
@ -86,8 +86,8 @@ BEGIN
|
|||||||
PROMPT 1 4 ""
|
PROMPT 1 4 ""
|
||||||
ITEM "Codice\nArticolo@8"
|
ITEM "Codice\nArticolo@8"
|
||||||
ITEM "Descrizione@50"
|
ITEM "Descrizione@50"
|
||||||
ITEM "Codice\nAlt.@5"
|
ITEM "Codice\nAlt.@6"
|
||||||
ITEM "Descrizione@45"
|
ITEM "Descrizione@30"
|
||||||
FLAGS "H"
|
FLAGS "H"
|
||||||
END
|
END
|
||||||
|
|
||||||
@ -96,8 +96,8 @@ BEGIN
|
|||||||
PROMPT 1 4 ""
|
PROMPT 1 4 ""
|
||||||
ITEM "Codice\nCliente@6"
|
ITEM "Codice\nCliente@6"
|
||||||
ITEM "Ragione Sociale@50"
|
ITEM "Ragione Sociale@50"
|
||||||
ITEM "Codice\nAlt.@5"
|
ITEM "Codice\nAlt.@6"
|
||||||
ITEM "Descrizione@45"
|
ITEM "Descrizione@30"
|
||||||
FLAGS "H"
|
FLAGS "H"
|
||||||
END
|
END
|
||||||
|
|
||||||
@ -105,7 +105,7 @@ ENDPAGE
|
|||||||
|
|
||||||
ENDMASK
|
ENDMASK
|
||||||
|
|
||||||
PAGE "Articolo" -1 -1 60 5
|
PAGE "Articolo" -1 -1 65 5
|
||||||
|
|
||||||
STRING A_CODART 5
|
STRING A_CODART 5
|
||||||
BEGIN
|
BEGIN
|
||||||
@ -134,7 +134,7 @@ BEGIN
|
|||||||
ADD RUN ve2 -0
|
ADD RUN ve2 -0
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING A_CODALT 5
|
STRING A_CODALT 6
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 3 "Alternativo "
|
PROMPT 1 3 "Alternativo "
|
||||||
COPY USE A_CODART
|
COPY USE A_CODART
|
||||||
@ -145,7 +145,7 @@ BEGIN
|
|||||||
ADD RUN ve2 -0
|
ADD RUN ve2 -0
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING A_DESCALT 45
|
STRING A_DESCALT 30
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 4 "Descrizione "
|
PROMPT 1 4 "Descrizione "
|
||||||
END
|
END
|
||||||
@ -206,7 +206,7 @@ BEGIN
|
|||||||
ADD RUN cg0 -1
|
ADD RUN cg0 -1
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING C_CODALT 5
|
STRING C_CODALT 6
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 4 "Alternativo "
|
PROMPT 1 4 "Alternativo "
|
||||||
USE LF_ANAMAG SELECT USER1!=""
|
USE LF_ANAMAG SELECT USER1!=""
|
||||||
@ -219,7 +219,7 @@ BEGIN
|
|||||||
ADD RUN ve2 -0
|
ADD RUN ve2 -0
|
||||||
END
|
END
|
||||||
|
|
||||||
STRING C_DESCALT 45
|
STRING C_DESCALT 30
|
||||||
BEGIN
|
BEGIN
|
||||||
PROMPT 1 5 "Descrizione "
|
PROMPT 1 5 "Descrizione "
|
||||||
END
|
END
|
||||||
|
@ -5,6 +5,7 @@
|
|||||||
#include <utility.h>
|
#include <utility.h>
|
||||||
|
|
||||||
#include <comuni.h>
|
#include <comuni.h>
|
||||||
|
#include <multirel.h>
|
||||||
#include <scadenze.h>
|
#include <scadenze.h>
|
||||||
#include "../cg/cgsaldac.h"
|
#include "../cg/cgsaldac.h"
|
||||||
#include "../ve/condv.h"
|
#include "../ve/condv.h"
|
||||||
@ -621,11 +622,7 @@ bool TFile2Txt::genera_decodart_txt()
|
|||||||
{
|
{
|
||||||
TEsporta_decodart_recordset decodart;
|
TEsporta_decodart_recordset decodart;
|
||||||
|
|
||||||
TString query;
|
const char* const query = "USE MULTIREL\nFROM COD=HACOR\nTO COD=HACOR";
|
||||||
query << "USE CODCORR";
|
|
||||||
query << "\nSELECT (TIPOCF='C')";
|
|
||||||
query << "\nBY CODCF";
|
|
||||||
|
|
||||||
TISAM_recordset archivio_codcorr(query);
|
TISAM_recordset archivio_codcorr(query);
|
||||||
const long archivio_codcorr_items = archivio_codcorr.items();
|
const long archivio_codcorr_items = archivio_codcorr.items();
|
||||||
|
|
||||||
@ -635,10 +632,12 @@ bool TFile2Txt::genera_decodart_txt()
|
|||||||
progind.addstatus(1);
|
progind.addstatus(1);
|
||||||
|
|
||||||
decodart.new_rec("");
|
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));
|
const TString& data = archivio_codcorr.get(MULTI_DATA).as_string();
|
||||||
decodart.set(CODCORR_CODCF, archivio_codcorr.get(CODCORR_CODCF));
|
decodart.set(CODCORR_CODARTALT, data.left(6));
|
||||||
decodart.set(CODCORR_CODARTALT, archivio_codcorr.get(CODCORR_CODARTALT));
|
decodart.set(CODCORR_DESCR, data.mid(6, 30));
|
||||||
}
|
}
|
||||||
|
|
||||||
return salva_recordset(decodart, "decodart");
|
return salva_recordset(decodart, "decodart");
|
||||||
|
14
ha/halib.cpp
14
ha/halib.cpp
@ -309,12 +309,13 @@ TEsporta_sospesiVAR_recordset::TEsporta_sospesiVAR_recordset()
|
|||||||
|
|
||||||
//Decodart ()
|
//Decodart ()
|
||||||
//---------------
|
//---------------
|
||||||
TEsporta_decodart_recordset::TEsporta_decodart_recordset(int rec_length)
|
TEsporta_decodart_recordset::TEsporta_decodart_recordset()
|
||||||
: THardy_recordset(rec_length)
|
: THardy_recordset(49)
|
||||||
{
|
{
|
||||||
add_field(CODCORR_CODART, T_X, 1, 5); //x
|
add_field(CODCORR_CODART, T_X, 1, 5); //x
|
||||||
add_field(CODCORR_CODCF, T_N, 6, 6); //x
|
add_field(CODCORR_CODCF, T_N, 6, 6); //x
|
||||||
add_field(CODCORR_CODARTALT, T_X, 12, 6); //x
|
add_field(CODCORR_CODARTALT, T_X, 12, 6); //x
|
||||||
|
add_field(CODCORR_DESCR, T_X, 18,30); //x
|
||||||
add_eol_field();
|
add_eol_field();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -404,9 +405,6 @@ const TString& TCodArtEsselunga_cache::decode(const TString& codart)
|
|||||||
return *(const TString*)objptr(codart);
|
return *(const TString*)objptr(codart);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////
|
||||||
// Metodi di utility
|
// Metodi di utility
|
||||||
/////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////
|
||||||
|
@ -185,7 +185,7 @@ public:
|
|||||||
class TEsporta_decodart_recordset : public THardy_recordset
|
class TEsporta_decodart_recordset : public THardy_recordset
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
TEsporta_decodart_recordset(int rec_length = 19);
|
TEsporta_decodart_recordset();
|
||||||
};
|
};
|
||||||
|
|
||||||
//Barcode ()
|
//Barcode ()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user