89 lines
2.4 KiB
C++
Executable File
89 lines
2.4 KiB
C++
Executable File
#include <mask.h>
|
|
#include <applicat.h>
|
|
#include <form.h>
|
|
#include "provv.h"
|
|
#include "pr1300a.h"
|
|
class TStampa_schedeprovv : public TSkeleton_application
|
|
{
|
|
protected:
|
|
virtual bool create();
|
|
virtual bool destroy();
|
|
virtual void main_loop();
|
|
};
|
|
|
|
bool TStampa_schedeprovv::create()
|
|
{
|
|
return TSkeleton_application::create();
|
|
}
|
|
|
|
bool TStampa_schedeprovv::destroy()
|
|
{
|
|
|
|
return TSkeleton_application::destroy();
|
|
}
|
|
|
|
void TStampa_schedeprovv::main_loop()
|
|
{
|
|
TMask m("pr1300a");
|
|
TForm frm("pr1300a");
|
|
/*
|
|
TForm frm("pr1300a");
|
|
const TPrint_section& head = frm.section('H', odd_page);
|
|
const TPrint_section& foot = frm.section('F', odd_page);
|
|
|
|
const int hh = head.height();
|
|
const int fh = foot.height();
|
|
const int fl = printer().formlen();
|
|
|
|
int rows[4]; // Righe orizzontali
|
|
rows[0] = hh-2; // Terzultima riga della testata
|
|
rows[1] = hh; // Ultima riga della testata
|
|
rows[2] = fl-fh+1; // Prima riga del footer
|
|
rows[3] = 0;
|
|
int rows[4]; // Righe orizzontali
|
|
rows[0] = 2; // Terzultima riga della testata
|
|
rows[1] = 4; // Ultima riga della testata
|
|
rows[2] = 60; // Prima riga del footer
|
|
rows[3] = 0;
|
|
frm.genera_fincatura(odd_page, rows[0], rows[1], rows);
|
|
frm.genera_intestazioni(odd_page, rows[1]-1);
|
|
*/
|
|
|
|
while (m.run()!=K_QUIT)
|
|
{
|
|
|
|
// filtro e regione
|
|
if (m.get(F_FILTRO).not_empty())
|
|
{
|
|
TString filter(PROV_SALDATA);
|
|
if (m.get(F_FILTRO)[0]=='P')
|
|
filter << "==\"X\"" ;
|
|
else
|
|
filter << "!=\"X\"" ;
|
|
frm.cursor()->setfilter(filter);
|
|
} else
|
|
frm.cursor()->setfilter("");
|
|
|
|
TRectype start(LF_PROVV),end(LF_PROVV);
|
|
if (m.get(F_DAAGE).not_empty())
|
|
start.put(PROV_CODAGE,m.get(F_DAAGE));
|
|
if (m.get(F_AAGE).not_empty())
|
|
end.put(PROV_CODAGE,m.get(F_AAGE));
|
|
frm.cursor()->setregion(start,end);
|
|
// abilita le sezioni dei totali
|
|
frm.find_field('B',odd_page,"CLIENTI").show(!m.get_bool(F_RAGGCLI));
|
|
frm.find_field('B',odd_page,"HCLIENTI").show(!m.get_bool(F_RAGGDOC));
|
|
frm.find_field('B',odd_page,"DOCUMENTI").show(!m.get_bool(F_RAGGDOC));
|
|
frm.find_field('B',odd_page,"HDOCUMENTI").show(!m.get_bool(F_RAGGRATE));
|
|
frm.find_field('B',odd_page,"RATEDOC").show(!m.get_bool(F_RAGGRATE));
|
|
frm.print();
|
|
}
|
|
}
|
|
|
|
int pr1300(int argc, char** argv)
|
|
{
|
|
TStampa_schedeprovv a;
|
|
a.run(argc,argv,"Stampa schede di provvigione");
|
|
return 0;
|
|
}
|