[rt-users] CF value is not updated from perspective of callback

Jeff Blaine jblaine at kickflop.net
Fri Jan 21 14:13:54 EST 2011


I'll add to my problem report with what I've found, but am
still stuck on, in case that makes it easier to assist ;)

The 'Default' callback call in stock RT's Ticket/Modify.html
looks like this:

     # /rt/local/share/html/Ticket/Modify.html
     #
     # ... stuff here
     #
     <%INIT>
     # ... stuff here
     #
     # ... 'Default' callback call is here!  THEN:

     my @results = ProcessTicketBasics(TicketObj => $TicketObj,
                                       ARGSRef => \%ARGS);
     push @results, ProcessObjectCustomFieldUpdates(Object =>
                    $TicketObj, ARGSRef => \%ARGS);

     $TicketObj->ApplyTransactionBatch;

     #
     # ... stuff here
     <%INIT>

By modifying the RT code (BAD!) to add another callback
after $TicketObj->ApplyTransactionBatch;, I am able to see
the new custom field value instead of the old/stale one.

So the question becomes:  How do I examine a CF's new
value via the stock RT 'Default' callback call, which
is before that block above.

On 1/20/2011 7:13 PM, Jeff Blaine wrote:
> Hi folks, I've hit another snag. Any help would be appreciated.
>
> RT 3.8.7.
>
> PROBLEM
> =======
>
> After submission of Modify.html (editing Basics) where I changed
> 2 things
>
> FROM
>
> Status: stalled
> Classification: Non-Compliance
>
> TO
>
> Status: resolved
> Classification: Foobar
>
> The resulting log data generated from my callback (which is
> Modify.html/Default) shows 'resolved' but shows the OLD value
> for Classification, not the new one:
>
> Jan 20 18:06:50 rtdev1 RT: DEBUG Status = 'resolved'
> ...
> Jan 20 18:06:50 rtdev1 RT: DEBUG name = 'Classification'
> val = 'Non-Compliance'
>
> Note that the ticket is modified properly though. The values
> on screen once the page updates are:
>
> Status: resolved
> Classification: Foobar
>



More information about the rt-users mailing list