[rt-users] Updating Ticket Status via PostgreSQL
Aaron W. Swenson
aaron at grandmasfridge.org
Wed Dec 2 09:05:39 EST 2015
On 2015-12-01 15:58, Matt Zagrabelny wrote:
> Hi Aaron,
>
> I believe you can do this all in RT.
>
> On Tue, Dec 1, 2015 at 2:33 PM, Aaron W. Swenson
> <aaron at grandmasfridge.org> wrote:
>> I'm sure this has been answered by someone somewhere, but my Google-fu
>> is
>> not helping me.
>>
>> I have a few hundred tickets in a production system that I want to
>> change
>> the status with some criteria a bit more sophisticated than RT
>> (4.2.12) is
>> allowing me to do.
>>
>> The SQL I want to issue is:
>>
>> UPDATE tickets
>> SET status = 'noresponse'
>> WHERE status = 'open' AND told < '2015-11-01'
>> AND told > lastupdated;
>>
>> The last condition is the one I can't enter in RT.
>
> In your RT web interface, go to: Search -> Tickets -> New Search.
>
> The key here is knowing that "Last Contacted" is really "Told", or so I
> believe.
>
> From a grep in the source directory:
>
> share/html/Elements/SelectDateType:<option value="Told"><&|/l&>Last
> Contacted</&></option>
>
> Once you get your search results, you can bulk update the status
> change.
What I'm getting at is that RT won't let me compare told to last updated
through that interface.
I can check that told was before a certain date and that last updated
was before a certain date, but I can't check for told being older or
newer than last updated.
>> Effectively, update the status of all tickets that are still open to
>> "noresponse", where the last update was us sending the requester an
>> email.
>>
>> Is this safe?
>
> Nope. Don't perform update/insert/delete queries directly on the
> database. There are things like effective ticket id that your query
> doesn't handle. Scrips and things wouldn't fire either.
>
> Cheers,
>
> -m
Is there a way to feed ticket IDs or something to rt-crontool?
More information about the rt-users
mailing list