首页 > 编程知识 正文

输入数据自动生成报告软件,在线表格生成器

时间:2023-05-05 03:04:40 阅读:141096 作者:2424

FastReport .Net是针对Windows Forms、ASP.NET、MVC和. NET Core的全功能报告解决方案。 可在Microsoft Visual Studio 2005-2019中使用。 Net Framework 2.0-4.x,支持. NET Core 3.0或更高版本。

请立即下载最新版本的FastReport.NET v2021.1

我第一次使用FastReport插件的功能是打印非常复杂的excel表单。 数百个字段必须绑定数据,必须至少有四个数据源,并且必须横向和纵向合并单元格。

我没有直接连接到数据库,而是使用RegisterData方式自己注册DataSet对象。 所有表Table都是代码生成的,输入DataSet并注册到控件中。

最初用这个插件制作简单的功能试着使用的是下面的例子,但是花了一整天,还是有4个人请假也做不到。 晚上拿着别人的模板直接修改,测试,通过了。

到目前为止的测试显示没有连接到数据源。 这是因为使用记事本将数据源直接添加到模板中。 平时别人使用的数据源是通过自己编写代码调用Design的方法获得的。 只是winform程序。 webform程序不行。 因为它会启动com组件。

以下是我总结的特别简单的方法,使用RegisterData方式自己注册DataSet对象。

1.【file】--】【New】选择新的FastReport模板,选择下图中的1。

2 .选择【view】-】【Data】,则显示如下内容,导出Dictionary并保存。

3 .编辑导出的. frd文件,编辑后保存再导入。 如下所示。

(1) TableDataSource是数据源节点。

)2) Name是DataSet对象的表的表名称。

)3) Column是Table列,将数据绑定到模板时使用Column的Name属性。

? XML版本=' 1.0 '编码=' utf-8 '? Column Name='名称' datatype=' system.string ' propname=' column '/column name='密码' datatype=' system.string 第二行直接将右边的数据源发送到单元格。

设置边框、字体。

5 .添加事件后台方法选择Table1,然后双击事件ManualBuild的后面,添加以下代码:

//控件Table1的构建事件

privatevoidtable1_ manual build (object sender,EventArgs e ) ) ) ) ) ) ) ) ) ) ) )。

{

data source base data1=report.get data source (获取“Table1”dataset的表名为table 1的数据源

data1.Init (; //初始化

table1.打印行(0() 0; //控件Table1打印第0行

table1.打印列(;//每次打印一行时,调用PrintColumn或PrintColumns

wile(data1.hasmorerows )//打印重复循环的行

{

table1.打印行(1;

table1.打印列(;

data1.Next (; //读下一行

}

}

说明:

)1) Table控件从第0行开始。

)绑定数据的重复行计为一行。

)3)在输出行之前,首先调用Init )方法。 如果有两个数据源,如data1和data2,则data1必须用作参数,如data2.init(data1 )。

)4)每打印一行,调用PrintColumn或PrintColumns

6 .添加c#代码以创建新的测试页test.aspx,然后将FastReport控件拖到页面上&; 放下。 (仅当按照FastReport.net并引用FastReport.dll、FastReport.Bars.dll和FastReport.Bars.dll时

添加以下页面:

后台方法: protectedvoidwebreport _ start report (object sender,EventArgs e ) { DataSet ds=new DataSet ) }; 数据表格1=new datatable (; table1.TableName='Table1'; //必须设置表名ds.tables.add(table1); //添加表列table1.Columns.Add (名称)、typeof(string ) ); table1.Columns.Add ('密码',typeof ) (string ); //任意添加数据for (inti=0,maxI=10; i maxI; I ) { DataRow row=table1.NewRow (; row[ '名字' ]='我是' i.ToString (); row[ '密码' ]=i.ToString (; table1.Rows.add(Row; } reportfreport=(senderaswebreport ).report; strings path=getreportspath (test.frx ); freport.load(Spath; 在FastReport控件的freport.registerdata(ds )中注册DataSet对象; //////fastreport模板的路径/////模板名称///返回模板路径publicstringgetreportspath (strings report name ) return faspart

对应打印;

对应分页符。

你想要更多吗? 点击阅读【FastReport报表2020最新资源盘点】,可以查找所需的教程资源。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。