public void INTranSplit_RowUpdated(PXCache sender, PXRowUpdatedEventArgs e, PXRowUpdated BaseInvoke)
        {
            if (BaseInvoke != null)
            {
                BaseInvoke(sender, e);
            }

            AssociateAttributeToLotSerial((INTranSplit)e.Row);
        }
Example #2
0
        protected void _(Events.RowUpdated <ARInvoice> e, PXRowUpdated baseHandler)
        {
            baseHandler?.Invoke(e.Cache, e.Args);

            /// When using the copy and paste feature, don't bring the source GUI number into the new one.
            if (Base.IsCopyPasteContext.Equals(true))
            {
                PXCache <ARRegister> .GetExtension <ARRegisterExt>(e.Row).UsrGUINbr = null;
            }
        }
        public virtual void RemovePreUpdatedEvent(Type entity, PXRowUpdated del)
        {
            List <PXRowUpdated> evLst;

            if (!_preupdatedevents.TryGetValue(entity, out evLst))
            {
                return;
            }
            evLst.Remove(del);
        }
        public virtual void AppendPreUpdatedEvent(Type entity, PXRowUpdated del)
        {
            List <PXRowUpdated> evLst;

            if (!_preupdatedevents.TryGetValue(entity, out evLst))
            {
                evLst = new List <PXRowUpdated>();
            }
            evLst.Add(del);
            _preupdatedevents[entity] = evLst;
        }
Example #5
0
 protected virtual void Batch_RowUpdated(PXCache sender, PXRowUpdatedEventArgs e, PXRowUpdated baseHandler)
 {
     if (!(e.Row is Batch row))
     {
         return;
     }
     CustomUpdate(row);
     baseHandler?.Invoke(sender, e);
 }
        protected virtual void SOLine_RowUpdated(PXCache sender, PXRowUpdatedEventArgs e, PXRowUpdated del)
        {
            del?.Invoke(sender, e);

            var row    = (SOLine)e.Row;
            var oldRow = (SOLine)e.OldRow;

            if (row == null || oldRow == null)
            {
                return;
            }

            //TODO: use base qty in case order UOM diff from blanket

            var rowExt         = row.GetExtension <SOLineDAExtension>();
            var orderQtyChange = oldRow.OrderQty.GetValueOrDefault() - row.OrderQty.GetValueOrDefault();

            if (orderQtyChange == 0)
            {
                return;
            }

            if (IsBlanketOrder)
            {
                row.OpenQty = Math.Max(row.OrderQty.GetValueOrDefault() - rowExt.DABlanketOrderQty.GetValueOrDefault(), 0m);
                return;
            }

            UpdateParentBlanketOrderLine(row, orderQtyChange * -1);
        }
        protected virtual void SOShipLine_RowUpdated(PXCache sender, PXRowUpdatedEventArgs e, PXRowUpdated baseHandler)
        {
            if (!(e.Row is SOShipLine))
            {
                return;
            }
            baseHandler?.Invoke(sender, e);
            SOShipLine row                = e.Row as SOShipLine;
            SOLine     soLine             = KCSOLineByLineNbrAndOrderNbr.SelectSingle(row.OrigLineNbr, row.OrigOrderNbr);
            int?       UsrKNMasterLineNbr = soLine?.GetExtension <SOLinePCExt>().UsrKNMasterLineNbr;

            if (soLine != null && soLine.GetExtension <SOLinePCExt>().UsrKNMasterLineNbr == soLine.LineNbr && row.LocationID == null)
            {
                SOShipLine childLine     = KCSOLineByMasterLineAndOrderNbr.Select(UsrKNMasterLineNbr, row.OrigOrderNbr).RowCast <SOLine>().Where(x => x.LineNbr != soLine.LineNbr).FirstOrDefault();
                SOShipLine childShipLine = Base.Transactions.Select().RowCast <SOShipLine>().Where(x => x.OrigLineNbr == childLine?.LineNbr).FirstOrDefault();
                row.LocationID = childShipLine?.LocationID;
            }
        }