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 Wed Jul 26 07:10:26 2017