void handle_SubmitSasProgramComplete(object sender, SubmitCompleteEventArgs args) { BeginInvoke(new MethodInvoker(delegate() { if (progressdlg != null && progressdlg.Visible) { progressdlg.Close(); progressdlg = null; } sasJobId = -1; if (args.Success) { AddCardinalities(); } Cursor.Current = _savedCursor; } )); }
// Job done! private void handle_SubmitSasProgramComplete(object sender, SubmitCompleteEventArgs args) { // use BeginInvoke to move processing back to UI thread BeginInvoke(new MethodInvoker( delegate() { // Close progress dialog if needed if (progressdlg != null && progressdlg.Visible) { progressdlg.Close(); progressdlg = null; } sasJobId = -1; Cursor.Current = _savedCursor; if (args.Success) { SaveSettings(); AddProcesses(); UpdateKillButton(); } else { // ERROR - provide option to show the SAS log if (DialogResult.Yes == MessageBox.Show("An error occurred while trying to retrieve the list of processes. Would you like to view the error log?", "Error", MessageBoxButtons.YesNo)) { SAS.Tasks.Toolkit.Controls.SASLogViewDialog logView = new SASLogViewDialog("Error log", "PROC IOMOPERATE log:", args.Log); logView.ShowDialog(this); }; } } )); }