2014-03-26 22 views
0

我們的場景是我們已經得到了一個需要轉換爲SSRS報告的Word文檔。編輯VS2008中的OfficeWriter rdl丟失格式

所以我們的腳步已經:

  1. 在Word 2007中打開文檔
  2. 保存文檔的.rdl越來越佈局正確的(我們使用OfficeWriter 8.6.0)
  3. 在VS2008中打開後的.rdl添加查詢
  4. 保存的.rdl並重新打開Word 2007中

的問題是,從VS2008保存的.rdl之後,由OfficeWriter創建的原始XML已更改,並且Word不顯示任何格式。

從OW原始XML是

<Custom Application="Word" VersionEx="8.6.0">data</Custom> 

但在VS2008打開的.rdl並保存後,在XML成爲

<CustomProperties> 
    <CustomProperty> 
     <Name>Custom</Name> 
     <Value>data</Value> 
    </CustomProperty> 
</CustomProperties> 

所以我想我的問題是,我們應該嘗試在VS2008中編輯OfficeWriter 8.6 .rdl文件,還是應該從Word(使用MS Query)做所有事情?

編輯

我們發現了一個有趣的解決方法/黑客:

從節約VS2008更改後,如果我們手動編輯的.rdl使XML是這種格式

<CustomProperties> 
    <CustomProperty> 
     <Name>OfficeWriter_Designer_Version</Name> 
     <Value>8.6.0</Value> 
    </CustomProperty> 
    <CustomProperty> 
     <Name>Word</Name> 
     <Value>data</Value> 
    </CustomProperty> 
</CustomProperties> 

然後,可以在OfficeWriter和VS2008中編輯.rdl,而不會丟失格式。

順便說一句,它說數據在XML片段中,這只是我的OfficeWriter輸出的序列化數據的佔位符。

回答

1

您應該能夠編輯由Visual Studio中的OfficeWriter Designer創建的RDL。但是,您也應該已經在Visual Studio中啓動了整個過程,並且從描述中不清楚您是否這樣做過。這個tutorial in the documentation解釋了從Visual Studio中創建的RDL創建Word報告的工作流程。該教程中唯一缺少的是8.6.0版中引入的新功能,該功能允許您將現有的Word文檔導入到報表中。以下是具體步驟:

  1. 與您所有的疑問在Visual Studio中的RDL文件
  2. 打開OfficeWriter設計工具欄中的RDL文件在Word
  3. 導入您現有的Word文檔
  4. 插入合併域並根據需要設置重複區域
  5. 根據需要進行任何其他格式更改並將RDL保存在設計器中(存儲到磁盤或報告服務器)

如果在使用OfficeWriter Designer創建初始報告後需要修改查詢,則應該能夠在Visual Studio中編輯RDL,並且應該保留OfficeWriter特定的信息。

注意:我爲SoftArtisans工作

+0

非常感謝您突出顯示缺少的步驟。我們現在可以在Word和VS2008之間進行交換,而不會丟失任何格式。 – DeanOC