#ifndef __CI0400_H #define __CI0400_H /////////////////////////////////////////////////////////// // TImmissioneDocumenti_mask /////////////////////////////////////////////////////////// class TImmissioneDocumenti_mask : public TAlmanac_mask { protected: public: // ereditato da TAlmanac_mask virtual bool is_date_void(TDate& cdate); virtual void change_year(int newyear); public: // apertura del foglio interno di gestione dei documenti void open_inner_sheet(TDate date, TString doctype); private: // chiamata del programma ve0 void call_ve0(int exitval, TRelation& relation, TDate& date, TString& doctype); public: // Costruttore TImmissioneDocumenti_mask() : TAlmanac_mask("ci0400a") { } // Distruttore ~TImmissioneDocumenti_mask() { } }; /////////////////////////////////////////////////////////// // TImmissioneDocumenti_app /////////////////////////////////////////////////////////// class TImmissioneDocumenti_app: public TSkeleton_application { private: TImmissioneDocumenti_mask* _mask; TString_array _tabs; // titoli dei tabs TString_array _filters; // filtri tipodoc per ogni tab TBit_array _flags; // flag di presenza dei documenti TDate _newyearsday; // capodanno dell'anno corrente, per uso interno int _year; // anno corrente private: void init_tabs(); void init_flags(); protected: virtual bool create(void); virtual void main_loop(); virtual bool destroy(void) ; public: bool has_documents(TDate& day); // passata come funzione alla maschera void change_year(int newyear); // passata come funzione alla maschera public: TImmissioneDocumenti_app() : _flags(366), _year(TDate(TODAY).year()), _newyearsday(1,1,_year) {} virtual ~TImmissioneDocumenti_app() {} }; inline TImmissioneDocumenti_app& immissione_documenti_app() { return (TImmissioneDocumenti_app&)main_app(); } #endif // __CI0400_H