ABAP Webdynpro和CRM WebClient UI不同的UI表現機制

i042416發表於2020-08-15

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.


ABAP Webdynpro和CRM WebClient UI不同的UI表現機制


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:


ABAP Webdynpro和CRM WebClient UI不同的UI表現機制


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


ABAP Webdynpro和CRM WebClient UI不同的UI表現機制


When we go to the ABAP webdynpro page:


ABAP Webdynpro和CRM WebClient UI不同的UI表現機制


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.


ABAP Webdynpro和CRM WebClient UI不同的UI表現機制


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


ABAP Webdynpro和CRM WebClient UI不同的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:


ABAP Webdynpro和CRM WebClient UI不同的UI表現機制 ABAP Webdynpro和CRM WebClient UI不同的UI表現機制


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:


ABAP Webdynpro和CRM WebClient UI不同的UI表現機制 ABAP Webdynpro和CRM WebClient UI不同的UI表現機制 ABAP Webdynpro和CRM WebClient UI不同的UI表現機制


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


ABAP Webdynpro和CRM WebClient UI不同的UI表現機制


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和CRM WebClient UI不同的UI表現機制


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.


ABAP Webdynpro和CRM WebClient UI不同的UI表現機制


要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":

ABAP Webdynpro和CRM WebClient UI不同的UI表現機制


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2712059/,如需轉載,請註明出處,否則將追究法律責任。

相關文章