使用NodeJS cds 3.16.3进行Deep Upsert/更新

2020-09-01 06:27发布

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

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


我正在尝试使用CDS 3.16.3在与另一实体B一一对应的实体A上进行深入研究。

我使用Postman尝试了许多不同的呼叫,但都没有成功。

在阅读变更日志,补丁说明和文档之后,我相信以下内容应该可以工作并创建一个直接链接到A的类型B的新实体,或更新一个链接到A的类型B的现有实体。

PATCH/EntityA(id)

身体:

 {
" field":" value", " navigationPropertyToB":{
" field_b":"另一个值"
}
}

服务器返回http 500错误,并且日志显示:

"无效的列名:FIELD_B_VAL"。

使用OData-Version:4.01作为附加标头没有区别。

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

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


我正在尝试使用CDS 3.16.3在与另一实体B一一对应的实体A上进行深入研究。

我使用Postman尝试了许多不同的呼叫,但都没有成功。

在阅读变更日志,补丁说明和文档之后,我相信以下内容应该可以工作并创建一个直接链接到A的类型B的新实体,或更新一个链接到A的类型B的现有实体。

PATCH/EntityA(id)

身体:

 {
" field":" value", " navigationPropertyToB":{
" field_b":"另一个值"
}
}

服务器返回http 500错误,并且日志显示:

"无效的列名:FIELD_B_VAL"。

使用OData-Version:4.01作为附加标头没有区别。

付费偷看设置
发送
7条回答
Aaron 3364
1楼-- · 2020-09-01 06:34

嗨,

我可以重现此错误,对此给您带来的不便,我们深表歉意。 我们将尽快修复该错误!

非常感谢和问候
David Kunz

95年老男孩
2楼-- · 2020-09-01 06:39

巴斯蒂安嗨,

您的数据模型是什么样的,关联的类型是什么? 我相信它必须是深层插入/更新/删除的组成,才能按照您描述的方式工作:

实体订单{
   Items:Items.order = $ self上许多OrderItems的组成;
 }
 实体OrderItems {
   关键命令:命令关联;
   产品:...;
   数量:...;
 } 

干杯

Pierre

灬番茄
3楼-- · 2020-09-01 06:55

嗨,

我们在下一版@ sap/cds(> 3.17.4)中修复了该错误。很抱歉给您带来不便。


最诚挚的问候
David

宇峰Kouji
4楼-- · 2020-09-01 06:50

我们也使用了Composition。

我们的模型如下:

实体订单{
   地址:Address.order = $ self上一个地址的组成;
 }
 实体地址{
   密钥ID:UUID;
   order:关联到一个Orders;
   field1:...;
 } 
空代码
5楼-- · 2020-09-01 06:38

嗨,

当您组成一个时,没有必要启用条件。 您可以尝试以下方法吗?

实体订单{
   地址:一个地址的组成;
 }
 实体地址{
keyID:UUID;
field1:...;
}

请求PATCH/Orders(id)

 {
"地址":{
" field1":"另一个值"
}
}

最好的问候

David

小熊yu生菜
6楼-- · 2020-09-01 06:32

错别字:> 3.18.0

一周热门 更多>