none
求VS2008報表升級成VS2012 RRS feed

  • 問題

  • 如題:我只是想把VS2008報表升級成2012

    VS2008能執行的程式碼到VS2012不能執行

    參數有設 其他確認都還在 我不懂為什麼有這個錯誤

     string condi;
                condi = "製表區間:\n" + Fbegindate + "~" + Fenddate;
                ReportParameter reportcondi = new ReportParameter();
                reportcondi.Name = "reportcondi";
                reportcondi.Values.Add(condi);
                this.reportViewer1.LocalReport.SetParameters(new ReportParameter[] { reportcondi });  --該行顯示主機錯誤


    當我把該行標註掉之後 在執行成功之後 報表上便顯示

    處理本機報表時發生錯誤。

    報表"主報表"的定義無效。

    報表定義無效。...............此命名空間無法升級。

    我想說 好吧 重做一個時

    從工具箱重拉一個

    會顯示錯誤

    無法建立"reportviewer"。錯誤訊息為'System.Runtime.Service.COMException (0x8004D745)'

    ....XXXXXX

    XXXXXXXX

    求解

    已思考許久

    2014年10月1日 上午 08:49

解答

  • 您的電腦有安裝這個嗎?MICROSOFT REPORT VIEWER 2012 RUNTIME

    • 已標示為解答 GREENICE 2014年11月5日 上午 07:45
    2014年10月1日 下午 12:03
  • 看一下 VS2008 的 ReportViewer 版本, 因為 VS2012 和 VS2008 報表設計出來的 xml 檔有差異, 請檢查 RepoerViewer 的 Dll 版本. (我記得是要將舊的加進來, 升級報表是有點久以前的的事, 記憶不是很清楚)

    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。


    2014年10月8日 上午 05:24
    版主
  • OK.我解決了

    先感謝各位大大的幫忙回答.讓小弟一一嘗試 終於解決了

    我的解決方法是這樣

    我比較了一下 從2008升級後的程式 與 2012直接新創的程式

    我比較了2個參考

    方案總管/參考/Microsoft.ReportViewer.Common 與 Microsoft.ReportViewer.WinForms (要分開比較)

    點選屬性

    發現 2008升級後的版本 是9.0.0.0  而 2012是 11.0.0.0

    又發現 2008升級後的版本  特定版本的選擇是TRUE 

    所以版本那邊自然就不可能是11.0.0.0

    於是我把它改成FALSE 

    之後 版本就自動升級成11.0.0.0

    之後再把報表升級

    編譯之後 OK了

    原本不能加入的REPORTVIEWER也可以成功加入了

    簡單說 就是把版本9.0.0.0 改成 11.0.0.0 而已

    • 已標示為解答 GREENICE 2014年10月9日 上午 08:51
    2014年10月9日 上午 08:50

所有回覆

  • 您的電腦有安裝這個嗎?MICROSOFT REPORT VIEWER 2012 RUNTIME

    • 已標示為解答 GREENICE 2014年11月5日 上午 07:45
    2014年10月1日 下午 12:03
  • 有  有安裝
    2014年10月2日 上午 12:24
  • 您可以使用滑鼠右鍵點選[方案總管]視窗中的專案名稱, 執行[屬性]功能, 檢查[應用程式]頁籤中的[目標Framework]是否為.NET Framework 4.5?
    2014年10月2日 上午 04:10
  • 這個我也有試過了  還是不行
    2014年10月2日 上午 05:10
  • 給你參考一下喽!!

    I have figured this out. the issue was happening because of having references to DevExpress.Util from a project library, and the toolbox item referenced from GAC.

    I have changed both references to point to the assemblies in the project folder and its fine now.

    Thanks

    • 已標示為解答 GREENICE 2014年11月5日 上午 07:45
    • 已取消標示為解答 GREENICE 2014年11月5日 上午 07:45
    2014年10月6日 下午 12:28
  • 看一下 VS2008 的 ReportViewer 版本, 因為 VS2012 和 VS2008 報表設計出來的 xml 檔有差異, 請檢查 RepoerViewer 的 Dll 版本. (我記得是要將舊的加進來, 升級報表是有點久以前的的事, 記憶不是很清楚)

    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。


    2014年10月8日 上午 05:24
    版主
  • OK.我解決了

    先感謝各位大大的幫忙回答.讓小弟一一嘗試 終於解決了

    我的解決方法是這樣

    我比較了一下 從2008升級後的程式 與 2012直接新創的程式

    我比較了2個參考

    方案總管/參考/Microsoft.ReportViewer.Common 與 Microsoft.ReportViewer.WinForms (要分開比較)

    點選屬性

    發現 2008升級後的版本 是9.0.0.0  而 2012是 11.0.0.0

    又發現 2008升級後的版本  特定版本的選擇是TRUE 

    所以版本那邊自然就不可能是11.0.0.0

    於是我把它改成FALSE 

    之後 版本就自動升級成11.0.0.0

    之後再把報表升級

    編譯之後 OK了

    原本不能加入的REPORTVIEWER也可以成功加入了

    簡單說 就是把版本9.0.0.0 改成 11.0.0.0 而已

    • 已標示為解答 GREENICE 2014年10月9日 上午 08:51
    2014年10月9日 上午 08:50