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:
		
							parent
							
								
									758ffd8c4c
								
							
						
					
					
						commit
						0e70673a3c
					
				@ -259,21 +259,27 @@ bool TMajor_flexform_boll_app::export_ddt(TMask& msk)
 | 
				
			|||||||
    TString         query_righe;
 | 
					    TString         query_righe;
 | 
				
			||||||
    query_righe << "SELECT rdoc.CODART, rdoc.DESCR, rdoc.QTA, rdoc.RG1, rdoc.DESCLUNGA, rdoc.DESCEST, COD_PMS\n"
 | 
					    query_righe << "SELECT rdoc.CODART, rdoc.DESCR, rdoc.QTA, rdoc.RG1, rdoc.DESCLUNGA, rdoc.DESCEST, COD_PMS\n"
 | 
				
			||||||
      "FROM rdoc\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;
 | 
					      "WHERE CODNUM = '" << codnum << "' AND ANNO = " << year << " AND PROVV = 'D' AND NDOC=" << n_doc;
 | 
				
			||||||
    TSQL_recordset  righe_doc(query_righe);
 | 
					    TSQL_recordset  righe_doc(query_righe);
 | 
				
			||||||
    for (bool ok_r = righe_doc.move_first(); ok_r; ok_r = righe_doc.move_next())
 | 
					    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();
 | 
					      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();
 | 
					      TString         descr             = righe_doc.get(1).as_string();
 | 
				
			||||||
      const TString&  qta               = righe_doc.get(2).as_string();
 | 
					      const TString&  qta               = righe_doc.get(2).as_string();
 | 
				
			||||||
      const TString&  desccampolibero6  = get_riferimento_flexform(righe_doc);  // get(3) RG1
 | 
					      const TString&  desccampolibero6  = get_riferimento_flexform(righe_doc);  // get(3) RG1
 | 
				
			||||||
      if (righe_doc.get(4).as_bool())
 | 
					      if (righe_doc.get(4).as_bool())
 | 
				
			||||||
        descr << righe_doc.get(5).as_string();
 | 
					        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);
 | 
					      xml_ddts.add_row(riga);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
@ -287,8 +293,6 @@ bool TMajor_flexform_boll_app::import_ordini(TMask& msk)
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
  bool ok = false;
 | 
					  bool ok = false;
 | 
				
			||||||
  const TString& dir_in     = msk.get(F_FLDSOURCE);
 | 
					  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);
 | 
					  TFilename     path(dir_in);
 | 
				
			||||||
  TString_array flist;
 | 
					  TString_array flist;
 | 
				
			||||||
@ -297,8 +301,12 @@ bool TMajor_flexform_boll_app::import_ordini(TMask& msk)
 | 
				
			|||||||
  bool* lookup_t = new bool[flist.items()];
 | 
					  bool* lookup_t = new bool[flist.items()];
 | 
				
			||||||
  for (int i = 0; i < flist.items(); ++i)
 | 
					  for (int i = 0; i < flist.items(); ++i)
 | 
				
			||||||
    lookup_t[i] = false;
 | 
					    lookup_t[i] = false;
 | 
				
			||||||
 | 
					  TProgress_monitor prog(flist.items(), "Importazione ordini");
 | 
				
			||||||
  FOR_EACH_ARRAY_ROW(flist, nr, ford_name)
 | 
					  FOR_EACH_ARRAY_ROW(flist, nr, ford_name)
 | 
				
			||||||
  {
 | 
					  {
 | 
				
			||||||
 | 
					    if (!prog.add_status())
 | 
				
			||||||
 | 
					      break;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    TFilename ford_filename(ford_name->operator const char*());
 | 
					    TFilename ford_filename(ford_name->operator const char*());
 | 
				
			||||||
    FILE* fin;
 | 
					    FILE* fin;
 | 
				
			||||||
    if (!fopen_s(&fin, ford_filename, "rb") && fin) // Read-Binary mode
 | 
					    if (!fopen_s(&fin, ford_filename, "rb") && fin) // Read-Binary mode
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user