This short note is for passing on a nice way of modeling Capacity Supply for the Heuristic model (or any other CALC model you are considering). The customer I am working at came up with this idea, and I had just to discuss the option with one of the best developers to come up with this final design.
The idea is that rather than specifying the Capacity Supply as a “total”, stored key figured as required by the Heuristic API model, one would change it to a calculated one expressed as:
CAPASUPPLY = CALENDARDAYS – DOWNTIME.
The issue we faced was that CALENDARDAYS does not depend on any planning level combination and S&OP requires until now always a planning level to be defined. We did not want to have any location dependent calendar days or else and we then introduced the nice feature of time profile attributes.
From release 3 on it is possible to define a Time Profile attribute at the level you want. For us it would of course be the finest in granularity, that is on the monthly bucket level. In our case we declared the CALENDARDAYS as an INTEGER. After adding this attribute to the time profile we of course loaded the data once for the whole time profile data sets.
Then, by adding the CALENDARDAYS to the planning level, we made this value available for any calculation and we switched the CAPASUPPLY from Stored, to Stored/Calculated where the base level would be obtained by the relationship detailed above.
Finally DOWNTIME would be the number of days the Resource would not be available in your finest time bucket.
I have been told that this feature was not really designed for this, but as this is a practical and relatively easy use case, I hope someone of you guys out there can make use of it.
Finally pay attention to one thing: as the CALENDARDAYS is a planning level attribute, the calculation will only work if you would have loaded the key figure DOWNTIME, even if the DOWNTIME would be NULL. Without loading the planning objects combinations for the key figure DOWNTIME the CALC engine would not find the planning object combinations and the PERIDs required to fill the content of CAPASUPPLY.