您好,首先报表是支持多数据集绑定的,不管是页面报表还是RDL报表,个人觉得是你的代码哪里有问题导致的
具体代码参考:
记住报表的数据字段跟动态数据源返回的字段要一致,不然就对应不上
- settings.SetLocateDataSource(args => {
- DataTable dt = new DataTable();
- string a = args.Report.Name.ToString();
- if (args.DataSet.Name == "DataSet1")
- {
-
- dt.Columns.Add("产品编号");
- dt.Columns.Add("产品名称");
- dt.Columns.Add("单价", Type.GetType("System.Int32"));
- dt.Columns.Add("库存量", Type.GetType("System.Int32"));
- dt.Columns.Add("产地");
- dt.Rows.Add("A001", "苹果", 10, 300, "中国");
- dt.Rows.Add("A002", "葡萄", 20, 200, "中国");
- dt.Rows.Add("A003", "香蕉", 30, 400, "中国");
- dt.Rows.Add("A004", "甘蔗", 10, 300, "中国");
- dt.Rows.Add("A005", "荔枝", 20, 200, "中国");
- dt.Rows.Add("A006", "芒果", 30, 400, "中国");
- dt.Rows.Add("A007", "猕猴桃", 110, 300, "中国");
- dt.Rows.Add("A008", "柠檬", 210, 200, "中国");
- dt.Rows.Add("A009", "栗子", 320, 400, "中国");
- dt.Rows.Add("A010", "火龙果", 100, 300, "中国");
- dt.Rows.Add("A011", "青芒", 250, 200, "中国");
- dt.Rows.Add("A012", "巴旦木", 320, 200, "中国");
- dt.Rows.Add("A013", "土豆", 380, 400, "中国");
- dt.Rows.Add("A014", "苹果", 110, 300, "中国");
- dt.Rows.Add("A015", "葡萄", 420, 200, "中国");
- dt.Rows.Add("A016", "香蕉", 530, 400, "中国");
- dt.Rows.Add("A017", "土豆", 380, 400, "中国");
- dt.Rows.Add("A018", "苹果", 110, 300, "中国");
- dt.Rows.Add("A019", "葡萄", 420, 200, "中国");
- dt.Rows.Add("A020", "香蕉", 530, 400, "中国");
- dt.Rows.Add("A021", "苹果", 10, 300, "中国");
- dt.Rows.Add("A022", "葡萄", 20, 200, "中国");
- dt.Rows.Add("A023", "香蕉", 30, 400, "中国");
- dt.Rows.Add("A024", "甘蔗", 10, 300, "中国");
- dt.Rows.Add("A025", "荔枝", 20, 200, "中国");
- dt.Rows.Add("A026", "芒果", 30, 400, "中国");
-
- }
- if (args.DataSet.Name == "DataSet2")
- {
-
- dt.Columns.Add("编号1");
- dt.Columns.Add("名称1");
- dt.Columns.Add("单价1", Type.GetType("System.Int32"));
- dt.Columns.Add("库存量1", Type.GetType("System.Int32"));
- dt.Rows.Add("Q001", "苹果111", 10, 300);
- dt.Rows.Add("Q002", "葡萄222", 20, 200);
- dt.Rows.Add("Q003", "香蕉333", 30, 400);
- dt.Rows.Add("Q004", "甘蔗444", 10, 300);
-
- }
- return dt;
- });
- });
复制代码
|