<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    On 1/26/2012 11:55 AM, Kevin Falcone wrote:
    <blockquote cite="mid:20120126165537.GK95897@jibsheet.com"
      type="cite">
      <pre wrap="">On Thu, Jan 26, 2012 at 08:38:42AM -0500, Ronald J. Yacketta wrote:
</pre>
      <blockquote type="cite">
        <pre wrap="">All,

We have an external perl script that trolls through the RT MySQL DB
looking for recent transactions with a specific CF that has been
updated. The script will pull out specific data from the DB and
update an External Site for notifications. The script is used to
inform the campus when we are planning server maintenance or are
working on a issue that impacts the campus.

Would like to convert the external perl script into a RT Custom
Scrip that acts upon 'Correspond' || 'Comment' && CF modification,
when those conditions are met the Custom Action will call an
external perl script with appropriate data to update the
notification www site.

Have the following (based on
<a class="moz-txt-link-freetext" href="http://requesttracker.wikia.com/wiki/OnCustomFieldValueChange">http://requesttracker.wikia.com/wiki/OnCustomFieldValueChange</a>) which
throws 'RT: Couldn't load object RT::Transaction #0
(/opt/rt4/sbin/../lib/RT/Interface/Web.pm:2164)' in the log
</pre>
      </blockquote>
      <pre wrap="">
This is just a warning, not an error, and unrelated to your scrip not
matching.

</pre>
      <blockquote type="cite">
        <pre wrap="">unless (
(  ($self->TransactionObj->Type eq "Correspond"
 || $self->TransactionObj->Type eq "Comment")
&&  $self->TransactionObj->Field == 18 )
) {
   return 0;
}

return 0 unless $self->TicketObj->FirstCustomFieldValue('External
Updates') =~ /Public Status/i;
</pre>
      </blockquote>
      <pre wrap="">
Your CF is actually a transaction CF, not a ticket cf.
You have to ask for the
TransactionObj->FirstCustomFieldValue('External Updated')
Also, if you have a look in your DB, is Field being set on the
Correspond/Comment transactions for this?

Unfortunately, even with the problem I listed above, you have a worse
problem.

Transaction Custom Fields aren't set until After the
Correspond/Comment, which means that the value won't be available to
you in the Scrip Condition.

Your best bet is to make this Scrip a TransactionBatch scrip, which
lets it run last, and then you can check for Correspond or Comment and
TransactionObj->FirstCustomFieldValue

Please don't change all your Scrips to TransactionBatch, as it causes
the Preview Scrips feature to not work.

-kevin
</pre>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">--------
RT Training Sessions (<a class="moz-txt-link-freetext" href="http://bestpractical.com/services/training.html">http://bestpractical.com/services/training.html</a>)
* Boston — March 5 & 6, 2012</pre>
    </blockquote>
    Kevin,<br>
    <br>
    THANKS!! <br>
    Works like a champ now!!<br>
    <br>
    -Ron<br>
  </body>
</html>