Show TOC

Background documentationDelta Rendering Locate this document in the navigation structure

 

View-based delta rendering is used to improve the performance of user interaction in complex applications when only a part (view) of the displayed page has to be updated. Only the view that has been changed is newly rendered. If several views have been changed, the view rendered is the one containing the changed views and any views beneath it, which means that only a certain part of the page is replaced. For programming, this means that you should avoid unnecessary context updates, and avoid making changes to view elements.

By default all Web Dynpro applications run without delta rendering. You can activate delta rendering for an individual application using application parameter wdDeltaRendering in the following way:

  • Setting Delta Rendering Using Application Parameter WDDELTARENDERING

    or

  • Setting Delta Rendering Using URL Parameter sap-wd-DeltaRendering

Procedures
Procedure for the URL Parameter
  1. Call the URL of the application for which you want to activate delta rendering.

  2. Activate delta rendering by adding URL parameter sap-wd-DeltaRendering with value ON to the URL.

  3. Choose Enter.

Note Note

Note that URL parameter sap-wd-DeltaRendering overrides application parameter WDDELTARENDERING.

End of the note.
Procedure for Application Parameter
  1. In Web Dynpro Explorer call up the properties of your Web Dynpro application by double-clicking on the application.

  2. Choose tab page Parameters.

  3. In change mode using F4 help for Parameter choose entry WDDELTARENDERING.

  4. Insert the associated value ON.

  5. Save your entries.

Implementing Delta Rendering

We recommend you use delta rendering for complex pages on which usually only a part of the page is updated.

Critical for the success of delta rendering are:

  • The design of each view

  • Read-write access is assigned only to objects to be updated (context, view elements)

Example

Procedure

A page contains several large tables

Insert each table into a separate view

One page contains a timed trigger that polls the system for updates

Insert each table into a separate view

Note Note

The use of a timed trigger as the polling method may affect performance.

End of the note.

A page contains elements that are not supported by delta rendering (see below)

Insert the elements not supported by delta rendering into separate views

A page contains an area that is not to be updated due to an InputField onEnter or onChange event

Insert the elements to be updated and the triggering InputField into a separate view.

Delta Rendering Functions

The purpose of delta rendering is to update only the area of the displayed page that has been changed by the application. The granularity for these updates is a view. Only one area at a time is updated, and accordingly the most inward view of all changed views is refreshed. In the most unfavorable case this is the top view of the application.

To determine which views have to be updated, any changes to the Web Dynpro programming interface that could lead to a change in the visualization of a view are registered:

  • Navigation

  • Change to the UI element tree

  • Personalization change

  • Changes to Context and ContextNodeInfos

  • Messages

No check is made whether this acually results in a changed value. Just a call to a changing method results in the view being updated.

User interaction with screen elements also result in the view being updated.

Note Note

Context Mapping

When using context mapping, a change operation to a mapped context node and its subnodes results in an update to eachview that maps to these nodes. It is irrelevant whether the subnodes or attributes in the development environment have been copied to the mapping or not.

End of the note.
Effect of Delta Rendering

Since delta rendering already starts before the "costly" rendering process, in appropriate scenarios significant performance improvements can be achieved in the server as well as in the Web Browser.

Restrictions

The following UI elements are not (yet) supported by delta rendering:

  • TimedTrigger

  • Gantt

  • Network

  • InteractiveForm

  • OfficeControl

For this reason a view with one or more of these UI elements is updated with the roundtrip.

Possible Side Effects

If an application uses very fine-granular change operations (for example SET_ATTRIBUTE calls for each field of a context node instead of BIND_TABLE), delta rendering can lower performance.

Delta rendering errors may occur due to JavaScript errors when calling document.getElementById(...) after a server roundtrip, or because screen areas have not been updated. If errors occurs see SAP Note 1021981.

More Information

You can find information about delta rendering and the trace tool under Tuning and Troubleshooting.