Report_Report Builder的一些基本概念(概念)

2014-05-31 Created By BaoXinjian

图片 11.
Repot
对象


    (1).数据模型对象

        查询、组、列、链接、用户参数

    (2).布局对象

        重复帧、帧、领域、样板、锚、

    (3).参数表单对象

        参数、字段、样板

    (4).PLSQL对象程序单元

    (5).触发器

    (6).外部的Library库

 

图片 22.
Report Styles


    Tabular Report:
基本的类型报告,没列对应于从数据库中挑选的一个列

    Group Above Reports:

    Group Left Reports:

    Form-Like Reports:

    Form Letter Reports:

    Mailing Label Reports:

    Matrix Reports:矩阵报表

 

图片 33.
数据模型 DataModel    


    查询Query

    组Groups

    列(Formula、Summary、Placeholder
Column)

    连接(Data Link)

    参数(System Paramters & User
Paramters)

 

图片 43.1.
查询(Query)


    内部查询(SQL Query):
内部SQL,无法被别的Report所利用;

    外部查询(Ref Cursor
Query):应用Package中的Ref
Cursor,能够视作共享,具体的SQL可以定义在Report或者定义在Package中;

    单查询:Report唯有一个Query;

    多询问:Report存在四个Query,可以使相互关联的,也可以是不涉及的;

    相关的多询问:七个Query中互相关系,一般用来主从式报表,两者之间通过Datalink进行关联

    不相干的多询问:Query之间不存任何关联,查询先后顺序由Query的各样地方决定,先上后下,先左后右

 

图片 53.2.
组(Group)


    1.组的成效

        (1).将一个询问的数据分为多少个聚众,每个结合称为组

        (2).过滤查询数据,通过组过滤对应的询问结果

    2.组的门类

        (1).缺省组:建立Query时,自动发出Group

        (2).用户定义组:用于三种情状暴发分组报表&爆发矩阵报表&暴发子汇总

    3.组过滤

        允许有标准的选取由询问检索出来的数目,设定条件,过滤查询结果

        (1).Oracle
Report封装的过滤器

            First
Filter:彰显组内前N条数据

            Last
Filter:突显组内后N条数

        (2).用户定义过滤器

            该过滤器通过编制PLSQL建立

    4.组的层次结构

        组的层次结构决定了在缺省布局对象中组的顺序

        如若没有DataLink,组由Query的职位决定,自左向右,自上而下

        若是存在DataLink,组由Query的主从关系决定

 

图片 63.3.
列(Database、Formula、Summary、Placeholder Column)


    1.缺省列

        为查询Select欲绝的每一项都成立一个列

    2.用户定义列 – 公式列(Formual
Column)

        为该列定义一个计算公式,Ex:
return :sal+nvl(:com,0)

        按建立的职位,分为Group Level
& Report Level

    3.用为定义列 – 汇总列(Summary
Column)

        提供的计算函数有:总和、平均值、最大值、最小值,标准差,方差、计数,%计算

        按建立的岗位,分为Group Level
& Report Level

        首要性质:功能 、 源
、重设于

        重设于:接纳集中的频率,是成套表格做三次集中、每页做一次集中、仍旧各样组做一次集中

 

图片 73.4.
连接(Data Link)


    数据连接通过主键和外部键定义了四个Query之间的主/从涉嫌

    1.等值连接 & 非等值连接

    2.SQL子句:Having & Start With &
Where

    3.条件:=、<、 >、 <=、
>、 >=、 <>、 Like、 Not Like

 

图片 83.5.
参数(System Paramters & User Paramters) 


    1.系列参数(System Parameter)

        系统默许参数,Oracle
Report允许为各类报表修改标准运行设置

        系统参数总共后11个

        Ex: 打印的分数、货币表示方法、小数点表示方法、打印机设置、名字

    2.用户参数(User Parameter)

        自定义参数,该对象用于保存在运行时用户可以转移的值

        在Select中代替列名字,条件,或者全体SQL

        (1).引用格局 – 连接引用

            i.用途:主要用以替换SQL语句或者PLSQL块中的一个值或表带式

            ii.调用符号: :

            iii.限制:
不可能在Select中利用替换列名,不能够在Form从句中利用连接引用

            iv.例子

                SELECT EMPNO, ENAME, SAL,
COMM
                  FROM EMP
                  ORDER BY
DECODE(:P_SORT, 1, EMPNO, 2, SAL);

        (2).引用情势 – 置换引用

            i.用途:用于替换Query
Select中其余一片段

            ii.调用符号: &

            iii.限制:
不可以在PLSQL块中运用

            iv.例子

                SELECT &P_ENAME NAME,
&P_EMPNO ENO
                  FROM &P_EMP;

      3.值列表

        用于用户输入参数时,自动弹出列表让用户选拔

        建立艺术:静态值 &
Select语句

 

图片 94.
Layout


 

图片 105.
参数表单(Parameter Form)


    当运行一个Report时,Oracle
Report会弹出一个窗口

 

图片 116 Oracle Report**中的PLSQL**


    用于具体的数据库事物处理

    可以是选用数据库操作语言(DML):Insert、Update和Delete操作

    不帮衬数据库定义语言(DDL): Oracle
Report提供了SRW.DO_SQL封装进程平添至Report中

    (1).PLSQL卓殊处理

        i. 用户定义的要命处理:自定义Exception,再Raise

        ii.标准包装的分外处理:No_Data_Found
/ Too_Many_Rows / Invalid_Number / Zero_Divide / Others 等

        iii.Oracle特有的极度类处理:Raise
SRW.DO_SQL_FAILURE / SRW.INTEGER_ERROR / MAXROW_INERR
/SRW.NULL_ARGUMENTS / SRW.PROGRAM_ABORT

    (2).
能够应用的9中方法PLSQL结构块

        PLSQL程序库(external
libraries)

        附件程序库(attached
libraries)

        程式单元(report program
units)

        报表触发器(report
triggers)

        组过滤器(group filters)

        公式(formula)

        验证触发器(validation
triggers)

        格式触发器(format
triggers)

        动作触发器(action
triggers)

 

图片 127. Oracle
Report触发器


    触发器可以分成三类:报表触发器、数据模型触发器、布局格式触发器

    1.表格触发器

        共有5个,分别在表格运行的两样阶段运行

        可以举办的操作:调整报表的格式,
执行开首化义务, 访问数据库

        (1).Before Parameter Form

            时间点:显示运行参数表此前

            用途:
存取并修改参数值、PLSQL全局变量

        (2). After Parameter Form

            时间点:突显运行参数表之后

            用途:检验和改动参数值,假诺运行出现问题,则赶回至参数表

        (3). Before Report

            时间点:运行报表在此以前

            用途:用于开头化参数,尤其是触发Query中的SQL条件

        (4). Between Pages

            时间点:除去第一页外,每一页以前都会被触发

            用途:用于页的格式化

        (5). After Report

            时间点:停止报表

            用途:将报表输出至对应目录下或者Email,删除临时表,清除初阶化处理

    2. 数据模型触发器

        (1). 公式列触发器

            公式列中的代码必须重回给公式,此公式列可以为连串,在Report不显示

        (2). 组过滤器

            触发时间点在寻找数据未来,突显数据在此以前,限制记录的出现与否,此意义也得以在Where子句中推行

            例子:只显示1000条数据

        (3). 验证触发器 

            在系统参数和用户自定义参数中编辑验证触发器,如若参数不科学,则为止报表运行

            验证触发器必须回到一个布尔值,如再次回到False,则光标停留在参数中

            例子:按单位打印员工列表时,对输入参数部门号进行验证

    3. 搭架子触发器

        允许用户在表格运行时根据早晚标准动态地修改布局对象的来得或隐蔽

        布局触发中不饿可以采纳DML语句

        例子:在报酬单报表,唯有高管可以观看薪酬明细

    4. 动作触发器

        在预览器中当选一个按钮时进行的PLSQL进程,可以动态调用另一表格或者实执行PLSQL程序

 

图片 138.
SRW包


    Oracle
Report提供的万分的封装包,包含可在库中行使的参数、进程和那些处理

    PLSQL块中得以应用SRW包的任何部分,但SRW只可以在Oracle
Report中调用,无法再其余工具(Forms Build)中采取

    1. 用途

        控制报表的运行

        在运作时输出信息

        伊始化域对象

        执行DDL语句
(建立/删除临时表)

        调用用户接口

        动态设置布局对象属性,(字体或者填充)        

    2. 常用的SRW包例子

 

图片 149.
矩阵报表


    建立举证报表必须满足八个尺码

    1. 单询问矩阵报表

    2. 多询问矩阵报表

    3. 觉有协议的矩阵报表

    4. 矩阵间断式报表    

 

图片 1510.
主次单元(Program Units)


 

图片 1611.
附加的程序库(Attached Libraries)


 

图片 1712.
PLSQL程序库(External Libraries)


 

Thanks and Regards

图片 18

相关文章