Creating a Telescoping View in the Planning Book

Background

It is a frequent request at different clients is to provide a telescoping view of the Planning Book. This means that they want to see the Planning Book in days, then in weeks, and then in months, and they want to specify how many periods they would like to show each (7 days, 14 weeks, 16 months etc.). In order to do this its necessary to perform configuration of the Time Bucket Setting. Unfortunately SAP does not ship with a standard telescoping Time Bucket Setting, so it must be created anew for each company during implementation. It’s a bit confusing to set, but once an example is shown, it is extremely simple. The following steps for creating the Time Bucket Setting was explained to me by Ralph Brown, an experienced SAP consultant who works both in SCM and in MM.

Instructions

To create this custom Time Bucket Profile, goto the IMG by typing in SPRO into the transaction box. The transaction is /N/SAPAPO/MSDP_ADMIN

In order to configure the Time Buckets Profile to be telescoping, its necessary to add multiple line items. Secondly, you can change the number of periods you want to appear by changing the number column. In this case there are 12 weeks shown, but we could change it to whatever number of weeks we want by altering this field.

In order to apply this Time Bucket Profile to the Planning Book, we need to first get to the Planning Book (The transaction changes depending upon which you want to add it to, in this case we will goto the transaction /N/SAPAPO/SNP94). To select the Time Bucket Profile button which is a yellow square with a clock in the upper left corner.

Next you want to select the Current Settings dialog button.

Then you can select the TB Profile that you want to apply to the Planning Book. After you open the Planning Book, it will show the time buckets along the top in exactly the periodicity and the number of periods per periodicity that you specified in the Time Bucket Profile.


Understanding Macros, Operators and Functions

Background

The Macro Builder in SAP APO is extremely difficult to interpret. One reason for this is that the Macro Builder uses functions, which are not explained within the Macro Builder itself.

For instance, when looking at the Days Supply macro, the function Cover_Cal( is used. This macro compares stock to demand in order to calculate how many days of supply are planned to be held for each period.

In order to understand macros, its important to have access to the functions that can be used in the macro. For SNP, these functions can be found at the link below.

Functions

The SNP functions are listed here.

http://help.sap.com/saphelp_scm50/helpdata/en/77/9aa339a28e0554e10000000a114084/content.htm

For instance in the standard Days Supply macro which is shown in this article uses the Cover_Cal( function as the main function in the macro. Full details exist at the link provided above, however, it is extremely difficult to understand can can take an hour to fully interpret. All the definitions are like this in SAP and really need to be translated into standard English. In fact I worked on a project where the client created definitions of each standard SAP macro and custom macro that they use. This is a good decision, because the Macros themselves are difficult to understand.

This returns the days supply of a product by considering the current stock on hand, the total demand of subsequent time periods, and the number of workdays in this time period. – SAP Help

Operators

In addition to functions, the Macro Builder can add operators. As with functions, these are added to the Macro Builder with the operator/function icon.

http://help.sap.com/saphelp_scm50/helpdata/en/f3/852d3af6ecd02ae10000000a114084/content.htm

These operators are listed below:

http://help.sap.com/saphelp_scm50/helpdata/en/1d/310ea4d0ee11d4b2e40050da385632/content.htm

Some of them are exactly as one would expect, however, one which is not intuitive is the “;” which is a separation between arguments. Overall the operators are very deep in functionality. In addition to mathematical operators SAP has several other types including statistical.

http://help.sap.com/saphelp_scm50/helpdata/en/1d/310ea7d0ee11d4b2e40050da385632/content.htm

Within the statistical operators there are standard forecast error calculations including MAD, MAPE and MSE.

Boolean functions allow for coding like capabilities are are listed here.

http://help.sap.com/saphelp_scm50/helpdata/en/1d/310eaad0ee11d4b2e40050da385632/content.htm

The number of functions and operators is quite overwhelming, and after reviewing them, it seems that most any calculation is possible within a macro. The functions could be documented more clearly, but the documentation in the links listed in this post is very extensive. Something which I really liked was the link placed within the descriptions, that takes you out to the business purpose of the technical subject.

This way the reader can go directly to the business purpose.

The function/operator icon is also used to create an open and closed parenthesis.

Row Selection

The Key Figures that the macro works off of are called “Rows” in the Macro Builder. They can be added by dragging them from the Elements area.

They can also be changed by right mouse clicking and selecting Properties.

Once in properties, different Key Figures can be selected and can substitute for the original Key Figure.

After you are finished editing the macro, it needs to be activated and generated.

One of the major issues with macros is that the Key Figures are relative. Therefore if a new Key Figure is added to a Planning Book, the macros need to be checked, because they will refer a specific row in the Planning Book. The Key Figure can be changed by selecting them and changing them.

The main rule is when you add Key Figures, they need to be added at the bottom of the Planning Book. When moving them up, all of the macros below that Key Figure must be checked, because the Key Figures that are used in the macros will change.

Conclusion

Macros have very deep functionality with respect to functions and operators. While the Macro Builder is not intuitive or easy to understand already build macros, with research into the SAP documentation, they can eventually be figured out.


Importing Macros Between Planning Books

Background

Something which is very handy in Planning Books is that macros can be moved between them. If the macro name already exists within the Planning Book you intend to copy the macro to, its important to rename the macro. To do this we need to be in the Macro Builder, which is transaction /N/SAPAPO/ADVM. Once inside we need to choose the Planning Book.

Once in the Planning Book, we need to select the macro that we want to change. In this case it is Days’s Supply.

This is performed by right mouse clicking the macro, and going into properties and changing the name. In this case we will change the name to Days’s Supply_old.

Next we will want to deactivate the macro after we rename it, because it will still populate the Key Figure unless we turn it off. The Key Figure which the macro will populate is declared within the macro itself, and it comes before the “=” You can see this from the opened macro below.

We can deactivate the macro by selecting the macro header, and by selecting the deactivate button.

When it has changed the stoplight symbol from green to red, it has been deactivated.

The Import

Now we need to import macro from a different Planning Book. To do this we will select Edit from the menu. (or by selecting the green import icon).

Next, we need to select the Planning Book that we are importing from, and then the macro that we are importing.

The macro will then be imported and will populate the Key Figure that is defined in the macro.


Change Sales Order for Forecast Consumption

Background

One common necessity when working in and testing the Planning Book is adding a Sales Order to see what it will do with regards to planning. In this case I am creating a Sales Order to see how it consumes the forecast.

Creating Sales Orders, if you are not familiar with the Org Structure and other SD elements is an inefficient task. However, changing a Sales Order is much easier that that is what I will show today.

The first step is to find an old Sales Order, which is accomplished by going to transaction VA05 in ERP.

You then need to select a line item and the goto Edit from the menu, then select Fast change of and then select Delivery Date.

Here I am changing the date.

Afterwards you will get a number of error messages like the one below, just hit the green checkbox button.

Now we will get the delivery date message below:

Finally we will get messages regarding Issue Order Confirmation.

Since we are “reinvigorating” old Sales Orders, it is not uncommon to get a Credit Management Failure.

In order to clear this, one goes to the following transaction VKM3.

The order in question should auto-populate, and now we want to select the line item and then select the green flag.

Now, if the CIF is setup to automatically pull over Sales Orders, the Planning Book should populate with the Sales Order, if the date has been set to within the time horizon covered by the Planning Book.


The Lack of Flexibility in Filtration in Both SAP APO and Other Planning Systems

A big part of the effectiveness and usability of any planning system is the ability to focus in on specific products and product characteristics in the planner view and the alert system.

Background

I recently had this question sent to me which I though it would be interesting for other people to read.

Hi Shaun,

I read your great article “How to use the APO Alert monitoring for reporting” and have a question I hope you can answer. In your article you have the section quoted below – my question is has this changed in the newer versions of SAP APO? I.e. is it possible to sum the quantities and placing it as a denominator over another key figure, e.g. Gross Sales. The purpose as you surely know is to sort of all of the alerts that are not important, e.g. we are not interested in an alert for product that sells 4 instead 2 for a given subsidiary where the total sales is 40.000, but we most surely interested in knowing is a product sells 4 instead for 2 where the total sales is 10 (just examples).

Is there any way to accomplish this in the latest version of APO? – Questioner

Here was my answer.

Unfortunately no. The alert monitor has a lot of choices as for what to “report” on, but there is no flexibility to essentially create your own metric by combining other metrics in the way your describe. I actually put in a change request for a different software application I was working with to do something essentially similar. Planning systems need the ability to type in expressions to allow the alerts as well as the views to be totally controlled by the user because no developer can anticipate every view or alert that the planner would want or need.

Your next option would end up being a BW report, and that is an issue because then it would be some separate dashboard and the BW team, if you have one, likely has a huge number of requests for reports, and this one may or may not make the final cut due to the project budget. - Shaun Snapp

Below you can see a screen shot of the Alert Monitor configuration, and how there are not options for creating your own combination of metrics. The Alert Monitor is very straightforward. You select a metric, and then a tolerance which if exceeded creates an alert.

The Alert Monitor segments the alerts by module.

Interesting Topic

This is actually a very important topic. It is not a problem exclusive to SAP SCM. That is most planning systems I have worked with have restricted ways of setting up alerts and of setting up the filers for what is shown in the user interface. When one thinks about it, it is really the same thing. You are trying to setup a particular view that limits very specifically what the user sees. A more advanced filter which is described in the question above is actually based upon a formula or expression. That is a combination of different metrics. This is the type of functionality that is really necessary and can really be used by planners. The application I referred to in my response was Demand Works Smoothie. In this case the client wanted to be able to type in expressions into the Smoothie filter to get very specific targeted results. A big part of planning is simply shrinking down the product database to exactly what you want to work with to apply things different adjustments. The planning book provides more control that the alert monitor, but is still not where it should be. Outside of APO improvement in other applications is needed a well. Any application that could type regular expressions into both its alert system and its filter would really differentiate itself in the market.

Post Note

The most flexible viewing I have seen to this point is in a product called Optimza by Barloworld.

http://www.barloworldscs.com/bwlogistics/content/en/supply-chain-software/supply-chain-software-services-optimiza

I am not sure about its ability to use expressions, however it can segment the product database very effectively. There are a few supply and demand planning tools that run their system primarily on the basis of segmentation (A, B, C, D, etc..). Its is an interesting way of controlling the planning system which I will be covering in future posts at the SCM Focus Inventory Optimization and Multi Echelon site.

http://www.scmfocus.com/inventoryoptimizationmultiechelon/


Auto Model Selection in SPP vs. DP

Background

SAP DP has had a standard approach (actually two approaches Auto Model Select 1 and Auto Model Select 2) for a number of years. What is interesting is when the SPP development team decided to create an auto selection for SPP, they went in a very different direction.

Manual vs. Automated

With DP, there was never much choice. You can either use Auto Model Select 1 (which I don’t think ever worked) or Auto Model Select 2 (which does work, but often gave different results depending upon whether the routing was run in batch or interactively (i.e. in the planning book). However, with SPP, there is no simple running of best fit in this way. Instead, the profiles for auto selection must be created and the overall level of work is high. This is what the profile setup screen of SPP best fit looks like. This screen can be found at:

IMG: APO –> Supply Chain Planning –> SPP –> Forecasting –> Define Profile for Automatic Model Selection

These are the fields and the options that can be entered. As you an see, there is a quite a bit you can setup, however the downside to all of this is more maintenance.

Leading Indicator

The causal forecasting method in SPP is called Leading Indicator and to my knowledge this does not encompass the auto model selection you see above as auto model selection is for statistical forecasting.

http://www.scmfocus.com/sapplanning/2008/10/30/spp-leading-indicator-synopsis/

Why The Change in Approach?

There are a number of questions that arise when analyzing the auto model selection in SPP. The first would by why was a different auto selection methodology developed for SPP. Service parts do not, to my knowledge, have different best fit needs over finished goods products, and this comes across as more of a decision driven by the development team rather on a true business need difference.

The approach for SPP provides much more ability to manually adjust or customize the best fit outcome, but also makes the configuration much more involved. Also, the documentation on how the SPP Auto Model Selection fields are configured is not complete, meaning that some significant testing would be required to get the functionality to work. Also this level of complexity for “best fit” is unusual at least in my experience with forecasting systems because typically this functionality is a simple selection rather than a configuration. Here are how a few other vendors compare with the same functionality.

Other Forecasting Products

  1. Demand Works Smoothie starts off with the best fit as a default, and there is really nothing to configure.
  2. MCA Solutions ( a best of breed service parts solution),  has an ingrained best fit (when using statistical forecasting) that selects on the basis of the length and mean of the observed demand history, the trend, etc.., and the selection can be configured through just a single parameter (whether you want to hard code the forecast methodology or have it “Computed”) which means apply the best fit algorithm to the selection.

So I would rate both the above solutions are roughly equal in terms of the ease by which best fit can be initiated.

With regards to the setup for SPP, my intuition is that this configuration is over-engineered and that clients would prefer something more simple in this area. Knowing what I know about the more restricted budgets in service parts accounts I would have made SPP more simple and with fewer areas to customize vs. DP and SNP, not more complex.