示例#1
0
        private void wizardControlMain_SelectedPageChanging(object sender, DevExpress.XtraWizard.WizardPageChangingEventArgs e)
        {
            if (e.PrevPage == OpenExcelWizardPage)
            {
                if (!beOpenFile.DoValidate())
                    e.Cancel = true;
                if (beOpenFile.EditValue == null || beOpenFile.EditValue.ToString() == string.Empty)
                {
                    MsgDlg.Show("Please select an Excel file to continue", MsgDlg.MessageType.Info);
                    e.Cancel = true;
                    return;
                }

                Classes.msExcel.DynamicRefresh.xlDRJobManager JobManager = new Classes.msExcel.DynamicRefresh.xlDRJobManager(beOpenFile.EditValue.ToString());
                if (JobManager.Jobs.Count == 0)
                {
                    MsgDlg.Show("Can't find any known connection", MsgDlg.MessageType.Info);
                    e.Cancel = true; return;
                }
                JobsViewerTable = new List<Classes.msExcel.DynamicRefresh.JobsViewer>();
                foreach (Classes.msExcel.DynamicRefresh.xlDRJob job in JobManager.Jobs)
                {
                    Classes.msExcel.DynamicRefresh.JobsViewer viewer = new Classes.msExcel.DynamicRefresh.JobsViewer() { Select = false, Job = job, ConnectionName = job.ConName, DatasourceName = job.Datasource.Name };
                    JobsViewerTable.Add(viewer);
                }
                gridControlJobs.DataSource = JobsViewerTable;
            }
            else if (e.PrevPage == ParamtersWizardPage)
            {
                bool selected = false;
                foreach (Classes.msExcel.DynamicRefresh.JobsViewer viewer in JobsViewerTable)
                {
                    if (viewer.Select)
                        selected = true;
                }
                if (selected)
                {
                    DialogResult = System.Windows.Forms.DialogResult.OK;
                    Close();
                }
                else
                    MsgDlg.Show("Please selected at least one connection to continue ", MsgDlg.MessageType.Info);
            }
            else if (e.PrevPage == completionWizardPage)
            {
                // completed validation
            }
        }
        private async void btnDyn_Click(object sender, EventArgs e)
        {
            SimpleButton btn = (SimpleButton)sender;
            int dsID = Convert.ToInt32(btn.Tag);
            if (Classes.QueryLayout.ChekForEmptyPram(DataSourceList))
            {
                MsgDlg.Show("Please Fill All Paramters For Data Source: " + DataSourceList.DatasourceName, MsgDlg.MessageType.Info);
                return;
            }
            //Creating Excel Updatable Sheet
            Dictionary<string, object> Paramters = new Dictionary<string, object>();
            foreach (KeyValuePair<string, Control> ctrItem in DataSourceList.Controls)
            {
                if (ctrItem.Value.GetType() == typeof(DevExpress.XtraEditors.CheckedComboBoxEdit))
                    Paramters.Add(ctrItem.Key, ((TextEdit)ctrItem.Value).EditValue);
                else
                    Paramters.Add(ctrItem.Key, ((TextEdit)ctrItem.Value).Text);
            }

            DataSourceList.EDUButton.Enabled = false;
            DataSourceList.EDUCancelButton.Enabled = true;
            layoutControlGroupDatasource.Enabled = false;//Stop User Activity
            Application.DoEvents();
            try
            {
                DynNotify = new UpdateInfo(); DynNotify.AddItem(null);//Add Item To Kill Excel App
                Classes.msExcel.DynamicRefresh.xlDRJobManager DynJobManager = new Classes.msExcel.DynamicRefresh.xlDRJobManager();
                await DynJobManager.CreateDynamicWorkbookAsync(DataSourceList, Paramters, DynNotify);
            }
            catch { }

            RemoveProgressList(dsID.ToString());// Remove From Working List
            DataSourceList.EDUButton.Enabled = true;
            DataSourceList.EDUCancelButton.Enabled = false;
            layoutControlGroupDatasource.Enabled = true;//Stop User Activity
        }