子报表使用
- 格式:ppt
- 大小:834.00 KB
- 文档页数:12


第四节报表子系统应用方法会计核算的根本目的在于提供对经济决策有用的财务信息,一方面用以揭示企业整体经营目的的完成情况,促进企业积极改善经营管理,另一方面也可以为投资者和债权人以及潜在投资者和债权人确定投资政策和方针,为评价企业高级管理人员的经营决策和管理能力提供重要的参考依据。
同时,这些财务信息也为企业不断挖掘自身潜力、降低成本、合理运用资金、提高经济效率服务。
各会计核算主体提供财务信息的手段主要就是编制和提供会计报表,因此,会计报表是会计核算的最终成果。
在手工会计处理方式下,取得原始凭证、填制记账凭证、登记帐簿、编制会计报表时一个完整的账务处理程序。
在这种业务流程中,会计报表是会计信息系统的最终输出结果。
在会计软件中,电子表格采用嵌入式通用电子表格软件的方式,使用会计报表系统功能得到了极大的改善。
在各种会计软件中,基本均参考了excel的操作模式,应用起来十分方便。
会计报表系统可使用户在不需要软件设计人员的帮助下,生成会计工作中所需的各种会计报表。
对于报表的大小、格式都可以自由定义,而报表中的数据来源更是多种多样一一可以从帐表数据库中也可以从其他数据库中取数据。
例如,可以从其他报表中取数据、从计划数据库中取数据、从日常的业务资料中取数据等。
一、报表编制在手工记账的情况下,编制报表是一项非常复杂的工作。
在会计信息化下,编制报表就变得简单多了。
会计软件提供了非常丰富的报表模板,只需要利用系统提供的报表模板,对相应的参数进行设置,便可完成报表的编制工作。
通过报表模块来编制报表,具体软件在操作上有一些差异。
(1)确定报表数据来源帐套这一步是对目前进行编制的报表数据来源及操作人员权限的定义。
①帐套指明所要编制的报表,其数据是来自于哪个帐套,也就是由哪个帐套的数据来加工产生目前的这张报表,可以通过浏览功能进行选择。
②日期系统默认的是计算机的当前日期,报表编制中会根据这一日期进行相关会计期间的报表编制。
因此,在实际工作中,要根据编制报表的会计期间对这一日期进行修改。
ireport 4.5初级教程之子报表的实现1.打开ireport后,首先设置数据源,这里对数据源进行命名为JDBCCONN,设置好之后点击test可以测试连接是否正确,若是不正确可能有以下几种原因,url地址错误用户名或者密码错误没有引入连接数据库所需要的jar包2.新建报表后对该报表绑定数据集,如下图所示,选择你所需要在报表中显示的数据所对应的数据库表。
然后选出所需要显示的表数据。
3.将通过步骤二所得到的数据添加到报表中来,此时数据会显示在Fields中。
这里可以根据自己的需要将这些Field拖动到报表中来,根据自己所需要的格式来布局。
4.设计字表,在组件面板中找到subreport,将子报表拖到父表中来,5.若是子报表存在则选择该表所存在的位置,若不存在则新建子报表,如图所示:6.为字表显示数据绑定所需的数据集7.将查询出来的数据添加到字表中的fields中。
8.此处的分组可以设置可不设置,在设计好子表后也可以对所需的数据进行分组操作。
9.设置子报表的名称,这里可以看到子表所存在的相对路径和绝对路径。
10.子表和父表11.子表中新增一个参数,这里设置为sid,该变量的含义是父表示通过一个参数来查询所对应的子表。
这里的sid的类型必须和父表中查询所对应的字段类型相同,不然会出现类型不匹配错误。
12.父表中选中字表,查看子表的属性,查找parameters选项。
新建一个parameter,该参数是和子表交互所传的参数。
上面说过子表中建立的sid 参数的数据类型必须和父表中参数的数据类型一样,主要体现在这里。
13.设计好子表,点击preview后首先弹出的是如下图所示的对话框,这里就是通过附表索要传递的参数,这里可以通过手动输入来查看。
14.现在点击父表的preview,查看如下图所示,证明参数已经传递到了字表中。
子报表的设计以及参数的传递已经正确执行。
同为比较常用的java报表生成工具,FineReport对子报表的解决方案和实现方法与ireport有所不同,具体实现思路和步骤如下,供ireport使用者借鉴:对于主子报表,FineReport主要有两种实现方法:表单式主子表1.描述单表式主子报表特点是用单个报表实现主子表的业务逻辑。
1.套打技巧(1)扫描原件电子版作为报表背景(2)在报表上面依据背景画出控件位置(3)根据字段可以设计数据库和报表的连接进行自动大批量打印2.多表头详见ppt3.锐浪报表使用(单数据连接)数据连接有两种模式(推模式、拉模式),推模式就是由程序代码把连接字符串、SQL 语句推送给报表;拉模式则是在明细网格中根据填好的连接字符串、SQL语句由报表自身自主查询(不建议,连接语句包含在报表中,不太安全)。
private GridppReport Report = new GridppReport();//1.定义一个新报表public void showreport(){//2.载入报表模板数据//Report.LoadFromFile(GridppReportDemo.Utility.GetReportTemplatePath() + "program\\ParamQuerySQL2.grf");Report.LoadFromFile(Application.StartupPath + "\\1.grf");//3.设置与数据源的连接串,因为在设计时指定的数据库路径是绝对路径。
Report.DetailGrid.Recordset.ConnectionString ="Provider=SQLOLEDB.1;Password=xxxxxx;Persist Security Info=True;User ID= xxxxxx;Initial Catalog=ry_powder;Data Source=192.168.8.18;Use Procedure for Prepare=1;AutoTranslate=True;Packet Size=4096;Workstation ID=UNCLE13;Use Encryption forData=False;Tag with column collation when possible=False";//4.连接报表取数事件Report.Initialize += new_IGridppReportEvents_InitializeEventHandler(MyReport);//5.设定查询显示器要显示的报表axGRPrintViewer1.Report = Report;}private void MyReport()//报表查询条件{string startdate = dateTimePicker1.Value.ToString("yy-MM-dd 0:00:00");string enddate = dateTimePicker2.Value.ToString("yy-MM-dd 23:59:59");string SQL = "SELECT * FROM production_material_lose WHERE unit = '" + comboBox1.Text + "' AND unit_2 = '" + comboBox2.Text + "' AND materialtype = '" + comboBox3.Text + "' AND typedetail = '" + comboBox4.Text + "' and uploaddate >= '" + startdate + "' and uploaddate <='" + enddate + "'";//用拉模式为报表提供数据,将按条件生成的SQL设置到报表上Report.DetailGrid.Recordset.QuerySQL = SQL;}4.子报表意义及说明因为主报表只能定义一个数据连接,但是有时候我们要做多个查询,分别做几个报表是可以的,但是会显得比较乱,所以我们在主报表中添加一个或多个子报表来实现。
JasperReport4.0.1 用户手册目录1.介绍 (4)2.准备工作 (4)2.1环境要求 (4)2.2下载 (5)3.报表生命周期 (5)4.报表结构 (5)5.Report Datasource (6)5.1 Database JDBC connection (6)5.2 JavaBeans set datasource (9)5.3 File CSV datasource (11)5.4 Microsoft Excel(xls)data source (12)6.报表元素(Report Elements) (12)6.1 Static Texts (12)6.2 Text Field (13)6.3 Crosstab(交叉报表) (13)6.3.1 基本设置 (13)6.3.2 设置报表的语言 (15)6.3.3 对Row Groups中的变量的操作 (16)6.3.3 对Column Groups中的变量的操作 (17)6.3.4 对Measures中的变量的操作 (17)6.3.5 预览报表效果 (18)6.4 List (18)6.4.1 设置List引用的dataset,为List所引用的参数赋值 (18)6.4.2 设置List中内容的扩展方向 (18)6.4.3 设置List中内容的扩展个数 (19)6.4.4 示例中的报表的设计以及运行效果如下图(截取部分) (19)6.5 Table(表格) (20)6.5.1 Table如何获得连接 (20)6.5.2 如何向Table中的参数传值 (20)6.5.3 如何删除或添加一列 (20)6.6 Break(分页符) (20)6.7 Chart(图表) (20)6.8 Subreport (22)6.8.1 为子报表的参数传值 (22)6.8.2 子报表向主报表返回值 (23)7.其它内容 (23)7.1 分组报表 (23)7.2组件对齐技巧 (24)7.3 Style (24)7.4 Scriptlet (25)8、使用中出现的问题以及解决办法 (26)用户手册中demo 需要导入数据源,导入方法:1.介绍iReport 是一个能够创建复杂报表的开源项目,它是用Java 语言编写的,是目前全球较为流行的开源报表设计器。