前言

提示

本文中:

  1. 基础货币是 美元

  2. 新建了 2 个实体进行实验,分别是 Invoice 实体 和 Invoice Detail 实体,两个实体是一对多的关系

基本概念

货币是 Dynamics CRM 中的一种字段类型,用于存储货币值。在某个实体创建 “货币字段” 时,系统会在后台创建 4 个字段。

比如我在 Invoice Detail 实体新添的 Amount 货币字段,系统会在后台创建的字段如下:

Invoice Detail 实体新添的 Amount 货币字段

Invoice Detail 实体新添的 Amount 货币字段

  • gdh_amount ,存储 “实际货币值”
  • gdh_amount_Base ,存储将 “实际货币值” 根据 “汇率” 转换为 “基础货币”

另外 2 个字段:

  • 币种(Currency)
  • 汇率(Exchange Rate)

新建币种

打开 Power Platform 管理中心 –> 选择 “环境” –> 进入 “设置” –> 选择 “币种”

在 Power Platform 管理中心添加币种-01

在 Power Platform 管理中心添加币种-01

在弹出的页面,新添币种

在 Power Platform 管理中心添加币种-02

在 Power Platform 管理中心添加币种-02

为了实验,这次我添加了两个币种:人民币 和 日元,新建的信息如下:

货币名称货币代码货币符号汇率货币精度
US DollarUSD$1.00002
RMBCNY7.25002
JPYJPYJPY¥147.63002
警告
  1. 汇率 更新时,Dynamics CRM 不会重新计算所有货币字段

  2. 汇率 由系统管理员设定

新建实验数据

No.CurrencyAmountAmount(Base)Exchange Rate
SASD-00001260JPYJPY¥ 1,000.00$6.77147.6300000000
SASD-00001259US Dollar$1,000.00$1,000.001.0000000000
SASD-00001258RMB¥ 1,000.00$137.937.2500000000
新建实验数据

新建实验数据

可以看到,如果选择的币种不是基础货币, Amount(Base) 会根据 AmountCurrency 自动计算。

为货币添加汇总

货币添加汇总,会怎么样呢?我在 Invoice 实体新添 Example - Total Amount 货币字段:

新建货币汇总字段

新建货币汇总字段

汇总规则如下:

汇总规则

汇总规则

汇总结果:

可以看到 Example - Total Amount 会根据当前的币种字段进行汇总,其步骤是:币种 –> 汇率 –> Example - Total Amount(Base) * 汇率

汇总结果

汇总结果

提示
  1. 在 CRM 里,汇总字段是 定时更新 的,可以在系统作业中设置更新频率,但最快的更新频率是每小时更新一次。

  2. 此外,汇总计算也可以手动触发进行计算,点击汇总字段旁边的 “小键盘” 就会出现 重新计算 按钮,截图如下。

手动触发汇总字段进行计算

手动触发汇总字段进行计算

关于用户默认货币

因为我们设置的基础货币是美元,其实在 CRM 中,每个用户都可以设置自己的默认货币,如果用户为自己设置了默认货币,那么在新建 Invoice 记录时,币种字段就会默认赋值用户自己设置的默认货币

关于用户默认货币-01

关于用户默认货币-01

例如,我为 test06 用户设置默认货币为日元,然后去新建一条 Invoice 记录

关于用户默认货币-02

关于用户默认货币-02

可以看到,在新建表单中的币种字段已经默认赋值为日元

关于用户默认货币-03

关于用户默认货币-03

参考

  1. 使用 Power Apps 解决方案资源管理器创建和编辑 Microsoft Dataverse 的列
  2. 列的类型 - 使用货币列