Help with Templates

Hi,

I want to display the ID of related Tickets in my template

I tried using this {$Ticket->RefersTo}
But that just returns RT::Links=HASH(0x7f6dc46f7d20)

How can I expand this to the ID of the related object?

Regards

Thomas

You’re getting an RT::Links instance, which is an iterator. I’ve used
something like this with success:

Related ticket IDs: {
my @refers_to_ids;
my $refers_to = $Ticket->RefersTo;
while (my $link = $refers_to->Next) {
next unless $link->BaseURI->IsLocal; # skip over non-ticket links
push @refers_to_ids, $link->BaseObj->id;
}
return join(q{, }, map { “#$_” } sort @refers_to_ids;
}On 17 December 2014 at 07:51, Thomas Westlund thomas@westlund.no wrote:

Hi,

I want to display the ID of related Tickets in my template

I tried using this {$Ticket->RefersTo}

But that just returns RT::Links=HASH(0x7f6dc46f7d20)

How can I expand this to the ID of the related object?

Regards

Thomas

Hi,

Thanks for your reply

I’m fairly new RT an my perl skills at not to good either.

How would I go about outputting this in a template?

Thomas> On 17. des. 2014, at 00.28, Alex Peters alex@peters.net wrote:

You’re getting an RT::Links instance, which is an iterator. I’ve used something like this with success:

Related ticket IDs: {
my @refers_to_ids;
my $refers_to = $Ticket->RefersTo;
while (my $link = $refers_to->Next) {
next unless $link->BaseURI->IsLocal; # skip over non-ticket links
push @refers_to_ids, $link->BaseObj->id;
}
return join(q{, }, map { “#$_” } sort @refers_to_ids;
}

On 17 December 2014 at 07:51, Thomas Westlund thomas@westlund.no wrote:
Hi,

I want to display the ID of related Tickets in my template

I tried using this {$Ticket->RefersTo}

But that just returns RT::Links=HASH(0x7f6dc46f7d20)

How can I expand this to the ID of the related object?

Regards

Thomas

Simply copy everything between (and including) the outermost curly braces
in the location where you’d like a comma-separated list of ticket numbers
to appear.

Basically any curly brace construct will be replaced with something else
when the template is evaluated.On 17 December 2014 at 18:36, Thomas Westlund thomas@westlund.no wrote:

Hi,

Thanks for your reply

I’m fairly new RT an my perl skills at not to good either.

How would I go about outputting this in a template?


Thomas

On 17. des. 2014, at 00.28, Alex Peters alex@peters.net wrote:

You’re getting an RT::Links instance, which is an iterator. I’ve used
something like this with success:

Related ticket IDs: {
my @refers_to_ids;
my $refers_to = $Ticket->RefersTo;
while (my $link = $refers_to->Next) {
next unless $link->BaseURI->IsLocal; # skip over non-ticket links
push @refers_to_ids, $link->BaseObj->id;
}
return join(q{, }, map { “#$_” } sort @refers_to_ids;
}

On 17 December 2014 at 07:51, Thomas Westlund thomas@westlund.no wrote:

Hi,

I want to display the ID of related Tickets in my template

I tried using this {$Ticket->RefersTo}

But that just returns RT::Links=HASH(0x7f6dc46f7d20)

How can I expand this to the ID of the related object?

Regards

Thomas

Hi,

There seems to be an error in the code:

This is my complete template

======= CUT HERE ======Subject: Ordrestatus: { $Ticket->SubjectTag }

Hei,

Her kommer ditt tilbud.

Vennligst behold:

     { $Ticket->SubjectTag }

emnefeltet ved fremtidig korrespodanse i denne saken.

                    Mvh,

                    Kvantel AS

                    {$Ticket->QueueObj->CorrespondAddress()}

Related ticket IDs:

{

my @refers_to_ids;

my $refers_to = $Ticket->RefersTo;

while (my $link = $refers_to->Next) {

next unless $link->BaseURI->IsLocal;

push @refers_to_ids, $link->BaseObj->id;

}

return join(q{, }, map { “#$_” } sort @refers_to_ids;

}

======= CUT HERE ======

When I try to save this template, I get the following error:

  • Template Tilbud: Content updated

  • Couldn’t compile template codeblock ’ my @refers_to_ids; my $refers_to = $Ticket->RefersTo; while (my $link = $refers_to->Next) { next unless $link->BaseURI->IsLocal; } return join(q{, }, map { “#$_” } sort @refers_to_ids; ': syntax error at template line 28

Regards

Thomas

Fra: Alex Peters [mailto:alex@peters.net]
Sendt: 17. desember 2014 11:57
Til: Thomas Westlund
Kopi: rt-users@lists.bestpractical.com
Emne: Re: [rt-users] Help with Templates

Simply copy everything between (and including) the outermost curly braces in the location where you’d like a comma-separated list of ticket numbers to appear.

Basically any curly brace construct will be replaced with something else when the template is evaluated.

Hi again,

Seems like this is the offending line, removing it lets me save the template without any errors:

return join(q{, }, map { “#$_” } sort @refers_to_ids;

ThomasFra: Thomas Westlund [mailto:thomas@westlund.no]
Sendt: 17. desember 2014 12:39
Til: ‘Alex Peters’
Kopi: ‘rt-users@lists.bestpractical.com’
Emne: SV: [rt-users] Help with Templates

Hi,

There seems to be an error in the code:

This is my complete template

======= CUT HERE ======

Subject: Ordrestatus: { $Ticket->SubjectTag }

Hei,

Her kommer ditt tilbud.

Vennligst behold:

     { $Ticket->SubjectTag }

emnefeltet ved fremtidig korrespodanse i denne saken.

                    Mvh,

                    Kvantel AS

                    {$Ticket->QueueObj->CorrespondAddress()}

Related ticket IDs:

{

my @refers_to_ids;

my $refers_to = $Ticket->RefersTo;

while (my $link = $refers_to->Next) {

next unless $link->BaseURI->IsLocal;

push @refers_to_ids, $link->BaseObj->id;

}

return join(q{, }, map { “#$_” } sort @refers_to_ids;

}

======= CUT HERE ======

When I try to save this template, I get the following error:

  •     Template Tilbud: Content updated
    
  •     Couldn't compile template codeblock ' my @refers_to_ids; my $refers_to = $Ticket->RefersTo; while (my $link = $refers_to->Next) { next unless $link->BaseURI->IsLocal; } return join(q{, }, map { "#$_" } sort @refers_to_ids; ': syntax error at template line 28
    

Regards

Thomas

Fra: Alex Peters [mailto:alex@peters.net]
Sendt: 17. desember 2014 11:57
Til: Thomas Westlund
Kopi: rt-users@lists.bestpractical.com mailto:rt-users@lists.bestpractical.com
Emne: Re: [rt-users] Help with Templates

Simply copy everything between (and including) the outermost curly braces in the location where you’d like a comma-separated list of ticket numbers to appear.

Basically any curly brace construct will be replaced with something else when the template is evaluated.

Sorry, there’s a missing closing bracket on the return line. It should be
this:

return join(q{, }, map { “#$_” } sort @refers_to_ids);On 17 December 2014 at 22:38, Thomas Westlund thomas@westlund.no wrote:

Hi,

There seems to be an error in the code:

This is my complete template

======= CUT HERE ======

Subject: Ordrestatus: { $Ticket->SubjectTag }

Hei,

Her kommer ditt tilbud.

Vennligst behold:

     { $Ticket->SubjectTag }

emnefeltet ved fremtidig korrespodanse i denne saken.

                    Mvh,

                    Kvantel AS

                    {$Ticket->QueueObj->CorrespondAddress()}

Related ticket IDs:

{

my @refers_to_ids;

my $refers_to = $Ticket->RefersTo;

while (my $link = $refers_to->Next) {

next unless $link->BaseURI->IsLocal;

push @refers_to_ids, $link->BaseObj->id;

}

return join(q{, }, map { “#$_” } sort @refers_to_ids;

}

======= CUT HERE ======

When I try to save this template, I get the following error:

· Template Tilbud: Content updated

· Couldn’t compile template codeblock ’ my @refers_to_ids; my $refers_to
= $Ticket->RefersTo; while (my $link = $refers_to->Next) { next unless
$link->BaseURI->IsLocal; } return join(q{, }, map { “#$_” } sort
@refers_to_ids; ': syntax error at template line 28

Regards

Thomas

Fra: Alex Peters [mailto:alex@peters.net]
Sendt: 17. desember 2014 11:57
Til: Thomas Westlund
Kopi: rt-users@lists.bestpractical.com
Emne: Re: [rt-users] Help with Templates

Simply copy everything between (and including) the outermost curly braces
in the location where you’d like a comma-separated list of ticket numbers
to appear.

Basically any curly brace construct will be replaced with something else
when the template is evaluated.

On 17 December 2014 at 18:36, Thomas Westlund thomas@westlund.no wrote:

Hi,

Thanks for your reply

I’m fairly new RT an my perl skills at not to good either.

How would I go about outputting this in a template?

Thomas

On 17. des. 2014, at 00.28, Alex Peters alex@peters.net wrote:

You’re getting an RT::Links instance, which is an iterator. I’ve used
something like this with success:

Related ticket IDs: {

my @refers_to_ids;

my $refers_to = $Ticket->RefersTo;

while (my $link = $refers_to->Next) {

next unless $link->BaseURI->IsLocal; # skip over non-ticket links

push @refers_to_ids, $link->BaseObj->id;

}

return join(q{, }, map { “#$_” } sort @refers_to_ids;

}

On 17 December 2014 at 07:51, Thomas Westlund thomas@westlund.no wrote:

Hi,

I want to display the ID of related Tickets in my template

I tried using this {$Ticket->RefersTo}

But that just returns RT::Links=HASH(0x7f6dc46f7d20)

How can I expand this to the ID of the related object?

Regards

Thomas

Thanx, that did the trick. This is really helpful :wink:

This code only prints related tickets, what if the related object is an Asset? Is it possible to print the id of that as well?

ThomasFra: Alex Peters [mailto:alex@peters.net]
Sendt: 17. desember 2014 12:42
Til: Thomas Westlund
Kopi: rt-users@lists.bestpractical.com
Emne: Re: [rt-users] Help with Templates

Sorry, there’s a missing closing bracket on the return line. It should be this:

return join(q{, }, map { “#$_” } sort @refers_to_ids);

I personally don’t have experience with assets, but hopefully someone else
on the list can assist you with modifying that code to list assets (or give
you code to list them separately).On 17 December 2014 at 22:56, Thomas Westlund thomas@westlund.no wrote:

Thanx, that did the trick. This is really helpful :wink:

This code only prints related tickets, what if the related object is an
Asset? Is it possible to print the id of that as well?

Thomas

Fra: Alex Peters [mailto:alex@peters.net]
Sendt: 17. desember 2014 12:42

Til: Thomas Westlund
Kopi: rt-users@lists.bestpractical.com
Emne: Re: [rt-users] Help with Templates

Sorry, there’s a missing closing bracket on the return line. It should be
this:

return join(q{, }, map { “#$_” } sort @refers_to_ids);

On 17 December 2014 at 22:38, Thomas Westlund thomas@westlund.no wrote:

Hi,

There seems to be an error in the code:

This is my complete template

======= CUT HERE ======

Subject: Ordrestatus: { $Ticket->SubjectTag }

Hei,

Her kommer ditt tilbud.

Vennligst behold:

     { $Ticket->SubjectTag }

emnefeltet ved fremtidig korrespodanse i denne saken.

                    Mvh,

                    Kvantel AS

                    {$Ticket->QueueObj->CorrespondAddress()}

Related ticket IDs:

{

my @refers_to_ids;

my $refers_to = $Ticket->RefersTo;

while (my $link = $refers_to->Next) {

next unless $link->BaseURI->IsLocal;

push @refers_to_ids, $link->BaseObj->id;

}

return join(q{, }, map { “#$_” } sort @refers_to_ids;

}

======= CUT HERE ======

When I try to save this template, I get the following error:

· Template Tilbud: Content updated

· Couldn’t compile template codeblock ’ my @refers_to_ids; my $refers_to
= $Ticket->RefersTo; while (my $link = $refers_to->Next) { next unless
$link->BaseURI->IsLocal; } return join(q{, }, map { “#$_” } sort
@refers_to_ids; ': syntax error at template line 28

Regards

Thomas

Fra: Alex Peters [mailto:alex@peters.net]
Sendt: 17. desember 2014 11:57
Til: Thomas Westlund
Kopi: rt-users@lists.bestpractical.com
Emne: Re: [rt-users] Help with Templates

Simply copy everything between (and including) the outermost curly braces
in the location where you’d like a comma-separated list of ticket numbers
to appear.

Basically any curly brace construct will be replaced with something else
when the template is evaluated.

On 17 December 2014 at 18:36, Thomas Westlund thomas@westlund.no wrote:

Hi,

Thanks for your reply

I’m fairly new RT an my perl skills at not to good either.

How would I go about outputting this in a template?

Thomas

On 17. des. 2014, at 00.28, Alex Peters alex@peters.net wrote:

You’re getting an RT::Links instance, which is an iterator. I’ve used
something like this with success:

Related ticket IDs: {

my @refers_to_ids;

my $refers_to = $Ticket->RefersTo;

while (my $link = $refers_to->Next) {

next unless $link->BaseURI->IsLocal; # skip over non-ticket links

push @refers_to_ids, $link->BaseObj->id;

}

return join(q{, }, map { “#$_” } sort @refers_to_ids;

}

On 17 December 2014 at 07:51, Thomas Westlund thomas@westlund.no wrote:

Hi,

I want to display the ID of related Tickets in my template

I tried using this {$Ticket->RefersTo}

But that just returns RT::Links=HASH(0x7f6dc46f7d20)

How can I expand this to the ID of the related object?

Regards

Thomas

Hi,

OK, hopefully someone with experience of Asses will reply.

Thanks for the help anyway, this was really useful :wink:

ThomasFra: Alex Peters [mailto:alex@peters.net]
Sendt: 17. desember 2014 12:59
Til: Thomas Westlund
Kopi: rt-users@lists.bestpractical.com
Emne: Re: [rt-users] Help with Templates

I personally don’t have experience with assets, but hopefully someone else on the list can assist you with modifying that code to list assets (or give you code to list them separately).

Hi again,

Hmm, seems there might be something wrong or missing with the code

It only prints the ID of the current ticket, I have related two tickets to test it, it prints its own id two times.

Any tips where to start?

ThomasFra: Alex Peters [mailto:alex@peters.net]
Sendt: 17. desember 2014 12:59
Til: Thomas Westlund
Kopi: rt-users@lists.bestpractical.com
Emne: Re: [rt-users] Help with Templates

I personally don’t have experience with assets, but hopefully someone else on the list can assist you with modifying that code to list assets (or give you code to list them separately).

Links have a “base” and a “target.” Logically, I would expect the target
to be the “other thing.” I think that’s not the case for “depends on”
relationships, which is what I based my code on. (I don’t know whether
that should be regarded as a bug.)

Anyway, try replacing “BaseURI” and “BaseObj” with “TargetURI” and
“TargetObj” respectively.

I apologise for not testing my code in this instance before sharing it with
the list.On 17 December 2014 at 23:18, Thomas Westlund thomas@westlund.no wrote:

Hi again,

Hmm, seems there might be something wrong or missing with the code

It only prints the ID of the current ticket, I have related two tickets to
test it, it prints its own id two times.

Any tips where to start?

Thomas

Fra: Alex Peters [mailto:alex@peters.net]
Sendt: 17. desember 2014 12:59

Til: Thomas Westlund
Kopi: rt-users@lists.bestpractical.com
Emne: Re: [rt-users] Help with Templates

I personally don’t have experience with assets, but hopefully someone else
on the list can assist you with modifying that code to list assets (or give
you code to list them separately).

On 17 December 2014 at 22:56, Thomas Westlund thomas@westlund.no wrote:

Thanx, that did the trick. This is really helpful :wink:

This code only prints related tickets, what if the related object is an
Asset? Is it possible to print the id of that as well?

Thomas

Fra: Alex Peters [mailto:alex@peters.net]
Sendt: 17. desember 2014 12:42

Til: Thomas Westlund
Kopi: rt-users@lists.bestpractical.com
Emne: Re: [rt-users] Help with Templates

Sorry, there’s a missing closing bracket on the return line. It should be
this:

return join(q{, }, map { “#$_” } sort @refers_to_ids);

On 17 December 2014 at 22:38, Thomas Westlund thomas@westlund.no wrote:

Hi,

There seems to be an error in the code:

This is my complete template

======= CUT HERE ======

Subject: Ordrestatus: { $Ticket->SubjectTag }

Hei,

Her kommer ditt tilbud.

Vennligst behold:

     { $Ticket->SubjectTag }

emnefeltet ved fremtidig korrespodanse i denne saken.

                    Mvh,

                    Kvantel AS

                    {$Ticket->QueueObj->CorrespondAddress()}

Related ticket IDs:

{

my @refers_to_ids;

my $refers_to = $Ticket->RefersTo;

while (my $link = $refers_to->Next) {

next unless $link->BaseURI->IsLocal;

push @refers_to_ids, $link->BaseObj->id;

}

return join(q{, }, map { “#$_” } sort @refers_to_ids;

}

======= CUT HERE ======

When I try to save this template, I get the following error:

· Template Tilbud: Content updated

· Couldn’t compile template codeblock ’ my @refers_to_ids; my $refers_to
= $Ticket->RefersTo; while (my $link = $refers_to->Next) { next unless
$link->BaseURI->IsLocal; } return join(q{, }, map { “#$_” } sort
@refers_to_ids; ': syntax error at template line 28

Regards

Thomas

Fra: Alex Peters [mailto:alex@peters.net]
Sendt: 17. desember 2014 11:57
Til: Thomas Westlund
Kopi: rt-users@lists.bestpractical.com
Emne: Re: [rt-users] Help with Templates

Simply copy everything between (and including) the outermost curly braces
in the location where you’d like a comma-separated list of ticket numbers
to appear.

Basically any curly brace construct will be replaced with something else
when the template is evaluated.

On 17 December 2014 at 18:36, Thomas Westlund thomas@westlund.no wrote:

Hi,

Thanks for your reply

I’m fairly new RT an my perl skills at not to good either.

How would I go about outputting this in a template?

Thomas

On 17. des. 2014, at 00.28, Alex Peters alex@peters.net wrote:

You’re getting an RT::Links instance, which is an iterator. I’ve used
something like this with success:

Related ticket IDs: {

my @refers_to_ids;

my $refers_to = $Ticket->RefersTo;

while (my $link = $refers_to->Next) {

next unless $link->BaseURI->IsLocal; # skip over non-ticket links

push @refers_to_ids, $link->BaseObj->id;

}

return join(q{, }, map { “#$_” } sort @refers_to_ids;

}

On 17 December 2014 at 07:51, Thomas Westlund thomas@westlund.no wrote:

Hi,

I want to display the ID of related Tickets in my template

I tried using this {$Ticket->RefersTo}

But that just returns RT::Links=HASH(0x7f6dc46f7d20)

How can I expand this to the ID of the related object?

Regards

Thomas