点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我有两个CDS实体,其父/子关系由许多/关联到关键字定义。 CDS定义基于 Cap Cloud文档。 我已从相关实体中删除了所有的webhooks。
实体托运人{ 密钥UUID:UUID; 地址1:字符串(40); 城市:字符串(40); 公司:String(40); CompanyId:UUID; 联系人:字符串(40); 国家:String(2); 电子邮件:String(60); ID:String(4); 名称:String(60); 电话:String(15); 邮政编码:字符串(10); StateProvince:字符串(40); 符号:字符串(400); tenantID:UUID; ToCarriers:许多数据的组合。ToCarriers.Shipper= $ self上的Carrier; } 实体承运人{ 密钥UUID:UUID; 托运人:托运人协会; AdapterRegistrationId:String(4); CompanyId:UUID; ID:String(4); 名称:String(40); 符号:字符串(400); tenantID:UUID; }
我已经创建了一个SAPUI5应用程序CRUD应用程序,用于基于 sapui5 hana点播文档
问题排查:
1)创建父条目
2)创建子条目
创建的代码段
onCreate:function(){ var oList = this.byId(" carrierList"), oBinding = oList.getBinding(" items"), oContext = oBinding.create({ " Shipper_UUID":this.sObjectId.replace(/[{{(}}]/g,''), "ID" : "", "名称" : "", "符号":"" }); this.setUIChanges(); oList.getItems()。some(function(oItem){ 如果(oItem.getBindingContext()=== oContext){ oItem.focus(); oItem.setSelected(true); 返回true; } }); }
3)通过数据库资源管理器验证UUID关系
4)删除父级
代码段:
onDelete:函数(){ var oSelected = this.byId(" shipperList")。getSelectedItem(); 如果(oSelected){ oSelected.getBindingContext()。delete(" $ auto")。then(function(){ MessageToast.show(this._getText(" deletionSuccessMessage")); } .bind(this),函数(oError){ MessageBox.error(oError.message); }); } },
数据库浏览器中仍然存在孤儿:(
(48.7 kB)
对绑定上下文的.delete(" $ auto")调用可能与此有关。
在manifest.json中的OData v4模型上设置的模式是什么? groupId $ auto将使用批处理请求(而不是$ direct)。 还要确保ynchronizationMode为" none"。 请参见 https://ui5 .sap.com/#/api/sap.ui.model.odata.v4.ODataModel%23constructor
将src代码放在 https://github.com/sapmentors/cap-community/tree/master/issues ,所以我们可以说代码而不是猜测:)
是否有任何特定原因 为什么不使用Fiori Elements并使用手动方式来实现UI? 由于您已经在使用UUID,建议您重用@ sap/cds/common中的cuid,并将@ odata.draft.enabled添加到服务中的主要实体。 然后添加所需的UI批注,您将获得没有一行JavaScript的CRUD UI。
此问题可以通过下面的git repo重现。 非常感谢Gregor Wolf通过简单的HTTP调用使问题在本地可重现:
https://github.com/austinkloske22/deepDeletion
Volker,我在这里添加了SAPUI5应用程序源代码:https://github.com/sapmentors/cap-community/issues/36
要回应上面的Gregors评论,我将检查此功能-我认为有很多很好的用例可以做到这一点,但是此应用程序实际上只是一个简单的示例来说明问题。 我还有其他一些SAPUI5应用程序,它们更加复杂,并且不能使用注释。 我需要对所有SAPUI5应用程序进行深度删除。
一周热门 更多>