金额为何必须认识币种,SAP Fiori 中货币字段的 CDS 元数据设计 业务人员打开销售订单分析应用时,真正关心的通常不是某个孤立的币种代码字段,而是金额本身。一笔订单显示为12,500 CNY,另一笔订单显示为3,200 EUR,这样的信息才具有完整的业务含义。倘若列表里只出现12,500和3,200,没人能确定这两个数字是否可以直接比较。反过来,如果界面专门放置一个独立的CurrencyCode列,页面又很容易变得松散,金额和币种之间的关系只能靠使用者自行拼接。SAP Fiori 对这类问题的处理方式并不是在前端控制器里手工拼接字符串,而是在 CDS 数据模型中声明字段语义。金额字段负责保存数值,币种字段负责标识计价单位,@Semantics注解负责告诉运行时框架两者之间的业务关系。当 CDS 模型经由 SADL 暴露为 OData 服务以后,这些语义会进入服务元数据,SAPUI5 和 Fiori Elements 再根据元数据选择合适的格式化、显示和聚合方式。整条链路可以理解为数据库字段 ↓ ABAP CDS 元素 ↓ CDS 语义注解 ↓ SADL 与 OData 元数据 ↓ SAPUI5 类型系统 ↓ Fiori Elements 页面展示