protected virtual void INRegister_RowSelected(PXCache sender, PXRowSelectedEventArgs e) { if (e.Row == null) { return; } release.SetEnabled(e.Row != null && ((INRegister)e.Row).Hold == false && ((INRegister)e.Row).Released == false); iNEdit.SetEnabled(e.Row != null && ((INRegister)e.Row).Hold == false && ((INRegister)e.Row).Released == false); iNRegisterDetails.SetEnabled(e.Row != null && ((INRegister)e.Row).Released == true); PXUIFieldAttribute.SetEnabled(sender, e.Row, ((INRegister)e.Row).Released == false && ((INRegister)e.Row).OrigModule == GL.BatchModule.IN); PXUIFieldAttribute.SetEnabled <INRegister.refNbr>(sender, e.Row, true); PXUIFieldAttribute.SetEnabled <INRegister.totalQty>(sender, e.Row, false); PXUIFieldAttribute.SetEnabled <INRegister.totalAmount>(sender, e.Row, false); PXUIFieldAttribute.SetEnabled <INRegister.totalCost>(sender, e.Row, false); PXUIFieldAttribute.SetEnabled <INRegister.status>(sender, e.Row, false); sender.AllowInsert = true; sender.AllowUpdate = (((INRegister)e.Row).Released == false); sender.AllowDelete = (((INRegister)e.Row).Released == false && ((INRegister)e.Row).OrigModule == GL.BatchModule.IN); lsselect.AllowInsert = (((INRegister)e.Row).Released == false && ((INRegister)e.Row).OrigModule == GL.BatchModule.IN); lsselect.AllowUpdate = (((INRegister)e.Row).Released == false); lsselect.AllowDelete = (((INRegister)e.Row).Released == false && ((INRegister)e.Row).OrigModule == GL.BatchModule.IN); addInvBySite.SetEnabled(lsselect.AllowInsert); PXUIFieldAttribute.SetVisible <INRegister.controlQty>(sender, e.Row, (bool)insetup.Current.RequireControlTotal); PXUIFieldAttribute.SetVisible <INRegister.controlAmount>(sender, e.Row, (bool)insetup.Current.RequireControlTotal); PXUIFieldAttribute.SetVisible <INTran.projectID>(transactions.Cache, null, IsPMVisible); PXUIFieldAttribute.SetVisible <INTran.taskID>(transactions.Cache, null, IsPMVisible); PXUIFieldAttribute.SetVisible <INRegister.totalCost>(sender, e.Row, ((INRegister)e.Row).Released == true); /// added because IN Transfer is created via INIssueEntry in /// <see cref="SO.SOShipmentEntry.PostShipment(INIssueEntry, PXResult{SO.SOOrderShipment, SO.SOOrder}, DocumentList{INRegister}, AR.ARInvoice)"/> // TODO: move it to the Ctor or CacheAttached in 2019R1 after AC-118791 switch (((INRegister)e.Row).DocType) { case INDocType.Issue: PXFormulaAttribute.SetAggregate <INTran.tranAmt>(transactions.Cache, typeof(SumCalc <INRegister.totalAmount>)); break; default: PXFormulaAttribute.SetAggregate <INTran.tranAmt>(transactions.Cache, null); break; } }
protected virtual void _(Events.RowSelected <APInvoice> e) { PXFormulaAttribute.SetAggregate <APTran.curyTranAmt>(Base.Transactions.Cache, (e.Row.DocType == APDocType.Prepayment) ? typeof(SumCalc <POOrderPrepayment.curyLineTotal>) : null); }