700 likes | 839 Views
iRepor 报表设计基础. IReport 安装 普通实体报表 数据结果集报表 工作流主从报表 饼状图报表 柱状图,曲线图报表 条形码报表 练习习题. 安装以及数据库的动态连接. 1. 安装 直接解压即可,不再详细介绍。 2.Classpath 的添加. 找到相关文件点击添加即可. SQL 选择此类型. 3. 动态连接属性设置. 数据库地址及数据库名. 数据库登录用户及密码. 设置好可以测试下,如果成功如右图。. 普通实体报表. 特点:主要用于单表单信息的打印 实例员工档案打印
E N D
iRepor报表设计基础 • IReport安装 • 普通实体报表 • 数据结果集报表 • 工作流主从报表 • 饼状图报表 • 柱状图,曲线图报表 • 条形码报表 • 练习习题
安装以及数据库的动态连接 1.安装 直接解压即可,不再详细介绍。 2.Classpath的添加 • 找到相关文件点击添加即可
SQL选择此类型 3.动态连接属性设置 • 数据库地址及数据库名 • 数据库登录用户及密码 • 设置好可以测试下,如果成功如右图。
普通实体报表 特点:主要用于单表单信息的打印 • 实例员工档案打印 • 在需要打印的对应的表单对象建立[打印]的对象方法;该对象方法的属性设置为[定制操作界面]
原生报表 • 创建原生报表对象必须带有参数
对象方法调用原生报表 • 执行表达式ABS_sendRedirect("/UIProcessor?Table:=rGDXX&ParamAction:=true&operate:=Print&BillID:="+$V{$PO{ID}}) 此处需要传递原生报表名以及参数,参数通常是一个BillID,也可以是多个参数。
把调整好的报表放入…/ABS_DOCUMENT/…/Report目录下把调整好的报表放入…/ABS_DOCUMENT/…/Report目录下 • 报表名为原生报表表名,格式为XML类型
添加参数 • 报表参数 • 报表查询 • 调用存储过程,传入参数
效果 • 点击即可打印
SQL结果集报表 特点:输入相关参数,进行统计和打印。 • 实例设备报修报表;新建SQL结果集,如图: • 参数 • 调用存储过程
SQL结果集预览 • 点击【打印】按钮,平台会自动生成原始的XML报表文件,只要将其排列整齐即可。 • 对应的参数
对应存储过程 • SET QUOTED_IDENTIFIER ON • GO • SET ANSI_NULLS ON • GO • ALTER PROCEDURE sp_FixedAssets_Maintain • (@Type numeric(12,0),@Dept numeric(12,0),@StartDate varchar(10) ,@EndDate varchar(10),@ItIf int,@AssetsIf int) • AS BEGIN • --select * from ttableobj where tablename='TBE_EAccount' • --select * from ttableobj where tablename='EquipmentType' • --select * from ttableobj where tablename='lbOrganization' • --select * from ttableobj where tablename='EquipmentChangeRecord' • --select * from ttable where tablename='EquipmentChangeRecord' • --select * from EquipmentChangeRecord • --select * from CodeBase_HandType • /* 固定资产维修报表 • 取得固定资产相关信息 • 创建人:张伟彬 • 日期:2007.09.17 • */
select • (select name from EquipmentType • where ( ID in( select FID from EquipmentType where id = a.Equipment_Sort_Id ) • or • ID in( select id from EquipmentType where id = a.Equipment_Sort_Id and FDNCode='0.1') • )and FDNCode='0.1' • )as 'f1', • isnull((select Name from EquipmentType where ID=a.Equipment_Sort_Id),'')as 'f2', • (select Name from lbOrganization where ID=b.BelongToDepart) as '维修部门' , • a.EquipMentName as '设备名称', • a.EquipMent_Type as '型号', • a.AssetNo as '资产编号', • a.FirstPrice as '原值' , • 1 as '数量', • b.CountAmount as '维修金额', • b.MainProject as '维修项目' • into #temp_TBE_EAccount • from TBE_EAccount a,EquipmentChangeRecord b • where b.TBE_EAccount_ID=a.id and b.ChangeType=3 and a.cardState=1 • and (a.Equipment_Sort_Id=@Type or a.Equipment_Sort_Id in (select id from EquipmentType where FID=@Type ) or @Type is null ) • and (b.BelongToDepart=@Dept or @Dept is null ) • and (b.ChangeDate between @StartDate and @EndDate or @StartDate='' or @EndDate ='' ) • and (a.InfoCode=@ItIf or @ItIf is null ) • and (a.AssetGenre=@AssetsIf or @AssetsIf is null )
select • case • when f2 is null then '【'+f1+'(合计)'+'】' • else f2 end as '设备类别', • 维修部门, • 设备名称, • 型号, • 资产编号, • 原值, • 数量, • 维修金额, • 维修项目 • from • (select * from #temp_TBE_EAccount • union all • select f1,null,null,null,null,null,sum(原值),sum(数量),sum(维修金额),null • from #temp_TBE_EAccount group by f1) t1 • order by f1,f2 • drop table #temp_TBE_EAccount • END • GO • SET QUOTED_IDENTIFIER OFF • GO • SET ANSI_NULLS ON • GO
工作流主从报表 特点:主要用于主从关系或内部对象关系的报表。 • 实例实物资产报修流程报表;在需要打印的步骤,设置支持打印
在流程相应步骤点击【打印】,生产原始XML报表文件在流程相应步骤点击【打印】,生产原始XML报表文件 • 流程相应步骤
点击【打印】 • 点击【打印】按钮,平台会自动生成原始的XML报表文件,只要将其排列整齐即可。
点击此按钮添加报表群组 • 添加报表群组 • 新建群组,属性如右图
在相应的群组创建子报表 点击[子报表]按钮在相应群组上创建即可。
SQL查询中传入参数 • 从表自动生成的“主表_ID=$P{子报表的报表参数}” • 子报表的“报表参数”
将Text类型和Field类型分别放在columnHeader和detail栏将Text类型和Field类型分别放在columnHeader和detail栏 • 点击确认栏位高度
编排好的子报表 :保存后,点击【建立】菜单的【编译】对子报表进行编译(注平台应用中子报表无法自动编译,需手动进行)。
进行[执行报表(使用动态连接)]预览 ,查看效果
主报表与子报表的关联 :选中子报表点击右键,单击【属性】 • 子报表编译后jasper文件的路径 • 子报表“报表参数” • 主报表“ID”
将主报表和子报表的XML文件拷到…/Report目录下将主报表和子报表的XML文件拷到…/Report目录下
将子报表编译后的jasper文件拷到…/Report/1.2.8目录下将子报表编译后的jasper文件拷到…/Report/1.2.8目录下
饼状图报表 特点:能清晰的看出各部分所占份额和百分比 实例调查统计报表;新建SQL结果集,如图:
点击此按钮,选择所要图形,在相应位置添加即可点击此按钮,选择所要图形,在相应位置添加即可 • 创建饼状图报表
柱状图和曲线图报表 特点:主要用于统计如,生产指标或财务指标类型的报表 实例考核结果分布(期间),创建结果集如图:
交叉表和柱状图的添加 • 交叉表创建按钮 • 柱状图创建按钮 • 交叉表