Skip to Content
Author's profile photo Sibo Zhang

BPC Embedded Model Master Data On the Fly

Master Data On the Fly has been a hot requirement in the BPC world. In BPC standard model you can refer to below How To Guide:

In this article, I’m going to share my implementation of Master Data On the Fly in BPC Embedded Model. It’s based on Input Ready Query and Planning function.


We’ll setup a workbook that allow you to not only input transaction data but also master data. The master data will be updated to both master data table and hierarchy.


We’ll need a Direct Update DSO because we need to use the char type key figure.

In the DSO we’ll create only one characteristics and 2 key figures to make it simple. One key figure is numeric type and the other is char type.

Then we need to create an aggregation level to contain the planning functions and to support the input ready query.

In the planning function we will implement the code to update master data and hierarchy

In the workbook we’ll insert the query and also implement the macro to trigger the planning function.

Detail Steps

Create an InfoObject called ZPROD, Type char and length 32. switch on master data table and hierarchy. To to be simple we don’t create any attribute.

Create the key figures, we need to at least prepare 2. One is numeric type and the other is char type. In our example, Z_PRC is the numeric type key figure and ZCOMNT is the char type.

Create the Direct Update DSO and assign the characteristics to the DSO.

Create the Aggregation Level and the select the DSO as the Basis InfoProvider

Create the Input Ready Query, put the ZPROD on the row.

The query will look like below in RSRT.

Create the Planning Function Type in RSPLF1. Here we have to also prepare for the Planning Function class. In the class, the master data and hierarchy update method is created.

3 parameters are created as below:

Planning function type class implementation

In the class ZCL_RSPL_INPUT_MD, we have implemented both interface below


In both classes’  EXECUTE method, UPDATE_MD method will be called.

Create the Planning Function

For I_IOBJ, choose ZPROD.

For PARENTID and MEMBERID, create 2 variables to allow end user input from UI.

Create the workbook

For demo purpose, we have put both the query and the Master Data creation button on the same worksheet.

Attach the planning function to the workbook:


Macro implementation

Assign below 2 lines of code to the GO button

lResult = Application.Run(“SAPExecutePlanningFunction”, “PF_1”)
lResult = Application.Run(“SAPExecuteCommand”, “Restart”, “ALL”)


After click on the GO button, you should be able to see a successful message popping up from the left bottom corner and the report should look alike below:

Assigned Tags

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

      Hi Sibo Zhang

      Greeting for the day

      I have read your document which contain very good information.

      Could you please provide one more information how new master data PROD001 was updated under hierarchy node Product C.


      Rajesh SVN

      Author's profile photo Sibo Zhang
      Sibo Zhang
      Blog Post Author


      Hi Rajesh,

      I used the function module RSNDI_SHIE_STRUCTURE_UPDATE3 in the example. This is based on the assumption that you've known the hierarchy first. If not, you need to get the structure first from function module RSSEM_HIER_STRUCTURE_GET.

      Hope it helps.



      Author's profile photo Former Member
      Former Member

      Hi, can you please expand on the on how to create the class ZCL_RSPL_INPUT_MD.



      Author's profile photo Jean-Baptiste Mack
      Jean-Baptiste Mack

      We are facing a difficulty with BW 7.4 SP15.

      What are the procedure for doing Master Data on the fly with BW 7.4 as we required to do with InfoCube real time and not ADSO direct update?


      Author's profile photo Indrashish Chakraborty
      Indrashish Chakraborty

      Hello Sibo Zhang,

      I do not have BPC license in my project, So how can I achieve this solution using BW on HANA?

      It would be really helpful if you could provide some information on this.