public virtual void _(Events.RowUpdated <EPExpenseClaimDetails> e) { EPExpenseClaimDetails row = e.Row; EPExpenseClaimDetails oldrow = e.OldRow; if (!e.Cache.ObjectsEqual < EPExpenseClaimDetails.refNbr, EPExpenseClaimDetails.taxCategoryID, EPExpenseClaimDetails.taxCalcMode, EPExpenseClaimDetails.taxZoneID >(e.Row, e.OldRow)) { try { VerifyTransactions(row.TaxCalcMode, Base.Tax_Rows.Select(row.ClaimDetailID).RowCast <Tax>()); } catch (PXException ex) { e.Cache.RaiseExceptionHandling <EPExpenseClaimDetails.curyTaxTotal>(row, row.CuryTaxTotal, new PXSetPropertyException(ex.Message)); } } }
private void UnmatchBankTran(CABankTran origTran, bool isMassRelease) { if (origTran.DocumentMatched != true) { return; } CABankTran copy = (CABankTran)Details.Cache.CreateCopy(origTran); copy.Processed = false; foreach (CABankTranMatch match in TranMatch.Select(copy.TranID)) { if (match.DocModule == GL.BatchModule.AP && match.DocType == CATranType.CABatch) { foreach (CATran tran in CATransInBatch.Select(match.DocRefNbr)) { if (tran != null && tran.TranID != null && tran.ReconNbr == null) { tran.ClearDate = null; tran.Cleared = false; CATransInBatch.Update(tran); } } } else { CATran tran = CATrans.Select(match.CATranID); if (tran != null && tran.TranID != null && tran.ReconNbr == null) { tran.ClearDate = null; tran.Cleared = false; CATrans.Update(tran); } } if (CABankTransactionsMaint.IsMatchedToExpenseReceipt(match)) { EPExpenseClaimDetails receipt = PXSelect <EPExpenseClaimDetails, Where <EPExpenseClaimDetails.claimDetailCD, Equal <Required <EPExpenseClaimDetails.claimDetailCD> > > > .Select(this, match.DocRefNbr); receipt.BankTranDate = null; ExpenseReceipts.Update(receipt); } TranMatch.Delete(match); } foreach (var adj in TranAdj.Select(copy.TranID)) { TranAdj.Delete(adj); } foreach (var split in CABankTranSplits.Select(copy.TranID)) { CABankTranSplits.Delete(split); } CABankTransactionsMaint.ClearFields(copy); Details.Cache.SetDefaultExt <CABankTran.curyApplAmt>(copy); Details.Cache.SetDefaultExt <CABankTran.curyApplAmtCA>(copy); Details.Cache.SetDefaultExt <CABankTran.curyApplAmtMatch>(copy); Details.Update(copy); if (isMassRelease == false) { this.Save.Press(); } }