!--a11y-->
Component Configuration 
With component configuration, you can control the behavior of each individual component within a Web Dynpro application, or the user interface of individual views. For each component, several records of configuration data can be created. These data records contain different types of attributes, implicit and explicit attributes as well as administration data.
A component configuration consists of:
● General administration data
● Explicit configuration data
The availability of a configuration controller in the component is a prerequisite.
On the left side there is a hierarchical list of available context nodes with associated elements, whereby each element can have attributes. The number of elements and the attribute values can be changed. The number of elements can only be changed if the nodes have been defined with 0..1, 0..n or 1..n.
● Implicit Configuration data
On the left is a hierarchical list of views and the UI elements located in them. Next to this on the right are the changeable properties of each UI element selected on the left.
Included in this general administration data are:
● Name of the configuration
● Description of the text
● Name of the associated component
● Collection assignment
● Original language
● User name of the creator and date created
● Changed by/on
You can change the appearance and behavior of a Web Dynpro component. These changes can be implemented through additional attributes in the context of a special custom controller – the configuration controller.
You can create any
number of
Custom Controllers
for a Web Dynpro component. You
can select only one of these custom controllers as the configuration
controller. To do this select a
controller in the object list, and from the context menu choose Set/Reset as Configuration Controller. In the same way, you can set the controller back to
a basic custom controller.

Example of explicit configuration:
In your system you can find the example component WDR_TEST_PERS_IMP_EXP in package SWDP_TEST. The last column in the flight table displays one of three note icons: A red circle, a yellow triangle, or a green square, depending on the occupancy level of the flight. The value to be set as of which the system should switch from one reference icon to the next can be configured by the application developer. For this purpose, the two attributes CONFIG_LOW and CONFIG_HIGH have been created in the configuration controller context of this component. These two attributes set the limit value as of which occupancy with the icon is low (green square) or high (red circle). If the occupancy level is between the values, a yellow triangle appears in the table.
In contrast to implicit configurability, such attributes must be created explicitly in the configuration controller context. Therefore, the processing of attributes must also be explicitly programmed by the application developer in a controller method of the component. In the example component WDR_TEST_PERS_IMP_EXP, the logic for evaluating the attributes is entered in the method WDDOINIT of the component controller. The storage of the attributes in the context of the configuration controller ensures that their values can be set or changed later on with the help of the component configurator.

When you are creating a node in the configuration controller context, singleton nodes and recursion nodes are not allowed.
Each UI element has a set of properties defined by the framework. Their values are set when a view is designed. So almost each UI element has a visible property. In the view designer of the ABAP Workbench, an application developer sets the value, for example, to visible. Within a special application of the component, precisely this UI element, however, should not be visible. The application developer then creates a configuration for the component in which the value for the property visible is set to none.
The value of the visible property is an example of a possible implicit configuration style. The property is preset by the Web Dynpro Framework and the value set by the application developer is edited automatically. There is no additional programming effort required by the component developer for implicit configuration.
Many (not all) f the attributes of UI elements can be overridden with the help of configuration data.
More information: New Configuration Editor.