笔者的这篇 SAP UI5 开发教程文章,* SAP UI5 利用开发教程之一百二十九 - 如何给 SAP UI5 SmartField 增加 Value Help 性能,有敌人留言:
你好,求教一个问题,请问如何在odata外面通过annotations增加一个自定义注解?
你好,请问能够不能够在odata外面通过什么设置,从而主动给metadata.xml中加上注解,实现value help的性能,还是说每次须要在metadata.xml中批改?
这位敌人理论征询的就是如何保护 metadata.xml 文件里这种 Annotations 标签。
在 OData 元数据里生成自定义注解的形式有很多种,比方在 CDS view 里保护注解,而后基于 CDS view 生成 OData 服务。对于本系列到目前为止采取 SEGW 事物码开发的 OData 服务来说,咱们没有 CDS view 模型,因而能够采取另一种方法,即在 MPC_EXT 类里手动编写 ABAP 代码的形式来保护注解。
咱们先看下成果,在 MPC_EXT 类的 DEFINE 办法里编写 ABAP 代码之后,用 Postman 应用 url 拜访 OData metadata,在返回的数据里,能看到咱们用 ABAP 代码增加的自定义注解。
<Annotations Target="ZJERRY.Book" xmlns="http://docs.oasis-open.org/odata/ns/edm"> <Annotation Term="UI.HeaderInfo"> <Record> <PropertyValue Property="TypeName" String="Book"/> <PropertyValue Property="TypeNamePlural" String="Books"/> </Record> </Annotation> <Annotation Term="UI.LineItem"> <Collection> <Record Type="UI.DataField"> <PropertyValue Property="Label" String="Book"/> <PropertyValue Property="Value" Path="Book"/> </Record> </Collection> </Annotation> </Annotations>
上面是具体的实现步骤解说。