2012-10-10 90 views
4

這是使用Microsoft報告查看器控制我的第一次,我想這是非常簡單的,但我不斷收到此以下錯誤:微軟報表查看器ASP.NET

An error occurred during local report processing. 
The report definition for report 'Report3' has not been specified 
Object reference not set to an instance of an object. 

我從一個視圖我是用我的Oracle數據庫是這樣的:

DataTable View

我通過GUI走路,做一個「新報告」將此數據集添加到「表」。我使用查詢生成器來創建「FillByModel」和「GetDataByModel」函數,它都從數據庫返回正確的數據,但是當我運行擁有ReportViewer控件的頁面時,它給了我上述錯誤。我不知道這個錯誤意味着什麼,並且在谷歌搜索結束後嘗試了一切,我不知道如何解決它。

這裏是我的ReportViewer對象在.aspx代碼:

<rsweb:ReportViewer ID="ReportViewer1" runat="server" Font-Names="Verdana" Font-Size="8pt" WaitMessageFont-Names="Verdana" WaitMessageFont-Size="14pt"> 
    <LocalReport ReportEmbeddedResource="Paint_Reporting.Report3.rdlc"> 
     <DataSources> 
      <rsweb:ReportDataSource DataSourceId="ObjectDataSource1" Name="LOL" /> 
     </DataSources> 
    </LocalReport> 
</rsweb:ReportViewer> 
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" OnSelecting="ObjectDataSource1_Selecting" SelectMethod="GetData" TypeName="PaintModelNumberDetailTableAdapters.PAINT_MODELNUMBERDETAILLISTINGTableAdapter"></asp:ObjectDataSource> 
<asp:ScriptManager ID="ScriptManager1" runat="server"> 
</asp:ScriptManager> 

可能有人幫我找出這個錯誤?

+0

您是否準備了Paint_Reporting.Report3.rdlc文件? – rt2800

+0

是的,它在我的解決方案中。 「Report3.rdlc」 –

+0

你解決了嗎?如果沒有,發佈另一個問題與其他錯誤提及這一個... –

回答

2

你必須在後面的代碼中調用這個:

reportViewer.LocalReport.ReportPath = "CommonLayer.Reports.SalesByPrice.rdlc"; 

只要確保相應地更改名稱,也就是reportViewer.LocalReport.ReportPath屬性設置爲RDL文件的路徑。

下面是一個完整的討論,詳細說明您必須解決此問題的選項:

The report definition for report 'xxx' has not been specified

+0

我應該在我的Page_Load()做到這一點?我會試試看看會發生什麼。 –

+0

可以在'Page_Load()'... –

+0

本地報告處理期間發生錯誤。 尚未指定報告'CommonLayer.Reports.Report3'的報告定義 找不到文件'C:\ Projects \ Paint Reporting \ Paint Reporting \ CommonLayer.Reports.Report2.rdlc'。 –

0

你也可以添加

例如礦山它的工作對我來說你.rdlc的確切路徑:

reportViewer.LocalReport.ReportPath = @"C:\Users\miuser\Documents\Visual Studio 2012\Projects\miproyect\SSHD\Views\Summary\Report1.rdlc";