我有具有包含另一报告子报表控制未绑定XtraReport。我称之为“绑定”到有使用模式中的字段定义,但实际上没有绑定到任何数据集的报告,我创建了一个数据表使用一个数据访问层,然后通过该对象报告的DataSource属性。

所以,我有以下代码:

        // (...) Get the data from the db and fill a DataTable

        if (table.Rows.Count > 0)
        {
            report.DataSource = table;

            // (...) Get the data from the db and fill a DataTable for the subreport
            report.SubPurchaseOrder.Report.DataSource = tableSubReport;

            report.ShowPreviewDialog();
        }
        else
        {
            MessageBox.Show("No data to show.");
        }

但我开始使用这种方法是非常印奇怪的报表(看看的的附件中的PDF ,对不起,这是西班牙语,但我认为你的想法)。

我已经阅读了DevExpress的文档,也许我没有得到正确的方法,所以我对你的问题是如何创建具有一个或多个子报表的报告,但我提供的数据使用一些,以填补他们过程外部的报告,例如一个数据访问层?

请让我知道如果这个问题没有正确陈述或者更多信息缺乏。

编辑:

我上传了一个样本项目与问题这里报告

我试图使用某种参数。在子报表控制的BeforePrint事件,我想:

((XRSubreport)sender).ReportSource.FilterString = "[IdPO_RO] = " + _idPurchaseOrder;

((XRSubreport)sender).ReportSource.Parameters["Id"].Value = _idPurchaseOrder;

当然,对于第二,我添加一个参数和所述过滤字符串的相同于第一,但使用该参数。

有帮助吗?

解决方案

我可以解决这个问题。

对于此的原因是,我是分配给错误的对象。这一行:

report.SubPurchaseOrder.Report.DataSource = tableSubReport;

应该是:

report.SubPurchaseOrder.ReportSource.DataSource = tableSubReport;

因此,简要的解释是,我使用的另一个属性是指包含在报表控件(XRSubreport)的报告。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top