Handling Cascading Lists in Nested Tables

J

Jason

This is a little difficult to explain, but here goes:

I have a layout table with 3 columns, inside a repeating section, who's
lists are populated with a hierarchal xml file.

In the first column is a layout table with 2 columns that each contain a
dropdown list. The firs list is entitled "Task" and the second is called
"Object"

The second column contains a repeating table with 2 columns. The first is a
dropdown list called "Option and the second is text field called "Value"

The third column contains another repeating table with 2 columns. The first
is a dropdown list called "Filter" and the second is a text field called
"Value"

My problem is linking the available list in the options dropdown list based
on the selections in the Task and Object lists. I followed the heplful
tutorials on infopathdev.com and was able to successfully link (if column 2
did not contain a repeating table) using the current()/my:Field method. But
as soon as I placed the dropdown listbox in a repeating table, that broke.

I then changed the filters such that secondary data source task value "is
equal to" Task and then the same for object. That seemed to work until I hit
the insert new section button. Then the Option list in the new section was
being filtered by the selection in the previos section. I realize that this
is becuase current() isn't being used.

I hope that made sense. Basically it seems that nesting a table inside a row
cuts the vision of current() so it can't see the selections in the current
row of the parent table. Someone may say to just get rid of the nested tables
but there can be many Option-Value pairs that can be selected for each
Task-Object. If anyone knows how to either get current() to work with the
nesting or to keep the subsequent sections from being filtered by the
previous one, the help would be greatly appreciated.

Thanks!
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top