Hi,
We have a large suit of client-based Infopath 2007 forms. They are hosted in form libraries in sharepoint.
We have a .NET website hosted on a different server which acts as the framework through which role based access and other functions are performed. From this website the user selects which form they wish to complete, click the link, and the link points them to the correct form template passing in some parameters to the form.
The parameters are picked up in C# within the FormCode.
So, to launch a form we have http://server/path/template.xsn?Specialty=something
To pick up the value in FormCode we have:
if (e.InputParameters.ContainsKey("Specialty"))
{ Specialty = e.InputParameters["Specialty"]; }
else
{ Specialty = " "; }
Now, this worked for 99% of people around 99% of the time.
Sometimes people report the form as "opening blank".
What this turns out to mean, is that the parameter wasn't detected in the "InputParameters", and so were defaulted to blank.
Tracing shows the URL did have the value in it, so it is just that the InputParameters object didn't contain the key.
Often doing an Infopath cache clearall did the trick, but not since upgrading our user estate to IE8 it is happening with greater frequency, and the cache clearall is not working.
Does anyone have any ideas what could be happening, and how to resolve?