public void SplitFilter_SplitDate_FieldDefaulting(PXCache sender, PXFieldDefaultingEventArgs e) { SplitFilter filter = (SplitFilter)e.Row; if (filter == null) { return; } FABookBalance bal = PXSelect <FABookBalance, Where <FABookBalance.assetID, Equal <Current <SplitFilter.assetID> > >, OrderBy <Desc <FABookBalance.updateGL> > > .SelectSingleBound(this, new object[] { filter }); if (bal != null) { if (string.IsNullOrEmpty(bal.CurrDeprPeriod) && !string.IsNullOrEmpty(bal.LastDeprPeriod)) { e.NewValue = FABookPeriodIDAttribute.PeriodStartDate(this, FABookPeriodIDAttribute.PeriodPlusPeriod(this, bal.LastDeprPeriod, 1, bal.BookID), bal.BookID); } else { FABookPeriod todayPeriod = FABookPeriodIDAttribute.FABookPeriodFromDate(this, Accessinfo.BusinessDate, bal.BookID); e.NewValue = string.CompareOrdinal(bal.CurrDeprPeriod, todayPeriod.FinPeriodID) > 0 ? FABookPeriodIDAttribute.PeriodStartDate(this, bal.CurrDeprPeriod, bal.BookID) : Accessinfo.BusinessDate; } } else { e.NewValue = Accessinfo.BusinessDate; } }
protected virtual void _(Events.RowSelected <SplitParams> e) { SplitFilter filter = (SplitFilter)e.Cache.Graph.Caches <SplitFilter>().Current; (decimal minValue, decimal maxValue) = AssetMaint.GetSignedRange(filter.Cost); e.Cache.Adjust <PXDBDecimalAttribute>(e.Row) .For <SplitParams.cost>(decimalAttr => { decimalAttr.MinValue = (double)minValue; decimalAttr.MaxValue = (double)maxValue; }); }
public void SplitFilter_RowSelected(PXCache sender, PXRowSelectedEventArgs e) { SplitFilter filter = (SplitFilter)e.Row; if (filter == null) { return; } PXProcessingStep[] targets = PXAutomation.GetProcessingSteps(this); if (targets.Length > 0) { Splits.SetProcessTarget(targets[0].GraphName, targets.Length > 1 ? null : targets[0].Name, targets[0].Actions[0].Name, targets[0].Actions[0].Menus[0], filter.SplitDate, filter.SplitPeriodID, null, null, null, null, null, filter.DeprBeforeSplit, null, filter.AssetID); } else { throw new PXException(SO.Messages.MissingMassProcessWorkFlow); } Splits.SetProcessVisible(false); Splits.SetProcessAllEnabled(filter.AssetID != null && filter.SplitPeriodID != null); Splits.SetProcessAllCaption(Messages.Split); Splits.Cache.AllowInsert = filter.AssetID != null; Splits.Cache.AllowUpdate = filter.AssetID != null; Splits.Cache.AllowDelete = true; PXUIFieldAttribute.SetEnabled <SplitParams.cost>(Splits.Cache, null, true); PXUIFieldAttribute.SetEnabled <SplitParams.splittedQty>(Splits.Cache, null, true); PXUIFieldAttribute.SetEnabled <SplitParams.ratio>(Splits.Cache, null, true); Numbering nbr = assetNumbering.Select(); PXUIFieldAttribute.SetEnabled <SplitParams.splittedAssetCD>(Splits.Cache, null, nbr == null || nbr.UserNumbering == true); PXUIFieldAttribute.SetEnabled <SplitFilter.deprBeforeSplit>(sender, filter, fasetup.Current.AutoReleaseDepr == true); FixedAsset asset = PXSelect <FixedAsset, Where <FixedAsset.assetID, Equal <Required <SplitFilter.assetID> > > > .Select(this, filter.AssetID); PXUIFieldAttribute.SetVisible <SplitFilter.deprBeforeSplit>(sender, filter, asset == null || asset.Depreciable == true); }
public void SplitParams_SplittedQty_FieldUpdated(PXCache sender, PXFieldUpdatedEventArgs e) { SplitParams parms = (SplitParams)e.Row; SplitFilter filter = Filter.Current; if (parms == null || filter == null) { return; } object rounded = parms.SplittedQty * filter.Cost / filter.Qty; sender.RaiseFieldUpdating <SplitParams.cost>(parms, ref rounded); parms.Cost = (decimal?)rounded; rounded = parms.SplittedQty * 100 / filter.Qty; sender.RaiseFieldUpdating <SplitParams.ratio>(parms, ref rounded); parms.Ratio = (decimal?)rounded; }
public void SplitFilter_AssetID_FieldVerifying(PXCache sender, PXFieldVerifyingEventArgs e) { SplitFilter filter = (SplitFilter)e.Row; FATran tran = PXSelect <FATran, Where <FATran.assetID, Equal <Required <SplitFilter.assetID> >, And <FATran.released, NotEqual <True> > > > .Select(this, e.NewValue); if (tran != null) { if (filter.AssetID != null) { FixedAsset asset = PXSelect <FixedAsset, Where <FixedAsset.assetID, Equal <Required <SplitFilter.assetID> > > > .Select(this, filter.AssetID); e.NewValue = asset.AssetCD; } else { e.NewValue = null; } throw new PXSetPropertyException(Messages.AssetHasUnreleasedTran); } }
public void SplitParams_Ratio_FieldUpdated(PXCache sender, PXFieldUpdatedEventArgs e) { SplitParams parms = (SplitParams)e.Row; SplitFilter filter = Filter.Current; if (parms == null || filter == null) { return; } object rounded; if (parms.SplittedQty == null || parms.SplittedQty == 0m) { rounded = parms.Ratio * filter.Qty / 100; sender.RaiseFieldUpdating <SplitParams.splittedQty>(parms, ref rounded); parms.SplittedQty = (decimal?)rounded; } rounded = parms.Ratio * filter.Cost / 100; sender.RaiseFieldUpdating <SplitParams.cost>(parms, ref rounded); parms.Cost = (decimal?)rounded; }
public void SplitParams_Cost_FieldUpdated(PXCache sender, PXFieldUpdatedEventArgs e) { SplitParams parms = (SplitParams)e.Row; SplitFilter filter = Filter.Current; if (parms == null || filter == null) { return; } object rounded; if (parms.Qty == null || parms.Qty == 0m) { rounded = parms.Cost * filter.Qty / filter.Cost; sender.RaiseFieldUpdating <SplitParams.qty>(parms, ref rounded); parms.Qty = (decimal?)rounded; } rounded = parms.Cost * 100 / filter.Cost; sender.RaiseFieldUpdating <SplitParams.ratio>(parms, ref rounded); parms.Ratio = (decimal?)rounded; }
public void AddFilter(IFilter <PublishContext <T> > filter) { var splitFilter = new SplitFilter <PublishContext <TMessage>, PublishContext <T> >(filter, ContextProvider, InputContextProvider); _builder.AddFilter(splitFilter); }
public void AddFilter(IFilter <SendContext <TMessage> > filter) { var splitFilter = new SplitFilter <PublishContext <TMessage>, SendContext <TMessage> >(filter, MergeContext, FilterContext); _builder.AddFilter(splitFilter); }
public void AddFilter(IFilter <TFilter> filter) { var splitFilter = new SplitFilter <TContext, TFilter>(filter, _contextProvider, _inputContextProvider); _builder.AddFilter(splitFilter); }