It's all about the answers!

Ask a question

Has RTC's Links "Blocks" and "Depends On" Ever Been Truely Implented as They Imply?

Rob Olsen (35939) | asked Apr 05 '16, 1:25 p.m.
As the terms imply, it would make sense that a WI that is "blocking" another WI must be closed before the "depends on" WI can be closed, but that does not seem to be the case.  I searched the forum and there was one answer where a plugin was provided but that was back in 2012.  Today I tried using "Blocks" and "Depends On" to implement that case where one WI blocks another from being closed till the WI itself is closed first.  This is not the case.  So was anything ever done to make this work like it implies?  I am at CLM 6.0.  Thanks!

2 answers

permanent link
sam detweiler (12.4k6182201) | answered Apr 05 '16, 1:56 p.m.
IBM told us these were 'advisory'. not enforcements.

I wrote an extension to provide enforcement.

the source for this extension is here
as the accepted answer.

Rob Olsen commented Apr 05 '16, 2:23 p.m.

Sam, thanks of the update.  I followed the link and see that this worked for 5.2, should I assume it works for 6.0 and on, as well?  And here is my next dumb question.  What do I do with this?  I can change the name from "xxxxx" to something more meaningful and then cut and paste the code, but there where do I install it?  This is new to me and I have not messed with something like this before.   

sam detweiler commented Apr 05 '16, 2:38 p.m.

yeh, you have to take the source and build the binary extension.. I don't distribute that.
then you have to install i ton the server,, do the configuration and restart the server to make it active.

AND you have to add it to every project and enable it..

so much fun..

the extensions workshop is here

Ralph Schoon commented Apr 06 '16, 2:05 a.m.

Yes, the link was informational only. As Sam mentions it is possible to create your own business logic in RTC. Typically you create one or more advisors (pre conditions) that prevent changes in the data that don't fit the business logic you want. Or you create follow up actions that automate your business logic.

See for getting started.
See for an overview about mechanisms you can use.

You have to configure each project, because each project could have a different process and process requirements - this is no different to other pre conditions.  Process sharing can simplify this a bit.

permanent link
Greg Hodgkinson (2092117) | answered Nov 17 '17, 4:28 a.m.
More than just stopping a work item from being closed if it was still blocked, I didn't want the work item to appear on plans until it no longer had any blocking work items.

I ended up creating a plugin for this (after I'd worked through Ralph's excellent workshop!) - and blogged about the experiences in creating that solution here: A Solution for Tracking and Monitoring Multi-Stream Processes Using Rational Team Concert.

Ralph Schoon commented Nov 17 '17, 4:46 a.m.

Do you provide the source for that? I could not find that in a quick scan.

If you do, Would you mind if I blog a link to this on my blog ?

If I learn about examples and solutions I like to link them to the interesting links page and a post to pass others over to the referenced blog.

Greg Hodgkinson commented Nov 17 '17, 4:53 a.m. | edited Nov 17 '17, 4:54 a.m.

It was implemented as part of a plugin for a customer so not able to just post all of the source unaltered. 

But as I have time (and there is interest) I was intending on writing up additional posts on elements of the solution with code examples. 

And please do add a link - I most certainly referenced your excellent blog from my posting as it provided a huge amount of help in getting me started. Thanks!

Ralph Schoon commented Nov 20 '17, 8:01 a.m.

I did review your blog and found it quite interesting. Here my post pointing to your blog. I hope that it will provide you with some views.

Greg Hodgkinson commented Nov 20 '17, 8:11 a.m.

Thanks Ralph!

When I get round to it I'll look to either publish further on this. Either just expand on some of the technical elements of the solution, or ideally re-implement it in a form that I could publish more fully.

Your answer

Register or to post your answer.