如何在Java中使用SDK更新计划独立需求
我想在SAP S/4Hana云中更新PIRs(计划独立需求)。我正在使用JavaSDK。 我正在使用DefaultExtendedPlannedIndependentRequirementService类如何在Java中使用SDK更新计划独立需求,java,sap-cloud-platform,sap-cloud-sdk,Java,Sap Cloud Platform,Sap Cloud Sdk,我想在SAP S/4Hana云中更新PIRs(计划独立需求)。我正在使用JavaSDK。 我正在使用DefaultExtendedPlannedIndependentRequirementService类 PlannedIndepRqmtItem pirItem = null; try { pirItem.setPlannedQuantity(utilities.convertToBigDecimal(anaplanLine.getFo
PlannedIndepRqmtItem pirItem = null;
try {
pirItem.setPlannedQuantity(utilities.convertToBigDecimal(anaplanLine.getForecastQuantity()));
new DefaultExtendedPlannedIndependentRequirementService()
.updatePlannedIndepRqmtItem(pirItem)
.execute();
我使用PlannedIndeprqmitem填充要更新的字段,如上所示
我的问题是如何设置条件字段(where字段)
where子句的字段包括:产品、工厂、MRP区域、PIR类型、PIR版本、PIR周期和周期类型
比尔,
Pietro不允许在更新请求中使用“where子句”
要更新项目,首先必须请求特定项目(GET request),修改它,然后将其传递给服务类的专用update
方法
如果您想同时更新多个项目,您可以通过DefaultExtendedPlannedIndependentRequirementServiceBatch
执行批处理请求。但是,这也需要显式地传递所有要更新的对象,因为其中有“where子句”
如果您希望执行类似于SQL方式的更新,那么更新符合特定条件的所有项,您将只获取满足要更新的条件的项,修改它们,然后通过批处理请求更新它们。因此本质上,SQL更新的“where子句”将通过
getAll()
方法的过滤器来表示。您是否尝试过在pirItem
上使用setter方法来设置所有值?我已经设置了要更新的字段(计划数量)。我没有得到的是如何区分要更新的字段和过滤器字段(例如ABAPSQL中的where子句)。