Is it possible to move workitems from one Project Area (on server A) to another Project Area (on server b)
I have around 200 workitems in Project A on Server 1 and would like to move/copy them to a new Project B on Server 2. The workitem schema across the Project Areas is similar but not 100% identical. The workitems in Project A have links to each other and to workitems in other repositories, an RM instance and a Focal POint instance. Preservation of the links is more critical than preservation of the attributes on the workitems.
I had a look at the Eclipse move capability here but it this only seems to work if the Project Areas are on the same server.
Are there any other options?
I had a look at the Eclipse move capability here but it this only seems to work if the Project Areas are on the same server.
Are there any other options?
Accepted answer
I tried an approach with several steps.
1. Use the API to create a new work item in the target area on the other server. Just copy over the minimal data needed, mostly text and owner etc. In the process, store a reference on an additional attribute on the original work item that has the information needed to copy.
2. Run over the original work items and identify the new item. Recreate all links on the new work items. For work items it is easy to identify the new target, by following the link and look up the new copy in the extra info. For CLM links, you can just recreate those. See https://rsjazz.wordpress.com/2013/11/06/creating-clm-links-with-back-link/ and related posts.
3. You could bring over all attributes you can using CSV, again, if you use the Id as reference to the new attribute, you can easily use an CSV export.
You are missing attachments and subscriptions. See https://rsjazz.wordpress.com/2012/09/21/downloading-attachments-from-work-items/ and other posts on my blog for the API. Should not be too hard and doable in step 1 or 2.
4. Implement tooling for attributes you have missed.
I spent several days on this, and I had a working prototype. I was a beginner with the APi when I tried and had literally no examples at all.
With what I know today, I would expect at least 2 weeks worth of work. I have put a lot of what I learned on my blog, so some of the stuff does not need to be reinvented.
1. Use the API to create a new work item in the target area on the other server. Just copy over the minimal data needed, mostly text and owner etc. In the process, store a reference on an additional attribute on the original work item that has the information needed to copy.
2. Run over the original work items and identify the new item. Recreate all links on the new work items. For work items it is easy to identify the new target, by following the link and look up the new copy in the extra info. For CLM links, you can just recreate those. See https://rsjazz.wordpress.com/2013/11/06/creating-clm-links-with-back-link/ and related posts.
3. You could bring over all attributes you can using CSV, again, if you use the Id as reference to the new attribute, you can easily use an CSV export.
You are missing attachments and subscriptions. See https://rsjazz.wordpress.com/2012/09/21/downloading-attachments-from-work-items/ and other posts on my blog for the API. Should not be too hard and doable in step 1 or 2.
4. Implement tooling for attributes you have missed.
I spent several days on this, and I had a working prototype. I was a beginner with the APi when I tried and had literally no examples at all.
With what I know today, I would expect at least 2 weeks worth of work. I have put a lot of what I learned on my blog, so some of the stuff does not need to be reinvented.
3 other answers
Hello
Have you tried using the File Export / Import feature? http://pic.dhe.ibm.com/infocenter/clmhelp/v4r0m5/topic/com.ibm.team.workitem.doc/topics/t_exporting_work_items.html
Have you tried using the File Export / Import feature? http://pic.dhe.ibm.com/infocenter/clmhelp/v4r0m5/topic/com.ibm.team.workitem.doc/topics/t_exporting_work_items.html
Comments
showing 5 of 6
show 1 more comments
You could attempt to do it programmatically .. .write something using the Java Client API that would introspect everything in the first work item and create a new work item in the new repository/project area (mapping attributes and enumerations as necessary).
Probably depends on how many of these you need to move and if you have links/attachments/approvals that also need to go.
Probably depends on how many of these you need to move and if you have links/attachments/approvals that also need to go.
Comments
showing 5 of 8
show 3 more comments
Comments
sam detweiler
Nov 18 '13, 5:09 p.m.