自定义报表
UFSOFT-U850
自定义报表应用指南
- 1 -
自定义报表
目 录
前言.....................................................................................................................................................6
第一章 浏览自定义报表功能..........................................................................................................8
1.1 自定义数据源.......................................................................................................................8
1.2 自定义格式...........................................................................................................................8
1.3 自定义条件...........................................................................................................................8
1.4 按任意列分组汇总...............................................................................................................8
1.5 交叉表和多元交叉表...........................................................................................................9
1.6 分组打印功能.......................................................................................................................9
1.7 支持动态列和列间运算.......................................................................................................9
1.8 查询条件存储.......................................................................................................................9
1.9 高级条件输入方式和模糊参照...........................................................................................9
1.10 标签数据源和标签之间的运算.......................................................................................10
1.11 丰富的数据显示格式.......................................................................................................10
1.12 支持多层列标题...............................................................................................................10
1.13 打印设置及打印输出.......................................................................................................10
1.14 报表展现时鼠标右键功能...............................................................................................10
1.15 U8 特性.............................................................................................................................11
1.16 权限控制...........................................................................................................................11
1.17 二次开发接口...................................................................................................................11
1.18 web 功能...........................................................................................................................11
第二章 定义报表数据源.................................................................................................................11
2.1 数据源定义窗口中菜单/按钮含义说明.........................................................................11
2.2 使用向导定义一个最简单的数据源..............................................................................13
2.3 选择多张表,建立关系..................................................................................................15
2.4 选择字段,设置分组、排序方式和准则.....................................................................17
2.5 选择交叉表和多元交叉表..............................................................................................20
第三章 定义报表格式......................................................................................................................23
3.1 格式定义窗口中菜单/按钮操作说明.............................................................................23
3.2 格式定义窗口中的基本操作..........................................................................................26
3.2.1 如何调整报表中各栏目位置/大小........................................................................26
3.2.2 如何调整各区域的高度.........................................................................................27
3.2.3 如何设置根据某一对象进行连续分页打印........................................................27
3.2.4 如何增加表头表尾信息.........................................................................................28
3.2.5 如何新增一列报表数据.........................................................................................32
3.2.5 如何删除已经存在的数据列................................................................................36
3.2.6 如何设置多层表头报表.........................................................................................36
3.2.7 如何设置每页打印的行数及行高........................................................................37
3.2.8 如何设置套打及打印机信息................................................................................38
3.2.9 如何保证报表标题显示/打印均居中...................................................................38
第四章 定义查询条件......................................................................................................................40
4.1 定义过滤条件..................................................................................................................40
4.1.1 如何新增一项过滤条件..........................................................................................40
4.1.2 如何修改一项过滤条件.........................................................................................45
- 2 -
自定义报表
4.1.3 如何删除一项过滤条件.........................................................................................45
4.2 定义展开条件..................................................................................................................45
4.2.1 展开条件的用途......................................................................................................45
4.2.2 如何新增一项展开条件..........................................................................................48
4.2.3 如何删除一项展开条件..........................................................................................48
第五章 报表查询..............................................................................................................................49
5.1 查询条件的输入..............................................................................................................49
5.1.2 过滤条件的输入......................................................................................................49
5.1.3 高级过滤条件的输入..............................................................................................49
5.1.4 分组汇总条件的选择..............................................................................................50
5.1.5 展开条件的选择......................................................................................................52
5.2 查询结果界面中的各种方便功能..................................................................................52
5.2.1 工具条上按钮的用法..............................................................................................52
5.2.2 右键菜单中的功能用法..........................................................................................53
5.2.3 其他方便用法..........................................................................................................53
第六章 权限控制..............................................................................................................................55
6.1 报表的功能权限控制......................................................................................................55
6.2 报表的数据权限控制......................................................................................................55
第七章 用自定义报表控件编程....................................................................................................58
7.1 初始使用自定义报表......................................................................................................58
7.1.1 引用自定义报表组件..............................................................................................58
7.1.2 使用数据源定义工具..............................................................................................59
7.1.3 使用格式定义工具..................................................................................................60
7.1.4 初始化查询分析器..................................................................................................61
7.1.5 打开自定义报表......................................................................................................62
7.2 使用报表数据源接口......................................................................................................64
7.2.1 报表数据源接口模板..............................................................................................64
方法:...............................................................................................................................................64
public function StrSubTitle()As String........................................................................................64
public Function MoveDataDetail ()as boolean............................................................................65
7.2.2 创建和使用数据服务..............................................................................................67
7.2.3 使用过滤条件..........................................................................................................70
例 7:修改数据服务的 MoveDataDetail 方法...............................................................................70
例 8:数值型单值条件....................................................................................................................71
字段名: iQuantity..........................................................................................................................71
输入值: 1000.................................................................................................................................71
条件串: “ iQuantity = 1000 “........................................................................................................71
例 9:数值型区间条件....................................................................................................................71
字段名: iQuantity..........................................................................................................................71
输入值: 1000 2000........................................................................................................................71
条件串: “ iQuantity >= 1000 and iQuantity <=2000 “.................................................................71
例 9:日期字符型单值条件............................................................................................................71
字段名: cDate...............................................................................................................................71
输入值: 2002-01-01......................................................................................................................71
- 3 -
自定义报表
条件串: “ cData =’2002-01-01’ “..................................................................................................71
...........................................................................................................................................................71
字段名: cInvCode.........................................................................................................................71
输入值: 001...................................................................................................................................71
条件串: “ cInvCode =’001’ “........................................................................................................71
例 10:日期字符型区间条件,字符型全字匹配.............................................................................71
字段名: cDate...............................................................................................................................71
输入值: 2002-01-01 2002-12-31..................................................................................................71
条件串: “ cDate >=’2002-01-01’ and cDate<=’2002-12-31’ ”....................................................71
字段名: cinvCode.........................................................................................................................71
输入值: 001 200............................................................................................................................71
条件串: “ cInvCode >=’001’ and cinvCode<=’200’ ”.................................................................71
例 11:字符串使用通配符..............................................................................................................71
...........................................................................................................................................................71
字段名:cInvCode..........................................................................................................................71
输入值: 001...................................................................................................................................71
条件串: “ cInvCode like ‘001%’ ”................................................................................................71
或 “ cInvCode like ‘%001’ ”............................................................................................................72
或 “ cInvCode like ‘%001%’ ”.........................................................................................................72
字段名:cInvCode..........................................................................................................................72
输入值: 001 200.............................................................................................................................72
条件串: “ cInvCode like ‘001%’ and cInvCode Like ‘200%’”.....................................................72
或 “ cInvCode like ‘%001’ and cInvCode Like ‘%200’”................................................................72
或 “ cInvCode like ‘%001%’ and cInvCode Like ‘%200%’”.........................................................72
例 12:字符串多选方式..................................................................................................................72
字段名:cInvCode..........................................................................................................................72
输入值: 001 vbtab 002 vbtab 003 vbtab 004................................................................................72
条件串: “ cInvCode in(‘001’,’002’,’003’,’004’) ”.......................................................................72
字段名:cInvCode..........................................................................................................................72
输入值: 001,002,003 vbtab 200,300,400......................................................................................72
条件串:“ cInvCode in(‘001,002,003’,’200,300,400’) ”................................................................72
7.3 使用报表事件回调功能..................................................................................................75
7.3.1 实现下钻功能..........................................................................................................75
对象方法:..........................................................................................................................................75
Sub GetSubReport().....................................................................................................................75
7.3.2 实现外部参照..........................................................................................................77
7.3.3 响应报表其他事件..................................................................................................79
7.3.4 管理报表数据源......................................................................................................80
7.4 动态改变报表格式..........................................................................................................82
7.4.1 显示和隐含列....................................................................................................82
7.4.2 动态增加计算列................................................................................................83
7.4.3 重新设置分组和排序规则...............................................................................84
7.4.4 动态生成双层标题............................................................................................85
7.5 使用储过程作为报表数据源..........................................................................................86
- 4 -
自定义报表
第八章 在 WEB 上展现自定义报表...............................................................................................89
8.1 扩展的数据源接口模板..................................................................................................89
方法:...............................................................................................................................................89
public function StrSubTitle()As String........................................................................................89
public Function MoveDataDetail ()as boolean............................................................................90
附录 UFHeronReport 部件参考.......................................................................................................92
1. 对象层次结构.......................................................................................................................92
2.常用类属性和方法参考.....................................................................................................93
2.1 clsSysinterface 报表接口类....................................................................................93
2.2 clsReport 报表抽象类.............................................................................................94
2.3 clsReportManager 报表管理类...............................................................................95
ReportID ()........................................................................................................................................95
功能:取得报表 ID 号.....................................................................................................................95
属性类别:只读属性.......................................................................................................................95
参数:strReportName 报表名称.....................................................................................................95
返回值:如果存在,返回对应报表的 ID 号,否则返回 0 。.....................................................95
功能:取得报表名称.......................................................................................................................95
属性类别:只读属性.......................................................................................................................95
参数:lngIndex 报表 ID 号..............................................................................................................95
返回值:如果存在,返回对应报表的名称,否则返回空字符串 。.........................................95
CloseReport()...............................................................................................................................97
可选 blnFilter 如果有格式管理对象则不能删除。.....................................................................97
返回值:无.......................................................................................................................................97
功能:从数据库读出报表对应的 ID 号,这是辅助功能............................................................98
功能:另存报表...............................................................................................................................98
功能:取得父报表名称...................................................................................................................98
2.4 clsFilter 过滤条件抽象类.......................................................................................98
2.5 clsSpread 展开条件抽象类.....................................................................................99
2.6 clsReportFilter 条件管理对象................................................................................99
GetFieldCaptionByname().........................................................................................................101
initBuffer ()......................................................................................................................................101
MakeSQLString ()...........................................................................................................................101
2.7 clsRepCol 报表列抽象类......................................................................................102
2.8 clsTitle 报表标题抽象类.......................................................................................103
2.9 clsReportFormat 报表格式管理对象...................................................................103
- 5 -
评论0