
在一个真正要落地的 ABAP 应用里,CDS View、RAP Business Object、OData 服务看起来往往是最显眼的部分,但所有这些对象最终都需要回答一个非常朴素的问题,业务数据究竟保存在哪里。我们正在讨论的这个企业数据示例里,公司、成本中心、部门、员工和业务主题并没有被塞进一张巨大的数据库表,而是分别存放在五张表中。公司有自己的表,成本中心有自己的表,部门有自己的表,员工有自己的表,不同部门承担的 Topic 也有自己的表。这样的拆分很接近真实企业系统中的关系型数据建模思路。应用层最终可能通过一个 CDS View Entity 看起来像在访问一个完整的 Company Business Object,Fiori 页面甚至可能只看到一个 OData Entity Set,但持久化层内部仍然可以由多张彼此关联的数据库表组成。在这个场景中,数据关系大致可以理解为Company → Cost CenterCompany → DepartmentCompany → EmployeeCompany → TopicDepartment → Cost CenterEmployee → DepartmentTopic → Department这里有一个非常重要的技术边界。这些对象使用的是define table而不是define view entity前者定义真正承载持久化数据的 ABAP Dictionary 数