How to virtualize SAP GUI using Microsoft App-V
Update 5 Tuesday 06/25/2013
I added a new section at the end of the troubleshooting section in the
attached paper. It talks about calling SAP GUI for Windows out of IE.
There are two common methods to accomplish this :
a, SSF - via SAP shortcut file : extension .sap
b, SSD - via Structured Storage Document : extension .sapssd
Typical use cases for IE integration of SAP GUI for Windows are iViews in
SAP Enterprise Portal or certain calls out of Solution Manager.
Update 4 Tuesday 04/30/2013
I added a new section at the end of the troubleshooting section in the
attached paper. It talks about using a local SAP shortcut file on the
client together with a virtualized version of SAP GUI.
Update 3 Friday 03/08/2013
I added a new interesting customer case to the troubleshooting section in
the attached paper. It's a very special case where you run into an error
using SAP transaction CG54 and trying to display a document. The
error only shows up when the SAP GUI package was created on a 32
bit machine AND the client machine is 64bit AND Knowledge Workbench
is part of the package. In this very specific case the virtual registry gets
somehow mangled.
Update 2 Tuesday 12/11/2012
I added a new "Troubleshooting" section to the attached document. My idea
was to describe certain customer issues in case it's useful information for
everyone. Because of all the screenshots the document became pretty big
now. Let's see how this goes. Maybe I will start a second separate
troubleshooting blog/document if it makes sense.
With the next update I will also move the Excel item described further down
into the troubleshooting section to have everything in one place.
Update 1 Friday 07/27/2012
1. in the meantime customer tests have shown that it is in fact possible to
use a different drive letter than "Q:". This is of course a key issue in case
"Q:" is already reserved for something else.
There is just one thing to make sure. Follow the steps in the blog as
described. But once you install the App-V client it's absolutely necessary
to specify the same drive letter which was used on the sequencer. Don't
make the mistake to accept the default setting which would be "Q:"
2. in agreement with the SAP GUI team I would like to calrify that the
support statement for App-V in SAP note 66971 includes SAP GUI 7.3.
One thing to keep in mind - BEX 3.x won't be supported anymore with
SAP GUI 7.3 - see SAP note 1410878 and 1652771 / 1670678
Introduction
While everybody in IT knows virtualization using Hypervisors and virtual
machines by now not everybody is so familiar with technologies which allow
application virtualization.
A perfect example in the SAP world is SAP GUI. Just imagine the amount of
work a customer has to spend to deploy SAP GUI and SAP GUI patches for
5000 client desktops. There is a very valuable alternative available though.
The product name is App-V :
https://technet.microsoft.com/en-us/appvirtualization
Instead of installing software on the clients it will be prepared at a central place.
All what the clients will see are shortcut icons and/or entries in the Windows
start menu.The software will be streamed to the clients and runs in its own virtual
environment. This means no interference between different virtualized packages
and no more local registry entries. Changes in the virtualized packages will be
seen by the clients immediately without the need to install anything locally. The
virtualized software is still able to interact with programs which are installed on
the client OS. A typical example would be Microsoft Office. This blog shows
exactly this scenario when the virtualized BEX Analyzer works with a local Excel
installation.
App-V is already on the market for quite some time. Official support from SAP
for virtualizing SAP GUI for Windows 7.20 patch level 8 using App-V 4.6 SP1
is in process.The blog will be updated accordingly once the general support
statement is public.
At this point in time a limited number of "pilot customers" are welcome to start
using SAP GUI 7.20 on App-V with full support ( first come first serve ). The
procedure is described in SAP note 66971.
This blog will describe the key items regarding the sequencing process for
SAP GUI as well as some recommendations to virtualize SAP BEX Analyzer
( Excel plugin ) version 3.5 and 7.
Virtualization of SAP GUI 7.20 and BEX
There is a lot of information out there about App-V. You will find two great
papers about the usage of App-V and especially the sequencing process :
You will also find blogs about App-V which mention issues which customers
had when sequencing SAP GUI 7.20. Paying attention to a few items which
are described further down in this section it wasn't necessary in my test
environment to do anything special like manually copying dlls around. I have
to tell though that all involved virtual machines were installed from scratch to
have absolutely clean Windows installations.
At this point I also want to say thanks to Nicke Källen - an App-V MVP who
gave me a great quickstart when I started to learn App-V. Here is the link to
his blog : https://www.viridisit.se/eng/blog/
Prerequisites :
- SAP GUI for Windows version for the tests was 7.20 patch level 8
- App-V version was 4.6 SP1
- the App-V server ( sequencer and management console ) used Windows 2008 R2
- the App-V client used Windows 7
- Office 2010 was installed locally on the machines and NOT virtualized via App-V
( all the tests were also successfully done with Office 2007 )
- two SAP installers ( C runtime redistribution packages ) were run locally :
vcredist_x86 and vc9_redist_x86
Key learnings / experiences during the App-V SAP GUI testing :
1. it was absolutely crucial to create a physcial drive before installing
App-V sequencer ( no symbolic link ). Make sure that the same
drive letter will be used on the sequencer machine and the App-V
client
2. it was necessary to put SAP GUI, BEX 3.5 and BEX 7 into separate packages.
This anyway makes sense to define different user groups which should get
access to BEX or not
3. the LOCAL_INTERACTION_ALLOWED flag had to be set to "TRUE" for
SAP GUI but to "FALSE" for BEX
4. while it was ok to just use the type "Standard Application" for SAP GUI in
the sequencer it was necessary to use "Add-On or Plug-In" for BEX 3.5.
This is related to the different behaviour of BEX 3.5 which always tries to
join an existing active Excel session. Whereas BEX 7 will always start a
new Excel process. More details can be found in the attached document
which includes a walk-through section with many screenshots.
The other BEX applications like Query Designer worked without a problem.
Just the BEX Analyzer needed special attention
5. it turned out that App-V 4.6 SP1 cannot handle Windows 7 "Jumplists" in
case shortcuts don't point directly to the exe file of the application. A good
example is SAP Logon. The icon will point to a .s8l file. This file extension
will trigger the launch of an application starter program which will then finally
start saplogon.exe. The symptom is that a right-click on the icon in the
taskbar after the application started has no effect. Using procmon you will
usually find an error message that Windows Explorer cannot find the
appropriate .exe file.
6. there might be an issue with "in-place" Excel integration in some cases.
While the Excel integration test program ( which can be run via transaction
SE38 : SAPRDEMOEXCELINTEGRATION2 ) works fine the Excel sheet
might remain empty using the SAP list viewer. Here is the description of
the problem and the solution which was verified on Windows 7 Enterprise
32bit and 64bit as well as Office 2007 and Office 2010 :
a, in certain cases one has the choice within SAP GUI between using the
SAP list viewer ( ALV icon in the menu ) or exporting data into a
separate Excel window ( little calculator icon ) - see screenshot below.
It works perfectly fine to export the data into a separate Excel window via
the "calculator icon".
b, after clicking on the "ALV icon" a new menu list show up - see next
screenshot.
Selecting the little spreadsheet icon should end up in an "in-place"
Excel integration. But the Excel sheet might remain empty without
any data and any error message.
c, the root cause for this symptom is described here :
d, the workaround for both Office versions 2007/2010 and both Windows
versions 32bit/64bit was a change in the registry on the App-V client
with a local Office installation ( at least on my test environment ).
Windows 7 32bit :
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\
{00020820-0000-0000-C000-000000000046}
Here I renamed two entries :
InprocServer32 was changed to __InprocServer32
InprocHandler32 was changed to __InprocHandler32
Windows 7 64bit :
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Classes\CLSID\
{00020820-0000-0000-C000-000000000046}
Same rename as above
Useful links
SAP Help Portal
Microsoft TechCenter homepage for application virtualization
https://technet.microsoft.com/en-us/appvirtualization
Microsoft Technet App-V blog
https://blogs.technet.com/b/appv/
Microsoft MDOP blog
https://blogs.technet.com/b/mdop/
App-V TCO whitepaper
https://go.microsoft.com/?linkid=9722838
App-V_SAPGUI_walkthrough_06_2013.zip
Comments
Anonymous
May 10, 2013
Can you update your document for appv 5.0? I did SAP GUI 7.30 patch 4, with no changes other than the following exclusions: VFS [{AppData}]SAP [{Local AppData}]SAP VRG REGISTRYUSER.DefaultSoftwareSAPAnonymous
May 16, 2013
Hi, sorry for the delay. Discussions with SAP about SAP GUI - App-V 5.0 support are in progress. Information will be published once we have a clear project plan. In this blog only information will be published which is related to a SAP Support Statement in agreement with the SAP Team responsible for SAP GUI. Best Regards HermannAnonymous
November 13, 2013
Hi HermannDaeubler, Any updates on documenting SAP for app-v 5.0? Regards, RameshAnonymous
November 18, 2013
Hi! We really hope you update your document for App-V 5. We made an App-V 5 package with SAP GUI 7.3 and BEX 7. So far it works fine with the exception of one transaction in SAP. Where can I get help? Thanks, DietmarAnonymous
November 19, 2013
Hi, the SAP GUI - App-V 5.0 topic was handed over to the Microsoft App-V team. I am not part of this team. To get an official response you should open a Microsoft support case via the official standard way and ask this question. Sorry Best Regards HermannAnonymous
December 17, 2013
You said "Discussions with SAP about SAP GUI - App-V 5.0 support are in progress." What's going on? Did you ever finish this discussions? If yes: with which result? SAP said to us that they don't know anything about discussions with Microsoft at all? Please help! I really do not understand why App-V 4.6 is well documented and App-V 5 (now with SP2) is not. Do Microsoft not believe in App-V 5? Why? It's great! Thanks!Anonymous
January 29, 2014
Hallo! We virtualize SAP Gui now with App-V 4.6 SP3. The problem I discussed earlier is now gone. But now we have another problem: 'CSapEditorCtrl:get object: object15 does not exist' Do you ever seen this error? In the forums the problem only appear in conjunction with cirtix and dll optimization. Any ideas? Thanks ... DietmarAnonymous
December 10, 2014
Wow I appreciate your persistence, awesome Work....