Please do not try to download and/or contact us regarding this extension.
V. 1.0.8: This extension has all the functionality of the original, as well as adding new functionality. Bugs have been fixed and several limitations removed.
The workflow extension allows you to automatically create linked work items when you change the status of an item.
- Add ID of mother item to child item at different locations in title
- Add a prefix to child item
- Initial estimate and remaining Estimate of child item can be a promille of source item (example CR (initialEstimate=2d) is refined by two tasks (each task has initialEstimate 1d)
- Copy fields to child item
- Change fields of source and child item
- Specify type and link of child item
- New item can also be linked to other related items (different logics available)
- Set fields in new item and in current item (attention: multi-enum fields are not supported)
- Add comments to created workitem
Attributes which can be set
|Attribute name||Description||Example||Allowed values||required|
|prefix||Title of linked work item will have specified prefix.||prefix=Implement:
||any string value||no|
|addIDToTitle||ID of item which changes stsatus is added to title of linked work item.
middle: ID is added after prefix
start: ID is added berfore prefix
end: ID is added at the end
|type||creasted item will be of that type||type=task||work item types defined in project or global configuration (e.g. requirement, task …). You must specify the work item id.||yes|
|link.role||defines the link role||link.role=parent||id of link role. Link role must be defined in project configuration||yes|
|backlink||direction of link. To create child tasks you have to specify backlink=true||backlink=true||true,
|copyfields||specify the standard fields that should be copied to the linked workitems as comma separated list. Not all fields are currently supported.||copyfields=severity,priority,description||severity,
|copyFieldToChildField||copys any string/enum field of work item which changes status to the created item. You can also copy from string to enum and vice versa.||copyFieldToChildField=status,myCustomField||only string and enum fiels are supported||no|
|categories||Assign categories provided as comma separated list to created work item..||categories=mycategory1,mycategory2||Any category defined in project configuration. undefined or new categories are not supported||no|
|setCustomfield||Set a string value for a custom string field in work item which changed the status. First you provide the field id than the field value||setCustomField=myField,myString||any string value. Custom field must be of type string||no|
|setCustomFieldNewWI||Set a string value for a custom string field in created work item. First you provide the field id than the field value||setCustomFieldNewWi=tasktype,implementation||any string value. Custom field must be of type string||no|
|setEnumField||Set an enum value for an enum field in work item which changed the status. First you provide the field id than the field value (attention: multi-enum fields are not supported)||setEnumField=severity,high||enum value must be defined in project configuration||no|
|setEnumFieldNewWI||Set a enum value for an enum field in created work item. First you provide the field id than the field value (attention: multi-enum fields are not supported)||setEnumFieldNewWI=priority,medium||enum value must be defined in project configuration||no|
|setEnumFieldNewWI2||Set a another enum value for an enum field in created work item. First you provide the field id than the field value (I know it is bad coding... feel free to improve)
(attention: multi-enum fields are not supported)
|setEnumFieldNewWI2=severity,medium||enum value must be defined in project configuration||no|
|initialEstimatePromille||Estimate (initialEstimate and remainingEstimate) of newWI will be promille of work item which changes status. This will overwrite copied value if initialEstimate or remainingEstimate was specified in copyfields attribute.||initialEstimatePromille=500,
(will create a WI with half the estimate of source item)
|Integer value between 0 and 1000.||no|
|linkToRootOfType||Links the created work item to an item inside the tree. Item must be of provided type. Linklogic can define weather it will be linked to the root, leaf or sameTypeRoot.
Root = links to highest item in hierachie of provided type.
Leaf = links to first item of type that is found in tree. This makes sens if you wnat to link to the first item in the tree which has a different type than the one which changes the status (search is upwards)
sameTypeRoot= links to highest item in hierachie of same type as active item. E.g. you have a structure of test cases an the created defest should also be linked to the root node of the test hierarchy
(if feature has linked test cases the defect will be linked to the first feature found tracing up the tree)
Rootlogic can be:
Works together with linkToRootLinkRoles
|linkToRootLinkRoles||when using linkToRootOfType attribute only those link types provided in this attribute will be analyzed. Other link roles will be skipped. Provide link roles as comma separated list||linkToRootLinkRoles=parent,tests||any link role defined in project configuration||no|
|linkToRootOfType2||see linkToRootOfType (I know it is bad coding... feel free to improve)||see linkToRootOfType||see linkToRootOfType||no|
|linkToRootLinkRoles2||see linkToRootLinkRoles (I know it is bad coding... feel free to improve)||see linkToRootLinkRoles||see linkToRootLinkRoles||no|
|addComment||Adds a comment to the created work item.||addComment=my comment||Any String||no|
Create a linked child implementation task when status of item is changed.
The example scenario will only work when you have created a custom field for the task work item with id tasktype and a corresponding enumeration.
For this you must change following two configuration files:
<?xml version="1.0" encoding="UTF-8"?>
<field id="tasktype" type="enum:tasktype" name="Task Type" description=""/>
<?xml version="1.0" encoding="UTF-8"?>
<option id="implementation" name="Implementation" sortOrder="1"/>
<option id="testspec" name="Test Specification" sortOrder="2"/>
<option id="userdoc" name="User Documentation" sortOrder="3"/>
<option id="analysis" name="Analysis" sortOrder="4"/>
copy the jar file into Polarion/polarion/plugins directory and restart Polarion.
The function appears in the list as CreateLinkedWIFunction when you configure the workflow functions for your workflow action.