C# 如何在crystal报表中排列这些数据?

C# 如何在crystal报表中排列这些数据?,c#,.net,xml,.net-4.0,crystal-reports,C#,.net,Xml,.net 4.0,Crystal Reports,我有这样的xml数据 <?xml version="1.0" encoding="UTF-8"?> <root> <supplier> <s_code>1</s_code> <net_weight>100</net_weight> <rate>100.00</rate> <items> <s_code>1</s

我有这样的xml数据

<?xml version="1.0" encoding="UTF-8"?>
<root>
  <supplier>
    <s_code>1</s_code>
    <net_weight>100</net_weight>
    <rate>100.00</rate>

    <items>
      <s_code>1</s_code> 
      <item_code>SKU001</items_code>
      <price>100</price>
    </items>
    <items>
      <s_code>1</s_code>
      <item_code>SKU002</items_code>
      <price>200</price>
    </items>

  </supplier>

  <supplier>
    <s_code>2</s_code>
    <net_weight>500</net_weight>
    <rate>150.00</rate>

    <items>
      <s_code>2</s_code>
      <item_code>SKU001</items_code>
      <price>100</price>
    </items>

  </supplier>

</root>
现在我收到3页供应商数据和项目。但我想显示2页[每个供应商1页,每页中与每个客户相关的项目数据]

知道我做错了什么吗?我应该做些什么来实现我需要的输出

关于

您可能指的是“每个供应商1页”(而不是“每个客户1页”)。
如果我的假设是正确的,您需要使用“报告->分组专家”按
DataTable1.s\u code
分组,然后使用分区专家为组标题启用“之前新建页面”。

是的,第5点“1条可见记录后新建页面”表示每个“项目”有1页。小组专家是正确的解决方案FMunkert,它很有效,非常感谢。一个小问题是,当我为组标题设置“New page before”时,第一页是空白的。不知道这是正确的方法,但由于第一页是空白的,我在组标题中添加了公式“Not OnFirstRecord”,即“New page before”。如果您的报告标题为空,请确保取消显示报告标题部分。然后,第一页将不会为空。
DataSet reportData = new DataSet();
reportData.ReadXml("http://192.168.1.10/test/data.xml");

DataSet dset = new DataSet1();
dset.Tables[0].Merge(reportData.Tables[0]);
dset.Tables[1].Merge(reportData.Tables[1]);

ReportDocument report = new CrystalReport1();
report.SetDataSource(dset);
reportViewer.ViewerCore.ReportSource = report;