无法在批处理模式下为 ContactOriginData PATCH 设置强制 headers
Unable to set mandatory headers for ContactOriginData PATCH in batch mode
根据 integration guide for Contacts OData,Sap-Cuan-SequenceId
header 在更新 ContactOriginData 记录时是强制性的。在单例模式下更新时,我可以按如下方式设置 header 并且它可以正常工作:
service
.updateContactOriginData(contact)
.withHeader("Sap-Cuan-SequenceId", "PatchUpdate")
.executeRequest(destination);
但是,在批处理模式下执行相同的更新时,没有设置这个 header 的选项:
service
.batch()
.beginChangeSet()
.updateContactOriginData(contact)
.withHeader(...) // this option does not exist
.endChangeSet()
.executeRequest(destination);
当我 运行 第一个批次时,我的 SAP 导入监视器显示错误:
Invalid content in field Sap-Cuan-SequenceId
是否可以在批处理模式下设置此 header,我只是不知道如何设置?我使用的是 SDK 版本 3.39.0
。任何帮助将不胜感激!
谢谢!
这显然是一个实施缺陷。 SDK 有一个新的 API for OData BATCH in the OData v4 client,应该不会有这个问题。提到的服务仅公开 OData v2,并且 OData v2 BATCH 实现在历史上有所不同。出于兼容性原因,它必须保持这样。我们计划提供一个并行实现以使其与 OData v4 保持一致并修复许多次要和主要的不一致。
如果这非常紧急,我们可以尝试使用 SDK 的 generic OData client otherwise create an issue in this GitHub repository 提供解决方法,SDK 团队会在发布添加 headers 的修复程序时通知您。
根据 integration guide for Contacts OData,Sap-Cuan-SequenceId
header 在更新 ContactOriginData 记录时是强制性的。在单例模式下更新时,我可以按如下方式设置 header 并且它可以正常工作:
service
.updateContactOriginData(contact)
.withHeader("Sap-Cuan-SequenceId", "PatchUpdate")
.executeRequest(destination);
但是,在批处理模式下执行相同的更新时,没有设置这个 header 的选项:
service
.batch()
.beginChangeSet()
.updateContactOriginData(contact)
.withHeader(...) // this option does not exist
.endChangeSet()
.executeRequest(destination);
当我 运行 第一个批次时,我的 SAP 导入监视器显示错误:
Invalid content in field Sap-Cuan-SequenceId
是否可以在批处理模式下设置此 header,我只是不知道如何设置?我使用的是 SDK 版本 3.39.0
。任何帮助将不胜感激!
谢谢!
这显然是一个实施缺陷。 SDK 有一个新的 API for OData BATCH in the OData v4 client,应该不会有这个问题。提到的服务仅公开 OData v2,并且 OData v2 BATCH 实现在历史上有所不同。出于兼容性原因,它必须保持这样。我们计划提供一个并行实现以使其与 OData v4 保持一致并修复许多次要和主要的不一致。
如果这非常紧急,我们可以尝试使用 SDK 的 generic OData client otherwise create an issue in this GitHub repository 提供解决方法,SDK 团队会在发布添加 headers 的修复程序时通知您。