I have a SharePoint 2013 list with a form customised via the use of InfoPath Designer. The form uses four data connections, and one of those is used for pre-populating two fields after the user enters data into the first field.
Today we added more records and the form now takes over a minute to load every time it is opened. The XML file itself is not very large (509 KB), but it contains 2,015 records. If these were stored in a spreadsheet, it would take up 2,015 rows and three columns. Two of those columns contain unique values for each row, whereas one column contains only eight unique values (used repeatedly).
Based on my research, it appears the delay is due to the fact InfoPath starts parsing the XML file as it's being loaded. If this is correct, I'm assuming there's little I can do to improve the load time.
Therefore, I started looking at the possibility of using a Web Service instead, but it's unclear to me if this is even an option?
According to Web Services Access (on Microsoft's website), the SharePoint environment includes built-in Web Services that can be used. However, when looking over the list of services and their descriptions, it's unclear to me if and how I can use one of these with my custom data to help pre-populate the InfoPath form?
So, essentially my question is: How can I improve load times?
It's unclear if there's anything I can do to improve this with the XML file I have? And it's unclear if using a Web Service is even an option for me (after all, can I format/store my custom data to be used as a web service)? Or, should I be looking at another option altogether to improve load times for this InfoPath form?