Dataview of multiple InfoPath forms

Category: sharepoint 2010 customization


bmcomp on Fri, 05 Jul 2013 16:02:36


I have a site with a few different forms and would like to create a view to show the status of all these forms to the current user.

Each form has 3 common fields (field names differ).  These are the form name, status and stakeholders.

So lets say I have 2 form libraries with the following columns

Form1 Name, Form1 Status, Form1 Stakeholders

Form2 Name, Form2 Status, Form2 Stakeholders

I want to roll up each form in both libraries to the following view.

Name, Status, Stakeholders


Form 2 etc..

Any idea?




bmcomp on Fri, 05 Jul 2013 20:11:38

Ok, I have achieved what I want by creating a merged data source of all the form libraries. Then in the custom data view I have the name column which does actually merge but for the status and stakeholders columns I just set the column value to be the value of each form. This way only one form will have a value so the rest are blank. It does however require a user to maintain the list if new forms are added to the data source. If you know of a better, more automated way of doing this I'd be glad to here of it. Otherwise this should do the trick. Cheers B

JF FUSTEC on Mon, 08 Jul 2013 10:16:48

This seems to be rather good trick. But you can also try some more research,

- Put all your forms in a single Library, using content types.

- Make one view for each content type (filtered on the content type) to have the proper columns

- make a global view, with only the common columns, grouped by name, for example.

bmcomp on Mon, 08 Jul 2013 19:25:57

Thanks for the reply. The users have all the views they need in each form library. The global view was more for the main dashboard page so the users can see all of their active forms in one view. And also there are very little columns that merge, so the ones I want in a summary view will require each column, which I didn't want. I just taught there would be an easier way to do this. But the custom dataview seemed to do the job.