Skip to Content

This week I am attending the pre-release workshop for SAP CRM Sales Manager mobile application. The version 2.5 SAP CRM Sales Manage application is a new version based on a new architecture which I believe is the central component of the consolidated SAP Mobile Platform to-be.

Yesterday was the first day and we have a hand-out to install the server and connect the device to the server.

The installation procedure is just as normal as all the other Agentry server. Firstly everything goes well, and I started the AgentryServer.exe after config the Application in JavaBE.ini file. After it started, the next step is to log to the server via ATE, so I fill in all the information to log on. And this error came up.

/wp-content/uploads/2013/07/language_error_251164.jpg

This is where the nightmare begins.

For the error “Select one of the installed language:…” it is very easy with Google to get the reason behind. The request sent by ATE tried to logon to the backend using language which is not actually installed in the backend. Check here for references.

And it was obvious to check out there is one line

User::getClientDeviceLanguage….<<user.client.language>> = zh.

Perfect! The problem must be the ATE installed with the Chinese language!

Checked the system displayed default language…change to English…-> Issue persisted.

Checked the system input language to English.. -> Issue persisted.

Checked the system Unicode language to English -> Issue persisted.

Restarted the Agentry Server? -> 🙁

Restarted the Windows Server and reinstalled the ATE? -> No help…

Frustrated…so I began to think maybe I need to focus on where the error occurred. and I found before this error there is a call in the backend system to the FM /SYCLO/CORE_SYSTINFO_GET and the code was quite simple.

FM code.jpg

Great finding! So before the ‘ZH’ was fetched, seems only the time zone information is retrieved from the client request. So maybe I need to change the locale information!

Changed the time-zone information to be PST time zone…-> no help..

Changed the location of the system to be US -> no help..

😡 😡 😡

Well maybe for ATE the information is not really from the Operation System where the ATE is installed? Then it should be some parameter related…

Checked the Agentry.ini and JavaBE.ini. Only one Language parameter in JavaBE.ini and it was set to EN… -> no help.

Maybe there is something wrong with the Agentry Server when I install it? Reinstall the AgentryServer..-> No help.

Reinstall the ATE again after the OS is a COMPLETE EN environment ..-> NO HELP..

I doubted if I understood the getClientDeviceLanguage method correctly. And by checking in sycloresource.sap.com I got some input for this method here.

Key information there is that we can solve this issue by change the Java source code of the getClientDeviceLanguage().

public String getClientDeviceLanguage(){

        Logger log = new Logger(this, “User::getClientDeviceLanguage”);

        String lang = “”;

        try{

            lang = eval(“<<user.client.Language>>”);

            if (lang.startsWith(ConversionUtility.AGENTRY_FLUNKY_ERROR)) {

                lang = “”;   

                log.error(“Property: <<user.client.Language>> not found, returning empty string”);

            }

            log.info(“Property: <<user.client.Language>> = ” + lang);

        }   

        catch (Exception le) {

            log.error(“Property: <<user.client.Language>> not found, returning empty string”);

        }

       

        return “EN”; // return lang;

    }

But I didn’t have the source code and I thought this could be very last option for my situation – this is only the fresh standard installation!!!

I gave up because it took me more than 2 hours already, and I blamed it to be a bug from ATE.

After I got back to office and could use device instead of ATE to connect, And soon I got the right position in the real device where this language is determined.

Changed the General->International->Language to be English? -> NO, you are wrong! Issue still persisted.

What really matters is: General->International->Region Format, and you need to change it to some English speaking regions!!! (e.g. United States)

And after discussion with ATE expert, I finally got the right way to use ATE connecting the AgentryServer:

In your ATE, check the toolbar View->Tools->Localization.

ATE Locale.jpg

After you switch on the toolbar, you will find the way to set the location and language manually.

/wp-content/uploads/2013/07/localization_251207.jpg

And it will solve the issue in ATE.

That’s it. 😕 😡 🙁

Hope this is helpful.

To report this post you need to login first.

Be the first to leave a comment

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

Leave a Reply