Patch level : 12.0 no-patch

Files correlati     : ps6362.exe (ps Major)
Commento            :
- Importazione articoli con ricerca codice interno major.
- Esportazione bolle con condice articolo COD_PMS (flexform).
This commit is contained in:
Simone Palacino 2020-09-08 15:14:33 +02:00
parent 758ffd8c4c
commit 0e70673a3c

View File

@ -259,21 +259,27 @@ bool TMajor_flexform_boll_app::export_ddt(TMask& msk)
TString query_righe;
query_righe << "SELECT rdoc.CODART, rdoc.DESCR, rdoc.QTA, rdoc.RG1, rdoc.DESCLUNGA, rdoc.DESCEST, COD_PMS\n"
"FROM rdoc\n"
"JOIN anamag ON rdoc.CODART = anamag.CODART\n"
"LEFT JOIN anamag ON rdoc.CODART = anamag.CODART\n"
"WHERE CODNUM = '" << codnum << "' AND ANNO = " << year << " AND PROVV = 'D' AND NDOC=" << n_doc;
TSQL_recordset righe_doc(query_righe);
for (bool ok_r = righe_doc.move_first(); ok_r; ok_r = righe_doc.move_next())
{
shared_ptr<TDDT_riga_xml> riga = xml_ddts.new_row();
const TString& cod_art_flexform = righe_doc.get(6).as_string();
TString cod_art = righe_doc.get(6).as_string(); // Codice Flexform.
if(cod_art.empty())
cod_art = righe_doc.get(0).as_string(); // Codice interno.
TString descr = righe_doc.get(1).as_string();
const TString& qta = righe_doc.get(2).as_string();
const TString& desccampolibero6 = get_riferimento_flexform(righe_doc); // get(3) RG1
if (righe_doc.get(4).as_bool())
descr << righe_doc.get(5).as_string();
riga->set_datarow("C", cod_art_flexform, descr, qta, desccampolibero6);
if(!desccampolibero6.empty())
riga->set_datarow("A", cod_art, descr, qta, desccampolibero6);
else
riga->set_datarow("C", "", descr, "0", "");
xml_ddts.add_row(riga);
}
}
@ -287,8 +293,6 @@ bool TMajor_flexform_boll_app::import_ordini(TMask& msk)
{
bool ok = false;
const TString& dir_in = msk.get(F_FLDSOURCE);
const TString& cod_cli = msk.get(F_CODCF);
const TString& tiponumord = msk.get(F_NUMORD);
TFilename path(dir_in);
TString_array flist;
@ -297,8 +301,12 @@ bool TMajor_flexform_boll_app::import_ordini(TMask& msk)
bool* lookup_t = new bool[flist.items()];
for (int i = 0; i < flist.items(); ++i)
lookup_t[i] = false;
TProgress_monitor prog(flist.items(), "Importazione ordini");
FOR_EACH_ARRAY_ROW(flist, nr, ford_name)
{
if (!prog.add_status())
break;
TFilename ford_filename(ford_name->operator const char*());
FILE* fin;
if (!fopen_s(&fin, ford_filename, "rb") && fin) // Read-Binary mode