<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
  <title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
Sebastien,<br>
<br>
    Try using the stage "TransactionBatch" (remember to turn it on in
RT_SiteConfig.pm). I think that will do it. Also, I don't think you
need the "return 1;" on the Custom Condition code
area as you have already set a condition by selecting one that is NOT
user-defined. Hope this helps.<br>
<br>
Kenn<br>
LBNL<br>
<br>
On 6/8/2009 2:06 AM, Sébastien Mesnard wrote:
<blockquote cite="mid:007101c9e818$6db69070$4923b150$@com" type="cite">
  <meta http-equiv="Content-Type" content="text/html; ">
  <meta name="Generator" content="Microsoft Word 12 (filtered medium)">
  <style>
<!--
 /* Font Definitions */
 @font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page Section1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.Section1
        {page:Section1;}
-->
  </style>
<!--[if gte mso 9]><xml>
 <o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
 <o:shapelayout v:ext="edit">
  <o:idmap v:ext="edit" data="1" />
 </o:shapelayout></xml><![endif]-->
  <div class="Section1">
  <p class="MsoNormal"><span lang="EN-US">Hello,<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">I try to keep the date of a
Owner changed
event.<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">To do this, I use a scrip to
write this
date value in a CustomField named "LastOwnerChangeDate".<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Condition: "On Owner Change"<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Action: "User Defined"<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Template: "Global Template:
Blank"<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Stage: "TransactionCreate"<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Custom condition:<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">return 1;<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Custom action preparation
code:<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">my $trans =
$self->TransactionObj; <o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">my $ticket =
$self->TicketObj; <o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">my $cf_obj =
RT::CustomField->new($RT::SystemUser); <o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">my $cf_name =
"LastOwnerChangeDate"; <o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">my $cf_value =
$trans->CreatedAsString; <o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">$cf_obj->LoadByName(Name=>$cf_name);<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">$RT::Logger->debug("Loaded\$cf_obj->Name
= ". $cf_obj->Name() ."\n"); <o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">$ticket->AddCustomFieldValue(Field=>$cf_obj,
Value=>$cf_value, RecordTransaction=>0); <o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">return 1;<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Custom action cleanup code:<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">return 1;<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">It is almost working... :<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">- When I steal a ticket it
works.<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">- When I give a ticket from
the
"People" section it works.<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">- When I give a ticket from
the
"Basics"  or "Jumbo" section, the date is not changed...
And here is my issue!<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">In fact, I think that RT
begin by
evaluating that the owner is changed so the CustomField
"LastOwnerChangeDate" is replaced to the new value by the scrip (OK,
that's good!).<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">But then RT evaluates the
Field
"LastOwnerChangeDate" in the web form... RT see the old value in the
field (the new one is already in the DB) and replace the new value by
the old
one...<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Maybe I’m wrong but this is
what I
understand from the logs.<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Logs for "Steal" or
"Give" in the "People" section:<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Jun  6 13:37:06 rt-support
RT: About to
think about scrips for transaction #112<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Jun  6 13:37:06 rt-support
RT: About to
prepare scrips for transaction #112<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Jun  6 13:37:06 rt-support
RT: Found 1
scrips for TransactionCreate stage with applicable type(s) Steal<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Jun  6 13:37:06 rt-support
RT:
Loaded$cf_obj->Name = LastOwnerChangeDate<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Jun  6 13:37:06 rt-support
RT: About to
commit scrips for transaction #112<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Jun  6 13:37:06 rt-support
RT: Committing
scrip #12 on txn #112 of ticket #1<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Jun  6 13:37:06 rt-support
RT: Found 0
scrips for TransactionBatch stage with applicable type(s) Steal<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Logs for "Give" in the
"Basics"  or "Jumbo" section:<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Jun  6 13:36:45 rt-support
RT: About to
think about scrips for transaction #110<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Jun  6 13:36:45 rt-support
RT: About to
prepare scrips for transaction #110<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Jun  6 13:36:45 rt-support
RT: Found 1
scrips for TransactionCreate stage with applicable type(s) Give<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Jun  6 13:36:45 rt-support
RT:
Loaded$cf_obj->Name = LastOwnerChangeDate<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Jun  6 13:36:45 rt-support
RT: About to
commit scrips for transaction #110<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Jun  6 13:36:45 rt-support
RT: Committing
scrip #12 on txn #110 of ticket #1<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Jun  6 13:36:45 rt-support
RT: About to
think about scrips for transaction #111<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Jun  6 13:36:45 rt-support
RT: About to
prepare scrips for transaction #111<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Jun  6 13:36:45 rt-support
RT: Found 1
scrips for TransactionCreate stage with applicable type(s) CustomField<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Jun  6 13:36:45 rt-support
RT: About to
commit scrips for transaction #111<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">Jun  6 13:36:45 rt-support
RT: Found 0
scrips for TransactionBatch stage with applicable type(s)
Give,CustomField<o:p></o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
  <p class="MsoNormal"><span lang="EN-US">How can I make it works
without this issue
?<o:p></o:p></span></p>
  <p class="MsoNormal">Thanks.<o:p></o:p></p>
  </div>
  <pre wrap="">
<hr size="4" width="90%">
_______________________________________________
<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>