Skip to Content

As I was reading through the Business Planning and Consolidations, version for SAP NetWeaver (BPC NW) forum today I noticed that there were various questions regarding Data Manager and more specifically around Data Manager and the various Business Add-In’s (BADIs) that are now available in Business Planning and Consolidations 7.5, version for SAP NetWeaver which is now in Ramp Up.

While attempting to answer one of the questions it dawned upon me that the way that Data Manager Packages are executed, asynchronously in the background, make them challenging to troubleshoot and/or debug. In fact even if you set an external breakpoint in a BADI or a Process Type’s implementing code within the data manager package, the breakpoint will be skipped because the overall process is being run in the background.

So I decided to outline a quick and easy way to change the execution of Data Manager Packages from asynchronous to synchronous so that a data manager package can be executed in a dialog process and debugged by a BPC BADI developer.

If you are implementing a BADI, for our example let’s say you are beginning to implement a retractor BADI and you want to analyze the signature in order to understand the interface of the BADI itself. For this example I am going to assume that the BADI itself has already been properly setup via transaction SE19 in your SAP BW backend system.

First, you need to set an external break point within the BADI you wish to analyze.

image 

 

Within SAP Business Objects Planning and Consolidations, version for SAP NetWeaver there is an extremely useful feature for troubleshooting that we will employ here, assigning debug users. You can assign a debug user (an ABAP backend user) to your Windows Active Directory user / CMS user that you login to the BPC frontend with. To perform this assignment login to your .NET Server and launch the BPC Server Manager, choose the Server Menu and in the dropdown choose Maintain Debug Users.

image

 

Once you have selected the Maintain Debug Users option populate the User ID text field with your Active Directory or CMS User ID. In the Debug User ID text field enter the backend user you want to debug with inside of your SAP BW system and within the Debug Password text field enter your ABAP User’s password.

 

image 

 

Once you have entered the necessary options click on the update button and restart the IIS Server. This will change the user the .NET Server uses to login to the BW System from the standard BPC NW Service Users to the above defined ABAP User.

 image

 

 

 

Now login to the backend SAP BW server and navigate to transaction SE80. Enter the UJD (Data Manager) package and click on the glasses icon to the right of the text field. Under the Classes menu find the method RUN_PACKAGE and double click the method. Scroll down the method implementation until you reach line 65, at that point create an external breakpoint at that line.

 

 

Now from BPC for Excel click on the package that you want to run, populate the prompt values appropriately and click finish.

 

 

Once you click on the finish button you should see your SAPGUI screen flash and the external breakpoint within the RUN_PACKAGE method of the CL_UJD_START_PACKAGE class. Next double click on the LF_SYNCHRONOUS variable within the RUN_PACKAGE_P method’s importing parameters.

 

Within the Variables screen double click on the pencil.

 

Enter the value X in the resulting text field and hit the enter button.

At this point you have changed the method of execution for the data manager package from asynchronous to synchronous and can now hit F8 or the continue button to hit the breakpoint you created within your BADI implementation.

 

This technique can be employed to debug any and all aspects of a process chain or any BADI’s that are leveraged within the BPC NW Data Manager framework.

I hope that his lesson helps those out there implementing BPC NW troubleshoot your various data manager issues more effectively.

Cheers,

Scott Cairncross

Enterprise Performance Management RIG

To report this post you need to login first.

10 Comments

You must be Logged on to comment or reply to a post.

  1. I would like to ask you how to debug an start routine or end routine in a transformation file.
    This method works for this process?

    Thanks in advance.

    (0) 
  2. Vasu Mullapudi
    Hi Scott,

    Very informative post.

    I followed the steps and mapped the debug user to BPC user and restarted the IIS. However the process still doesnt stop at RUN_PACKAGE_P method.

    When I checked in Process View screen (SM50) I see some proceses with BPC_SYSADMIN but nothing with the BPC User am using to run the package.

    Could you point me to Hi Scott,

    Very informative post.

    I followed the steps and mapped the debug user to BPC user. However the process still doesnt stop at RUN_PACKAGE_P method.

    When I checked in Process View screen (SM50) I see some proceses with BPC_SYSADMIN but nothing with the BPC User am using to run the package.a

    Any other settings that I should check to make this work.

    Appreciate your help.

    Thanks,
    Vasu

    (0) 
    1. Scott Cairncross Post author
      Hi Vasu,
      I have had this problem as well from time to time. Sometimes it appears that after you input the settings for the DEBUG user in the Server Administration Client that it just does not take.

      In the case that it does not take I would restart the .NET Server… The entire machine. I know that is not ideal but this has solved things for me more often than not.

      Cheers, Scott

      (0) 
      1. Vasu Mullapudi
        Thanks Scott.

        We have tried that already. Now we have a new problem due to the restarts . No application sets  found in BPC now. Still working to fix it.

        As an alternative to debug user mapping(before restart), I’ve changed the BPC_SYSADMIN to dialog user (from service user) and used it for debugging. It worked.

        (0) 
      2. Vasu Mullapudi
        Thanks Scott.

        We have tried that already. Now we have a new problem due to the restarts . No application sets  found in BPC now. Still working to fix it.

        As an alternative to debug user mapping(before restart), I’ve changed the BPC_SYSADMIN to dialog user (from service user) and used it for debugging. It worked.

        (0) 
      3. Vasu Mullapudi
        Thanks Scott.

        We have tried that (BPC System and .Net server and IIS restarts) already. Now we have a new problem due to the restarts . No application sets  found in BPC now. Still working to fix it.

        As an alternative to debug user mapping(before restart), I’ve changed the BPC_SYSADMIN to dialog user (from service user) and used it for debugging. It worked.

        (0) 
  3. Kusumastuti Tyas

    Dear Mr.  Scott Cairncross

    I want to ask something..

    Are we login in BPC using user debug or using BPC user that associated with user debug? I am very confused. Please help me..

    Thank you so much.

    Best Regards,

    Kusumastuti.

    (0) 
    1. Zane Connally

      Hi Kusumastuti,

      You log into BPC using the “AD User” and you log into BW (SAPGUI) using the “ABAP User”.  The actions you perform with the “AD User” will be executed on the BW server using the “ABAP User” – so the debug screen will pop up under the “ABAP User” who is using SAPGUI.

      Regards,

      Zane Connally

      CSA Analytics

      (0) 

Leave a Reply