这是多组织访问的第二篇文章,翻译自Anil
Passi
Multi
Org R12

我们都知道,在Oracle
Release 12中多组织模型(Multi Org)会被改变, 它被叫作多组织访问控制(Multi Org Access Control, MOAC). 我会告诉你做出这样改变的原因以及这将会如何的影响到你. 我也会告诉你如何一点也不影响到你现有的设置[如果你不想使用
MOAC- 多组织访问控制的话]

如果你对EBS R12中的多组织不宵熟悉的话,你可以先看EBS
Multi Org 基础
. 那会向你解释在R12中当前的多组织模型是如何工作的.



请参考链接了解R12中的多组织访问控制 : Whitepaper on User Group Site 



业务上这样改变的理由

-----------------------------------------

四年前,我被要求设计一个具有以下需求的应付票据(Payables Invoice)扫描程序:

1. 我的客户有100个以上的法人实体(legal entities)和组织单元(organization units).

2. 他们想在一个中心的地方收取所有的纸质应付票据. 更有效的, 对所有的法人实体/组织单元,所收到的票据都只有一个地址.

3. 所有的票据都在这个中心地方扫描.

4. 扫描的图像通过一个队列被班加罗尔的团队输入到系统中





这样,就出现了些问题:

--------------------------

扫描的票据首先应该根据Operating Uint来排序. 

为什么呢? 因为, 对于每一个OU,都有一个不同的 "Payables Clerk" 的职责.  这个可怜的录入员要根据录入票据所属的OU来选择职责.
而且,你也不能强制的要求供应商以XML的形式来过账到你的系统中,所以录入员必须要保证每一张纸制的票据都被录入到正确的组织机构/OU中.



Oracle EBS Release 12 是如何来拯救他的呢?

在 R12中, 那个录入员不再是一个"可怜的录入员", 因为他不必再根据不同的法人实体来改变职责, 这就是Oracle EBS R12设计的强大之处,它迎合了当今共享服务解决方案的需求.



这是否就意味着应付录入职责能访问所有的OU呢?

如果你的业务有这样的需求,那么在R12中就能够做到这样,你可以把一个组织机构层次中的节点或者是Operating Unit列表赋予你的职责, 或者说,你现在可以给一个职责赋予多个Operating Unit,这可以通过组织机构层次或者组织机构列表.



这听起来非常像 HR Security Profiles, 我们可以看看链接 Oracle
HRMS Security Profiles
 ?

是的,实际上R12中的Multi-org模型就是用的是Security Profiles. 如果你看了上面那个链接,你就会对HRMS中的Security Profile有一个更清晰的认识.





这就意味着,一个security profile会作为一个profile选项附加到职责中?

是的.



如果我不想实现这个增强的功能呢? 这会破坏我现有的多组织(multi org)设置吗?

Oracle在升级时有她的高明之处. 除非你启用了Security Profile的特性,否则你的Multi-org将会和R12以前的版本一样工作.



R12中的多组织访问控制依然会填充org_Id列吗?

当然,每一条数据依然和一个单独的org绑定.



我们能重用为HRMS定义的security profiles吗?

我建议你保持Multi-org Security Profile和HRMS Security Profile二者的独立性, HR Security Profiles 也迎合当今的潮流和不同的HR相关属性来保持一定的地位,但我们知道这一次Multi-Org将会胜出.



现在我们回去应付录入中,当录入一张票据时,他们是如何给每个票据指定一个正确的OU呢?

这是通过在窗口中输入OU项的值来实现的,在R12之前的版本中这个项是隐藏的,但是现在在所有用到多组织安全配置的窗体中这个值都是可输入的.



在R12中,用户会输入一个附加项吗?

不完全是,如果你想,你可以根据职责来指定一个默认的OU, 这也是在Profile中实现的.

这个Progile的名字是 [我目前还不知道], 但是它确实存在, 所以我才说了.



所以, 我们会有两个新的profile选项?

没错,一个是用于附加的Surity Profile,另一个用于默认的ORG.



运行dbms_client_info.set_client_info(101)后会发生什么?

这将成为一个冗余的功能,在R12中我们使用包mo_global,这个包在11.5.10中已经存在,而且如果你打开它,你会发现它用的是行级别的安全控制. 从技术上来说我认为 dbms_client_info.set_client_info 还会继续工作下去,但是如果你启用了MultiOrg Security特性后,这将产生无法估计的结果.



这将会如何影响我的客制化?

声明 1 :- 如果你对client-info进行硬编码,那很显然的将不能继续工作

声明 2 :- 同样的, 如果你过去用fnd_profile.org_Id, 那将也不能工作.

如果你决定不在R12中启用多组织访问控制(Multi Org Access Control)的话,那么以上两个声明则不成立.

MO_GLOBAL - EBS R12 中 Multi Org 设计的深入研究 (2)的更多相关文章

  1. MO_GLOBAL - EBS R12 中 Multi Org 设计的深入研究 (3)

    这是多组织访问的第三篇文章,翻译自Anil Passi的MO_GLOBAL-Dive into R12 Multi Org Design 我希望你已经读了文章 EBS R12 中的 Multi Org ...

  2. MO_GLOBAL - EBS R12 中 Multi Org 设计的深入研究(1)

    在改EBS的BUG过程中,会在网上查找很多资料,这次是碰到一个多组织(Multi Org)的问题,发现Anil Passi写的几篇文章不错,慢慢的会陆续翻译过来,这次翻译的是http://getapp ...

  3. 更改EBS R12中forms的模式Servlet/Socket

    EBS R12中forms的模式有:Servlet mode 和 Forms Socket mode 当我们完成Oracle EBS R12套件的快速安装后,forms的默认配置是Servlet mo ...

  4. EBS R12中FND凭证打印警告:OPP响应超时

    接近年关,最近年结忙的飞起,此为背景,今天运维那边反应日记账凭证打印报错,看了下后台请求发现请求有警告. 查看日志发现报了“并发:OPP响应超时”的警告,这个地方响应超时可能是配置文件中“并发:OPP ...

  5. EBS R12中重新enable失效用户之后,丢失职责

    以下请求跑完不能立即生效,需要等上一段时间! oracle support说这并不是一个bug,是一个问题,呵呵,bug和问题,都是你的错,oracle! 工 作中将某个用户失效之后,有可能又需要重新 ...

  6. R12中注册客户化应用为多组织应用

    Oralce EBS R12中引入了MOAC的控制,所有多OU的表对象都添加了数据库VPD的控制策略,需要访问这些对象中的数据,首先需要进行多组织环境的初始化,但是如果客户化的应用中也需要具备多OU的 ...

  7. Oracle EBS R12 XML数据表格的Excel脚本报表

    http://www.cnblogs.com/quanweiru/archive/2012/07/28/2612680.html 一.概述 在EBS系统中,报表是一个非常重要的客户化开发内容,也是系统 ...

  8. Oracle EBS R12多组织(多OU)访问架构

    Oracle EBS R12多组织访问架构 多组织架构实现了经营单位(OU)的数据安全性,在底层数据表中有一列ORG_ID来记录数据所属的经营单一,所有多OU的基表都是以"_ALL" ...

  9. Oracle Ebs R12 SLA与GL关系变化

    http://www.cnblogs.com/bruce_zhao/p/3809886.html Oracle Ebs R12 SLA与GL关系变化 SLA概念:SLA(Subledger Accou ...

随机推荐

  1. Java自定义注解的实现

    Java自定义注解的实现,总共三步(eg.@RandomlyThrowsException): 1.首先编写一个自定义注解@RandomlyThrowsException package com.gi ...

  2. js中一个对象当做参数传递时候?

    高程中讲到:'ECMAScript 中所有函数的参数都是按值传递'. 这就像把值从一个变量复制到另一个变量一样. 那引用类型的值也是像基本类型一样? 直接看栗子一: var person = { na ...

  3. vue mint-ui 实现省市区街道4级联动(仿淘宝京东收货地址4级联动)

    demo及源码地址 https://github.com/artiely/citypicker 先去下载一个“省份.城市.区县.乡镇” 四级联动数据,然后 引入 import { Picker } f ...

  4. rw 模板设置

    在编译的时候只有写出rw之后使用alt+/就可以将模板代码全部展现出来. rw读写模板代码: InputStream in = null; OutputStream out = null; try { ...

  5. 转载c++常忘的知识点

    C++的一些知识点比较零碎,下面清单的形式做一些记录与归纳,以供参考. 1.赋值操作符重载(深复制): (1)由于目标对象可能引用了以前的一些数据,所以应该先delete这些数据: (2)注意到对象可 ...

  6. ACM Bee

    In Africa there is a very special species of bee. Every year, the female bees of such species give b ...

  7. 使用Spring实现定时任务

    一.分类 从实现的技术上来分类,目前主要有三种技术(或者说有三种产品): Java自带的java.util.Timer类,这个类允许你调度一个java.util.TimerTask任务.使用这种方式可 ...

  8. Gradle 1.12用户指南翻译——第五十章. 依赖管理

    本文由CSDN博客貌似掉线翻译,其他章节的翻译请参见:http://blog.csdn.net/column/details/gradle-translation.html翻译项目请关注Github上 ...

  9. Dynamics CRM2016 The value of field on record of type entity is outside the valid range问题的解决方法

    今天在用web api创建一条记录时报了个标题里的错,咋看这错说的很明白了,属性字段的值超范围了,但咱们看下具体的问题 请求url是这样的http://xx/api/data/v8.0/new_rec ...

  10. Android源码解析——Toast

    简介 Toast是一种向用户快速展示少量信息的视图.当它显示时,它会浮在整个应用层的上面,并且不会获取到焦点.它的设计思想是能够向用户展示些信息,但又能尽量不显得唐突.本篇我们来研读一下Toast的源 ...