分享

ABAP Webdynpro和CRM WebClient UI不同的UI表现机制

 汪子熙 2020-08-06

This wiki page collects UI behavior differences between ABAP Webdynpro and CRM Webclient UI.

Data loss handling

in CRM webclient UI, you can follow the wiki to implement data loss functionality. The steps are quite simple, as most of tasks are done by UI framework.
When you make some changes on UI without save and plan to navigate to other UI for example by clicking other work center in the left navigation bar,
the data loss dialog will be poped up automatically.

It is difficult to implement data loss scenario in ABAP webdynpro. Developer should take care the logic how to detect the ABAP webdynpro UI element is changed, which has already been done by CRM UI framework. Developers have to write lengthy and dirty code to achieve it.

Session issue

For example, when we log on to CRM system via a business role:

use tcode SM04, we observed there is one user session for the current UI:

When we go to the ABAP webdynpro page:

Go to SM04 again, we can observe there is a new user session generated for ABAP webdynpro, which means the ABAP webdynpro UI resides in a different user session, whereas the left CRM UI page in the original user session.

The technical session isolation strategy makes it difficult to exchange data between ABAP webdynpro UI and CRM webclient UI.

One approach to pass data from CRM UI to ABAP webdynpro is to define some parameter in ABAP webdynpro applications, fill those parameter in CRM and populate the URL containing the passed parameter via framework class:


However, this approach is not appropriate to pass large amount of data like internal tables. It is also difficult to pass data from ABAP webdynpro back to CRM UI. What's more, careful coding is necessary to ensure a consistent transaction state.

Inconsistent configurability

By clicking the configuration icon, we can directly enter configuration mode to make adaptations on UI layout:



When an ABAP webdynpro is displayed, the configuration icon is still enabled.

However, since it makes completely no sense to configure an ABAP webdynpro component via Webclient UI framework, once the icon is clicked,
We only get one notification saying currently no UI part is configurable.

ABAP webdynpro UI component configuration has a different development mechanism than Webclient UI. The coexistence of both leads to an inconsistent configuration experience for the end user.

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章