理论教育 数据建模与规则设置:币种换算优化方案

数据建模与规则设置:币种换算优化方案

时间:2023-06-13 理论教育 版权反馈
【摘要】:本节以汇率模型和合并模型为例,介绍使用币种换算功能对数据模型建模的具体要求以及币种换算规则的设置。只有币种转换后的数据才使用真正的货币代码表示。

数据建模与规则设置:币种换算优化方案

用户可以对存储在财务类型和合并类型中的业务数据进行自动币种换算。财务类型和合并类型的数据模型都会关联到一个汇率模型,用于存储币种汇率数据。本节以汇率模型和合并模型为例,介绍使用币种换算功能对数据模型建模的具体要求以及币种换算规则的设置。

12.1.2.1 汇率模型的结构与数据

币种换算功能可用于财务类型的模型和合并类型的模型,它们都需要引用一个汇率类型的数据模型。因此,首先需要创建汇率数据模型,用于存放各种货币汇率信息,并将这一汇率数据模型分配给需要使用货币转换功能的所有数据模型。

SAP_IFRS中的汇率模型结构如图12-1所示。

978-7-111-39913-1-Chapter12-1.jpg

图12-1 示例汇率模型结构

从图12-1中可以看出,汇率模型的类型为“汇率”。汇率模型中包含的维度及作用如下。

(1)CATEGORY:类别维度,用于表示汇率是实际汇率或者是预测、模拟分析用的汇率。汇率模型和财务模型(或合并模型)使用相同的类别维度。

(2)INPUTCURRENCY:币种维度,用于存储币种类型。汇率模型中使用的币种维度不同于财务模型或合并模型使用的币种维度。

汇率数据模型中的币种维度必须包含MD属性。MD属性的取值可以为“M”或者“D”。

1)属性值“M”代表该货币使用间接标价法表示其汇率值。如1英镑=1.6025美元。这种情况下,在将输入货币(如英镑)转换为基准货币(如美元)时使用乘法(multiply)计算。如100英镑等于100x1.6025美元。相反,如果将基准货币(如美元)换算为输出货币(如英镑),计算时使用除法。

2)相应地,属性值“D”代表该货币使用直接标价法表示其汇率值。例如,1美元=6.3元人民币。在将输入货币折算为基准货币时,使用除法(divide)计算。例如,输入货币为人民币,基准货币为美元,汇率值为6.3,100元人民币折算为100/6.3美元;相反,如果将基准货币(如美元)换算为输出货币(如人民币),在使用这一汇率值时,采用乘法计算。

在汇率模型中,只存储基本汇率,交叉汇率由基本汇率套算得出。模型中的基准货币(如美元)的汇率值恒为1。

(3)RATEENTITY:实体维度。汇率模型中使用的实体维度不同于财务模型或合并模型使用的实体维度。一般情况下,汇率在各个实体是通用的,并不会因为实体不同而变化。这一维度一般会有一个通用的维度成员,如“GLOBAL”,用于存储通用的汇率。在特定情况下,可以按不同的实体指定该实体专用的汇率。

(4)RATEID:科目维度,用于存储在币种折算时可能用到的不同类型的汇率,如平均汇率、期末汇率等。例如,我国会计准则要求,资产和负债项目采用期末汇率折算,当期计提的盈余公积采用当期平均汇率折算。因此,汇率模型中使用的科目维度也不同于财务模型或合并模型使用的科目维度。

(5)TIME:时间维度,用于区分不同会计期间的汇率。汇率模型和财务模型(或合并模型)使用相同的时间维度。

汇率模型中的数据示例如图12-2所示。

978-7-111-39913-1-Chapter12-2.jpg

图12-2 示例汇率模型数据

在特定的类别维度成员(如示例中的Demo)和汇率实体维度成员(如示例中的GLOBAL)中,汇率模型保存了每一个会计期间每一个币种的不同类型汇率的基本汇率。如图12-2所示的数据中,以美元(USD)为基准货币,保存了其他币种(如示例中的人民币CNY、港元HKD)相对于美元的基本汇率,如果需要在其他币种之间进行汇率折算,系统会自动使用基本汇率套算出其他币种之间的汇率。汇率模型中还保存了不同类型的汇率,如图12-2所示的数据中的平均汇率(AVG)和期末汇率(END)。

12.1.2.2 合并模型的维度属性

财务模型和合并模型都可以使用币种换算功能。下面以合并模型为例,说明主模型的结构与数据的变化过程。合并模型的数据结构参见9.1.2节的介绍,如果要使用币种换算功能,需要对其中有些维度及其属性进行必要的设置。

(1)实体维度:实体维度必须包括CURRENCY(货币)属性,CURRENCY属性值说明当前实体的记账本位币。例如,美国子公司CURRENCY属性值为USD;法国子公司其属性值为EUR。这一属性的值必须是汇率模型币种维度的有效成员,如SAP_IFRS模型中的INPUTCURRENCY维度。

(2)科目维度:科目维度必须包括RATETYPE(汇率类型)属性,其取值必须是币种换算业务规则的标识。对于不需要进行币种换算的科目,如员工数,其RATETYPE属性值可以为空。

(3)时间维度:时间维度必须包括YEAR(年)、PERIOD(期间)、TIMEID和MONTHNUM属性。

(4)币种维度:需要进行币种换算的数据模型必须包括币种类型维度。币种维度可用于区分模型中的数据是币种换算前的原始数据(以记账本位币表示),还是币种换算后的报表货币数据(即合并报表货币)。

为了进行这一区分,币种换算前的原始数据并不使用真正的货币代码表示,而只用如“LC”这样的代码来表示记账本位币。只有币种转换后的数据才使用真正的货币代码表示。示例数据如表12-1和表12-2所示。

表12-1 币种换算前的数据模型数据记录示例

978-7-111-39913-1-Chapter12-3.jpg

表12-2 币种换算后的数据模型数据记录示例

978-7-111-39913-1-Chapter12-4.jpg

记账本位币“LC”代表的真正币种会因实体不同而变化,如实体SOOO的记账本位币是CNY(人民币),S004的记账本位币是USD(美元)。系统将实体的记账本位币的货币代码存储在实体维度的CURRENCY(货币)属性中。系统在进行币种折算时需要读取这一属性以确定币种折算的原始币种。

在币种类型维度中,维度成员LC代表记账本位币是由其维度属性CURRENCY_TYPE(货币类型)决定的。CURRENCY_TYPE(货币类型)属性取值可以是“R”,代表报表货币;“T”代表交易货币;“L”代表记账本位币[1]。也就是说,LC的CURRENCY_TYPE属性值为L,而合并报表货币,如CNY的CURRENCY_TYPE属性值为R。

(5)母公司维度:在合并模型中,母公司维度用于区分币种折算后的数据是否已分配给某一合并组。分配给特定合并组的数据将用于生成抵销分录,并最终生成合并报表。示例数据如表12-3所示。

表12-3 币种换算后将数据复制到特定的合并范围示例

978-7-111-39913-1-Chapter12-5.jpg

对于合并类型的数据模型,集团类型维度需要包含以下属性:

1)GROUP_CURRENCY(集团货币)属性,其取值必须是币种维度中有效的维度成员,可以是一个或者多个货币代码,这一信息用于确定币种换算的目标货币。例如,G_Hl的GROUP_CURRENCY属性值为CNY。

2)CURRENCY_TYPE(货币类型)属性,其取值可以是“G”,代表集团或合并组;“N”代表与集团或合并组无关的数据,如刚上载的原始数据、货币转换前的数据等。例如,G_Hl的CURRENCY_TYPE属性值为G,G_NONE的CURRENCY_TYPE属性值为N。

(6)审计线索维度:审计线索维度对于货币转换不是必需的,但是如果在模型中使用了这一维度,它必须包括以下属性。(www.daowen.com)

1)DATASRC_TYPE(数据源类型)属性,可以有以下取值:

①“I”表示输入(Input)。

②“M”表示手工调整(Manual Adjustment)。

③“A”表示系统自动抵销和调整( Eliminations and Adjustments)。

④“L”表示数据来源级别,只用于合并。

在进行币种转换时,只有属性值为I和M的数据才会进行币种转换计算。

2)IS_CONVERTED(是否转换)属性,可以有以下取值:

①“N”说明这些成员相应的数据在币种折算时不纳入计算。例如,合并后的调整数据是基于币种换算后的金额进行的,不需要再进行币种换算。

②“Y”或者空白,说明这些成员对应的数据是以记账本位币录入的,需要换算成指定的币种金额。在币种换算时,这些数据纳入计算。

③“G”说明这些审计线索维度成员对应的数据是直接以报表货币录入的,需要复制到指定的集团(合并范围)进行合并抵销。例如,有些手工调整分录可能直接以报表货币录入,而不是使用记账本位币录入。

(7)子表维度:子表类型维度对于货币转换不是必需的,但是如果在模型中使用了这一维度,它必须包括FLOW TYPE(流类型)属性。

在币种换算业务规则中,如果用户选择了“强制结账”选项,系统进行币种换算时在将换算金额写入目标流成员的同时,也将金额写入期末流成员。系统正是通过FLOW TYPE属性来区分期末流成员的,即FLOW TYPE属性值为“CLOSING”的维度成员。

12.1.2.3 维护币种换算业务规则

与其他业务规则一样,币种换算业务规则的执行需要由模型中维度属性与业务规则表共同配合完成。在系统进行币种换算时需要按照不同的会计科目找出相应的币种折算方法代码,再根据币种折算方法代码在币种换算业务规则表中找到详细的币种折算的处理方法。

从管理员界面的业务规则界面(见图6-14)中选择合并模型的“币种换算”业务规则,进入如图12-3所示的界面。

978-7-111-39913-1-Chapter12-6.jpg

图12-3 SAP_IFRS币种换算规则列表

图12-3所示的界面列出了合并模型中币种换算规则的标识、描述与状态。这些标识被用做科目维度的“RATETYPE(汇率类型)”属性值,如图12-4所示。

978-7-111-39913-1-Chapter12-7.jpg

图12-4 科目维度的RATETYPE属性

单击图12-3中币种转换规则列表的标识,或者单击工具栏中的“编辑”按钮,可以查看相应规则的明细定义。以列表中的“AVNEND”为例,其明细定义如图12-5所示。

978-7-111-39913-1-Chapter12-8.jpg

图12-5 示例币种折算方法的详细定义

根据会计准则要求,科目的期初数、变化数及期末数可能使用不同的汇率进行币种换算。在币种换算业务规则中,可以根据科目的不同子表维度成员指定其使用的汇率计算公式。币种换算业务规则表中的具体内容如下。

(1)源流:指定数据来源的子表维度成员。这里输入的值可以是流维度的基本成员ID或父节点成员ID,也可以根据流维度成员的特定属性(即以DIMLIST打头的属性,如DIMLIST1、DIMLIST2等属性)的属性值可以过滤。如本例中的“S_CONV_OP”等就是取自流维度的“DIMLIST CONV SEL”属性值,如图12-6所示。

978-7-111-39913-1-Chapter12-9.jpg

图12-6 流维度成员的DIMLIST_CONV_SEL属性

(2)目标科目:指定存放币种换算后结果金额的科目。如果为空,目标科目使用与来源科日相同的科日。

(3)目标流:指定存放计算结果的流维度成员。如果为空,则使用与来源流相同的流维度成员。

(4)公式:这一字段存储了指定币种换算使用的汇率类型的表达式。表达式可以包含汇率模型科目维度中定义的各种汇率类型。汇率模型科目维度RATETYPE属性值为“FX”的成员都可以用于表达式。SAP_IFRS中的RATEID维度成员列表如图12-7所示。

978-7-111-39913-1-Chapter12-10.jpg

图12-7 RATEID维度成员列表

表达式中除了直接使用科目维度成员以外,还可以在维度成员前使用前缀“OPE”,以表示上一会计期间的维度成员值。例如,汇率模型科目成员中有AVG与END两个成员,分别代表平均汇率与期末汇率。表达式中可以使用“OPEEND”表示上期的期末汇率,也就是本期的期初汇率。

“AS_IS”是系统保留关键字,表示如果相应科目已有目标货币表示的金额,则保留原值,不再对其进行币种换算。

(5)强制结账:如果选中该复选框,系统在币种换算时会将换算金额写入规则表中指定的目标流成员的同时,也将金额写入期末数流成员。流维度的期末数流成员就是FLOW_TYPE属性值为CLOSING的维度成员,如示例中的F99。

(6)定期计算[2]:这一选项适用于数据模型中只存储YTD值,而币种换算需要基于期间变动数计算的情况。如果选中该复选框,系统会自动计算本期余额与上次余额的差额,并将这一差额根据公式指定的逻辑进行币种换算。

(7)实体汇率类型:这一选项与实体维度属性“FX_TYPE”一起使用。在这一字段中输入一个“FX_TYPE”属性值,系统会使用该属性值对实体维度成员进行过滤。只对满足条件的实体维度成员执行币种换算规则。

(8)注释:用于对币种转换明细规则进行说明。

币种换算的业务规则表包含了每一类会计科目使用的汇率类型和货币转换逻辑。当进行币种换算时,系统根据业务规则表中的定义对每一类会计科目的值进行币种换算。如果会计科目的汇率类型属性值在币种换算业务规则中没有相应的定义,系统不对这些会计科目进行货币转换。如果会计科目的汇率类型属性值为空,系统按汇率为1对其进行转换。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈