CDS视图YYY的元素XXX包含路径,但不是只读的

2020-08-31 03:24发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)专家们, 我们要针对使用...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


专家们,

我们要针对使用OData服务MM_PUR_PO_MAINTAIN_V2的采购订单( F0348A)扩展应用程序。 在采购订单项目的帐户分配部分,一堆自定义字段(已经添加到EKKN)将可用于显示和维护。

CDS具有三个"层":

1。 引用

的CDS" C_PurOrdAcctAssignmentTP"

2。 引用

的CDS" I_PurOrdAcctAssignmentTP"

3。 CDS" I_PurgDocAccountAssignment"

现在,我们扩展了最高级别的CDS,因为它是OData服务中使用的CDS:

@ AbapCatalog.sqlViewAppendName:'Z_PO_ACCASS'

@ EndUserText.label:" PO:访问权限 分配"

使用ZC_PurOrdAcctAssignmentTP扩展视图C_PurOrdAcctAssignmentTP

在$ projection.purchaseorder = _Ekkn.ebeln上与_Ekkn关联到ZI_EKKN的[1..1]

和$ projection.purchaseorderitem = _Ekkn.ebelp

和$ projection.accountassignmentnumber = _Ekkn.zekkn {

_Ekkn.zfield1,

_Ekkn.zfield2,

_Ekkn.zfield3}

我们可以激活它,并且在执行扩展的CDS时,附件也会在C_PurOrdAcctAssignmentTP中可见,并且还会读取数据。

现在问题出在服务MM_PUR_PO_MAINTAIN_V2中的事务SEGW中。 现在打开它时,出现以下错误消息:

CDS视图" C_PurOrdAcctAssignmentTP"的元素" ZFIELD1"包含路径,但不是只读的

我已经尝试调试,以找出根本原因,但到目前为止没有成功。

有人可以在这里协助吗? 这是扩展采购订单项目帐户分配部分的正确方法吗?

我非常感谢您的帮助!

谢谢!

3条回答
宇峰Kouji
2020-08-31 03:53

请确保您在关联中拥有的CDS视图ZI_EKKN具有针对对象模型和访问控制的正确注释。 它们应与您要扩展的TP视图中的注释相似。 即

 @ AccessControl.authorizationCheck:#CHECK
 @ AccessControl.personalData.blocking:#必填
 @ObjectModel:{
    compositionRoot:正确,
    RepresentativeKey:" xxxxxxxxx",
    createEnabled,
    deleteEnabled,
    updateEnabled:'EXTERNAL_CALCULATION',
    usageType.serviceQuality:#C,
    usageType.sizeCategory:#L,
    usageType.dataClass:#MIXED
 

请注意,请确保您已选中启用Odata的主CDS视图的子视图的批注

一周热门 更多>