campo-sirio/ba/bainst00.cpp
alex b3cd9c64a9 Patch level : xx.888
Files correlati     : no patch
Ricompilazione Demo : [ ]
Commento            : Riportata la versione 01.05 patch 888 sul main trunk


git-svn-id: svn://10.65.10.50/trunk@9217 c028cbd2-c16b-5b4b-a496-9718f37d4682
2000-10-03 13:45:12 +00:00

111 lines
2.4 KiB
C++
Executable File

#include <windows.h>
#include <applicat.h>
#include <execp.h>
#include <mask.h>
#include <isam.h>
#include <config.h>
#include <tabutil.h>
#include "bainst.h"
#include "bainst00.h"
class TInstall_BA : public TInstallmodule_app
{
private:
protected:
virtual bool modal() const {return TRUE;}
virtual int module_number() const {return 0;}
virtual bool install_firm() {return TRUE;} // no firm installation
// virtual bool install_com() {return TRUE;} // no com installation
virtual bool install_com();
virtual bool load_default_data() const ;
virtual bool post_installer();
public:
virtual ~TInstall_BA () {}
};
HIDDEN int search_edit(TConfig& cfg, void*)
{
const TString16 module = cfg.get_paragraph().left(2);
TAssoc_array& var = cfg.list_variables();
bool dirty = FALSE;
FOR_EACH_ASSOC_STRING (var, obj, key, str)
{
const TFixed_string confr (key);
if (confr.compare("Edit_", 5, TRUE) == 0)
{
if (module.compare(str, 2, TRUE) != 0)
{
cfg.remove(key);
dirty = TRUE;
}
}
}
if (dirty)
{
cfg.set_paragraph("");
}
return FALSE;
}
bool TInstall_BA::post_installer()
{
// configurazione provvisoria dei programmi gestori di tabelle
if (!test_database())
{
TConfig prassis(CONFIG_STUDIO);
const char *confapp="EdApp";
const char *tabapp="TabPrg";
// magazzino
prassis.set_paragraph("mg");
prassis.set(tabapp,"mg0 -0");
prassis.set(confapp,"mg0 -2 -1");
// distinta base
prassis.set_paragraph("db");
prassis.set(tabapp,"db0 -0");
prassis.set(confapp,"");
// statistiche
prassis.set_paragraph("sv");
prassis.set(tabapp,"sv0 -0");
prassis.set(confapp,"sv0 -3");
// provvigioni
prassis.set_paragraph("pr");
prassis.set(tabapp,"pr0 -4");
// MRP
prassis.set_paragraph("mr");
prassis.set(tabapp,"mr0 -0");
}
TConfig install ("install.ini");
install.for_each_paragraph(search_edit, NULL);
return TRUE;
}
bool TInstall_BA ::install_com()
{
bool ok=TRUE;
TStd_filename txtfile;
if (txtfile.check(TRUE,"lfiva.txt"))
{
TSystemisamfile tabcom(LF_TABCOM);
tabcom.load((const char *)txtfile);
}
return ok;
}
bool TInstall_BA ::load_default_data() const
{
TTable iva("%IVA");
const bool empty = iva.first() != NOERR;
return empty;
}
int bainst00(int argc, char** argv)
{
TInstall_BA app;
app.run(argc, argv);
return 0;
}