public virtual void CCTransactionsHistoryFilter_RowUpdated(PXCache sender, PXRowUpdatedEventArgs e) { CCTransactionsHistoryFilter row = (CCTransactionsHistoryFilter)e.Row; CCTransactionsHistoryFilter oldRow = (CCTransactionsHistoryFilter)e.OldRow; if (oldRow.PaymentMethodID != row.PaymentMethodID || oldRow.CardNumber != row.CardNumber || oldRow.PartialCardNumber != row.PartialCardNumber) { this.RecalcRow(row); } if (row.MaskedCardNumber != oldRow.MaskedCardNumber || row.DBSearchName != oldRow.DBSearchName) { PXResult <CustomerPaymentMethod> cnt = PXSelectJoinGroupBy <CustomerPaymentMethod, InnerJoin <Customer, On <Customer.bAccountID, Equal <CustomerPaymentMethod.bAccountID> > >, Where <CustomerPaymentMethod.paymentMethodID, Equal <Current <CCTransactionsHistoryFilter.paymentMethodID> >, And <CustomerPaymentMethod.descr, Like <Optional <CCTransactionsHistoryFilter.maskedCardNumber> >, And <Customer.acctName, Like <Optional <CCTransactionsHistoryFilter.dBSearchName> >, And <CustomerPaymentMethod.isActive, Equal <True> > > > >, Aggregate <Count <CustomerPaymentMethod.pMInstanceID> > > .Select(this, row.MaskedCardNumber, row.DBSearchName); int count = 0; if (cnt != null && cnt.RowCount != null) { count = (int)cnt.RowCount; row.NumberOfCards = cnt.RowCount; } row.PMInstanceID = count == 1 ? ((CustomerPaymentMethod)cnt).PMInstanceID : null; } }
public virtual void CCTransactionsHistoryFilter_PaymentMethodID_FieldUpdated(PXCache sender, PXFieldUpdatedEventArgs e) { CCTransactionsHistoryFilter row = (CCTransactionsHistoryFilter)e.Row; row.PMInstanceID = null; row.PartialCardNumber = string.Empty; }
public virtual IEnumerable cCTrans() { List <PXResult <CCProcTran, CustomerPaymentMethod, Customer, ARPayment> > res = new List <PXResult <CCProcTran, CustomerPaymentMethod, Customer, ARPayment> >(); CCTransactionsHistoryFilter filter = (CCTransactionsHistoryFilter)this.Filter.Current; if (filter != null && string.IsNullOrEmpty(filter.PaymentMethodID) == false && filter.StartDate.HasValue && filter.EndDate.HasValue && filter.PMInstanceID != null) { GetInternalData(filter.PaymentMethodID); PXSelectBase <CCProcTran> sel = new PXSelectJoin <CCProcTran, InnerJoin <CustomerPaymentMethod, On <CustomerPaymentMethod.pMInstanceID, Equal <CCProcTran.pMInstanceID> >, InnerJoin <Customer, On <CustomerPaymentMethod.bAccountID, Equal <Customer.bAccountID> >, LeftJoin <ARPayment, On <ARPayment.docType, Equal <CCProcTran.docType>, And <ARPayment.refNbr, Equal <CCProcTran.refNbr> > > > > > >(this); if (string.IsNullOrEmpty(filter.PaymentMethodID) == false) { sel.WhereAnd <Where <CustomerPaymentMethod.paymentMethodID, Equal <Current <CCTransactionsHistoryFilter.paymentMethodID> > > >(); } if (string.IsNullOrEmpty(filter.ProcessingCenterID) == false) { sel.WhereAnd <Where <CCProcTran.processingCenterID, Equal <Current <CCTransactionsHistoryFilter.processingCenterID> > > >(); } if (filter.StartDate.HasValue) { sel.WhereAnd <Where <CCProcTran.startTime, GreaterEqual <Current <CCTransactionsHistoryFilter.startDate> > > >(); } if (filter.EndDate.HasValue) { sel.WhereAnd <Where <CCProcTran.startTime, LessEqual <Current <CCTransactionsHistoryFilter.endDatePlusOne> > > >(); } if (filter.PMInstanceID.HasValue) { sel.WhereAnd <Where <CustomerPaymentMethod.pMInstanceID, Equal <Current <CCTransactionsHistoryFilter.pMInstanceID> > > >(); } foreach (PXResult <CCProcTran, CustomerPaymentMethod, Customer, ARPayment> it in sel.Select(CardNumber_DetailID, NameOnCard_DetailID)) { ARPayment payment = it; CCProcTran ccTran = it; if (ccTran.TranType == CCTranTypeCode.Credit || ccTran.TranType == CCTranTypeCode.VoidTran) { ARPayment voiding = PXSelect <ARPayment, Where <ARPayment.refNbr, Equal <Required <ARPayment.refNbr> >, And <ARPayment.docType, Equal <ARDocType.voidPayment> > > > .Select(this, payment.RefNbr); if (voiding != null) { ((ARPayment)it).DocType = ARDocType.VoidPayment; ((CCProcTran)it).DocType = ARDocType.VoidPayment; } } yield return(it); } } yield break; }
public virtual void CCTransactionsHistoryFilter_CardSearchType_FieldUpdated(PXCache sender, PXFieldUpdatedEventArgs e) { CCTransactionsHistoryFilter row = (CCTransactionsHistoryFilter)e.Row; if (row.CardSearchType == CardSearchOption.FullNumber) { row.PartialCardNumber = String.Empty; } else { row.CardNumber = String.Empty; } }
protected virtual void RecalcRow(CCTransactionsHistoryFilter aRow) { if (!string.IsNullOrEmpty(aRow.PaymentMethodID)) { PaymentMethodDetail def = PXSelect <PaymentMethodDetail, Where <PaymentMethodDetail.paymentMethodID, Equal <Optional <CCTransactionsHistoryFilter.paymentMethodID> >, And <PaymentMethodDetail.useFor, Equal <PaymentMethodDetailUsage.useForARCards>, And <PaymentMethodDetail.isIdentifier, Equal <True> > > > > .Select(this, aRow.PaymentMethodID); if (def != null) { aRow.MaskedCardNumber = CustomerPaymentMethodMaint.FormatDescription(aRow.PaymentMethodID, CustomerPaymentMethodMaint.IDObfuscator.RestoreToMasked(aRow.PartialCardNumber, def.DisplayMask, SqlDialect.WildcardAnySingle, false)); } } }
public virtual void CCTransactionsHistoryFilter_RowSelected(PXCache sender, PXRowSelectedEventArgs e) { if (e.Row == null) { return; } CCTransactionsHistoryFilter row = (CCTransactionsHistoryFilter)e.Row; PXUIFieldAttribute.SetEnabled <CCTransactionsHistoryFilter.cardNumber>(sender, e.Row, row.CardSearchType == CardSearchOption.FullNumber); PXUIFieldAttribute.SetEnabled <CCTransactionsHistoryFilter.partialCardNumber>(sender, e.Row, row.CardSearchType == CardSearchOption.PartialNumber); PXUIFieldAttribute.SetVisible <CCTransactionsHistoryFilter.cardNumber>(sender, e.Row, row.CardSearchType == CardSearchOption.FullNumber); PXUIFieldAttribute.SetVisible <CCTransactionsHistoryFilter.partialCardNumber>(sender, e.Row, row.CardSearchType == CardSearchOption.PartialNumber); PXUIFieldAttribute.SetEnabled <CCTransactionsHistoryFilter.partialCardNumber>(sender, e.Row, !string.IsNullOrEmpty(row.PaymentMethodID)); PXUIFieldAttribute.SetEnabled <CCTransactionsHistoryFilter.pMInstanceID>(sender, e.Row, !string.IsNullOrEmpty(row.PaymentMethodID)); PXUIFieldAttribute.SetEnabled <CCTransactionsHistoryFilter.nameOnCard>(sender, e.Row, !string.IsNullOrEmpty(row.PaymentMethodID)); }