Friday, March 21, 2014

How to access BW objects don’t belong to name space you are authorized to access

A disclaimer at first place: Notice that this blog post discusses activities done in debugger while changing the values of variables. Such activities are usually not supposed to be executed. Bear in the mind that you may cause serious harm into your system. If you decide to proceed with it do it only after real understanding of all consequences and only on development and/or test system.

Sometimes BW developer can face following situation. You need to do prototype of new functionality (let’s say data flow) in development system. However as per your developer authorization you get the aces to to customer namespace let say ZZ*. You do not want to create your prototype objects in ZZ* namespace. For time being and for prototyping purposes you would like to use YY* namespace. However once you are authorized to use ZZ* only every attempt to create any objects will be denied by system throwing error message (let’s say in dace of transformation):

You have no authorization for the transformation rule
Message no. RSM904
TLogo type of source: ODSO
Name of source: ZZ_DABC
TLogo type of target: CUBE
Name of target: ZZ_CBCD
For the transformation you require authorization for the authorization object Data Warehousing Workbench - Transformation Rules with the field values stated above and activities 03, 16, or 23.

There is a one function module (FM) checking your authorization. It is the FM RSSB_AUTHORITY_ADMWB_TR. By simply putting breakpoint after authorization check was called (in BE version SAP NetWeaver 7.3 SP08 it is line no 69) and changing value of sy-subrc to zero you can obey this error message.

No comments: