apps Schame 简介(引)

简介: 原文转自:http://blog.csdn.net/pan_tian/article/details/7702870 Why call it Apps and not Oracle ERP ? 以前就很想知道为什么人们常常把Oracle E-Business Suite称作"Apps"?就因为Apps是Oracle Applications的缩写么?也许是。

原文转自:http://blog.csdn.net/pan_tian/article/details/7702870

Why call it Apps and not Oracle ERP ?

以前就很想知道为什么人们常常把Oracle E-Business Suite称作"Apps"?就因为Apps是Oracle Applications的缩写么?也许是。其实这个问题给了我一个很好地理由来解释APPS schema的进化史。


九年前我开始从事Oracle Financials的工作,那时每一个模块都有它自己database schema(当然现在还有,比如po,inv,wip,ar...),对于一个做采购的用户(EBS 10.6版本前),想要查看数据,就要使用po的Schema来查看。同样,如果一个AR模块的report或者form想要访问PO_HEADERS_ALL,他们就需要加上前缀'PO',PO.PO_HEADERS_ALL。但是EBS里有很多的数据库Schema(一般情况下一个模块一个Schema),每一个表都有它所对应的schema,这样我们写SQL或者在写代码的时候,经常要加一个Schema前缀到表的前面,这就比较讨厌。


所以后来,Oracle引入了一个新的schema--"APPS",其他schema下的数据,在apps下都能看到,这样我们就不用每次都要加前缀才能查看其他模块的数据了,用户可以轻松的访问任何模块的表数据。同样,如果想要增加一个新的表到系统中,我们需要做以下几件事情:

Step 1. Connect to po/po@XX_DEVDB
Create table PO_HEADERS_ALL ( ...all columns here )

Step2. Grant all on po_headers_all to apps ;

Step 3. connect to apps/apps@XX_DEVDB
Create or replace synonym PO_HEADERS_ALL for PO.PO_HEADERS_ALL


通过以上的几步,你就会发现,APPS schema不用加前缀(po.po_headers_all)就可以访问PO_HEADERS_ALL了。

现在在Oracle ERP里,我们已经有超过100个schema了,比如:po, ar, ap, gl...,Form,Report,workflow里我们只需要连接到apps schema下即可所有模块的数据,ALL ROADS LEAD TO ROME,这里ALL Schema Lead to APPS.因此假设你想关联ap_invoices_all table( AP schema) 和PO_HEADERS_ALL table( AP schema),你只需要简单的连上APPS,然后写:

Selelct 'x’ from po_headers_all p, ap_invoices_all a where a.po_Id = p.po_Id
在10.6版本前你不得不这么写:
Selelct 'x’ from PO.po_headers_all p, AP.ap_invoices_all a where a.po_Id = p.po_Id

Moral of the Story is:

所有的PL/SQL Package要在APPS Schema下创建

所有的View要在APPS Schema下创建

对于每一个独立Schema下的表数据,在Apps schema下要同样有一个synonym存在

不是在Apps Schema下创建表

对于客户化来说,至少应该有一个custom schema来用于客户化表的创建


原文:http://getappstraining.blogspot.com/2006/10/why-call-it-apps-and-not-oracle-erp.html

转载请注明出处:http://blog.csdn.net/pan_tian/article/details/7702870

======EOF======

相关文章
|
JavaScript Linux Shell
一款国内SSH终端工具
Windows系统中,连接linux ssh的管理终端常用好用的软件无疑是Xshell/SecureCRT/PUTTY三款终端软件。但这三款终端无法实现跨平台使用,以及部分软件需要昂贵的授权费用才能使用。现作者给大家推荐一款基于Electron + Vue的跨平台(windows/linux/macos)终端软件NxShell
一款国内SSH终端工具
|
存储 传感器 编解码
turtlebot3 在gazebo仿真下 通过 gmapping slam 建立二维平面地图——全过程
turtlebot3 在gazebo仿真下 通过 gmapping slam 建立二维平面地图——全过程
turtlebot3 在gazebo仿真下 通过 gmapping slam 建立二维平面地图——全过程
|
云安全 存储 安全
一文看全数据跨境合规
于9月1日正式实施的《数据安全法》再次加码数据出境安全。 基于8月27日《数据安全法》解读与阿里云三大合规方案线上直播活动,阿里云解决方案架构师锅涛分享的《数据跨境流转安全》主题内容,整理出数据出境安全的九问九答,为企业数据跨境流转送上安全锦囊。
1390 0
一文看全数据跨境合规
|
云安全 运维 Kubernetes
东风日产数据服务有限公司借力服务网格,实现7层流量精细化管控
东风日产数据服务有限公司引入阿里云服务网格ASM,构建了基于流量管理的「无限生肖」系统,满足了自动按需提供环境的诉求。
4059 81
东风日产数据服务有限公司借力服务网格,实现7层流量精细化管控
|
关系型数据库 PostgreSQL
PostgreSQL update returning NEW|OLD column value 在对账|购票|防纂改|原子操作中的妙用
标签 PostgreSQL , update , returning , NEW , OLD 背景 在数据库中更新记录时,有时为了对账,或者防纂改的目的,需要在更新后立即返回更新前和更新后的值。 例如以set bit为例,假设使用BIT串作为火车的每个位置,每个BIT代表一张票,0表示未售卖,1表示已售卖。 购票时,使用set bit=1的操作,为了确保不出现重复售票的问题,必须确保
2487 0
|
弹性计算 安全 网络安全
VPN网关构建混合云|学习笔记
快速学习VPN网关构建混合云
VPN网关构建混合云|学习笔记
|
弹性计算 Kubernetes 关系型数据库
基于ECI的ACK集群高弹性架构最佳实践
用户原有的业务部署在阿里云ACK集群上,随着业务波动如何达到成本
893 0
基于ECI的ACK集群高弹性架构最佳实践
|
存储 Prometheus 监控
面试官:Zabbix 和 Prometheus 要怎么选?
新公司要上监控,面试提到了 Prometheus 是公司需要的监控解决方案,我当然是选择跟风了。 之前主要做的是 Zabbix,既然公司需要 Prometheus,那没办法,只能好好对比一番,了解下,毕竟技多不压身。 但稍稍深入一点,我就体会到了 Prometheus 的优点,总结一下这两种监控方式。
面试官:Zabbix 和 Prometheus 要怎么选?
|
存储 计算机视觉 Python
opencv色彩空间类型转换(python)
opencv色彩空间类型转换(python)
opencv色彩空间类型转换(python)