`

ORACEL R12 总账和子账的关系

 
阅读更多

子模块和GL之间关联的变化
    12i在功能模块上的变化很多,比如,基本每个模块都启用了MOAC特性,新增加了子帐模块,税模块等等很多新的模块,OPM库存和离散库存集成了。不过这些变化中,大部分不是我们需要重点关注的,不过有一个东西需要重点关注那就是子帐模块。子帐模块功能非常强大,现在所有的子模块会计分录都可以使用特定的公式配置出来。但是对技术而言,我们不太关心如何配置生成会计分录,我们只关心子模块的会计分录和GL的会计分路之间的关联性,以方便我们做子模块和GL的对应报表。然而,现在如果你要做对应报表,你就必须要了解子帐。因此,在这里重点只介绍子帐。
    子帐的概念——SLA(Subledger Accounting)
    概念
    子帐是子分类帐会计的简称,字面上的含义就是子分类帐会计分录,但是这东西到底用来干吗的呢?!
    通俗的说:
    1、子分类帐会计其实就是连接子模块会计和GL凭证之间的桥梁,更简单的说,就是子模块和GL之间的桥梁。所有子模块(包括FA)产生的会计分录都是使用SLA产生的,存放在SLA的表中,然后通过过帐程序过帐到GL。有点类gl_interface表的功能。
    2、子分类帐会计的第二层意思:在各个子模块都有一套独立的会计分录,看起来跟GL其实没太大区别,这就意味着在子模块其实就可以计算科目余额了。只是可惜,到目前为止我还没有类似gl_balance的表来存放科目余额。
    3、各子模块目前还是可以有自己的分配帐户(就是以前查看会计科目看到的东西),分别存放在自己的分配表中,比如,AP还是存放在ap_invoices_distributions中,引入SLA后,把这个功能称为“事物处理会计”,和子分类帐会计的不同点在于,事物处理会计是通过自动会计或分配产生,而子分类帐会计是根据定义会计事件等公式产生的,分别存于不同的地方。
    子帐架构
    解释:
    1、 子分类帐的产生有两种方式,一种方式是直接从子模块的事物处理会计,一种是直接从子模块的事物处理上取得。
    2、 子模块的事物处理会计和子分类帐会计是两个不同的东西,一定要区别对待,传送到GL的是子分类帐会计,并非事物处理会计。
    3、 由于子分类帐会计的来源可能是事物处理,也可能是事物处理会计,因此很可能存在差异,这是SLA目前的缺陷。
    子分类帐带来的益处
    1、 灵活的定义会计分录的产生规则,包括摘要,借方和贷方
    2、 一个事物处理可以过帐到多个ledger(就是11i的帐簿),这给跨国集团管理多个帐簿带来很大的好处
    3、 统一了子模块会计分录的存放和产生规则,也就是说,各个子模块都可以根据自身的情况设置会计规则,但是这些规则产生的会计分录都回存放在SLA的表中。
    4、 利于扩展,ORACLE委托外包的子模块产生的会计分录更容易集成到EBS
    SLA的几个重要关键词
    SLA的关键词有很多,不过和我们写程序密切相关的应该是下面几个关键词。这几个关键词是我们弄清楚子模块和GL之间的关键。如果理解了这几关键词在SLA中的具体位置以及作用,加上SLA的的架构图,很容易的就理解了SLA作为子模块和GL的桥梁作用,对过帐程序具有深刻的理解,便于我们以后编写追溯程序以及追溯报表。
    会计事件(account event)
    会计事件,就是一个事物处理的不同事件类型产生的记录,它结合了主要分类帐,事件类型,事件分类。一个事物处理可能会有多个会计时间,因为一个事物处理可能发生多种动作,而每个动作都需要产生相应的会计凭证。因此,我们可以把一个会计事件看成是一张完整的凭证,我们把这张凭证录入到子模块的会计分录表里就形成了完整的会计分录。所以,我对会计事件的理解通俗归纳为以下几点:
    1、 会计事件就相当于一张凭证,录入到GL就是一对会计分录
    2、 同一个事物处理,比如收款可能会对应多个会计事件,因为收款创建会产生会计事件,收款核销也是一个会计事件。
    查看路径:子模块超级用户/查询/会计事件
    主要分类帐(leadger)
    分类帐的概念在12i中表示的是帐簿,也就是11i的SOB,主要分类帐决定了过帐到哪个SOB
    事件实体(EVENT ENTITY)
    事件实体决定了会计分录来源,以应收为例子,事件实体决定了到底是从 “应收事物处理”过来的还是从“收款”过来的。存放在表:xla_entity_types_vl中,会计分录和事物处理关联的表是是xla_transaction_entities ,事件实体同时定义了关联的标识是哪个字段,存放在xla_entity_id_mappings,下面我会详细介绍怎么做关联。
    设置路径路径:子模块超级用户/设置/会计/子分类帐会计/事件/事件模型
    事件分类(EVENT CLASS)
    事件分类是根据事件实体进一步区分会计分录的方法。比如,收款分为“收款”和“杂项收款”,事件分类的表为:xla_event_classes_v,属于xla_transaction_entities的子表。
    设置路径路径:子模块超级用户/设置/会计/子分类帐会计/事件/事件模型
    事件类型(EVENT TYPE)
    事件类型是比事件分类更小的事件划分方法,每个事件分类会细分成多个事件类型。比如:收款会分成:收款已核销,收款未核销,收款已更新等等类型。存放在表:xla_event_types_vl 中。
    设置路径路径:子模块超级用户/设置/会计/子分类帐会计/事件/事件模型
    SLA&GL关系模型
    关联模型中,实际参与的表很多,我们只拿最重要的表来描述,以便大家入门,不至于摸不着头脑,力求简单。
    基础事件关系图
    xla_entity_types_vl(事件实体)
    |――xla_entity_id_mappings(实体ID对应表)
    |――xla_event_classes_v(事件分类)
    |――xla_event_types_vl(事件类型)
    子分类帐关系图
    xla_transaction_entities(会计事物处理实体)
    |――xla_events(会计事件)
    |――xla_ae_headers(子帐头)
    |――xla_ae_lines(子帐行)
    |――xla_distribution_links(关联事物处理信息)
    子模块和GL关系图
    gl_import_references(总帐参考)
    |(gl_sl_link_id,gl_sl_link_table)
    xla_ae_lines(子帐行)
    说明:GL和子模块之间的关联是通过gl_import_reference实现的,关键字段是gl_sl_link_id,gl_sl_link_table。
    GL->子模块追溯

    伪代码
    begin

    --根据GL信息找到相关的ae_header_id,ae_line_num,je_source
    --特别注意,这里可能存在一对多关系
    --一对多在业务上表现为汇总过帐
    select xal.ae_header_id,xal.ae_line_num,jh.je_source
    from gl_je_lines jl,
    gl_je_headers jh,
    gl_import_references gir,
    xla_ae_lines xal
    where jl.je_header_id=gir.je_header_id
    and jh.je_header_id=jl.je_header_id
    and jl.je_line_num=gir.je_line_num
    and gir.gl_sl_link_id=xal.gl_sl_link_id
    and gir.gl_sl_link_table=xal.gl_sl_link_table
    and jl.je_header_id=:1
    and jl.je_line_num=:2
    --根据je_header_id找到相应的会计实体,主要是需要实体代码和几个source_id
    --通过source_id…和entity_code的组合判断,可以准确的追溯到具体的事物处理
    select xte.entity_code
    ,xte.source_id_int_1
    ,……
    ,xte.source_id_char_1
    ,……
    ,xte.security_id_int_1
    ,xte.security_id_int_2
    ……
    from xla.xla_transaction_entities xte,
    xla_ae_headers xah
    where xah.ae_header_id=:1
    and xte.entity_id=xah.entity_id
    and xte.application_id=xah.application_id
    --根据日记帐来源查询xla_subledgers表获得drilldown的程序
    --由于这部分是写死的,因此,对程序员来说,只能做参考
    --至于怎么写的灵活和通用,还需要参考琢磨写成一个通用的动态SQL
    select xs.drilldown_procedure_name
    from xla.xla_subledgers xs
    where xs.je_source_name=:je_source_name
    and xs.application_id=:application_id
    --上面的信息查询出来后,组合成一个动态SQL,返回一个准确的结果集
    --当然,通常情况下,我们都没有考虑写成通用程序,因此可以写死是
    --哪些会计事件,会计实体代码
    END;
    一个简单的列子(收款和总帐凭证对应报表,简单写死事件实体)
    SELECT CR.CASH_RECEIPT_ID    CASH_RECEIPT_ID,
    CR.DOCUMENT_NUMBER    GATHER_NUM,
    JH.DOC_SEQUENCE_VALUE DOC_SEQUENCE_VALUE,
    CR.CUSTOMER_NAME      CUSTOMER_NAME,
    CR.REMIT_BANK_BRANCH BANK_NAME,
    CR.REMIT_BANK_ACCOUNT BANK_ACCOUNT,
    CR.RECEIPT_NUMBER     RECEIPT_NUMBER,
    CR.AMOUNT             AMOUNT,
    CR.STATE_DSP          STATE_DSP,
    H.EVENT_TYPE_CODE     EVENT_TYPE_CODE
    FROM XLA_AE_LINES                 L,
    XLA_AE_HEADERS               H,
    XLA.XLA_TRANSACTION_ENTITIES TE,
    GL_IMPORT_REFERENCES         IR,
    GL_JE_HEADERS                JH,
    AR_CASH_RECEIPTS_V           CR
    WHERE CR.CASH_RECEIPT_ID = TE.SOURCE_ID_INT_1(+)
    AND CR.CURRENCY_CODE = P_CURRENCY
    AND TE.ENTITY_CODE(+) = 'RECEIPTS'
    AND TE.ENTITY_ID = H.ENTITY_ID(+)
    AND TE.APPLICATION_ID = H.APPLICATION_ID(+)
    AND H.AE_HEADER_ID = L.AE_HEADER_ID(+)
    AND H.APPLICATION_ID = L.APPLICATION_ID(+)
    AND L.GL_SL_LINK_TABLE = IR.GL_SL_LINK_TABLE(+)
    AND L.GL_SL_LINK_ID = IR.GL_SL_LINK_ID(+)
    AND IR.JE_HEADER_ID = JH.JE_HEADER_ID(+)
    AND L.AE_LINE_NUM(+) = 1
    AND H.ACCOUNTING_ENTRY_STATUS_CODE(+) = 'F'
    AND H.ACCOUNTING_DATE BETWEEN TRUNC(P_START_DATE) AND (TRUNC(P_END_DATE) + 86399 / 86400)
    SLA总结
    通过上面的介绍,我们现在应该至少了解到了如下知识点:
    1、SLA的简单架构,在12i中SLA扮演什么角色?
    2、SLA的几个关键词,并且知道如何从界面上找到他们?
    3、 SLA几个表的关系模型,以及和GL的关系模型?怎样从子模块找到GL的凭证,怎样从GL追溯到子模块?
    由于SLA非常复杂,因此在这里这点篇幅不能全部介绍完,我只是站在技术的角度来看SLA,看我们到底要做些什么变化。

分享到:
评论

相关推荐

    R12总账操作手册

    在Oracle EBS R12总账系统中,日记账管理是财务管理的核心环节,涉及人工日记账、WEBADI日记账、经常性日记账、成批分配日记账以及日记账的过账、冲销、查询和调整等多个方面。 ##### 人工日记账 人工日记账通过GL...

    R12_Oracle_明细分类账会计引擎基础课程

    从给定的文件信息来看,标题与描述都...总之,Oracle R12中的明细分类账会计引擎是一个强大且灵活的工具,能够显著提升财务管理的效率和精确度。然而,其成功应用需要企业具备相应的技术能力和对会计准则的深入理解。

    EBS R12 总账管理系统基础 中文版学生手册 第2册

    3. **Oracle General Ledger概览**:这部分会介绍系统的整体结构,包括账簿、账户结构、分类账和子分类账的概念,以及它们在总账系统中的作用。 4. **功能和特性**:会详细讨论系统的主要特性,如多货币支持、自动...

    Oracle R12 AP模块 User Guide

    R12版本带来了许多增强功能,包括改进的用户界面、更强大的报表工具、以及与其他Oracle EBS模块的集成能力,如采购、总账和资产等。 ### 主要功能与优势 #### 自动化发票处理 Oracle R12 AP模块支持自动匹配发票与...

    EBS R12 总账管理系统基础 学生手册 中文版

    Oracle EBS R12总账管理系统是Oracle公司提供的一个企业级财务管理解决方案,它为企业提供了一套全面的财务会计工具,用于处理日常会计事务、管理财务报告以及确保财务数据的准确性和合规性。本学生手册主要面向正在...

    Oracle EBS R12与11i文件系统差异

    Oracle EBS R12与11i文件系统差异

    勇猛精进 Oracle_EBS_R12_操作手册中文_超级详细

    本操作手册详细介绍了如何在Oracle EBS R12系统中进行日常操作,帮助用户深入理解和熟练掌握该系统的各项功能。 Oracle EBS R12的核心模块包括: 1. **财务管理系统(Financials)**:涵盖总账、应收、应付、固定...

    EBS R12 总账、应收、应付、税基本设置

    Oracle EBS R12 是一款全面的企业资源规划(ERP)软件,其中的总账、应收、应付和税务模块是财务管理的核心部分。以下是对这些模块基本设置的详细说明: **总账(GL)系统配置** 1. **前期准备** - 使用 `...

    ORACLE-R12-ERP财务全部(总账GL、应收AR、应付AP等).docx

    ORACLE-R12-ERP财务全部(总账GL、应收AR、应付AP等).docx

    R12 oracle 财务应用产品概览-3

    Oracle EBS的财务模块包括总账、应付账款、应收账款、财务报表、固定资产管理等多个子模块,它们共同构成了企业财务运作的基础架构。R12版本对这些模块进行了深入的整合和优化,提高了数据的实时性和一致性。 2. *...

    R12和11i的不同

    1. **子分类账(SLA)的引入**:R12在原有的应收、应付、项目、CST和GL模块之间新增了一个层次——子分类账(SLA),旨在更好地支持全球财务解决方案,包括银行、税务引擎和公司间业务等功能。这一改进意味着银行账号的...

    Oracle EBS 操作手册

    1. **财务模块**:Oracle EBS的财务模块提供了一整套全面的财务管理工具,包括总账、应收账款、应付账款、固定资产管理、现金流管理和税务处理等。用户可以进行会计期间设置、凭证处理、财务报告生成等操作,实现...

    OracleEBS_R12实用技术开发

    在Oracle EBS R12中,总账日记账可以被追踪到各个子模块,这对于审计和财务分析非常有用。 **开发参考** 开发者需要熟悉Oracle EBS R12中关于总账日记账追踪的API,并能够正确地实现这一功能。 **异常处理** 在...

    R12 oracle 财务应用产品概览-4

    Oracle EBS的财务模块包括总账、应收、应付、固定资产管理、成本会计等多个子模块,它们共同构成了企业财务管理的核心。R12版本在这些模块上进行了深入优化,提高了自动化程度,增强了数据准确性,并强化了合规性...

    R12应收功能培训

    Oracle R12的应收管理模块不仅是一个简单的账款追踪工具,它还深度集成了企业内部的销售、财务、物流等多个业务环节,实现了业务流程的自动化和标准化。通过这一模块,企业能够实时监控应收账款的状态,提高资金周转...

    Oracle Financilas Student Guide

    综上所述,《Oracle Financials Student Guide》是一份非常有价值的资源,不仅涵盖了Oracle Financials R12的核心功能和操作流程,还强调了版权和使用限制的重要性,适合各类财务管理人员和技术人员使用。

    R12-采购管理系统基础

    Oracle Purchasing与总账模块紧密相连,确保采购交易能够实时反映在财务报表中,维持会计数据的一致性和准确性。 #### 2.2 Oracle Purchasing与Oracle Human Resources的集成 人力资源模块与采购系统集成,有助于...

    EBS R12 Oracle 应付帐款管理系统基础 中文版学生手册 第3册

    在Oracle EBS R12中,这一模块提供了全面的应付帐款处理能力,包括发票验证、付款安排、现金折扣管理、以及与采购、库存和总账等其他模块的集成。 手册的"活动指南"部分,如创建新员工和新用户,反映了实际操作中的...

    EBS R12 Oracle 应付帐款管理系统基础 中文版学生手册 第1册

    Oracle EBS R12应付帐款管理系统是Oracle企业资源规划(ERP)解决方案的一部分,专门设计用于处理企业的负债管理,包括供应商发票处理、支付管理和财务报告。这个系统的基础是确保公司能够有效地管理其对外部供应商...

Global site tag (gtag.js) - Google Analytics