To make a business application available to those users who are dependent on technical support of various kinds due to disability, the Web Dynpro framework provides them with the option of setting up accessible applications.
For more information, see the chapter Accessibility.
An important prerequisite for providing this accessibility is the availability of a tooltip for each UI element since tooltips are evaluated with the help of screen reader programs and can therefore be made accessible for visually impaired users. Each UI element provides a tooltip.
A tooltip must be maintained for a UI element to enable accessibility whenever
· The UI element does not have a heading
· No label is assigned to the UI element
· Elements with a text property have neither set nor bound it (with the exception of the caption, for which no tooltip is checked). For example, there is no text on a button or link.
A tooltip must be maintained for some more complex UI elements. Examples of these are the UI elements Tree or ProgressIndicator.
When you activate your component, a message is generated to tell you the contents of the tooltip property are missing (provided this property would have been necessary for the accessibility of the application). You can, however, define the value for the tooltip property dynamically. This option is not covered by the syntax check.
In addition, the tooltip property must always be set, for example, to provide more semantic information about the UI element.
Almost all UI elements additionally provide the property accessibilityDescription. This can be used to include a title, as an alternative, whenever the UI element should not or cannot carry a visible title (Header). In contrast to the case with the tooltip, which should contain a semantic description of the purpose of the UI element, only a short, title-like expression is entered in the accessibilityDescription
More information on the individual UI elements is available under User Interface Elements.
You can find information about keyboard access in Web under Keyboard Access for Interface Elements in Web Dynpro.
During design time, accessibility checks are carried out automatically as part of the syntax checks.
By double-clicking on any component you can reach the properties and the indicator Accessibility Checks Active. If you deactivate this option, the development environment does not carry out any design time accessibility checks for the relevant component and its views.
In principle, no semantic checks can be carried out as the system cannot determine whether or not, for example, the content of a tooltip is useful within a given context. Instead, the system checks whether a specific property is set and filled. If this is not the case, the system checks whether any related properties are set.
Note that the accessibility checks are not carried out for Web Dynpro ABAP test applications (temporary objects in the package $TMP).
The following is a list of the checks that are carried out for the specified UI elements.
UI Element Checks
UI Element |
Type of Check |
If the text property was not set, the system checks for the tooltip property. An error message is displayed if, for example, a button or link with an icon has neither t nor the tooltip property. |
|
If the properties text and label were not set, the system checks for the tooltip property. An error message is displayed if, for example, a CheckBox has neither the text, label, nor tooltip property. |
|
If the caption property has not been set, the system checks for the accessibilityDescription property. An error message is displayed if, for example, a group has neither the caption nor the accessibilityDescription property. |
|
If the label and isDecorative properties have not been set, the system checks for the tooltip property. An error message is displayed if a tab-enabled image has an empty tooltip. |
|
The system checks whether the label property has been specified. If no label has been set, and no descriptive text has been specified for the appropriate bound context element in the ABAP Dictionary, the tooltip property is checked. An error message is displayed if, for example, a TextEdit does not have a corresponding label or if a DropDownByKey does not have an assigned label and no description was entered in the ABAP Dictionary. |
|
If the caption property has not been set, the system checks for the accessibilityDescription property. Furthermore, the system checks whether the aggregation header is set for columns or whether the aggregation header is visible. The tooltip property is not checked. An error message is displayed if a table has neither a caption nor an accessibilityDescription or if a column does not have a (visible) header. |
|
If the tooltip property has not been set, the system checks for the accessibilityDescription property. An error message is displayed if, for example, a CheckBoxGroup has neither the tooltip nor the accessibilityDescription property. |
|
If the layoutContainer property was not set, the system checks for the accessibilityDescription property. An error message is displayed if a TransparentContainer has the property layoutContainer=false and does not have an accessibilityDescription. |
You can start another Web Dynpro application from a Web Dynpro ABAP application. This is done using an exit or suspend plug. To run the new application also in the accessibility mode, you do not have to transfer the accessibility flag itself in the URL for the application. Instead, if the URL is intended for another Web Dynpro ABAP application, the field can be transferred automatically (notation of the application is in curly brackets: {App}). The optional parameter IN_FORWARD_ACCESSIBILITY_FLAG in method CONSTRUCT_WD_URL of class CL_WD_UTILITIES is provided for this.
You can also append the field when the URL is generated.
To test an application in accessibility mode, you can either set a screen reader or wait for the tooltip to display. For quick testing you can also display the accessible text in a box at the bottom of the browser window. To do this enter the URL Parameter sap-accessibility-debug=X. The accessibility mode sap-accessibility=X must also be activated.
The text of the element currently focused on is displayed after the prefix ACC:.