SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Is it possible to have a "save and copy" button on an InfoPath form based on a SP 2013 list that will save the current form and then open a new one with the previous forms data pre-populated? This is to make it easier for users to enter multiple

I am using InfoPath 2013 and displaying the form in a web-browser. Because the form is based on a SP list it wont let me add code-behind so a solution that doesn't require custom code in the form would be ideal.

share|improve this question
    
Ryan did you ever resolve this issue? I am faced with the same challenge. – LoganJ Feb 5 at 14:56
    
Nope, we moved away from InfoPath because of issues like this with no way to work around it – Ryan Erickson Feb 5 at 15:26

You can create a button in infopath form to save and ad new item in your list . For more information check this link : http://ybbest.wordpress.com/2012/01/18/create-a-save-and-create-new-item-functionality-in-infopath2010/

share|improve this answer
    
This creates a new form but it doesn't keep the data around which is what is required here – Ryan Erickson May 3 '13 at 14:59

I don't know how familiar you are with Rules in InfoPath but there are some possibilites.

You can achieve this by using Form Load Rules (https://support.office.com/en-au/article/Introduction-to-rules-f00de016-7b2d-4ef8-b168-26b7748c22a1#__toc265825740) to initialize fields when the form is loaded.

For your case you need a DataConnection to the List.

  1. On the Data tab, click Data Connections, and then click Add.
  2. In the Data Connection Wizard, click Create a new connection to, click Receive data, and then click Next.
  3. Click SPList, select your list and the fields you need (including Created By) to be filled in. Oder by Created Date.

On Form Load Rule :

  • Set A fields value -> Your List -> Query Fields -> Created By. Set it to "userName()". Filter the results to only use Created By = userName().
    • Query Data Connection (Your List)
    • Set a fields value -> Your Field = Result from your Query

Then you can fill the fields with the Information from the List. If you need further Information please comment.

share|improve this answer

Create a button that pulls the last created record (you have to query for the max id and then create a rule for each field that matches that max id) and then populate that data. You could do it automatically as a form load rule also but then it would do it every time. Give the user the option.

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.