没有找到合适的产品?
联系客服协助选型:023-68661681
提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
 
                
            转帖|使用教程|编辑:陈津勇|2019-07-25 15:22:24.007|阅读 576 次
概述:通过本文,你将了解在使用ActiveReports报表控件进行在线报表设计,遇到需要设计出的报表中加入固定的字段,但每次需显示的数据都不一样时,怎样动态绑定数据源的数据。
# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>
在使用ActiveReports报表控件进行在线报表设计的时候,经常会有这样的需求:设计出的报表,需要加入了固定的字段,但每次需显示的数据都不一样,要怎么做才可以动态绑定数据源的数据呢?

其实,通过ActiveReports最新推出的Web端在线报表设计器可以很容易的实现动态绑定数据源操作。ActiveReports在线报表设计器主要使用场景包含:
本文将为您介绍如何使用ActiveReports的在线报表设计器动态绑定数据源。
1、 首先通过Visual Studio打开ActiveReports的Web端在线报表设计器,其存储路径如下:

2、 在控制层DataSetsController里进行一个数据源名称和数据集字段的设置,简单说就是创建表结构、表的命名和表对应的字段名称。
实现代码如下:
public ActionResult GetDataSetContent(string id)
      {
         DataSet data1= returndata();
         ArData XmlJsonData = new ArData();
            XmlJsonData.DataSet = new ArDataSet();
            XmlJsonData.DataSet.Name = "DataSet1";
            XmlJsonData.DataSet.Query = new ArQuery();
            XmlJsonData.DataSet.Query.DataSourceName = "DataSource1";
            XmlJsonData.DataSet.Fields = new
ArField[data1.Tables[0].Columns.Count];
            foreach (DataColumn drc in data1.Tables[0].Columns)
            {
                XmlJsonData.DataSet.Fields[drc.Ordinal] = new
ArField(drc.ColumnName, drc.ColumnName, drc.Caption);
          }
            XmlJsonData.DataSource = new ArDataSource();
            XmlJsonData.DataSource.Name = "DataSource1";
          XmlJsonData.DataSource.ConnectionProperties = new
ArConnectionProperties();
            XmlJsonData.DataSource.ConnectionProperties.DataProvider =
"DATASET";
            string dataSet = JsonHelper.ObjTranJson(XmlJsonData);
            return new ContentResult { Content = dataSet, ContentType =
"application/json" };
        }
        public DataSet returndata()
        {
            DataTable  dt = new DataTable();
            dt.Columns.Add("产品编号");
            dt.Columns.Add("产品名称");
            dt.Columns.Add("单价");
            dt.Columns.Add("库存量");
            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, "中国");
            DataSet temp = new DataSet();
            temp.Tables.Add(dt);
            return temp;                               
        }
       [Route("list")]
        [HttpGet]
        public ActionResult GetDataSetsList()
        {
           var dataSetsService =
HttpContext.GetServiceFromContext\();
            //var dataSetsList = dataSetsService.GetDataSetsList();
            //return Json(dataSetsList, JsonRequestBehavior.AllowGet);
            return Json(new object[] { new { Id ="test", Name = "添加数据" } },
JsonRequestBehavior.AllowGet);
}3、 需要对创建好的报表进行数据绑定,这里需要注意的是:在进行数据绑定时,务必在Startup.cs里进行对应的动态数据源绑定,不然在报表预览时会报错。
主要实现代码如下:
app.UseReporting(config =\>
            {
                config.UseFileStore(ResourcesRootDirectory);
              config.LocateDataSource = args =\>
                {
                    DataSetsController TemCon = new DataSetsController();
                    DataSet data1 = TemCon.returndata();
                   return data1;
                };
});4、完成上述步骤,即可实现在ActiveReports的在线报表设计器中动态绑定数据源,下面我们来看看具体的运行样式:



想要获取更多 ActiveReports 资源的朋友,请点这里。
想要购买正版 ActiveReports 产品的朋友,请。
有关慧都科技更多的精彩内容,请关注下方的微信公众号↓↓↓

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@ldacury.cn
文章转载自:



 
					注意: Cogent DataHub 软件 v11 包含一些新功能,您的目标操作系统可能不支持这些功能。
 
					本教程主要为大家介绍如何使用DevExpress WinForms数据网格控件进行数据排序的基础知识,欢迎下载最新版组件体验!
 
					在使用Parasoft C/C++test执行BugDetective数据流分析时,可能会遇到用户自定义的资源API,那在这种情况下,若要判断是否存在资源问题,如资源泄露等,则需要手动配置测试配置。
 
					大型SaaS系统的自动化测试常常受制于界面变化快、结构复杂、加载机制多变等因素。从元素识别到脚本管理,SmartBear TestComplete帮助Salesforce建了可靠的自动化测试体系。
 相关产品
相关产品
	 亚洲畅销的.NET报表控件,20万用户的选择,可在应用程序中生成各种报表,十多年来一直荣获应用程序的优秀报表生成控件。
 最新文章 MORE
最新文章 MORE  
		
 靠谱朗驰娱乐体育相关的文章 MORE
靠谱朗驰娱乐体育相关的文章 MORE  
		
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@ldacury.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
 
                 
             靠谱朗驰娱乐体育
靠谱朗驰娱乐体育 