\FreeformReport
- Author: <marcus@silverstripe.com.au>
- License: BSD License http://www.silverstripe.org/bsd-license
Synopsis
class FreeformReport
extends AdvancedReport
{
- // members
- private static boolean $allow_grouping = true;
- private static array $db = ;
- private static array $allowed_types = ;
- protected type $selectedTypes = ;
- protected type $componentTypeMap = ;
- // methods
- public void getSettingsFields()
- protected void allowedTypes()
- protected void getAvailableTypes()
- protected void getReportableFields()
- protected void getQueryTables()
- protected void getTypeRelationshipClass()
- public void getDataObjects()
- protected The applyRelation()
- protected void fieldAliasToDataType()
- // Inherited methods from AdvancedReport
- public FieldList getCMSFields()
- public FieldList getSettingsFields()
- public AdvancedReport prepareAndGenerate()
- public string getFileLink()
- public void getReportName()
- protected void getReportableFields()
- public string dottedFieldToUnique()
- protected string tableSpacedField()
- public getHeaders()
- public void getDataObjects()
- protected array getReportFieldsForQuery()
- protected array getConditionFilters()
- public array getConditions()
- public string applyFiltersToValue()
- protected void getWhereClause()
- protected string getSort()
- protected void getNumericSortFields()
- public void getDuplicatedBlankingFields()
- public array getFieldFormatting()
- public void createReport()
- protected array additionalReportData()
- public void generateReport()
- public ReportFormatter getReportFormatter()
- protected string getReportFolder()
- public void canView()
- public void canEdit()
- public void canDelete()
- public void canCreate()
- public void canGenerate()
- public array providePermissions()
- public void dbQuote()
- protected void recursiveQuote()
Hierarchy
Extends
Members
private
- $allow_grouping
- $allowed_types
- $db
protected
Methods
protected
- allowedTypes()
- applyRelation() — Traverse the relationship fields, and add the table mappings to the query object state. This has to be called in any overloaded {@link SearchFilter->apply()} methods manually.
- fieldAliasToDataType()
- getAvailableTypes()
- getQueryTables() — Based on the user's selection, get all the query tables that will be included
- getReportableFields() — Gets an array of field names that can be used in this report
- getTypeRelationshipClass() — Get the type of a relationship for a given type and relationship name
public
Inherited from AdvancedReport
protected
- additionalReportData() — Get an array of additional data to add to a report.
- getConditionFilters() — Return an array of FieldValuePrefix => Callable filters for changing the values of the condition value
- getNumericSortFields() — Return any fields that need special 'numeric' sorting. This allows sorting of numbers in strings, so that
- getReportFieldsForQuery() — Get the selected report fields in a format suitable to be put in an SQL select (an array format)
- getReportFolder() — Gets the report folder used for storing generated reports.
- getReportableFields() — Gets an array of field names that can be used in this report
- getSort() — Gets a string that represents the possible 'sort' options.
- getWhereClause() — Helper method that applies the given filters to a specific DataQuery object
- recursiveQuote()
- tableSpacedField() — Determine the class that defines the given field.
public
- applyFiltersToValue() — Apply some filters to a condition value for use in a query
- canCreate()
- canDelete()
- canEdit()
- canGenerate()
- canView()
- createReport() — Creates a report in a specified format, returning a string which contains either the raw content of the report, or an object that encapsulates the report (eg a PDF).
- dbQuote()
- dottedFieldToUnique() — Converts a field in dotted notation (as used in some report selects) to a unique name that can be used for, eg "Table.Field AS Table_Field" so that we don't have problems with duplicity in queries, and mapping them back and forth
- generateReport() — Generates an actual report file.
- getCMSFields() — Gets the form fields for display in the CMS.
- getConditions() — Generate a WHERE clause based on the input the user provided.
- getDataObjects() — Retrieve the raw data objects set for this report
- getDuplicatedBlankingFields() — Get a list of columns that should have subsequent duplicated entries 'blanked' out
- getFieldFormatting() — Gets field formatting functions used for applying transformations to values.
- getFileLink() — Get a link to a specific instance of this report.
- getHeaders() — Return the 'included fields' list.
- getReportFormatter() — Returns a report formatter instance for an output format.
- getReportName() — Abstract method; actual reports should define this.
- getSettingsFields() — Gets the form fields for configuring the report settings.
- prepareAndGenerate() — Prepare and generate this report into report instances
- providePermissions()