[KULRICE-10909] Open lookup through script Created: 09/Oct/13  Updated: 24/Sep/14  Resolved: 28/Jun/14

Status: Closed
Project: Kuali Rice Development
Component/s: Development, KNS Equivalency
Affects Version/s: None
Fix Version/s: 2.5
Security Level: Public (Public: Anyone can view)

Type: Improvement Priority: Major
Reporter: Jerry Neal (Inactive) Assignee: Matthew Wuertz (Inactive)
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: 2 days, 2 hours
Time Spent: Not Specified
Original Estimate: 2 days, 2 hours

Issue Links:
Relate
relates to KULRICE-12744 Quickfinder Lookup doesn't populate c... Closed
Rely
is relied upon by KULRICE-12730 AFT Failure DemoControlKimUserAft, De... Closed
Epic Link: Lookup Equivalence
KRAD Feature Area:
Document
KAI Review Status: Not Required
KTI Review Status: Not Required
Code Review Status: Not Required
Include in Release Notes?:
Yes

 Description   

Currently the quickfinder posts the page which sends back a redirect URL, which is then rendered in the lightbox. This is a lot of overhead. Instead, we should be able to build the URL through script and invoke the lightbox without posting the page



 Comments   
Comment by Claus Niesen [ 07/May/14 ]

Quickfinder content doesn't get rendered in lightbox. The browser console shows a GET 400 bad request error.

Reverting commit 46253 fixes this.

Comment by Jerry Neal (Inactive) [ 09/May/14 ]

All,

Looks like this code was reverted on the 2.4 branch. We still have it on 2.5 and ran into the same issues. So we are going to revert it there as well. But we should reopen this issue to take a look at implementing this functionality again right?

I will take a look at the initial work to see if I can provide some suggestions.

thanks,
Jerry

Comment by Jerry Neal (Inactive) [ 09/May/14 ]

Matt,

A few things with the initial implementation of this. First, the code that broke lookups was around the baseURL:

var baseURI = this.documentURI;
if (baseURI.indexOf("?") > -1)

{ baseURI = baseURI.substring(0, baseURI.indexOf("?")); }

var lookupUrl = baseURI.replace("kradsampleapp", "lookup?");

Instead of this, we can get the baseUrl through the action parameters:

var lookupUrl = data['actionParameters[baseLookupUrl]'];

Also, take a look at performLookup in UifControllerBase. Instead of hard-coding the URL parameters, we should be able to pull those from the actionParameters map like is being done in the base controller.

thanks,
Jerry

Comment by Sona Sona (Inactive) [ 02/Jun/14 ]

Reopening because this causes KULRICE-12730. Using KIM User Control throws "lookupable is null" error.

This is happening because Person is an externalizableDataObject and the performLookup in UifControllerBase was translating the externalizableDataObject to a new lookupURL with the dataObjectClass changed to PersonImpl.

With the fix for this jira we are now skipping the initial call to performLookup and this won't work for any externalizableDataObjects.

One solution I thought was to override baseLookupURL in quickFinder in the UserControl, but that won't work because the quickFinder lifecycle runs after that and overrides the baseLookupURL.

We need to come up with a mechanism to deal with the lookups for EBO.

Comment by Jeff Ruch [ 04/Jun/14 ]

This issue caused KULRICE-12744 Quickfinder Lookup doesn't populate criteria fields with data from calling field. The form data (lookupCriteria) is no longer posted. I verified that reverting the changes to krad.widget.js.createLightBoxPost() resolves KULRICE-12744.

Comment by Jeff Ruch [ 04/Jun/14 ]

KULRICE-10909 causes KULRICE-12744

Comment by Matthew Wuertz (Inactive) [ 28/Jun/14 ]

I have addressed 12744 and 12730.

Generated at Fri Jan 22 20:12:27 CST 2021 using JIRA 7.0.11#70121-sha1:19d24976997c1d95f06f3e327e087be0b71f28d4.