public void OnReleaseComplete(ICADocument doc, OnReleaseCompleteDelegate baseMethod) { CAAdj cAAdj = doc as CAAdj; if (TWNGUIValidation.ActivateTWGUI(Base) == true && cAAdj != null && cAAdj.Released == true && cAAdj.AdjTranType == CATranType.CAAdjustment) { TWNReleaseProcess rp = PXGraph.CreateInstance <TWNReleaseProcess>(); PXSelectBase <TWNManualGUIBank> ViewManGUIBank = new SelectFrom <TWNManualGUIBank> .Where <TWNManualGUIBank.adjRefNbr.IsEqual <@P.AsString> > .View(Base); foreach (TWNManualGUIBank manualGUIBank in ViewManGUIBank.Cache.Cached) { if (PXCache <Tax> .GetExtension <TaxExt>(Tax.PK.Find(Base, manualGUIBank.TaxID)).UsrTWNGUI.Equals(false)) { continue; } using (PXTransactionScope ts = new PXTransactionScope()) { rp.CreateGUITrans(new STWNGUITran() { VATCode = manualGUIBank.VATInCode, GUINbr = manualGUIBank.GUINbr, GUIStatus = TWNGUIStatus.Used, BranchID = Base.CATranCashTrans_Ordered.Current.BranchID, GUIDirection = TWNGUIDirection.Receipt, GUIDate = manualGUIBank.GUIDate, GUITitle = (string)PXSelectorAttribute.GetField(ViewManGUIBank.Cache, manualGUIBank, typeof(APRegister.vendorID).Name, manualGUIBank.VendorID, typeof(Vendor.acctName).Name), TaxZoneID = manualGUIBank.TaxZoneID, TaxCategoryID = manualGUIBank.TaxCategoryID, TaxID = manualGUIBank.TaxID, TaxNbr = manualGUIBank.TaxNbr, OurTaxNbr = manualGUIBank.OurTaxNbr, NetAmount = manualGUIBank.NetAmt, TaxAmount = manualGUIBank.TaxAmt, AcctCD = (string)PXSelectorAttribute.GetField(ViewManGUIBank.Cache, manualGUIBank, typeof(APRegister.vendorID).Name, manualGUIBank.VendorID, typeof(Vendor.acctCD).Name), AcctName = (string)PXSelectorAttribute.GetField(ViewManGUIBank.Cache, manualGUIBank, typeof(APRegister.vendorID).Name, manualGUIBank.VendorID, typeof(Vendor.acctName).Name), DeductionCode = manualGUIBank.Deduction, Remark = manualGUIBank.Remark, OrderNbr = manualGUIBank.AdjRefNbr }); ts.Complete(Base); } } } baseMethod(doc); }
protected virtual void ReverseCharges(ICADocument oldDoc, ICADocument newDoc, bool reverseSign) { foreach (PXResult <ChargeTable> paycharge in PXSelect <ChargeTable, Where <ChargeRefNbr, Equal <Required <ChargeRefNbr> > > > .Select(this._Graph, oldDoc.RefNbr)) { ChargeTable charge = ReverseCharge((ChargeTable)paycharge, reverseSign); this.Insert(charge); } }
protected virtual void ReverseCharges(ICADocument oldDoc, ICADocument newDoc, bool reverseSign) { foreach (PXResult <ChargeTable> paycharge in PXSelect <ChargeTable, Where <ChargeRefNbr, Equal <Required <ChargeRefNbr> > > > .Select(this._Graph, oldDoc.RefNbr)) { ChargeTable charge = PXCache <ChargeTable> .CreateCopy((ChargeTable)paycharge); CurrencyInfo chargeInfo = CreateCuryInfo(charge); charge.DocType = CATranType.CATransferExp; charge.CuryInfoID = chargeInfo.CuryInfoID; charge.RefNbr = null; charge.CuryTranAmt = (reverseSign ? -1 : 1) * charge.CuryTranAmt; charge.Released = false; charge.CashTranID = null; this.Insert(charge); } }
public void ReverseExpenses(ICADocument oldDoc, ICADocument newDoc) { ReverseCharges(oldDoc, newDoc, true); }