吃饭睡觉打豆豆 发表于 2020-7-8 09:18:45

Webviewer动态数据源绑定可以给一张报表绑定多数据集吗

新建了一张报表,使用了动态数据源绑定,该报表需要绑定两个数据集,但是我进行动态数据源绑定的时候只执行第一个数据集数据的绑定

KearneyKang 发表于 2020-7-8 09:27:15

您好,首先报表是支持多数据集绑定的,不管是页面报表还是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;
                });

            });

页: [1]
查看完整版本: Webviewer动态数据源绑定可以给一张报表绑定多数据集吗