Oracle R12 多组织访问的控制 - MOAC(Multi-Org Access Control)
MOAC(Multi-Org Access Control)为多组织访问控制,是Oracle EBS R12的重要新功能,它可以实现在一个Responsibility下对多个Operation Unit(OU)进行操作。MOAC允许用户在不切换responsibility的情况下,在一个responsibility下处理多个OU组织的事务。
这里拿一个应用场景来说明:
某集团公司下边主要分为三个区域(北美,欧洲,亚太),亚太区你是一采购部经理,负责所有七个Operation Unit。 这种情况下,系统管理员可以创建一个security profile,这个security profile设置成可以访问这七个亚太组织,并把这个security profile赋予到你的responsibility下,这样你就能在同一个职责下访问这七个OU了,就不用不停地切换职责来访问不同OU了。
另外如果你要经常处理中国OU下的事务,那么你可以设置Profile:MO: Default Operating Unit到中国,那么业务默认的OU就是中国了。
MOAC相关的配置文件,有三个主要的配置文件
- MO:安全性配置文件----从单个职责提供访问权限到多个OU。如果MO:安全性配置文件设置过,那么MO:业务实体配置文件将被忽略。
- MO:默认业务实体----如果你设置了MO:安全性配置文件,你也可以使用MO:默认业务实体配置文件选项,设置一个业务实体OU作为默认OU。当你在多个OU处理事务,又经常在一个业务实体中处理事务时这个设置是有用的。
- MO:业务实体----MO:业务实体配置文件选项只能访问一个OU。
MOAC配置文件规则
1、如果配置文件选项“MO:安全性配置文件”没有设置,那么“MO:业务实体”值被作为默认OU,尽管“MO:默认业务实体”配置文件被设置为不同值。
2、如果配置文件选项“MO:安全性配置文件”设置值,并且仅提供权限访问一个OU,默认OU将返回这个值,尽管“MO:默认业务实体”配置文件被设置为不同值。
3、如果配置文件选项“MO:安全性配置文件”设置值,并且提供权限访问多个OU:如果“MO:默认业务实体”设置值,它将与“MO:安全性配置文件”中业务实体列表验证,如果这个业务实体包含在安全性配置文件中,那么它返回为默认值,否则没有默认的OU;如果“MO:默认业务实体”没有设置值,那么就没有默认OU。
单组织的案例
单组织即一个Responsibility只访问一个OU,设置情况大体如下,对于职责:Manufacturing and Distribution Manager,
MO: Operating Unit=Vision Operations
MO: Security Profile=空
这样我们在使用职责:Manufacturing and Distribution Manager的时候,就只能访问到Vision Operations的数据,比如创建的PO,这个PO只能处于OU:Vision Operations下,另外所选取的供货商也只能是Vision Operations下的。
多组织的案例
首先定义一个Security Profile,路径:HRMS Super User Responsibility > Security > Define Security Profile,Business Group:Vision Corporation,'Security Type'选择'Secure organizations by organization hierarchy and/or organization list',并且我们把在Organization Name列表中添加三个OU:Vision Operations,Vision Corporation ,Vision Services.
保存定义的Security Profile,然后在HR职责下,运行“Security List Maintenance” program,“Generate lists for”= One Named Security Profile ,Security Profile是刚刚定义的'PTIAN_SECURITY_PROFILE'。
Security List Maintenance的作用是让你定义的Security Profile生效,能够设置到Profile "MO: Security Profile"(The Security List Maintenance concurrent program must be run each time you add or change Security Profiles.)
System Admin职责下,Profile > System,设置MO: Security Profile为刚刚定义的'PTIAN_SECURITY_PROFILE'
再切回Manufacturing and Distribution Manager职责,打开PO,这个时候,你就可以不切换职责的情况,定义三个OU下的采购订单了。
一般来说:一个公司下面有多个子公司,那么公司就是LE(法人实体),子公司就是balancing entity(平衡段),也就是一个利润中心。在设置组织的地方定义法人实体(LE),指定帐簿,然后把子公司设置为业务实体(OU),指定法人,在定义会计科目表(COA)时给每个子公司设置一个平衡段值。法人本身可以为一个平衡段。
一般部门只是作为财务上一个成本中心来处理,子公司可以设置为一个业务实体(OU),每个子公司一个公司段,车间和仓库对应库存组织。
以下是提到的专业术语,现具体解释如下:
帐套 使用特定会计科目表(COA)、记帐本位币、和会计日历的财务报告实体。如果以上三个要素中有一个不同,就必须建立不同的帐套。Oracle总帐按帐套设置业务信息(日记帐分录和余额)的安全性控制。
组织 使用“定义组织”窗口定义的任何实体都称为“组织”,“组织”有不同的分类, 对组织进行分类决定了组织的类型和用途。组织的类型有:业务组(Business Group)、法人实体(Legal Entity)、业务实体(Operating Unit)、库存组织(Inventory Organization)、和人事组织 (HR Organization) 。一个组织可以指定为多个分类,如某个组织可能是法人组织,同时也是业务实体、库存组织和资产组织。
业务组 业务组代表结构的最高层如企业合并或公司的最高部门,当前的业务组除用于隔离人事信息之外没有其他目的。在任何模块只能看到核算单位所属业务组的雇员名单。多个法人实体可以指定到同一业务组。
法人实体 代表要提交财务和税务报表的法人公司。指定税务登记号和其他法人信息到此类型的组织,法人组织要指定其会计核算的帐套。
业务实体 使用Oracle应收、Oracle应付、Oracle销售、Oracle采购、Oracle现金管理和Oracle项目会计等模块的独立会计核算实体。任何独立核算的组织均是已指定法人实体的“业务实体”。在以上的模块中,业务信息按“业务实体”设置安全性,有些信息是共享的。
库存组织 使用库存组织跟踪库存业务和余额,和(或者)制造商分销商品。Oracle库存、Oracle物料单、Oracle工艺设计、Oracle在产品、Oracle主生产计划/MRP、Oracle能力、Oracle质量、Oracle成本管理、Oracle供应链计划和Oracle采购(接收功能)均 按库存组织设立安全性控制。库存组织可以指定到同一帐套下的任何业务实体,库存组织与帐套之间的关系仅限于财务核算目的,库存组织决定了销售和采购模块可 获得的物料(Items)。
人事组织 人事组织仅用于Oracle HR 和 Oracle项目会计模块,对财务和制造模块没有任何影响,使之能适应复杂的组织结构,简化业务经营的组织结构。
帐套的三要素是会计科目弹性域结构、币种和日历,如果多个法人这些结构相同,那多个法人共享一个帐套是可以的。业务组是Oracle多组织架构的一个组织形式,oracle系统默认有一个业务组:setup business group,一般来说只要应用这个默认的业务组就可以了。对于跨国公司来说,譬如IBM中国和IBM香港想共用一套系统,那么就需要设置两个业务组:IBM中国业务组和IBM香港业务组。我理解的法人就是需要独立向社会公布财务报告的实体,譬如上市公司,那么上市公司的子公司、甚至是分公司就可以设置为业务实体(OU)。