Calculations in SAP SOP on HANA

I just thought of tossing in few ideas on how the SAP SOP on HANA  supports calculations. I am going to write down here what I understood, which may be incomplete or only partially accurate, but with the product at a very early stage, perhaps some of you readers will benefit from this information.

Take it as a point of view POV :-), I am sure SAP will soon come out with some very thorough material.

Because of my involvement in a quite complex proof-of-concept I learned that SOP supports three ways of computing key figures. Each presents pros and cons and the choice is typically dictated by the limitation of each method.

Calc Engine

SOP comes with a set of configuration tables required to define the key figure calculations starting from stored key figures. The available operations are following the operators of the T-Rex engine: there is some good material in internal SAP wiki, but I have not found a public asset yet. This type of calculation is typically used for simples models or for defining custom specific key figures derived from the key figures calculated via Planning operators (see the sections below). In my view the main limitation of this method is not about whether or not a certain  mathematical operator is available but rather the inability of computing key figure whose calculation requires values in other time buckets. In mathematical terms, parabolic cases (where the value at bucket "n" depends on the value at value "n-1") are not supported.


SAP has developed an internal language that is supposed to be used only by development in the current stage. The L-calculations allow to resolve the gap described above and allow for the calculations of key figures depending on values in the past or in the future. The syntax is not so attractive, when I look at it, but this kind of scripts do the job. I am not yet knowledgeable about the performance of this calculations, but in my experience at least the Projected Stock works well. I am about to adapt one script to my customer case, perhaps later I will post some impressions on the experience. The typical example of this calculation is the projected stock, which reads:

Projected Stock (n) = Projected Stock (n-1) + Receipts (n) - Supply (n) .

Planning Operators.

SOP on HANA supports much more complex operations, which for reasons of performance are supported technically by different solutions. Let me give some examples.

1-SQL scripts operators

As you may know, as of now SOP does not allow to copy the content of a calculated key figure into a stored one with a simple configuration setting. For this operation one would need a Planning operator. Planning Operators may be written in SQL scripts and require a trigger to start their execution. Keep in mind that SAP consultants are not given the ability to work on SQL scripts (yet?!), as access to the SOP servers via HANA Studio is not granted to people outside the development team.

Another operator that falls under this group is the Forecasting operator, in case your projects requires forecasting capabilities. Again, this class of operators is written in SQL scripts: if you are interested, you may find a good SQL script reference documentation here. Typically every new operator required for a customer project will fall under this category. Currently SAP has no extensibility concept yet, but we all know this is an early product adoption stage, and it is reasonable to envision that SAP will soon release version supporting this feature.

2-The SCM Planning operator

Sales and operation planning requires the ability to perform calculations over a network of location-products. The supply chain is modeled here with a given set of Planning objects representing among others Locations, Products, Customers, Lanes (Customer-Product-Location and Location-Product-Ship-from-Locations), Resources etc.

I will blog on this operator piece by piece as it is in itself very complex and requires dedicated posts. In general what we can say is that this operator performs in the current version demand propagation, demand netting, supply calculations and stock projections.

The SCM Planning operator is written in C++ and it is the first of a number of operators that will soon make of SOP a very compelling tool, in my view beyond the current label of "S&OP".

For this class of calculations, one needs to learn the model, both in terms of Planning Objects (SAP now calls them Master data, but I don't particularly like this definition as it does not fit very well the case) and Key Figures. Also in this case, I am sure that SAP will soon release the official documentation.

If you are interested in the topic, write to me and I will put you in contact with the right development folks (if I cannot answer myself).