ORACLE ERP consolidation流程(一)
1. 用户做 consolidation可以选择两种consolidation的方法,by transaction或者by balance.
取决于用户构建consolidation mapping时候method的选择.
By transaction指的是以journal batch为单位, 将相应batch里面的journal line按照mapping原则进行consolidation. 用户在by transaction run consolidation的时候, 可以选择需要run consolidation的journal batch, 有四种选择, unconsolidated, consolidated, all, 或者用户直接选中相应的journal batch.
而by balance指的是以account为单位, 将源会计期间以内所有的符合account条件的line按照mapping原则进行consolidation. 用户在by balance run consolidation的时候, 可以选择需要的account, 可以用include all选所有的account, 也可以以range方式选入多个范围的account, 或者key入多个account(from to相等的range).
2. 无论用户选择哪种 consolidation方法,系统会首先插入一条记录进入GL_CONSOLIDATION_HISTORY. 这个table里面存有consolidation_id, consolidation_run_id, 以及一些consolidation的参数.
这个表中有一个status的栏位, 会详细记录这个consolidation的状态:
STATUS CONSOLIDATION_STATUS GL_LOOKUPS
DD Journal Deleted
ID Imported
IF Import Failed
IG Importing
ND No Data Transferred
NI No Data Imported
NT Not Transferred
PD Posted
PF Posting Failed
PG Posting
PS Selected for Posting
RV Reversed
TD Transferred
TF Transfer Failed
TG Transferring
TS Selected for Transfer
Request_id栏位存储的是这次consolidation动作的最后一个request_id, 有可能是consolidation transfer的, 也有可能是journal import或者posting的.
Group_id指的是数据进入gl_interface的group_id.
Je_batch_id存储的是目标sob下产生的journal的batch_id, 只有journal import成功以后这个栏位才会有值.
Run_posting_flag存的是这次consolidation动作有没有做post的标志.
3. 插入记录进 GL_CONSOLIDATION_HISTORY以后, 系统会根据用户conlolidation方法的选择,而进行不同的操作.
如果method是by transaction, 那么会为每一条需要consolidation的journal batch插入一条记录进入gl_cons_batches, 这张表的结构比较简单,主要存有consolidation_id, consolidation_run_id, je_batch_id.
如果用户选择的是by balance, 并且用户在选择account的时候,选择的不是include all account, 而是手动key入了range的account, 那么系统会为每一条range插入一条记录进入gl_consolidation_accounts, 记录每一条range的from to.
4. 用户一旦提交 consolidation的request, 系统就会按照所选consolidation的mapping原则,开始过帐过程.
如果用户的method是by transaction, 系统会取出所有目标batch中的line,按照mapping原则,产生目标SOB的journal进入gl_interface, 每一条源SOB的journal line产生一条目标SOB的记录进入gl_interface. 并且,这些gl_interface记录的group_id,都是一样的,表示最后会在目标SOB产生一条journal, 当所有记录产生完毕以后, 这个group_id会被回写到GL_CONSOLIDATION_HISTORY的group_id栏位.
Gl_interface的每条记录都会存有源SOB的sob_id, je_batch_id, je_header_id, je_line_num等栏位, 用以drilldown所用.
如果用户选的method是by balance, 系统会选出所有源SOB会计期间内code_combination_id符合account_range条件的journal_line, 产生目标SOB的jounal进入gl_interface. 注意,此时,若用户counsolidation map上面的的create summary journal勾选的话, 对于目标SOB的每个account只会产生一条记录, 也就是说, 如果account mapping时候存在多个源SOB ACCOUNT mapping到一个目标SOB account, 那么会将源SOB下所有这些account的line sum起来,产生一条目标SOB的journal line.
如果create summary journal没有勾选的话, 对于源SOB的每个account会产生一条目标SOB的记录. 也就是说, 系统会sum所有该account的journal line产生一条目标SOB的journal.
5. 如果用户的 consolidaiton mapping里面run journal import有勾选的话, consolidation transfer跑完以后, 会跑journal import的动作,真正产生目标SOB的journal.
注意,如果run journal import有勾选,consolidation transfer的request产生的数据进入的不是GL_INTERFACE, 而是gl_cons_interface_(group_id)的table,request会自动根据group_id创建table,并将consolidation产生的数据insert入这个table。如果没有勾选的话,consolidation结果会直接进入gl_interface。
Consolidation完毕之后,系统首先会插一笔记录进入gl_interface_control, 标志出这次run journal import的相关信息, 然后提交journal import的request, 这个request会到gl_interface_control中取记录,并取interface数据并产生journal.
ORACLE ERP consolidation流程(一)的更多相关文章
- Oracle ERP系统借贷关系表
Oracle ERP系统借贷关系表 成本核算会计信息归纳 按照事务处理的来源类型归纳. 一. 采购接收入库和退货: 1.接收: 借:材料采购 (订单价格) 贷:应计负债 (订单价格) 2.入库: ...
- Oracle Erp常用网站
2014-01-01 Created By BaoXinjian
- oracle erp 表结构
BOM模块常用表结构 表名: bom.bom_bill_of_materials 说明: BOM清单父项目 BILL_SEQUENCE_ID NUMBER 清单序号(关键字)ASSEMBLY_ITEM ...
- 破解Oracle ERP 密码
1. 写作目的 1 2. 利用Toad或其它pl/sql工具在Oracle ERP Database中建立Package,源码如下 1 (1). ...
- ORACLE ERP各模块会计分录
ORACLE ERP各模块会计分录 第一章 采购模块 一.资产采购(科目来源:库存组织) 1.物料接收 借 材料采购 接收数量*采购单价 贷 应计暂估 接收数量*采购单价 2 ...
- 破解Oracle ERP密码
前提:你有apps的数据库账户,想知道某个用户的密码,因为fnd_user中的密码为加密的,所以无法看懂,你可以尝试用下边的方式来查看用户密码. SQL> desc fnd_user; Name ...
- ORACLE ERP 的前世今生
一个伟大的公司必有一个伟大的产品.如果说数据库是ORACLE在上世纪最后二十年赖以起家并奠定江湖地位的旗舰产品,那么,企业应用产品(或曰ERP)则毫无疑问是ORACLE在本世纪初的这近十年,征战疆场. ...
- Oracle ERP Profile
1.配置系统 . 进入路径:SYSADMIN 登录,系统管理员--Profile--系统: 配置分类 配置文件 文件选项 内容 配置系统 ICX% ICX:日期显示样式 选择修改日期输 入格式(199 ...
- 浅析ORACLE ERP系统维护方法
笔者曾从事ORACLE ERP系统客户服务工作多年,在ERP系统维护工作中,深深体会到:ERP的系统维护工作看似平常,实则大有学问. ORACLE ERP系统是一个大型集成的软件系统,是一个企业全面共 ...
随机推荐
- 08. pt-find
vim pt-find.cnf host=192.168.100.101port=3306user=adminpassword=admin pt-find --config pt-find.cnf d ...
- Centos查公网IP地址
[root@syy ~]# curl icanhazip.com 115.29.208.111
- WIN8配置IIS8.0+PHP+Mysql+Zend
第一步 开启WIN8的IIS 8.0 控制面板 → 程序与功能 → 启用或关闭WINDOWS功能 按照上面勾选 确定即可 成功安装完毕 打开 http://localhost/ 或者 http:/ ...
- Java中终止线程的三种方法
终止线程一般建议采用的方法是让线程自行结束,进入Dead(死亡)状态,就是执行完run()方法.即如果想要停止一个线程的执行,就要提供某种方式让线程能够自动结束run()方法的执行.比如设置一个标志来 ...
- 状态机学习(三)解析JSON1
来自 从零开始的 JSON 库教程 从零开始教授如何写一个符合标准的 C 语言 JSON 库 作者 Milo Yip https://zhuanlan.zhihu.com/json-tutorial ...
- 利用PHP脚本辅助MySQL数据库管理3-删除重复表索引
<?php $dbi = new DbMysql; $dbi->dbh = 'mysql://root:mysql@127.0.0.1/coffeetest'; $map = array( ...
- VSFTPD虚拟用户配置
转载:http://www.cnblogs.com/allenjin/archive/2011/12/03/2274542.html 以下操作验证OK!!!! VSFTPD虚拟用户配置 VSFTP = ...
- Java第12章笔记
如何定义 Java 中的方法 所谓方法,就是用来解决一类问题的代码的有序组合,是一个功能模块. 一般情况下,定义一个方法的语法是: 其中: //方法名为骆驼命名法 1. 访问修饰符:方法允许被访问的权 ...
- ServiceDesk Plus更有序地组织IT项目
- [ExecuteInEditMode]
ExecuteInEditMode属性的作用是在EditMode下也可以执行脚本.Unity中默认情况下,脚本只有在运行的时候才被执行,加上此属性后,不运行程序,也能执行脚本. 与PlayMode不同 ...