按照集成指南联系我们的OData的Sap-Cuan-SequenceId
更新ContactOriginData记录时,标题是强制性的。在单例模式下更新时,我可以按如下方式设置此标头,并且可以正常工作:
service
.updateContactOriginData(contact)
.withHeader("Sap-Cuan-SequenceId", "PatchUpdate")
.executeRequest(destination);
但是,在批处理模式下执行相同更新时,没有设置此标头的选项:
service
.batch()
.beginChangeSet()
.updateContactOriginData(contact)
.withHeader(...) // this option does not exist
.endChangeSet()
.executeRequest(destination);
当我运行批处理时,我的 SAP 导入监视器显示错误:
Invalid content in field Sap-Cuan-SequenceId
是否可以在批处理模式下设置此标头,而我只是不知道如何设置?我正在使用3.39.0
SDK 的版本。任何帮助将不胜感激!
谢谢!
这显然是一个实现缺陷。SDK在 OData v4 客户端中为OData BATCH提供了一个新的 API,它不应该有这个问题。提到的服务仅公开 OData v2,而 OData v2 BATCH 实现在历史上是不同的。出于兼容性原因,它必须保持这样。我们计划提供一个并行实现以使其与 OData v4 保持一致并修复许多次要和主要的不一致。
如果这非常紧急,我们可以尝试使用 SDK 的通用 OData 客户端提供解决方法,否则会在此GitHub 存储库中产生问题,SDK 团队将在发布添加标头的修复程序时更新你。
好的,谢谢@ArtyomKovalyov 的回复。我认为因为我们使用的是 SAP S/4HANA Cloud,所以它只支持 OData v2。我将在 GH 存储库中创建一个问题。
我已经记录了他们的问题:github.com/SAP/cloud-sdk/issues/156
嗨@kurts,感谢您报告它。当修复程序准备好让社区轻松找到它时,我们也会在此处发回。