SAP Knowledge Base Article - Public

2997306 - "Item for Product ID already exists" Error When Trying to Update a Price List Item via Webservice.

Symptom

When trying to update an item present in a Price List using the Webservice ManageSalesPriceListIn, you instead get error "Item for Product ID ABC already exists" (Where ABC represents the Product ID) in the Response.

Environment

SAP Business ByDesign

Reproducing the Issue

In SOAP-UI or any other API testing tool, you try to run a payload intended to update an existing item in the Price List, which contains the following structure ("XXXXXXXXXX" is used to represent placeholder values which would be system-specific):

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:glob="http://sap.com/xi/SAPGlobal20/Global">
<soapenv:Header/>
<soapenv:Body>
<glob:SalesPriceListBundleMaintainRequest_sync xmlns:n0="http://sap.com/xi/SAPGlobal20/Global">
<SalesPriceList ActionCode="04">
<TypeCode>7PL0</TypeCode>
<ID>XXXXXXXXXX</ID>
<StartDate>XXXXXXXXXX</StartDate>
<EndDate>XXXXXXXXXX</EndDate>
<CurrencyCode>XXXXXXXXXX</CurrencyCode>
<PriceSpecification ScaleLineListCompleteTransmissionIndicator="false">
<TypeCode>7PR1</TypeCode>
<Amount>XXXXXXXXXX</Amount>
<BaseQuantity unitCode="XXXXXXXXXX">XXXXXXXXXX</BaseQuantity>
<BaseQuantityTypeCode>XXXXXXXXXX</BaseQuantityTypeCode>
<ProductID>XXXXXXXXXX</ProductID>
<ProductTypeCode>XXXXXXXXXX</ProductTypeCode>
</PriceSpecification>
</SalesPriceList>
</glob:SalesPriceListBundleMaintainRequest_sync>
</soapenv:Body>
</soapenv:Envelope>

After running the payload, the response contains the following errors:

<Note>The sales price list could not be released</Note>
<Note>Item for Product ID ABC already exists</Note>

Cause

This is caused because the ManageSalesPriceListIn expects the requests to be used to create a new item in the Price List, instead of updating an already existing one. This causes the error mentioning that the Product already exists.

Resolution

The correct way to update an already existing Product in a Price List is to use the Excel Template Upload functionality of ByDesign.

Keywords

Webservice, Web-Service, Integration, API, Price List, Upload, Unable, Error, Duplicate, Exists , KBA , AP-PMD , Price Master Data Management , How To

Product

SAP Business ByDesign all versions