点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,以下是我的2个实体的元数据:
<键> <键>
它已从原始版本进行了简化,但问题仍然存在。 如您所见,CompanyProfile实体与Location实体有关系。 实际上,CompanyProfile中的Address属性实际上也是相关的Location实体的ID。 鉴于此,我尝试使用
创建与现有位置相关的新CompanyProfile。{ "版本":" 1", " ContactNumber":" 1245", "名称":" OIL Tycoon corporation", "状态":"确定", "地址2" }
但是,这不起作用。 有效的是
{ "版本":" 1", " ContactNumber":" 1245", "名称":" OIL Tycoon corporation", "状态":"确定", " LocationDetails":{ " __metadata":{ " id":" http://localhost:8080/odata/Locations(2L)", " uri":" http://localhost:8080/odata/Locations(2L)", " type":" default.Location" } } }
现在我要求这样做的原因是因为由SAP MDK odata操作生成的请求具有第一个的数据结构,所以我得到了一个错误。 第二个结构是我需要的,但是我不知道我的odata api是否错了,而第一个结构仍然正确并且应该被我的api接受(它是使用spring-boot和olingo创建的)。 这是odata操作的代码,以防万一。
" CreateLinks":[ { " Property":" LocationDetails", "目标":{ " EntitySet":"位置", " QueryOptions":" $ filter = Id eq 2" }, " _Enabled":是 } ], "属性":{ " ContactNumber":" 1245", "名称":" OIL Tycoon corporation", "状态":"确定" "版本":" 1" }, "目标":{ " EntitySet":" CompanyProfiles", "服务":"/img/DOEDocumentMonitoring/Services/DOEDocumentMonitoring.service" }, " _Type":" Action.Type.ODataService.CreateEntity" }
抱歉,这个问题有点长。 我希望我对这个问题的解释很清楚。
请在创建有效内容中同时指定ID,因为它是必填字段(nullable = false):
因此,这似乎是服务器的一个怪癖。 同样有效的是
我认为这被称为深层实体吗? 反正在SAP MDK中执行这种类型的创建吗?
嗨Rishabh,
在这种情况下,将自动创建ID。 我想澄清一下,这基本上是该api的最低要求,只是在我给出的第一个示例中未识别出Address。 api可以识别第二个示例(地址也是LocationDetails,仅以链接形式或其他形式。对不起,我真的不知道其具体名称)
一周热门 更多>