#include #include "pd6342500a.h" #include "../ca/calib01.h" #include "../ca/movana.h" #include "../ca/rmovana.h" #include "../ve/velib.h" /////////////////////////////////////////////////////////// // TSaldi_ana_msk /////////////////////////////////////////////////////////// class TSaldi_ana_msk: public TAutomask { short _first_cdc, _first_cms, _first_fase, _first_conto; short _first_cdc_s, _first_cms_s, _first_fase_s, _first_conto_s; protected: void riempi_sheet(); virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly); public: TSaldi_ana_msk(); }; void TSaldi_ana_msk::riempi_sheet() { TString80 cdc; TString80 cms; TString80 fase; TString80 conto; ca_get_fields(*this, cdc, cms, fase, conto, _first_cdc, _first_cms, _first_fase, _first_conto, "CdC", "Cms", "Fase", "Conto"); TString query; query << "USE SALDANA\n" << "FROM ANNO=" << get_date(F_DADATA).year() << " CONTO=\"" << conto << "\" COSTO=\"" << cdc << "\" COMMESSA=\"" << cms << "\" FASE=\"" << fase << "\"\n" << "TO ANNO=" << get_date(F_ADATA).year() << " CONTO=\"" << conto << "\" COSTO=\"" << cdc << "\" COMMESSA=\"" << cms << "\" FASE=\"" << fase << "\""; TISAM_recordset saldana(query); } bool TSaldi_ana_msk::on_field_event(TOperable_field& o, TField_event e, long jolly) { switch(o.dlg()) { case DLG_FINDREC: if(e == fe_button) { riempi_sheet(); return false; } break; default: break; } return true; } TSaldi_ana_msk::TSaldi_ana_msk() : TAutomask("pd6342500a") { const TDate data(TODAY); const TDate primo(1, 1, data.year()); set(F_DADATA, primo); TConfig& cfg = ca_config(); const bool use_pdcc = cfg.get_bool("UsePdcc"); _first_cdc = _first_cms = _first_fase = _first_conto; _first_cdc_s = _first_cms_s = _first_fase_s = _first_conto_s; //sistema i campi degli sheet tenendo conto della configurazione dell'analitica ca_create_fields_ext(*this, 0, 2, 7, F_CDC1, 0, _first_cdc, _first_cms, _first_fase, _first_conto, "CdC", "Cms", "Fase", "Conto"); TSheet_field& sheet = sfield(F_SHEET); ca_create_fields_ext(sheet.sheet_mask(), 0, 2, 7, S_CDC1, 0, _first_cdc_s, _first_cms_s, _first_fase_s, _first_conto_s, "CdC", "Cms", "Fase", "Conto"); } /////////////////////////////////////////////////////////// // TSaldi_ana_app /////////////////////////////////////////////////////////// class TSaldi_ana_app: public TSkeleton_application { protected: virtual bool check_autorization() const {return false;} virtual const char * extra_modules() const {return "ca";} virtual void main_loop(); void elabora(); }; void TSaldi_ana_app::elabora() { } void TSaldi_ana_app::main_loop() { TSaldi_ana_msk m; bool running = true; while(m.run() == K_ENTER) { elabora(); } } int pd6342500(int argc, char* argv[]) { TSaldi_ana_app app; app.run(argc, argv, TR("Saldi Analitici")); return 0; }