Skip to Content

Leave Request / HR Approvals not working on Android

We have implemented Leave Request / HR Approvals successfully on iOS platforms iPhone and iPad 🤣

However when we loaded the apps on Android we can see the initial synchronisation authenticating against SUP but not connecting correctly with the NW Gateway / SAP ECC 😕

Message on screen is "connecting" for 20 seconds followed by an error message "Communication Error - Cannot retrieve data, try again".

Any idea's ?

We are not using a Relay Server, but connecting directly to a SUP 2.1.2 proxy setup. And as I say this setup works fine with the iOS version of the SAP apps.

Netweaver Gateway and SAP ECC systems setup as per documents "Administrator's Guide SAP Leave Request 2.4.0.pdf" and "Administrator's Guide SAP HR Approvals 2.3.0.pdf"

Any thoughts ?

Possible answers

  • Android requires SUP 2.1.3 rather than 2.1.2 ?
  • Android requires a Relay Server ?
  • Android requires extra setup of NW Gateway or SAP ECC ?

Looking at past posts and wiki's:

I have tested with Android devices 2.3.3 and up

http://wiki.sdn.sap.com/wiki/display/mobile/SAP+Mobile+Store+Apps

I loaded the app from here

https://play.google.com/store/apps/details?id=com.sap.mobile.hcm.leaverequest

This application has access to the following:

Network communication

  • full Internet access
  • Allows the app to create network sockets.

Your personal information

  • read sensitive log data
  • Allows the app to read from the system's various log files.
  • This allows it to discover general information about what you are doing with the tablet, potentially including personal or private information.
  • Allows the app to read from the system's various log files. This allows it to discover general information about what you are doing with the phone, potentially including personal or private information.

Phone calls

  • read phone state and identity
  • Allows the app to access the phone features of the device. An app with this permission can determine the phone number and serial number of this phone, whether a call is active, the number that call is connected to and the like.

Storage

  • modify/delete USB storage contents modify/delete SD card contents
  • Allows the app to write to the USB storage. Allows the app to write to the SD card
Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

3 Answers

  • Best Answer
    Oct 29, 2012 at 10:06 AM

    Hi David,

    A missing "\"  or additioonal space in the in the proxy URL can cause request failure.

    Since already you have succeeded with  iPhone/iPad app, I assume that your proxy URL at SCC is correct.

    Can you please enable the logs for further analysis?

    Enable the domain logs on scc:

    Steps:

    1. Domain>>DomainName>>Log>>Settings>>New >> Enter a name

    2.Select "Application Connection" and chose your User

    3. Select "payload" and chose "request response"

    4. Select "Enable after creation"

    Save the settings.

    Change the log level at Server>>Logs>>Unwired Server>>Settings>>Proxy>>Debug.

    Fire a new request from your application.

    Under Domain>>DomainName>>Log>>General>>Proxy, click on retrive to display the latest logs:

    Regards

    Rohith

    Add comment
    10|10000 characters needed characters exceeded

    • My colleague Neil Malik found the problem in the SUP setup. We were using a different SAP Client id of 110 and this was hardcoded in the URL. iOS did not mind this, Android objected.

      Solution was to remove the client id from the URL

      Sorted

  • avatar image
    Former Member
    Nov 16, 2012 at 02:32 PM

    I'm thinking we could use this as a troubleshooting entry in our docs. Title: Client Communication Error: Cannot Retrieve Data.

    What do you think? Looks like the solution is in the URL encoding: so maybe include recommendations like "do not hardcode client IDs" "watch for missing spaces or extra chars". Any thoughts?

    Add comment
    10|10000 characters needed characters exceeded

    • I agree, what is odd, very odd is why it effect Android and not iOS. As this is a setting that effect SUP to Gateway connection not the Mobile to SUP connection !

  • avatar image
    Former Member
    May 20, 2013 at 10:51 AM

    Hi All,

    I also have a similar problem for SAP HR Approvals Apps. tried to debug the and found the following error in the log file :

    2013-05-20 09:54:16.456 Application ID=com.sap.meps.hcmapproval, Application Connection ID=453f08154c0bd0b4067b28bf9e5b9e8d86b__com.sap.meps.hcmapproval, User=hrtest, Correlation ID=991359, Http Endpoint=http://centos.xxx.com:8010, Log Level=OFF, Request Type=GET, Request URL=http://centos.xxx.com:8010/sap/opu/sdata/GBHCM/APPROVALS/ItemCountCollection?$filter=CalendarPeriod%20eq%20'W', Response Code=403, Source=ODP Server, MISC Info=ODP Request Response Domain Logs, Thread ID=440, Node ID=supdtr/10.4.63.114, Error=No connection returned from the Connectionpool.Endpoint is not whitelisted with SUP. Hence terminating the request, Request Header Fields=[{"X-SAP-applicationId":"com.sap.meps.hcmapproval"},{"request":"GET"},{"url":"http://centos.xxx.com:8010/sap/opu/sdata/GBHCM/APPROVALS/ItemCountCollection?$filter=CalendarPeriod%20eq%20'W'"},{"Accept-Encoding":"gzip"},{"X-SAP-applicationId":"com.sap.meps.hcmapproval"},{"Accept-Language":"en"},{"X-SAP-deviceType":"iphone"},{"X-SAP-deviceId":"45354c0bd0b7b280c6bf9e5b0d9e8d86b"}], Response Header Fields=, Response Body=, Post Data=

    when i check the log file on my iPhone device i get the following error :


    HR2.PNG (141.9 kB)
    HR1.PNG (163.9 kB)
    Add comment
    10|10000 characters needed characters exceeded