Warning: mysql_connect(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in /home/zurmoorg/public_html/z-header.php on line 8

Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /home/zurmoorg/public_html/z-header.php on line 8

MatrixReportDataProvider Class Reference

Inheritance diagram for MatrixReportDataProvider:
ReportDataProvider

Public Member Functions

 __construct (Report $report, array $config=array())
 calculateTotalItemCount ()
 calculateTotalGroupingsCount ()
 resolveDisplayAttributes ()
 resolveGroupBys ()
 getXAxisGroupByDataValuesCount ()
 getYAxisGroupByDataValuesCount ()
 makeXAxisGroupingsForColumnNamesData ()
 makeAxisCrossingColumnCountAndLeadingHeaderRowsData ($forExport=false)
 getDisplayAttributesThatAreYAxisGroupBys ()

Static Public Member Functions

static resolveColumnAliasName ($index)
static resolveHeaderColumnAliasName ($columnAliasName)
static resolveTotalColumnAliasName ($columnAliasName)

Data Fields

const HEADER_COLUMN_ALIAS_SUFFIX = 'Header'
const TOTAL_COLUMN_ALIAS_SUFFIX = 'Total'

Static Public Attributes

static $maximumGroupsCount = 400

Protected Member Functions

 getDisplayAttributesForGrandTotals ()
 resolveXAxisGroupingsForColumnNames (&$data, $indexedXAxisGroupByDataValues, &$attributeKey, $xAxisGroupBysCount, $startingIndex)
 runQueryAndGetResolveResultsData ($offset, $limit)
 resolveRowSpansForResultsData (&$resultsData)
 getDisplayCalculationsCount ()
 getXAxisGroupByDataValues ()
 getYAxisGroupByDataValues ()
 isReportValidType ()
 getXAxisGroupBys ()
 getDisplayAttributesThatAreXAxisGroupBys ()
 getYAxisGroupBys ()
 isDisplayAttributeAnXAxisGroupBy ($displayAttribute)
 isDisplayAttributeAnYAxisGroupBy ($displayAttribute)
 addDefaultColumnNamesAndValuesToReportResultsRowData (ReportResultsRowData $reportResultsRowData, $totalCount)
 resolveYAxisDisplayAttributesUniqueIndex ($rowData, $displayAttributesThatAreYAxisGroupBys)
 makeGroupBysContentForCount (RedBeanModelJoinTablesQueryAdapter $joinTablesAdapter)
 makeGroupBysContentForGrandTotals (RedBeanModelJoinTablesQueryAdapter $joinTablesAdapter)
 getGrandTotalsRowsData ()
 makeSqlQueryForRowTotals ()

Protected Attributes

 $haveGrandTotals = true

Detailed Description

Data provider a report that is a matrix report

Definition at line 40 of file MatrixReportDataProvider.php.


Constructor & Destructor Documentation

__construct ( Report report,
array $  config = array() 
)

Override to

Parameters:
Report $report
array $config

Reimplemented from ReportDataProvider.

Definition at line 107 of file MatrixReportDataProvider.php.


Member Function Documentation

static resolveColumnAliasName ( index  )  [static]
Parameters:
$index 
Returns:
string

Definition at line 76 of file MatrixReportDataProvider.php.

static resolveHeaderColumnAliasName ( columnAliasName  )  [static]
Parameters:
$columnAliasName 
Returns:
string

Definition at line 86 of file MatrixReportDataProvider.php.

static resolveTotalColumnAliasName ( columnAliasName  )  [static]
Parameters:
$columnAliasName 
Returns:
string

Definition at line 96 of file MatrixReportDataProvider.php.

calculateTotalItemCount (  ) 
Returns:
int

Reimplemented from ReportDataProvider.

Definition at line 116 of file MatrixReportDataProvider.php.

calculateTotalGroupingsCount (  ) 
Returns:
int

Definition at line 127 of file MatrixReportDataProvider.php.

resolveDisplayAttributes (  ) 
Returns:
array|null

Reimplemented from ReportDataProvider.

Definition at line 135 of file MatrixReportDataProvider.php.

resolveGroupBys (  ) 
Returns:
array|null

Reimplemented from ReportDataProvider.

Definition at line 168 of file MatrixReportDataProvider.php.

getXAxisGroupByDataValuesCount (  ) 
Returns:
int

Definition at line 195 of file MatrixReportDataProvider.php.

getYAxisGroupByDataValuesCount (  ) 
Returns:
int

Definition at line 208 of file MatrixReportDataProvider.php.

makeXAxisGroupingsForColumnNamesData (  ) 

Public for testing purposes

Returns:
array

Definition at line 217 of file MatrixReportDataProvider.php.

makeAxisCrossingColumnCountAndLeadingHeaderRowsData ( forExport = false  ) 
Parameters:
bool $forExport
Returns:
array

Definition at line 233 of file MatrixReportDataProvider.php.

getDisplayAttributesThatAreYAxisGroupBys (  ) 
Returns:
array

Definition at line 259 of file MatrixReportDataProvider.php.

resolveXAxisGroupingsForColumnNames ( &$  data,
indexedXAxisGroupByDataValues,
&$  attributeKey,
xAxisGroupBysCount,
startingIndex 
) [protected]
Parameters:
array $data
array $indexedXAxisGroupByDataValues
int $attributeKey
int $xAxisGroupBysCount
int $startingIndex

Definition at line 284 of file MatrixReportDataProvider.php.

runQueryAndGetResolveResultsData ( offset,
limit 
) [protected]
Parameters:
null | int $offset
null | int $limit
Returns:
array

Reimplemented from ReportDataProvider.

Definition at line 323 of file MatrixReportDataProvider.php.

resolveRowSpansForResultsData ( &$  resultsData  )  [protected]
Parameters:
array $resultsData

Definition at line 394 of file MatrixReportDataProvider.php.

getDisplayCalculationsCount (  )  [protected]
Returns:
int

Definition at line 452 of file MatrixReportDataProvider.php.

getXAxisGroupByDataValues (  )  [protected]
Returns:
array

Definition at line 468 of file MatrixReportDataProvider.php.

getYAxisGroupByDataValues (  )  [protected]
Returns:
array

Definition at line 505 of file MatrixReportDataProvider.php.

isReportValidType (  )  [protected]
Returns:
bool|void
Exceptions:
NotSupportedException if the report type is not matrix

Reimplemented from ReportDataProvider.

Definition at line 534 of file MatrixReportDataProvider.php.

getXAxisGroupBys (  )  [protected]
Returns:
array

Definition at line 545 of file MatrixReportDataProvider.php.

getDisplayAttributesThatAreXAxisGroupBys (  )  [protected]
Returns:
array

Definition at line 561 of file MatrixReportDataProvider.php.

getYAxisGroupBys (  )  [protected]
Returns:
array

Definition at line 582 of file MatrixReportDataProvider.php.

isDisplayAttributeAnXAxisGroupBy ( displayAttribute  )  [protected]
Parameters:
$displayAttribute 
Returns:
bool

Definition at line 599 of file MatrixReportDataProvider.php.

isDisplayAttributeAnYAxisGroupBy ( displayAttribute  )  [protected]
Parameters:
$displayAttribute 
Returns:
bool

Definition at line 616 of file MatrixReportDataProvider.php.

addDefaultColumnNamesAndValuesToReportResultsRowData ( ReportResultsRowData reportResultsRowData,
totalCount 
) [protected]
Parameters:
ReportResultsRowData $reportResultsRowData
$totalCount 

Definition at line 633 of file MatrixReportDataProvider.php.

resolveYAxisDisplayAttributesUniqueIndex ( rowData,
displayAttributesThatAreYAxisGroupBys 
) [protected]
Parameters:
array $rowData
array $displayAttributesThatAreYAxisGroupBys
Returns:
null|string

Definition at line 648 of file MatrixReportDataProvider.php.

makeGroupBysContentForCount ( RedBeanModelJoinTablesQueryAdapter joinTablesAdapter  )  [protected]

Only query on y-axis group bys to get a proper row count

Parameters:
RedBeanModelJoinTablesQueryAdapter $joinTablesAdapter
Returns:
null|string

Reimplemented from ReportDataProvider.

Definition at line 667 of file MatrixReportDataProvider.php.

makeGroupBysContentForGrandTotals ( RedBeanModelJoinTablesQueryAdapter joinTablesAdapter  )  [protected]
Parameters:
RedBeanModelJoinTablesQueryAdapter $joinTablesAdapter
Returns:
null|string

Reimplemented from ReportDataProvider.

Definition at line 673 of file MatrixReportDataProvider.php.


The documentation for this class was generated from the following file:
 All Data Structures Functions Variables
Generated on Tue Jun 25 07:11:01 2019

Warning: mysql_connect(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in /home/zurmoorg/public_html/z-footer.php on line 8

Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /home/zurmoorg/public_html/z-footer.php on line 8