Skip to Content
As developers of SAP self services we are often asked how to embed our applications in custom pages/external portals. There are examples where customers have built beautiful customized entry pages for self services using HTML & content authoring tools. From these pages they would like to navigate to SAP or custom built WD ABAP applications of ESS/MSS.Many times they try to embed direct application URLs but then some application links/actions do not work since they use internal navigation to another application using OBN (Object based navigation).
So what is the correct way to embed WD ABAP services in a custom built page running in a non-sap portal?
Always use NWBC HTML as a wrapper; Use NWBC HTML in app/embedded mode.
NWBC (hidden mode) will tkae care that OBNs defined in PFCG role works for applications
Example:

  • window=app: starts an application window without navigation elements of NWBC shell 
  • window=embedded: starts the shell in rendered format that is embedded in foreign portals; this mode is particularly interesting if you would like to use the feature of NWBC like service map
UI Options possible:
  • Embedding set of applications using service map (e.g. ESS)
You can either use WDA application to render service map based on launchpad customizing or use NWBC feature to render service map based on PFCG
The start URL of a Web Dynpro ABAP application for ESS homepage with certain Web Dynpro ABAP specific parameters can look as follows:
To embed complete ESS role in an external portal, you can use for example an NWBC for HTML link that selects a complete role and shows a service map for the role:
Note:
use parameter decoration=no_branding  Hides the SAP branding logo in embedded mode.
configure applications open in a new window from service map in case of launchpad
  • Embedding Individual applications
You can build complete custom pages and include links to individual applications as follows.
However if you go for this option then you will loose out on some dynamic features offered by standard ESS homepage like hiding country specific services or modifying texts of services
Advanced features:
NWBC offers REST/HTTP based services that can export content in ATOM format that can give information like assigned PFCG roles in backend system. You can use this information to generate dynamic links. You can even think of advanced scenarios like logical mapping of systems to generate URLs.
There is also export of navigation tree possible.
See section 6.5 of documentation  found in NWBC help area or search NWBC in help.sap.com
Other things to think about:
  • SSO – Single Sign on in case you call self services from external portal – check documentations available already
  • Themes: To provide uniform experience you should consider atleast basic theming to match but there is no standalone theme editor is supported as of now. You can search SCN for theming related topics and downloads of eclipse based theme editor
  • Other URL parameters like accessibility mode: In case you need to support mapping of parameters like accessiblity mode from your source page then you may need to do some programming to pass these parameters
  • more … (when I find more time to think for advanced issues …)
Hope you find the information useful in your pojects. If some of you have interssting experiences and challenges faced in this topic please share them
Some example screens on a test sharepoint system I created
Example showing full homepage embedded
Homepage In Sharepoint.png
Example showing individual applications and custom application embedded on same page
Embedded mode WD APPS in Sharepoint.png
To report this post you need to login first.

9 Comments

You must be Logged on to comment or reply to a post.

  1. Matt Harding

    Hi Sagar,

    I thought I would add some info to this blog as I had a similar requirement on the project we’re on (eg. Embed ESS Service Map within SharePoint without NWBC navigation).

    In short, typically different ESS users don’t all have the same transactions, and ESS will be made up of multiple roles that make up their ESS service map. Assuming we avoid the Launchpad (per recommendations by SAP within NWBC 4.0) and noting the above example only deals with a single role, the way to get this rendering correctly in say a SharePoint is to move ESS related navigation into a role that you can assign a dedicated NWBC Cockpit too (new cockpit within ICF, and noted within the various ESS roles under “menu options”).

    This way, if you have a sharepoint navigation and want to show just the service map, this can be done with a URL something like this:

    https://<host>/sap/bc/nwbc/ESS/~canvas;window=app/sitemap

    where the cockpit name in this scenario is ESS.

    If there’s a better way that doesn’t require custom cockpits, I’d love to know about it, but this at least works as expected.

    Keep up the great work.

    Cheers,

    Matt

    (0) 
    1. Sagar Joshi Post author

      Hi Matt,

      Good points. Yes it is possible to use NWBC cockpit concepts if required.

      However from ESS role perspective you can control the visibility of services using HRESS_MENU BAdI. This works for launchpad or PFCG roles. I personally find this approach more easy to manage rather than having many roles.

      If the purpose is to just embed the homepage in foreign portal then embedding launchpad as application is not too bad either.

      Regards

      Sagar

      (0) 
      1. Matt Harding

        Hi Sagar,

        Definitely another approach, though at my client, they are using Identity Management to assign position to role based security roles and ESS is about all self service options (not just HR), so combining roles is really the only way security can feasibly manage this navigation. Note – This is not about country specifics or similar, but about what roles your position should have access to, which could be as a contractor raising a safety incident (for example).

        Cheers,

        Matt

        (0) 
      2. Pradyp Parakala

        Hi Sagar

        I see that you really post wonderful documents. Earlier I’ve seen your document on ESS/MSS EHP-5 WDA. But unfortunately it’s been deleted. It will be helpful if you can re-post the document.

        Thanking you in anticipation

        Regards

        Pradyp

        (0) 
    1. KIRAN RAJAN

      Hi Sagar Joshi,

      I am having a requirement to generate an FPM application URL with some default parameter values. This FPM application is configured in the NWBC, I am able to generate the application URL with the required parameter values and able to open the application with the generated URL with the parameter passed in a browser.

      The issue which I was facing here is that, I need to highlight the application path selected in this NWBC on calling this URL, like below

      1.JPG

      (0) 
  2. Kenneth Moore

    Hello Sagar,

    Nice blog!  Very informative!  Question:  Do you know a way to force a WD application to use the NWBC HTML shell?  For example, I add a WD application to my Favorites list or to a user role (PFCG).  Normally, the WD application will not start with NWBC shell.  I do not want to hard-code the URL if possible.

    Thanks,

    Kenneth

    ** Update **

    I think I found my answer with this discussion:  http://scn.sap.com/thread/3551823

    (0) 
    1. Sagar Joshi Post author

      Generally speaking yes since WD ABAP apps are not available as standalone usage. They have to be running inside some shell like portal, nwbc. The main reason is there are some central services like navigation that may use shell services.

      (0) 

Leave a Reply