Esempio n. 1
0
        public override void RowUpdated(PXCache sender, PXRowUpdatedEventArgs e)
        {
            EPExpenseClaimDetails row = (EPExpenseClaimDetails)e.Row;

            if (row.LegacyReceipt == true)
            {
                if (!object.Equals(GetTaxCategory(sender, e.OldRow), GetTaxCategory(sender, e.Row)) ||
                    !object.Equals(GetCuryTranAmt(sender, e.OldRow), GetCuryTranAmt(sender, e.Row)) ||
                    !object.Equals(GetTaxZoneLocal(sender, e.OldRow), GetTaxZoneLocal(sender, e.Row)) ||
                    !object.Equals(GetRefNbr(sender, e.OldRow), GetRefNbr(sender, e.Row)) ||
                    !object.Equals(GetTaxID(sender, e.OldRow), GetTaxID(sender, e.Row)))
                {
                    EPClaimReceiptController.DeleteLegacyTaxRows(sender.Graph, row.RefNbr);

                    PXCache cache = sender.Graph.Caches[_ChildType];
                    Preload(sender);

                    List <object> details = this.ChildSelect(cache, e.Row);
                    ReDefaultTaxes(cache, details);

                    _ParentRow = e.Row;
                    CalcTaxes(cache, null);
                    _ParentRow        = null;
                    row.LegacyReceipt = false;
                }
            }
            base.RowUpdated(sender, e);
        }
Esempio n. 2
0
        protected virtual void EPExpenseClaimDetails_RowDeleted(PXCache cache, PXRowDeletedEventArgs e)
        {
            EPExpenseClaimDetails row = e.Row as EPExpenseClaimDetails;

            if (row == null)
            {
                return;
            }

            EPClaimReceiptController.DeleteLegacyTaxRows(this, row.RefNbr);
        }
Esempio n. 3
0
        protected virtual void EPExpenseClaimDetails_RowUpdated(PXCache cache, PXRowUpdatedEventArgs e)
        {
            EPExpenseClaimDetails row    = e.Row as EPExpenseClaimDetails;
            EPExpenseClaimDetails oldRow = e.OldRow as EPExpenseClaimDetails;

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

            if (row.RefNbr != oldRow.RefNbr || row.TaxCategoryID != oldRow.TaxCategoryID || row.TaxCalcMode != oldRow.TaxCalcMode || row.TaxZoneID != oldRow.TaxZoneID)
            {
                EPClaimReceiptController.DeleteLegacyTaxRows(this, row.RefNbr);
            }

            if (e.ExternalCall && !this.IsMobile)
            {
                if (row.TaxZoneID != oldRow.TaxZoneID && !string.IsNullOrEmpty(row.TaxZoneID))
                {
                    EPEmployee employee = Employee.Select();

                    string taxZoneID = employee.ReceiptAndClaimTaxZoneID;
                    if (string.IsNullOrEmpty(taxZoneID))
                    {
                        Location location = PXSelect <Location,
                                                      Where <Location.locationID, Equal <Required <EPEmployee.defLocationID> > > > .Select(this, employee.DefLocationID);

                        taxZoneID = location?.VTaxZoneID;
                    }

                    if (row.TaxZoneID != taxZoneID)
                    {
                        Employee.Current = employee;
                        TaxZoneUpdateAskView.View.AskExt();
                    }
                }
            }
        }