private List <Entity> PreparareSolutionsToTransfer() { var solutionsToTransfer = new List <Entity>(); if (mForm.SelectedSolutions.Count > 1) { // Open dialog to order solutions import foreach (var solution in mForm.SelectedSolutions) { solutionsToTransfer.Add(solution); } var dialog = new SolutionOrderDialog(solutionsToTransfer); if (dialog.ShowDialog(ParentForm) == DialogResult.OK) { solutionsToTransfer = dialog.Solutions; } else { return(new List <Entity>()); } } else { solutionsToTransfer.Add(mForm.SelectedSolutions.First()); } return(solutionsToTransfer); }
private void TsbTransfertSolutionClick(object sender, EventArgs e) { if (lstSourceSolutions.SelectedItems.Count > 0 && AdditionalConnectionDetails.Any()) { var item = lstSourceSolutions.SelectedItems[0]; var solutionsToTransfer = new List <string>(); if (lstSourceSolutions.SelectedItems.Count > 1) { // Open dialog to order solutions import foreach (ListViewItem sourceItem in lstSourceSolutions.SelectedItems) { solutionsToTransfer.Add(sourceItem.Text); } var dialog = new SolutionOrderDialog(solutionsToTransfer); if (dialog.ShowDialog(ParentForm) == DialogResult.OK) { solutionsToTransfer = dialog.Solutions; } else { return; } } else { solutionsToTransfer.Add(item.Text); } infoPanel = InformationPanel.GetInformationPanel(this, "Initializing...", 340, 120); var requests = new List <OrganizationRequest>(); foreach (var solution in solutionsToTransfer) { var importId = Guid.NewGuid(); requests.Add(new ExportSolutionRequest { Managed = chkExportAsManaged.Checked, SolutionName = solution, ExportAutoNumberingSettings = chkAutoNumering.Checked, ExportCalendarSettings = chkCalendar.Checked, ExportCustomizationSettings = chkCustomization.Checked, ExportEmailTrackingSettings = chkEmailTracking.Checked, ExportGeneralSettings = chkGeneral.Checked, ExportIsvConfig = chkIsvConfig.Checked, ExportMarketingSettings = chkMarketing.Checked, ExportOutlookSynchronizationSettings = chkOutlookSynchronization.Checked, ExportRelationshipRoles = chkRelationshipRoles.Checked }); requests.Add(new ImportSolutionRequest { ConvertToManaged = chkConvertToManaged.Checked, OverwriteUnmanagedCustomizations = chkOverwriteUnmanagedCustomizations.Checked, PublishWorkflows = chkActivate.Checked, ImportJobId = importId }); } if (!chkExportAsManaged.Checked && chkPublish.Checked) { requests.Add(new PublishAllXmlRequest()); } tsbDownloadLogFile.Enabled = false; tsbFindMissingDependencies.Enabled = false; tsbLoadSolutions.Enabled = false; tsbTransfertSolution.Enabled = false; btnAddTarget.Enabled = false; Cursor = Cursors.WaitCursor; using (var worker = new BackgroundWorker()) { worker.DoWork += WorkerDoWorkExport; worker.ProgressChanged += WorkerProgressChanged; worker.RunWorkerCompleted += WorkerRunWorkerCompleted; worker.WorkerReportsProgress = true; worker.RunWorkerAsync(requests); } } else { MessageBox.Show("You have to select a source solution and a target organization to continue.", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning); } }