Take the 2-minute tour ×
Tridion Stack Exchange is a question and answer site for Tridion developers and administrators. It's 100% free, no registration required.

We are upgrading from Tridion 2011 SP1 HR1 to Tridion 2013 SP1. In current implementation we are using Item Selector to link pages directly to components (Item selector is a custom page which will return TCM ID of a selected page and store it in component's text field). We have lot of components which are having page's TCM IDs. As we are changing database from Oracle to SQL Server during this upgrade, we will use Content Porter to move content.

Content port will not change TCM IDs stored in component's text field. But new TCM ID will be given to page. We are planning to built a tool which will store current linking in xml file with page's WEBDav path. After successful content port we will run tool in target environment and will change the page TCM Ids as per new environment.

There is also an option to cofigure TCM Ids while content port but for that we have to port pages first and then list down all TCM IDs and cofigure it in content port and then port components as this is a manual activity we are lookinh for automated solution.

Anyone faced such issues in past or is there any other feasible solution?

Also we are looking to change item selector to return WEBDav path instead of TCM ID.

share|improve this question

1 Answer 1

up vote 5 down vote accepted

This is how I would go about resolving this:

  1. Write a CoreService app that looks through every component searching for fields containing a TcmUri;
  2. Convert that TcmUri to a WebDavUrl by loading the target object and getting it's WebDavUrl (some smart caching suggested here)
  3. Save/Update the components
  4. (probably before step #1) make sure my code still works after changing a URI to a Url.

Regarding the "auto-convert to Url" you can either play around with the extension itself (you can get the Url of an object in Anguilla by using .loadWebDavUrl()) or implementing an event on save that would scan for Uris as the value of a field, and convert it to a Url.

share|improve this answer
    
Thanks Nuno... So you are suggesting fixing basic issue first and the do the content port. So in future we will not face this issue. Thanks.. –  user1453602 Aug 25 at 9:15

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.