From 449e913e3eecc3fbe9ba0b038622779d8eac4559 Mon Sep 17 00:00:00 2001 From: alex Date: Thu, 30 Apr 1998 14:38:35 +0000 Subject: [PATCH] Patch level : Files correlati : Ricompilazione Demo : [ ] Commento : Riportata la versione 98.01.03pl015 git-svn-id: svn://10.65.10.50/trunk@6574 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- ba/ba0.cpp | 10 +- ba/ba1500.cpp | 255 +++++++- ba/ba1500a.h | 9 + ba/ba1500a.uml | 21 +- ba/ba1500b.h | 34 + ba/ba1500b.uml | 260 ++++++++ ba/ba1600.cpp | 208 +++++- ba/ba1700.cpp | 108 ++-- ba/ba3100.cpp | 41 +- ba/ba5200a.uml | 3 +- ba/bacnv.cpp | 29 +- ba/bainst.ini | 206 ++++++ ba/bainst04.cpp | 65 ++ ba/bainst04.h | 5 + ba/bainst04.uml | 35 + ba/f3.dir | 2 +- ba/f3.trr | 7 +- ba/f4.dir | 2 +- ba/f4.trr | 7 +- ba/f5.dir | 2 +- ba/f5.trr | 7 +- ba/fconv.ini | 2 + ba/install.ini | 1618 ++++++++++++++++++++++++++--------------------- ba/level.dir | 2 +- 24 files changed, 2100 insertions(+), 838 deletions(-) create mode 100755 ba/ba1500b.h create mode 100755 ba/ba1500b.uml create mode 100755 ba/bainst.ini create mode 100755 ba/bainst04.cpp create mode 100755 ba/bainst04.h create mode 100755 ba/bainst04.uml diff --git a/ba/ba0.cpp b/ba/ba0.cpp index 9968a4b8a..a47a4c613 100755 --- a/ba/ba0.cpp +++ b/ba/ba0.cpp @@ -45,8 +45,7 @@ protected: // TMask virtual void update(); public: - virtual bool stop_run(KEY key) { return TWindow::stop_run(key); } - + virtual bool stop_run(KEY key) ; TPicture_mask(const char* name, int dx, int dy, TImage& image); virtual ~TPicture_mask() {} }; @@ -58,6 +57,13 @@ TPicture_mask::TPicture_mask(const char* name, int dx, int dy, TImage& image) _image.set_palette(win()); } +bool TPicture_mask::stop_run(KEY key) +{ + if (key==K_FORCE_CLOSE) + key=K_QUIT; + return TWindow::stop_run(key); +} + void TPicture_mask::update() { if (_image.ok()) diff --git a/ba/ba1500.cpp b/ba/ba1500.cpp index 1b47cabfb..68061603c 100755 --- a/ba/ba1500.cpp +++ b/ba/ba1500.cpp @@ -7,6 +7,7 @@ #include #include #include +#include #define BITTEST(w,p) (((w) & (0x0001 << (p))) != 0) #define BITSET(w,p,v) ((v) ? ((w) |= (0x0001 << (p))) : ((w) &= (~(0x0001 << (p))))) @@ -14,6 +15,7 @@ #include "ba1.h" #include "ba1500.h" #include "ba1500a.h" +#include "ba1500b.h" #include "ba1600.h" #define USERADR 26952 @@ -24,6 +26,7 @@ #define LBYTEMASK 0x00FF #define UBYTEMASK 0xFF00 + /////////////////////////////////////////////////////////// TInformazione_moduli::TInformazione_moduli() @@ -33,7 +36,6 @@ TInformazione_moduli::TInformazione_moduli() TToken_string t; TString_array descs; - _unassigned_modules = 0; ifstream in("prassi.aut"); while (!in.eof() && in.good()) { @@ -42,15 +44,13 @@ TInformazione_moduli::TInformazione_moduli() if (s.empty()) break; const int l = s.len(); - if (l > 2) + if (l >= 3 && s[3] > ' ') { t = s.mid(3); t.add(s.left(2)); - } - else - { - t = " "; t.add(" "); - _unassigned_modules++; + } else { + t = "{Modulo Sconosciuto}"; + t.add(s.left(2)); } t.add(mod++); s = t.get(0); @@ -105,7 +105,7 @@ TDongleType TInformazione_moduli::get_owner(int module) const return _procom_dongle; const int aut[] = { CMAUT, ATAUT, POAUT, AFAUT, TCAUT, TMAUT, - VEAUT, MGAUT, ORAUT, EFAUT, DBAUT, SVAUT, -1 }; + VEAUT, MGAUT, ORAUT, EFAUT, DBAUT, PRAUT, SVAUT, -1 }; for (int a = 0; aut[a] >= 0; a++) if (module == aut[a]) return _aga_dongle; @@ -174,20 +174,28 @@ TRequest_form::TRequest_form(const char* name) void TRequest_form::update_serno(const TString& num) { const TDate today(TODAY); - TForm_item& data = find_field('H', odd_page, 101); + TForm_item& data = find_field('H', odd_page, FF_DATARICH); data.set(today.string()); - TForm_item& serno = find_field('H', odd_page, 102); + switch (::dongle().hardware() ) + { + case _dongle_eutron: + find_field('H',odd_page,FF_DONGLE_HD).set("EUTRON"); break; + default: + find_field('H',odd_page,FF_DONGLE_HD).set("HARDLOCK"); break; + } + TForm_item& serno = find_field('H', odd_page, FF_DONGLE_SN); serno.set(num); + } void TRequest_form::update_dongle(const TDongle& dongle) { - TForm_item& year = find_field('H', odd_page, 103); + TForm_item& year = find_field('H', odd_page, FF_YEAR); TString str; str << "31-12-" << (int)dongle.year_assist(); year.set(str); - TForm_item& user = find_field('H', odd_page, 104); + TForm_item& user = find_field('H', odd_page, FF_NUTENTI); str.format("%d", dongle.max_users()); user.set(str); } @@ -223,10 +231,14 @@ protected: word& serno() { return _serno; } - void generate_key(); + void init_mask(); + void update_listino(); + void load_masklistino(TMask & m); + void save_masklistino(TMask & m); int build_sheet(bool on = TRUE); void build_key_column(); + bool burn_dongle(); static void keyext(const TString & s, word * v); @@ -245,7 +257,11 @@ protected: static bool assist_handler(TMask_field& fld, KEY key); static bool print_handler(TMask_field& fld, KEY key); static bool aggiorna_listino_handler(TMask_field& fld, KEY key); + static bool modifica_listino_handler(TMask_field& fld, KEY key); static bool aga_handler(TMask_field& fld, KEY key); + static bool sh_nposti_handler(TMask_field& fld, KEY key); + static bool sh_acquisto_handler(TMask_field& fld, KEY key); + static bool sh_aggiornamento_handler(TMask_field& fld, KEY key); protected: void print_request(); @@ -261,17 +277,172 @@ public: HIDDEN TAttivazione_moduli& app() { return (TAttivazione_moduli &)main_app(); } +int round_price(int val) +{ + if (val>50000) + val=int((val+9)/10000)*10000; + else + val=int((val+9)/10)*10; + return val; +} + +bool TAttivazione_moduli::sh_nposti_handler(TMask_field& fld, KEY key) +{ + if (key == K_TAB && fld.focusdirty()) + { + // default + int posti = atoi(fld.get()); + if (posti<=1) + return TRUE; + int val = fld.mask().get_int(F_ACQ1); + switch (posti) + { + case 2: + val = int(val * .30); break; + case 3: + val = int(val * .20); break; + case 5: + val = int(val * .15); break; + case 9: + val = int(val * .10); break; + case 30: + val = int(val * .05); break; + default: + val=0; + } + val = round_price(val); + if (fld.mask().field(fld.dlg()+1).empty()) + fld.mask().field(fld.dlg()+1).set(val) ; // costo di acquisto + val=fld.mask().get_int(fld.dlg()+1); + val = int (val * .35); + val = round_price(val); + fld.mask().field(fld.dlg()+2).set(val) ; // costo di aggiornamento + } + return TRUE; +} + +bool TAttivazione_moduli::sh_acquisto_handler(TMask_field& fld, KEY key) +{ + return TRUE; +} +bool TAttivazione_moduli::sh_aggiornamento_handler(TMask_field& fld, KEY key) +{ + if (key == K_TAB && fld.empty()) + { + } + + return TRUE; +} + + +void TAttivazione_moduli::update_listino() +{ + TMask msklistino("ba1500b") ; + TMask &smask = msklistino.sfield(F_MODULILIST).sheet_mask(); + for (int c=0; c<6; c++) + { + smask.set_handler(F_POSTI1+3*c, sh_nposti_handler ); + smask.set_handler(F_ACQ1+3*c, sh_acquisto_handler ); + smask.set_handler(F_AGG1+3*c, sh_aggiornamento_handler); + } + load_masklistino(msklistino); + if (msklistino.run()==K_ENTER) + { + save_masklistino(msklistino); + } +} + + + +void TAttivazione_moduli::load_masklistino(TMask &msklistino) +{ + TWait_cursor hourglass; + TInstall_ini ini; + TDate dt(ini.get("Listino","Main")); + if (!dt.empty()) + msklistino.set(F_DATALIST,dt); + + TSheet_field& sf = msklistino.sfield(F_MODULILIST); + for (int i = 0; i < MAX_AUT; i++) + { + const TString16 modname(_im->get_name_by_order(i)); + if (modname.empty()) + break; + + TToken_string& riga = sf.row(i); + riga=modname; + + const TFixed_string d(_im->get_description_by_order(i)); + riga.add(d); + riga.trim(); + riga.add("1"); // prima colonna = monoutenza + + TString_array prices; + ini.set_paragraph(modname); + ini.list_variables(prices, TRUE,modname,TRUE); // get array sorted by var name + FOR_EACH_ARRAY_ROW(prices, v, key) + { + const TFixed_string price(key->get(0)); + if (price.compare("Prezzo", 6, TRUE) == 0) + { + TString16 colonna(price.sub(7,price.len()-1)); + if (atoi(colonna) != 1) + riga.add(colonna); + TToken_string valori(key->get(1),','); + riga.add(valori.get(0)); + riga.add(valori.get(1)); + } + } + sf.check_row(i); + } +} + +void TAttivazione_moduli::save_masklistino(TMask &msklistino) +{ + TWait_cursor hourglass; + TInstall_ini ini; + ini.set_paragraph("Main"); + ini.set("Listino",msklistino.get(F_DATALIST)); + TSheet_field& sf = (TSheet_field&)msklistino.field(F_MODULILIST); + const int items=sf.items(); + for (int i = 0; i < items; i++) + { + TToken_string& riga = sf.row(i); + TString tmpstr(riga.get(0)); + ini.set_paragraph(tmpstr); + + int nposti; + for (int col=0; col < 6; col++) + { + const char * p=riga.get(3*col+2); + if (p==NULL || (nposti=atoi(p))==0 ) + break; + tmpstr = riga.get(3*col+3); + if (tmpstr.blank()) + continue; + tmpstr << ',' << riga.get(3*col+4); + TString16 varname("Prezzo"); + varname << '(' << nposti << ')'; + ini.set(varname,tmpstr); + if (ini.new_paragraph()) + ini.set("Descrizione",riga.get(1)); + } + } +} + int TAttivazione_moduli::build_sheet(bool on) { int nmod = 0; TSheet_field& sf = (TSheet_field&)_msk->field(F_MODULI); for (int i = 0; i < MAX_AUT; i++) { + if (*_im->get_name_by_order(i)=='\0') + break; + const TFixed_string d(_im->get_description_by_order(i)); - if (d.blank()) - continue; TToken_string& riga = sf.row(i); - riga = d; riga.trim(); + riga = d; + riga.trim(); const int module = _im->get_module_by_order(i); const bool ics = module == 0 || (on && ::dongle().active(module)); @@ -573,7 +744,7 @@ bool TAttivazione_moduli::aga_handler(TMask_field& fld, KEY key) return TRUE; } -void TAttivazione_moduli::generate_key() +void TAttivazione_moduli::init_mask() { const TDate oggi(TODAY); const int nmod = build_sheet(); @@ -591,6 +762,7 @@ void TAttivazione_moduli::generate_key() garble(ud); _msk->set(F_K1, format("%04X%04X%04X%04X", ud[0], ud[1], ud[2], ud[3])); + _msk->set_caption("Attivazione HARDLOCK"); } else { @@ -598,6 +770,7 @@ void TAttivazione_moduli::generate_key() _msk->hide(F_K2); _msk->hide(F_K3); _msk->hide(F_K4); + _msk->set_caption("Attivazione EUTRON"); } _msk->set(F_SN, ::dongle().number()); @@ -789,6 +962,16 @@ bool TAttivazione_moduli::k_notify(TSheet_field& f, int r, KEY k) return TRUE; } + +bool TAttivazione_moduli::modifica_listino_handler(TMask_field& fld, KEY key) +{ + bool ok = TRUE; + if (key == K_SPACE) + { + app().update_listino(); + } + return ok; +} bool TAttivazione_moduli::aggiorna_listino_handler(TMask_field& fld, KEY key) { bool ok = TRUE; @@ -800,7 +983,7 @@ bool TAttivazione_moduli::aggiorna_listino_handler(TMask_field& fld, KEY key) while (!name.exist()) { TMask msk("Aggiornamento listino", 1, -1, -1, 60, 4); - msk.add_string(DLG_USER, 0, "Percorso", 1, 1, 50); + msk.add_string(DLG_USER, 0, "Percorso ", 1, 1, 50); msk.add_button(DLG_CANCEL, 0, "", -12, -1, 10, 2); msk.add_button(DLG_OK, 0, "", -22, -1, 10, 2); msk.set(DLG_USER, name); @@ -810,7 +993,7 @@ bool TAttivazione_moduli::aggiorna_listino_handler(TMask_field& fld, KEY key) { ok = FALSE; break; - } + } } if (ok) ok = ini.update_prices(name); @@ -828,9 +1011,12 @@ void TAttivazione_moduli::print_request() TForm_item& manut = form.find_field('B', odd_page, 105); TInstall_ini ini; + ini.write_protect(); + const bool special = _wanted_assist > ::dongle().year_assist() || _wanted_users != 0; const word users = max(_wanted_users, ::dongle().max_users()); + TWait_cursor hourglass; TSheet_field& sheet = _msk->sfield(F_MODULI); for (TDongleType owner = _aga_dongle; owner <= _procom_dongle; @@ -841,7 +1027,8 @@ void TAttivazione_moduli::print_request() FOR_EACH_SHEET_ROW(sheet, r, row) { - const int module = _im->get_module_by_order(r); + //const int module = _im->get_module_by_order(r); + const int module = row->get_int(2) ; const bool active = ::dongle().active(module); const bool wanted = *row->get(1) > ' '; @@ -855,6 +1042,15 @@ void TAttivazione_moduli::print_request() if (found == 0) { printer().open(); + switch (owner) + { + case _procom_dongle: + form.find_field('H',odd_page,1).set("GEISOFT"); break; + case _prassi_dongle: + form.find_field('H',odd_page,1).set("PR.A.S.S.I."); break; + default: //case _aga_dongle: + form.find_field('H',odd_page,1).set("A.G.A."); break; + } form.update_serno(_msk->get(F_SN)); form.update_dongle(::dongle()); } @@ -886,7 +1082,7 @@ void TAttivazione_moduli::print_request() form.print(-1); } - + if (special && found > 0) { codice.set(""); @@ -1018,16 +1214,19 @@ bool TAttivazione_moduli::create() _msk->set_handler(F_CHANGEUSERS, change_users_handler); _msk->set_handler(F_CHANGEASSIST, change_assist_handler); _msk->set_handler(F_PRINT, print_handler); + _msk->set_handler(F_AGGLISTINO, aggiorna_listino_handler); if (::dongle().type() == _aga_dongle) { _msk->show(F_AGA); _msk->set_handler(F_AGA, aga_handler); + _msk->show(F_MODLISTINO); + _msk->set_handler(F_MODLISTINO, modifica_listino_handler); } TSheet_field& sf = _msk->sfield(F_MODULI); sf.set_notify(k_notify); - const int un = _im->unassigned(); + //const int un = _im->unassigned(); const TDongleType mydongle = ::dongle().type(); switch (mydongle) { @@ -1042,7 +1241,7 @@ bool TAttivazione_moduli::create() _msk->enable(F_DT); _msk->set_handler(F_DT, date_hnd); - generate_key(); + init_mask(); sf.enable_column(F_KEY, serno() != 0); } break; @@ -1058,18 +1257,18 @@ bool TAttivazione_moduli::create() } _msk->set_handler(F_SN, serno_hnd); _msk->enable(F_SN); - + init_mask(); + sf.sheet_mask().field(F_ENABLE).set_handler(activate_hnd); build_sheet(FALSE); - for (int i = un; i < MAX_AUT; i++) + for (int i = 0; i < MAX_AUT; i++) { const int af = _im->get_module_by_order(i); - const int index = i-un; if (af == 0) - sf.disable_cell(index,1); + sf.disable_cell(i,1); else - sf.enable_cell(index,1,_im->test_owner(af, mydongle)); + sf.enable_cell(i,1,_im->test_owner(af, mydongle)); } build_key_column(); diff --git a/ba/ba1500a.h b/ba/ba1500a.h index 1241dda9f..afda7f46f 100755 --- a/ba/ba1500a.h +++ b/ba/ba1500a.h @@ -17,8 +17,17 @@ #define F_CHANGEASSIST 217 #define F_PRINT 218 #define F_AGA 219 +#define F_AGGLISTINO 220 +#define F_MODLISTINO 221 #define F_NOMEMOD 101 #define F_ENABLE 102 #define F_CODE 103 #define F_KEY 104 + + +#define FF_DATARICH 101 +#define FF_DONGLE_HD 102 +#define FF_DONGLE_SN 103 +#define FF_YEAR 104 +#define FF_NUTENTI 105 diff --git a/ba/ba1500a.uml b/ba/ba1500a.uml index 211efdbda..f94da9c56 100755 --- a/ba/ba1500a.uml +++ b/ba/ba1500a.uml @@ -69,23 +69,36 @@ END STRING F_K3 16 BEGIN - PROMPT 1 3 "Attivazione 2 " + PROMPT 1 2 "Attivazione 2 " FLAGS "U" END STRING F_K4 16 BEGIN - PROMPT 35 3 "" + PROMPT 35 2 "" FLAGS "U" END +BUTTON F_AGGLISTINO 18 +BEGID + PROMPT 1 3 "Aggiorna listino" +END + +BUTTON F_MODLISTINO 18 +BEGID + PROMPT 1 4 "Modifica listino" + FLAGS "H" +END + BUTTON F_AGA 14 BEGID - PROMPT 1 4 "Produttore" + PROMPT 22 4 " Produttore " FLAGS "H" END -SPREADSHEET F_MODULI 78 + + +SPREADSHEET F_MODULI BEGIN PROMPT 1 5 "Moduli" ITEM "Modulo@40" diff --git a/ba/ba1500b.h b/ba/ba1500b.h new file mode 100755 index 000000000..439ad782f --- /dev/null +++ b/ba/ba1500b.h @@ -0,0 +1,34 @@ +#define F_DATALIST 101 +#define F_MODULILIST 102 +#define F_COLONNA1 103 +#define F_COLONNA2 104 +#define F_COLONNA3 105 +#define F_COLONNA4 106 +#define F_COLONNA5 107 +#define F_COLONNA6 108 +#define F_COLONNA7 109 +#define F_COLONNA8 110 +#define F_COLONNA9 111 +#define F_COLONNA10 112 + +#define F_NOMEMOD 101 +#define F_DESCRMOD 102 +#define F_POSTI1 103 +#define F_ACQ1 104 +#define F_AGG1 105 +#define F_POSTI2 106 +#define F_ACQ2 107 +#define F_AGG2 108 +#define F_POSTI3 109 +#define F_ACQ3 110 +#define F_AGG3 111 +#define F_POSTI4 112 +#define F_ACQ4 113 +#define F_AGG4 114 +#define F_POSTI5 115 +#define F_ACQ5 116 +#define F_AGG5 117 +#define F_POSTI6 118 +#define F_ACQ6 119 +#define F_AGG6 120 + diff --git a/ba/ba1500b.uml b/ba/ba1500b.uml new file mode 100755 index 000000000..181856d94 --- /dev/null +++ b/ba/ba1500b.uml @@ -0,0 +1,260 @@ +#include "ba1500b.h" + +TOOLBAR "" 0 20 0 2 + +BUTTON DLG_OK 10 2 +BEGIN + PROMPT -12 -1 "" +END + +BUTTON DLG_QUIT 10 2 +BEGIN + PROMPT -22 -1 "" +END + +ENDPAGE + +PAGE "Modifica listino" -1 -1 79 21 + +DATE F_DATALIST +BEGIN + PROMPT 2 2 "Listino del " + FLAGS "A" +END + +/* +TEXT DLG_NULL +BEGIN + PROMPT 18 3 "Col.1" +END +NUMBER F_COLONNA1 2 +BEGIN + PROMPT 2 4 "Numero posti " + FLAGS "D" +END + +TEXT DLG_NULL +BEGIN + PROMPT 28 3 "Col.2" +END +NUMBER F_COLONNA2 2 +BEGIN + PROMPT 29 4 "" + MESSAGE ENABLE,F_COLONNA3 + MESSAGE EMPTY DISABLE,F_COLONNA3 +END + +TEXT DLG_NULL +BEGIN + PROMPT 34 3 "Col.3" +END +NUMBER F_COLONNA3 2 +BEGIN + PROMPT 35 4 "" + MESSAGE ENABLE,F_COLONNA4 + MESSAGE EMPTY DISABLE,F_COLONNA4 +END + +TEXT DLG_NULL +BEGIN + PROMPT 44 3 "Col.4" +END +NUMBER F_COLONNA4 2 +BEGIN + PROMPT 41 4 "" + MESSAGE ENABLE,F_COLONNA5 + MESSAGE EMPTY DISABLE,F_COLONNA5 +END + +TEXT DLG_NULL +BEGIN + PROMPT 46 3 "Col.5" +END +NUMBER F_COLONNA5 2 +BEGIN + PROMPT 47 4 "" + MESSAGE ENABLE,F_COLONNA6 + MESSAGE EMPTY DISABLE,F_COLONNA6 +END +TEXT DLG_NULL +BEGIN + PROMPT 52 3 "Col.6" +END +NUMBER F_COLONNA6 2 +BEGIN + PROMPT 53 4 "" +// MESSAGE ENABLE,F_COLONNA7 +// MESSAGE EMPTY DISABLE,F_COLONNA7 +END +*/ +SPREADSHEET F_MODULILIST +BEGIN + PROMPT 1 5 "Moduli" + ITEM "Modulo@F" + ITEM "Descrizione@40" + ITEM "Posti" + ITEM "Acquisto" + ITEM "Aggiornamento" + ITEM "Posti" + ITEM "Acquisto" + ITEM "Aggiornamento" + ITEM "Posti" + ITEM "Acquisto" + ITEM "Aggiornamento" + ITEM "Posti" + ITEM "Acquisto" + ITEM "Aggiornamento" + ITEM "Posti" + ITEM "Acquisto" + ITEM "Aggiornamento" + ITEM "Posti" + ITEM "Acquisto" + ITEM "Aggiornamento" +END + +ENDPAGE + +ENDMASK + +PAGE "Campo" -1 -1 79 18 + +STRING F_NOMEMOD 2 +BEGIN + PROMPT 1 1 "Codice modulo " + FLAGS "D" +END + +STRING F_DESCRMOD 40 +BEGIN + PROMPT 1 2 "Descrizione " + FLAGS "D" +END + +NUMBER F_POSTI1 2 +BEGIN + PROMPT 1 3 "Numero posti " + FLAGS "D" +END + +NUMBER F_ACQ1 7 +BEGIN + PROMPT 18 3 "Acquisto " +END + +NUMBER F_AGG1 7 +BEGIN + PROMPT 44 3 "Aggiornamento " +END + +NUMBER F_POSTI2 2 +BEGIN + PROMPT 1 4 "Numero posti " + MESSAGE ENABLE ,F_ACQ2|ENABLE ,F_AGG2 |ENABLE,F_POSTI3 + MESSAGE EMPTY DISABLE ,F_ACQ2|DISABLE ,F_AGG2|CLEAR,F_POSTI3|CHECK,F_POSTI3 +END + +NUMBER F_ACQ2 7 +BEGIN + PROMPT 18 4 "Acquisto " +END + +NUMBER F_AGG2 7 +BEGIN + PROMPT 44 4 "Aggiornamento " + +END + +NUMBER F_POSTI3 2 +BEGIN + PROMPT 1 5 "Numero posti " + + MESSAGE ENABLE ,F_ACQ3|ENABLE ,F_AGG3|ENABLE,F_POSTI4 + MESSAGE EMPTY DISABLE ,F_ACQ3|DISABLE ,F_AGG3|CLEAR,F_POSTI4|CHECK,F_POSTI4 +END + +NUMBER F_ACQ3 7 +BEGIN + PROMPT 18 5 "Acquisto " + +END + +NUMBER F_AGG3 7 +BEGIN + PROMPT 44 5 "Aggiornamento " + +END + +NUMBER F_POSTI4 2 +BEGIN + PROMPT 1 6 "Numero posti " + + MESSAGE ENABLE ,F_ACQ4|ENABLE ,F_AGG4|ENABLE,F_POSTI5 + MESSAGE EMPTY DISABLE ,F_ACQ4|DISABLE ,F_AGG4|CLEAR,F_POSTI5|CHECK,F_POSTI5 +END + +NUMBER F_ACQ4 7 +BEGIN + PROMPT 18 6 "Acquisto " + +END + +NUMBER F_AGG4 7 +BEGIN + PROMPT 44 6 "Aggiornamento " + +END + +NUMBER F_POSTI5 2 +BEGIN + PROMPT 1 7 "Numero posti " + + MESSAGE ENABLE ,F_ACQ5|ENABLE ,F_AGG5|ENABLE,F_POSTI6 + MESSAGE EMPTY DISABLE ,F_ACQ5|DISABLE ,F_AGG5|CLEAR,F_POSTI6|CHECK,F_POSTI6 +END + +NUMBER F_ACQ5 7 +BEGIN + PROMPT 18 7 "Acquisto " + +END + +NUMBER F_AGG5 7 +BEGIN + PROMPT 44 7 "Aggiornamento " + +END + +NUMBER F_POSTI6 2 +BEGIN + PROMPT 1 8 "Numero posti " + + MESSAGE ENABLE ,F_ACQ6|ENABLE ,F_AGG6 + MESSAGE EMPTY DISABLE ,F_ACQ6|DISABLE ,F_AGG6 +END + +NUMBER F_ACQ6 7 +BEGIN + PROMPT 18 8 "Acquisto " + +END + +NUMBER F_AGG6 7 +BEGIN + PROMPT 44 8 "Aggiornamento " + +END + +BUTTON DLG_OK 10 2 +BEGIN + PROMPT -12 -1 "" +END + +BUTTON DLG_CANCEL 10 2 +BEGIN + PROMPT -22 -1 "" +END + +ENDPAGE + +ENDMASK + diff --git a/ba/ba1600.cpp b/ba/ba1600.cpp index d82e012cf..49c9745df 100755 --- a/ba/ba1600.cpp +++ b/ba/ba1600.cpp @@ -166,8 +166,8 @@ bool TInstall_ini::update_prices(const char* from) CHECK(fexist(from), "Can't find listino prezzi"); TConfig from_ini(from); from_ini.write_protect(); - const TDate curr_date = get("Listino","Main"); - const TDate from_date = from_ini.get("Listino","Main"); + const TDate curr_date(get("Listino","Main")); + const TDate from_date(from_ini.get("Listino","Main")); if (from_date < curr_date) return FALSE; @@ -178,6 +178,7 @@ bool TInstall_ini::update_prices(const char* from) FOR_EACH_ARRAY_ROW_BACK(modules, r, row) if (row->len() == 2) { TAssoc_array& prices = from_ini.list_variables(*row); + set_paragraph(*row); FOR_EACH_ASSOC_STRING(prices, obj, key, str) { const TFixed_string price(key); @@ -287,10 +288,10 @@ TAuto_token_string& TAuto_token_string::create(const char* ts) } /////////////////////////////////////////////////////////// -// Maschera modulo +// Maschera composizione del modulo /////////////////////////////////////////////////////////// -class TModule_mask : public TMask +class TMod_composition_msk : public TMask { protected: static bool sheet_notify(TSheet_field& sf, int row, KEY key); @@ -307,12 +308,12 @@ public: void load(const TString& module); void save(); - TModule_mask(); - virtual ~TModule_mask() { } + TMod_composition_msk(); + virtual ~TMod_composition_msk() { } }; // Cerca un file nello sheet principale -bool TModule_mask::find(const TString& name) const +bool TMod_composition_msk::find(const TString& name) const { TSheet_field& sf = sfield(F_SHEET); FOR_EACH_SHEET_ROW_BACK(sf, r, row) @@ -324,7 +325,7 @@ bool TModule_mask::find(const TString& name) const } // Toglie il file dallo sheet dei mancanti -bool TModule_mask::kill_missing(const char* name, bool update) +bool TMod_composition_msk::kill_missing(const char* name, bool update) { TSheet_field& miss = sfield(F_MISSING); FOR_EACH_SHEET_ROW_BACK(miss, r, row) @@ -338,7 +339,7 @@ bool TModule_mask::kill_missing(const char* name, bool update) return r >= 0; } -bool TModule_mask::sheet_notify(TSheet_field& sf, int r, KEY key) +bool TMod_composition_msk::sheet_notify(TSheet_field& sf, int r, KEY key) { bool ok = TRUE; switch(key) @@ -357,7 +358,7 @@ bool TModule_mask::sheet_notify(TSheet_field& sf, int r, KEY key) if (items > 0) { - TModule_mask& msk = (TModule_mask&)sf.mask(); + TMod_composition_msk& msk = (TMod_composition_msk&)sf.mask(); TString16 module = sf.row(r).get(2); if (module.len() < 3) @@ -426,7 +427,7 @@ bool TModule_mask::sheet_notify(TSheet_field& sf, int r, KEY key) return ok; } -bool TModule_mask::missing_notify(TSheet_field& sf, int r, KEY key) +bool TMod_composition_msk::missing_notify(TSheet_field& sf, int r, KEY key) { bool ok = TRUE; if (key == K_INS) @@ -452,7 +453,7 @@ bool TModule_mask::missing_notify(TSheet_field& sf, int r, KEY key) return ok; } -bool TModule_mask::file_handler(TMask_field& f, KEY k) +bool TMod_composition_msk::file_handler(TMask_field& f, KEY k) { if (k == K_F9) { @@ -493,14 +494,14 @@ bool TModule_mask::file_handler(TMask_field& f, KEY k) if (k = K_TAB && f.focusdirty()) { - TModule_mask& msk = (TModule_mask&)f.mask().get_sheet()->mask(); + TMod_composition_msk& msk = (TMod_composition_msk&)f.mask().get_sheet()->mask(); msk.kill_missing(f.get(), TRUE); } return TRUE; } -bool TModule_mask::edit_handler(TMask_field& f, KEY k) +bool TMod_composition_msk::edit_handler(TMask_field& f, KEY k) { if (k == K_SPACE) { @@ -517,7 +518,7 @@ bool TModule_mask::edit_handler(TMask_field& f, KEY k) return TRUE; } -bool TModule_mask::link_handler(TMask_field& f, KEY k) +bool TMod_composition_msk::link_handler(TMask_field& f, KEY k) { if (k == K_SPACE) { @@ -542,7 +543,7 @@ bool TModule_mask::link_handler(TMask_field& f, KEY k) return TRUE; } -bool TModule_mask::deselect_handler(TMask_field& f, KEY k) +bool TMod_composition_msk::deselect_handler(TMask_field& f, KEY k) { if (k == K_SPACE) { @@ -565,7 +566,7 @@ static int file_compare(const TObject** o1, const TObject** o2) return cmp; } -void TModule_mask::load(const TString& module) +void TMod_composition_msk::load(const TString& module) { TWait_cursor hourglass; set(F_MODULE, module); @@ -619,7 +620,7 @@ void TModule_mask::load(const TString& module) arr.sort(); } -void TModule_mask::save() +void TMod_composition_msk::save() { TWait_cursor hourglass; TSheet_field& sheet = sfield(F_SHEET); @@ -667,7 +668,7 @@ void TModule_mask::save() } -TModule_mask::TModule_mask() +TMod_composition_msk::TMod_composition_msk() : TMask("ba1600b") { set_handler(F_DESELECT, deselect_handler); @@ -683,6 +684,22 @@ TModule_mask::TModule_mask() miss.sheet_mask().set_handler(100, link_handler); } +/////////////////////////////////////////////////////////// +// Maschera del modulo +/////////////////////////////////////////////////////////// + +class TModule_mask : public TMask +{ + bool _dirty_composition; + bool module_dependent(int row, TString_array &p_submodules, TString16 &sub_mod, TString16 &ver, int & patch) const ; +public: + + bool check_needed() {return _dirty_composition;} + void need_check( bool val=TRUE ) {_dirty_composition=val;} + bool check_patchlevels( TMod_composition_msk &mm); + ~TModule_mask() {} +}; + /////////////////////////////////////////////////////////// // Maschera principale /////////////////////////////////////////////////////////// @@ -690,11 +707,12 @@ TModule_mask::TModule_mask() class TFascicolator_mask : public TMask { protected: - static bool sheet_notify(TSheet_field& f, int row, KEY k); static bool confirm_handler(TMask_field& f, KEY k); static bool list_handler(TMask_field& f, KEY k); static bool save_handler(TMask_field& f, KEY k); static bool import_export_handler(TMask_field& f, KEY k); + + static bool modules_notify(TSheet_field& f, int row, KEY k); bool zip_file(const char* archive, const char* file) const; int split_file(const TFilename& file, long size) const; @@ -714,29 +732,153 @@ public: TFascicolator_mask(); virtual ~TFascicolator_mask() { } }; + -bool TFascicolator_mask::sheet_notify(TSheet_field& f, int row, KEY k) +bool TFascicolator_mask::modules_notify(TSheet_field& f, int row, KEY k) { bool ok = TRUE; if (k == K_INS || k == K_DEL) ok = FALSE; + if (k == K_TAB) + { + TModule_mask &mm =(TModule_mask &)f.sheet_mask(); + mm.need_check(FALSE); + } return ok; } - + +// controlla se il modulo in curr_row dipende da uno dei sottomoduli nell'array p_submodules +// e ne restituisce : +//TString16 &sub_mod, : il codice del (primo) sottomodulo da cui dipende +//TString16 &ver, : la propria versione +//int & patch : la propria patchlevel +bool TModule_mask::module_dependent(int rownum, TString_array &p_submodules, TString16 &sub_mod, TString16 &ver, int & patch) const +{ + TSheet_field& modsheet = get_sheet()->mask().sfield(F_SHEET); + TToken_string& curr_row=modsheet.row(rownum); + TAuto_token_string ext_mod=curr_row.get(modsheet.cid2index(S_EXTERN)); + const int smods = ext_mod.blank() ? 0 : ext_mod.items() ; + for (int c=0; c < smods; c++) + { + // is an external SUB module ? + sub_mod = ext_mod.get(c); + if (sub_mod[2]!='\0' ) + { + // check patched submodules + const int pmods = p_submodules.items(); + for (int p=0; p < pmods; p++) + { + if (p_submodules.row(p) == sub_mod) + { + ver=curr_row.get(modsheet.cid2index(S_VERSION)); + patch=atoi(curr_row.get(modsheet.cid2index(S_PATCHLEVEL))); + return TRUE; + } + } // loop over patched modules + } + } // loop over external modules + return FALSE; +} + +bool TModule_mask::check_patchlevels( TMod_composition_msk &mm) +{ + const TString& module = get(S_MODULE); + const TString& version =get(S_VERSION); + const int patchlev = get_int(S_PATCHLEVEL); + + // crea la lista dei sottomoduli + TSheet_field& sf = mm.sfield(F_SHEET); + TString_array patched_submodules,submodules; + FOR_EACH_SHEET_ROW(sf, idx, riga) + { + TToken_string& curr_row=sf.row(idx); + TString16 submod = curr_row.get(2); + if (*curr_row.get(1)>' ') + { + if (patched_submodules.find(submod)<0) + patched_submodules.add(submod); + } else { + if (submodules.find(submod)<0) + submodules.add(submod); + } + } + + // cerca i moduli che includono i sottomoduli patchati + bool need_update(FALSE); + TString16 sub_mod, sub_ver; + int sub_patch; + TSheet_field& modsheet = get_sheet()->mask().sfield(F_SHEET); + FOR_EACH_SHEET_ROW(modsheet, midx, mriga) + { + TToken_string& curr_row=modsheet.row(midx); + TString16 mod_code(curr_row.get(modsheet.cid2index(S_MODULE))); + if (module_dependent(midx,patched_submodules, sub_mod, sub_ver, sub_patch)) + { + if (version == sub_ver) + { + if ( patchlev > sub_patch + && yesno_box("Il modulo '%s' dipende dal sottomodulo '%s'.\n Aggiorno il suo numero di patch a %d ?",(const char *)mod_code,(const char *)sub_mod,patchlev)) + { + curr_row.add(patchlev , modsheet.cid2index(S_PATCHLEVEL)); + curr_row.add(get(S_DATE) , modsheet.cid2index(S_DATE)); + need_update=TRUE; + } + } else + if (!sub_ver.blank()) + warning_box("Il modulo '%s', dipendente dal sottomodulo '%s' \nha codice di release %s", + (const char *)mod_code, (const char *)sub_mod,(const char *)sub_ver); + } + else if (module_dependent(midx,submodules, sub_mod, sub_ver, sub_patch)) + { + if (version == sub_ver) + { + if ( patchlev > sub_patch + && noyes_box("Il modulo '%s' dipende da sottomoduli del modulo '%s'.\n Aggiorno il suo numero di patch a %d ?",(const char *)mod_code,(const char *)module,patchlev)) + { + curr_row.add(patchlev , modsheet.cid2index(S_PATCHLEVEL)); + curr_row.add(get(S_DATE) , modsheet.cid2index(S_DATE)); + need_update=TRUE; + } + } else + if (!sub_ver.blank()) + warning_box("Il modulo '%s', dipendente da sottomoduli del modulo '%s'\nha codice di release %s", + (const char *)mod_code, (const char *)sub_mod,(const char *)sub_ver); + } + } + if (need_update) + modsheet.force_update(); + return TRUE; +} + +bool TFascicolator_mask::patchl_handler(TMask_field& f, KEY k) +{ + if (k == K_TAB && f.focusdirty()) + { + TModule_mask& m = (TModule_mask&)f.mask(); + m.need_check(); + } + return TRUE; +} + + bool TFascicolator_mask::list_handler(TMask_field& f, KEY k) { if (k == K_SPACE) { - const TMask& m = f.mask(); + TModule_mask& m = (TModule_mask&)f.mask(); const TString& module = m.get(S_MODULE); + const int patchlev = m.get_int(S_PATCHLEVEL); + if (module.not_empty()) { - TModule_mask mm; + TMod_composition_msk mm; mm.load(module); if (mm.run() == K_ENTER) mm.save(); - } - } + m.need_check(); + } + } + } return TRUE; } @@ -744,13 +886,14 @@ bool TFascicolator_mask::confirm_handler(TMask_field& f, KEY k) { if (k == K_SPACE) { - TMask& m = f.mask(); + TModule_mask& m = (TModule_mask& )f.mask(); const TString& module = m.get(S_MODULE); + const patchlevel=m.get_int(S_PATCHLEVEL); { TInstall_ini ini; ini.set_paragraph(module); ini.set("Versione", m.get(S_VERSION)); - ini.set("Patch", m.get(S_PATCHLEVEL)); + ini.set("Patch", patchlevel); ini.set("Data", m.get(S_DATE)); ini.set("Moduli", m.get(S_EXTERN)); ini.set("PreProcess", m.get(S_PREPROCESS)); @@ -768,6 +911,13 @@ bool TFascicolator_mask::confirm_handler(TMask_field& f, KEY k) } } } + if (patchlevel>0 && m.check_needed()) + { + // controlla le consistenze tra patch di moduli diversi intrinsecamente correlati + TMod_composition_msk mc; + mc.load(module); + m.check_patchlevels(mc); + } } return TRUE; } @@ -1296,7 +1446,7 @@ TFascicolator_mask::TFascicolator_mask() : TMask("ba1600a") { TSheet_field& s = sfield(F_SHEET); - s.set_notify(sheet_notify); + s.set_notify(modules_notify); TMask& m = s.sheet_mask(); m.set_handler(DLG_OK, confirm_handler); diff --git a/ba/ba1700.cpp b/ba/ba1700.cpp index 4326a54ae..3b1252614 100755 --- a/ba/ba1700.cpp +++ b/ba/ba1700.cpp @@ -23,6 +23,7 @@ #define C_CURRDATAREL 8 #define C_ISPATCH 9 + HIDDEN int compare_version(const char* v1, int p1, const char* v2, int p2) { TString16 ver1(v1), ver2(v2); @@ -78,6 +79,7 @@ protected: bool can_install(const char* module, TInstall_ini& ini); void install_selection(); + bool install_patches(const TString& module, const TString& lastrelease, int lastpatch); bool do_process(TToken_string& commands) const; bool pre_process(TInstall_ini& ini, const char* module) const; @@ -277,9 +279,13 @@ bool TInstaller_mask::autoload() found=(module == row(r).get(C_CODE) ); if (found) { - const char * patchversion = ini.get("Versione"); - if (mask_rows.row(r+1).get(C_RELEASE) == patchversion) - mask_rows.row(r+1).add(patchlevel, C_PATCH); + TString16 patchversion = ini.get("Versione"); + if (patchversion == mask_rows.row(r+1).get(C_RELEASE) // se le versioni corrispondono ... + && patchlevel > atoi(mask_rows.row(r+1).get(C_PATCH)) ) // ..e il patchlevel è superiore + { + mask_rows.row(r+1).add(patchlevel, C_PATCH); // aggiorna il patchlevel mostrato per il modulo + force_update(r+1); + } } else add_module(ini, module, TRUE); } @@ -474,7 +480,9 @@ bool TInstaller_mask::move_module(const TString& module, TInstall_ini& ini, bool bool TInstaller_mask::install(const TString& module, int patchlevel) { bool ok = FALSE; - + TString16 lastrelease; // release che sto installando + int lastpatch=patchlevel; // patchlevel che sto installando + const TString& path = get(F_PATH); TFilename ininame = path; ininame.add(module); @@ -493,6 +501,8 @@ bool TInstaller_mask::install(const TString& module, int patchlevel) TInstall_ini ini(ininame); ini.write_protect(); + lastpatch=ini.get_int("Patch",module); + lastrelease=ini.get("Versione",module); if (!can_install(module, ini)) return FALSE; @@ -507,7 +517,7 @@ bool TInstaller_mask::install(const TString& module, int patchlevel) ok = pre_process(ini, module); if (!ok) return FALSE; } - + TString msg("Decompressione"); if (patchlevel > 0 ) msg << " della patch " << patchlevel ; @@ -599,6 +609,7 @@ bool TInstaller_mask::install(const TString& module, int patchlevel) } else { + // non c'e' il .ini del modulo ma un unico "install.ini" ininame = path; ininame.add(TInstall_ini::default_name()); ok = fexist(ininame); @@ -606,6 +617,8 @@ bool TInstaller_mask::install(const TString& module, int patchlevel) { TInstall_ini ini(ininame); ini.write_protect(); + lastpatch=ini.get_int("Patch",module); + lastrelease=ini.get("Versione",module); if (!can_install(module, ini)) return FALSE; @@ -640,16 +653,51 @@ bool TInstaller_mask::install(const TString& module, int patchlevel) if (ok) { - TInstall_ini ini; - ini.set("DiskPath", path); - ini.set("Data", TDate(TODAY), module); - ini.update_prices(ininame); + { + TInstall_ini ini; + ini.set("DiskPath", path); + ini.set("Data", TDate(TODAY), module); + ini.update_prices(ininame); + } + // Non togliere le parentesi graffe soprastanti per permettere l'aggiornamento fisico del .ini (CON LA CHIAMATA DEL DISTRUTTORE) + update_version(); } - // Non spostare nell'if precedente: permettere l'aggiornamento del .ini - if (ok) - update_version(); + if (patchlevel == 0) // Se installo un modulo pricipale ... + { + // ... installo DOPO tutte le patches successive + install_patches(module, lastrelease, lastpatch); + } + + return ok; +} + + +bool TInstaller_mask::install_patches(const TString& module, const TString& lastrelease, int lastpatch) +{ + bool ok = FALSE; + TString_array modules; + TFilename ininame = get(F_PATH); + ininame.add(module); + ininame << "0???a.ini"; + modules.destroy(); + list_files(ininame, modules); + modules.sort(); // sort by patch number + FOR_EACH_ARRAY_ROW(modules, am, arow) + { + TString& ininame = *arow; + ininame.lower(); + const int pos = ininame.find("a.ini"); + CHECKS(pos >= 6, "Invalid installation configuration: ", (const char*)ininame); + const TString16 patchmodule = ininame.mid(pos-6, 2); + TConfig ini(ininame, patchmodule); + const int patchlevel = ini.get_int("Patch"); + const char * patchversion = ini.get("Versione"); + if (lastrelease == patchversion // installa solo le patch della stessa ver.. + && lastpatch < patchlevel) // ... e patch superiore + ok = install(module, patchlevel); + } return ok; } @@ -720,35 +768,17 @@ void TInstaller_mask::install_selection() } if (ok) { - ok = install(modulo, is_patch ? newpatch : 0); + + if (is_patch) + { + ok = install_patches(modulo, oldver, oldpatch); // installa tutte le patch + if (!ok) + ok = install(modulo, newpatch); // re-installa l'ultima per sicurezza () + } + else + ok = install(modulo, 0); // installa il modulo if (ok) _installed = TRUE; // Setta il flag di almeno un modulo installato - if (!is_patch) // Se installo un modulo pricipale ... - { - // ... allora installo tutte le patches - TString_array modules; - TFilename ininame = get(F_PATH); - ininame.add("??0???a.ini"); - modules.destroy(); - list_files(ininame, modules); - modules.sort(); // sort by patch number - FOR_EACH_ARRAY_ROW(modules, am, arow) - { - TString& ininame = *arow; - ininame.lower(); - const int pos = ininame.find("a.ini"); - CHECKS(pos >= 6, "Invalid installation configuration: ", (const char*)ininame); - const TString16 patchmodule = ininame.mid(pos-6, 2); - if (patchmodule == modulo) - { - TConfig ini(ininame, patchmodule); - const int patchlevel = ini.get_int("Patch"); - const char * patchversion = ini.get("Versione"); - if (patchversion == newver) // installa solo le patch della stessa ver - ok = install(modulo, patchlevel); - } - } - } if (ok) check(r, FALSE); } diff --git a/ba/ba3100.cpp b/ba/ba3100.cpp index 00e64e7f5..153c32e37 100755 --- a/ba/ba3100.cpp +++ b/ba/ba3100.cpp @@ -250,22 +250,18 @@ char TGeneric_table_app::frequenza_versamenti(long firm, int year) const HIDDEN bool coddel_handler(TMask_field& f, KEY k) { - const TMask& m = f.mask(); + TMask& m = f.mask(); if (!m.query_mode() && k == K_TAB) { const short id = f.dlg(); - long cod; - if (id == F_BANCA1) - cod = m.get_long(F_BANCA1); - if (id == F_CONCESSIONE) - cod = m.get_long(F_CONCESSIONE); + const long cod = m.get_long(id == F_BANCA1 ? F_BANCA1 : F_CONCESSIONE); - if (id == F_BANCA1) - if (cod != 0) - f.mask().hide(F_CONCESSIONE); + //if (id == F_BANCA1) + // if (cod != 0) + // m.hide(F_CONCESSIONE); - if (id == F_CONCESSIONE) + //if (id == F_CONCESSIONE || id == F_BANCA1) if (cod != 0) { const long firm = m.get_long(F_DITTA); @@ -281,15 +277,28 @@ HIDDEN bool coddel_handler(TMask_field& f, KEY k) if (anag.read() == NOERR) { const bool titcf = anag.get_bool("TITCF"); - if (!titcf) + const bool isdel = anag.get_long("TIPOSTDEL") == 0l; + + if (titcf && isdel) + return TRUE; // Se e' titolare CF e ha scelto la delega vanno abilitati sia + // Il codice conc. che la banca + if (id == F_CONCESSIONE) { - f.mask().hide(F_CONCESSIONE); - return f.error_box("Concessione non ammessa senza conto fiscale"); + if (!titcf) + { + m.hide(F_CONCESSIONE); + f.error_box("Concessione non ammessa senza conto fiscale"); + } + else + { + m.hide(F_BANCA1); + m.hide(F_BANCA2); + } } - f.mask().hide(F_BANCA1); - f.mask().hide(F_BANCA2); + else + m.hide(F_CONCESSIONE); } - } + } } } return TRUE; diff --git a/ba/ba5200a.uml b/ba/ba5200a.uml index 56fc01cb2..c73b42e8a 100755 --- a/ba/ba5200a.uml +++ b/ba/ba5200a.uml @@ -63,7 +63,6 @@ BEGIN PROMPT 49 2 "Codice registro " Help "Codice del registro" FIELD CODREG - USE LF_TABREG COPY ALL F_ANNO FLAGS "GUZ" KEY 1 @@ -241,7 +240,7 @@ BEGIN GROUP 2 3 4 5 6 7 10 FIELD CODULC USE LF_UNLOC - JOIN LF_COMUNI TO LF_UNLOC KEY 1 INTO COM=COMULC + JOIN LF_COMUNI TO LF_UNLOC KEY 1 INTO COM=COMULC INPUT CODDITTA F_CODDITTA SELECT INPUT CODULC F_CODULC DISPLAY "Codice" CODDITTA diff --git a/ba/bacnv.cpp b/ba/bacnv.cpp index 4dbfba825..f6f5d17ed 100755 --- a/ba/bacnv.cpp +++ b/ba/bacnv.cpp @@ -26,7 +26,7 @@ #include "..\cg\cglib02.h" -#define usage "Errore - uso : bacnv [1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16] ditta" +#define usage "Errore - uso : bacnv [1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17] ditta" /////////////////////////////////////////////////////////////////////////////////////////////////////// // Applicazione di conversione archivi XBase, valida per tutti e 4 i tipi di DLL @@ -186,6 +186,7 @@ public: void convert_ucc() const; void convert_cap() const; void convert_uue() const; + void convert_pim2prm() const; TConversione_archivi() : _oldditta(0), _codditta(0), _error(0) {} }; @@ -328,6 +329,10 @@ bool TConversione_archivi::menu(MENU_TAG) convert_uue(); convert_cap(); break; + case 17: + if (_codditta > 0) + convert_pim2prm(); + break; default: break; } @@ -1610,6 +1615,26 @@ void TConversione_archivi::convert_cap() const } +// Effettua copia dei PIM in PRM, come richiesto dalla PRASSI +void TConversione_archivi::convert_pim2prm() const +{ + TTable pim("PIM"); + TTable prm("PRM"); + TString anno; + + TProgind pi(0, "Copia progressi IVA / progressivi Registri...", FALSE, FALSE); + for (pim.first(); !pim.eof(); pim.next()) + { + anno = pim.get("CODTAB").mid(0,4); + if (atoi(anno) > 1997) + { + prm.curr() = pim.curr(); + prm.put("COD", "PRM"); + prm.write(); // Ignora eventuali errori, li scrive solo se non ci sono + } + } +} + /////////////////////////////////////////////////////////// // Programma di conversione archivi speciale /////////////////////////////////////////////////////////// @@ -1618,7 +1643,7 @@ int main(int argc,char** argv) { const int r = (argc > 1) ? abs(atoi(argv[1])) : 0; - if (r < 0 || r > 16) + if (r < 0 || r > 17) { error_box(usage); return 100; diff --git a/ba/bainst.ini b/ba/bainst.ini new file mode 100755 index 000000000..6bace35a4 --- /dev/null +++ b/ba/bainst.ini @@ -0,0 +1,206 @@ +[ba] +Data = 10-04-1998 +Descrizione = Base +Dischi = 1 +Moduli = +Patch = 304 +PostProcess = +PreProcess = +Prezzo(1) = 500,180 +Versione = 19980102 + +[ba0] +File(0) = ba00.bmp +File(1) = ba01.bmp +File(2) = ba02.bmp +File(3) = ba03.bmp +File(4) = ba04.bmp +File(5) = ba05.bmp +File(6) = ba06.bmp +File(7) = baprassi.men +Patch = 304 +Versione = 19980102 + +[ba1] +File(8) = ba0.exe +File(9) = ba0100a.msk +File(10) = ba0200a.msk +File(11) = ba0300a.msk +File(12) = ba1.exe +File(13) = ba1100a.msk +File(14) = ba1100b.msk +File(15) = ba1100c.msk +File(16) = ba1100d.msk +File(17) = ba1100e.msk +File(18) = ba1100f.msk +File(19) = ba1100g.msk +File(20) = ba1300a.msk +File(21) = ba1300b.msk +File(22) = ba1400a.msk +File(23) = ba1500a.frm +File(24) = ba1500a.msk +File(25) = ba1600a.msk +File(26) = ba1600b.msk +File(27) = ba1700a.msk +File(28) = ba2.exe +File(29) = ba2100a.msk +File(30) = ba2100b.msk +File(31) = ba2100c.msk +File(32) = ba2100f.msk +File(33) = ba2100r.msk +File(34) = ba2100s.msk +File(35) = ba2100u.msk +File(36) = ba21dt.msk +File(37) = ba21fn.msk +File(38) = ba21nm.msk +File(39) = ba2200.msk +File(40) = ba2300a.msk +File(41) = ba2300b.msk +File(42) = ba2300c.msk +File(43) = ba2300d.msk +File(44) = ba2500a.msk +File(45) = ba3.exe +File(46) = ba3200a.msk +File(47) = ba3300a.msk +File(48) = ba3500a.msk +File(49) = ba3600a.msk +File(50) = ba3601a.msk +File(51) = ba3700a.msk +File(52) = ba3800a.msk +File(53) = ba3800b.msk +File(54) = ba3a00a.msk +File(55) = ba4.exe +File(56) = ba4100a.msk +File(57) = ba4200b.msk +File(58) = ba4200c.msk +File(59) = ba4300a.msk +File(60) = ba4400a.msk +File(61) = ba4500a.msk +File(62) = ba4600a.msk +File(63) = ba5.exe +File(64) = ba5000.msk +File(65) = ba6.exe +File(66) = ba6100a.msk +File(67) = ba6100b.msk +File(68) = ba6200a.msk +File(69) = bacnv.exe +File(70) = bafax.exe +File(71) = bafax01.msk +File(72) = bafax02.msk +File(73) = bagn001a.msk +File(74) = bagn002.msk +File(75) = bagn004.msk +File(76) = bagn005.msk +File(77) = bagn006.msk +File(78) = bainst.exe +File(79) = bainst01.msk +File(80) = bainst02.msk +File(81) = bastais.msk +File(82) = bastban.msk +File(83) = bastclr.msk +File(84) = bastcpg.msk +File(85) = bastcrs.msk +File(86) = bastitl.msk +File(87) = bastiva.msk +File(88) = bastlng.msk +File(89) = bastois.msk +File(90) = baststa.msk +File(91) = baststt.msk +File(92) = bastucc.msk +File(93) = bastucs.msk +File(94) = bastues.msk +File(95) = bastuid.msk +File(96) = bastuiv.msk +File(97) = basture.msk +File(98) = bastuue.msk +File(99) = bastval.msk +File(100) = batbais.msk +File(101) = batbais.rpt +File(102) = batbban.msk +File(103) = batbban.rpt +File(104) = batbclr.msk +File(105) = batbclr.rpt +File(106) = batbcpg.msk +File(107) = batbcpg.rpt +File(108) = batbcrs.msk +File(109) = batbcrs.rpt +File(110) = batbitl.msk +File(111) = batbitl.rpt +File(112) = batbiva.msk +File(113) = batbiva.rpt +File(114) = batblng.msk +File(115) = batblng.rpt +File(116) = batbois.msk +File(117) = batbois.rpt +File(118) = batbrgi.msk +File(119) = batbsta.msk +File(120) = batbsta.rpt +File(121) = batbstt.msk +File(122) = batbstt.rpt +File(123) = batbucc.msk +File(124) = batbucc.rpt +File(125) = batbucs.msk +File(126) = batbucs.rpt +File(127) = batbues.msk +File(128) = batbues.rpt +File(129) = batbuid.msk +File(130) = batbuid.rpt +File(131) = batbuiv.msk +File(132) = batbuiv.rpt +File(133) = batbure.msk +File(134) = batbure.rpt +File(135) = batbuue.msk +File(136) = batbuue.rpt +File(137) = batbval.msk +File(138) = batbval.rpt +File(139) = fconv.ini +File(140) = prassi.aut +File(141) = prassi.hlp +File(142) = prassice.men +File(143) = prassid.ini +File(144) = prassis.ini +File(145) = unzip.pif +File(146) = unzip32.exe +File(147) = zip.pif +File(148) = zip386.bat +File(149) = zip386.exe +File(182) = skeylink.dll|X +Patch = 304 +Versione = 19980102 + +[ba2] +File(150) = recdesc\f10.dir +File(151) = recdesc\f10.trr +File(152) = recdesc\f105.dir +File(153) = recdesc\f105.trr +File(154) = recdesc\f11.dir +File(155) = recdesc\f11.trr +File(156) = recdesc\f12.dir +File(157) = recdesc\f12.trr +File(158) = recdesc\f13.dir +File(159) = recdesc\f13.trr +File(160) = recdesc\f15.dir +File(161) = recdesc\f15.trr +File(162) = recdesc\f2.dir +File(163) = recdesc\f2.trr +File(164) = recdesc\f3.dir +File(165) = recdesc\f3.trr +File(166) = recdesc\f4.dir +File(167) = recdesc\f4.trr +File(168) = recdesc\f5.dir +File(169) = recdesc\f5.trr +File(170) = recdesc\f50.dir +File(171) = recdesc\f50.trr +File(172) = recdesc\f54.dir +File(173) = recdesc\f54.trr +File(174) = recdesc\f6.dir +File(175) = recdesc\f6.trr +File(176) = recdesc\f7.dir +File(177) = recdesc\f7.trr +File(178) = recdesc\f8.dir +File(179) = recdesc\f8.trr +File(180) = recdesc\f9.dir +File(181) = recdesc\f9.trr +Patch = 304 +Versione = 19980102 + diff --git a/ba/bainst04.cpp b/ba/bainst04.cpp new file mode 100755 index 000000000..41a55b5fc --- /dev/null +++ b/ba/bainst04.cpp @@ -0,0 +1,65 @@ +#include +#include +#include +#include +#include +#include "bainst04.h" + +class TInstall_AT : public TSkeleton_application +{ + TMask * _m; +protected: + virtual void main_loop() ; + virtual bool set_ditta() ; // setta i dati ditta + virtual bool set_environment() ; // + +public: + virtual ~TInstall_AT () {} +}; + +// setta i dati ditta +bool TInstall_AT ::set_ditta() +{ + return TRUE; +} + +bool TInstall_AT ::set_environment() +{ + bool ok=TRUE; + if (_m->get_bool(F_USAMENUAVIS)) + ok=fcopy("agaat.men","baprassi.men"); + if (_m->get_bool(F_LOADTAB)) + { + TExternal_app rice("bacnv 1 5 attab.txt"); + ok &= (rice.run()==0); + } + return ok; +} + +void TInstall_AT::main_loop() +{ + TConfig ini("install.ini","at"); + const bool primainst=ini.get("Versione").blank(); + + _m = new TMask ("bainst04.msk"); + if (!primainst) + _m->disable(-G_DITTA); // campi ditta + else + _m->set(F_LOADTAB,"X"); + _m->field(F_USAMENUAVIS).set("X"); + if (_m->run()!=K_QUIT) + { + if (primainst) + { + set_ditta(); + } + set_environment(); + } +} + +int bainst04(int argc, char** argv) +{ + TInstall_AT app; + app.run(argc, argv, "Installazione Avis Provinciale"); + return 0; +} \ No newline at end of file diff --git a/ba/bainst04.h b/ba/bainst04.h new file mode 100755 index 000000000..62451ea21 --- /dev/null +++ b/ba/bainst04.h @@ -0,0 +1,5 @@ +#define F_USAMENUAVIS 101 +#define F_LOADTAB 102 +#define G_PREINST 1 +#define G_POSTINST 2 +#define G_DITTA 3 diff --git a/ba/bainst04.uml b/ba/bainst04.uml new file mode 100755 index 000000000..1f10d2f9f --- /dev/null +++ b/ba/bainst04.uml @@ -0,0 +1,35 @@ +#include "bainst04.h" + +TOOLBAR "" 0 20 0 2 +BUTTON DLG_OK 10 2 +BEGIN + PROMPT -11 -1 "~Conferma" + MESSAGE EXIT,K_ENTER + PICTURE BMP_OK +END +ENDPAGE + +PAGE "Installazione AT" -1 -1 78 8 +// GROUP 1 = PRE-INSTALLATION +// GROUP 2 = POST-INSTALLATION +BOOL F_USAMENUAVIS +BEGIN + FLAGS "D" + PROMPT 2 2 "Usa menu' AVIS" +END + +BOOL F_LOADTAB +BEGIN + PROMPT 2 4 "Carica dati standard" +END + +/*GROUPBOX DLG_NULL 60 4 +BEGIN + FLAG "H" + PROMPT 2 4 " Installazione dati ditta" + GROUP 2 +END +*/ + +ENDPAGE +ENDMASK diff --git a/ba/f3.dir b/ba/f3.dir index fba6be64c..5fc796d67 100755 --- a/ba/f3.dir +++ b/ba/f3.dir @@ -1,3 +1,3 @@ 3 1 -%tabgen|0|0|795|0|Tabelle di studio|50|| +%tabgen|0|0|885|0|Tabelle di studio|50|| diff --git a/ba/f3.trr b/ba/f3.trr index 5cd76c552..78fff9910 100755 --- a/ba/f3.trr +++ b/ba/f3.trr @@ -1,5 +1,5 @@ 3 -58 +63 COD|1|3|0| CODTAB|1|25|0| S0|1|70|0| @@ -42,6 +42,11 @@ R11|4|18|5| R12|4|18|5| R13|4|18|5| R14|4|18|5| +R15|4|18|5| +R16|4|18|5| +R17|4|18|5| +R18|4|18|5| +R19|4|18|5| D0|5|8|0| D1|5|8|0| D2|5|8|0| diff --git a/ba/f4.dir b/ba/f4.dir index a692d3c15..7ed0be13b 100755 --- a/ba/f4.dir +++ b/ba/f4.dir @@ -1,3 +1,3 @@ 4 1 -%tabcom|0|0|795|0|Tabelle comuni|1500|| +%tabcom|0|0|885|0|Tabelle comuni|1500|| diff --git a/ba/f4.trr b/ba/f4.trr index b4850eecc..902f9fec7 100755 --- a/ba/f4.trr +++ b/ba/f4.trr @@ -1,5 +1,5 @@ 4 -58 +63 COD|1|3|0| CODTAB|1|25|0| S0|1|70|0| @@ -42,6 +42,11 @@ R11|4|18|5| R12|4|18|5| R13|4|18|5| R14|4|18|5| +R15|4|18|5| +R16|4|18|5| +R17|4|18|5| +R18|4|18|5| +R19|4|18|5| D0|5|8|0| D1|5|8|0| D2|5|8|0| diff --git a/ba/f5.dir b/ba/f5.dir index f41ed5a22..c68211c3f 100755 --- a/ba/f5.dir +++ b/ba/f5.dir @@ -1,3 +1,3 @@ 5 0 -$tab|0|0|795|0|Tabelle ditta|400|| +$tab|0|0|885|0|Tabelle ditta|400|| diff --git a/ba/f5.trr b/ba/f5.trr index 38113e56b..46e3021d1 100755 --- a/ba/f5.trr +++ b/ba/f5.trr @@ -1,5 +1,5 @@ 5 -58 +63 COD|1|3|0| CODTAB|1|25|0| S0|1|70|0| @@ -42,6 +42,11 @@ R11|4|18|5| R12|4|18|5| R13|4|18|5| R14|4|18|5| +R15|4|18|5| +R16|4|18|5| +R17|4|18|5| +R18|4|18|5| +R19|4|18|5| D0|5|8|0| D1|5|8|0| D2|5|8|0| diff --git a/ba/fconv.ini b/ba/fconv.ini index c7d56c488..97d6ccfaa 100755 --- a/ba/fconv.ini +++ b/ba/fconv.ini @@ -35,5 +35,7 @@ ACNV(118)=77cnv 6 ACNV(119)=77cnv 1 [199516] ACNV(13)=bacnv 16 +[199517] +ACNV(5)=bacnv 17 [EOF] diff --git a/ba/install.ini b/ba/install.ini index 295b1236b..5b08dbfcb 100755 --- a/ba/install.ini +++ b/ba/install.ini @@ -1,31 +1,25 @@ [Main] -Demo = -DiskPath = c:\cdinst~1\disk1\zip -DiskSize = -Listino = -Producer = +Demo = +DiskPath = g:\cdtest\1998102\patches +DiskSize = +Listino = +Prezzo(1) = 450,150 +Producer = [_area_di_base] Descrizione = BASE [ba] Data = 01-01-1998 +Data = 17-03-1998 Descrizione = Base Dischi = 1 Moduli = -Patch = 0 +Patch = 21 PostProcess = PreProcess = -Versione = 19980101 - -[st] -Data = -Descrizione = Gestione studi -Moduli = -Patch = -PostProcess = -PreProcess = -Versione = +Versione = 19980102 +Prezzo(1) = 500 [ai] Data = @@ -94,24 +88,26 @@ PreProcess = Versione = [cg] -Data = 01-01-1998 +Data = 12-03-1998 Descrizione = Contabilita' Generale Dischi = 1 Moduli = ba -Patch = -PostProcess = cgpostin.exe -PreProcess = -Versione = 19980101 +Patch = 18 +PostProcess = bainst -0 CG +PreProcess = +Versione = 19980102 +Prezzo(1) = 1000,350 [sc] -Data = 01-01-1998 +Data = 18-03-1998 Descrizione = Saldaconto Dischi = 1 Moduli = ba,cg -Patch = +Patch = 22 PostProcess = PreProcess = -Versione = 19980101 +Versione = 19980102 +Prezzo(1) = 200,50 [ce] Data = @@ -122,6 +118,7 @@ Patch = PostProcess = PreProcess = Versione = +Prezzo(1)= 700,250 [es] Data = @@ -149,6 +146,7 @@ Patch = PostProcess = PreProcess = Versione = +Prezzo(1)= 2000,700 [nr] Data = @@ -158,19 +156,21 @@ Patch = PostProcess = PreProcess = Versione = +Prezzo(1)= 2000,700 [_area_acquisti_vendite] Descrizione = AREA ACQUISTI E VENDITE [ve] -Data = 01-01-1998 +Data = 27-03-1998 Descrizione = Vendite Dischi = 1 Moduli = ba,cg9,pr9,mg9,sv9 -Patch = +Patch = 302 PostProcess = PreProcess = -Versione = 19980101 +Prezzo(1) = 900,300 +Versione = 19980102 [or] Data = @@ -180,49 +180,54 @@ Patch = PostProcess = PreProcess = Versione = +Prezzo(1)= 900,300 [ef] -Data = 01-01-1998 +Data = 27-03-1998 Descrizione = Effetti Dischi = 1 Moduli = ba,ve0,ve9,cg9 -Patch = +Patch = 302 PostProcess = PreProcess = -Versione = 19980101 +Prezzo(1) = 300,100 +Versione = 19980102 [pr] -Data = 01-01-1998 +Data = 27-03-1998 Descrizione = Provvigioni Agenti Dischi = 1 Moduli = ba,ve0,ve9,cg9 -Patch = +Patch = 302 PostProcess = PreProcess = -Versione = 19980101 +Prezzo(1) = 450,150 +Versione = 19980102 [sv] -Data = 01-01-1998 +Data = 17-03-1998 Descrizione = Statistiche di Vendita Dischi = 1 Moduli = ve -Patch = +Patch = 20 PostProcess = PreProcess = -Versione = 19980101 +Versione = 19980102 +Prezzo(1)= 900,300 [_area_magazzino_produzione] Descrizione = AREA MAGAZZINO E PRODUZIONE [mg] -Data = 01-01-1998 +Data = 27-03-1998 Descrizione = Magazzino Dischi = 1 Moduli = ba,ve9,cg9 -Patch = +Patch = 302 PostProcess = PreProcess = -Versione = 19980101 +Prezzo(1) = 900,300 +Versione = 19980102 [db] Data = @@ -280,16 +285,18 @@ Patch = PostProcess = PreProcess = Versione = +Prezzo(1)= 700,250 [77] -Data = 01-01-1998 +Data = 12-03-1998 Descrizione = Modello 770 Dischi = 1 Moduli = ba -Patch = 0 +Patch = 18 PostProcess = PreProcess = -Versione = 19980101 +Versione = 19980102 +Prezzo(1)= 700,250 [mi] Data = @@ -317,6 +324,7 @@ Patch = PostProcess = PreProcess = Versione = +Prezzo(1)= 400,150 [is] Data = @@ -396,49 +404,172 @@ PostProcess = PreProcess = Versione = -[ce1] -File(0) = ce0.exe -Versione = 19980101 +[ni1] +File(0) = azienda.sch +File(1) = cnvni300.xls +File(10) = foxw2600.esl +File(11) = gedoc.sch +File(12) = hardlock.fll +File(13) = hardlock.txt +File(14) = help.app +File(15) = niprassi.men +File(150) = cgarea.men +File(16) = nota.doc +File(17) = nota.exe +File(18) = nota.hlp +File(19) = nota.ico +File(2) = config.fpw +File(20) = nota.ini +File(21) = notaagg.app +File(22) = notaord.doc +File(23) = notarid.doc +File(24) = notasgn.doc +File(25) = reports.app +File(26) = reset_hl.exe +File(27) = upgrade.app +File(28) = version.txt +File(3) = convert.app +File(4) = crtagg.bat +File(5) = dbfs\ab000102.dbf +File(6) = ditrpt.sch +File(7) = foxtools.fll +File(8) = foxuser.dbf +File(9) = foxuser.fpt +Patch = +Versione = -[sc1] -File(0) = sc0.exe -File(1) = sc01.bmp -File(10) = sc2.exe -File(11) = sc2100a.msk -File(12) = sc2200a.msk -File(13) = sc2300a.msk -File(14) = sc2400a.msk -File(15) = sc3.exe -File(16) = sc3100a.msk -File(17) = sc3100b.msk -File(18) = sc3100c.msk -File(19) = sc3100s.msk -File(2) = sc0100a.msk -File(20) = scprassi.hlp -File(21) = scprassi.men -File(3) = sc0100b.msk -File(4) = sc0100c.msk -File(5) = sc0100p.msk -File(6) = sc1.exe -File(7) = sc1100a.msk -File(8) = sc1200a.msk -File(9) = sc1300a.msk -Versione = 19980101 +[ni2] +File(100) = dbfs\va000103.cdx +File(101) = dbfs\va000103.dbf +File(29) = dbfs\aa000101.cdx +File(30) = dbfs\aa000101.dbf +File(31) = dbfs\ab000101.cdx +File(32) = dbfs\ab000101.dbf +File(33) = dbfs\ab000102.cdx +File(34) = dbfs\ab000201.cdx +File(35) = dbfs\ab000201.dbf +File(36) = dbfs\ab000202.cdx +File(37) = dbfs\ab000202.dbf +File(38) = dbfs\ab000301.cdx +File(39) = dbfs\ab000301.dbf +File(40) = dbfs\ab000302.cdx +File(41) = dbfs\ab000302.dbf +File(42) = dbfs\ab301f.cdx +File(43) = dbfs\ab301f.dbf +File(44) = dbfs\ac000101.cdx +File(45) = dbfs\ac000101.dbf +File(46) = dbfs\ac000201.cdx +File(47) = dbfs\ac000201.dbf +File(48) = dbfs\ac000301.cdx +File(49) = dbfs\ac000301.dbf +File(50) = dbfs\ac000401.cdx +File(51) = dbfs\ac000401.dbf +File(52) = dbfs\ac101f.cdx +File(53) = dbfs\ac101f.dbf +File(54) = dbfs\ac105.cdx +File(55) = dbfs\ac105.dbf +File(56) = dbfs\ac201f.cdx +File(57) = dbfs\ac201f.dbf +File(58) = dbfs\ac301f.cdx +File(59) = dbfs\ac301f.dbf +File(60) = dbfs\ad000101.cdx +File(61) = dbfs\ad000101.dbf +File(62) = dbfs\azienda.dbf +File(63) = dbfs\ca000101.cdx +File(64) = dbfs\ca000101.dbf +File(65) = dbfs\ca000102.cdx +File(66) = dbfs\ca000102.dbf +File(67) = dbfs\da000101.cdx +File(68) = dbfs\da000101.dbf +File(69) = dbfs\da000102.cdx +File(70) = dbfs\da000102.dbf +File(71) = dbfs\da000103.cdx +File(72) = dbfs\da000103.dbf +File(73) = dbfs\ditrpt.cdx +File(74) = dbfs\ditrpt.dbf +File(75) = dbfs\doctpl.cdx +File(76) = dbfs\doctpl.dbf +File(77) = dbfs\gedit.cdx +File(78) = dbfs\gedit.dbf +File(79) = dbfs\gedoc.cdx +File(80) = dbfs\gedoc.dbf +File(81) = dbfs\gedoc.fpt +File(82) = dbfs\gesoc.cdx +File(83) = dbfs\gesoc.dbf +File(84) = dbfs\pa101.cdx +File(85) = dbfs\pa101.dbf +File(86) = dbfs\pb000101.cdx +File(87) = dbfs\pb000101.dbf +File(88) = dbfs\pc000101.cdx +File(89) = dbfs\pc000101.dbf +File(90) = dbfs\pd000101.cdx +File(91) = dbfs\pd000101.dbf +File(92) = dbfs\pd000102.cdx +File(93) = dbfs\pd000102.dbf +File(94) = dbfs\pe000101.cdx +File(95) = dbfs\pe000101.dbf +File(96) = dbfs\va000101.cdx +File(97) = dbfs\va000101.dbf +File(98) = dbfs\va000102.cdx +File(99) = dbfs\va000102.dbf +Patch = +Versione = -[ef1] -File(1) = ef0100a.msk -File(10) = efprassi.hlp -File(11) = efprassi.men -File(2) = ef0200a.msk -File(21) = ef01.bmp -File(3) = ef0300a.msk -File(4) = ef0300c.msk -File(5) = ef0400a.msk -File(6) = ef0500a.msk -File(7) = ef0600a.msk -File(8) = ef0800a.msk -File(9) = ef0900a.msk -Versione = 19980101 +[ni3] +File(102) = sys\calcoli.cdx +File(103) = sys\calcoli.dbf +File(104) = sys\calcoli.fpt +File(105) = sys\cfgalle.cdx +File(106) = sys\cfgalle.dbf +File(107) = sys\cfgnota.cdx +File(108) = sys\cfgnota.dbf +File(109) = sys\colexp.cdx +File(110) = sys\colexp.dbf +File(111) = sys\contexts.cdx +File(112) = sys\contexts.dbf +File(113) = sys\contexts.fpt +File(114) = sys\conv02.cdx +File(115) = sys\conv02.dbf +File(116) = sys\datalist.cdx +File(117) = sys\datalist.dbf +File(118) = sys\datatags.cdx +File(119) = sys\datatags.dbf +File(120) = sys\fldnames.cdx +File(121) = sys\fldnames.dbf +File(122) = sys\helpctx.cdx +File(123) = sys\helpctx.dbf +File(124) = sys\keys2230.cdx +File(125) = sys\keys2230.dbf +File(126) = sys\qrydef.cdx +File(127) = sys\qrydef.dbf +File(128) = sys\relation.cdx +File(129) = sys\relation.dbf +File(130) = sys\riepilog.cdx +File(131) = sys\riepilog.dbf +File(132) = sys\rownam.cdx +File(133) = sys\rownam.dbf +File(134) = sys\segna.cdx +File(135) = sys\segna.dbf +File(136) = sys\sgnrpt.cdx +File(137) = sys\sgnrpt.dbf +File(138) = sys\sgntbl.cdx +File(139) = sys\sgntbl.dbf +File(140) = sys\tblrpt.cdx +File(141) = sys\tblrpt.dbf +File(142) = sys\wintoscr.cdx +File(143) = sys\wintoscr.dbf +File(144) = sys\xfer05.cdx +File(145) = sys\xfer05.dbf +Patch = +Versione = + +[ni4] +File(146) = modelli\word6\ni95003.doc +File(147) = modelli\word6\nota.dot +File(148) = modelli\word6\notaord.doc +File(149) = modelli\word6\notarid.doc +Patch = +Versione = [ef2] File(12) = recdesc\f14.dir @@ -452,7 +583,8 @@ Versione = 19980101 [770] File(0) = 7700.bmp File(1) = 77area.men -Versione = 19980101 +Patch = 18 +Versione = 19980102 [771] File(10) = 770100g.msk @@ -496,6 +628,7 @@ File(133) = 77stqd.msk File(134) = batbca7.msk File(135) = batbcaf.msk File(136) = batbent.msk +File(137) = menu_st.msk File(14) = 771100c.msk File(15) = 771100d.msk File(16) = 771100e.msk @@ -590,76 +723,78 @@ File(96) = 77qa1.frm File(97) = 77qa2.frm File(98) = 77qa3.frm File(99) = 77qaall.msk -Versione = 19980101 +Patch = 18 +Versione = 19980102 [772] -File(137) = recdesc\f36.dir -File(138) = recdesc\f36.trr -File(139) = recdesc\f37.dir -File(140) = recdesc\f37.trr -File(141) = recdesc\f38.dir -File(142) = recdesc\f38.trr -File(143) = recdesc\f39.dir -File(144) = recdesc\f39.trr -File(145) = recdesc\f40.dir -File(146) = recdesc\f40.trr -File(147) = recdesc\f41.dir -File(148) = recdesc\f41.trr -File(149) = recdesc\f42.dir -File(150) = recdesc\f42.trr -File(151) = recdesc\f43.dir -File(152) = recdesc\f43.trr -File(153) = recdesc\f44.dir -File(154) = recdesc\f44.trr -File(155) = recdesc\f45.dir -File(156) = recdesc\f45.trr -File(157) = recdesc\f46.dir -File(158) = recdesc\f46.trr -File(159) = recdesc\f56.dir -File(160) = recdesc\f56.trr -File(161) = recdesc\f57.dir -File(162) = recdesc\f57.trr -File(163) = recdesc\f58.dir -File(164) = recdesc\f58.trr -File(165) = recdesc\f59.dir -File(166) = recdesc\f59.trr -File(167) = recdesc\f60.dir -File(168) = recdesc\f60.trr -File(169) = recdesc\f61.dir -File(170) = recdesc\f61.trr -File(171) = recdesc\f62.dir -File(172) = recdesc\f62.trr -File(173) = recdesc\f63.dir -File(174) = recdesc\f63.trr -File(175) = recdesc\f64.dir -File(176) = recdesc\f64.trr -File(177) = recdesc\f65.dir -File(178) = recdesc\f65.trr -File(179) = recdesc\f66.dir -File(180) = recdesc\f66.trr -File(181) = recdesc\f67.dir -File(182) = recdesc\f67.trr -File(183) = recdesc\f68.dir -File(184) = recdesc\f68.trr -File(185) = recdesc\f69.dir -File(186) = recdesc\f69.trr -File(187) = recdesc\f70.dir -File(188) = recdesc\f70.trr -File(189) = recdesc\f71.dir -File(190) = recdesc\f71.trr -File(191) = recdesc\f72.dir -File(192) = recdesc\f72.trr -File(193) = recdesc\f73.dir -File(194) = recdesc\f73.trr -File(195) = recdesc\f74.dir -File(196) = recdesc\f74.trr -File(197) = recdesc\f75.dir -File(198) = recdesc\f75.trr -File(199) = recdesc\f76.dir -File(200) = recdesc\f76.trr -File(201) = recdesc\f77.dir -File(202) = recdesc\f77.trr -Versione = 19980101 +File(138) = recdesc\f36.dir +File(139) = recdesc\f36.trr +File(140) = recdesc\f37.dir +File(141) = recdesc\f37.trr +File(142) = recdesc\f38.dir +File(143) = recdesc\f38.trr +File(144) = recdesc\f39.dir +File(145) = recdesc\f39.trr +File(146) = recdesc\f40.dir +File(147) = recdesc\f40.trr +File(148) = recdesc\f41.dir +File(149) = recdesc\f41.trr +File(150) = recdesc\f42.dir +File(151) = recdesc\f42.trr +File(152) = recdesc\f43.dir +File(153) = recdesc\f43.trr +File(154) = recdesc\f44.dir +File(155) = recdesc\f44.trr +File(156) = recdesc\f45.dir +File(157) = recdesc\f45.trr +File(158) = recdesc\f46.dir +File(159) = recdesc\f46.trr +File(160) = recdesc\f56.dir +File(161) = recdesc\f56.trr +File(162) = recdesc\f57.dir +File(163) = recdesc\f57.trr +File(164) = recdesc\f58.dir +File(165) = recdesc\f58.trr +File(166) = recdesc\f59.dir +File(167) = recdesc\f59.trr +File(168) = recdesc\f60.dir +File(169) = recdesc\f60.trr +File(170) = recdesc\f61.dir +File(171) = recdesc\f61.trr +File(172) = recdesc\f62.dir +File(173) = recdesc\f62.trr +File(174) = recdesc\f63.dir +File(175) = recdesc\f63.trr +File(176) = recdesc\f64.dir +File(177) = recdesc\f64.trr +File(178) = recdesc\f65.dir +File(179) = recdesc\f65.trr +File(180) = recdesc\f66.dir +File(181) = recdesc\f66.trr +File(182) = recdesc\f67.dir +File(183) = recdesc\f67.trr +File(184) = recdesc\f68.dir +File(185) = recdesc\f68.trr +File(186) = recdesc\f69.dir +File(187) = recdesc\f69.trr +File(188) = recdesc\f70.dir +File(189) = recdesc\f70.trr +File(190) = recdesc\f71.dir +File(191) = recdesc\f71.trr +File(192) = recdesc\f72.dir +File(193) = recdesc\f72.trr +File(194) = recdesc\f73.dir +File(195) = recdesc\f73.trr +File(196) = recdesc\f74.dir +File(197) = recdesc\f74.trr +File(198) = recdesc\f75.dir +File(199) = recdesc\f75.trr +File(200) = recdesc\f76.dir +File(201) = recdesc\f76.trr +File(202) = recdesc\f77.dir +File(203) = recdesc\f77.trr +Patch = 18 +Versione = 19980102 [sv1] File(0) = sv0.exe @@ -675,240 +810,20 @@ File(6) = sv1200a.msk File(7) = sv1200b.msk File(8) = sv1200c.msk File(9) = sv2.exe -Patch = 0 -Versione = 19980101 - -[sv9] -File(13) = recdesc\f86.dir -File(14) = recdesc\f86.trr -Patch = 0 -Versione = 19980101 +Patch = 20 +Versione = 19980102 [sv2] -File(15) = recdesc\f87.dir -File(16) = recdesc\f87.trr -Patch = 0 -Versione = 19980101 +File(13) = recdesc\f87.dir +File(14) = recdesc\f87.trr +Patch = 20 +Versione = 19980102 -[pr1] -File(0) = pr01.bmp -File(1) = pr0700a.msk -File(2) = pr0700b.msk -File(3) = pr1300a.frm -File(4) = pr1300a.msk -File(5) = pr1400.msk -File(6) = pr1400a.frm -File(7) = prprassi.men -Patch = 0 -Versione = 19980101 - -[pr9] -File(10) = recdesc\f124.dir -File(11) = recdesc\f124.trr -File(8) = recdesc\f123.dir -File(9) = recdesc\f123.trr -Patch = 0 -Versione = 19980101 - -[ve0] -File(0) = ve00.bmp -File(1) = vearea.men -Patch = 0 -Versione = 19980101 - -[ve1] -File(10) = batbfrd.msk -File(11) = batbfrd.rpt -File(12) = batbfrr.msk -File(13) = batbfrr.rpt -File(14) = batbnum.msk -File(15) = batbnum.rpt -File(16) = batbstd.msk -File(17) = batbstd.rpt -File(18) = batbtip.msk -File(19) = batbtip.rpt -File(2) = basteld.msk -File(20) = ve01.bmp -File(21) = ve1.exe -File(22) = ve1000b.msk -File(23) = ve1100a.msk -File(24) = ve3200.msk -File(25) = ve3200x.msk -File(26) = ve3300.msk -File(27) = ve3400.msk -File(28) = ve5.exe -File(29) = ve5100a.msk -File(3) = bastfrd.msk -File(30) = ve6.exe -File(31) = ve6100a.msk -File(32) = ve6200a.msk -File(33) = ve6300a.msk -File(34) = veprassi.hlp -File(35) = veprassi.men -File(4) = bastfrr.msk -File(5) = bastnum.msk -File(6) = baststd.msk -File(7) = basttip.msk -File(8) = batbeld.msk -File(9) = batbeld.rpt -Patch = 0 -Versione = 19980101 - -[ve2] -File(36) = recdesc\f33.dir -File(37) = recdesc\f33.trr -File(38) = recdesc\f34.dir -File(39) = recdesc\f34.trr -Patch = 0 -Versione = 19980101 - -[ve3] -File(40) = bolla.bmp -File(41) = bollac.ini -File(42) = bollac.msk -File(43) = bollaf.ini -File(44) = bollaf.msk -File(45) = fattura.bmp -File(46) = fatturaa.ini -File(47) = fatturaa.msk -File(48) = fatturac.ini -File(49) = fatturac.msk -File(50) = ordinec.ini -File(51) = ordinec.msk -File(52) = ordinef.ini -File(53) = ordinef.msk -File(54) = veacc.frm -File(55) = vebol.frm -File(56) = vebolbmp.frm -File(57) = vefat.frm -File(58) = vefatbmp.frm -File(59) = verig00.msk -File(60) = verig01.ini -File(61) = verig01.msk -File(62) = verig02.ini -File(63) = verig02.msk -File(64) = verig03.ini -File(65) = verig03.msk -File(66) = verig04.ini -File(67) = verig04.msk -File(68) = verig05.ini -File(69) = verig05.msk -File(70) = verig06.ini -File(71) = verig06.msk -File(72) = verig07.ini -File(73) = verig07.msk -File(74) = verig08.ini -File(75) = verig08.msk -File(76) = verig09.ini -File(77) = verig09.msk -Patch = 0 -Versione = 19980101 - -[ve9] -File(100) = batbcau.rpt -File(101) = batbcld.msk -File(102) = batbcra.msk -File(103) = batbcra.rpt -File(104) = batbctr.msk -File(105) = batbctr.rpt -File(106) = batbfca.msk -File(107) = batbfrm.msk -File(108) = batbfrm.rpt -File(109) = batbgca.msk -File(110) = batbgmc.msk -File(111) = batbgmc.rpt -File(112) = batbmag.msk -File(113) = batbmag.rpt -File(114) = batbprs.msk -File(115) = batbprs.rpt -File(116) = batbprv.msk -File(117) = batbrfa.msk -File(118) = batbrfa.rpt -File(119) = batbrfc.msk -File(120) = batbrfc.rpt -File(121) = ef0.exe -File(122) = mg0.exe -File(123) = mg0300a.msk -File(124) = pr0.exe -File(125) = pr0500a.msk -File(126) = pr0600a.msk -File(127) = pr1.exe -File(128) = pr1100.msk -File(129) = pr1100a.frm -File(130) = prtbapr.msk -File(131) = recdesc\f122.dir -File(132) = recdesc\f122.trr -File(133) = recdesc\f35.dir -File(134) = recdesc\f35.trr -File(135) = recdesc\f47.dir -File(136) = recdesc\f47.trr -File(137) = recdesc\f48.dir -File(138) = recdesc\f48.trr -File(139) = recdesc\f49.dir -File(140) = recdesc\f49.trr -File(141) = recdesc\f51.dir -File(142) = recdesc\f51.trr -File(143) = recdesc\f52.dir -File(144) = recdesc\f52.trr -File(145) = recdesc\f53.dir -File(146) = recdesc\f53.trr -File(147) = tab_fca.frm -File(148) = ve0.exe -File(149) = ve0100a.msk -File(150) = ve0100o.msk -File(151) = ve0200a.msk -File(152) = ve0200b.msk -File(153) = ve0200c.msk -File(154) = ve0200d.msk -File(155) = ve0200e.msk -File(156) = ve0200f.msk -File(157) = ve0300a.ini -File(158) = ve0300b.dat -File(159) = ve0300c.ini -File(160) = ve2.exe -File(161) = ve2100.msk -File(162) = ve2100d.msk -File(163) = ve2100i.msk -File(164) = ve2100r.msk -File(165) = ve2200.msk -File(166) = ve2200x.msk -File(167) = ve2300.msk -File(168) = ve2300x.msk -File(169) = ve2400.msk -File(170) = ve2400a.msk -File(171) = ve2400b.msk -File(172) = ve2400c.msk -File(173) = ve3.exe -File(174) = ve3100.msk -File(175) = ve3100d.msk -File(176) = ve3100i.msk -File(177) = ve3100r.msk -File(178) = ve4.exe -File(179) = ve4100.msk -File(78) = bastabe.msk -File(79) = bastasf.msk -File(80) = bastbnp.msk -File(81) = bastcaa.msk -File(82) = bastcau.msk -File(83) = bastcra.msk -File(84) = bastctr.msk -File(85) = bastfca.msk -File(86) = bastfrm.msk -File(87) = bastgmc.msk -File(88) = bastprs.msk -File(89) = bastrfa.msk -File(90) = bastrfc.msk -File(91) = batbabe.msk -File(92) = batbabe.rpt -File(93) = batbasf.msk -File(94) = batbasf.rpt -File(95) = batbbnp.msk -File(96) = batbbnp.rpt -File(97) = batbcaa.msk -File(98) = batbcaa.rpt -File(99) = batbcau.msk -Patch = 0 -Versione = 19980101 +[sv9] +File(15) = recdesc\f86.dir +File(16) = recdesc\f86.trr +Patch = 20 +Versione = 19980102 [ba0] File(0) = ba00.bmp @@ -919,124 +834,130 @@ File(4) = ba04.bmp File(5) = ba05.bmp File(6) = ba06.bmp File(7) = baprassi.men -Patch = 0 -Versione = 19980101 +Patch = 21 +Versione = 19980102 [ba1] File(10) = ba0200a.msk -File(100) = batbcpg.rpt -File(101) = batbcrs.msk -File(102) = batbcrs.rpt -File(103) = batbitl.msk -File(104) = batbitl.rpt -File(105) = batbiva.msk -File(106) = batbiva.rpt -File(107) = batblng.msk -File(108) = batblng.rpt -File(109) = batbois.msk +File(100) = batbais.msk +File(101) = batbais.rpt +File(102) = batbban.msk +File(103) = batbban.rpt +File(104) = batbclr.msk +File(105) = batbclr.rpt +File(106) = batbcpg.msk +File(107) = batbcpg.rpt +File(108) = batbcrs.msk +File(109) = batbcrs.rpt File(11) = ba0300a.msk -File(110) = batbois.rpt -File(111) = batbrgi.msk -File(112) = batbsta.msk -File(113) = batbsta.rpt -File(114) = batbstt.msk -File(115) = batbstt.rpt -File(116) = batbucc.msk -File(117) = batbucc.rpt -File(118) = batbucs.msk -File(119) = batbucs.rpt -File(12) = ba1100a.msk -File(120) = batbues.msk -File(121) = batbues.rpt -File(122) = batbuid.msk -File(123) = batbuid.rpt -File(124) = batbuiv.msk -File(125) = batbuiv.rpt -File(126) = batbure.msk -File(127) = batbure.rpt -File(128) = batbuue.msk -File(129) = batbuue.rpt -File(13) = ba1100b.msk -File(130) = batbval.msk -File(131) = batbval.rpt -File(132) = dir.gen -File(133) = fconv.ini -File(134) = prassi.aut -File(135) = prassice.men -File(136) = prassid.ini -File(137) = prassis.ini -File(138) = trc.gen -File(139) = unzip.pif -File(14) = ba1100c.msk -File(140) = unzip32.exe -File(141) = zip.pif -File(142) = zip386.bat -File(143) = zip386.exe -File(15) = ba1100d.msk -File(16) = ba1100e.msk -File(17) = ba1100f.msk -File(18) = ba1100g.msk -File(19) = ba1400a.msk -File(20) = ba1500a.frm -File(21) = ba1500a.msk -File(22) = ba1600a.msk -File(23) = ba1600b.msk -File(24) = ba2.exe -File(25) = ba2100a.msk -File(26) = ba2100b.msk -File(27) = ba2100c.msk -File(28) = ba2100f.msk -File(29) = ba2100r.msk -File(30) = ba2100s.msk -File(31) = ba2100u.msk -File(32) = ba21dt.msk -File(33) = ba21fn.msk -File(34) = ba21nm.msk -File(35) = ba2200.msk -File(36) = ba2300a.msk -File(37) = ba2300b.msk -File(38) = ba2300c.msk -File(39) = ba2300d.msk -File(40) = ba2500a.msk -File(41) = ba3.exe -File(42) = ba3200a.msk -File(43) = ba3300a.msk -File(44) = ba3500a.msk -File(45) = ba3600a.msk -File(46) = ba3601a.msk -File(47) = ba3700a.msk -File(48) = ba3800a.msk -File(49) = ba3800b.msk -File(50) = ba3a00a.msk -File(51) = ba4.exe -File(52) = ba4100a.msk -File(53) = ba4200b.msk -File(54) = ba4200c.msk -File(55) = ba4300a.msk -File(56) = ba4400a.msk -File(57) = ba4500a.msk -File(58) = ba4600a.msk -File(59) = ba5.exe -File(60) = ba5000.msk -File(61) = ba6.exe -File(62) = ba6100a.msk -File(63) = ba6100b.msk -File(64) = ba6200a.msk -File(65) = bacnv.exe -File(66) = bafax.exe -File(67) = bafax01.msk -File(68) = bafax02.msk -File(69) = bagn001a.msk -File(70) = bagn002.msk -File(71) = bagn004.msk -File(72) = bagn005.msk -File(73) = bagn006.msk -File(74) = bastais.msk -File(75) = bastban.msk -File(76) = bastclr.msk -File(77) = bastcpg.msk -File(78) = bastcrs.msk -File(79) = bastitl.msk +File(110) = batbitl.msk +File(111) = batbitl.rpt +File(112) = batbiva.msk +File(113) = batbiva.rpt +File(114) = batblng.msk +File(115) = batblng.rpt +File(116) = batbois.msk +File(117) = batbois.rpt +File(118) = batbrgi.msk +File(119) = batbsta.msk +File(12) = ba1.exe +File(120) = batbsta.rpt +File(121) = batbstt.msk +File(122) = batbstt.rpt +File(123) = batbucc.msk +File(124) = batbucc.rpt +File(125) = batbucs.msk +File(126) = batbucs.rpt +File(127) = batbues.msk +File(128) = batbues.rpt +File(129) = batbuid.msk +File(13) = ba1100a.msk +File(130) = batbuid.rpt +File(131) = batbuiv.msk +File(132) = batbuiv.rpt +File(133) = batbure.msk +File(134) = batbure.rpt +File(135) = batbuue.msk +File(136) = batbuue.rpt +File(137) = batbval.msk +File(138) = batbval.rpt +File(139) = fconv.ini +File(14) = ba1100b.msk +File(140) = prassi.aut +File(141) = prassi.hlp +File(142) = prassice.men +File(143) = prassid.ini +File(144) = prassis.ini +File(145) = unzip.pif +File(146) = unzip32.exe +File(147) = zip.pif +File(148) = zip386.bat +File(149) = zip386.exe +File(15) = ba1100c.msk +File(16) = ba1100d.msk +File(17) = ba1100e.msk +File(18) = ba1100f.msk +File(19) = ba1100g.msk +File(20) = ba1300a.msk +File(21) = ba1300b.msk +File(22) = ba1400a.msk +File(23) = ba1500a.frm +File(24) = ba1500a.msk +File(25) = ba1600a.msk +File(26) = ba1600b.msk +File(27) = ba1700a.msk +File(28) = ba2.exe +File(29) = ba2100a.msk +File(30) = ba2100b.msk +File(31) = ba2100c.msk +File(32) = ba2100f.msk +File(33) = ba2100r.msk +File(34) = ba2100s.msk +File(35) = ba2100u.msk +File(36) = ba21dt.msk +File(37) = ba21fn.msk +File(38) = ba21nm.msk +File(39) = ba2200.msk +File(40) = ba2300a.msk +File(41) = ba2300b.msk +File(42) = ba2300c.msk +File(43) = ba2300d.msk +File(44) = ba2500a.msk +File(45) = ba3.exe +File(46) = ba3200a.msk +File(47) = ba3300a.msk +File(48) = ba3500a.msk +File(49) = ba3600a.msk +File(50) = ba3601a.msk +File(51) = ba3700a.msk +File(52) = ba3800a.msk +File(53) = ba3800b.msk +File(54) = ba3a00a.msk +File(55) = ba4.exe +File(56) = ba4100a.msk +File(57) = ba4200b.msk +File(58) = ba4200c.msk +File(59) = ba4300a.msk +File(60) = ba4400a.msk +File(61) = ba4500a.msk +File(62) = ba4600a.msk +File(63) = ba5.exe +File(64) = ba5000.msk +File(65) = ba6.exe +File(66) = ba6100a.msk +File(67) = ba6100b.msk +File(68) = ba6200a.msk +File(69) = bacnv.exe +File(70) = bafax.exe +File(71) = bafax01.msk +File(72) = bafax02.msk +File(73) = bagn001a.msk +File(74) = bagn002.msk +File(75) = bagn004.msk +File(76) = bagn005.msk +File(77) = bagn006.msk +File(78) = bainst.exe +File(79) = bainst01.msk File(8) = ba0.exe File(80) = bastiva.msk File(81) = bastlng.msk @@ -1049,60 +970,60 @@ File(87) = bastues.msk File(88) = bastuid.msk File(89) = bastuiv.msk File(9) = ba0100a.msk -File(90) = basture.msk -File(91) = bastuue.msk -File(92) = bastval.msk -File(93) = batbais.msk -File(94) = batbais.rpt -File(95) = batbban.msk -File(96) = batbban.rpt -File(97) = batbclr.msk -File(98) = batbclr.rpt -File(99) = batbcpg.msk -Patch = 0 -Versione = 19980101 +File(90) = baststa.msk +File(91) = baststt.msk +File(92) = bastucc.msk +File(93) = bastucs.msk +File(94) = bastues.msk +File(95) = bastuid.msk +File(96) = bastuiv.msk +File(97) = basture.msk +File(98) = bastuue.msk +File(99) = bastval.msk +Patch = 21 +Versione = 19980102 [ba2] -File(144) = recdesc\f10.dir -File(145) = recdesc\f10.trr -File(146) = recdesc\f105.dir -File(147) = recdesc\f105.trr -File(148) = recdesc\f11.dir -File(149) = recdesc\f11.trr -File(150) = recdesc\f12.dir -File(151) = recdesc\f12.trr -File(152) = recdesc\f13.dir -File(153) = recdesc\f13.trr -File(154) = recdesc\f2.dir -File(155) = recdesc\f2.trr -File(156) = recdesc\f3.dir -File(157) = recdesc\f3.trr -File(158) = recdesc\f4.dir -File(159) = recdesc\f4.trr -File(160) = recdesc\f5.dir -File(161) = recdesc\f5.trr -File(162) = recdesc\f50.dir -File(163) = recdesc\f50.trr -File(164) = recdesc\f54.dir -File(165) = recdesc\f54.trr -File(166) = recdesc\f6.dir -File(167) = recdesc\f6.trr -File(168) = recdesc\f7.dir -File(169) = recdesc\f7.trr -File(170) = recdesc\f8.dir -File(171) = recdesc\f8.trr -File(172) = recdesc\f9.dir -File(173) = recdesc\f9.trr -File(174) = recdesc\f15.dir -File(175) = recdesc\f15.trr -Patch = 0 -Versione = 19980101 +File(150) = recdesc\f10.dir +File(151) = recdesc\f10.trr +File(152) = recdesc\f105.dir +File(153) = recdesc\f105.trr +File(154) = recdesc\f11.dir +File(155) = recdesc\f11.trr +File(156) = recdesc\f12.dir +File(157) = recdesc\f12.trr +File(158) = recdesc\f13.dir +File(159) = recdesc\f13.trr +File(160) = recdesc\f15.dir +File(161) = recdesc\f15.trr +File(162) = recdesc\f2.dir +File(163) = recdesc\f2.trr +File(164) = recdesc\f3.dir +File(165) = recdesc\f3.trr +File(166) = recdesc\f4.dir +File(167) = recdesc\f4.trr +File(168) = recdesc\f5.dir +File(169) = recdesc\f5.trr +File(170) = recdesc\f50.dir +File(171) = recdesc\f50.trr +File(172) = recdesc\f54.dir +File(173) = recdesc\f54.trr +File(174) = recdesc\f6.dir +File(175) = recdesc\f6.trr +File(176) = recdesc\f7.dir +File(177) = recdesc\f7.trr +File(178) = recdesc\f8.dir +File(179) = recdesc\f8.trr +File(180) = recdesc\f9.dir +File(181) = recdesc\f9.trr +Patch = 21 +Versione = 19980102 [cg0] File(0) = cg00.bmp File(1) = cgarea.men -Patch = 0 -Versione = 19980101 +Patch = 18 +Versione = 19980102 [cg1] File(10) = batbdpn.rpt @@ -1111,13 +1032,15 @@ File(101) = cg6900a.msk File(102) = cg6900b.msk File(103) = cg6903a.msk File(104) = cgaddon.men -File(105) = cgpostin.exe -File(106) = cgprassi.hlp -File(107) = cgprassi.men -File(108) = cgtrc.ini -File(109) = trrice.in +File(105) = cgprassi.hlp +File(106) = cgprassi.men +File(107) = cgtrc.ini +File(108) = cgtrcpc.ini +File(109) = dummy.ldb File(11) = batbind.msk -File(110) = vcopia.in +File(110) = dummy.mdb +File(111) = trrice.exe +File(112) = vcopia.exe File(12) = batbinl.msk File(13) = batbins.msk File(14) = batbivd.msk @@ -1128,7 +1051,8 @@ File(18) = batbtra.msk File(19) = batbver.msk File(2) = bastcfi.msk File(20) = batbver.rpt -File(21) = cb0000.in +File(21) = cb0000.exe +File(218) = pec.frm File(22) = cg01.bmp File(23) = cg0500a.msk File(24) = cg2.exe @@ -1214,179 +1138,455 @@ File(96) = cg6804c.msk File(97) = cg6804d.msk File(98) = cg6804e.msk File(99) = cg6804f.msk -Patch = 0 -Versione = 19980101 +Patch = 18 +Versione = 19980102 [cg2] -File(111) = cgtrcpc.ini -File(112) = recdesc\f103.dir -File(113) = recdesc\f103.trr -File(114) = recdesc\f104.dir -File(115) = recdesc\f104.trr -File(116) = recdesc\f16.dir -File(117) = recdesc\f16.trr -File(118) = recdesc\f21.dir -File(119) = recdesc\f21.trr -File(120) = recdesc\f22.dir -File(121) = recdesc\f22.trr -File(122) = recdesc\f23.dir -File(123) = recdesc\f23.trr -File(124) = recdesc\f24.dir -File(125) = recdesc\f24.trr -File(126) = recdesc\f25.dir -File(127) = recdesc\f25.trr -File(128) = recdesc\f26.dir -File(129) = recdesc\f26.trr -File(130) = recdesc\f27.dir -File(131) = recdesc\f27.trr -File(132) = recdesc\f28.dir -File(133) = recdesc\f28.trr -File(134) = recdesc\f29.dir -File(135) = recdesc\f29.trr -File(136) = recdesc\f30.dir -File(137) = recdesc\f30.trr -Patch = 0 -Versione = 19980101 +File(113) = recdesc\f103.dir +File(114) = recdesc\f103.trr +File(115) = recdesc\f104.dir +File(116) = recdesc\f104.trr +File(117) = recdesc\f21.dir +File(118) = recdesc\f21.trr +File(119) = recdesc\f22.dir +File(120) = recdesc\f22.trr +File(121) = recdesc\f23.dir +File(122) = recdesc\f23.trr +File(123) = recdesc\f24.dir +File(124) = recdesc\f24.trr +File(125) = recdesc\f25.dir +File(126) = recdesc\f25.trr +File(127) = recdesc\f26.dir +File(128) = recdesc\f26.trr +File(129) = recdesc\f27.dir +File(130) = recdesc\f27.trr +File(131) = recdesc\f28.dir +File(132) = recdesc\f28.trr +File(133) = recdesc\f29.dir +File(134) = recdesc\f29.trr +File(135) = recdesc\f30.dir +File(136) = recdesc\f30.trr +Patch = 18 +Versione = 19980102 [cg9] -File(138) = bastcam.msk -File(139) = bastcco.msk -File(140) = bastcve.msk -File(141) = bastesc.msk -File(142) = bastleg.msk -File(143) = bastmag.msk -File(144) = bastmsp.msk -File(145) = bastndo.msk -File(146) = bastnot.msk -File(147) = bastpor.msk -File(148) = bastreg.msk -File(149) = bastscc.msk -File(150) = bastspp.msk -File(151) = basttit.msk -File(152) = basttri.msk -File(153) = bastums.msk -File(154) = bastvet.msk -File(155) = bastzon.msk -File(156) = batbcam.msk -File(157) = batbcam.rpt -File(158) = batbcco.msk -File(159) = batbcco.rpt -File(160) = batbcve.msk -File(161) = batbcve.rpt -File(162) = batbesc.msk -File(163) = batbesc.rpt -File(164) = batbleg.msk -File(165) = batbleg.rpt -File(166) = batbmsp.msk -File(167) = batbmsp.rpt -File(168) = batbndo.msk -File(169) = batbndo.rpt -File(170) = batbnot.msk -File(171) = batbnot.rpt -File(172) = batbpor.msk -File(173) = batbpor.rpt -File(174) = batbreg.msk -File(175) = batbreg.rpt -File(176) = batbscc.msk -File(177) = batbscc.rpt -File(178) = batbspp.msk -File(179) = batbspp.rpt -File(180) = batbtit.msk -File(181) = batbtit.rpt -File(182) = batbtri.msk -File(183) = batbtri.rpt -File(184) = batbums.msk -File(185) = batbums.rpt -File(186) = batbvet.msk -File(187) = batbvet.rpt -File(188) = batbzon.msk -File(189) = batbzon.rpt -File(190) = cg0.exe -File(191) = cg0100a.msk -File(192) = cg0200a.msk -File(193) = cg0200b.msk -File(194) = cg0300a.msk -File(195) = cg0400a.msk -File(196) = cg0400b.msk -File(197) = cg1.exe -File(198) = cg1100a.msk -File(199) = cg1200a.msk -File(200) = cg1200b.msk -File(201) = cg1300a.msk -File(202) = cg1300b.msk -File(203) = cg1300c.msk -File(204) = cg1300d.msk -File(205) = cg1400a.msk -File(206) = cg1500a.msk -File(207) = cg1600a.msk -File(208) = cg1700a.msk -File(209) = recdesc\f17.dir -File(210) = recdesc\f17.trr -File(211) = recdesc\f18.dir -File(212) = recdesc\f18.trr -File(213) = recdesc\f19.dir -File(214) = recdesc\f19.trr -File(215) = recdesc\f20.dir -File(216) = recdesc\f20.trr -Patch = 0 -Versione = 19980101 +File(137) = bastcam.msk +File(138) = bastcco.msk +File(139) = bastcve.msk +File(140) = bastesc.msk +File(141) = bastleg.msk +File(142) = bastmag.msk +File(143) = bastmsp.msk +File(144) = bastndo.msk +File(145) = bastnot.msk +File(146) = bastpor.msk +File(147) = bastreg.msk +File(148) = bastscc.msk +File(149) = bastspp.msk +File(150) = basttit.msk +File(151) = basttri.msk +File(152) = bastums.msk +File(153) = bastvet.msk +File(154) = bastzon.msk +File(155) = batbcam.msk +File(156) = batbcam.rpt +File(157) = batbcco.msk +File(158) = batbcco.rpt +File(159) = batbcve.msk +File(160) = batbcve.rpt +File(161) = batbesc.msk +File(162) = batbesc.rpt +File(163) = batbleg.msk +File(164) = batbleg.rpt +File(165) = batbmsp.msk +File(166) = batbmsp.rpt +File(167) = batbndo.msk +File(168) = batbndo.rpt +File(169) = batbnot.msk +File(170) = batbnot.rpt +File(171) = batbpor.msk +File(172) = batbpor.rpt +File(173) = batbreg.msk +File(174) = batbreg.rpt +File(175) = batbscc.msk +File(176) = batbscc.rpt +File(177) = batbspp.msk +File(178) = batbspp.rpt +File(179) = batbtit.msk +File(180) = batbtit.rpt +File(181) = batbtri.msk +File(182) = batbtri.rpt +File(183) = batbums.msk +File(184) = batbums.rpt +File(185) = batbvet.msk +File(186) = batbvet.rpt +File(187) = batbzon.msk +File(188) = batbzon.rpt +File(189) = cg0.exe +File(190) = cg0100a.msk +File(191) = cg0200a.msk +File(192) = cg0200b.msk +File(193) = cg0300a.msk +File(194) = cg0400a.msk +File(195) = cg0400b.msk +File(196) = cg1.exe +File(197) = cg1100a.msk +File(198) = cg1200a.msk +File(199) = cg1200b.msk +File(200) = cg1300a.msk +File(201) = cg1300b.msk +File(202) = cg1300c.msk +File(203) = cg1300d.msk +File(204) = cg1400a.msk +File(205) = cg1500a.msk +File(206) = cg1600a.msk +File(207) = cg1700a.msk +File(208) = recdesc\f16.dir +File(209) = recdesc\f16.trr +File(210) = recdesc\f17.dir +File(211) = recdesc\f17.trr +File(212) = recdesc\f18.dir +File(213) = recdesc\f18.trr +File(214) = recdesc\f19.dir +File(215) = recdesc\f19.trr +File(216) = recdesc\f20.dir +File(217) = recdesc\f20.trr +Patch = 18 +Versione = 19980102 + +[sc1] +File(0) = sc0.exe +File(1) = sc01.bmp +File(10) = sc2.exe +File(11) = sc2100a.msk +File(12) = sc2200a.msk +File(13) = sc2300a.msk +File(14) = sc2400a.msk +File(15) = sc3.exe +File(16) = sc3100a.msk +File(17) = sc3100b.msk +File(18) = sc3100c.msk +File(19) = sc3100s.msk +File(2) = sc0100a.msk +File(20) = scprassi.hlp +File(21) = scprassi.men +File(22) = pec.frm +File(3) = sc0100b.msk +File(4) = sc0100c.msk +File(5) = sc0100p.msk +File(6) = sc1.exe +File(7) = sc1100a.msk +File(8) = sc1200a.msk +File(9) = sc1300a.msk +Patch = 22 +Versione = 19980102 [mg0] File(0) = mg00.bmp File(1) = mgarea.men -Patch = 0 -Versione = 19980101 +Patch = 302 +Versione = 19980102 [mg1] -File(10) = mg1200.msk -File(11) = mg1400.msk -File(12) = mg3.exe -File(13) = mg3100.msk -File(14) = mg3100a.frm -File(15) = mg3100b.frm -File(16) = mg3200.frm -File(17) = mg3200.msk -File(18) = mg3200a.frm -File(19) = mg3200b.frm +File(10) = mg1400.msk|X +File(11) = mg3.exe +File(12) = mg3100.msk +File(13) = mg3100a.frm +File(14) = mg3100b.frm +File(15) = mg3200.msk +File(16) = mg3200a.frm +File(17) = mg3200b.frm +File(18) = mg3300.msk +File(19) = mg3300a.frm File(2) = bastfcg.msk -File(20) = mg3300.frm -File(21) = mg3300.msk -File(22) = mg3300a.frm -File(23) = mg3300b.frm -File(24) = mg3400.msk -File(25) = mg3400a.frm -File(26) = mg3400b.frm -File(27) = mg3500.frm -File(28) = mg3500.msk -File(29) = mg4.exe +File(20) = mg3300b.frm +File(21) = mg3400.msk +File(22) = mg3400a.frm +File(23) = mg3400b.frm +File(24) = mg3500.frm +File(25) = mg3500.msk +File(26) = mg4.exe +File(27) = mg4100.frm +File(28) = mg4100.msk|X +File(29) = mg4200.msk File(3) = batbfcg.msk -File(30) = mg4100.frm -File(31) = mg4100.msk -File(32) = mg4200.msk -File(33) = mg4200a.frm -File(34) = mg4200b.frm -File(35) = mg4300.frm -File(36) = mg4300.msk -File(37) = mgprassi.men -File(38) = tab_fcg.frm +File(30) = mg4200a.frm +File(31) = mg4200b.frm +File(32) = mg4300.frm +File(33) = mg4300.msk +File(34) = mgprassi.men +File(35) = tab_fcg.frm File(4) = batbgcg.msk File(5) = batbubi.msk File(6) = mg01.bmp File(7) = mg1.exe -File(8) = mg1100.msk -File(9) = mg1100a.msk -Patch = 0 -Versione = 19980101 +File(8) = mg1100.msk|X +File(9) = mg1200.msk +Patch = 302 +Versione = 19980102 [mg9] -File(39) = recdesc\f114.dir -File(40) = recdesc\f114.trr -File(41) = recdesc\f109.dir -File(42) = recdesc\f109.trr -File(43) = recdesc\f110.dir -File(44) = recdesc\f110.trr -File(45) = recdesc\f111.dir -File(46) = recdesc\f111.trr -Patch = 0 -Versione = 19980101 +File(36) = recdesc\f109.dir +File(37) = recdesc\f109.trr +File(38) = recdesc\f110.dir +File(39) = recdesc\f110.trr +File(40) = recdesc\f111.dir +File(41) = recdesc\f111.trr +File(42) = recdesc\f114.dir +File(43) = recdesc\f114.trr +Patch = 302 +Versione = 19980102 + +[pr1] +File(0) = pr01.bmp +File(1) = pr0700a.msk +File(2) = pr0700b.msk +File(3) = pr1300a.frm +File(4) = pr1300a.msk +File(5) = pr1400.msk +File(6) = pr1400a.frm +File(7) = prprassi.men +Patch = 302 +Versione = 19980102 + +[pr9] +File(10) = recdesc\f124.dir +File(11) = recdesc\f124.trr +File(8) = recdesc\f123.dir +File(9) = recdesc\f123.trr +Patch = 302 +Versione = 19980102 + +[ef1] +File(0) = bastprs.msk +File(1) = batbprs.msk +File(10) = ef0400a.msk +File(11) = ef0500a.msk +File(12) = ef0600a.msk +File(13) = ef0800a.msk +File(14) = ef0900a.msk +File(15) = efprassi.hlp +File(16) = efprassi.men +File(17) = rb.frm +File(18) = riba.ini +File(2) = batbprs.rpt +File(3) = dse.frm +File(4) = ef0.exe +File(5) = ef01.bmp +File(6) = ef0100a.msk +File(7) = ef0200a.msk +File(8) = ef0300a.msk +File(9) = ef0300c.msk +Patch = 302 +Versione = 19980102 + +[ef2] +File(19) = recdesc\f14.dir +File(20) = recdesc\f14.trr +File(21) = recdesc\f31.dir +File(22) = recdesc\f31.trr +File(23) = recdesc\f32.dir +File(24) = recdesc\f32.trr +Patch = 302 +Versione = 19980102 + +[ve0] +File(0) = ve00.bmp +File(1) = vearea.men +Patch = 302 +Versione = 19980102 + +[ve1] +File(10) = batbfrd.msk +File(11) = batbfrd.rpt +File(12) = batbfrr.msk +File(13) = batbfrr.rpt +File(14) = batbgcg.msk +File(15) = batbnum.msk +File(16) = batbnum.rpt +File(17) = batbstd.msk +File(18) = batbstd.rpt +File(19) = batbtip.msk +File(2) = basteld.msk +File(20) = batbtip.rpt +File(21) = fatacq.ini +File(22) = fatacq.msk +File(23) = listadoc.frm +File(24) = ve01.bmp +File(25) = ve1.exe +File(26) = ve1000b.msk +File(27) = ve1100a.msk +File(28) = ve5.exe +File(29) = ve5100a.msk +File(3) = bastfrd.msk +File(30) = ve6.exe +File(31) = ve6100a.msk +File(32) = ve6200a.msk +File(33) = ve6300a.msk +File(34) = veprassi.hlp +File(35) = veprassi.men +File(4) = bastfrr.msk +File(5) = bastnum.msk +File(6) = baststd.msk +File(7) = basttip.msk +File(8) = batbeld.msk +File(9) = batbeld.rpt +Patch = 302 +Versione = 19980102 + +[ve2] +File(36) = recdesc\f33.dir +File(37) = recdesc\f33.trr +File(38) = recdesc\f34.dir +File(39) = recdesc\f34.trr +Patch = 302 +Versione = 19980102 + +[ve3] +File(40) = bolla.bmp +File(41) = bollac.ini +File(42) = bollac.msk +File(43) = bollaf.ini +File(44) = bollaf.msk +File(45) = fattura.bmp +File(46) = fatturaa.ini +File(47) = fatturaa.msk +File(48) = fatturac.ini +File(49) = fatturac.msk +File(50) = ordinec.ini +File(51) = ordinec.msk +File(52) = ordinef.ini +File(53) = ordinef.msk +File(54) = veacc.frm +File(55) = vebol.frm +File(56) = vebolbmp.frm +File(57) = vefat.frm +File(58) = vefatbmp.frm +File(59) = verig00.msk +File(60) = verig01.ini +File(61) = verig01.msk +File(62) = verig02.ini +File(63) = verig02.msk +File(64) = verig03.ini +File(65) = verig03.msk +File(66) = verig04.ini +File(67) = verig04.msk +File(68) = verig05.ini +File(69) = verig05.msk +File(70) = verig06.ini +File(71) = verig06.msk +File(72) = verig07.ini +File(73) = verig07.msk +File(74) = verig08.ini +File(75) = verig08.msk +File(76) = verig09.ini +File(77) = verig09.msk +Patch = 302 +Versione = 19980102 + +[ve9] +File(100) = batbcld.msk +File(101) = batbcra.msk +File(102) = batbcra.rpt +File(103) = batbctr.msk +File(104) = batbctr.rpt +File(105) = batbfca.msk +File(106) = batbfrm.msk +File(107) = batbfrm.rpt +File(108) = batbgca.msk +File(109) = batbgmc.msk +File(110) = batbgmc.rpt +File(111) = batbmag.msk +File(112) = batbmag.rpt +File(113) = batbprv.msk +File(114) = batbrfa.msk +File(115) = batbrfa.rpt +File(116) = batbrfc.msk +File(117) = batbrfc.rpt +File(118) = mg0.exe +File(119) = mg0300a.msk +File(120) = pr0.exe +File(121) = pr0500a.msk +File(122) = pr0600a.msk +File(123) = pr1.exe +File(124) = pr1100.msk|X +File(125) = pr1100a.frm +File(126) = prtbapr.msk +File(127) = recdesc\f122.dir +File(128) = recdesc\f122.trr +File(129) = recdesc\f35.dir +File(130) = recdesc\f35.trr +File(131) = recdesc\f47.dir +File(132) = recdesc\f47.trr +File(133) = recdesc\f48.dir +File(134) = recdesc\f48.trr +File(135) = recdesc\f49.dir +File(136) = recdesc\f49.trr +File(137) = recdesc\f51.dir +File(138) = recdesc\f51.trr +File(139) = recdesc\f52.dir +File(140) = recdesc\f52.trr +File(141) = recdesc\f53.dir +File(142) = recdesc\f53.trr +File(143) = tab_fca.frm +File(144) = ve0.exe +File(145) = ve0100a.msk +File(146) = ve0100o.msk +File(147) = ve0200a.msk +File(148) = ve0200b.msk +File(149) = ve0200c.msk +File(150) = ve0200d.msk +File(151) = ve0200e.msk +File(152) = ve0200f.msk +File(153) = ve0300a.ini +File(154) = ve0300b.dat +File(155) = ve0300c.ini +File(156) = ve2.exe +File(157) = ve2100.msk +File(158) = ve2100d.msk +File(159) = ve2100i.msk +File(160) = ve2100r.msk +File(161) = ve2200.msk +File(162) = ve2200x.msk +File(163) = ve2300.msk +File(164) = ve2300x.msk +File(165) = ve2400.msk +File(166) = ve2400a.msk +File(167) = ve2400b.msk +File(168) = ve2400c.msk +File(169) = ve3.exe +File(170) = ve3100.msk +File(171) = ve3100d.msk +File(172) = ve3100i.msk +File(173) = ve3100r.msk +File(174) = ve3200.msk +File(175) = ve3200x.msk +File(176) = ve3300.msk +File(177) = ve3400.msk +File(178) = ve4.exe +File(179) = ve4100.msk +File(78) = bastabe.msk +File(79) = bastasf.msk +File(80) = bastbnp.msk +File(81) = bastcaa.msk +File(82) = bastcau.msk +File(83) = bastcra.msk +File(84) = bastctr.msk +File(85) = bastfca.msk +File(86) = bastfrm.msk +File(87) = bastgmc.msk +File(88) = bastrfa.msk +File(89) = bastrfc.msk +File(90) = batbabe.msk +File(91) = batbabe.rpt +File(92) = batbasf.msk +File(93) = batbasf.rpt +File(94) = batbbnp.msk +File(95) = batbbnp.rpt +File(96) = batbcaa.msk +File(97) = batbcaa.rpt +File(98) = batbcau.msk +File(99) = batbcau.rpt +Patch = 302 +Versione = 19980102 diff --git a/ba/level.dir b/ba/level.dir index 7ce2f2b8f..48682607a 100755 --- a/ba/level.dir +++ b/ba/level.dir @@ -1 +1 @@ -199516 +199517