fix: SQL Report: Paginate After

This commit is contained in:
JT Smith 2007-02-15 02:54:28 +00:00
parent d29de5f7f9
commit 6e451a2b5c
2 changed files with 10 additions and 15 deletions

View file

@ -2,6 +2,8 @@
- fix: Calendar Update Feeds now handles iCalendar "DURATION" field - fix: Calendar Update Feeds now handles iCalendar "DURATION" field
- fix: Various potential bugs in WebGUI::DateTime due to inheritence from - fix: Various potential bugs in WebGUI::DateTime due to inheritence from
DateTime. DateTime.
- fix: SQL Report: Paginate After
7.3.9 7.3.9
- fix: SQL Form and big table imports - fix: SQL Form and big table imports

View file

@ -589,13 +589,15 @@ sub _processQuery {
push(@{$self->{_debug_loop}},{ push(@{$self->{_debug_loop}},{
'debug.output' => $i18n->get('Prequery error').' "'.$prequeryStatement.'": '.$sth->errorMessage 'debug.output' => $i18n->get('Prequery error').' "'.$prequeryStatement.'": '.$sth->errorMessage
}); });
} else { }
else {
push(@{$self->{_debug_loop}},{ push(@{$self->{_debug_loop}},{
'debug.output' => "Prequery: $prequeryStatement" 'debug.output' => "Prequery: $prequeryStatement"
}); });
} }
$sth->finish; $sth->finish;
} else { }
else {
push(@{$self->{_debug_loop}},{'debug.output'=>$i18n->get("Prequery not allowed").$prequeryStatement}); push(@{$self->{_debug_loop}},{'debug.output'=>$i18n->get("Prequery not allowed").$prequeryStatement});
} }
} }
@ -607,28 +609,19 @@ sub _processQuery {
.'='.$self->session->url->escape($self->session->form->process($_))); .'='.$self->session->url->escape($self->session->form->process($_)));
} }
} }
my $paginateAfter; my $paginateAfter = ($page == 1) ? $self->get("paginateAfter") : 99999999;
if ($page) # Set page length
{
$paginateAfter = $self->get("paginateAfter");
$paginateAfter = 1000 if($self->{_query}{$nr + 1}{dbQuery});
}
else
{
$paginateAfter = 1000000;
}
my $p = WebGUI::Paginator->new($self->session,$url,$paginateAfter); my $p = WebGUI::Paginator->new($self->session,$url,$paginateAfter);
my $error = $p->setDataByQuery($query,$dbh,1,$placeholderParams); my $error = $p->setDataByQuery($query,$dbh,1,$placeholderParams);
if ($error ne "") { if ($error ne "") {
$self->session->errorHandler->warn("There was a problem with the query: ".$error); $self->session->errorHandler->warn("There was a problem with the query: ".$error);
push(@{$self->{_debug_loop}},{'debug.output'=>$i18n->get(11)." ".$error}); push(@{$self->{_debug_loop}},{'debug.output'=>$i18n->get(11)." ".$error});
} else { }
else {
my $first = 1; my $first = 1;
my @columns; my @columns;
my @rows; my @rows;
my $rownum = 1; my $rownum = 1;
my $rowdata = $p->getPageData; foreach my $data (@{$p->getPageData}) {
foreach my $data (@$rowdata) {
$self->{_query}{$nr}{rowData} = $data; $self->{_query}{$nr}{rowData} = $data;
my %row; my %row;
my $colnum = 1; my $colnum = 1;