2013-08-26 90 views
1

我有一个.rdlc两个数据源。 当我仅使用名为“dsLancamentos”的数据源时,它工作正常。现在 ,我已经添加的第二个,命名为“dsDespesas”,以及报表查看器抛出此消息:报告服务(.RDLC)两个数据集

的数据源实例尚未为数据源“dsDespesas”提供。

这里是我的代码:

var dsReportLancamentos = new dsReportLancamentosTableAdapters.PR_REPORT_LANCAMENTOSTableAdapter(); 
var dsReportDespesas = new dsReportLancamentosTableAdapters.PR_REPORT_SEA_DESPESASTableAdapter(); 
var tabela = (DataTable)dsReportLancamentos.GetData(txtNomeProduto.Text, Funcoes.GetDateTimeValueOrNull(DataDe), Funcoes.GetDateTimeValueOrNull(DataAte), Funcoes.GetByteValueOrNull(status)); 
var despesas = (DataTable)dsReportDespesas.GetData(Funcoes.GetDateTimeValueOrNull(DataDe), Funcoes.GetDateTimeValueOrNull(DataAte)); 


// CONFIGURAÇÕES DO REPORT ----------------------- 
ReportDataSource rds = new ReportDataSource("dsLancamentos", tabela); 
ReportDataSource rdsDespesa = new ReportDataSource("dsDespesas", despesas); 
rvReport.Reset(); 
rvReport.ProcessingMode = ProcessingMode.Local; 
rvReport.LocalReport.ReportPath = Server.MapPath("~/reports/LancamentosReport.rdlc"); 
rvReport.LocalReport.DataSources.Add(rds); 
rvReport.LocalReport.DataSources.Add(rdsDespesa); 
// ----------------------------------------------- 

谁能帮助我?我只是无法找到什么是错的。

Tks。

+0

指定的背后事端每个数据集有没有将数据源添加到报告时,确保变量despesas和tabela有价值吗? –

回答

1

在报表定义

1.Open客户端报表定义(.rdlc)在Visual Studio报表设计器中的文件更新的数据集。

2.从“查看”菜单中选择“报告数据”。报告数据窗口出现。然后要将新数据集添加到报告定义中,请在报告数据窗口的工具栏中选择新建,然后选择数据集。

3. 单击“刷新”以更新包含更改的报告定义文件。

+0

这是一个运行时错误,而不是设计时错误。 –

0

当你加入,你需要将数据提供给它RDLC文件中的数据集,否则会抛出运行时error.Set数据与名字在你的代码像这个 -

viewer.LocalReport.ReportPath = reportPath; 
viewer.LocalReport.DataSources.Add(new ReportDataSource("rdlc_dataset1", dataset.Tables[0])); 
viewer.LocalReport.DataSources.Add(new ReportDataSource("rdlc_dataset2", dataset.Tables[1]));