cancel
Showing results for 
Search instead for 
Did you mean: 

Deep linking in Approve Requisitions

former_member187859
Participant
0 Kudos

Hi Experts,

I have run into a situation where deep linking is not working as I would expect. I am running the Approve Requisitions app and generating emails to send to my users who do approvals, each email including a deep link to the specific req that the email mentions.

Let's say I have two purchase reqs to approve/reject, tied to 2 WorkitemIDs. ID 11 is the one I want to share with my user in a deep link, ID 22 is the latest one that's been created for this user - and thus the one the user would see by default if they just came into the Approve Purchase Reqs app from the Launchpad.

I email my user this link, wanting them to be able to jump to the specific req in the email: https://launchpad_path?sap-client=XXX#sap-language=EN#PurchaseRequisition-approve#/detail/WorkflowTa...')

However, when the user gets the email and clicks/taps the link, their Approve Requisitions app opens up and puts them in the detail view of ID 22 (and the URL becomes https://launchpad_path?sap-client=XXX#sap-language=EN#PurchaseRequisition-approve#/detail/WorkflowTa...') in their browser).

Now, using the same browser tab that opened when they clicked the link in my email, they can copy and paste the original link (pointing to item 11) and the detail screen will output the right item. If they copy/paste the link and use a new browser window/tab, the same issue comes up...they get redirected to ID 22.

I have done some cursory debugging on the Gateway system, and have found that when the user tries to launch the link from the email they will trigger the get_entity method for ID 11 - however, shortly after that the get_entity method for ID 22 is called. This leads me to believe that the problem is in the way UI5 initializes the application on first loading, since after the application is loaded in the tab I can now navigate (in the same tab) via deep links to whatever item I like.

My questions:

-Have I set up the deep link properly? Is there another technique I am missing? I assume that the launchpad_path is correct in my URL since my app is actually launching.

-Has anyone seen any notes or other discussions of this kind of thing? I have been searching around and haven't seen anything - but I readily accept that I'm not searching for the right stuff.

As always, help is greatly appreciated.

Paul

Accepted Solutions (1)

Accepted Solutions (1)

former_member187859
Participant
0 Kudos

If anyone else out there is looking for this same issue: after raising the issue in a support incident, SAP Note 2193124 now has the included correction instructions for this issue.

Answers (1)

Answers (1)

kammaje_cis
Active Contributor
0 Kudos

Can this be problem with your identity server? Are you sure that it is properly preserving the deep link and redirecting right after authenticating?

Easy thing to analyse would be using /IWFND/TRACES and check if right requests are landing in Gateway.

former_member187859
Participant
0 Kudos

Thanks for the suggestion re: /IWFND/TRACES. I ran through this on a few clicks/requests - and it looks similar to what I was describing when I looked at the Gateway debugging.

I'll enter the URL to a blank tab with my preferred workitemID in it and I'll see an OData request come through that matches that ID - and then within less than a second I'll see the OData request come through for the latest ID. Whereas if I enter the URL on a page that has already loaded up the UI5 Purchase Reqs app, I will only see the one OData request.

So to me it still smells a little bit like the UI5 side of the equation. Right now I'm trying to brainstorm ways to work around this without going totally custom on the front or back end.

kammaje_cis
Active Contributor
0 Kudos

Yes, that sounds like a UI5 issue. I have the PR approval app and I could reproduce the issue.

In a typical Master Detail application, moment the master list is populated, it will always issue a read on first item in the master list. But if the master list is already populated, then it will just do the read for the target  item. This explains the behavior in a new tab and an existing tab. But with the routing url, it should not have issued the call to first item's detail.

Definitely it is a bug with the app.

former_member187859
Participant
0 Kudos

Thanks for verifying with your system, and for explaining and confirming my suspicion. My SAP incident has been forwarded on to the development team, and if a solution is found I'll post it in this thread as well.