+ $form->{report_generator_output_format} = 'HTML' if !$form->{report_generator_output_format};
+
+ # manual paginating
+ my $allrows = !!($form->{report_generator_output_format} ne 'HTML') ;
+ my $page = $::form->{page} || 1;
+ my $pages = {};
+ $pages->{per_page} = $::form->{per_page} || 20;
+ my $first_nr = ($page - 1) * $pages->{per_page};
+ my $last_nr = $first_nr + $pages->{per_page};
+
+ # no optimisation if qty op
+ if ( !$allrows && $form->{maxrows} && !$filter{qty_op}) {
+ $filter{limit} = $pages->{per_page};
+ $filter{offset} = ($page - 1) * $pages->{per_page};
+ $first_nr = 0;
+ $last_nr = $pages->{per_page};
+ }
+
+ my @contents = WH->get_warehouse_report(%filter);
+
+ # get maxcount
+ if (!$form->{maxrows}) {
+ $form->{maxrows} = scalar @contents ;
+ }
+