Discoverer开发整理

来源:互联网 发布:万年历编程 编辑:程序博客网 时间:2024/06/03 19:42
 我的其他帖子总链接:
http://www.itpub.net/442423.html

Discoverer比较简单,会SQL和用过Excel的人都会搞;有麻烦的是安装和配置,我用的是4.1.37

Admin
安装的时候需要在Default Home,其他Home不行;如果实在不想装在Default Home,可以修改注册表的两个地方

如果先装6i,后装Discover,需要备份Bin目录下的UIW60.DLL,装完之后把UIW60.DLL拷贝回来;否则Form Builder起不来,需要重新安装或从别人那里拷贝UIW60.DLL

登录standard EUL用的是数据库用户;登录application EUL用的是Oracle OA用户,登录之后要选择职责,这样也就选择了OU,这个很关键,大部分业务视图都是需要过滤OU的,如果不以application 身分登录,意味着OA的VIEW我们要重写,改成基于基表,然后通过其他办法过滤OU,这个工作量太大

要以Application用户登录,首先要保证在Admin里面建的EUL是基于Application的,不是就删掉重建;然后需要在Tools->Option->Connection设置为Connect to application EUL或者Connect to both standard and application EUL,前者默认就以application身份登录,后者在登录的时候会出现一个Check Box让我们选择;Gareway User Id和Foundation Name不用填,系统默认用applsyspub和apps

4.1.37要以application身份登录,需要安装Patch,其实就一个登录验证文件fndpu115.dll(URL= http://metalink.oracle.com/metal ... ǖ拇砦笕媚阄薹ɡ斫?/a>

在Admin里面,如果用登录的用户自己创建EUL,可能会报“不能给自己Grant或Revoke权限”,可以换成system用户登录,然后建给需要的用户即可

Business Area可以在Admin里面导入导出,这个对发布很重要,注意导的时候也要用Application登录方式;Workbook可以通过命令行导出,但我用下来速度很慢,只好一个个手工发布了

在Admin里面建好Business Area,一定记得在Tools->Security里面把Business Area授权给相应的职责,不然用Desktop登录之后什么都看不到,当然导Workbook也会报错

创建基于Application的EUL的时候,我习惯选择Public选项,默认的Scheme选择APPS,否则在创建自定义的Folder需要加apps前缀

Admin中的Folder可以Refresh,这样可以反映对应VIEW的修改,菜单在File下

注册Function的时候,Function Name需要大写,Packge Name也需要大写,不然它会报Invalid Function

Discover会把NLS语言信息写在dis文件中(可以用二进制编辑软件打开查看),在不同的语言环境间发布报表会出现乱码。如果在注册表中把nls_name设为zhs16gbk,然后再开发report,可以同时满足简体和繁体的要求,其他语种我没有测试过

建EUL需用数据库用户(建完之后,该数据库用户就是EUL的Owner),至于建BA、Folder、Workbook,可以用Owner来创建,也可以通过其他用户来创建,这个只要在Tools->Privilage里面授予适当权限即可。

通常的做法是创建EUL、BA、Folder、Workbook用同一个用户,然后授权给其他用户

Desktop
安装,同上;装Admin的时候可以包含Desktop

设置登录方式,同上

补丁,同上

Workbook需要授权其他用户才可以看到;命令在File菜单里面。但是只有拥有Share权限的用户/职责才可以,这个需要在Admin里面设置

有操作上的问题可以参考:Oracle Discoverer Online Manuals,包括Discoverer Installation & Upgrade Guide,Discoverer Administration Guide,Discoverer Plus User Guide,后者有中文版,两个小时可以看完

SELECT * FROM dba_sys_privs WHERE grantee = 'DISADMIN'
DISADMIN        ALTER ANY SNAPSHOT        NO
DISADMIN        ANALYZE ANY        NO
DISADMIN        CREATE ANY SNAPSHOT        NO
DISADMIN        CREATE PROCEDURE        NO
DISADMIN        CREATE TABLE        NO
DISADMIN        CREATE TYPE        NO
DISADMIN        CREATE VIEW        NO
DISADMIN        DROP ANY SNAPSHOT        NO
DISADMIN        ENQUEUE ANY QUEUE        NO
DISADMIN        EXECUTE ANY INDEXTYPE        NO
DISADMIN        EXECUTE ANY LIBRARY        NO
DISADMIN        EXECUTE ANY OPERATOR        NO
DISADMIN        EXECUTE ANY PROCEDURE        NO
DISADMIN        EXECUTE ANY TYPE        NO
DISADMIN        EXTENDS ANY TYPE        NO
DISADMIN        GLOBAL QUERY REWRITE        YES
DISADMIN        SELECT ANY SEQUENCE        NO
DISADMIN        SELECT ANY TABLE        NO
DISADMIN        UNLIMITED TABLESPACE        NO
原创粉丝点击