Patch level :R_02_01 nopatch

Files correlati     :ve7.exe ve7500*.*
Ricompilazione Demo : [ ]
Commento            :programma per gommisti funzionante


git-svn-id: svn://10.65.10.50/trunk@11797 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca 2004-03-03 11:26:01 +00:00
parent a11485820a
commit c6734ca369
5 changed files with 36 additions and 10 deletions

View File

@ -1,10 +1,7 @@
#include <applicat.h> #include <applicat.h>
#include <filetext.h> #include <filetext.h>
#include <isamrpc.h>
#include <mask.h> #include <mask.h>
#include <tabutil.h>
#include <progind.h> #include <progind.h>
#include <recarray.h>
#include <utility.h> #include <utility.h>
#include "..\mg\umart.h" #include "..\mg\umart.h"
@ -20,10 +17,8 @@
class TLis2fil_txt: public TFile_text class TLis2fil_txt: public TFile_text
{ {
protected:
// virtual void validate(TCursor& cur,TRecord_text &rec, TToken_string &val, TString& str);
public: public:
void save_price(const TRecord_text& rec, const TString& um);
TLis2fil_txt(const TString& file_name, const TString& config_name); TLis2fil_txt(const TString& file_name, const TString& config_name);
virtual ~TLis2fil_txt() { } virtual ~TLis2fil_txt() { }
}; };
@ -33,6 +28,22 @@ TLis2fil_txt::TLis2fil_txt(const TString& file_name, const TString& config_name)
{ {
} }
//validate per sistemare il prezzo nel file UMART
void TLis2fil_txt::save_price(const TRecord_text& rec, const TString& um)
{
const TString80 codart = rec.get(0);
const TPrice prezzo = real(rec.get(2));
TLocalisamfile umart(LF_UMART);
TRectype& curr = umart.curr();
curr.put(UMART_CODART, codart);
curr.put(UMART_NRIGA, 1);
curr.put(UMART_UM, um);
curr.put(UMART_PREZZO, prezzo);
if (umart.rewrite() != NOERR)
umart.write();
}
///////////////////////////////////////////////////// /////////////////////////////////////////////////////
// Classe TLis2fil: applicazione principale // // Classe TLis2fil: applicazione principale //
@ -41,6 +52,7 @@ TLis2fil_txt::TLis2fil_txt(const TString& file_name, const TString& config_name)
class TLis2fil: public TSkeleton_application class TLis2fil: public TSkeleton_application
{ {
TMask* _msk; TMask* _msk;
TString4 _um;
protected: protected:
virtual bool create(void); virtual bool create(void);
@ -84,6 +96,7 @@ void TLis2fil::import(const TString& filename)
{ {
pi.setstatus(trasfile.read_file()->tellg()); pi.setstatus(trasfile.read_file()->tellg());
trasfile.autosave(rel, curr); trasfile.autosave(rel, curr);
trasfile.save_price(curr, _um);
} }
trasfile.close(); trasfile.close();
@ -97,6 +110,8 @@ bool TLis2fil::create()
_msk = new TMask("ve7500a"); _msk = new TMask("ve7500a");
TString default_dir = "A:\\"; TString default_dir = "A:\\";
_msk->set(F_DIRNAME, default_dir); _msk->set(F_DIRNAME, default_dir);
TString4 default_um = "PZ";
_msk->set(F_UM, default_um);
return TSkeleton_application::create(); return TSkeleton_application::create();
} }
@ -119,11 +134,12 @@ void TLis2fil::main_loop()
if (key == K_ENTER) if (key == K_ENTER)
{ {
TString_array dir_files; TString_array dir_files;
TFilename path = _msk->get(F_DIRNAME); TFilename path = _msk->get(F_DIRNAME); //da maschera si seleziona la directory di importazione..
_um = _msk->get(F_UM);
path.add("*.txt"); path.add("*.txt");
list_files(path, dir_files); list_files(path, dir_files); //..poi si mettono tutti i nomi dei files .txt presenti nella dir in un TString_array..
FOR_EACH_ARRAY_ROW(dir_files, i, row) FOR_EACH_ARRAY_ROW(dir_files, i, row)
import(*row); import(*row); //..e per ogni file (riga del TString-array) si procede all'upload dei record
} }
} }
} }

View File

@ -2,3 +2,4 @@
// definizione campi per maschera di selezione // definizione campi per maschera di selezione
#define F_DIRNAME 101 // nome della directory da cui caricare i dati #define F_DIRNAME 101 // nome della directory da cui caricare i dati
#define F_UM 102 // unita' di misura da utilizzare per i record da caricare

View File

@ -1,7 +1,7 @@
#include "ve7500a.h" #include "ve7500a.h"
PAGE "Acquisizione dati da file" -1 -1 78 4 PAGE "Acquisizione dati da file" -1 -1 78 5
BUTTON DLG_OK 10 2 BUTTON DLG_OK 10 2
BEGIN BEGIN
@ -19,5 +19,12 @@ BEGIN
CHECKTYPE REQUIRED CHECKTYPE REQUIRED
END END
STRING F_UM 2
BEGIN
PROMPT 1 2 "Unita' di misura da utilizzare "
FLAGS "U"
CHECKTYPE REQUIRED
END
ENDPAGE ENDPAGE
ENDMASK ENDMASK

View File

@ -49,4 +49,5 @@ NAME(2) = PRICE
TYPE(2) = EURO TYPE(2) = EURO
POSITION(2) = 63 POSITION(2) = 63
LENGTH(2) = 8 LENGTH(2) = 8
MESSAGE(2) = _PREZZO

View File

@ -49,4 +49,5 @@ NAME(2) = PRICE
TYPE(2) = EURO TYPE(2) = EURO
POSITION(2) = 47 POSITION(2) = 47
LENGTH(2) = 11 LENGTH(2) = 11
MESSAGE(2) = _PREZZO