Bugzilla – Attachment 3778 Details for
Bug 6099
pagination error on GROUP BY guided reports
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Proposed patch
0001-Bug-6099-error-in-report-pagination-when-GROUP-BY.patch (text/plain), 2.47 KB, created by
Jonathan Druart
on 2011-04-07 10:02:17 UTC
(
hide
)
Description:
Proposed patch
Filename:
MIME Type:
Creator:
Jonathan Druart
Created:
2011-04-07 10:02:17 UTC
Size:
2.47 KB
patch
obsolete
>From 9b96a62445e74114109f0934b405b0ad652c5611 Mon Sep 17 00:00:00 2001 >From: Jonathan Druart <jonathan.druart@biblibre.com> >Date: Thu, 7 Apr 2011 11:59:02 +0200 >Subject: [PATCH] Bug 6099: error in report pagination when GROUP BY > >--- > C4/Reports/Guided.pm | 19 ++++++++----------- > reports/guided_reports.pl | 2 +- > 2 files changed, 9 insertions(+), 12 deletions(-) > >diff --git a/C4/Reports/Guided.pm b/C4/Reports/Guided.pm >index 0da7c13..409ba69 100644 >--- a/C4/Reports/Guided.pm >+++ b/C4/Reports/Guided.pm >@@ -43,7 +43,7 @@ BEGIN { > save_report get_saved_reports execute_query get_saved_report create_compound run_compound > get_column_type get_distinct_values save_dictionary get_from_dictionary > delete_definition delete_report format_results get_sql >- select_2_select_count_value update_sql >+ nb_rows_update_sql update_sql > ); > } > >@@ -373,6 +373,13 @@ sub get_criteria { > return ( \@criteria_array ); > } > >+sub nb_rows($) { >+ my $sql = shift or return; >+ my $sth = C4::Context->dbh->prepare($sql); >+ $sth->execute(); >+ return scalar ( $sth->fetchall_arrayref() ); >+} >+ > =item execute_query > > ($results, $total, $error) = execute_query($sql, $offset, $limit) >@@ -399,16 +406,6 @@ the user in a user-supplied SQL query WILL apply in any case. > # ~ remove any LIMIT clause > # ~ repace SELECT clause w/ SELECT count(*) > >-sub select_2_select_count_value ($) { >- my $sql = shift or return; >- my $countsql = select_2_select_count($sql); >- $debug and warn "original query: $sql\ncount query: $countsql\n"; >- my $sth1 = C4::Context->dbh->prepare($countsql); >- $sth1->execute(); >- my $total = $sth1->fetchrow(); >- $debug and warn "total records for this query: $total\n"; >- return $total; >-} > sub select_2_select_count ($) { > # Modify the query passed in to create a count query... (I think this covers all cases -crn) > my ($sql) = strip_limit(shift) or return; >diff --git a/reports/guided_reports.pl b/reports/guided_reports.pl >index a53712e..746174c 100755 >--- a/reports/guided_reports.pl >+++ b/reports/guided_reports.pl >@@ -484,7 +484,7 @@ elsif ($phase eq 'Run this report'){ > $sql =~ s/<<$split[$i*2+1]>>/$quoted/; > } > my ($sth, $errors) = execute_query($sql, $offset, $limit); >- my $total = select_2_select_count_value($sql) || 0; >+ my $total = nb_rows($sql) || 0; > unless ($sth) { > die "execute_query failed to return sth for report $report: $sql"; > } else { >-- >1.7.1 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 6099
:
3759
|
3778
|
3798