IBM Cognos 最佳实践: 在 IBM Cognos Controller 中使用历史汇率指南

文档性质:指南;产品:IBM Cognos Controller;关注领域:财务管理

在 IBM Cognos Controller 中设置并使用历史汇率指南。

免费下载:IBM® Cognos® Express V9.5 或者 Cognos® 8 Business Intelligence Developer Edition V8.4 试用版
下载更多的 IBM 软件试用版,并加入 IBM 软件下载与技术交流群组,参与在线交流。

简介

目的

本文提供在 IBM Cognos Controller 中设置并使用历史汇率的指南。

适用性

IBM Cognos Controller

例外与除外责任

在本文撰写之时,没有任何已知的例外与除外责任。


历史汇率

汇率 — 历史汇率登记器

货币登记器意味着您针对一个给定期间和现状(actuality)输入并存储汇率。您在单独的菜单内输入历史汇率:Group/Data Entry/Historical Rates

图 1. 历史汇率登记器和可用的过滤器
历史汇率登记器和可用的过滤器

输入历史汇率

在这个功能中,您可以以两种选定货币(通常是本地货币和集团货币)将历史汇率输入为固定值,以便计算一个固定的历史汇率。历史汇率登记器用于为一些移动账户提供以转换后的货币计量的历史价值,这些账户比如用于增发新股的账户和其他需要历史汇率的账户。针对每个新期间和将用到的现状输入历史价值。或者,也可以使用 Group/Copy/Historical Rates Between Periods 将历史价值从一个期间和现状复制到另一个。

注意:需要执行的货币转换是从本地货币到所选的合并结构中包含的所有货币。要在整个合并结构中保持历史汇率的关系,必须为合并结构中的所有集团和子集团输入历史值。可能需要为同一个项目添加几条记录。没有在历史汇率登记器中输入的货币将通过期末和平均汇率从本地货币转换。如果公司被连接到多个合并结构,也必须对这些货币输入历史价值。注意一个事实:一个非常详细的历史汇率设置(例如在经过扩展的维度或日记账编号上的历史汇率)将使得经过转换的金额的分析更加复杂。另一方面,当您为 G 编码的账户输入历史价值时,重要的是要在适当的细节水平上输入历史汇率。

注意:一种可能的情况是,在输入公司日记账时直接输入历史汇率。

历史汇率代码

必须使用 Define Accounts 功能,通过货币转换码 E、F 或 G 定义一些账户,这些账户需要根据历史汇率登记器转换为历史价值。当您声明需要为哪家公司登记历史汇率时,这些账户将自动出现。如果您选择一个特定表单,则只显示带有该表单中包含的货币转换码 E、F 或 G 的账户。

货币转换码 E

可以在历史汇率登记器中为指定账户输入历史汇率。超出登记器中输入的金额也会以历史汇率转换。如果登记器中没有金额,则该账户将以期末汇率转换。这个代码后面可以跟一个对一个特定账户的引用。

货币转换码 F

可以在历史汇率登记器中为指定账户输入历史汇率。超出登记器中输入的金额也会以历史汇率转换。如果登记器中没有金额,则该账户将以平均汇率转换。

货币转换码 G

可以在历史汇率登记器中为指定账户输入历史汇率。超出登记器中输入的金额也会以历史汇率转换。如果登记器中没有金额,则该账户根据货币转换码 D 的规则转换。这个代码后面可以跟一个对一个特定账户的引用。

期间现状

所有历史汇率都按期间和现状存储,这意味着您可以追溯到一个较早的期间并定位货币转换过程中使用的确切值。

按特定期间和现状存储

也可以将所有历史汇率存储到一个期间和现状中。在这些实例中,必须在 Conversion 选项卡的 general configuration 中定义期间和现状。

扩展维度

如果一个划分为若干扩展维度的账户要对所有扩展维度(extended dimension)使用同一个历史汇率,则历史汇率登记器中的扩展维度级别上不会登记任何信息。但是,如果这些扩展维度要使用不同的历史汇率,则必须在扩展维度级别登记汇率之间的比率。

柜台公司

如果您针对特定的柜台公司(counter company)登记了历史汇率,则那些汇率将只用于针对该柜台公司登记的值的货币转换。其他公司将使用期末汇率或平均汇率。

日记账类型

如果您针对特定日记账类型登记了历史汇率,则那些历史汇率只用于针对该日记账类型登记的值的货币转换。其他日记账类型将以期末汇率或平均汇率转换。如果想对所有日记账类型应用历史汇率值,则必须选择 All Journal Types 复选框。该复选框默认选中。

注意:如果公司日记账中的某个历史价值是通过 Data Entry/Company Journals 菜单输入的,则该值仍然可以更改。

日记账编号

如果您针对特定日记账编号登记了历史汇率,则该汇率只用于针对那个日记账编号登记的值的货币转换。其他日记账编号将使用期末汇率或平均汇率转换。


复制历史汇率

在期间之间复制汇率

在这个功能中,您可以在期间和现状之间复制历史汇率。

步骤:

  1. 单击 Group 菜单上的 Copy/Historical Rates Between PeriodsCopy Historical Rates Between Periods 窗口打开。
  2. Copy From 区域中,输入要从中复制历史汇率的期间和现状。不能选择几个期间和现状。在 Copy To 区域中,输入将向其复制历史汇率的期间和现状。不能选择几个期间和现状。选择 Clear Existing Historical Rates for Current Selections Before Copying 复选框可以删除已针对选中的公司、货币代码和目标现状/期间登记的值。单击 Run
  3. 要复制所有货币和公司的历史汇率,可以选中 All Companies and Currency Codes 复选框。所有公司是指您能访问的所有公司。

注意:

  • 当您在期间之间复制历史汇率时,From 和 To 货币代码被匹配。这意味着,仅当 From 和 To 货币都存在值时,历史汇率才会被复制。可以选择多个货币代码。From 和 To Currency Code 文本框仅当 All Companies and Currency Codes 选项被清除时才启用。
  • 没有针对这个复制功能中的 OB/CB 的内置年度更改规则,但 From 和 To Period/Actuality 中的所有账户必须一致。

在公司之间复制历史汇率

可以使用这个功能在期间和现状之间复制历史汇率。您需要输入以下类似信息:

  • 是否需要针对所有货币代码和公司复制历史汇率。
  • 是否需要针对特定公司或特定货币代码复制历史汇率。
  • 需要在其间复制汇率的期间和现状。

注意:

一次只能在两个期间和现状之间进行复制。

Data Entry - Historical Rates 菜单上登记的所有信息都将被复制。仅当 From Currency CodeTo Currency Code 列中均有值时才会复制。如果将复制到的期间和现状中已包含此前输入的汇率,应选中 Copy Options 复选框。当针对选中的期间/现状、选中的公司、选中的货币代码以及要复制到的 From Currency CodeTo Currency Code 的条件都满足时,就会发生清除操作。

注意:就这个复制功能中内置的 OB/CB 而言,没有跨年末复制的规则。From 和 To Period/Actuality 中的所有账户都必须一致。在公司之间进行复制的主要原因可能是:出现了一个结构变化,同一家公司包含集团内的两个位置,一个处理公司销售,另一个处理公司采购。复制历史汇率之前,必须定义要复制到的公司。可以选择复制几个期间,但一次只能选择一个现状。不能选择几个公司,无论作为复制源还是目标。Data Entry - Historical Rates 菜单上登记的所有信息都将被复制。但仅当 From Currency CodeTo Currency Code 列中均有值时才会复制。如果将复制到的期间和现状中已包含此前输入的汇率,应选中 Copy Options 复选框。当针对选中的期间/现状、选中的公司、选中的货币代码以及要复制到的 From Currency CodeTo Currency Code 的条件都满足时,就会发生清除操作。

公司到公司复制

必要步骤:

  1. Group 菜单上,单击 Copy/Historical Rates Between CompaniesCopy – Historical Rates Between Companies 窗口打开。
  2. Copy Selections 区域中,输入将复制历史汇率的现状和期间。可以选择几个期间,但一次只能选择一个现状。
  3. 如果不想复制所有货币代码的历史汇率,清除 All Currency Codes 复选框。相反,输入要复制的 From CurrencyTo Currency 代码。可以结合使用 Control 或 Shift 键并单击相关代码,选择几个货币代码。
  4. Copy From 区域中,输入从中复制历史汇率的公司。不能选择几个公司。
  5. Copy To 区域中,输入要历史汇率要复制到的公司。不能选择几个公司。
  6. 选择 Clear Existing Historical Rates for Current Selections Before Copying 复选框可以删除已针对选中的现状/期间、货币代码和目标公司登记的值。
  7. 单击 Run

注意:

当您在公司之间复制历史汇率时,From 和 To 货币代码被匹配。这意味着,仅当这两种货币都存在值时,历史汇率才会被复制。可以选择多个货币代码。From Currency CodeTo Currency Code 文本框仅当 All Currency Codes 选项被清除时才启用。


IBM Cognos Controller 中的货币计算的顺序

货币计算的顺序

作为货币转换一部分完成的步骤:

  1. 对所有使用这些货币转换码的账户计算货币转换码 B、M、K、L 和 N。
  2. 计算使用货币转换码 D 的账户。
  3. 计算期初余额、货币转换码 C 和 I。
  4. 计算历史汇率、货币转换码 E、F 和 G。
  5. 计算货币转换差异、货币转换码 O 和 P。
  6. 所有账户被汇总到汇总账户。
  7. 计算货币转换码 A。
  8. 所有账户被汇总到汇总账户。
  9. 计算货币转换码 A2。
  10. 所有账户被汇总到汇总账户。
  11. 将值从带有对账规则的账户复制到所有使用货币转换码 U、V、X 和 Z 的账户。
  12. 所有账户被汇总到汇总账户。
  13. 计算货币转换码 A3。
  14. 所有账户被汇总到汇总账户。
  15. 最终的货币转换差异(余额项)通过一般配置中的规则计算并登账。

IBM Cognos Controller 的货币计算顺序

利润表和历史汇率的转换

利润表中的净利润合计账户为 8999。由于使用固定历史汇率,有些汇总到 8999 的账户没有使用平均汇率转换。资产负债表(权益规范)中的净利润为 2099525。账户 2099621 被用于权益规范中的净利润上的转换差异,以允许净利润(在权益规范中)的期末余额 2099699 按期末汇率转换。为此,2099621 正在使用转换码 A(指向 2099699),2099699 正在使用转换码 B。但是,结果并不是我们所预想的。

根本原因:

涉及净利润 BS 时,不能使用基于金额的转换码 A 或 O。这必须涉及计算顺序。在本例中,账户 2099525 首先通过 M 汇率转换为 -63132 SEK。

使用 A 代码和 O 代码的账户基于 2099525 上的这个值计算。稍后,利润从 8999 移动到 2099525,并使用 -61251 替换 SEK 金额。而此时,使用 A 代码和 O 代码的账户已经计算了。

解决方法:

避免在利润表中使用历史汇率(或确保净利润总计以平均汇率转换)。

或者

对资产负债表中的净利润(这里是 2099525)使用转换码 V 或 X(而不是 M),对登记净利润的转换差异的账户(这里是 2099621)使用转换码 A3(而不是 A)。

将历史汇率载入 Cognos Controller

更新 “历史汇率” 的唯一受支持方法是 “Group” 菜单下可用的方法,SQL 脚本不受支持,因为它可能会导致数据库损坏。手动输入是将历史汇率输入 Controller 的唯一正确方法。可以将它们复制到其他期间。对于常规汇率,可以在 Transfer/External structures/Import external structures 中通过一个规范将它们导入为外部结构。

无法删除历史汇率

不能在历史汇率数据输入屏幕内删除账户 “XXXXXX” 的最后一个实例。将显示的值更改为 0。这行不能删除的原因是:数据输入屏幕自动显示定义来持有历史汇率的已选表单的所有账户。

其他考虑

如果您想在一个固定期间上存储所有历史金额,可以在 Conversion 选项卡的 general configuration 中定义这个期间和现状。您应该注意一个事实:一个非常详细的历史汇率设置(例如在经过扩展的维度或日记账编号上的历史汇率)将使得经过转换的金额的分析更加复杂。另一方面,当您为 G 编码的账户输入历史价值时,重要的是要在适当的细节水平上输入历史汇率。如果您使用日记账,则历史汇率必须在日记账编号级别输入。如果您使用一个更汇总的级别来输入历史汇率,则针对日记账的匹配将出错,转换后的值将计算错误。这种情况也适用于使用扩展维度的账户和柜台公司。根据显示的账户结构,在 Account 列中,所有账户都使用历史汇率(货币转换码 E、F 或 G),但引用其他账户的账户除外。如果登记的值不够具体,系统不知道应该对某个项目应用哪个汇率,就会使用 B、M 或 D 汇率。选择的汇率取决于账户在账户结构中是如何设置的。对于使用货币转换码 E 的账户,使用期末汇率 B;对于使用货币转换码 F 的账户,使用年平均汇率(M);对于使用货币转换码 G 的账户,根据货币转换码 D 的规则进行转换。


历史货币 — 示例

示例 1 — 只有两个汇总(roll ups)的历史汇率

本例将显示 Company #1204 — Sweden 希望输入历史汇率。Company #1204 连接到两个结构。

Group 1200(法定货币是 EUR$)
Group 1000(法定货币是 GBP$)

因此,Company #1204 汇总到两个不同的集团,这要求在公司将汇总到的每个集团中输入历史汇率。

1204 => 1200 => 1000
SEK => EUR => GBP

图 2. Company 1204 的试算平衡
Company 1204 的试算平衡

这个示例的焦点是账户 B50020。这个特殊账户拥有 Currency Code “G”,这是 Fixed Historical/Period Average rate

本例中的基础货币级别是 GBP (Great Britain Pounds)。

图 3. 货币代码和基础货币
货币代码和基础货币

这里使用的期间是 0701(2007 年 1 月)。

图 4. 0701(2007 年 1 月)的货币登记器
0701(2007 年 1 月)的货币登记器

焦点是 SEK/EUR 汇率。Company #1204 汇总到 GR1200 (EUR),然后 GR1200 汇总到 Gr1000 (GBP)。

50020(内部股票白金账户)的初始记录如下:

表 1. 货币转换计算和将在历史汇率登记器中设置的必要金额
期间'0701
账户LCEurRateGBPRate
50020($80,004.00)($10,784.00)$7.42($6,740.00)$11.87
汇率历史汇率B Rate for 0701
SEK$11.87$11.36
EUR$1.60$1.60
Euro => GBP$7.42$7.10
GBP($80,004.00)$11.87($6,740.00)
图 5. 在历史汇率登记器中设置了 EUR $10,784
在历史汇率登记器中设置了 EUR $10,784
图 6. 在历史汇率登记器中设置了 GBP $6,740
在历史汇率登记器中设置了 GBP $6,740
图 7. 运行货币转换之后的试算平衡表。账户 #B20020 显示 -10,784,这是基于历史汇率登记器中的历史汇率从 SEK 转换到 LE (EUR)
运行货币转换之后的试算平衡表。账户 #B20020 显示 -10,784,这是基于历史汇率登记器中的历史汇率从 SEK 转换到 LE (EUR)
图 8. SEK 转换到 GBP。GBP 是顶级报告货币。报告使用 Currency Conversion Report
SEK 转换到 GBP。GBP 是顶级报告货币。报告使用 Currency Conversion Report

注意:

B50020 基于历史汇率登记器中的历史汇率计算(-6,740)。

B50010 使用代码 “B” 或期末汇率计算。本例中的期末汇率是 $11.36(见图 4)。

参考资料

学习

获得产品和技术

讨论

  • 参与 developerWorks 博客 并加入 developerWorks 中文社区,developerWorks 社区是一个面向全球 IT 专业人员,可以提供博客、书签、wiki、群组、联系、共享和协作等社区功能的专业社交网络社区。

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Information Management
ArticleID=677026
ArticleTitle=IBM Cognos 最佳实践: 在 IBM Cognos Controller 中使用历史汇率指南
publish-date=07222011