SAP Knowledge Base Article - Public

3757379 - The List Price of the Product Maintained in the Customer Group Specific Price List is Not Retrieved via the Web Service CalculatePriceIn

Symptom

You are using the web service CalculatePriceIn to retrieve the List Price of a Product but the List Price maintained in the Customer Group Specific Price List for this Product is not Retrieved only the List Price maintained in the e.g. Base Price List is retrieved for the Product.

Environment

SAP Business ByDesign

Reproducing the Issue

Please Note: This is a sample payload. Please note that the data passed for the Account ID, Sales Organization, Company and Product are sample data.

You are passing the following SOAPUI Request Payload:

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:glob="http://sap.com/xi/SAPGlobal20/Global" xmlns:a00="http://sap.com/xi/AP/CustomerExtension/BYD/A0014">
   <soap:Header/>
   <soap:Body>
      <glob:CalculatePricesRequest_sync>
         <CalculatePricesRequest>
            <Application>2</Application>
            <CurrencyCode>EUR</CurrencyCode>
            <AccountID>10000010</AccountID>
            <SalesOrganisationID>P1110</SalesOrganisationID>
            <CompanyID>1000</CompanyID>
            <Item>
               <ID>1</ID>
               <ProductID>TP-BLACK</ProductID>
               <ProductTypeCode>1</ProductTypeCode>
               <Quantity unitCode="EA">1</Quantity>
               <QuantityTypeCode>EA</QuantityTypeCode>
            </Item>
         </CalculatePricesRequest>
      </glob:CalculatePricesRequest_sync>
   </soap:Body>
</soap:Envelope>

You are receiving the following SOAPUI Response Payload which only includes the List Price of the Base Price List BASE PL:

<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
   <env:Header/>
   <env:Body>
      <n0:CalculatePricesResponse_sync xmlns:n0="http://sap.com/xi/SAPGlobal20/Global" xmlns:prx="urn:sap.com:proxy:L3I:/1SAI/TAS320A1E78319512398166:804">
         <Item>
            <ID>1</ID>
            <ProductID>TP-BLACK</ProductID>
            <ProductType>1</ProductType>
            <NetPrice>
               <DecimalValue>100.0</DecimalValue>
               <CurrencyCode>EUR</CurrencyCode>
            </NetPrice>
            <NetValue>
               <DecimalValue>100.0</DecimalValue>
               <CurrencyCode>EUR</CurrencyCode>
            </NetValue>
            <PriceComponents>
               <ConditionType>7PR1</ConditionType>
               <ConditionDescription>List Price</ConditionDescription>
               <ConditionRate>100.0</ConditionRate>
               <CurrencyCode>EUR</CurrencyCode>
               <QuantitySymbol unitCode="EA">1.0</QuantitySymbol>
               <QuantityUnitOfMeasure>EA</QuantityUnitOfMeasure>
               <ConditionValue>100.0</ConditionValue>
               <PriceListID>BASE PL</PriceListID>
            </PriceComponents>
            <PriceComponents>
               <ConditionType>7PR1</ConditionType>
               <ConditionDescription>List Price</ConditionDescription>
               <ConditionRate>100.0</ConditionRate>
               <CurrencyCode>EUR</CurrencyCode>
               <QuantitySymbol unitCode="EA">1.0</QuantitySymbol>
               <QuantityUnitOfMeasure>EA</QuantityUnitOfMeasure>
               <ConditionValue>100.0</ConditionValue>
               <PriceListID>BASE PL</PriceListID>
            </PriceComponents>
         </Item>
         <Log>
            <MaximumLogItemSeverityCode>1</MaximumLogItemSeverityCode>
            <Item>
               <SeverityCode>1</SeverityCode>
               <Note>Price Calculation completed</Note>
            </Item>
         </Log>
      </n0:CalculatePricesResponse_sync>
   </env:Body>
</env:Envelope>

Cause

In the payload, only the Currency, Account ID,  Sales Organisation ID, Company ID and Product ID information is being provided. Based on this the system is only able to identify the Base Price List since Base PL needs only Product ID.

When creating any Sales Document, the Customer Group is determined via the following Parameter:

  • Account
  • Sales Organization
  • Distribution Channel

 

Since you are not providing the Distribution Channel in your payload, the Customer Group cannot be determined and therefore the Customer Group Specific Price List is not retrieved.

 

In our example, when you create a Sales Order for Account 10000010 manually and maintain e.g. the Sales Unit P1111 which Determines the Sales Organization P1110 automatically with the Distribution Channel 01 the Customer Group can be determined from the Account Master Data from the Sales Data tab and the respective Sales Organization P1110 and Distribution Channel 01.https://me.sap.com/notes/0003058154

Resolution

Therefore, in order to retrieve the Customer Group Specific Price List via the web service, you need to add the Distribution Channel to your payload.

 

See below sample payload:

<soap:Envelope xmlns:soap=http://www.w3.org/2003/05/soap-envelope xmlns:glob=http://sap.com/xi/SAPGlobal20/Global xmlns:a3w=http://sap.com/xi/AP/CustomerExtension/BYD/A3WHX>

   <soap:Header/>

   <soap:Body>

      <glob:CalculatePricesRequest_sync>

         <CalculatePricesRequest>

            <Application>2</Application>

            <CurrencyCode>EUR</CurrencyCode>

            <AccountID>C006427</AccountID>

            <SalesOrganisationID>ESTEU</SalesOrganisationID>

            <DistributionChannel>Z3</DistributionChannel>

            <CompanyID>EST00</CompanyID>

            <Item>

               <ID>4</ID>

               <ProductID>M50031</ProductID>

               <ProductTypeCode>1</ProductTypeCode>

               <Quantity unitCode="EA">1</Quantity>

               <QuantityTypeCode>EA</QuantityTypeCode>

            </Item>

         </CalculatePricesRequest>

      </glob:CalculatePricesRequest_sync>

   </soap:Body>

</soap:Envelope>

See Also

KBA 3058154 - Data is Not Retrievable from Custom Price List via Webservice CalculatePriceIn

Keywords

Customer Group Specific Price List; CalculatePriceIn, web service, webservice, API, missing; List Price; wrong;  , KBA , AP-PMD-SPL , Sales Price List , Problem

Product

SAP Business ByDesign all versions