public static TDay DateFromInPeriod(Period period, TDate?dateFrom) { PeriodTerm dayTermFrom = TERM_BEG_FINISHED; DateTime periodDateBeg = new DateTime(period.Year(), period.Month(), 1); if (dateFrom != null) { dayTermFrom = (TDay)dateFrom.Value.Day; } if (dateFrom == null || dateFrom < periodDateBeg) { dayTermFrom = 1; } return(dayTermFrom); }
public static TDay DateEndsInPeriod(Period period, DateTime?dateEnds) { PeriodTerm dayTermEnd = TERM_END_FINISHED; TDay daysPeriod = (TDay)DateTime.DaysInMonth(period.Year(), period.Month()); DateTime periodDateEnd = new DateTime(period.Year(), period.Month(), (int)daysPeriod); if (dateEnds != null) { dayTermEnd = (TDay)dateEnds.Value.Day; } if (dateEnds == null || dateEnds > periodDateEnd) { dayTermEnd = (TDay)daysPeriod; } return(dayTermEnd); }