diff --git a/src/ci/ci1400.cpp b/src/ci/ci1400.cpp index c140b9a86..24ed38e32 100755 --- a/src/ci/ci1400.cpp +++ b/src/ci/ci1400.cpp @@ -47,6 +47,8 @@ class TRil_ore_cms_mask : public TAutomask { protected: virtual bool on_field_event(TOperable_field& o, TField_event e, long jolly); + const TString & tipostampa() const { return get(F_TIPOSTAMPA); } + const bool mensile() const { return tipostampa() == "M"; } bool elabora_commessa(const TString& curr_commessa, const int curr_mese, TReport& rep) const; @@ -88,13 +90,12 @@ bool TRil_ore_cms_mask::elabora_commessa(const TString& curr_commessa, const int { const TVariant tipo_cms_cdc = get(F_CMSOCDC); const bool per_commessa = tipo_cms_cdc.as_string() == "C"; - const char tipo_stampa = get(F_TIPOSTAMPA)[0]; const int anno = get_int(F_ANNO); - const int mese = tipo_stampa == 'M' ? curr_mese : 0; + const int mese = mensile() ? curr_mese : 0; //date del periodo TDate inizio_periodo, fine_periodo; - ci_inizio_fine_periodo(tipo_stampa, anno, mese, inizio_periodo, fine_periodo); + ci_inizio_fine_periodo(mensile(), anno, mese, inizio_periodo, fine_periodo); TAssoc_array righe; @@ -188,7 +189,7 @@ bool TRil_ore_cms_mask::elabora_commessa(const TString& curr_commessa, const int { if (giorni_lavorativi_rilore == 1 || ci_is_ferial_day(data)) { - const int index = tipo_stampa == 'M' ? data.day() : data.month(); + const int index = mensile() ? data.day() : data.month(); real prev = record->get(index); prev += ore_al_giorno; record->add(prev.string(), index);