Class: I2CE CustomReport Display: Difference between revisions

From IHRIS Wiki
No edit summary
 
(21 intermediate revisions by one other user not shown)
Line 1: Line 1:
This article desrcibes the1 class ''I2CE_CustomReport_Display''.
#REDIRECT [[Class: I2CE_CustomReport_Display (4.1.12)]]
*Extends the class: [[Class: I2CE_Fuzzy | I2CE_Fuzzy]].
*Location: Part of the module [[iHRIS Module List#CustomReports|CustomReports]] in the package [https://launchpad.net/i2ce I2CE]
*Source: Defined in the file [http://bazaar.launchpad.net/~intrahealth+informatics/i2ce/4.0.0-release/annotate/head:/modules/CustomReports/lib/I2CE_CustomReport_Display.php modules/CustomReports/lib/I2CE_CustomReport_Display.php]
*Author: Carl Leitner <litlfred@ibiblio.org>
I2CE_CustomReport_Display
==Variables==
===$formObjs===
an array indexed by  forms
*Type: protected [http://www.php.net/manual/en/language.types.array.php array ] $formObjs
 
===$mappedFields===
*Type: protected $mappedFields
 
===$formMaps===
An array where keys are of the  "$reportform(+field(+$aggregate))" and the values are the corresponding "$form+$field" (that is the real form for the later) @var protected array $maps
*Type: protected $formMaps
 
===$fieldMaps===
An array where keys are of the  "$reportform(+field(+$aggregate))" and the values are the corresponding "$form+$field" (that is the real form for the later)
*Type: protected [http://www.php.net/manual/en/language.types.array.php array ] $fieldMaps
 
===$mappedValues===
*Type: protected $mappedValues
 
===$display===
The shortname for the display.  E.g. 'Default'
*Type: protected [http://www.php.net/manual/en/language.types.string.php string ] $display
 
===$reportObj===
*Type: protected [[Class: I2CE_CustomReport | I2CE_CustomReport]] $reportObj
 
===$defaultOptions===
The options for this display
*Type: protected $defaultOptions
 
===$view===
the view we are displaying
*Type: protected [http://www.php.net/manual/en/language.types.string.php string ] $view
 
===$page===
The page we are displaying on
*Type: protected [[Class: I2CE_Page | I2CE_Page]] $page
 
===$template===
*Type: protected [[Class: I2CE_TemplateMeister | I2CE_TemplateMeister]] $template
 
===$displayConfig===
The magic data node which holds the information about the display that is being used
*Type: protected [[Class: I2CE_MagicDataNode | I2CE_MagicDataNode]] $displayConfig
 
===$config===
The magic data node which holds the information about this view
*Type: protected [[Class: I2CE_MagicDataNode | I2CE_MagicDataNode]] $config
 
===$reportConfig===
The magic data node which holds the information about the report this view referes to
*Type: protected [[Class: I2CE_MagicDataNode | I2CE_MagicDataNode]] $reportConfig
 
===$relationshipConfig===
The magic data node which holds the information about the relationship this view refers to
*Type: protected [[Class: I2CE_MagicDataNode | I2CE_MagicDataNode]] $relationshipConfig
 
===$numeric===
array  with keys the 'reportformfields' and values the data associated to it. these fields are those we assume have a numeric representation
*Type: protected [http://www.php.net/manual/en/language.types.array.php array ] $numeric
 
===$row_start===
The starting row (if any) for limiting the results. If not used, it is false mixed $row_start
*Type: protected procted $row_start
 
===$row_amount===
The number of rows (if any) for limiting the results. If not used, it is false mixed $row_amount
*Type: protected procted $row_amount
 
===$reportViewsFactory===
*Type: protected $reportViewsFactory
 
===$displayedFields===
*Type: private $displayedFields
 
==Methods==
===__construct()===
The constuctor
*Signature: public function __construct($page,$view)
*Parameters:
** [[Class: I2CE_Page | I2CE_Page]] $page
** [http://www.php.net/manual/en/language.types.string.php string ] $view @throws Excecption on error
===canView()===
Abstract method that each display is resposbile for implementing.  Checks to see if it can display the given view.
*Signature: abstract protected function canView()
*Returns: [http://www.php.net/manual/en/language.types.boolean.php boolean ]
===display()===
Display the report
*Signature: public function display($contentNode,$processResults,$controls)
*Parameters:
** [http://www.php.net/manual/en/class.domnode.php DOMNode ] $contentNode <br/>The DOM node we wish to display into. If null, we do not do any of the DOM processing stuff, do not call the report display controls, limits etc. It will however still call processResults with a DOMNode of null
** [http://www.php.net/manual/en/language.types.boolean.php boolean ] $processResults <br/>Defaults to true meaning we run through the results.  If false, we do not process results.
***Default Value: true
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $controls <br/>If null (default), we display all the report controsl.  If string or an array of string, we only display the indicated controls
***Default Value: null
*Returns: boolean.<br/>true on sucess
===displayMetaInfo()===
*Signature: protected function displayMetaInfo($contentNode)
*Parameters:
*$contentNode
===displayReportControl()===
Adds any controls for this display to the content node
*Signature: protected function displayReportControl($contentNode)
*Parameters:
** [http://www.php.net/manual/en/class.domnode.php DOMNode ] $contentNode
===displayReportControls()===
Adds any report display controls that can be added for this view. @param DOMNode $conentNode
*Signature: protected function displayReportControls($contentNode,$controls)
*Parameters:
*$contentNode
** [http://www.php.net/manual/en/language.pseudo-types.php mixed ] $controls <br/>If null (default), we display all the report controsl.  If string or an array of string, we only display the indicated controls
***Default Value: null
*Returns: [http://www.php.net/manual/en/language.types.boolean.php boolean ]<br/>$true on success
===displayReportLimit()===
Adds the report limit node to its content node @param DOMNode $limitnode
*Signature: protected function displayReportLimit($contentNode,$limitNode,$limitConfig)
*Parameters:
** [http://www.php.net/manual/en/class.domnode.php DOMNode ] $contentNode
*$limitNode
** [[Class: I2CE_MagicDataNode | I2CE_MagicDataNode]] $limitConfig
===displayReportLimits()===
Displays any report limits in the content node
*Signature: protected function displayReportLimits($contentNode)
*Parameters:
** [http://www.php.net/manual/en/class.domnode.php DOMNode ] $contentNode
===findNumericFields()===
Find the numeric fields.  Returns it (and stores in in the variable $this->numeric)
*Signature: protected function findNumericFields($disabled)
*Parameters:
*$disabled
***Default Value: false
*Returns: @array.<br/>Keys are report for fields and values are the data associate defined in getDisplayedFields()
===getBasePage()===
*Signature: protected function getBasePage()
===getDefaultOptions()===
returns an array of the default display options.  Default options are read and overriddenb in the following order: /modules/CustomReports/displays/$display/display_options /modules/CustomReports/relationships/display_options/$display /modules/CustomReports/reports/display_options/$display /modules/CustomReports/reportViews/$view/display_options/$display Finally any options that have a key in $get are replaced by that value
*Signature: protected function getDefaultOptions($get,$options)
*Parameters:
** [http://www.php.net/manual/en/language.types.array.php array ] $get
** [http://www.php.net/manual/en/language.types.array.php array ] $options <br/>Default to the empty array.  The options that we want to be already set before we start goinng through
***Default Value: array()
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php mixed ]<br/>array or false on failure
===getDisplayFieldsData()===
Gets the data about the fields we are going to display.
*Signature: protected function getDisplayFieldsData()
===getFormFieldObjects()===
Get the form and field objects associated to a formfield string.
*Signature: protected function getFormFieldObjects($reportformfield,$isReportForm)
*Parameters:
** [http://www.php.net/manual/en/language.types.string.php string ] $reportformfield <br/>of the re[prt form "$form" "$form+$field"  or "$form+$field+$aggregate" @parmam boolean $isReportForm Defaults to true.  If true we a sending a report form field If false, we are working with a form field.
*$isReportForm
***Default Value: true
*Returns: array.<br/>Index 0 is an I2CE_Form (on success, false on failure), Index 1 is an I2CE_FormField on succces, false on failure
===getMappedValue()===
Gets the mapped value for a report form field.
*Signature: protected function getMappedValue($reportformfield,$value,$isReportForm)
*Parameters:
** [http://www.php.net/manual/en/language.types.string.php string ] $reportformfield <br/>or a report form field or a form field of the form "$reportform+$field" or "$reportform+$field+$aggreate" or "$form+field" @param value @parmam boolean $isReportForm Defaults to true.  If true we a sending a report form field If false, we are working with a form field.
*$value
*$isReportForm
***Default Value: true
*Returns: [http://www.php.net/manual/en/language.types.string.php string ]<br/>the origina value of  on failure, the mapped value on success
===getReportViewDisplayedFields()===
Returns an array in (default display order) with keys reportformfields and values an array with indices 'header', 'link' The value of 'header' is the display header for this field The value of 'link' is false if there is no linked page associtated to this field or a string if there is. @param Mixed $all_aggerates Defaults to false.  If true we include all information about aggregate and non-agregate versions of the fields. otherwise it can be an array of aggregate information that we want
*Signature: protected function getReportViewDisplayedFields($getDisabled,$all_aggregates)
*Parameters:
** [http://www.php.net/manual/en/language.types.boolean.php boolean ] $getDisabled <br/>Defaults to false;
***Default Value: false
*$all_aggregates
***Default Value: false
*Returns: array;
===getReportViewsFactory()===
*Signature: protected function getReportViewsFactory()
===getResults()===
@param array $limits an nested array defining limiting values for particular fields. Defaults to the empty array.
*Signature: protected function getResults()
*Returns: [http://www.php.net/manual/en/language.pseudo-types.php mixed ]<br/>false on failure on succes an array. at index 'results' and  MDB2 buffered result object  at index 'num_results' the number of results that would be found without the limit
===getSwissReport()===
*Signature: protected function getSwissReport()
===getSwissReportFunction()===
*Signature: protected function getSwissReportFunction($func)
*Parameters:
*$func
===getSwissReportView()===
*Signature: protected function getSwissReportView()
===isMapped()===
Checks to see if a form field is mapped
*Signature: protected function isMapped($reportformfield)
*Parameters:
** [http://www.php.net/manual/en/language.types.string.php string ] $reportformfield <br/>of the form "$reportform+$fiedld(+$aggregate)"
===mapReportFormField()===
Sets the maps
*Signature: protected function mapReportFormField($reportformfield)
*Parameters:
** [http://www.php.net/manual/en/language.types.string.php string ] $reportformfield
===mapResults()===
Maps any mapped  fields in a results.
*Signature: protected function mapResults($result)
*Parameters:
** [http://www.php.net/manual/en/language.types.array.php array ] $result <br/>A an array with inicies of the form "$reportform+$field(+$aggregate)"  with unmapped value
*Returns: [http://www.php.net/manual/en/language.types.array.php array ]<br/>the mapped results
===processResultRow()===
Process a result row.
*Signature: protected function processResultRow($row,$row_num,$contentNode)
*Parameters:
** [http://www.php.net/manual/en/language.types.array.php array ] $row
** [http://www.php.net/manual/en/language.types.integer.php int ] $row_num <br/>The current row number when processing results.  If there was a result limit, it starts the count from the beginning of the result offset.  Othwerwise, it starts counting form zero.
** [http://www.php.net/manual/en/class.domnode.php DOMNode ] $contentNode <br/>Default to null. A node to append the result onto
***Default Value: null
*Returns: boolean.<br/>True on success
===processResults()===
Process results
*Signature: protected function processResults($results_data,$contentNode)
*Parameters:
** [http://www.php.net/manual/en/language.types.array.php array ] $results_data <br/>an array of results.  indices are 'restults' and MDB2 Buffered result and 'num_results' the number of results.  (these values may be false on failure)
** [http://www.php.net/manual/en/class.domnode.php DOMNode ] $contentNode <br/>Default to null a node to append the results onto
***Default Value: null
===processWhere()===
Process the fields  to make limits based on their limiting values @param array $limits an array defining limiting values for particular fields
*Signature: protected function processWhere($limitValues)
*Parameters:
*$limitValues
*Returns: [http://www.php.net/manual/en/language.types.string.php string ]
===processWhereByField()===
*Signature: protected function processWhereByField($form,$field,$formObj,$limitStyles)
*Parameters:
** [http://www.php.net/manual/en/language.types.string.php string ] $form <br/>the (report) form
** [http://www.php.net/manual/en/language.types.string.php string ] $field <br/>the field param I2CE_Form $formObj the instantiation of the form that the report form references
*$formObj
** [http://www.php.net/manual/en/language.types.array.php array ] $limitStyles <br/>the limit values for this formfield indexed by limit type
===processWhereByFunction()===
*Signature: protected function processWhereByFunction($function,$limitStyles)
*Parameters:
** [http://www.php.net/manual/en/language.types.string.php string ] $function
** [http://www.php.net/manual/en/language.types.array.php array ] $limitStyles <br/>the limit values for this formfield indexed by limit type
===saveDefaultView()===
*Signature: public function saveDefaultView()
===saveDisplayOptions()===
*Signature: public function saveDisplayOptions()
===setupMappedValues()===
Stores the array of mapped value for a formfield in  {@var $formfield} @parmam boolean $isReportForm Defaults to true.  If true we a sending a report form field If false, we are working with a form field.
*Signature: protected function setupMappedValues($reportformfield,$isReportForm)
*Parameters:
** [http://www.php.net/manual/en/language.types.string.php string ] $reportformfield
*$isReportForm
***Default Value: true
==Inherited Fuzzy Methods==
===userMessage()===
This method is inherited from [[Class: I2CE_Fuzzy#userMessage() | I2CE_Fuzzy->userMessage()]]
 
 
[[Category:Class Documentation]]

Latest revision as of 10:41, 18 August 2015