From 1ccb3360d40c693903f9ba56e49a9c4765a98316 Mon Sep 17 00:00:00 2001 From: Marcel de Rooy Date: Fri, 24 Jan 2020 11:17:15 +0000 Subject: [PATCH] Bug 24305: (QA follow-up) Strip table name in [[table.field|alias]] Content-Type: text/plain; charset=utf-8 When you would use the construct, you wont have batch features unless we strip the table name. This is consistent with the $sth->{NAME} used to fill the headers by default. Test plan: Use [[items.biblionumber|bibno]] instead of items.biblionumber in a reporting query. Signed-off-by: Marcel de Rooy --- reports/guided_reports.pl | 1 + 1 file changed, 1 insertion(+) diff --git a/reports/guided_reports.pl b/reports/guided_reports.pl index 5059e9502a..fa2817f1c7 100755 --- a/reports/guided_reports.pl +++ b/reports/guided_reports.pl @@ -1091,6 +1091,7 @@ sub get_prepped_report { for(my $i=0;$i<$#split/2;$i++){ #The placeholders are always the odd elements of the array my ($type,$name) = split /\|/,$split[$i*2+1]; # We split them on '|' $headers->{$name} = $type; # Store as a lookup for the template + $headers->{$name} =~ s/^\w*\.//; # strip the table name just as in $sth->{NAME} array $split[$i*2+1] =~ s/(\||\?|\.|\*|\(|\)|\%)/\\$1/g; #Quote any special characters so we can replace the placeholders $name = C4::Context->dbh->quote($name); $sql =~ s/\[\[$split[$i*2+1]\]\]/$type AS $name/; # Remove placeholders from SQL -- 2.11.0