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.
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)
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()".
Related
I am trying to set a condition in a NetSuite workflow so it only triggers when the date of emp. Termination = today and the date that same field was edited also = today. This is what I have but it is not working:
(DECODE({systemnotes.field.id}, 'custentity_emp_termination_date',{systemnotes.date})={today}) and {custentity_emp_termination_date} = {today}
Thanks in advance!
{systemnotes.field.id} is not a real field. It implies a multi-level join (from current record to System note to Field), which NetSuite does not allow outside of SuiteAnalytics. The "Name of Field" can be viewed if you put "{systemnotes.field}" in a saved search to see how it is formatted since it'll have to be exact.
Replace the code with:
DECODE({systemnotes.field}, 'NAME OF THE FIELD',{systemnotes.date})
Goal:
3 fields titled "Assigned Date", "Ready for Review Date", and
"Submitted Date".
When a user changes the Internal Status field to
"Assigned", the "Assigned Date" field should update with a timestamp.
When the same record's status is then later changed to "Ready for
Review", the "Ready for Review Date" is updated with a timestamp
while the "Assigned Date" timestamp remains un-changed.
Limitation: Unfortunately, I cannot create a customized workflow. Otherwise I wouldn't really be asking. My team is limited. We cannot access any other software / UI besides SharePoint online or InfoPath. There's no going around this. I know, it's redic.
My Attempts:
I tried using InfoPath where I added an Action Rule (Set Field's
Value). However, for me, this only worked when adding records. But
for existing records, when I change the status in the Datasheet View,
the timestamp fields did not update. Also, my team does not operate
in webforms. We create and update the list in the Database View.
I tried using a typical formula. See formula below. However, the
timestamp output from the formula changes when the status changes. I
need it to be a timestamp. See formula I used below:
=IF(Status="Sent to Client",TEXT(NOW(),"dd/mm/yyyy hh:mm"),IF(ISBLANK(Status),"","NULL"))
I'm thinking this request is kind of impossible without using a Workflow. But I'd thought I'd give it a try if there's a fancy formula that I can use for a Calculated Field or if I could use InfoPath.
Appreciate the help!
The only other option then is to use (serious) JS coding to program what the Workflow would have doen.
Usually allowing SharePoint Designer is cheaper than coding for a week
I have a form where I need to include a calculated field. I made a very simple test using a calculated field where the formula is "=ID". I just want to confirm that the value I'm getting in the view is the same as the ID of the record in the list.
I press NEW and create a new record. Then when I see the new record in the view, the first column is the ID (let's say 11), then some proper fields form the form and finally the calculated field that instead of showing me the value 11, it shows 0.
Then I follow the following steps:
I go to Settings, List Settings
Click on the calculated field to edit it (only edit it with no modifications) and press on OK (no modifications to the calculated field at all)
Go back to the list of records and now the calculated value shows me the value 11
I google it but no solution.. there is someone say that this issue is from the column ID, it mean 'when you initially save the item is that there is no value for "ID" yet' !
and this isn't my state, the column id is incremented normally when add new item.
Anyone can help me to identify with the calculated field does not shows 11 automatically after the record is saved?
or by follow another solution like using a workflow 2013..
Thanks a lot
You can not use [ID] in a Calculated Column formula.
I won't bother with the long technical explanation...
If it was possible, Microsoft would have added it to the list of Fields you can select when writing a Formula.
Workaround is to make a simple SharePoint Designer Workflow which kicks off on Item creation and saves the ID value to another Column.
You can then use that Column in your Calculated Formulas
If you're doing anything front-end.. jQuery.. CSR/JSlink.. the ID value is available in the attribute id of the Item TableRow (TR) as x,id,y
so you can get the id with
var ID={element}.getAttribute('id')[1]
Update #1 - example code used:
="<a href='/sites/ru1/Lists/ao26c/DispForm.aspx?ID='
target='_blank'><img src= '_layouts/images/blank.gif'
onload= ""var row=this;
while(row.tagName!='TR'){row=row.parentNode};
this.parentNode.href+=row.getAttribute('id').split(',')[1];
"">Открыть</a>"
We've created a pretty standard issue tracking system based off of SharePoint's template with just a few extra columns. On the list view (AllItems.aspx), the first column is called "Issue ID" and has a number. Our developers and QC use that number in discussions. However, that number doesn't seem to want to show up on the detail form (DispForm.aspx) nor in the alert email.
Can this field be included in at least one of these communication methods? If so, how?
Thank you.
We did something similar and used workflow via SharePoint Designer to copy the ID field into a field called "Issue Number". The workflow gets triggered automatically on Create / Edit (we included edit because the field can be modified by the user on the edit form and if that happens we want the number refreshed with the actual ID).
Before you create the workflow in SharePoint Designer, you need to add a column called "Issue Number" to the list you want to tweak.
List item
Open Sharepoint Designer
List item
Click File New -> Workflow
Give a name for the workflow
a. select the list from the dropdown
b. Uncheck Allow this workflow to be manually started and check automatically start on new and change then press Next
Give the step a name like "Assign Issue Number"
Create a Condition
If Compare a field -> If Issue Number not equals Current_Item:ID
Create an Action
Update List Item -> Set Issue Number to Current_Item:ID
Press Finished and test out by creating a new issue.
*The Issue Number will appear on the form and if you have emails setup to notify on assignment it will appear in the reassigned template.
*It will not appear in the created email confirmation because the workflow gets triggered after that email was executed.
I just added the issue ID using a total of 4 characters. Create a new column, set it to a Calculated column, in the formula type [ID]. Voila! The ID is now in your detail view.
The ID link returned the for me, however, the work around which sufficed for me was to enter 'Created' in the Calculated Column formula and ensure it is set at date and time. That then creates a unique idenity (unless you receive more than 1 list update per minute) than can be viewed in the email alert message
WSS 3.0
I have a List that contains a text field, a check-box, and a Date field. When the check-box is ticked I want to set the date field to the current date, and when a check-box is un-ticked I want to set the Date field to blank (or null, I don't care which just as long as it appears blank).
I have created a Custom Workflow using Sharepoint Designer which correctly handles the first situation - and inserts the current date as required. But I am unable to create a Workflow action that will set a Date field to null or blank. By default the Date field is not displaying a value (which is what I want) so I know it must be possible to reset it to be the same.
Anyone have any ideas?
So, this definitely falls in the "Workaround" or "Last Resort" category but it works.
Create a new Date column in your list called EmptyDate (Default Value must be None)
Use the Set Field in Current Item activity to set your Date field to be EmptyDate.
This may work if you use content types and can hide the EmptyDate column so that it can't be filled in.