这是我第一次使用Microsoft Report Viewer控件,我认为它非常简单,但我不断收到以下错误:
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数据库中有一个我正在使用的视图,如下所示:
我浏览GUI并制作“新报告”并将此DataSet添加到“表格”中。我使用查询生成器创建“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 :(得分:2)
您必须在后面的代码中调用它:
reportViewer.LocalReport.ReportPath = "CommonLayer.Reports.SalesByPrice.rdlc";
只需确保相应地更改名称,即将reportViewer.LocalReport.ReportPath
属性设置为RDL
文件的路径。
这是一个完整的讨论,详细说明了您必须解决此问题的选项:
The report definition for report 'xxx' has not been specified
答案 1 :(得分:0)
您还可以添加.rdlc的确切路径
示例我的工作对我有用:
reportViewer.LocalReport.ReportPath = @"C:\Users\miuser\Documents\Visual Studio 2012\Projects\miproyect\SSHD\Views\Summary\Report1.rdlc";