cancel
Showing results for 
Search instead for 
Did you mean: 

ATP check performance issue for multiple product/location

Former Member
0 Kudos

Hello experts

We are facing an issue with a user specific report in APO: for each combination of product/location our goal is to simulate an availability check as it can be done in standard transaction /SAPAPO/AC04.

In order to do this, we used a specific FM Z_AVAIL_CHECK_CONTROLLER which is a copy of /SAPAPO/AVAIL_CHECK_CONTROLLER without the calling of /SAPAPO/ATP4_ATP_EXPLAIN.

The implementation works but it is taking too long time due to the volume we have (1 hour for 10 000 records used in test mode) and we haven’t found any bottleneck (cf TRACE.txt) .

Note that this report could ultimately be used for a maximum of 300 000 records.

The business need is to have a report showing for each combination of product/location three different ATP simulations based on three business events. This will help the user choose in a parallel process which business event is best fit for all these entries.

3 business events are used in GATP for each entry, so 30 000 ATP values are expected in foreground execution of previously mentioned test (3 x 10 000).


Do you have an alternative technical solution that could meet our client’s business need?


thanks in advance!

Accepted Solutions (0)

Answers (1)

Answers (1)

RahulHanda
Active Contributor
0 Kudos

Hi Gilles,

Did you compared with standard report AC04 i.e. how much time it takes? Of course as per your requirement you don't want to call /SAPAPO/ATP4_ATP_EXPLAIN but first check whether custom development is the one which is creating this issue.

Though it would be nice if you can explain what scenario you are trying to achieve?

Regards

Rahul

Former Member
0 Kudos

Hello Rahul,

Thanks for your quick answer.

Unfortunately in transaction mode it doesn't seem possible to use multiple products and/or locations.

This is basically what the report should look like:

The three orange column are the reflection of an ATP check for each product/location (material/plant in R/3). Each represents a different business event from GATP customizing.

RahulHanda
Active Contributor
0 Kudos

Hi Gilles,

Exactly is the point. In standard report also we have one material and location and both are mandatory fields. This means you can go for one combination with one business event at once.

Now in your case you have mentioned 10000 records were tested in 60 mins (more or less). This means in 1 minute; 167 combinations were checked. Almost an average of 3 combinations per second. I am not saying this is good or bad w.r.t. performance but think with one combination in AC04 how much time will it take (I hope same as in your report). Of course business will not like to wait for this long but I don't think it's that bad.

Though I can suggest couple of things:

  • If possible try to put parallel processing profiles in your custom program and then try. This way you can run in parallel number of combinations.
  • If you/business know that they have specific time at which this has to be executed, then plan accordingly that 1~3hrs in advance before business starts their work. For this, then you need to capture results somewhere so that they can see when required. Example creating a spool and generating Excel out of this.

If this helps do follow

Regards

Rahul

Former Member
0 Kudos

OK Rahul, but standard FM can hold multiple attributes (product/location) unlike the transaction so I thought it might be strong enough to hold a large volume with sufficient speed.

Thanks for your ideas, we have implemented the parallel processing yesterday, testing on integration environment will be possible tomorrow, I'll tell you if it helped enough.

This report is supposedly dynamic, but I am thinking of doing the ATP check after forecast and before the end of the process chain. The problem with this is that ATP values may not be the exact same between the moment the PC has calculated and the moment when the user will look at the results on his report. The two should be done simoultaneously though.

thanks for your input, I'll leave this thread open a few days longer in case someone else wishes to add something.