Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何为主明细表设置crystal报表中子报表的数据源_C#_Crystal Reports_Subreport - Fatal编程技术网

C# 如何为主明细表设置crystal报表中子报表的数据源

C# 如何为主明细表设置crystal报表中子报表的数据源,c#,crystal-reports,subreport,C#,Crystal Reports,Subreport,我有这两个表,我想生成一个crystal报告,其中我有一个子报告,列出了按商店列出的所有订单。但我在设置子报表的数据源时遇到问题 ReportsDataSetTableAdapters.StoreTableAdapter adp = new ReportsDataSetTableAdapters.StoreTableAdapter(); MainOrderReport report = new MainOrderReport(); ReportsDataSetTableAdapters.Orde

我有这两个表,我想生成一个crystal报告,其中我有一个子报告,列出了按商店列出的所有订单。但我在设置子报表的数据源时遇到问题

ReportsDataSetTableAdapters.StoreTableAdapter adp = new ReportsDataSetTableAdapters.StoreTableAdapter();
MainOrderReport report = new MainOrderReport();
ReportsDataSetTableAdapters.OrderTableAdapter del = new ReportsDataSetTableAdapters.OrderTableAdapter();
report.Subreports[0].SetDataSource(del.GetData().DefaultView);
report.SetDataSource(adp.GetData().DefaultView);
crystalReportViewer.ReportSource = report;
crystalReportViewer.Refresh();
但此代码引发此异常: 未能启用约束。一个或多个行包含违反非空、唯一或外键约束的值。
请帮助我,我这里缺少什么。

请先尝试清除连接:

report.Subreports[0].DataSourceConnections.Clear();
report.Subreports[0].SetDataSource(adp.GetData().DefaultView);
crystalReportViewer1.ReportSource = report;
crystalReportViewer1.Refresh();
根据给定的数据集映像,OrderDataTable是StoreDataTable的子级。在代码中,首先填充孩子,然后填充家长。在数据集中,您定义了两个表之间的约束


可能这就是您出现此错误的原因。尝试先填充父表,然后填充子表。

我仍然遇到此异常,无法启用约束。一个或多个行包含违反非空、唯一或外键的值constraints@DesireOkidoke,然后按照这篇文章上的答案进一步调查你的错误。。。