All Data Structures Functions Variables Pages
Public Member Functions | Static Public Member Functions | Data Fields | Static Public Attributes | Protected Member Functions | Protected Attributes
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 ()
 
- Public Member Functions inherited from ReportDataProvider
 __construct (Report $report, array $config=array())
 
 setRunReport ($runReport)
 
 getReport ()
 
 resolveDisplayAttributes ()
 
 resolveGroupBys ()
 
 calculateTotalItemCount ()
 
 makeTotalCountSqlQueryForDisplay ()
 
 makeSqlQueryForDisplay ()
 
 resolveFiltersForReadPermissions (array $filters, &$filtersStructure)
 
 resolveFiltersForVariableStates ($filters, &$filtersStructure)
 
 getData ($refresh=false)
 
 setOffset ($offset)
 
 runQueryAndGrandTotalsData ()
 

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 Member Functions inherited from ReportDataProvider
 isReportValidType ()
 
 fetchData ()
 
 resolveOffset ()
 
 resolveLimit ()
 
 runQueryAndGetResolveResultsData ($offset, $limit)
 
 getRowsData ($sql)
 
 getGrandTotalsRowsData ()
 
 fetchKeys ()
 
 makeSqlQueryForFetchingData (RedBeanModelSelectQueryAdapter $selectQueryAdapter, $offset, $limit)
 
 makeSqlQueryForFetchingTotalItemCount ($selectQueryAdapter, $selectJustCount=false)
 
 getDisplayAttributesForGrandTotals ()
 
 makeSqlQueryForGrandTotals ()
 
 makeDisplayAttributes (RedBeanModelJoinTablesQueryAdapter $joinTablesAdapter, RedBeanModelSelectQueryAdapter $selectQueryAdapter)
 
 makeFiltersContent (RedBeanModelJoinTablesQueryAdapter $joinTablesAdapter)
 
 makeOrderBysContent (RedBeanModelJoinTablesQueryAdapter $joinTablesAdapter)
 
 makeGroupBysContent (RedBeanModelJoinTablesQueryAdapter $joinTablesAdapter)
 
 makeGroupBysContentForGrandTotals (RedBeanModelJoinTablesQueryAdapter $joinTablesAdapter)
 
 makeGroupBysContentForCount (RedBeanModelJoinTablesQueryAdapter $joinTablesAdapter)
 
 resolveFilterForReadPermissionAttributeIndex ($attributeIndexOrDerivedTypePrefix, $attributeOrDerivedAttributeType)
 
 makeReadPermissionsAttributeIndexes (array $filters)
 
 resolveFilterForVariableStateAttributeIndex ($attributeIndexOrDerivedTypePrefix, $variableStateData)
 
 makeVariableStatesAttributeIndexes (array $filters)
 
 getDisplayAttributeByAttribute ($attribute)
 
 getDisplayAttributeKeyByAttribute ($attribute)
 
 makeSelectQueryAdapter ($isDistinct=false)
 
 resolveSqlQueryAdapterForCount (RedBeanModelSelectQueryAdapter $selectQueryAdapter)
 

Protected Attributes

 $haveGrandTotals = true
 
- Protected Attributes inherited from ReportDataProvider
 $report
 
 $runReport = false
 
 $offset
 
 $haveGrandTotals = false
 

Additional Inherited Members

- Static Protected Member Functions inherited from ReportDataProvider
static resolveIdByOffset ($offset)
 

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

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

Definition at line 116 of file MatrixReportDataProvider.php.

calculateTotalGroupingsCount ( )
Returns
int

Definition at line 127 of file MatrixReportDataProvider.php.

resolveDisplayAttributes ( )
Returns
array|null

Definition at line 135 of file MatrixReportDataProvider.php.

resolveGroupBys ( )
Returns
array|null

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

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
NotSupportedExceptionif the report type is not matrix

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

Definition at line 667 of file MatrixReportDataProvider.php.


The documentation for this class was generated from the following file:
Generated on Sat Mar 28 2020 07:11:11