diff --git a/PROMS/VEPROMS User Interface/frmBatchRefresh.Designer.cs b/PROMS/VEPROMS User Interface/frmBatchRefresh.Designer.cs index b603f469..7747dea4 100644 --- a/PROMS/VEPROMS User Interface/frmBatchRefresh.Designer.cs +++ b/PROMS/VEPROMS User Interface/frmBatchRefresh.Designer.cs @@ -1168,6 +1168,7 @@ this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; this.Text = "Administrative Tools"; this.Load += new System.EventHandler(this.frmBatchRefresh_Load); + this.FormClosing +=frmBatchRefresh_FormClosing;// B2017-221 Allow the batch dialog to close when waiting to process. this.splitContainer3.Panel1.ResumeLayout(false); this.splitContainer3.Panel2.ResumeLayout(false); this.splitContainer3.ResumeLayout(false); diff --git a/PROMS/VEPROMS User Interface/frmBatchRefresh.cs b/PROMS/VEPROMS User Interface/frmBatchRefresh.cs index f1057ec5..2821582c 100644 --- a/PROMS/VEPROMS User Interface/frmBatchRefresh.cs +++ b/PROMS/VEPROMS User Interface/frmBatchRefresh.cs @@ -63,6 +63,12 @@ namespace VEPROMS private Dictionary myDocVersions = new Dictionary(); private void frmBatchRefresh_Load(object sender, EventArgs e) { + IsClosing = false;//B2017-221 Allow the batch dialog to close when waiting to process. + } + private bool IsClosing = false;//B2017-221 Allow the batch dialog to close when waiting to process. + private void frmBatchRefresh_FormClosing(object sender, EventArgs e) + { + IsClosing = true;//B2017-221 Allow the batch dialog to close when waiting to process. } // C2017-030 - new Admin Tools user interface // check to see if at least one tree node is checked. @@ -1058,7 +1064,8 @@ namespace VEPROMS // C2017-030 New Admin Tools user interface // button clicks for processing selected tools - private void CheckProcessLater() // see if we should delay processing until later + //B2017-221 Allow the batch dialog to close when waiting to process. + private bool CheckProcessLater() // see if we should delay processing until later { if (chkLater.Checked) { @@ -1068,16 +1075,19 @@ namespace VEPROMS { txtProcess.Clear(); txtProcess.AppendText("Waiting..."); - System.Threading.Thread.Sleep(60000); + System.Threading.Thread.Sleep(1000);//Check each second + if (IsClosing) return false;//B2017-221 Allow the batch dialog to close when waiting to process. + Application.DoEvents();// Allow user interface to react now = long.Parse(DateTime.Now.ToString("yyyyMMddHHmm")); } } + return true;// Close after complete } // C2017-030 new Admin Tools user interface private void btn_ShowUsers_Click(object sender, EventArgs e) { - CheckProcessLater(); // delay processing if set + if (!CheckProcessLater()) return; // delay processing if set//B2017-221 Allow the batch dialog to close when waiting to process. txtProcess.Clear(); txtResults.Clear(); GetDatabaseSessions(); @@ -1085,7 +1095,7 @@ namespace VEPROMS private void btnFixLinks_Click(object sender, EventArgs e) { - CheckProcessLater(); // delay processing if set + if (!CheckProcessLater()) return; // delay processing if set//B2017-221 Allow the batch dialog to close when waiting to process. txtProcess.Clear(); txtResults.Clear(); if (swRefreshTrans.Value) @@ -1096,7 +1106,7 @@ namespace VEPROMS private void btnRunCheck_Click(object sender, EventArgs e) { - CheckProcessLater(); // delay processing if set + if (!CheckProcessLater()) return; // delay processing if set//B2017-221 Allow the batch dialog to close when waiting to process. int prgStpIdx = -1; txtResults.Clear(); txtProcess.Clear(); @@ -1126,7 +1136,7 @@ namespace VEPROMS private void btnRunRepair_Click(object sender, EventArgs e) { - CheckProcessLater(); // delay processing if set + if (!CheckProcessLater()) return; // delay processing if set//B2017-221 Allow the batch dialog to close when waiting to process. int prgStpIdx = -1; txtResults.Clear(); txtProcess.Clear();