Even though we used parameters prefixed with PERS* in our PARAMETERS function profile and assigned this parameter profile to our business role, sometimes we see the issue that this system wide personalization doesn’t work, or it doesn’t work for some users.

What shall we do to resolve this “System wide personalization doesn’t work” problem?

In this Blog, I will take PERS_TOAST parameter for instance.

Issue:

Even though we did relevant settings as in steps below, automatic message preview and expansion didn’t work.

1. Regarding parameter PERS_TOAST

Parameter PERS_TOAST is used to enable automatic message preview and expansion.

1-1.Without Parameter PERS_TOAST:

1-2.With Parameter PERS_TOAST, which is the behavior we expect:

2. The relevant parameter customizing and profile assignment is done.

Go to SPRO and then Customer Relationship Management > UI Framework > Technical Role Definition > Define Parameters. The set and assign this parameter PERS_TOAST to parameter profile ZLJTEST.

Assign above parameter profile ZLJTEST to my business role Business Role:ZLJSALESPR.

Analysis and root cause:

At Runtime, the personalization settings are checked sequentially, first on User level, then on Business Role level, then on PFCG Role level and finally on System level. As soon as a value is found we stop. It means that if a User has already some personalization options set, your setting for the Business Role (System wide personalization) will not apply.

This user will have first to reset its personalization options.

You can check or do the debugging in following method to understand the logic more.

Class CL_THTMLB_PERSONALIZATION
Method     GET_PERS_DATA
* Personalization data is checked on 4 different levels as soon as data is found, the
* process is stopped:
* 1 – On user level
* 2 – On Business Role level, if a PARAMATER has been set on the PARAMETERS function profile
* 3 – On the PFCG role linked to the current Business Role (set via SPERS_MAINT)
* 4 – On system wide level (set via SPERS_MAINT)
* P_PERS_LEVEL allows the calling method to decide which levels they want to check. They can check 1-4, 2-4, 3-4 or 4.

Solution:

1. For single user

You can reset single user’s personalization options via T-code: SPERS_MAINT -> enter user ID -> click edit object button (F2) -> select personalization object key.

For this instance, we will find and double click personalization object key CRM_THTMLB_PERS_TOAST.

2. For multiple users or all users,

If you want to delete the personalization of a parameter of all users or multiple users at once, you can do so by manually deleting all the entries in table:SPERS_OBJ.

Ensure that you specify to delete the entries with the PERS_KEY = XXX and PERS_TYPE = U. XXX should be replaced with the Personalization Key of the personalization that you want to be cleared.

Note:Regarding Personalization (object) Key in above solution 1 and 2, you can find an attached PDF in SAP Note 1701936, then you can find the personalization object key in this attached PDF as below. For this instance, we will find the personalization key is CRM_THTMLB_PERS_TOAST.

For this instance, we delete the entries with the PERS_KEY = CRM_THTMLB_PERS_TOAST and PERS_TYPE = U for the relevant user according to above solution 2.

Other info:

Check box “Enable automatic message preview and expansion Save” in personalize settings popup can be added by applying SAP Note 2062604 – Message Area Usability Enhancements.

To report this post you need to login first.

Be the first to leave a comment

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

Leave a Reply