已经在 SAP 里维护了 CNY 和 HKD 的汇率,但在录入日记账时系统仍然报错:
Enter rate HKD / CNY rate type M for 2025-12-10 in the system settings
Message no. SG105
这个错误提示非常明确:系统找不到 2025-12-10 这一天的 HKD → CNY、汇率类型 M 的汇率条目。
✅ 解决思路(按优先级)
1.确认汇率维护的“方向”是否正确
SAP 汇率维护是有方向性的,你必须维护:
从 HKD 到 CNY
汇率类型 M(Middle rate)
日期 2025-12-10
很多人只维护了 CNY → HKD,或者用了汇率类型 P(买入价)/S(卖出价),但系统默认用的是 M 类型。
路径:SPRO→SAP NetWeaver→General Settings→Currencies→Enter Exchange Rates
或事务码:OB08
在 OB08 里,确认你有一行如下:
| 从货币 | 到货币 | 汇率类型 | 有效日期 | 汇率(1 HKD = ? CNY) |
|---|---|---|---|---|
| HKD | CNY | M | 2025-12-10 | 0.9100(举例) |
⚠️ 注意:必须是从HKD → CNY,不是 CNY → HKD,除非你维护了反向汇率并勾选了“反向汇率”选项。
2.确认汇率类型 M 是否被用于记账
在日记账录入时,系统默认使用汇率类型 M(Middle rate),除非你在以下地方自定义了汇率类型:
公司代码全局设置:
OB22凭证类型设置:
OBA7货币转换参数:
OY01
检查这些配置是否指定了其他汇率类型(如 P 或 S),如果是,你需要在 OB08 里维护对应类型的汇率。
3.确认汇率是否“过期”或“未生效”
SAP 汇率是按有效日期匹配的,2025-12-10 的凭证需要等于或早于该日期的最近一条汇率。
如果你只维护了 2025-11-30 的汇率,而 12-10 没有维护,系统也会报错。
4.确认是否维护了“反向汇率”
如果你只维护了 CNY → HKD,而没有维护 HKD → CNY,可以勾选“反向汇率”选项,让系统自动折算。
在 OB08 里,选中你维护的 CNY → HKD 行,点击“Reverse Rate”按钮,系统会提示是否生成反向汇率。
✅ 总结一句话
你去 OB08 里,补一条 HKD → CNY、汇率类型 M、日期 2025-12-10 的汇率,问题就能解决。