我在 SAP NETWEAVER 7.5 SP 19 (09/2020) 系统上实现了一些带有关联的 CDS 视图。
我在 SEGW 事务中使用数据源引用功能自动从 CDS 视图创建 ODATA 类型和关联,并将它们添加到现有的 SEGW ODATA 项目中。
然后我在 SAPUI5 应用程序中使用该 ODATA 服务。
这是我使用的指南之一:https ://www.saplearners.com/create-odata-service-abap-cds-views-segw/
CDS 视图
CDS 视图的名称类似于/ID/VIEW_NAME_CDS。
关联用as重命名,并在名称前加上下划线。然后名称为_assication_name。下划线似乎是 SAP 使导航属性可读的约定。
结果
在 SEGW 项目中,向导会创建一个实体类型,其名称为:x id x view_name_cds类型 每个斜线都将替换为x并在末尾添加类型。
导航属性名为to_assication_name。
该关联的名称类似于assoc_0D6ADC4B279EADE543738376111F7216。
目标
我想更改实体类型、关联和导航属性的名称,因为我想要 sapui5 应用程序中的一些可读名称
澄清 2020/11/30:SEGW 事务本身中的名称也应更改,以便它们在 SEGW 和 SAPUI5 中相同,因为在未来几个月内,另一个开发人员不会认为我更改了 MPC_EXT 类中的名称。至少我不会这么想。:-)
CDS 视图中的注释可以做到这一点吗?还是有什么其他方式?
例子
@AbapCatalog.sqlViewName: 'ZTEST'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'A test'
define view /ABC/SYSTEM_RESULT_CDS as
select from system as system
association [1..*] to /abc/s_mon_result as _monitoring_results on _monitoring_results.system_id = $projection.system_id
{
key system.system_id,
system.name,
_monitoring_results
}
group by system.system_id
实体类型:xabcxsystem_result_cdsType
这是骆驼案风格和蛇纹案的混合体。不太可读。
导航属性:to_monitoring_results
没关系,但我想有机会重命名它。
关联:assoc_0D6ADC4B279EADE543738376111F7216
不可读。只有当您单击它时,您才会看到关联所属的 2 个实体。