private void btDownload_Click() { try{ var activesheet = (Excel.Worksheet)_excelapp.ActiveSheet; if (!_parser.checkTablePresent(activesheet)) { return; } using (var lForm = new FrmDownload(_excelapp.Hwnd)) { lForm.Reports = _parser.GetReportsList(activesheet.ListObjects[1]); lForm.Directory = _settings.GetWorksheetParam("Directory", @"C:\"); lForm.AssociatedInstance = _settings.GetWorksheetParam("DownInstance", "SPECIFIED"); lForm.Format = _settings.GetWorksheetParam("DownFormat", "DEFAULT"); if (lForm.ShowDialog() != DialogResult.OK) { return; } var reports = _parser.ParseListObjectToReports(activesheet.ListObjects[1], false); _settings.SetWorksheetParam("Directory", lForm.Directory); _settings.SetWorksheetParam("DownInstance", lForm.AssociatedInstance); _settings.SetWorksheetParam("DownFormat", lForm.Format); var scheduler = new SchedulerManager(_session); var runner = new FrmRunner(_session.Logger, scheduler.Cancel); var exitcode = runner.Execute(() => scheduler.DownloadReportsFile(ref reports, lForm.Directory, lForm.AssociatedInstance, lForm.Format) ); if (exitcode == ExitCode.FAILED || exitcode == ExitCode.CANCELED) { return; } _parser.UpdateListObjectStatus(activesheet.ListObjects[1], reports); } } catch (Exception ex) { new BusinessObjectsUtils.FrmException(_excelapp.Hwnd, ex).ShowDialog(); } }