同一报表中具有不同数据集的多个表

时间:2015-01-23 21:27:20

标签: wpf report microsoft-reporting

我想在同一个报表中添加两个表,每个表绑定来自数据库中不同表的数据

我尝试使一个数据集包含两个数据库表,并将列分配给报告中的不同表,如下所示:

rptViewer.LocalReport.DataSources.Clear();
            rptViewer.LocalReport.DataSources.Add(new ReportDataSource("reportDS", getData()));  //reportDS the dataset cretated with report

            rptViewer.LocalReport.ReportPath = @"../../portifolioReport.rdlc";  

            rptViewer.RefreshReport();  

private DataTable getData()
    {
        SqlCeCommand cmd = new SqlCeCommand("select * from portifolio where patient_NID='"+NIDTxtBox4.Text+"'", con);
        SqlCeCommand cmd2 = new SqlCeCommand("select * from patients where NID='"+NIDTxtBox4.Text+"'", con);
        DataSet1.DataTable1DataTable dt = new DataSet1.DataTable1DataTable();
          SqlCeDataAdapter dscmd = new SqlCeDataAdapter(cmd);
        SqlCeDataAdapter dscmd2 = new SqlCeDataAdapter(cmd2);
          dscmd.Fill(dt);
          dscmd2.Fill(dt);
        return dt ;

    }

但是在报告中每一行添加的每行都有问题,在另一个表中添加了空行

我正在使用微软报告,wpf 请有人帮帮我吗?

1 个答案:

答案 0 :(得分:0)

也许你可以加入选择:

select
    *
from
    patients a
        inner join
    portifolio b
            on a.patient_NID = b.NID

这将把两张桌子放在一起。您有其他连接选项,例如:左连接,右连接,交叉连接(每个都取决于您的需要)。我需要更多关于你将要显示的信息(如果存在)之间关系的细节。