It's all about the answers!

Ask a question

RTC Upgrading from 3.0.1.3 to 4.0.2: Migrate Medium String Attribute (Multi-Select field) data to new Enumerated List attribute.


Joel Lonneker (39916) | asked Jun 10 '13, 10:35 p.m.
Setup:
- RTC 3.0.1.3 (Redhat 5.9)
- RTC 4.0.2 (future state)(Redhat 5.9)
- HPQC ALM 11
- Tasktop (sync bidirectionally between RTC and QC)
- Oracle rack

Scenario: 
   As an organization who adopted RTC in version 3.x, we found early on that we required the addition of multi-select fields to the scrum template.  In order to do this, we were required to create custom "Medium String" attributes for housing the results of user selection from a predefined enumerated list of values, published then to multi-select fields.  We are roughly 200k work items in to this configuration.  We are presently testing out the features and functionality of RTC 4.0.2 in a test environment.  Tasktop requires the use of the "Enumerated List" attribute, as we've found recently, to continue syncing our multi-select fields between RTC version 4.x and HPQC ALM 11.  

We are now in a pickle, as we need a way to:
A. Implement "Enumerated List" attributes (for existing fields)
AND
B. Migrate all data from the previous "Medium String" (To new Enumerated List) attributes
WHILE
C. Not impacting "Modified Date" attribute in any of the impacted work items.

Any thoughts or solutions for this predicament?  Considering Multi-Select with "Medium String" was sort of a workaround in 3.x, I figured there would be some form of migration process for data towards the newer implemented "Enumerated List" legitimate implementation attribute.

Cheers,
Joel

One answer



permanent link
Ralph Schoon (60.7k33643) | answered Jun 11 '13, 3:15 a.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
Hi Joel,

the only thing that comes into mind is using the Plain Java Client Libraries to read the old data, match it to the new lists and feed that with values. I think I have looked into the API once and I think you might be able to set the modification date to the old value when saving. This needs to be tested however. I provide some example code in my blog. Start here: https://rsjazz.wordpress.com/2012/08/20/manipulationg-work-item-enumeration-values/ and https://rsjazz.wordpress.com/2012/10/29/using-work-item-queris-for-automation/

The enumeration list is just a list field, where you have to add the enumeration values to the list to provide it to setValue().

Your answer


Register or to post your answer.