Hi Ruslan, Raed, thanks for your support, it is working well now.
Attached again the correct working scrip action, if someone else has a need for this: my $Clone = $self->TicketObj; my $note; my $t = $self->TicketObj->Transactions; $t->Limit( FIELD => 'Type', VALUE => 'Correspond' ); $t->OrderByCols ( { FIELD => 'Created', ORDER => 'DESC' }, { FIELD => 'id', ORDER => 'DESC' }, ); my $CommentObj = $t->First; if( $CommentObj && $CommentObj->id ) { $note = $CommentObj->Content; }; my $Actor = $self->TransactionObj->Creator; my $user = RT::User->new($RT::SystemUser); $user->Load($Actor); my $Name = $user->Name; while (my $related = $Clone->ReferredToBy->Next) { my $original = $Clone->id; my $reply_will_be_on = RT::Ticket->new($user); $reply_will_be_on->Load( $related->BaseObj->id ); $reply_will_be_on->Comment( Content => $self->loc( "Information added by [_1].", # loc $Name, ) . "\n" . $self->loc( "Notes: [_1]", # loc $note ), ); } return 1; Kuehne + Nagel (AG & Co.) KG, Geschaeftsleitung: Hans-Georg Brinkmann (Vors.), Dirk Blesius (Stellv.), Reiner Heiken (Stellv.), Bruno Mang, Alfred Manke, Christian Marnetté (Stellv.), Mark Reinhardt (Stellv.), Jens Wollesen, Rainer Wunn, Sitz: Bremen, Registergericht: Bremen, HRA 21928, USt-IdNr.: DE 812773878, Persoenlich haftende Gesellschaft: Kuehne & Nagel A.G., Sitz: Contern/Luxemburg Geschaeftsfuehrender Verwaltungsrat: Klaus-Michael Kuehne -----Urspruengliche Nachricht----- Von: Ruslan Zakirov [mailto:ruslan.zaki...@gmail.com] Gesendet: Donnerstag, 24. September 2009 16:15 An: Brumm, Torsten / Kuehne + Nagel / Ham MI-ID Cc: Raed El-Hames; rt-users@lists.bestpractical.com Betreff: Re: [rt-users] Scrip help needed $self->TransactionObj->Creator returns id not a user object, when you need object. On Thu, Sep 24, 2009 at 5:52 PM, Brumm, Torsten / Kuehne + Nagel / Ham MI-ID <torsten.br...@kuehne-nagel.com> wrote: > Hi Ruslan, > > thanks for the hint. tried it with this piece of code: > > my $Clone = $self->TicketObj; > my $note; > my $t = $self->TicketObj->Transactions; > $t->Limit( FIELD => 'Type', VALUE => 'Correspond' ); > $t->OrderByCols ( > { FIELD => 'Created', ORDER => 'DESC' }, > { FIELD => 'id', ORDER => 'DESC' }, > ); > my $CommentObj = $t->First; > if( $CommentObj && $CommentObj->id ) { > $note = $CommentObj->Content; > }; > my $Actor = $self->TransactionObj->Creator; > > while (my $related = $Clone->ReferredToBy->Next) { > my $original = $Clone->id; > my $relid = $related->BaseObj->id; > my $reply_will_be_on = RT::Ticket->new( $Actor ); > $reply_will_be_on->Load( $related->BaseObj->id ); > $reply_will_be_on->Comment( Content => $self->loc( > "Information added by [_1].", # loc > $Actor, > ) . > "\n" . $self->loc( "Notes: [_1]", # loc > $note > ), > ); } return 1; > > > this ends up with: > > [Thu Sep 24 13:47:26 2009] [error]: Scrip 1159 Commit failed: Can't call > method "UserObj" on an undefined value at /opt/rt3/lib/RT/Ticket_Overlay.pm > line 3647. > > OK, line 3647 from Ticket_Overlay: > > $self->HasRight( > Principal => $self->CurrentUser->UserObj(), > Right => "$right" > ) > ); > > > OK, i'm working as superuser, so i should have the right....digging in > the dark :-( > > > -----Urspruengliche Nachricht----- > Von: Ruslan Zakirov [mailto:ruslan.zaki...@gmail.com] > Gesendet: Donnerstag, 24. September 2009 15:23 > An: Brumm, Torsten / Kuehne + Nagel / Ham MI-ID > Cc: Raed El-Hames; rt-users@lists.bestpractical.com > Betreff: Re: [rt-users] Scrip help needed > > Torsten, > > Scrips work under system user, but you have to reload ticket as creator of > the transaction. Something like: > ... > my $reply_will_be_on = RT::Ticket->new( $txn->CreatorObj ); > $reply_will_be_on->Load( $ticket_you_found_as_system_user->id ); > $reply_will_be_on->Comment(...); ... > > On Thu, Sep 24, 2009 at 2:39 PM, Brumm, Torsten / Kuehne + Nagel / Ham MI-ID > <torsten.br...@kuehne-nagel.com> wrote: >> Hi Roy, >> no success, still: RT_System - Comments added >> >> :-( >> >> Thanks >> >> Torsten >> >> >> Kuehne + Nagel (AG & Co.) KG, Geschaeftsleitung: Hans-Georg Brinkmann >> (Vors.), Dirk Blesius (Stellv.), Reiner Heiken (Stellv.), Bruno Mang, >> Alfred Manke, Christian Marnetté (Stellv.), Mark Reinhardt (Stellv.), >> Jens Wollesen, Rainer Wunn, Sitz: Bremen, Registergericht: Bremen, >> HRA 21928, USt-IdNr.: DE 812773878, Persoenlich haftende Gesellschaft: >> Kuehne & Nagel A.G., Sitz: Contern/Luxemburg Geschaeftsfuehrender >> Verwaltungsrat: Klaus-Michael Kuehne >> >> >> >> -----Urspruengliche Nachricht----- >> Von: Raed El-Hames [mailto:r...@vialtus.com] >> Gesendet: Donnerstag, 24. September 2009 11:59 >> An: Brumm, Torsten / Kuehne + Nagel / Ham MI-ID >> Cc: rt-users@lists.bestpractical.com >> Betreff: Re: [rt-users] Scrip help needed >> >> Hi Torsten; >> >> Try >> >> $related->BaseObj->Comment( >> Creator => $self->TransactionObj->Creator, >> Content => $self->loc( "Information added by [_1].", # loc >> $self->TransactionObj->CreatorObj->Name, >> ) . "\n" . $self->loc( "Notes: [_1]", # loc >> $note >> ), >> ); >> >> >> Note the Creator line I added. >> >> Regards; >> Roy >> >> Brumm, Torsten / Kuehne + Nagel / Ham MI-ID wrote: >>> Hi, >>> i'm trying to write a scrip which does the following: >>> >>> We have two or more tickets, each ticket has a refersto to another >>> like this: >>> >>> #1 -> refers to #2 >>> >>> Now, if someone at ticket #2 writes an update, this update (reply in >>> our case) should be posted also to ticket #1 >>> >>> Till this point it is working fine, now my problem: >>> >>> The Update on Ticket #1 is done by RT_System (from the scrip) after >>> the user in ticket #2 writes an update and i have no idea at the >>> moment, how can i do the update as the user, doing the reply on >>> ticket >>> #2 ?!? >>> >>> The Part of the source writing back the update: >>> >>> $related->BaseObj->Comment( >>> Content => $self->loc( "Information added by [_1].", # loc >>> $self->TransactionObj->CreatorObj->Name, >>> ) . "\n" . $self->loc( "Notes: [_1]", # loc >>> $note >>> ), >>> ); >>> I'm not sure how can i add the actual actor from Ticket #2 inside >>> this part of code?!? >>> >>> Below is my full source till now: >>> >>> my $Clone = $self->TicketObj; >>> my $note; >>> my $t = $self->TicketObj->Transactions; $t->Limit( FIELD => 'Type', >>> VALUE => 'Correspond' ); $t->OrderByCols ( >>> { FIELD => 'Created', ORDER => 'DESC' }, >>> { FIELD => 'id', ORDER => 'DESC' }, >>> ); >>> my $CommentObj = $t->First; >>> if( $CommentObj && $CommentObj->id ) { $note = >>> $CommentObj->Content; }; # Get the actual Actor of this transaction >>> my $Actor = $self->TransactionObj->Creator; # $Actor has the ID of >>> the actual Transaction my $temp_user = RT::User->new(); >>> $temp_user->Load($Actor); my $AName = $temp_user->Name(); # Name of >>> Actor in acutal Transaction >>> - possibly not needed >>> >>> while (my $related = $Clone->ReferredToBy->Next) { >>> my $original = $Clone->id; >>> my $relid = $related->BaseObj->id; >>> $related->BaseObj->Comment( >>> Content => $self->loc( "Information added by [_1].", # loc >>> $self->TransactionObj->CreatorObj->Name, >>> ) . "\n" . $self->loc( "Notes: [_1]", # loc >>> $note >>> ), >>> ); >>> } >>> return 1; >>> >>> Any help is appriciated. >>> >>> Torsten >>> >>> Kuehne + Nagel (AG & Co.) KG, Geschaeftsleitung: Hans-Georg >>> Brinkmann (Vors.), Dirk Blesius (Stellv.), Reiner Heiken (Stellv.), >>> Bruno Mang, Alfred Manke, Christian Marnetté (Stellv.), Mark >>> Reinhardt (Stellv.), Jens Wollesen, Rainer Wunn, Sitz: Bremen, >>> Registergericht: Bremen, HRA 21928, USt-IdNr.: DE 812773878, Persoenlich >>> haftende Gesellschaft: >>> Kuehne & Nagel A.G., Sitz: Contern/Luxemburg, Geschaeftsfuehrender >>> Verwaltungsrat: Klaus-Michael Kuehne >>> >>> >> >> _______________________________________________ >> http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users >> >> Community help: http://wiki.bestpractical.com Commercial support: >> sa...@bestpractical.com >> >> >> Discover RT's hidden secrets with RT Essentials from O'Reilly Media. >> Buy a copy at http://rtbook.bestpractical.com >> > > > > -- > Best regards, Ruslan. > -- Best regards, Ruslan. _______________________________________________ http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users Community help: http://wiki.bestpractical.com Commercial support: sa...@bestpractical.com Discover RT's hidden secrets with RT Essentials from O'Reilly Media. Buy a copy at http://rtbook.bestpractical.com