protected int?GetInstanceId(V2.TranProfile input) { int? instanceID = PaymentTranExtConstants.NewPaymentProfile; PXCache cpmCache = Base.Caches[typeof(CustomerPaymentMethod)]; cpmCache.ClearQueryCacheObsolete(); PXSelectBase <CustomerPaymentMethod> query = new PXSelectReadonly2 <CustomerPaymentMethod, InnerJoin <CustomerPaymentMethodDetail, On <CustomerPaymentMethod.pMInstanceID, Equal <CustomerPaymentMethodDetail.pMInstanceID> >, InnerJoin <PaymentMethodDetail, On <CustomerPaymentMethodDetail.detailID, Equal <PaymentMethodDetail.detailID>, And <CustomerPaymentMethodDetail.paymentMethodID, Equal <PaymentMethodDetail.paymentMethodID> > > > >, Where <CustomerPaymentMethod.cCProcessingCenterID, Equal <Required <CustomerPaymentMethod.cCProcessingCenterID> >, And <CustomerPaymentMethod.customerCCPID, Equal <Required <CustomerPaymentMethod.customerCCPID> >, And <PaymentMethodDetail.isCCProcessingID, Equal <True>, And <PaymentMethodDetail.useFor, Equal <PaymentMethodDetailUsage.useForARCards> > > > > >(Base); PXResultset <CustomerPaymentMethod> queryResult = query.Select(SelectedProcessingCenter, input.CustomerProfileId); foreach (PXResult <CustomerPaymentMethod, CustomerPaymentMethodDetail> item in queryResult) { CustomerPaymentMethodDetail checkCpmd = (CustomerPaymentMethodDetail)item; if (checkCpmd.Value == input.PaymentProfileId) { instanceID = checkCpmd.PMInstanceID; break; } } CustomerPaymentMethod cpm = NewCpm.Select(); if (cpm != null && cpm.PMInstanceID != null && cpm.PMInstanceID >= 0) { instanceID = cpm.PMInstanceID.Value; } return(instanceID); }
public virtual void OnPersist(IEnumerable <Organization> organizations) { OrganizationMaint organizationMaint = CreateInstance <OrganizationMaint>(); PXCache organizationCache = organizationMaint.OrganizationView.Cache; PXDBTimestampAttribute timestampAttribute = organizationCache .GetAttributesOfType <PXDBTimestampAttribute>(null, nameof(Organization.tstamp)) .First(); timestampAttribute.RecordComesFirst = true; foreach (Organization organization in organizations) { organizationMaint.Clear(); organizationMaint.BAccount.Current = organizationMaint.BAccount.Search <OrganizationBAccount.bAccountID>(organization.BAccountID); organizationCache.Clear(); organizationCache.ClearQueryCacheObsolete(); if (organization.ActualLedgerID < 0) { organization.ActualLedgerID = LedgerIDMap[organization.ActualLedgerID].LedgerID; } organizationCache.Current = organization; organizationCache.SetStatus(organizationMaint.OrganizationView.Current, PXEntryStatus.Updated); organizationMaint.Actions.PressSave(); } }
protected virtual void INTranSplit_RowPersisted(PXCache sender, PXRowPersistedEventArgs e) { //for cluster only. SelectQueries sometimes does not contain all the needed records after failed Save operation if (e.TranStatus == PXTranStatus.Aborted && PX.Common.WebConfig.IsClusterEnabled) { sender.ClearQueryCacheObsolete(); } }
protected virtual void userSetupDialog() { EnsureUserSetup(); PXCache setupCache = Base.Caches[typeof(TSetup)]; if (UserSetupView.AskExt() == WebDialogResult.OK) { using (var tr = new PXTransactionScope()) { setupCache.Persist(PXDBOperation.Insert); setupCache.Persist(PXDBOperation.Update); tr.Complete(); } Base.Clear(); } else { setupCache.Clear(); setupCache.ClearQueryCacheObsolete(); } }
private void CreateCustomerProcessingCenterRecord(CustomerPaymentMethod customerPM, CCSynchronizeCard syncCard) { PXCache customerProcessingCenterCache = Caches[typeof(CustomerProcessingCenterID)]; customerProcessingCenterCache.ClearQueryCacheObsolete(); PXSelectBase <CustomerProcessingCenterID> checkRecordExist = new PXSelectReadonly <CustomerProcessingCenterID, Where <CustomerProcessingCenterID.cCProcessingCenterID, Equal <Required <CreditCardsFilter.processingCenterId> >, And <CustomerProcessingCenterID.bAccountID, Equal <Required <CustomerProcessingCenterID.bAccountID> >, And <CustomerProcessingCenterID.customerCCPID, Equal <Required <CustomerProcessingCenterID.customerCCPID> > > > > >(this); CustomerProcessingCenterID cProcessingCenter = checkRecordExist.SelectSingle(syncCard.CCProcessingCenterID, syncCard.BAccountID, syncCard.CustomerCCPID); if (cProcessingCenter == null) { cProcessingCenter = customerProcessingCenterCache.CreateInstance() as CustomerProcessingCenterID; cProcessingCenter.BAccountID = syncCard.BAccountID; cProcessingCenter.CCProcessingCenterID = syncCard.CCProcessingCenterID; cProcessingCenter.CustomerCCPID = syncCard.CustomerCCPID; customerProcessingCenterCache.Insert(cProcessingCenter); customerProcessingCenterCache.Persist(PXDBOperation.Insert); } }
protected void CreateCustomerProcessingCenterRecord(V2.TranProfile input) { PXCache customerProcessingCenterCache = Base.Caches[typeof(CustomerProcessingCenterID)]; customerProcessingCenterCache.ClearQueryCacheObsolete(); PXSelectBase <CustomerProcessingCenterID> checkRecordExist = new PXSelectReadonly <CustomerProcessingCenterID, Where <CustomerProcessingCenterID.cCProcessingCenterID, Equal <Required <CustomerProcessingCenterID.cCProcessingCenterID> >, And <CustomerProcessingCenterID.bAccountID, Equal <Required <CustomerProcessingCenterID.bAccountID> >, And <CustomerProcessingCenterID.customerCCPID, Equal <Required <CustomerProcessingCenterID.customerCCPID> > > > > >(Base); CustomerProcessingCenterID cProcessingCenter = checkRecordExist.SelectSingle(SelectedProcessingCenter, SelectedBAccount, input.CustomerProfileId); if (cProcessingCenter == null) { cProcessingCenter = customerProcessingCenterCache.CreateInstance() as CustomerProcessingCenterID; cProcessingCenter.BAccountID = SelectedBAccount; cProcessingCenter.CCProcessingCenterID = SelectedProcessingCenter; cProcessingCenter.CustomerCCPID = input.CustomerProfileId; customerProcessingCenterCache.Insert(cProcessingCenter); customerProcessingCenterCache.Persist(PXDBOperation.Insert); } }