Everytime I work on Trade Promotion Management, I am always in awe of how beautifully the product is designed and how seamlessly it works integrating different systems like CRM, BW and S/4 HANA.
Having said that I am also bogged down with the multiple issues that come up when you are configuring the Trade Management CRM UI and trying to make all the pieces work. And even if you have worked on it in the past, every issue comes with its own set of challenges and you feel helpless at times not knowing what to do next. In the recent project I did as well, I faced multiple issues and thankfully I had the help from some of my peers who have been through this journey in the past as well as the product team who used to guide us on the way forward.
There are two helpful blogs below already on the topic which will guide you on your Trade Management BW journey.
However, these blogs might be on slightly older versions of Trade Management. I have tried to document the issues we faced while working on Trade Management 4.0, FP6 and the resolution with the hope that it would be helpful for others who are in the same journey.
While creating a Plan in the CRM UI Screen, we got below BSP error.
In SU3 maintain the decimal settings. Change it from 1.234.567,89 to 1,234,567.89 in both CRM and BW systems. The decimal settings should be the same in CRM and BW system for your use ID.
2. PSM Initialization Failed for Object due to synchronization error
This is actually a common error which can occur due to multiple reasons. But usually its because the sync method is not able to create the combinations of the Plan data in the BW DSO and so the query read fails as there is no data.
When we debugged this, found that the Sync method was failing with below error.
As per the error, the Sales organization has not been mapped to fiscal year variant. The reason was that the DSO /JBPB/SAFV_M was not loaded.
The system checks the mapping of Sales Organization and Fiscal Year Variant in this DSO. The issue was resolved after loading data in this DSO.
3. Roll-in Planning Function not working
The reason was in the Code for Roll-in Planning function the data from /JBPB/IPLAN DSO was not getting read. The selections were passed correctly and data was there in the DSO, but it was still not getting read.
Then we found that there is a customizing setting in which we have to enable the Plan DSOs to be used in Planning Engine.
When we tried to maintain the setting here, we got a short dump.
We found one OSS Note (2899115) that has to be implemented to fix this, but since we did not have much time and the Note was getting updated, we decided to write a custom program and add the entries in the below standard table directly.
After updating this, the data started getting read from the /JBPB/IPLAN DSO in the planning function.
4. Short Dump while trying to activate DSO /JBPB/IPRSTG
While trying to activate DSO /JBPB/IPRSTG we were getting a dump in the development system.
The reason is the DB connection that is maintained in RS2HANA_View transaction code is missing from DBCO transaction.
After maintaining the DB connection the issue was resolved and we could successfully activate the DSO /JBPB/IPRSTG.
5. Trusted RFC Connection not working
When we are working on TPM, we need to set up two RFC Connections in the CRM system. One will be the usual RFC connection that we need to create for the source system connection in BW. The other RFC connection will be a trusted RFC. The trusted RFC connection will have a Current user selected in the settings which means that whenever the data is read in CRM UI from BW, the current user is used instead of the background user.
So whenever we want to debug any errors in the CRM UI, we can easily set breakpoints with our own user ID in the BW system, if we use the trusted RFC. If we do not use the trusted RFC and use the other generic one, then we have to debug with the common background user which will be same for everyone, so other people using the system will run into the breakpoints that you set.
Usually the basis team will create trusted RFC with the name *_DEBUG eg. BWCLNT100_DEBUG.
You need to maintain this trusted RFC in the parameters in SU3 transaction in CRM system. The system will use the trusted RFC for the communication with BW only if you maintain it in the parameters in SU3. If you do not maintain it then common RFC will be used.
Once this is updated, you can perform debugging and troubleshooting with your own ID.
If your basis team needs any help with trusted RFC configuration you can use the below mentioned blog which is very helpful.
After applying OSS Note above and updating user parameters to use trusted RFC, I was able to debug with my user ID.
6. Total Promotion Investment Value was not matching with Reserved/Prereserved values in the Fund usage
The issue was with the standard BW query /JBPB/C_PRM_PROMO_KPI_Q004. This query is used for the calculation of the Total Promotion Value that is displayed on the right side of the promotion screen. The calculation view in the standard query is not used now and should be replaced with the DSO /JBPB/ILTA.
So we created a custom query which is a copy of the standard query and replaced the Infoprovider with the standard DSO /JBPB/ILTA. Also remember to update the Z query in your config in CRM to replace the Promo KPI monitor standard query with the Custom query.
It worked fine after making the above changes. The prereserved value was populated along with the Total Promo Investment in the Promo KPI Monitor screen.
7.In promotion screen, Tree View was not loading. Even in Tree view we could see flat view data.
The problem was we were using custom Queries for Promotions that we had copied.
And there is some standard code to change Query filters which was executing only for standard queries. We have to update this code to implement it for the Custom queries as well that we create
Create custom Badi Implementation for BADI IMP_QUERY as shown below and create Custom Class which will be a copy of the standard class
Also activate this BADI in SPRO.
8. When we tried to create a new Version for Operational Plan, it was throwing BW planning function errors
When we debugged and checked the BW Planning function for Version Creation was failing because value '9' did not exist in /JBPB/SCINDIC InfoObject.
The solution was simple that we had to maintain master data for the Source Indicator Object. This should have values 1, A, B, C and 9.
So we maintained the value 9 as below :
After maintaining the master data, we were able to successfully create a new version for Operational Plan.
9. When we tried to compare different versions then we were getting below error which says Invalid Query
On checking more we found that the BW Queries for Version Comparison were not active in the BW system.
Below are the queries which we need to activate for Version Comparison.
Version Comparison PNL Query
Version Comparison PNL Product Tree
While activating the query in BI Content we were getting following error:
We found an OSS Note for this issue which is below