public static void Process(EMailAccountSyncFilter filter, List <EMailSyncAccount> accounts, Object uid, string screenid) { //Check that process is singleton foreach (RowTaskInfo info in PXLongOperation.GetTaskList()) { if (Object.Equals(uid, info.NativeKey)) { continue; } PXLongRunStatus status = PXLongOperation.GetStatus(info.NativeKey); if (status != PXLongRunStatus.InProcess) { continue; } string company = PXLogin.ExtractCompany(info.User); string screen = (info.Screen ?? String.Empty).Replace(".", ""); if (screen == screenid && company == PXAccess.GetCompanyName()) { throw new PXException(ErrorMessages.PrevOperationNotCompleteYet); } } EmailsSyncMaint graph = CreateInstance <EmailsSyncMaint>(); using (new PXUTCTimeZoneScope()) { graph.ProcessInternal(new ProcessingContext(filter, accounts, graph.GetPolicies())); } }
protected virtual void SOCreateFilter_RowSelected(PXCache sender, PXRowSelectedEventArgs e) { SOCreateFilter filter = Filter.Current; FixedDemand.SetProcessDelegate(list => SOCreateProc(list, filter.PurchDate)); TimeSpan span; Exception message; PXLongRunStatus status = PXLongOperation.GetStatus(this.UID, out span, out message); PXUIFieldAttribute.SetVisible <SOLine.orderNbr>(Caches[typeof(SOLine)], null, (status == PXLongRunStatus.Completed || status == PXLongRunStatus.Aborted)); if (PXAccess.FeatureInstalled <FeaturesSet.warehouse>()) { INSite toxicsite = PXSelect <INSite, Where <INSite.siteID, Equal <Current <SOCreateFilter.siteID> >, And <INSite.active, Equal <True>, And <Where <INSite.addressID, IsNull, Or <INSite.contactID, IsNull> > > > > > .SelectSingleBound(this, new object[] { e.Row }); if (toxicsite != null) { throw new PXSetupNotEnteredException <INSite, INSite.siteCD>(Messages.WarehouseWithoutAddressAndContact, toxicsite.SiteCD, toxicsite.SiteCD); } } }
public virtual IEnumerable release(PXAdapter adapter) { PXCache cache = Caches[typeof(GLVoucherBatch)]; List <GLVoucherBatch> list = new List <GLVoucherBatch>(); foreach (GLVoucherBatch batch in VoucherBatches.Select()) { if (batch.Released != true && batch.Selected == true) { //cache.Update(batch); list.Add(batch); } } if (list.Count == 0) { throw new PXException(Messages.NoBatchesIsSelectedForRelease); } //Save.Press(); if (list.Count > 0) { PXLongOperation.ClearStatus(this.UID); PXLongOperation.StartOperation(this, delegate() { ReleaseBatch(list); }); TimeSpan timespan; Exception ex; PXLongRunStatus status = PXLongOperation.GetStatus(this.UID, out timespan, out ex); DisableOnProcessing(status); VoucherBatches.View.RequestRefresh(); } return(adapter.Get()); }
protected virtual void GLVoucher_RowSelected(PXCache sender, PXRowSelectedEventArgs e) { GLVoucher row = (GLVoucher)e.Row; if (e.Row == null) { return; } Dictionary <string, Dictionary <Guid, CAMessage> > listMessages = PXLongOperation.GetCustomInfo(this.UID) as Dictionary <string, Dictionary <Guid, CAMessage> >; PXLongRunStatus status = GetLongOperationStatus(); if ((status == PXLongRunStatus.Aborted || status == PXLongRunStatus.Completed) && listMessages != null) { string key = row.VoucherBatchNbr; if (listMessages.ContainsKey(key)) { CAMessage message; if (listMessages[key].TryGetValue(row.RefNoteID ?? Guid.Empty, out message)) { sender.RaiseExceptionHandling <GLVoucher.refNbr>(row, row.RefNbr, new PXSetPropertyException <GLVoucher.refNbr>(message.Message, message.ErrorLevel)); } } } }
public virtual IEnumerable delete(PXAdapter adapter) { GLVoucherBatch batch = VoucherBatches.Current; if (batch == null) { throw new PXException(Messages.NoBatchesForDelete); } if (VoucherBatches.Ask(PXMessages.LocalizeFormatNoPrefixNLA(Messages.BatchDeleteConfirmation, batch.VoucherBatchNbr), MessageButtons.OKCancel) == WebDialogResult.OK) { if (batch.Released == true) { throw new PXException(Messages.BatchDeleteReleased); } List <GLVoucherBatch> fullList = new List <GLVoucherBatch>(); foreach (GLVoucherBatch voucherBatch in VoucherBatches.Select()) //create list to show all records during processing { fullList.Add(voucherBatch); } PXLongOperation.ClearStatus(this.UID); PXLongOperation.StartOperation(this, delegate() { DeleteBatch(batch, fullList.ToArray <object>()); }); TimeSpan timespan; Exception ex; PXLongRunStatus status = PXLongOperation.GetStatus(this.UID, out timespan, out ex); DisableOnProcessing(status); VoucherBatches.View.RequestRefresh(); } return(adapter.Get()); }
protected virtual void Filter_RowUpdated(PXCache sender, PXRowUpdatedEventArgs e) { PXLongRunStatus status = GetLongOperationStatus(); if (status != PXLongRunStatus.InProcess) { PXLongOperation.ClearStatus(this.UID); VoucherBatches.Cache.Clear(); } }
private void DisableOnProcessing(PXLongRunStatus status) { bool noProcessing = status == PXLongRunStatus.NotExists; VoucherBatches.Cache.AllowUpdate = noProcessing; Insert.SetEnabled(noProcessing); Delete.SetEnabled(noProcessing); editRecord.SetEnabled(noProcessing); Release.SetEnabled(noProcessing); }
protected virtual void SOCreateFilter_RowSelected(PXCache sender, PXRowSelectedEventArgs e) { SOCreateFilter filter = Filter.Current; FixedDemand.SetProcessDelegate(list => SOCreateProc(list, filter.PurchDate)); TimeSpan span; Exception message; PXLongRunStatus status = PXLongOperation.GetStatus(this.UID, out span, out message); PXUIFieldAttribute.SetVisible <SOLine.orderNbr>(Caches[typeof(SOLine)], null, (status == PXLongRunStatus.Completed || status == PXLongRunStatus.Aborted)); }
protected virtual void GLVoucherBatch_RowSelected(PXCache sender, PXRowSelectedEventArgs e) { GLVoucherBatch row = (GLVoucherBatch)e.Row; if (e.Row == null) { return; } Dictionary <string, Dictionary <Guid, CAMessage> > listMessages = PXLongOperation.GetCustomInfo(this.UID) as Dictionary <string, Dictionary <Guid, CAMessage> >; TimeSpan timespan; Exception ex; PXLongRunStatus status = PXLongOperation.GetStatus(this.UID, out timespan, out ex); if ((status == PXLongRunStatus.Aborted || status == PXLongRunStatus.Completed) && listMessages != null) { string key = row.VoucherBatchNbr; if (listMessages.ContainsKey(key)) { VouchersInBatch.View.AllowSelect = true; CAMessage message; if (listMessages[key].TryGetValue(Guid.Empty, out message)) { sender.RaiseExceptionHandling <GLVoucherBatch.voucherBatchNbr>(row, row.VoucherBatchNbr, new PXSetPropertyException <GLVoucherBatch.voucherBatchNbr>(message.Message, message.ErrorLevel)); } else { sender.RaiseExceptionHandling <GLVoucherBatch.voucherBatchNbr>(row, row.VoucherBatchNbr, new PXSetPropertyException <GLVoucherBatch.voucherBatchNbr>("Processed", PXErrorLevel.RowInfo)); } } else { VouchersInBatch.View.AllowSelect = false; } } else { VouchersInBatch.View.AllowSelect = false; PXUIFieldAttribute.SetEnabled(sender, null, status == PXLongRunStatus.NotExists); } DisableOnProcessing(status); if (row != null) { PXUIFieldAttribute.SetEnabled(sender, row, false); PXUIFieldAttribute.SetEnabled <GLVoucherBatch.selected>(sender, row, row.Released == false); PXUIFieldAttribute.SetEnabled <GLVoucherBatch.descr>(sender, row, row.Released == false); } PXUIFieldAttribute.SetEnabled <GLVoucherBatch.released>(sender, null, false); PXUIFieldAttribute.SetEnabled <GLVoucherBatch.voucherBatchNbr>(sender, null, false); PXUIFieldAttribute.SetEnabled <GLVoucherBatch.docCount>(sender, null, false); }
public virtual void OnWaitEnd(PXLongRunStatus status, INRegister primaryRow, Action <PXLongRunStatus, INRegister> baseImpl) { if (IsCartRequired) { Base1.OnWaitEnd(status, primaryRow?.Released == true, INScanTransfer.Msg.DocumentIsReleased, null, INScanTransfer.Msg.DocumentReleaseFailed, ScanStates.ToLocation); } else { baseImpl(status, primaryRow); } }
protected void _(Events.RowSelected <POCreate.POCreateFilter> e) { POCreate.POCreateFilter filter = this.Base.Filter.Current; if (filter == null) { return; } this.Base.FixedDemand.SetProcessDelegate((PXProcessingBase <POFixedDemand> .ProcessListDelegate)(list => POCreate_Extension.CreateProc2(list, filter.PurchDate, filter.OrderNbr != null))); PXLongRunStatus status = PXLongOperation.GetStatus(this.Base.UID, out TimeSpan _, out Exception _); PXUIFieldAttribute.SetVisible <POLine.orderNbr>(this.Base.Caches[typeof(POLine)], (object)null, status == PXLongRunStatus.Completed || status == PXLongRunStatus.Aborted); PXUIFieldAttribute.SetVisible <POCreate.POCreateFilter.orderTotal>(e.Cache, (object)null, filter.VendorID.HasValue); }
public void Complete(PXLongRunStatus status, PXGraph graph) { if (status == PXLongRunStatus.Completed && graph is ARPaymentEntry) { ((ARPaymentEntry)graph).RowSelected.AddHandler <ARPayment>((sender, e) => { ARPayment payment = e.Row as ARPayment; if (payment != null && payment.Released == false && DateTime.Compare(payment.AdjDate.Value, _NewDate) != 0) { sender.RaiseExceptionHandling <ARPayment.adjDate>(payment, payment.AdjDate, new PXSetPropertyException(Messages.ApplicationDateChanged, PXErrorLevel.Warning)); } }); } }
protected virtual void Filter_RowSelected(PXCache sender, PXRowSelectedEventArgs e) { PXLongRunStatus status = GetLongOperationStatus(); bool haveRecords = VoucherBatches.Select().Any <object>(); bool noProcessing = status == PXLongRunStatus.NotExists; GLWorkBook workBook = WorkBook.Select((e.Row as Filter).WorkBookID); bool active = workBook?.Status == WorkBookStatus.Active; Insert.SetEnabled(noProcessing && active); Delete.SetEnabled(noProcessing && haveRecords && active); Release.SetEnabled(noProcessing && haveRecords && active); ViewDocument.SetEnabled(haveRecords); VoucherBatches.Cache.AllowUpdate = noProcessing && active; }
protected virtual void GLVoucherBatch_RowSelected(PXCache sender, PXRowSelectedEventArgs e) { GLVoucherBatch row = (GLVoucherBatch)e.Row; if (row == null) { return; } Dictionary <string, Dictionary <Guid, CAMessage> > listMessages = PXLongOperation.GetCustomInfo(this.UID) as Dictionary <string, Dictionary <Guid, CAMessage> >; PXLongRunStatus status = GetLongOperationStatus(); if ((status == PXLongRunStatus.Aborted || status == PXLongRunStatus.Completed) && listMessages != null) { string key = row.VoucherBatchNbr; if (listMessages.ContainsKey(key)) { VouchersInBatch.View.AllowSelect = true; CAMessage message; if (listMessages[key].TryGetValue(Guid.Empty, out message)) { sender.RaiseExceptionHandling <GLVoucherBatch.voucherBatchNbr>(row, row.VoucherBatchNbr, new PXSetPropertyException <GLVoucherBatch.voucherBatchNbr>(message.Message, message.ErrorLevel)); } else { sender.RaiseExceptionHandling <GLVoucherBatch.voucherBatchNbr>(row, row.VoucherBatchNbr, new PXSetPropertyException <GLVoucherBatch.voucherBatchNbr>("Processed", PXErrorLevel.RowInfo)); } } else { VouchersInBatch.View.AllowSelect = false; } } else { VouchersInBatch.View.AllowSelect = false; } GLWorkBook workBook = WorkBook.Select(filter.Current.WorkBookID); bool active = workBook.Status == WorkBookStatus.Active; PXUIFieldAttribute.SetEnabled <GLVoucherBatch.selected>(sender, row, row.Released == false && active); PXUIFieldAttribute.SetEnabled <GLVoucherBatch.descr>(sender, row, row.Released == false && active); }