TicketSQL doesn't support LIKE with Queue name field

Hi All,

We have a ticket naming scheme where we have several “departments” with
multiple queues each, and we name the queues like “Department/customer”.
We have several report searches which we need to run against each
department; these need to refer to all the department’s queues.
Currently, we have a long TicketSQL statement that says ‘’’ Queue =
“Department1/cust1” OR Queue = “Department1/cust2”…’’’, but every time
we add new queues, we have to update all the searches.

I tried using ‘’‘Queue LIKE “Department1/” ‘’’ but it doesn’t work -
apparently it’s not supported.

So I thought I’d have a dig round to look at the code that actually
does the TicketSQL searching, to see if it would be easy to modify it
to allow “LIKE” on Queues. But I can’t find it - maybe I’m just not
looking in the right places…

I have a basic grasp of perl (i.e. not an expert) but I’m failing badly
to find out where the real guts of the search get done.

I’ve looked at:
/usr/share/request-tracker3.8/lib/RT/Search/FromSQL.pm
/usr/share/request-tracker3.8/lib/RT/Search/Generic.pm
/usr/share/request-tracker3.8/lib/RT/Search/Googlish.pm
/usr/share/request-tracker3.8/lib/RT/Search.pm

But all these seem to be just wrappers, and I can’t see any "use"
statements that pull in lower-level modules.

Can anyone give me a pointer to start, please?

Andy D’Arcy Jewell

SysMicro Limited
Linux Support
T: 0844 9918804
M: 07961605631
E: andy.jewell@sysmicro.co.uk
W: www.sysmicro.co.uk

Hi,

Queue LIKE ‘X’ is not supported in TicketSQL. Search for
FIELD_METADATA, ENUM and EnumLimit in lib/RT/Tickets*.pm.On Thu, May 12, 2011 at 2:36 PM, Andy D’Arcy Jewell andy.jewell@sysmicro.co.uk wrote:

Hi All,

We have a ticket naming scheme where we have several “departments” with
multiple queues each, and we name the queues like “Department/customer”.
We have several report searches which we need to run against each
department; these need to refer to all the department’s queues.
Currently, we have a long TicketSQL statement that says ‘’’ Queue =
“Department1/cust1” OR Queue = “Department1/cust2”…’’’, but every time
we add new queues, we have to update all the searches.

I tried using ‘’‘Queue LIKE “Department1/” ‘’’ but it doesn’t work -
apparently it’s not supported.

So I thought I’d have a dig round to look at the code that actually
does the TicketSQL searching, to see if it would be easy to modify it
to allow “LIKE” on Queues. But I can’t find it - maybe I’m just not
looking in the right places…

I have a basic grasp of perl (i.e. not an expert) but I’m failing badly
to find out where the real guts of the search get done.

I’ve looked at:
/usr/share/request-tracker3.8/lib/RT/Search/FromSQL.pm
/usr/share/request-tracker3.8/lib/RT/Search/Generic.pm
/usr/share/request-tracker3.8/lib/RT/Search/Googlish.pm
/usr/share/request-tracker3.8/lib/RT/Search.pm

But all these seem to be just wrappers, and I can’t see any "use"
statements that pull in lower-level modules.

Can anyone give me a pointer to start, please?


Andy D’Arcy Jewell

SysMicro Limited
Linux Support
T: 0844 9918804
M: 07961605631
E: andy.jewell@sysmicro.co.uk
W: www.sysmicro.co.uk


List info: http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-devel

Best regards, Ruslan.