#include #include #include #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; }