protected virtual IEnumerable filter() { PXCache cache = Caches[typeof(TEnqFilter)]; if (cache != null) { DiscrepancyEnqFilter filter = cache.Current as DiscrepancyEnqFilter; if (filter != null) { filter.TotalGLAmount = 0m; filter.TotalXXAmount = 0m; filter.TotalDiscrepancy = 0m; foreach (TEnqResult res in Rows.Select()) { filter.TotalGLAmount += (res.GLTurnover ?? 0m); filter.TotalXXAmount += (res.XXTurnover ?? 0m); filter.TotalDiscrepancy += (res.Discrepancy ?? 0m); } } } yield return(cache.Current); cache.IsDirty = false; }
protected virtual void PeriodToFieldUpdated(PXCache cache, PXFieldUpdatedEventArgs e) { DiscrepancyEnqFilter row = (DiscrepancyEnqFilter)e.Row; if (string.CompareOrdinal(row.PeriodFrom, row.PeriodTo) > 0) { cache.SetValue <DiscrepancyEnqFilter.periodFrom>(e.Row, row.PeriodTo); } }
public virtual IEnumerable NextPeriod(PXAdapter adapter) { DiscrepancyEnqFilter filter = Filter.Current as DiscrepancyEnqFilter; filter.UseMasterCalendar = filter.OrganizationID == null && filter.BranchID == null; int?calendarOrganizationID = FinPeriodRepository.GetCalendarOrganizationID(filter.OrganizationID, filter.BranchID, filter.UseMasterCalendar); FinPeriod nextPeriodFrom = FinPeriodRepository.FindNextPeriod(calendarOrganizationID, filter.PeriodFrom, looped: true); filter.PeriodFrom = nextPeriodFrom != null ? nextPeriodFrom.FinPeriodID : null; FinPeriod nextPeriodTo = FinPeriodRepository.FindNextPeriod(calendarOrganizationID, filter.PeriodTo, looped: true); filter.PeriodTo = nextPeriodTo != null ? nextPeriodTo.FinPeriodID : null; filter.FilterDetails = null; return(adapter.Get()); }
protected IEnumerable rows() { PXCache cache = Caches[typeof(TEnqFilter)]; DiscrepancyEnqFilter header = cache.Current as DiscrepancyEnqFilter; if (header.FilterDetails != null) { PXFieldState state = Filter.Cache.GetStateExt <DiscrepancyEnqFilter.filterDetails>(header) as PXFieldState; if (state?.Value is IEnumerable value) { return(value); } } List <TEnqResult> result = SelectDetails(); Filter.Cache.SetValueExt <DiscrepancyEnqFilter.filterDetails>(header, result); return(result); }
protected virtual void FilterRowUpdated(PXCache cache, PXRowUpdatedEventArgs e) { DiscrepancyEnqFilter row = (DiscrepancyEnqFilter)e.Row; row.FilterDetails = null; }