protected override bool PrepareInsert(PXCache sender, object row, PXAccumulatorCollection columns) { if (!base.PrepareInsert(sender, row, columns)) { return(false); } PMUnbilledDailySummaryAccum item = (PMUnbilledDailySummaryAccum)row; columns.Update <PMUnbilledDailySummaryAccum.billable>(item.Billable, PXDataFieldAssign.AssignBehavior.Summarize); columns.Update <PMUnbilledDailySummaryAccum.nonBillable>(item.NonBillable, PXDataFieldAssign.AssignBehavior.Summarize); return(true); }
private static void UpdateUnbilledSummary(PXGraph graph, PMTran tran, bool reverse) { if (tran.ProjectID == null || tran.TaskID == null || tran.AccountGroupID == null || tran.Date == null) { return; } graph.Views.Caches.Add(typeof(PMUnbilledDailySummaryAccum)); int counter = reverse ? -1 : 1; PMUnbilledDailySummaryAccum unbilled = new PMUnbilledDailySummaryAccum(); unbilled.ProjectID = tran.ProjectID; unbilled.TaskID = tran.TaskID; unbilled.AccountGroupID = tran.AccountGroupID; unbilled.Date = tran.Date; unbilled = (PMUnbilledDailySummaryAccum)graph.Caches[typeof(PMUnbilledDailySummaryAccum)].Insert(unbilled); unbilled.Billable += tran.Billable == true ? counter : 0; unbilled.NonBillable += tran.Billable == true ? 0 : counter; }