Showing posts with label InfoPath 2007 forms. Show all posts
Showing posts with label InfoPath 2007 forms. Show all posts

Monday, May 26, 2014

THERE HAS BEEN AN ERROR WHILE LOADING THE FORM. A REQUIRED RESOURCE COULD NOT BE DOWNLOADED. TO TRY TO RESUME THE DOWNLOAD, REFRESH THE PAGE _ INFOPATH

I found this to be a strange permissions issue.
After going through loads of forums and blogs with people having the same or similar issues.
I tried all the recommended solutions but none of it worked for me.

The only time I did not receive this issue was when I logged into IE with the Admin User.
But this solution was not going to work for everyone.

As a solution / workaround I had to configure IIS,

  • the application pool identity being the Admin User
  • Update the Basic setting of the site to use "Application user (pass-through authentication)" as the Path Credentials
Steps:
  1. Open IIS
  2. Click on Application pools
  3. Right click on the application pool and select "Advanced Setting".

  4. Then select Identity.
  5. Select "Custom account" and set it to the Admin user.
  6. Select Ok.
  7. Update the Basic setting of the site. Select the site.
  8. Click "Basic Settings".
  9. Click "Connect as..."
  10. Select "Application user (pass-through authentication)"

Friday, June 24, 2011

Upgrade existing InfoPath 2007 form (including data) to new InfoPath form version

My problem:
My client currently had an InfoPath form published to a forms library in SharePoint. They wanted some amendments made to the form, including additional fields.
They wanted all the existing forms within the library to have all the new version's amendments.
This was not going to be possible with a normal InfoPath form upgrade.


My solution:

What I did was:
  1. Extracted the data from the old form and temporarily stored it.
  2. Created a new form with the same name and overwrote the existing form.
  3. Populated the new form with the stored data.
All this was done using 2 workflows. (I am currently using Nintex Workflows).


First workflow
  • Using workflow actions:
    • I query the list for all items matching the content type version 1 of the InfoPath form.
    • I loop through the results of this query:
      • using a 'Query XML' action, I retrieve the data from the existing form.
      • I create a new item using the 'Create an item' action. I set the name to exactly the same name as the current form item and specify 'Overwrite an existing item'. I store all data retrieved in the 'Query XML' in a temporary field value which I called 'Form XML'. When the new item is created it overwrites the current item preserving it's ID.
      • I then kick off a second workflow using the Nintex web service method called StartWorkflowOnListItem. (http://<site>/_vti_bin/nintexworkflow/workflow.asmx). This workflow kicks off on a specific item specified by the list item ID.
Second Workflow
  • Using multiple 'Query XML' actions I retrieve the data from the temperary field I stored it in.
  • Using an 'Update XML' I update the new form with the old data.
That sounds simple enough :)
I have excluded any business rules I have in my current workflows for the purposes of this blog.

Some of you might be wondering why I used a temperary field to store the data instead of passing the data via the web service method using the associationData tag.
I had issues when passing the data using the a associationData tag. The temperary field was a quick and easy workaround I could implement as this solution was going to be used as a once off to upgrade existing forms.