campo-sirio/at/at9500.cpp

89 lines
1.8 KiB
C++
Raw Normal View History

#include <applicat.h>
#include <automask.h>
#include <reprint.h>
#include "at9.h"
#include "at9500a.h"
class TMaskModInt : public TAutomask
{
protected:
virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly);
public:
TMaskModInt() : TAutomask("at9500a") { }
virtual ~TMaskModInt() { }
};
bool TMaskModInt::on_field_event(TOperable_field& o, TField_event e, long jolly)
{
switch (o.dlg())
{
case F_S_REPORT:
if (e == fe_button)
{
TFilename path = "at95*";
if (select_custom_file(path,"rep"))
o.set(path.name());
}
break;
default:
break;
}
return true;
}
class TTModInt : public TSkeleton_application
{
virtual bool check_autorization() const {return false;}
virtual const char * extra_modules() const {return "at";}
protected:
virtual void main_loop();
public:
};
void TTModInt::main_loop()
{
TMaskModInt m;
while (m.run() != K_QUIT)
{
TReport_book book;
TReport rep;
TFilename report_name(m.get(F_S_REPORT));
report_name.ext("rep");
report_name.custom_path();
if (rep.load(report_name))
{
TRecordset * r = rep.recordset();
if (r != NULL)
{
TVariant var;
var = m.get(F_S_CODICE);
r->set_var("#F_CODICE", var);
var = m.get(F_S_TESTO1);
r->set_var("#F_TESTO1", var);
var = m.get(F_S_TESTO2);
r->set_var("#F_TESTO2", var);
var = m.get(F_S_TESTO3);
r->set_var("#F_TESTO3", var);
var = m.get(F_S_TESTO4);
r->set_var("#F_TESTO4", var);
var = m.get(F_S_TESTO5);
r->set_var("#F_TESTO5", var);
}
book.add(rep);
if (book.pages() > 0)
book.print_or_preview();
}
}
}
int at9500(int argc, char* argv[])
{
TTModInt a;
a.run(argc, argv, "Stampa moduli intestati");
return 0;
}