Jazz Forum Welcome to the Jazz Community Forum Connect and collaborate with IBM Engineering experts and users

How to get a calculated value script to store a timestamp into an attribute ?

 First time using script based provider. Spent almost a day on it, still couldn't get it to work yet?

We have a small string attribute for date&time in text (validated with a regular expression) with a timestamp attribute as its dependency.

Eventually we will want to convert the text time into a timestamp to store in the TS attribute. But for now, as we kept failing to get it to work, we are just trying to: 
  • store current date&time, with new Date(), into the TS attribute (which had been tried with ReadOnly too)
  • when the txt attribute is modified and the WI get saved.
  • With the below Calculated Value script:
dojo.provide("com.acn.dor.scripts.validators.StoreTextTimeAsTimestamp");
dojo.require("com.ibm.team.workitem.api.common.WorkItemAttributes"); 
dojo.require("dojo.date"); 
dojo.require("dojo.date.stamp"); 

(function() { 

var WorkItemAttributes= com.ibm.team.workitem.api.common.WorkItemAttributes; 

var StoreTextTimeAsTimestamp = dojo.declare("com.acn.dor.scripts.StoreTextTimeAsTimestamp", null, { 

    getValue: function(attributeId, workItem, configuration) { 

    // var dateTimeString = workItem.getValue(WorkItemAttributes.com.acn.adt2.workitem.attribute.custom1_defect);    
var dateTime = dojo.date.stamp.fromISOString(new Date(), {milliseconds:true, zulu:true});
        return dateTime;  
    } 
}); 
})(); 

0 votes



One answer

Permanent link
I don't see a description what happens or what does not. Supposing your script is syntactically correct, the one thing you would have to do, is to set the dependency to the attribute that, when changed, would trigger the script and thus setting the calculated attribute (referred to as txt). You can only react on change of the attribute. When the attribute is changed, the calculated value is triggered. Just saving the work item would not trigger the calculated value.

You might want to look into https://jazz.net/library/article/1093 Lab 5 for some more hints on JavaScript.

0 votes

Comments

What we'd like to achieve is: 

  • When any change on the txtAttrib (with a reg exp validator) is made 
  • It will trigger the Calculated Value script  tied with the TSattrib.
  • This script will return hence store a timestamp into the TSattrib
Do we make txtAttrib a dependency of TSattrib ? or vice versa ? We had tried both ways actually, neither works.

Nothing get stored in TSattrib.

To trigger the calculated value for TSattrib, you need to add a dependency to txtAttrib to TSattrib. This will trigger the calculated value script when txtAttrib changes.

Your answer

Register or log in to post your answer.

Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.

Search context
Follow this question

By Email: 

Once you sign in you will be able to subscribe for any updates here.

By RSS:

Answers
Answers and Comments
Question details
× 6,126

Question asked: Mar 25 '14, 9:55 p.m.

Question was seen: 4,450 times

Last updated: Mar 26 '14, 9:26 a.m.

Confirmation Cancel Confirm