cancel
Showing results for 
Search instead for 
Did you mean: 

Script Logic Performance Options NW SP4 - *GO, *COMMIT_EACH_PERIOD?

Former Member
0 Kudos

Hello everyone,

I've created some script logic in SP4. The good news is that it works, but the bad news is that it's not as fast as I would like, especially since it will reside in default logic. That being said, the trick with this logic is that anytime data is loaded for certain accounts, it needs to recalculate values from the first period of the budget, push a value to the next sequential period, calculate again at that period, push a value to the next period again, etc...

So, I've got some *WHEN's, *LOOKUP's, and *COMMIT's to get the job done, but I feel like I have too many commits to have decent performance. In the SQL version, I would have used *GO's or other commands to shorten the code and/or do this quicker, but I don't feel like I have as many options in Netweaver SP4. Anything I'm missing out there folks?

Thanks,

Grant

Accepted Solutions (0)

Answers (1)

Answers (1)

SEdelstein
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Grant-

From a performance perspective there are at least two items you might consider:

1. Are there any MDX based commands in your code? The processing of MDX based commands is known to be significantly slower than pure SQL based commands. If you have and code using [dimension].[member] then you might consider rewriting those portions using SQL techniques.

2. For very complex script logic code, you might consider the option of replacing the script with a BADI call. ABAP can be extremely efficient, however the downside is you will need to create and maintain a custom program.

Regards,

Sheldon

Former Member
0 Kudos

Thanks for the ideas Sheldon.

No, I'm not using MDX in any of my statements. It's pure sql, and my main issue is that I just have too many commits. We're going to consider going down the ABAP road or putting more of the logic into the input template. I appreciate the ideas.

Thank you,

Grant

Former Member
0 Kudos

Hi Grant,

Would you mind posting an example of how you handled the fact that *GO and *CALC_EACH_PERIOD aren't supported in the NW version of BPC?

I'm struggling with a custom rollforward calculation right now that requires a value for a previous period be commited before I can calc the next period. This is going to necessitate many inefficient commit statements. In the MS version I could just use the CALC_EACH_PERIOD keyword.

Thanks.

- Mike