<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>Transferring CustomField Values from old to new on all tickets in a queue</TITLE>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.2900.3492" name=GENERATOR></HEAD>
<BODY text=#000000 bgColor=#ffffff>
<DIV dir=ltr align=left><SPAN class=530124017-26032009><FONT face="Trebuchet MS" 
color=#0000ff size=2>Ken Thanks for your suggestions. Just thought of sharing 
the path we took to fix this issue...</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=530124017-26032009><FONT face="Trebuchet MS" 
color=#0000ff size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=530124017-26032009><FONT face="Trebuchet MS" 
color=#0000ff size=2>1. Basically we identified that one unique CF that we want 
across all queues</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=530124017-26032009><FONT face="Trebuchet MS" 
color=#0000ff size=2>2. Added it to the Queue</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=530124017-26032009><FONT face="Trebuchet MS" 
color=#0000ff size=2>3. Ran a script to copy data from the old CF to the new CF 
on all tickets in this queue. This we did it using a template that we found in 
RT wiki</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=530124017-26032009><FONT face="Trebuchet MS" 
color=#0000ff size=2><A 
href="http://wiki.bestpractical.com/view/ImportCustomFieldValues">http://wiki.bestpractical.com/view/ImportCustomFieldValues</A></FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=530124017-26032009><FONT face="Trebuchet MS" 
color=#0000ff size=2>and basically used the HasEntry, AddCustomFieldValue 
methods from objectcustomfieldvalues to accomplish this.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=530124017-26032009><FONT face="Trebuchet MS" 
color=#0000ff size=2>4. Detached the old CF from the Queue.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=530124017-26032009><FONT face="Trebuchet MS" 
color=#0000ff size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=530124017-26032009><FONT face="Trebuchet MS" 
color=#0000ff size=2>What we are planning is to do the same for all dup'ed CFs 
on all the queue. Many one time effort but could pay us in long run on ease of 
maintenance.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=530124017-26032009><FONT face="Trebuchet MS" 
color=#0000ff size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=530124017-26032009><FONT face="Trebuchet MS" 
color=#0000ff size=2>Thanks</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=530124017-26032009><FONT face="Trebuchet MS" 
color=#0000ff size=2>Subba</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=530124017-26032009></SPAN> </DIV><BR>
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B> Ken Crocker [mailto:kfcrocker@lbl.gov] 
<BR><B>Sent:</B> Friday, March 20, 2009 2:21 PM<BR><B>To:</B> Venkateswaran, 
Subbaraman<BR><B>Cc:</B> rt-users@lists.bestpractical.com<BR><B>Subject:</B> Re: 
[rt-users] Transferring CustomField Values from old to new on all tickets in a 
queue<BR></FONT><BR></DIV>
<DIV></DIV>Subbaraman,<BR><BR><BR>    Yes. I've been thru this 
several times. Each time I found a better way to do it. First off, you have to 
decide what the CF name will be for ALL the queues that will be using it. 
Secondly, you have to have a consensus on the values you will allow. Third, you 
create the NEW CF and it's values. Now, if you have a CF that already exists and 
you want to use it, then you still need to set up all the values. The last step 
is to APPLY this particular CF to all the queues that will be using it. Once 
that is done, set up some scripts (NOT scrips) that detail which OLD CF"s should 
be WHAT VALUE for the NEW CF. Once that is done, you execute each of those 
scripts for EACH queue by running a query to pull ALL tickets of each queue (1 
queue at a time) and use the "bulk update" feature to set the new value for the 
new CF based on the script/selection criteria for the OLD 
CF.<BR>    For example. Let's say I have 3 CF's that are similar. 
I take CF1 and set up all the values I want it to have. If there are any values 
I want to get rid of, I add the news ones first, then run a Search/Bulk Update 
to change the values I want to get rid of to the new values. Select all tickets 
where CF1 value = "X". Bulk Update the results to be CF1 value = "Y". This would 
be the basic routine you walk thru for EACH and EVERY value of CF2 and CF3 for 
Each Queue that uses CF2 and CF3, 1 Queue at a time.<BR>    That 
should do it. There are no real shortcuts that I know of for this kind of thing. 
You COULD use SQL and do this DIRECTLY to the DataBase, but that get REAL messy 
and I do NOT recommend it.<BR>    Hope this 
helps.<BR><BR><BR>Kenn<BR>LBNL<BR><BR>On 3/20/2009 7:42 AM, Venkateswaran, 
Subbaraman wrote: 
<BLOCKQUOTE 
cite=mid:D025D0AB92335E4B90B7ADA30FA3D59504570C62@PCCPMEXV02.na.blkint.com 
type="cite">
  <META content="MS Exchange Server version 6.5.7654.12" name=Generator><!-- Converted from text/rtf format -->
  <P><FONT face="Trebuchet MS" color=#0000ff size=2>We are using RT 3.6.4 and 
  what we are trying to do is to synchronize custom field across all queues and 
  basically have one unique custom field and type. Currently we have some CFs 
  with the same name and different types dupe'ed across all the queues. Is there 
  a way we can script around to move all the values from oldCF to new CF on all 
  tickets in a Queue ?</FONT></P>
  <P><FONT face="Trebuchet MS" color=#0000ff size=2>For e.g.: </FONT><BR><FONT 
  face="Trebuchet MS" color=#0000ff size=2>CF Name XYZ, Type: Enter multiple 
  values</FONT> <BR><FONT face="Trebuchet MS" color=#0000ff size=2>CF Name XYZ, 
  Type: Text</FONT> <BR><FONT face="Trebuchet MS" color=#0000ff size=2>Move all 
  the values on XYZ(enter multiple values) to the CF XYZ(Text) on all tickets in 
  a Queue.</FONT> </P>
  <P><FONT face="Trebuchet MS" color=#0000ff size=2>Once this is done we will 
  disconnect the old CF XYZ(Enter multiple values) from the Queue.</FONT> </P>
  <P><FONT face="Trebuchet MS" size=2>Thanks for your help</FONT> </P><BR>THE 
  INFORMATION CONTAINED IN THIS MESSAGE AND ANY ATTACHMENT MAY BE PRIVILEGED, 
  CONFIDENTIAL, PROPRIETARY OR OTHERWISE PROTECTED FROM DISCLOSURE. If the 
  reader of this message is not the intended recipient, you are hereby notified 
  that any dissemination, distribution, copying or use of this message and any 
  attachment is strictly prohibited. If you have received this message in error, 
  please notify us immediately by replying to the message and permanently delete 
  it from your computer and destroy any printout thereof.<BR><PRE wrap=""><HR width="90%" SIZE=4>
_______________________________________________
<A class=moz-txt-link-freetext href="http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users">http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users</A>

Community help: <A class=moz-txt-link-freetext href="http://wiki.bestpractical.com">http://wiki.bestpractical.com</A>
Commercial support: <A class=moz-txt-link-abbreviated href="mailto:sales@bestpractical.com">sales@bestpractical.com</A>


Discover RT's hidden secrets with RT Essentials from O'Reilly Media. 
Buy a copy at <A class=moz-txt-link-freetext href="http://rtbook.bestpractical.com">http://rtbook.bestpractical.com</A></PRE></BLOCKQUOTE></BODY></HTML>
<br>
THE INFORMATION CONTAINED IN THIS MESSAGE AND ANY ATTACHMENT MAY BE PRIVILEGED, CONFIDENTIAL, PROPRIETARY OR OTHERWISE PROTECTED FROM DISCLOSURE. If the reader of this message is not the intended recipient, you are hereby notified that any dissemination, distribution, copying or use of this message and any attachment is strictly prohibited. If you have received this message in error, please notify us immediately by replying to the message and permanently delete it from your computer and destroy any printout thereof.<br>