Workaround for Custom Themes HTTP-delivery in SAPGUI for Windows 8.10 PL00 and PL01

Estimated read time 4 min read

In the recently published SAPGUI for Windows 8.10, at the time of writing there is a bug which prevents implementing centralised delivery of Custom Themes via an HTTP server.

The SAP Help for implementing the Custom Themes is here:

https://help.sap.com/docs/sap_gui_for_windows/dfad9ecd79db404eba46fdd709013a78/3f5184e38e7f4442b737eb81c315ecf2.html?locale=en-US

However, to get this to work for the HTTP server case, you have to give your centralised Config file stored in the ThemingServerContent directory a specific name, because there is a hardcoded bug that adds “ThemingConfig.xml” to whatever URL you specify in the local device’s Windows Registry.

So for example if in the Registry you have done:

reg add HKLMSoftwareSAPGeneralAppearance /v CustomThemingConfigOnServer /t REG_SZ /d http://192.168.64.1:8000/ThemingServerContent/CentralSAPGUIThemesFile.xml /reg:64 /f

…where 192.168.64.1 is the IP address of the server hosting the relevant content, well you can see both from the server’s logs and from your user’s theming_metadata.xml file at for example:

C:UsersyouruserAppDataLocalSAPSAP GUITheming

…that SAPGUI adds a suffix to create the URL:

http://192.168.64.1:8000/ThemingServerContent/CentralSAPGUIThemesFile.xmlTheming.Config.xml

And that is not generally a URL which will work, an HTTP 404 (Not Found) is the usual result of such a call.

 

Workaround

Make two copies of your CentralSAPGUThemesFile.xml (or whatever you called that central config file), keep them in the same ThemingServerContent directory, and rename them as follows:

ThemingConfig.xml

%5CThemingConfig.xml

Then on the local device (or rather devices, but we won’tt go into rollout-patterns here) the Registry entry should be changed as follows:

reg add HKLMSoftwareSAPGeneralAppearance /v CustomThemingConfigOnServer /t REG_SZ /d http://192.168.64.1:8000/ThemingServerContent/ /reg:64 /f

Note you need the forward-slash.

This means that next time you open SAPGUI (e.g. SAP Logon App or SAP Logon Pad), SAPGUI decides to use the following URL:

http://192.168.64.1:8000/ThemingServerContent/CentralSAPGUIThemesFile.xml/Theming.Config.xml

…and depending on your server and the way it handles the backslash character ”, the server will look for either a file called ThemingConfig.xml or a file called %5CThemingConfig.xml – and since both of those files exist on your server, it will find one of them, and that means… BANZAI!!… that SAPGUI can obtain the Custom Themes you have in the ThemingServerContent directory.

 

 

​ In the recently published SAPGUI for Windows 8.10, at the time of writing there is a bug which prevents implementing centralised delivery of Custom Themes via an HTTP server.The SAP Help for implementing the Custom Themes is here:https://help.sap.com/docs/sap_gui_for_windows/dfad9ecd79db404eba46fdd709013a78/3f5184e38e7f4442b737eb81c315ecf2.html?locale=en-USHowever, to get this to work for the HTTP server case, you have to give your centralised Config file stored in the ThemingServerContent directory a specific name, because there is a hardcoded bug that adds “ThemingConfig.xml” to whatever URL you specify in the local device’s Windows Registry.So for example if in the Registry you have done:reg add HKLMSoftwareSAPGeneralAppearance /v CustomThemingConfigOnServer /t REG_SZ /d http://192.168.64.1:8000/ThemingServerContent/CentralSAPGUIThemesFile.xml /reg:64 /f…where 192.168.64.1 is the IP address of the server hosting the relevant content, well you can see both from the server’s logs and from your user’s theming_metadata.xml file at for example:C:UsersyouruserAppDataLocalSAPSAP GUITheming…that SAPGUI adds a suffix to create the URL:http://192.168.64.1:8000/ThemingServerContent/CentralSAPGUIThemesFile.xmlTheming.Config.xmlAnd that is not generally a URL which will work, an HTTP 404 (Not Found) is the usual result of such a call. WorkaroundMake two copies of your CentralSAPGUThemesFile.xml (or whatever you called that central config file), keep them in the same ThemingServerContent directory, and rename them as follows:ThemingConfig.xml%5CThemingConfig.xmlThen on the local device (or rather devices, but we won’tt go into rollout-patterns here) the Registry entry should be changed as follows:reg add HKLMSoftwareSAPGeneralAppearance /v CustomThemingConfigOnServer /t REG_SZ /d http://192.168.64.1:8000/ThemingServerContent/ /reg:64 /fNote you need the forward-slash.This means that next time you open SAPGUI (e.g. SAP Logon App or SAP Logon Pad), SAPGUI decides to use the following URL:http://192.168.64.1:8000/ThemingServerContent/CentralSAPGUIThemesFile.xml/Theming.Config.xml…and depending on your server and the way it handles the backslash character ”, the server will look for either a file called ThemingConfig.xml or a file called %5CThemingConfig.xml – and since both of those files exist on your server, it will find one of them, and that means… BANZAI!!… that SAPGUI can obtain the Custom Themes you have in the ThemingServerContent directory.    Read More Technology Blog Posts by Members articles 

#SAP

#SAPTechnologyblog

You May Also Like

More From Author