Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

Disclaimer: My experience with SharePoint does not extend much beyond having spelled it correctly a few times.

I've inherited a SharePoint 2010 library that tracks expense reporting by running an InfoPath 2010 form through a series of workflows. Mileage reimbursement is calculated based on rates stored in a SharePoint list.

Problem: If the rate in the list changes, the change causes any existing documents to recalculate their totals the next time they are opened.

What I know: I've been able to do some spelunking in the InfoPath form designer and found that the rate is populated from a SharePoint list. Looking at that field's properties, it says that it is updated from the data source every time the form is opened.

The data connection manager wizard had an option to "Store a copy of the data in the form template", which googling suggested would cache the current values in the template for offline use. This is unchecked. The final page of the wizard had an "Automatically retrieve data when form is opened" option, which is checked.

Ideally, the rate would be flexible until handled by a specific workflow, then set in stone for that item for all eternity. However, getting the rate to populate when a new document is created and having it remain static thereafter would probably be acceptable.

Question: Is there a setting somewhere that I can use to make the look-up only perform the look-up once, so that the value for that particular document is static? Further, is it possible to make it static as a result of a workflow?

If the former isn't possible, is there something besides looking-up the value from a list that might be easier? Rate changes are very infrequent, though the user prefers that the rate be editable via SharePoint list.

Any suggestions would be greatly appreciated, since my next step would be to call in an expensive SharePoint expert.

share|improve this question

1 Answer 1

up vote 1 down vote accepted

Answer:

Many advisory hours later...

  1. In InfoPath designer, discovered the rate was being populated into a Text Box that all other calculations used. Deselected the "Refresh value when formula is recalculated" option. This causes the value to populate once and only once at the time the document is created.
  2. Republished the template.
  3. Relinked all documents in the library to the new template.

Though this solved the issue, we were not expecting all the associated views and workflows to lose their associations. I had to restore a backup copy of the library elsewhere and copy all of the view and workflow settings.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.