1. Purpose of Development
The User ID Changes done for Harmonization of User ID project will have a direct impact on all BW users who has created Queries, Workbooks or Settings for Information Broadcasting. This development is for updating the Old User IDs with the New User IDs in the relevant tables.
Reasons for this Impact are explained below.
Queries:
Some queries are visible only to some users or Queries created by user cannot be changed or displayed by other users:
This is because of restriction in the authorization object S_RS_COMP1. This can be solved by changing the values of RSOWNER field in RSZCOMPDIR table.
Workbooks:
- 1. When a workbook is created and saved it will be saved in the Favorites of the User.
- 2. If the user assigns it to the role, then the other user with this role will have the complete access to this workbook.
- 3. If the user did not assign this to the role, then we can copy the favorites of the old user to make the workbook accessible. All the favorites are stored in the table SMEN_BUFFC.
- 4. To copy the favorites we can either change the contents of the above table or use the regular way of downloading and uploading the favorites.
Information Broadcasting:
When a setting for the Information broadcasting is created, a background job with the user name will be created and ABAP program RSRD_BROADCAST_STARTER will be triggered with the same user name. This program will access the table for the authorization user mentioned in the table RSRD_SETT_NODE_A.
Due to this process, we have to change the user in the background job and the authorization user. Background user can be changed using TBTCP and the authorization user can be changed in the table RSRD_SETT_NODE_A.
Before doing the changes in the user ID we will have to implement the above mentioned changes so that there is not much effect on BW users after their ids are changed. We will have to design ABAP programs accordingly so that the required changes could be done in the standard tables mentioned above. Logic which needs to be implemented is discussed below.
2. Program Logic
As per the cases given above we have different logics to be implemented for smooth processing of user id changes.
Changing the created user ID of queries:
- A file with mapping between Old User IDs and New User IDs should be maintained.
- Upload this file in to the internal table.
- Select all the entries from the RSZCOMPDIR table where the Old User IDs from the file is equal to the RSOWNER field data.
- Overwrite the Old User IDs with the New User IDs available in the file in the table RSZCOMPDIR table.
Updating the user ID for Information Broadcasting :
- A file with mapping between Old User IDs and New User IDs should be maintained.
- Upload this file in to the internal table.
Updating Table RSRD_SETT_NODE_A:
- Select all the entries from the RSRD_SETT_NODE_A table where ID field is equal to ‘DI_AUTH_USER’.
- Update the value in the field VALUE with the New User ID which will be available from the file.
Updating Table RSRD_SETTING:
- Select all the values from RSRD_SETTING table.
- Update the fields OWNER and LASTCHANGEBY with the New User IDs.
Updating Table TBTCP:
- Concatenate ‘SE’ with the SETTING_ID from the RSRD_SETT_NODE_A table (Data in the internal table can be used).
- Select JOBNAME and JOBCOUNT from the table TBTCO table where JOBNAME is equal to the concatenated value of the SETTING_ID and JOBLOG field is blank.
- Select SDLUNAME and AUTHCKNAM from TBTCP table where JOBNAME is equal to TBTCO-JOBNAME and JOBCOUNT is equal to TBTCO-JOBCOUNT.
- Update the values of SDLUMANE and AUTHCKNAME with New User IDs.
Copying the Favorites across the User IDs for Workbooks:
Method 1:
- Download the favorites using the Program RSFAVODL.
- Upload the file back from the new User ID using Program RSFAVOUL.
Method 2:
- A file with mapping between Old User IDs and New User IDs should be maintained.
- Select all the data from the SMEN_BUFFC table where UNAME is equal to the Old User IDs in the file.
- Update the Old User IDs with the New User IDs.