public void btnConvertToManual_Click(IRibbonControl control) { var reportDoc = new OfficeDocument(Globals.ThisAddIn.Application.ActiveDocument); var presenterreportDoc = new InsuranceRenewealReportWizardPresenter(reportDoc, null); var reportTemplate = new InsuranceRenewalReport(); reportTemplate = (InsuranceRenewalReport)presenterreportDoc.LoadData(reportTemplate); reportTemplate = (InsuranceRenewalReport)presenterreportDoc.LoadIncludedPolicyClasses(reportTemplate); ObjectCache cache = MemoryCache.Default; cache.Add(Constants.CacheNames.ConvertWizard, reportTemplate, new CacheItemPolicy()); var manualDoc = reportDoc.OpenFile(Settings.Default.TemplateInsuranceManual); var allTables = reportDoc.GetTablesByNamePrefix(string.Empty); foreach (var tableName in allTables) { if (!manualDoc.TableExists(tableName)) { continue; } if (tableName.Contains("Policy Wording")) { var text = reportDoc.GetTableCellText(tableName, 0, 2); manualDoc.TypeTableCellText(tableName, 0, 2, text); } else { reportDoc.CopyTable(tableName); manualDoc.SelectTable(tableName); manualDoc.DeleteTable(tableName); manualDoc.InsertParagraphBreak(); manualDoc.PasteClipboardOriginalFormatting(); } } //if (reportDoc.TableExists(Constants.WordTables.PolicyWording) && manualDoc.TableExists(Constants.WordTables.PolicyWording)) //{ // reportDoc.CopyTable(Constants.WordTables.PolicyWording); // manualDoc.DeleteTable(Constants.WordTables.PolicyWording); // manualDoc.PasteClipboard(); //} var allBookmarkedSections = reportDoc.GetBookmarksByPartialName(Constants.WordBookmarks.SummaryOfCoverStart); foreach (var bookmark in allBookmarkedSections) { var id = bookmark.Replace(Constants.WordBookmarks.SummaryOfCoverStart, string.Empty); if (reportDoc.HasBookmark(Constants.WordBookmarks.SummaryOfCoverStart + id) && reportDoc.HasBookmark(Constants.WordBookmarks.SummaryOfCoverEnd + id)) { var rs = reportDoc.GetBookmarkStartRange(Constants.WordBookmarks.SummaryOfCoverStart + id); var re = reportDoc.GetBookmarkStartRange(Constants.WordBookmarks.SummaryOfCoverEnd + id); reportDoc.CopyRange(rs, re); if (manualDoc.HasBookmark(Constants.WordBookmarks.SummaryOfCoverStart + id)) { //var ms = manualDoc.GetBookmarkStartRange(Constants.WordBookmarks.SummaryOfCoverStart + id); manualDoc.MoveCursorToStartOfBookmark(Constants.WordBookmarks.SummaryOfCoverStart + id); manualDoc.PasteClipboard(); } } } if (reportDoc.HasBookmark(Constants.WordBookmarks.InsertClientProfile) && reportDoc.HasBookmark(Constants.WordBookmarks.InsertClientProfileEnd)) { var rs = reportDoc.GetBookmarkStartRange(Constants.WordBookmarks.InsertClientProfile); var re = reportDoc.GetBookmarkStartRange(Constants.WordBookmarks.InsertClientProfileEnd); reportDoc.CopyRange(rs, re); if (manualDoc.HasBookmark(Constants.WordBookmarks.InsertClientProfile)) { var ms = manualDoc.GetBookmarkStartRange(Constants.WordBookmarks.InsertClientProfile); var me = manualDoc.GetBookmarkStartRange(Constants.WordBookmarks.InsertClientProfileEnd); manualDoc.DeleteRange(ms, me); manualDoc.MoveCursorToStartOfBookmark(Constants.WordBookmarks.InsertClientProfile); manualDoc.PasteClipboard(); } } manualDoc.MoveToStartOfDocument(); //var presenterManualDoc = new RibbonWizardPresenter(manualDoc, null); //var p = reportDoc.TurnOffProtection(string.Empty); //presenterManualDoc.PopulateData(reportTemplate); //manualDoc.PopulateControl(Constants.WordContentControls.DocumentTitle, "Insurance Manual"); //reportDoc.TurnOnProtection(p, string.Empty); //var w = new BaseWizardForm(); //var t = new InsuranceManual(); //t.DocumentTitle = "Insurance Manual zzzz"; //w.LogUsage(t, Enums.UsageTrackingType.ConvertDocument); }