0
votes

I have a status field in an InfoPath form and I need to log the dates when it changes. The form populates a SharePoint list.

For example, - 1. [Blank/No Status] - 2. Open - 3. Pending - 4. Closed

I need to know when the status is changed from [blank] to Open, then when it changes to Pending, etc. and retain each date for future calculations.

I can use a formula in a new column in SharePoint to show the date the status is set, but I can't figure out how to make the date static when it changes. Using InfoPath is proving troublesome too as it won't allow IF statements.

SharePoint version is 2013.

2
InfoPath formula attempted: IF(Status="Open",now(),"")moosebiz

2 Answers

0
votes

One solution is to create a workflow. On each edit of the item it checks to see if the status column has changed, and if so, copies the current date to the appropriate "date changed" column.

Do you want to just store the last date the item went to "Pending" status, or only the first time it went to "Pending" status. (both can be done with the workflow)

0
votes

Additional info: I added an "updated date" field and an "original date" field to capture the date of the first status (original) and the change (updated).

I found that I was putting the rule on the fields that were meant to stay static and change, respectively. When I put the rules on the field that was triggering the change ("Status"), I added the condition that the intended static fields must be blank in order to populate and left that condition off the nearly identical fields that were meant to change.

Now when I select "Open", both the Original Date and Updated Date fields pick up the date "now()", when I select "Pending", the pending date (static for my purposes) fills, and when I go back to "Open", the Original date field stays the same and the Updated Date field updates to the new "Now()".