reporting#10 - fix pagination on Contribution Detail report
authorJon Goldberg <jon@megaphonetech.com>
Fri, 22 Feb 2019 02:06:13 +0000 (21:06 -0500)
committerJon Goldberg <jon@megaphonetech.com>
Fri, 22 Feb 2019 17:06:37 +0000 (12:06 -0500)
CRM/Report/Form/Contribute/Detail.php

index 6365ccd8ef0d80f45c11df3d254c602fd86ac211..10690896e7d06e6c91e4e3618beea1b926890e82 100644 (file)
@@ -472,9 +472,10 @@ GROUP BY {$this->_aliases['civicrm_contribution']}.currency";
    *
    * @return string
    */
-  public function buildQuery($applyLimit = TRUE) {
+  public function buildQuery($applyLimit = FALSE) {
     if ($this->isTempTableBuilt) {
-      return "SELECT * FROM civireport_contribution_detail_temp3 $this->_orderBy";
+      $this->limit();
+      return "SELECT SQL_CALC_FOUND_ROWS * FROM civireport_contribution_detail_temp3 $this->_orderBy $this->_limit";
     }
     return parent::buildQuery($applyLimit);
   }
@@ -509,7 +510,6 @@ GROUP BY {$this->_aliases['civicrm_contribution']}.currency";
     // 1. use main contribution query to build temp table 1
     $sql = $this->buildQuery();
     $this->createTemporaryTable('civireport_contribution_detail_temp1', $sql);
-    $this->setPager();
 
     // 2. customize main contribution query for soft credit, and build temp table 2 with soft credit contributions only
     $this->queryMode = 'SoftCredit';