{"id":1328,"date":"2007-04-24T19:48:58","date_gmt":"2007-04-25T02:48:58","guid":{"rendered":"https:\/\/blogs.plm.automation.siemens.com\/t5\/Polarion-Blog\/Workflow-recording-status-change-dates\/ba-p\/380572"},"modified":"2026-03-26T05:37:02","modified_gmt":"2026-03-26T09:37:02","slug":"workflow-recording-status-change-dates","status":"publish","type":"post","link":"https:\/\/blogs.sw.siemens.com\/polarion\/workflow-recording-status-change-dates\/","title":{"rendered":"Workflow: recording status change dates"},"content":{"rendered":"<p>This new feature of Polarion 2.6.5 lets users to store important process information: the dates when work items change their workflow status. This information is always available in Polarion, but now we have the opportunity to easily use this data.<\/p>\n<p>For example Polarion users can <EM>export <\/EM>status change dates to MS Word documents to highlight the evidence, important for quality processes, of the acceptance of work items (i.e. Requirement or Problem Report). Or we can <EM>export<\/EM> such information in MS Excel sheets and use it to audit\/measure the time performances of some activities (i.e. how much time elapsed between creating a bug and fixing it).<br \/>\n<H3>How it works<\/H3><br \/>\nThe status change dates will be stored in specific custom field(s) of each individual item. So, first of all we have to define the custom fields where we would have dates stored.<\/p>\n<p>For example, we are working on <EM>Defect<\/EM> item type and we would like to store the <EM>resolution dates<\/EM>.<br \/>\n<H3>Custom field definition:<\/H3><br \/>\nAdministration perspective: [<EM>select project<\/EM>] : Work Items &gt; Custom Fields topic<\/p>\n<p>Download the <EM>defect-custom-fields.xml<\/EM> file and add the following element:<br \/>\n<PRE>&lt;field id=&#8221;resolutionDate&#8221;<br \/>\ntype=&#8221;<STRONG>date-time<\/STRONG>&#8221;<br \/>\nname=&#8221;Resolution Date&#8221;<br \/>\ndescription=&#8221;&#8221;\/&gt;<\/PRE><br \/>\nUpload the modified configuration file back to Polarion. Then we can go on to define the workflow for the Defect item type<\/p>\n<p><EM>Workflow definition:<\/EM><\/p>\n<p>Using the Web Interface in the Administration Perspective choose topic Work Items\/Workflow and create a new workflow definition specific for the Defect Work Item Type (click <EM>Create <\/EM>in the Actions column).<\/p>\n<p>Find the <EM>Actions<\/EM> table and for action to resolve click on the <A title=\"check\" href=\"http:\/\/community.plm.automation.siemens.com\/legacyfs\/online\/siemensplm_blogs\/2007\/04\/check.GIF\" rel=\"nofollow noopener noreferrer\"><IMG alt=\"check\" src=\"http:\/\/community.plm.automation.siemens.com\/legacyfs\/online\/siemensplm_blogs\/2007\/04\/check.thumbnail.GIF\" width=\"16\" height=\"16\" border=\"0\" \/><\/A> icon in the last column on right side (labeled Actions).<\/p>\n<p>Now we should have a new pop-up dialog like this one:<\/p>\n<p><A title=\"workflow dialog action  resolve\" href=\"http:\/\/community.plm.automation.siemens.com\/legacyfs\/online\/siemensplm_blogs\/2007\/04\/dialog_action_resolve.JPG\" rel=\"nofollow noopener noreferrer\"><IMG alt=\"workflow dialog action  resolve\" src=\"http:\/\/community.plm.automation.siemens.com\/legacyfs\/online\/siemensplm_blogs\/2007\/04\/dialog_action_resolve.JPG\" \/><\/A><\/p>\n<p>In the <EM>Function<\/EM> dropdown menu select the <EM>FieldValueChange <\/EM>option and click the plus icon and then the <A title=\"check\" href=\"http:\/\/community.plm.automation.siemens.com\/legacyfs\/online\/siemensplm_blogs\/2007\/04\/check.GIF\" rel=\"nofollow noopener noreferrer\"><IMG alt=\"check\" src=\"http:\/\/community.plm.automation.siemens.com\/legacyfs\/online\/siemensplm_blogs\/2007\/04\/check.thumbnail.GIF\" width=\"16\" height=\"16\" border=\"0\" \/><\/A> again.<br \/>\nNow we have the Parameters dialog where we have to specify following values:<\/p>\n<p><A title=\"workflow dialog action resolve parameter\" href=\"http:\/\/community.plm.automation.siemens.com\/legacyfs\/online\/siemensplm_blogs\/2007\/04\/dialog_action_resolve_parameters.JPG\" rel=\"nofollow noopener noreferrer\"><IMG alt=\"workflow dialog action resolve parameter\" src=\"http:\/\/community.plm.automation.siemens.com\/legacyfs\/online\/siemensplm_blogs\/2007\/04\/dialog_action_resolve_parameters.JPG\" \/><\/A><\/p>\n<p>So after closing the two dialogs and saving changes on the main workflow design page we should have the new workflow definition configuration file <EM>defect-workflow.xml<\/EM><\/p>\n<p>Here the fragment of the file with the new function defined:<br \/>\n<PRE>    &lt;functions&gt;<br \/>\n        &lt;function name=&#8221;FieldValueChange&#8221;&gt;<br \/>\n            &lt;param name=&#8221;field.name&#8221; value=&#8221;resolutionDate&#8221;\/&gt;<br \/>\n            &lt;param name=&#8221;field.value.type&#8221; value=&#8221;current.date&#8221;\/&gt;<br \/>\n        &lt;\/function&gt;<br \/>\n    &lt;\/functions&gt;<\/PRE><br \/>\nNow clear the system caches (Administration : Repository, Topic: System &gt; Caches ) and go to try the result of your work!<\/p>\n<p>Note that this new feature is a nice and generic function that we can find implemented out of the box; now, in Polarion 2.6.5, you can also design and implement your own custom functions that could be invoked during workflow transitions!<\/p>\n<p>Custom code invocation in workflow transitions is a <EM>very advanced<\/EM> topic, and if you like, we will write some notes on that here on this blog!<\/p>\n<p>In this part of the article we have seen how to record workflow status changes, in the second part we will show how to use these data. Stay tuned.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This new feature of Polarion 2.6.5 lets users to store important process information: the dates when work items change their workflow status. This information is always available in Polarion, but now&#8230;<\/p>\n","protected":false},"author":68983,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spanish_translation":"","french_translation":"","german_translation":"","italian_translation":"","polish_translation":"","japanese_translation":"","chinese_translation":"","footnotes":""},"categories":[1],"tags":[],"industry":[],"product":[],"coauthors":[],"class_list":["post-1328","post","type-post","status-publish","format-standard","hentry","category-news"],"_links":{"self":[{"href":"https:\/\/blogs.sw.siemens.com\/polarion\/wp-json\/wp\/v2\/posts\/1328","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.sw.siemens.com\/polarion\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.sw.siemens.com\/polarion\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/polarion\/wp-json\/wp\/v2\/users\/68983"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/polarion\/wp-json\/wp\/v2\/comments?post=1328"}],"version-history":[{"count":1,"href":"https:\/\/blogs.sw.siemens.com\/polarion\/wp-json\/wp\/v2\/posts\/1328\/revisions"}],"predecessor-version":[{"id":1329,"href":"https:\/\/blogs.sw.siemens.com\/polarion\/wp-json\/wp\/v2\/posts\/1328\/revisions\/1329"}],"wp:attachment":[{"href":"https:\/\/blogs.sw.siemens.com\/polarion\/wp-json\/wp\/v2\/media?parent=1328"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/polarion\/wp-json\/wp\/v2\/categories?post=1328"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/polarion\/wp-json\/wp\/v2\/tags?post=1328"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/polarion\/wp-json\/wp\/v2\/industry?post=1328"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/polarion\/wp-json\/wp\/v2\/product?post=1328"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/polarion\/wp-json\/wp\/v2\/coauthors?post=1328"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}