Professional Documents
Culture Documents
深入浅出Oracle EBS之Discoverer实例详
深入浅出Oracle EBS之Discoverer实例详
E-BUSINESS SUITE
ORACLE 核心应用技术
Discoverer
Author: 黄建华
MSN: huajhua@hotmail.com
Creation Date: October 16, 2005
Last Updated: April 12, 2008
Document Ref: <Document Reference Number>
Version: DRAFT 1A
Approvals:
<Approver 1>
<Approver 2>
Document Control
Change Record
31
Reviewers
Name Position
Distribution
Note To Holders:
If you receive an electronic copy of this document and print it out, please write your
name on the equivalent of the cover page, for document control purposes.
If you receive a hard copy of this document, please write your name on the front
cover, for document control purposes.
Contents
1. Oracle Discoverer
应用:任意
职责:任意
1.1. 总体说明
适用范围:对于那些非打印类型的报表或对打印格式要求不高的报表。
实施人员:用Discoverer来做报表效率很高,写完SQL报表也就出来了,可以关注核心
SQL,不操心布局。
最终用户:不但可以将报表直接导出成Excel(进一步分析、作为数据源送给其它系统
甚至反灌回ERP等等),而且还可以像在Excel里面一样自己调整报表(增加减少列、
添加条件、增加汇总列等等),还可以直接在Discoverer里面做Drill Up/Drill Down
分析。
缺陷:
1、 参数只能作用在最外层SQL,所以无法直接限制View中内层的SQL以提高性能
2、 参数没有ID/Value之分,所以只能用Value
1.2. Discoverer概念层次
从高到低是:EUL、BA、Folder、Item。
BA:Business Area,业务主题;一个EUL下可配置多个BA,比如PO主题、GL主题
等。
Folder:就是表或者视图,当然也可以是一段SQL,一个BA下可配置多个Folder。
Item:就是字段;一个Folder下可配置多个Item。
上面这4个在Discoverer Administration里面设置。
Discoverer Plus里面做的就是报表,不过不叫Report,而是借用Excel的名字:
Workbook,还分Sheet。
1.3. 必要设置
其实没有必要设置。
不用Web Discoverer的话,客户端安装完毕,配好tnsnames就可以用了。不过我们是
基于EBS的,所以有些地方略有不同。
程序安装
先下载:
http://www.oracle.com/technology/software/products/discoverer/index.html
Discoverer(4.1.37)目前还不支持Multi-Home安装,所以安装的时候需要在Default
Home,其他Home不行。安装时选英文,其他语言据说有问题。
如果先装6i,后装Discoverer,需要备份bin目录下的UIW60.DLL,装完之后把
UIW60.DLL拷贝回来;否则Form Builder起不来,需要重新安装或从别人那里拷贝
UIW60.DLL。
管理员工具和客户端
实施人员两个都装,最终用户仅装Discoverer Plus;比较消耗客户端资源。
配置tnsnames
按照往常步骤配置tnsnames和hosts。
如果是功能顾问,再看一下补充内容:通常从别人那里把tnsnames拷贝过来就可以,
不过有时候不行;道理很简单,tnsnames.ora和sqlnet.ora两个加起来才构成SQL*Net
协议的基本配置文件,而不同公司的sqlnet.ora可能会不一样;所以把这两个文件全部
拷贝过来就99.99%不会有问题了。
打个补丁 Note:251932.1
4.1.37前要以application身份登录,需要安装Patch,其实就一个登录验证文件
fndpu115.dll,拷贝到安装目录的DISCVR4目录下;否则报Failed to connect to
Database - ORA-01017: invalid username/password:logon denied。
N: Discoverer Administration
先Cancel。
设置登录方式
N: Discoverer Administration/Tools/Option
忽略这个警告。出来:
再来登录
N: Discoverer Administration/File/Connect
点击Connect之后出来:
就是说system这个用户目前自己没有EUL,也没有人授权EUL给它,所以系统提示没
法使用Discoverer,除非创建新的EUL。
选择“是”。
开始创建EUL
N:
选择“Create an EUL”。
创建EUL 01
N:
这个画面最关键。
然后是输入新用户和密码,假定都是disadmin。
密码全数字不行,必须字母开头。
Next。
创建EUL 02
N:
选择包含EBS的用户,当然是APPS了。
这个其实可理解为默认的Scheme,这样在创建自定义的Folder时可不需要给表或者视
图加apps前缀。
输入密码,Next。
创建EUL 03
N:
这个地方选择新建用户的表空间。11.5.10版之后,Oracle不再为每个应用设立独立的
表空间了,数据统一放在APPS_TS_TX_DATA下。
11.5.10之前没有打过表空间管理补丁,则没有上述APPS_TS_TX_DATA,那么选择
DISADMIN对应的表空间即可;因为上述例子是新建的数据库用户,实际上需要DBA
先创建好新的表空间了。
Finish,开始创建用户和EUL。
创建EUL 04
N:
创建完有兴趣的话可以去看看Disadmin这个用户,它下面有很多EUL4开头的对象。
确定之后出来:
意思是要不要安装一个学习用的演示数据。我们选择“否”。出来:
前面是用system登录,这里问要不要换成EUL的Owner也就是刚才新建的disadmin登
录。选择“是”系统自动帮我们登录。注意这个disadmin是数据库用户!
转折点 1
N:
我们不用disadmin这个用户创建BA,我们仅用它来装EUL就行了。这里选择
“Cancel”。
第一级授权:EUL授权
N: Discoverer Administration/Tools/Privileges
我们规划一个EBS用户,以后专门用来维护Discoverer,也可以用它来创建Discoverer
报表。假定是Huajhua,我们授予它全部权限,就是Privilege里面全部打勾。注意这
个Huajhua是Application用户。
N: Discoverer Administration/File/Connect
用上面的Huajhua登录,并且选择用Application方式:
如果前面的补丁没打,则出现如下错误:
没错的话,出来职责选择画面:
注:4.1.37有个很少见的问题:界面选择的职责和实际的职责不符,实际职责要看
“OK”上面的提示。如下图,实际是“101-安徽佳通-MFG-生产计划员(炼胶)”:
而在Discoverer 10g没有这个问题。
N: Discoverer Administration/File/New
正常登录后显示:
Next
创建BA 02
N:
选择数据源DBLink和用户
Discoverer Oracle Discoverer 15
File Ref: 深入浅出Oracle EBS之Discoverer实例详解.doc (v. DRAFT 1A )
Company Confidential - For internal use only
Oracle ERP最佳技术实践 Doc Ref: <Document Reference Number>
April 12, 2008
如图,选择APPS
Next
创建BA 03
N:
选择表
我们选择上面建的视图:scf_po_document_types_vv
Next
N:
Next
创建BA 05
N:
系统开始创建BA
完成之后,可以查看创建的BA
开始
N: Discoverer Plus
设置登录方式
N: Discoverer Plus/Tools/Option
再来登录
N: Discoverer Plus/File/Connect
没错的话,出来职责选择画面:
Discoverer Oracle Discoverer 19
File Ref: 深入浅出Oracle EBS之Discoverer实例详解.doc (v. DRAFT 1A )
Company Confidential - For internal use only
Oracle ERP最佳技术实践 Doc Ref: <Document Reference Number>
April 12, 2008
创建Workbook 01
N: Discoverer Plus/File/New
Discoverer支持两种类型的报表:Table和Crosstab以及它们的简单扩展。我们选择
Table,Next。
N:
简单起见,我们直接Finish。
创建Workbook 03
N:
下面就是结果:
至此一个简单的Discoverer报表就出来了。
创建Workbook 04
N: Discoverer Plus/File/Save
Discoverer Oracle Discoverer 21
File Ref: 深入浅出Oracle EBS之Discoverer实例详解.doc (v. DRAFT 1A )
Company Confidential - For internal use only
Oracle ERP最佳技术实践 Doc Ref: <Document Reference Number>
April 12, 2008
Workbook可以保存成本地的一个文件,也可以保存到数据库。
通常我们选择保存到数据库,这样通过授权之后其他用户就可以打开该报表。
保存到本地主要是用来备份和发布。
我们先选择My Computer,然后点Save
之后我们在通过菜单Save as到Database:
为维护方便,我们保持名字和本地的文件名一样,仅仅去掉DIS后缀。
接下来就是细节的功能调整了,除了美化之外就是看用户需求了!
1.6. 其他设置和功能浏览
日常开发
创建EUL 基本都是做一次,即一个系统通常建一个EUL,像系统中的
Application一样,一个就够了
创建BA 通常也是做一次,即一个EUL下建一个BA;BA的目的是用来划分功能
主题,可以创建多个
Folder 根据需要做,通常一个报表对应一个Folder
Workbook 根据需要做
所以Discoverer配置好之后的开发流程:
需要调研,创建数据库V,创建Folder,创建Workbook,Share Workbook
新增一个Folder/视图
N: Admin/右键BA
可以建立基于View的Folder,也可以直接在Folder中输入SQL代码。
新增一个字段
N: Admin/File/Refresh
比如客户要求在报表中新增一个字段,而这个字段我们在创建View的时候并没有包
含。
Plus端重新Connect就可以看到新增的字段了。
Sheet菜单
N: Plus/Sheet/…
和Excel一样,一个Workbook可以有多个Sheet,每个Sheet都可以看作是一个报表,
我们可以把相关性比较强、类似或者需要做对比的报表放在同一个Workbook里面。通
过Sheet菜单,可以New一个Sheet,也可以重新运行向导Edit当前的Sheet,也可以
Copy一个Sheet。
通过Edit Title菜单,我们可以给生硬的Discoverer报表加一个合适的表头,可以设置
格式,还可以插入日期、页数等。
默认情况下,报表仅显示100行,和PL/SQL Developer类似,可以选择查看下一批或
者全部记录。前者通过报表最后一行的按钮来实现,后者就是通过这里的Retrieve All
Rows。另外,Count All Rows就是算出记录数,和Forms上的F12类似。
Page Item
N: Plus/View/Page Items
Page Items相当于Excel中的筛选,当然这里的功能要弱一些。如图,我们把
Document Type Code这一列拉到Pate Items区域,就可以过滤了,如选择PO那么下面
仅显示PO类型的记录。
Format
N: Plus/Format/…
可以对Tile、Heading、Data分别设置显示格式如字体字号、对齐、小数位等,全部可
以通过菜单Format完成。也可以在列上通过右键来设置。
这里还可以设置Sheet的背景图片。
特别是可以设置Exception显示格式,如我们假定类型为PO时用红色显示:
计算列
N: Plus/Tools/Calculations
和Reports中的计算列类似,增加一列,值等于某个公式算出来,比如=Item1 +
Item2。
排序和分组
N: Plus/Tools/Sort
可以对结果进行排序,可按任何列任意顺序排。在排序的同时还可以指定是否分组、
每个分组之间的间隔是多少、用多粗的线条隔开。
汇总列
N: Plus/Tools/Totals
百分比列
N: Plus/Tools/Percentages
可以对某一列进行求百分比,基数可以是某一分组,也可以是全部记录。
条件
N: Plus/Tools/Parameter和
N: Plus/Tools/Conditions
都可以为报表的某个字段建立参数。
生成Excel等文件
N: Plus/File/Export
Workbook可以导出成很多格式的文件:
生成图表
N: Plus/Graph/New Graph
选一个,Next后有更多的选项。看怎么弄怎么好看了,最终样例如下:
Discoverer是个BIS前端展现工具,所以支持BIS基本的上钻下钻分析方法。上钻下钻分
析的前提是建立数据的层次结构(Hierarchy),比如最容易理解的就是日期:年包含
季度,季度包含月份,月份包含日。
Discoverer中的Hierarchy在Admin中维护,系统已经有默认的日期层次模型,所以对
于日期字段,创建Folder的时候会让我们选择是否使用默认的层次模型,通常就是Yes
了,所以观察我们的Folder,每个日期字段都会比我们的视图多4字段,如XXXX
Year、XXXXX Quarter、XXXX Month、XXXX Day。
现在可以看到,字段的Heading上有个箭头,表示可以“钻” 了。右键选择Drill:
可以看到,可以选择上钻到Year,或者下钻到月等,我们选择Year:
就会看到年的数据,注意这里的01-Jan是没有意义的。
配合Page Item,还可以有更丰富的分析。
Hierarchies
N: Admin
可以使用默认的日期层次结构:Year/Quarter/Month/Day
Crosstab
N:
Discoverer支持矩阵报表。
其他
Folder间的连接
基于SQL的Folder
查看Sheet的最终SQL和执行Plan
Schedule一个Discoverer报表
删除EUL/BA/Folder
When this deliverable is complete, any open issues should be transferred to the
project- or process-level Risk and Issue Log (PJM.CR.040) and managed using a
project level Risk and Issue Form (PJM.CR.040). In addition, the open items should
remain in the open issues section of this deliverable, but flagged in the resolution
column as being transferred.
Open Issues
Closed Issues