[rt-users] Scrip to automatically set Owner based on a Custom Field
Ken Crocker
kfcrocker at lbl.gov
Fri Oct 30 17:04:21 EDT 2009
Jrummel,
Again, look at the code I sent you. In it you have on a few users
working on more than one ORG code. Set up a qw( .... ...) with your
values and you're set.
Kenn
LBNL
On 10/30/2009 12:23 PM, jrummel wrote:
> Thank you all so much for your time. I got it to work!
>
> Expanding on it further:
>
> Say I have 40 products, and 5 users. Each of these 5 users works on more
> than one product.
>
> Would I then have to make 5 different scrips with "OR" statements in them?
> Ideally, I would like to be able to add a column to the CustomFieldValues
> table containing a value of 1-5. Then make a small table called UserOwner
> or something with 2 columns:
>
> one column with values 1-5 called "id" (relating to the added column in
> CustomFieldValues), and one column with usernames called "Name".
>
> I guess that's a long way of asking if there is a way to accomplish this in
> 1 scrip by way of an SQL statement? Hopefully I explained that somewhat
> coherently.
>
> Thanks again!
>
>
>
> Carlos Garcia Montoro wrote:
>
>> I did something similar. If the custom field had a particular value,
>> then the owner had to be a particular user. I did it using this scrip:
>>
>> Custom condition:
>>
>> if ($self->TransactionObj->Type eq 'Create' &&
>> $self->TicketObj->FirstCustomFieldValue('Product') eq 'Product A') {
>> return 1;
>> }
>> return 0;
>>
>> Custom Action:
>> $self->TicketObj->SetOwner('John Smith');
>> return 1;
>>
>> Hope it helps,
>> Carlos
>>
>> Emmanuel Lacour wrote:
>>
>>> On Thu, Oct 29, 2009 at 04:50:47PM -0700, jrummel wrote:
>>>
>>>> Hi everyone,
>>>>
>>>> I have a select-one Custom Field called "Product" with 5 products in it.
>>>> Based on what product is selected (on create), I would like a specific
>>>> user
>>>> to be set as the Owner (ex: ticket is created with "Product A" selected,
>>>> so
>>>> John Smith works on Product A, thus should automatically be the Owner).
>>>> Does anyone know the what my Custom Action would look like to accomplish
>>>> this?
>>>>
>>>>
>>> You should use two customfields, one ticket customfield used to set the
>>> product for the ticket, another _user_ customfield to set the list of
>>> product a user works on in the user profile. Then your action will
>>> compare those values and set the owner.
>>>
>>> Here is a not tested code to help you:
>>>
>>> my $Ticket = $self->TicketObj;
>>>
>>> # Get products selected for this ticket
>>> my $T_product = $Ticket->FirstCustomFieldValue ( 'Product' );
>>>
>>> # Try to find a User with this product
>>> my $user_found = undef;
>>> my $Users = RT::Users->new ( $RT::SystemUser );
>>> while ( my $User = $Users->Next () )
>>> {
>>> my $U_products = $User->CustomFieldValues ( 'Products' );
>>> while ( my $product = $U_products->Next )
>>> {
>>> if ( $product->Content eq $T_product )
>>> {
>>> $user_found = $User;
>>> last;
>>> }
>>> }
>>> }
>>>
>>> if ( $user_found && $user_found->Id ) {
>>> $RT::Logger->debug("User ".$user_found->Name." found for product
>>> ".$T_product." Ticket ".$Ticket->Id );
>>> $Ticket->SetOwner( $user_found );
>>> } else {
>>> return 0;
>>> }
>>>
>>> return 1;
>>>
>>> _______________________________________________
>>> http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users
>>>
>>> Community help: http://wiki.bestpractical.com
>>> Commercial support: sales at bestpractical.com
>>>
>>>
>>> Discover RT's hidden secrets with RT Essentials from O'Reilly Media.
>>> Buy a copy at http://rtbook.bestpractical.com
>>>
>>>
>> --
>> _______ _______________________________________________________________
>> | __ __ | Carlos García Montoro Ingeniero Informático
>> |_\_Y_/_| Instituto de Física Corpuscular Centro Mixto CSIC - UV
>> |\_] [_/| Servicios Informáticos
>> | [_] | Edificio Institutos de Investigación cgarcia at ific.uv.es
>> |C S I C| Apartado de Correos 22085 E-46071 Valencia Tel: +34 963543706
>> |_______| España / Spain Fax: +34 963543488
>>
>> begin:vcard
>> fn;quoted-printable:Carlos Garc=C3=ADa Montoro
>> n;quoted-printable:Garc=C3=ADa Montoro;Carlos
>> org;quoted-printable;quoted-printable:Instituto de F=C3=ADsica
>> Corpuscular;Servicios Inform=C3=A1ticos
>> adr;quoted-printable:Apartado de Correos 22085;;Edificio Institutos de
>> Investigaci=C3=B3n;Valencia;Valencia;E-46071;Spain
>> email;internet:Carlos.Garcia at ific.uv.es
>> tel;work:(+34) 96 354 37 06
>> x-mozilla-html:TRUE
>> version:2.1
>> end:vcard
>>
>>
>> _______________________________________________
>> http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users
>>
>> Community help: http://wiki.bestpractical.com
>> Commercial support: sales at bestpractical.com
>>
>>
>> Discover RT's hidden secrets with RT Essentials from O'Reilly Media.
>> Buy a copy at http://rtbook.bestpractical.com
>>
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bestpractical.com/pipermail/rt-users/attachments/20091030/b28d5dca/attachment.htm>
More information about the rt-users
mailing list