Using SAP BW Characteristic Attributes with Time Dependency in SAP Profitability and Performance Management
In my previous blog post, Using SAP BW Characteristic Attribute in SAP PaPM, I have written about attributes of Info Objects – both navigational and display. That blog post was intentionally written to guide SAP Profitability and Performance Management (PaPM) users to better understand the concept of attributes in SAP Bussiness Warehouse (SAP BW) that can be used in PaPM too.
Now this blog is nothing different, but in fact a continuation of the previous post. So before proceeding further with this blog post which focuses on time-dependent attributes, I encourage you to read the previous blog post first to better understand the next sections below.
By this point, I trust that you have read the first blog post, and can relate to below points as a recap:
- We divided attribute into 2 basic types: (1) Display Attributes – are completely dependent on the main characteristic, they can only be presented in reporting tools with the main characteristic. (2) Navigational Attributes – these attributes act as “normal” characteristic at query level in reporting (filtering, restricting, etc. is possible).
- Key figures are always display attributes, characteristic can act in both ways: as display attribute and navigational attribute.
After getting familiar with attributes, let me give more flavors to the topic and discuss about attributes with time dependency.
For tracking history/changes in assignment of attribute value to main characteristic, time-dependency can be defined in SAP BW. It enables to maintain changing values of attributes based on time period. Once time-dependency is used for attributes of main characteristics, it is possible to define the validity of attribute value by maintaining the corresponding Valid from and To (Valid to) fields.
Let’s have an example before going any further: Let’s take MAT01 record into consideration. For date range 01.01.1000 to 31.12.2015, value for Sales manager was MAN01 and value for package color was COL01. So to better define it, different records represent different values for different date ranges (see Fig. 1).
After that quick example there is also a question that needs to be answered: Can I assign attributes only for specific period of time? Let me answer this by giving you another scenario.
You have to remember, that for one key of Info Object (in this case Material MAT01) there has to be records for every date from 01.01.1000 to 31.12.9999 – date from every record should fulfill time interval. If you miss periods from interval like I did in “Fig. 2A” where I missed 01.01.2000-31.12.2009, SAP will automatically add same key for the missing interval with empty attributes as seen in “Fig. 2B”.
If you got curious and would like to maximize the use of your time dependent attributes in PaPM, then you must continue reading as I intend to guide you on how you can actually use these time dependent attributes in PaPM accurately.
Let us begin.
Time dependent attributes are supported in PaPM through keydate parameter which gets automatically added in the parameter tab of Model BW function (Model BW Source: Business Warehouse) after activation.
For both display and navigational time-dependent attributes, there are 3 options for maintaining keydate value:
- Leave the field empty – current system date will be used in such case.
- Fixed date entered, example: 10.05.2015
- Define PaPM parameter, that will be treated as variable in the succeeding function that uses Model BW as an input function. Example From: I_KEYDATE
Regardless of which option above has been chosen to maintain value for keydate parameter, attribute values will be taken in accordance to the keydate value assigned. Meaning keydate will be used as a driver for tracking history, time changes in attribute value assignment to the main characteristic value upon executing the function that uses the defined Model BW function as an input function.
Now that we know how you can assign keydate parameter value in Model BW, remember that keydate must be defined as a fixed value – leaving it empty will automatically set the keydate value to current date; or use parameter to have flexibility to choose between attribute ranges available.
With the flexibility the keydate can offer combined with navigational attributes which behave as ordinary field in PaPM the data model becomes more flexible in changing business environment.
By this point I have already given you almost all important information you will need to be fully comfortable in integrating Attributes with time-dependency feature in your PaPM environment. So as a last section of my blog post, let me give you a scenario and how keydate can affect the result in another PaPM function which is being used in reporting, the Query function.
We have data that contains Material and Quantity. Material has two time-dependent attributes: Sales Manager and Package Color (both navigational) – check Fig.4 and 5.
Query Setup 1: Blank Keydate
Result of simple query when You leave Key date field as empty in Query function:
When you do that, it will take attributes which would be defined for actual system date:
Query Setup 2: Filled Keydate
When we change Key date, e.g. 01.01.2017 the results are:
In Query setup 2, results show time dependent attributes defined for specific Key date posted in query definition. Query results will take attributes for this particular Key date according to what has been set in the Master data of characteristic.
Now you have a basic knowledge about attributes of InfoObjects. You can use them for extending InfoObjects that you created. Also, usage of attributes can help you to simplify transactional data or you can use it only for reporting purposes. And since you now know something about time-dependency too, you can easily track down history of InfoObject’s attributes. I encurage you to use that knowledge and expand your environments in SAP PaPM with attributes functionality.
In case you want to know more about BW integration with PaPM, do not hesitate to leave a comment or suggest a topic for my next blog post.
Thank you so much for reading through and happy configuring!
Did you notice that the query functions in my examples used input function named “MV – calc.view based on ADSO” ? in case you want to know the answer you can read further as a bonus topic.
In previous blog post, Using SAP BW Characteristic Attribute in SAP PaPM, I showed how You can use navigational attributes in query function. To summarize, another function on top of the Model BW (e.g View) must be created and must be used by Query as its input function. It is due to the fact, that you cannot use navigational attributes in reports that are based on aDSO (see SAP notes: 2185212 and 2215947).
In this bonus section I will show you how you can make use of navigational attribute without the need to use a processing function such as View or Join. In PaPM there is a feature that when You create Model BW function in PaPM, it will create not only aDSO object, but it generates external SAP HANA View on top of InfoProvider (in this case aDSO). Model View function is the best function to choose, when you want to work with time-dependent attributes.
Evidently in the screenshot below, the activated Model BW function generated a HANA View on top of it (in this case YD1004152).
Technical name of aDSO which is exactly same name of HANA calculation view. You can find it in HANA Studio (SAP HANA Administration Console perspective). Usual path is like:
System –> Content –> system-local –> bw –> bw2hana –> Calculation View
But it depends on configuration in system individually – ask your Administrator
Next, create Model View function and choose HANA View in Model View Source field. After doing this click on HANA View search. Then in HANA View field, paste the name of aDSO (check figure 9). And search for view of which SAP HANA table name will apply name: system-local.bw.bw2hana/[aDSO_NAME] (e.g. system-local.bw.bw2hana/YD1004152), but it depends of configuration in system individually – again: ask your Administrator.
Usually the physical schema name for BW content should be: _SYS_BIC.
Then click on Synchronize button and activate this function. After activation – Model View function is ready for further work, e.g.: queries for reporting purposes.