ABAP Freak Show – May 20th – NetWeaver Business Client 3.0 Preview

In this episode of the ABAP Freak Show, we take an in depth look at the upcoming 3.0 release of the NetWeaver Business Client. This new version of the NWBC will ship later this year alongside NetWeaver 7.02 and 7.20 based applications. NWBC offers an alternative to using an Internet Browser (such as Firefox or Internet Explorer) for accessing your Portal roles and SAP business applications.

We look at the latest features of the NWBC in this eLearning video. We see how you can setup the NWBC to consume roles from either an ABAP backend system (PFCG) or from a NetWeaver Portal. We look at the new capabilities for SAPGUI for Windows integration, we see advantages to the streamlined navigation and desktop integration capabilities. We also see how external resources (like Twitter, Google, and other search tools) can be integrated into the NWBC.

Finally we look at the SmartClient rendering for Web Dynpro that will ship with NWBC 3.0. With this functionality Web Dynpro applications render with a very lite weight XML output. This XML gets interpreted within the NWBC and rendered as .Net and WPF (Windows Presentation Foundation) on the desktop. This gives you the choice of running Web Dynpro applications in a browser or as a true desktop application – without having to change any coding of the application.
Download Video in offline MP4 formatDownload Video in iPod/iPhone format

>I appreciated so much also the links to download the videos directly in iPod format.

I’m going to try and do that from now on. It used to take hours to recompile the video in Camtasia to an alternative format. I recently got a new nvidia video card that supports CUDA and the Badaboom video transcoder. It converted this 50 min video in about 4 minutes.

Thomas, great episode sir!
You mention that “This new version of the NWBC will ship later this year alongside NetWeaver 7.02 and 7.20 based applications.” So since you were saying that there were some changes to the SAPGUI itself, does that mean that NWBC 3.0 will only integrate with SAP systems that are 7.02? Would this mean users would have to still use both SAPGUI and NWBC until all systems they use are on 7.02? If so, this would make the adoption of NWBC for existing customers a very slow process.
Another question I had was regarding when you were switching from the HTML, Smart, and Flex clients. Where is the control of which one gets rendered? You mentioned that its abstract rendering, but does that mean the end user can switch back and forth at their own discretion or is it controlled elsewhere?
Some of my favorite features that you talk about are:
– Lightweight role based security via ABAP and direct integration with existing Portal roles
– The windows manager looks really great. Very nice looking, who did you guys buy this from? 🙂
– The integrated search and the quick action search. These are great. Would you be able to integrate TREX searches into this? So one place to search all your enterprise data, including transaction based content.

>So since you were saying that there were some changes to the SAPGUI itself, does that mean that NWBC 3.0 will only integrate with SAP systems that are 7.02?

Well there are a couple of technical dependencies on NetWeaver 7.02 or 7.20. The SAPGUI isn’t actually one of them. We did make changes to the SAPGUI for the NWBC, but we did it in the 7.10 version of the SAPGUI via patches. Currently the best support and integration for the SAPGUI comes via patch level 13 – although that requirement might change to a later patch level before release.

The big dependency is on the backend ABAP or Portal server. The NWBC needs to call web services (REST based) to get Role information, Navigation, etc. So those services have to exist on the server. The other dependency is with the Web Dynpro runtime to be able to render the XML (called xBCML) needed by the SmartClient rendering of the NWBC. The final version of this XML rendering was completed for Web Dynpro ABAP in NetWeaver 7.02/7.20.

>Would this mean users would have to still use both SAPGUI and NWBC until all systems they use are on 7.02?
Well the changes to the server to just add the Web Services is quite minor. Even a minor bit of new functionality however is no longer allowed in Support Packages. Technically we have 7.0 and 7.01 based systems internally that we have patched with the 3.0 version of the NWBC service – so technically it isn’t complicated. But our current rules mean that we shouldn’t ship it in a support package. Personally my vote would be to ship the 3.0 version of the NWBC runtime as an optional transport that customers could choose to import on 7.0 or 7.01 if they wanted. They wouldn’t get the smartclient rendering for WDA, but they would get the integration and all the other features I showed – they would just be restricted to only have the HTML rendering of WDA.

The other option is for a customer to upgrade just their portal to 7.20 later this year when it comes out. You could have a mixture of backend releases and be able to use the NWBC. The roles would come from the portal. Of course the situation would be the same for the SmartClient rendering – unless you have the 7.02 verison of WDA you would only have the HTML rendering.

>Where is the control of which one gets rendered?
It is pretty easy really. If you use the Portal as you role source, when you create the iView you now have a radiobutton during the iView wizard to choose the rendering type.

The ABAP role backend is also quite easy. When you maintain the role in PFCG you can choose for WDA applications if you want to run in the HTML or SmartClient. You can also control this via a URL parameter. The Flex client is not directly controlled via a RadioButton in the PFCG options just yet. You have to use a special URL structure to get the Flex Client – but not difficult at all once you know the correct URL parameters.

>but does that mean the end user can switch back and forth at their own discretion or is it controlled elsewhere?
There is also an option on the client side where the end user can force the rendering of Web Dynpro to either be all HTML or all SmartClient regardless of the role/iView definition. Of course this option can also be locked by the administrator so that end users can’t set it.

>The windows manager looks really great. Very nice looking, who did you guys buy this from?
Actually I pretty sure that was developed in-house. We have a small group that is getting really well versed in some advanced desktop rendering technologies. Some of the irregular window shapes and shadowing in the NWBC was done in C++. Many of the other techniques are possible because of .Net and WPF (Windows Presentation Foundation). I can check with the developers to see which technology was used for this feature.

>Would you be able to integrate TREX searches into this?
Absolutely. We have “special” integration for our search engines and the Enterprise Search (powered by TREX) was one of the examples I showed. But the search specification is easy to setup. For instance I configured the Twitter search without needing any special support from the client. The generic search interface is easy to plug into any URL/Parameter based application – search or otherwise. The help.sap.com search wasn’t even really designed for this kind of interface. I used HTTP Watch to see what the form fields were for a search POST and was able to use that information to setup the search option for the NWBC.

Thomas, this was so awesome to see a demo of! I have one question and it elaborates a little on what was discussed above in reference to search. You said that the search specification is easy to setup. Is this process intuitive where a business user would be able to add their own searches? Also, can it be configured to use TREX without the presence of Enterprise Search? Or is Enterprise Search required?

You said that the search specification is easy to setup. Is this process intuitive where a business user would be able to add their own searches?

I think so, but being a programmer myself I sometimes overestimate the simplicity of technical solutions in the eyes of the non-technical. Basically you go into a preferences menu and you type in the URL of the search. You can put in a place holder for the search string parameters with {n} where n is the index of the words in the search input box. You can just use {0} to represent all the words in the search input box. For instance if you wanted to setup the search to Google you would input http://www.google.com/search?q={0}

Also, can it be configured to use TREX without the presence of Enterprise Search? Or is Enterprise Search required?

Admittedly my knowledge of standalone TREX is not the best. I can say that pretty much anything with a URL based interface can be parsed into the search provider configuration. I would be a little surprised if TREX standalone couldn’t be made to work. The advantage to configuring Enterprise Search is that you could get one federated search that goes against all kinds of search channels – including backend business data.

Hi Thomas, I really liked your demo but I would like to ask you one question : I have been using the NWBC version 1.0 for quite some time now and I noticed in your presentation that the session management feature ( sessions are displayed inside the NWBC making it easy to navigate especially if portal is backend) is no longer there but instead you introduced the window manager. Is this correct, is this feature skipped ?
Cheers,
Mario

I noticed in your presentation that the session management feature ( sessions are displayed inside the NWBC making it easy to navigate especially if portal is backend) is no longer there but instead you introduced the window manager.

Yes, the way session management has changed to be a little more Operating System friendly. Now each session runs a separate OS level window – but they are still managed and themed via the main NWBC window. This is why we introduced the concept of the Window Manager.

It is possible to use all of these features in 1.0. The main difference s that your Web Dynpro applications will not rendering in the desktop SmartClient. They will run within the in place browser and render with HTML/JavaScript. Only the 3.0 version of the NWBC combined with NetWeaver 7.02/7.20 backend systems can run Web Dynpro SmartClient rendering.

Hi Thomas, finally I can put my hands on a SAP ECC EhP4 and I want to come back to NWBC trying to integrate a Report Launchpad (defined in transaction LPD_CUST).
As far as I know the Launchpad should work fine within Portal and NWBC but not within a standalone browser. Indeed, opening a browser to the URL /sap/bc/webdynpro/sap/apb_launchpad?ROLE=FINREP&Instance=erp63 I can see a nice page with all the reports but no links works.
So I’m trying to include the Report Launchpad within a SAP NWBC 1.0 that is directly connected to ABAP (demoA) because I still don’t have the SAP Portal.
I do not see how to define a launchpad into the NWBC menu? I associated FINREP to a PFCG role defined in my userid (SU01) but nothing, the launchpad doesn’t appear.
Any idea? Should I wait for NWBC 3.0? Is the Portal mandatory to run the Report Launchpad ?

Thanks so much Thomas.
I’m working on it.
I’m trying defining in PFCG a link to the WDA APB_LAUNCHPAD (or APB_LAUNCHPAD_NWBC) setting the parameters ROLE and INSTANCE to the required Launchpad ROLE & INSTANCE (e.g. FINREP and ERP63). Here I use the button Add other object.
For the moment I’m getting the Launchpad page in NWBC and clicking on any link I’m receiving error related to OBN.
We will see tomorrow…
Sergio

Hey Thomas, Thanks for the great demo. You did mention that there might be a possibility to run the NWBC 3.0 with a 7.01 system and everything would work except for the smart client rendering for WDA functionality. I’m very interested to make that work since I really like multi-window possibility with the 3.0 version. I’ve installed version “3.0 PL 1 final release” and it’s working fine with portal. However, when I run it against the ABAP backend it short dumps and gives me the message “The NetWeaver Business Client for Desktop is only supported with the NetWeaver 7.02 or 7.20 and further releases.”
My Question is what needs to be done to make it run in 7.01 even with the missing functionality of the smart client rendering (we are on ECC 6.4 – Basis component 7.01 SP06).
My second question is what needs to be done to go to 7.02? is that the latest release for the SAP component? What’s the difference between that and 7.20 exactly?
Thanks a lot for your great podcasts.
Ali

@Ali
To use NWBC 3.0 against a NetWeaver 7.01 backend, please have a look at service note 1368177.

>My second question is what needs to be done to go to 7.02?
For ECC you would need to update to the ECC Enhancement Package (6.05). The NetWeaver Enhancement Packages are embedded within and are technical requirements of the functional Enhancement Packages.

>What’s the difference between that and 7.20 exactly?
7.20 doesn’t run under the Business Suite. In other words you can’t have an ECC system running on NetWeaver 7.20. The Business Suite only runs on the NetWeaver 7.0x codeline.

That said, we have backported nearly all the ABAP related features from 7.20 to 7.02. In some cases (with Web Dynpro ABAP) 7.02 even has some features that aren’t in 7.20. 7.02 has the same ABAP complier and kernel as 7.20.

Hello Thomas,
Thanks for your reply. I did follow the note you’ve mentioned and applied all the relevant notes for up to Patch 4 (which is relevant to 7.01 sps06). Now I’m not getting the earlier exception but I’m getting a similar new one that says:https://fullsevername:port/sap/bc/nwbc/Ticketissuer was not called due to error.
More info on the short dump:
The ABAP call stack was:
Method: RAISE of program CX_NWBC=======================CP
Method: RELEASE_UNSUPPORTED of program CX_NWBC=======================CP
Method: GET of program CL_NWBC_RUNTIME===============CP
Method: IF_HTTP_EXTENSION~HANDLE_REQUEST of program CL_NWBC_HTTP==================CP
Method: EXECUTE_REQUEST of program CL_HTTP_SERVER================CP
Function: HTTP_DISPATCH_REQUEST of program SAPLHTTP_RUNTIME
Module: %_HTTP_START of program SAPMHTTP

Information on where terminated
Termination occurred in the ABAP program “CX_NWBC=======================CP” –
in “RAISE”.
The main program was “SAPMHTTP “.
In the source code you have the termination point in line 10
of the (Include) program “CX_NWBC=======================CM00A”.

I tried searching sdn but nothing helpful was there regarding this issue.
Thanks for your help.
Ali

@Ali Your still getting a release unsupported, so it seems like you may have missed a step in the note I referenced. In particular did you make the entry in the table mentioned in the note via SE16? It might seem like a minor or even incorrect point to enter the description Business All In One in this table, but it is actually part of the key to keep the runtime from triggering this release unsupported message.

Hey Thomas,
Yeah you are right, i did forget to maintain the entry for Business All In One in table nwbc_cfg and now it’s working fine. I really appreciate your help.
I find the ABAP freak shows extremely helpful and informative, hope you keep them coming.
Also, thanks for the enjoyable podcasts with Ed and the other guys.
Ali