protected virtual void EPGenerateWeeksDialog_RowSelected(PXCache cache, PXRowSelectedEventArgs e) { EPGenerateWeeksDialog row = (EPGenerateWeeksDialog)e.Row; if (row == null) { return; } if (row.CutOffDayOne == EPGenerateWeeksDialog.CutOffDayListAttribute.FixedDayOfMonth) { PXUIFieldAttribute.SetEnabled <EPGenerateWeeksDialog.dayOne>(cache, row, true); PXUIFieldAttribute.SetRequired <EPGenerateWeeksDialog.dayOne>(cache, true); PXUIFieldAttribute.SetEnabled <EPGenerateWeeksDialog.cutOffDayTwo>(cache, row, true); PXDefaultAttribute.SetPersistingCheck <EPGenerateWeeksDialog.dayOne>(cache, row, PXPersistingCheck.NullOrBlank); } else { PXUIFieldAttribute.SetEnabled <EPGenerateWeeksDialog.cutOffDayTwo>(cache, row, false); PXUIFieldAttribute.SetEnabled <EPGenerateWeeksDialog.dayOne>(cache, row, false); row.DayOne = null; row.DayTwo = null; row.CutOffDayTwo = EPGenerateWeeksDialog.CutOffDayListAttribute.None; } if (row.CutOffDayTwo == EPGenerateWeeksDialog.CutOffDayListAttribute.FixedDayOfMonth) { PXUIFieldAttribute.SetEnabled <EPGenerateWeeksDialog.dayTwo>(cache, row, true); PXUIFieldAttribute.SetRequired <EPGenerateWeeksDialog.dayTwo>(cache, true); PXDefaultAttribute.SetPersistingCheck <EPGenerateWeeksDialog.dayTwo>(cache, row, PXPersistingCheck.NullOrBlank); } else { PXUIFieldAttribute.SetEnabled <EPGenerateWeeksDialog.dayTwo>(cache, row, false); row.DayTwo = null; } EPCustomWeek lastWeek = (EPCustomWeek)PXSelectOrderBy <EPCustomWeek, OrderBy <Desc <EPCustomWeek.number> > > .Select(this); if (lastWeek != null) { PXUIFieldAttribute.SetEnabled <EPGenerateWeeksDialog.fromDate>(cache, row, false); } }
protected virtual void EPGenerateWeeksDialog_TillDate_FieldVerifying(PXCache cache, PXFieldVerifyingEventArgs e) { EPGenerateWeeksDialog row = (EPGenerateWeeksDialog)e.Row; if (e.NewValue == null || row == null) { return; } if ((DateTime)e.NewValue < row.FromDate) { e.Cancel = true; throw new PXSetPropertyException(ErrorMessages.EndDateLessThanStartDate, PXUIFieldAttribute.GetDisplayName <EPGenerateWeeksDialog.tillDate>(cache), PXUIFieldAttribute.GetDisplayName <EPGenerateWeeksDialog.fromDate>(cache), row.FromDate); } DateTime?lastUsingDate = GetLasttUsingWeek(); if (lastUsingDate != null && (DateTime)e.NewValue < lastUsingDate) { e.Cancel = true; throw new PXSetPropertyException(Messages.ExistsActivitiesLessThanDate, PXUIFieldAttribute.GetDisplayName <EPGenerateWeeksDialog.tillDate>(cache), lastUsingDate); } }
protected virtual void EPGenerateWeeksDialog_FromDate_FieldVerifying(PXCache cache, PXFieldVerifyingEventArgs e) { EPGenerateWeeksDialog row = (EPGenerateWeeksDialog)e.Row; if (e.NewValue == null || row == null) { return; } if ((DateTime)e.NewValue > row.TillDate) { e.Cancel = true; throw new PXSetPropertyException(ErrorMessages.StartDateGreaterThanEndDate, PXUIFieldAttribute.GetDisplayName <EPGenerateWeeksDialog.fromDate>(cache), PXUIFieldAttribute.GetDisplayName <EPGenerateWeeksDialog.tillDate>(cache), row.FromDate); } DateTime? firstUsingDate = GetFirstUsingWeek(); EPCustomWeek lastWeek = (EPCustomWeek)PXSelectOrderBy <EPCustomWeek, OrderBy <Desc <EPCustomWeek.weekID> > > .SelectSingleBound(this, null); if (firstUsingDate != null && (DateTime)e.NewValue > firstUsingDate && lastWeek == null) { e.Cancel = true; throw new PXSetPropertyException(Messages.ExistsActivitiesGreateThanDate, PXUIFieldAttribute.GetDisplayName <EPGenerateWeeksDialog.fromDate>(cache), firstUsingDate); } }