It's all about the answers!

Ask a question

How to force linking two work item types in process?


Matti Teinonen (6) | asked Dec 13 '07, 7:30 a.m.
Hi,

I have defined in my process several work item types, for example Fix and Fault.

They each have their workflow also defined. As themselves, they seem to work.

How to define that one cannot submit or open a Fix without
linking the corresponding Fault, so that other work items, like the default Enhancement, do not need this connection?

All the examples with "requires value" seem to be valid for all WI types.
The process documentation doesn't seem to explain howto do this.

I'm still stuck with 0.6M3a. The definitions from my process below.

Any guidance documentation available?

Best Regards,
***mate
--
Matti.Teinonen@rp5.fi
Keilasatama 3
02150 ESPOO
Finland


- - -
<static>
...
<static-configuration-data id="com.ibm.team.workitem.configuration.workItemTypes" xmlns="http://com.ibm.team.workitem/workitemTypes">
...
<type
id="com.ibm.team.workitem.extension.workItemType.fault"
category="com.ibm.team.workitem.workItemType.fault"
name="Fault"
icon="platform:/plugin/com.ibm.team.workitem.common/icons/obj16/wi_bug.gif"
dimmedicon="platform:/plugin/com.ibm.team.workitem.common/icons/obj16/wi_bug_dim.gif">
<alias name="bug" />
<alias name="defect" />
</type>

<type
id="com.ibm.team.workitem.extension.workItemType.fix"
category="com.ibm.team.workitem.workItemType.fix"
name="Fix"
icon="platform:/plugin/com.ibm.team.workitem.common/icons/obj16/wi_planitem.gif"
dimmedicon="platform:/plugin/com.ibm.team.workitem.common/icons/obj16/wi_planitem_dim.gif">
</type>
</static-configuration-data>

<static-configuration-data id="com.ibm.team.workitem.configuration.workflow" xmlns="http://com.ibm.team.workitem/workflow">

...
<workflowDefinition id="com.ibm.team.workitem.faultWorkflow">
<workflow
name= "Fault Workflow"
startActionId= "open">
<action id="open" state="s85" name="Open"
icon="platform:/plugin/com.ibm.team.workitem.common/icons/obj16/rfs_red.png"/>
<action id="assign" state="s86" name="Assign"
icon="platform:/plugin/com.ibm.team.workitem.common/icons/obj16/rfs_yellow.png"/>
<action id="implement" state="s87" name="Implement"
icon="platform:/plugin/com.ibm.team.workitem.common/icons/obj16/rfs_green.png"/>
<action id="release" state="s88" name="Release"
icon="platform:/plugin/com.ibm.team.workitem.common/icons/obj16/rfs_yellow.png"/>
<action id="close" state="s89" name="Close"
icon="platform:/plugin/com.ibm.team.workitem.common/icons/obj16/rfs_green.png"/>
<!-- make sure state ids have the form "s<integer>" -->
<state id="s85" group="open" name="Open"
icon="platform:/plugin/com.ibm.team.workitem.common/icons/obj16/rfs_red.png">
<action id="assign"/>
</state>
<state id="s86" group="open" name="Assigned"
icon="platform:/plugin/com.ibm.team.workitem.common/icons/obj16/rfs_yellow.png">
<action id="implement"/>
<action id="assign"/>
</state>
<state id="s87" group="open" name="Implemented"
icon="platform:/plugin/com.ibm.team.workitem.common/icons/obj16/rfs_green.png">
<action id="release"/>
</state>
<state id="s88" group="open" name="Released"
icon="platform:/plugin/com.ibm.team.workitem.common/icons/obj16/rfs_yellow.png">
<action id="close"/>
<action id="open"/>
<action id="assign" />
</state>
<state id="s89" group="closed" name="Closed"
icon="platform:/plugin/com.ibm.team.workitem.common/icons/obj16/rfs_yellow.png">
<action id="open"/>
</state>
</workflow>
</workflowDefinition>
<workflowDefinition id="com.ibm.team.workitem.fixWorkflow">
<workflow
name= "Fixing Workflow"
startActionId= "open"
reopenActionId= "reopen">
<resolution id="r20" name="Fault found" icon="platform:/plugin/com.ibm.team.workitem.service/icons/obj16/planresolution_unresolv.gif" />
<resolution id="r21" name="Tested" icon="platform:/plugin/com.ibm.team.workitem.service/icons/obj16/planresolution_impl.gif" />
<resolution id="r22" name="Released" icon="platform:/plugin/com.ibm.team.workitem.service/icons/obj16/planresolution_rejected.gif" />

<action id="open" state="s81" name="Open"
icon="platform:/plugin/com.ibm.team.workitem.common/icons/obj16/rfs_red.png">
<resolution id="r20"/>
<resolution id="r23"/>
</action>
<action id="test" state="s82" name="Test"
icon="platform:/plugin/com.ibm.team.workitem.common/icons/obj16/rfs_yellow.png">
<resolution id="r21"/>
</action>
<action id="close" state="s83" name="Close"
icon="platform:/plugin/com.ibm.team.workitem.common/icons/obj16/rfs_green.png">
<resolution id="r20"/>
<resolution id="r22"/>
</action>

<!-- make sure state ids have the form "s<integer>" -->
<state id="s81" group="open" name="Open"
icon="platform:/plugin/com.ibm.team.workitem.common/icons/obj16/rfs_red.png">
<action id="test">
</action>
<action id="close">
</action>
</state>
<state id="s82" group="open" name="Tested"
icon="platform:/plugin/com.ibm.team.workitem.common/icons/obj16/rfs_yellow.png">
<action id="close">
</action>
<action id="open"/>
</state>
<state id="s83" group="closed" name="Closed"
icon="platform:/plugin/com.ibm.team.workitem.common/icons/obj16/rfs_green.png">
<action id="open"/>
<action id="test">
</action>
</state>
</workflow>
</workflowDefinition>

</static-configuration-data>

<static-configuration-data id="com.ibm.team.workitem.configuration.workflowBinding" xmlns="http://com.ibm.team.workitem/workflowBinding">
...
<workItemCategoryBinding
workItemCategoryId="com.ibm.team.workitem.workItemType.fault"
workflowId="com.ibm.team.workitem.faultWorkflow"
/>
<workItemCategoryBinding
workItemCategoryId="com.ibm.team.workitem.workItemType.fix"
workflowId="com.ibm.team.workitem.fixWorkflow"
/>
</static-configuration-data>
...
</static>

2 answers



permanent link
Matti Teinonen (6) | answered Dec 14 '07, 12:31 a.m.
Thanks for the reply,
I have to dig in to the extending stuff more.
The deeper you look, the more interesting Jazz looks;)

***mate

permanent link
Jared Burns (4.5k29) | answered Dec 13 '07, 12:08 p.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
I don't believe this requirement is supported out of the box.

The Work Item team might have other ideas, but you could certainly add
this support to Process by implementing the precondition checker yourself.

This would involve defining an Eclipse plugin which contributes the Java
code to implement the check. If this is something you'd like to explore,
this is documented in the Process Developer Guide on the jazz.net wiki:
https://jazz.net/wiki/bin/view/Main/TeamProcessDeveloperGuide#Extending_the_Choices_of_Process

- Jared

mteinonen wrote:
Hi,

I have defined in my process several work item types, for example Fix
and Fault.

They each have their workflow also defined. As themselves, they seem
to work.

How to define that one cannot submit or open a Fix without
linking the corresponding Fault, so that other work items, like the
default Enhancement, do not need this connection?

All the examples with "requires value" seem to be valid for
all WI types.
The process documentation doesn't seem to explain howto do this.

I'm still stuck with 0.6M3a. The definitions from my process below.

Any guidance documentation available?

Best Regards,
***mate
--
Matti.Teinonen@rp5.fi
Keilasatama 3
02150 ESPOO
Finland

Your answer


Register or 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.