Skip to Content
Technical Articles
Author's profile photo Alecsandra Dimofte

Collaborative Planning (IBP + SAC) – Technical focus Part 2 (SAC to IBP)

Hello community members!

It’s been quite some time since the last blog post! During this time, I received quite a few questions from you, and most of them were about the capability to write back from SAC into IBP:

  • Can SAC write data into IBP?
  • What is required to write data from SAC into IBP?

Here is the summary of how the integration works and some recommended Dos and Don’ts.

Integrate data from SAC into IBP

For simplicity, I will refer to the bi-directional integration with READ and WRITE as following:

  • IBP integration into SAC: READ
  • SAC integration into IBP: WRITE

Step 1: Enable the connection between IBP and SAC

The setup required to enable the oData WRITE service is exactly the same as for the READ. This means that if you have already enabled the connection for the READ scenario, you can use it also for the WRITE. If not, here is a summary of what you will have to cover:

IBP prerequisites 

    • List the required planning area for integration in Global Configuration
    • Create a Communication System type SAP_COM_0143
    • Create a Communication User
    • Create a Communication Arrangement

For more details, check here.

SAC prerequisites

    • Create a connection to IBP using the OData Service URL generated by the IBP communication arrangement and using the credentials of the defined communication user

For more details, check part 1 of this blog.


  • Even if it might be confusing because of the name, the same EXTRACT endpoint service from the IBP communication arrangement is also used for the WRITE.


  • In the communication system definition, you don’t have to fill the User for Outbound Communication. The User for Inbound Communication is used for both READ and WRITE.

Step 2: Select the parameters for the WRITE call

From the SAC Model, Data Management tab, you can also run an export job “Export Data to SAP Integrated Business Planning”.

Select the IBP connection you would like to use and proceed to the next step.

Select the key figure and all the attribute dimensions that correspond to the planning level root attributes where the key figure is defined.


  • If the key figure is enabled for conversion, e.g. UoM or Currency conversion, make sure to select the Target UoM or the Target Currency attribute.


  • Don’t select the time dimensions as a TIMESTAMP, e.g. Month(As Timestamp). As of now, writing the date as a TIMESTAMP is not supported and selecting it will generate a SAC generic error An error occurred when exporting data: The type’ class java.lang. String’ of the value object is not supported.
  • Don’t map attributes that are used in Attribute Transformation Type Key figures. The WRITE request is not supporting Attribute Transformation Type Key figures. The error I got for this: Internal Error: cannot read corresponding IBP data from planning area. 
  • Don’t select more than one key figure. As of now, only one key figure at a time can be written.

Step 3:Map the parameters between SAC and IBP

Map the IBP fields to SAC and filter the source data.


  • If the IBP attribute names aren’t the same as the column names in your SAP Analytics Cloud model, you can create an extra property column, with names that match the names in IBP. Then when you export the data, you can map the new property column to the IBP attributes. In my example, I created an additional column named PRDID as the IBP attribute and filled it with the product IDs.

  • For any target IBP field, if you have no source dimension to map data to and choose the option Not Mapped, you need to specify a default value for the target field. In this example, I mapped Target Currency with USD as default value.
  • IBP currently doesn’t support version mapping during the data acquisition. If you maintain multiple versions in SAC, make sure you set a filter for a specific version. Otherwise, transaction data from different versions will be aggregated.


  • Don’t click Finish unless you are sure you provided all the inputs. Unfortunately, you will not be able to re-edit this query.

Once you are done, click Finish and, if all is ok, you will get a confirmation.


Further limitations that exist at the moment:

  • WRITE is possible only for Key Figures, master data write is not supported –  roadmap item, currently planned for 2105
  • WRITE is not available at version/scenario level – roadmap item, currently planned for 2102
  • WRITE new planning combination from SAC into IBP is not supported

I hope it helps you to move forward with IBP+SAC implementations.


p.s: please note that with future releases, the limitations described in this blog might become obsolete.

Assigned Tags

      You must be Logged on to comment or reply to a post.
      Author's profile photo Irmhild Kuntze
      Irmhild Kuntze

      Great description Alecs, thanks!

      Author's profile photo Manoj Gaikwad
      Manoj Gaikwad

      Thanks for the detailed info on SAC to IBP Alex.  This helped us a lot in resolving all the issues that we are facing.  As the error message were not that informative had to rely on SAP Support to decipher the error, but this blogs nails it.


      Though we are still facing 1 issue when exporting more than 1 entry we are facing duplicate itab error message.

      We checked our Data and there are no duplicates, so not sure what is causing the error.  Note: When we re filtering out data to send exactly only 1 record data is transferred successfully.





      Author's profile photo Henry Banks
      Henry Banks

      Thank you Alecsandra Dimofte - this looks spot-on to help my customer. Great blog, many thanks. cheers, H

      Author's profile photo Nicolas Lindner
      Nicolas Lindner

      Hi Alecsandra, thanks for your detailed Blog. We already connected SAC to IBP and successfully send and received Data.

      Is it somehow possible that SAC is creating Plannning Objects when transfering the Data to IBP? Because with our current setup, all combinations that dont already exist in IBP get rejected.

      Thanks in advance.


      Nicolas Linder

      Author's profile photo Alecsandra Dimofte
      Alecsandra Dimofte
      Blog Post Author

      Hi Nicolas,

      Unfortunately, as you noticed, this is not possible today. It is also not planned for the next 3 releases. In 2105 it is planned to allow writing master data entries. Hopefully, writing new planning objects will follow.

      Thank you


      Author's profile photo Hugo DURBECQ
      Hugo DURBECQ

      Thank you Alecsandra Dimofte for this complete tutorial !

      I managed to connect SAC with IBP (write configuration) but I get the folowing error while importing my data from SAC to IBP :

      Please provide a period ID to import data to IBP.

      I cannot figure out how to add the Period ID in the export. Indeed, this is not a Key Figure in IBP. DO you have any idea ?

      Best regards,


      Author's profile photo Alecsandra Dimofte
      Alecsandra Dimofte
      Blog Post Author

      Hi Hugo,

      Yes, your are right. I remember that sending the PERIODID from SAC into IBP was required (and unexpected). 

      The IBP calendar is defined by creating a Time Profile which structures the time hierarchy using these PERIODIDs grouped in levels e.g. level 3 represents weeks, level 4 months, level 5 quarters etc. This way customers have flexibility to define their own calendar and also to decide the granularity. Each period id will have a PERIODSTART and PERIODEND, timestamp format.

      What I did was to create another dimension where I loaded the IBP TIME PROFILE and used this dimension in data mappings. 




      Author's profile photo Bernd Hoepfner
      Bernd Hoepfner

      Hi Alecsandra,

      you mentioned that you "created another dimension".

      My question: where did you created another dimension, in SAC or IBP?

      I guess SAC.

      But how do you combine the SAC-Date dimension with your new created SAC-Month dimension?

      I am asking because my SAC-Model is one year old and has a lot of entries/records without the new dimension "Month".

      Best Bernd

      Author's profile photo Alecsandra Dimofte
      Alecsandra Dimofte
      Blog Post Author

      Hi Bernd

      Yes, I created an additional dimension in SAC where I loaded the IBP time profile. If you already have data into the model, you will have to carefully evaluate the extension of the model with a new dimension and its implications. You could assign old values with a default value #.

      I am also testing this now and looking if there are other approaches.

      Some good news: SAC has customizable time dimension on the roadmap for Q1 2022. This should allow the extension of the calendar with additional attributes e.g. you could define the IBP period ID as a property of the SAC period.




      Author's profile photo Shivaditya Singh
      Shivaditya Singh

      Hi Alecsandra,

      Is the enhancement for the customizable time dimension available as of Q1 2022? We are trying to integrate with an existing IBP solution with PERIODID as 123456 and Period Description as YYYY PMM, while SAC can only read / write to YYYYMM?


      Can you please advise?


      Shivaditya Singh

      Author's profile photo Alecsandra Dimofte
      Alecsandra Dimofte
      Blog Post Author

      Update: Sending the PERIODID is not required. The period description is being used.

      Author's profile photo Ravi Malpani
      Ravi Malpani

      Hi Alecs,

      Thanks for this great blog. Is there any application or any way to check the log of SACP to IBP Inbound data in IBP?

      In my project, I have seen that SACP can provide details of rejected records but there is no log of successful records.



      Author's profile photo Alecsandra Dimofte
      Alecsandra Dimofte
      Blog Post Author

      Hi Ravi

      Unfortunately, there is no such log available. Perhaps you could post this request on ?

      The only way I know that enables users to track changes is by using Change History. You can limit the Source of Change to Extract_OData_API.



      Author's profile photo Wolfgang Runge
      Wolfgang Runge

      I'm wondering if somebody has tried to transfer sales planning data from the new SAC Financial Planning tool to IBP. This would be an obvious planning process step.

      Author's profile photo Shane Trammel
      Shane Trammel

      Is it possible to get an updated version of this Blog post in the context of the latest version of SAC and IBP.

      Author's profile photo Michael Galla
      Michael Galla

      Hi Alecsandra!

      Thanks for these great blogs - they really helped us setting up the SAC-IBP connectivity 🙂

      However we are still struggeling with sending data from SAC to IBP - apparently SAC is sending a wrong keyfiguredate format. The following log entry is from the internal IBP data integration logs.

      How did you manage to send the right keyfiguredate format from SAC to IBP?

      Thank you for any hints.




      /IBP/CL_SAP_SFND_SOPINTEG_NORM=>TRGT_TO_CORE_KEYFIG_NORM: line 1170 col 37 (at pos 67630

          [6930] attribute value is not a number;exception 70006930: attribute value is not a number;[here]fixed(format("KEYFIGUREDATE", 'YYYYMMDDHH24MISS'), 15, 0), KEYFIGUREDATE = [longdate]

      To upload key figures, please change the date format to YYYY-MM-DD and try again. If the date format is OK, please delete any blank line in the uploaded source file.


      Author's profile photo Mathias Welsch
      Mathias Welsch

      Hi Alecsandra,

      thanks a lot for the blog, it really helped a lot as it made the things easy to follow and understand!

      One thing I guess is an important missing piece which I would like to highlight to you, maybe you can add it in the prerequisites?

      Originally the option to write to IBP and some other data sources is not available, only "Export to File" and "Export to BPC".

      For activating a write back to IBP (and others) the model preference need to be set:

      "Model Preferences" - "Data and Performance" - "Maintenance": switch on "Enable Legacy Export".

      I found this in the online help:

      Best regards,


      Author's profile photo Shyamsundar L
      Shyamsundar L

      Thanks for the document. Very comprehensive

      Author's profile photo Cosmin Pop
      Cosmin Pop

      Regarding the statement:

      • If the key figure is enabled for conversion, e.g. UoM or Currency conversion, make sure to select the Target UoM or the Target Currency attribute.

      It appears like with IBP 2308 the Currency ID has to mapped instead of the Target Currency.

      Are there any updates regarding the use of Version mapping for IBP and not just the use of Version filter for SAC in the query? The UI allows selection and retrieval of IBP Version names as mapping but the transfer does not work. Is it on the roadmap?

      Best regards,