!--a11y-->
Personalization 
The concepts described so far for the component and application configuration referred to design processes that were implemented at design time by application developers. Personalization and customization, on the other hand, take place at runtime and are executed by users or administrators.
The user of a Web Dynpro application can influence, to a certain degree, the appearance of a screen in the view displayed in the browser. The Web Dynpro Framework provides for each single UI element the option of changing some of the properties of the implicit configuration (see the section Component Configuration). At present, this modification option is limited to the property Visibility. Without any additional effort for an application developer, therefore, the user of an application can hide or display individual UI elements on the view currently displayed.
End users can therefore mainly only hide elements on the screen. But they can also move table columns, define the number of rows visible in a table, and predefine values.
To open the relevant dialog process, the user positions the cursor on a UI element, opens the context menu, and chooses the relevant option from the User Settings submenu.
Sometimes, however, it can be appropriate to personalize such properties that were created with the help of explicit configuration in the context of the configuration controller. In this case, the dialog for user access to values of the configuration controller context must be created and programmed in a separate view explicitly by the application developer.

Note that the system saves the data for the implicit and the explicit personalization together for each memory action (including actions such as an end user removing a button at runtime). However, you can specify that the system should save only the changed explicit data and not the entire content of the configuration controller. To do this, call the SUPPORT_DELTA_HANDLING method at the IF_WD_PERSONALIZATION interface.
In addition, the jump from the personalizing view to the personalization dialog must be created and implemented actively.
In the demo application WDR_TEST_PERS_IMP_EXP, which is contained in your system in the package SWDP_TEST, you can find a personalization view PERS_VIEW.

In the
application you can specify that the end user is not to have the
personalization option, (application parameter
WDDISABLEUSERPERSONALIZATION),
or in each Web Dynpro component you can specify that implicit personalization
is not required for the end user or administrator.
If a personalization dialog is created explicitly by application developers, it can be appropriate to also embed the personalization of the implicit configuration option – for example, on an additional tab page. In this case, the user would have the advantage of uniform handling. Embedding takes place with the help of a component interface already provided, whereby further programming of this implicit section of the personalization dialog is no longer required.
The prepared Web Dynpro component interface to be used is called IWD_PERSONALIZATION and provides an interface view that, in turn, must be embedded in the window of the component used. This interface has a method called INIT_PERSONALIZATION, which is called in a method of the main component (for example, WDDOINIT of the component controller). The reference to the view controller for the view element to be personalized as well as the ID of this view element must be passed to the method INIT_ PERSONALIZATION.
While a single user – during a personalization process – can manipulate his or her own settings, an administrator has the option of executing customizing settings for a larger range of users. Technically, this procedure is not different from personalization; both take place at runtime of an application. The difference lies in the range of the settings. In addition, an application for group settings must run in a special administration session. This is always automatically the case if an application was started in the portal in the preview session. Independently of the portal, you can start an application in the following manner from within the workbench in administration mode:
● Double-click the name of the application in the object list.
● In the Web Dynpro Applications menu in the upper left-hand corner of the Workbench window, choose Test ® Execute in Admin Mode
The configuration
mode is passed to an application as the
URL parameter
sap-config-mode=X.
All the adjustments made by the administrator in the admin mode are stored as client-specific. Presently no option is available for structuring smaller user groups on an administrative basis. Since cross-client adjustment takes effect for the respective configuration variant, structuring of smaller groups can be implemented currently through the maintenance of different configuration variants.
For personalizing an individual user, a context menu opens when the relevant element is right-clicked. In the corresponding context menu of an administrator (with the URL parameter sap-config-mode=X), you can access a dialog box for changing the settings of user groups.
An administrator can sort either individual rows (gridLayout, MatrixLayout, and RowLayout) or individual elements (FlowLayout) within a UI element container.
An administrator requires special authorization for client-wide modifications. This can be a developer authorization or the special authorization S_WDR_P13N. You cannot create configurations at design time with this authorization, but you can make modifications at runtime.
These modifications are valid for all users but take place in a single client.
The context of a
Web Dynpro application is often based on the structure of the ABAP Dictionary.
Customers can enhance these structures by adding any number of fields without
modification (
Append Structures)
or by using CI fields (
Customizing
Includes). You can make fields of append structures or CI fields visible
at runtime using the client-wide adjustment in the application
layout.
More Information: