Cascading drop down selection fields in browser enabled InfoPath form

The other day I had to create an InfoPath form that was using cascading drop down selection fields. But then I discovered that when you set the form to be browser enabled it is not possible to use a filter in order to limit the selection.

Luckily i stumbled upon a very good article by Ishai Sagi. He explains in this article how to use the owssvr.dll service to load a filtered xml version of a SharePoint list. Thanks Ishai!

There are a few additions i would like to add to his article.

  1. When selecting items from a warehouse that are based on an item-category the list that pops up is not sorted. This might make finding the right item a tough job. This is where the View parameter comes in handy.
    • Create a view in SharePoint that lists the items in the order you wish and maybe even apply a filter.
    • Use the &View={view GUID} parameter to select this view.  …/owssvr.dll?Cmd=Display&List={put the ID here}&View={List GUID}&XMLDATA=TRUE
  2. To prevent making selections that do not match is is wise to clear the child fields when you have selected an item in the parent field. Otherwise it is possible to change the parent field after you have selected an item in the child field and come up with an impossible set of items. To do this create a rule for the parent field that sets the child field to “”. This way you are sure that the child field is blank and that a new choice has to be made.