#ifndef __CI1350_H #define __CI1350_H #include #include #include /////////////////////////////////////////////////////////// // Recordset generici validi per le stampe ci1300 ci1400 /////////////////////////////////////////////////////////// class TRil_ore_recordset : public TAS400_recordset { public: TRil_ore_recordset(); }; class TRil_ore_cms_recordset : public TISAM_recordset { static TString_array _list; static bool _ignore; static bool cms_cdc_filter(const TRelation* rel); protected: virtual void set_custom_filter(TCursor& cursor) const; public: void set_list(const TString_array& list, bool ignore) { _list = list; _ignore = ignore; } TRil_ore_cms_recordset(const char* query) : TISAM_recordset(query) {} }; #define OTHER_ACTIVITIES "^ALTRE^" /////////////////////////////////////////////////////////////////////////////////////// // Metodi liberi per determinare giorni lavorativi e feriali (nati per ci1300 ci1400) // e per formattare e riempire i report corrispondenti /////////////////////////////////////////////////////////////////////////////////////// void ci_inizio_fine_periodo(const char tipo_stampa, const int anno, const int mese, TDate& inizio_periodo, TDate& fine_periodo); bool ci_is_ferial_day(const TDate& data); long ci_calcola_giorni_lavorativi(const TDate& dataini, const TDate& datafine); long ci_calcola_giorni_lavorativi_intersezione(const TDate& ini_1, const TDate& fine_1, const TDate& ini_2, const TDate& fine_2, TDate& ini_int, TDate& fine_int); void ci_fill_recset_from_ass(TAssoc_array& ass, TReport& rep); void format_report_month(const int anno, const int mese, TReport& rep); #endif