none
Large data look ups with InfoPath RRS feed

  • Question

  • With InfoPath web client,

     

    I want to do a look up from a SharePoint list or SQL database, which has over 5000 entries.

     

    Now a single look up list, would be ugly to the end user and cause a performance hit on the form.

     

    Any suggestions on a way to break down the look up.

     

    Bring back the data connection into different batch and put into a single data source?

     

    Any suggestions?

     

    Thanks

     

    PW

    • Moved by Mike Walsh FIN Wednesday, February 17, 2010 4:13 AM InfoPath q (From:SharePoint - General Question and Answers and Discussion (pre-SharePoint 2010))
    Wednesday, February 17, 2010 3:52 AM

Answers

  • do you want to show 5000 items on the infopath form? probably not a good idea - fetching data is probably going to stall the form load for 10-20 seconds.
    however once there you can cache it.

    if you have the items in sharepoint using owssvr.dll is probably the fastest way to query and filter the list
    e.g.
    http://<server>/_vti_bin/owssvr.dll?Cmd=Display&List={GUID}&XMLDATA=TRUE&FilterField1=<fieldname>&FilterValue1=<filtervalue>
    this url can be maniplulated on the client using code behind and then calling dataconnection execute etc.

    I'm doing something similar with cascading drop-downs, select the first value, load ~150 results into another drop-down and let the user select from there...

    The only issue I see with that approach is an annoying dialog that pops up to tell the user that it is getting data, I trying to find a way round that.

    the other approach is to write code behind and call either custom web service to do stuff for you or use the existing sharepoint web services to filter the results.

    hope that helps
    Wednesday, February 17, 2010 6:03 AM
  • Hello,

    You will definitely have to write your own custom solution.  InfoPath does have filtering capabilites, but they are not compatible with browser-enabled forms so you won't be able to use them.  MrP's suggestion of cascading dropdowns sounds like the best way for you to go.


    Chris Caravajal MCTS SharePoint Help
    Monday, February 22, 2010 2:51 PM

All replies

  • do you want to show 5000 items on the infopath form? probably not a good idea - fetching data is probably going to stall the form load for 10-20 seconds.
    however once there you can cache it.

    if you have the items in sharepoint using owssvr.dll is probably the fastest way to query and filter the list
    e.g.
    http://<server>/_vti_bin/owssvr.dll?Cmd=Display&List={GUID}&XMLDATA=TRUE&FilterField1=<fieldname>&FilterValue1=<filtervalue>
    this url can be maniplulated on the client using code behind and then calling dataconnection execute etc.

    I'm doing something similar with cascading drop-downs, select the first value, load ~150 results into another drop-down and let the user select from there...

    The only issue I see with that approach is an annoying dialog that pops up to tell the user that it is getting data, I trying to find a way round that.

    the other approach is to write code behind and call either custom web service to do stuff for you or use the existing sharepoint web services to filter the results.

    hope that helps
    Wednesday, February 17, 2010 6:03 AM
  • Hello,

    You will definitely have to write your own custom solution.  InfoPath does have filtering capabilites, but they are not compatible with browser-enabled forms so you won't be able to use them.  MrP's suggestion of cascading dropdowns sounds like the best way for you to go.


    Chris Caravajal MCTS SharePoint Help
    Monday, February 22, 2010 2:51 PM
  • Thanks that did the trick
    Wednesday, March 3, 2010 2:08 AM