Despite the COVID-19 outbreak, our team continues operating at full speed. We are always here to support and answer all your questions.

Feel free to reach out by filling this quick form.

Fill the form
Get Free Trial
  1. API reference
    1. Introduction
    2. Flexmonster()
  2. Objects
    1. All objects
    2. Report Object
    3. Data Source Object
    4. Mapping Object
    5. Slice Object
    6. Options Object
    7. Filtering
      1. Filter Object
      2. Number Query Object
      3. String Query Object
      4. Date Query Object
      5. Time Query Object
      6. Value Query Object
    8. Format Object
    9. Conditional Format Object
    10. Table Sizes Object
    11. Cell Data Object
    12. Chart Data Object
    13. Toolbar Object
    14. Chart Legend Data Object
  3. Methods
    1. All methods
    2. addCalculatedMeasure
    3. addCondition
    4. alert
    5. clear
    6. clearFilter
    7. clearXMLACache
    8. closeFieldsList
    9. collapseAllData
    10. collapseData
    11. connectTo
    12. customizeAPIRequest
    13. customizeCell
    14. customizeChartElement
    15. customizeContextMenu
    16. dispose
    17. expandAllData
    18. expandData
    19. exportTo
    20. getAllConditions
    21. getAllHierarchies
    22. getAllMeasures
    23. getCell
    24. getColumns
    25. getCondition
    26. getFilter
    27. getFlatSort
    28. getFormat
    29. getMeasures
    30. getMembers
    31. getOptions
    32. getReport
    33. getReportFilters
    34. getRows
    35. getSelectedCell
    36. getSort
    37. getTableSizes
    38. getXMLACatalogs
    39. getXMLACubes
    40. getXMLADataSources
    41. getXMLAProviderName
    42. load
    43. off
    44. on
    45. open
    46. openCalculatedValueEditor
    47. openFieldsList
    48. openFilter
    49. print
    50. refresh
    51. removeAllCalculatedMeasures
    52. removeAllConditions
    53. removeCalculatedMeasure
    54. removeCondition
    55. removeSelection
    56. runQuery
    57. save
    58. scrollToColumn
    59. scrollToRow
    60. setFilter
    61. setFlatSort
    62. setFormat
    63. setOptions
    64. setReport
    65. setSort
    66. setTableSizes
    67. showCharts
    68. showGrid
    69. showGridAndCharts
    70. sortingMethod
    71. sortValues
    72. updateData
  4. Events
    1. All events
    2. afterchartdraw
    3. aftergriddraw
    4. beforegriddraw
    5. beforetoolbarcreated
    6. cellclick
    7. celldoubleclick
    8. chartclick
    9. datachanged
    10. dataerror
    11. datafilecancelled
    12. dataloaded
    13. drillthroughclose
    14. drillthroughopen
    15. exportcomplete
    16. exportstart
    17. fieldslistclose
    18. fieldslistopen
    19. filterclose
    20. filteropen
    21. loadingdata
    22. loadinglocalization
    23. loadingolapstructure
    24. loadingreportfile
    25. localizationerror
    26. localizationloaded
    27. olapstructureerror
    28. olapstructureloaded
    29. openingreportfile
    30. printcomplete
    31. printstart
    32. querycomplete
    33. queryerror
    34. ready
    35. reportchange
    36. reportcomplete
    37. reportfilecancelled
    38. reportfileerror
    39. runningquery
    40. unauthorizederror
    41. update
  5. Custom data source API
    1. All requests
    2. /handshake request
    3. /fields request
    4. /members request
    5. /select request for the pivot table
    6. /select request for the flat table
    7. /select request for the drill-through view
    8. Field Object
    9. Filter Object
    10. Filter Group Object
  6. MongoDB Connector API
    1. All methods
    2. getSchema
    3. getMembers
    4. getSelectResult
  7. Flexmonster Connector for amCharts
    1. All methods
    2. amcharts.getData
    3. amcharts.getCategoryName
    4. amcharts.getMeasureNameByIndex
    5. amcharts.getNumberOfMeasures
    6. amcharts.getNumberFormatPattern
Table of contents

Mapping Object

The Mapping Object allows defining field data types, captions, and multilevel hierarchies; grouping fields under separate dimensions, and setting other view configurations of hierarchies.

The Mapping Object is available for all data sources. It presents a powerful way to neatly separate a data source from its presentation. Find more details about the Mapping Object in this tutorial with examples.

For each field in the data source, you can set the following properties:

  • caption (optional) – String. The hierarchy’s caption.
  • type (optional) – String. The field’s data type. Only for "json", "csv", and "api" data source types. type can be:
    • "string" – The field stores string data. It can be aggregated only with count and distinctcount aggregations.
    • "number" – The field stores numerical data. It can be aggregated with all available aggregations.
    • "month" – The field stores months. Note that if the field stores month names only (in either short or full form), the field will be recognized by Flexmonster as a field of the "month" type automatically. If the field contains custom month names, specify its type as "month" explicitly.
    • "weekday" – The field stores days of the week.
    • "date" – The field stores a date. Fields of this type are split into 3 different fields: Year, Month, Day.
    • "date string" – The field stores a date. It can be formatted using the datePattern option (default is "dd/MM/yyyy").
    • "year/month/day" – The field stores a date. It’s displayed as a multilevel hierarchy with the following levels: Year > Month > Day.
    • "year/quarter/month/day" – The field is a date. It’s displayed as a multilevel hierarchy with the following levels: Year > Quarter > Month > Day.
    • "time" – The field stores time. It can be formatted using the timePattern option (default is "HH:mm:ss").
    • "datetime" – The field is a date. It can be formatted using the dateTimePattern option (default is "dd/MM/yyyy HH:mm:ss"). minmaxcount, and distinctcount aggregations can be applied to it.
    • "id" – The field is an id. This field is not shown in the Field List. Fields of this type can be used for editing data.
    • "property" – The field for setting member properties. This field is not shown in the Field List. For example, it can be used to associate a productID with a product. See an example here.
  • hierarchy (optional) – String. The hierarchy’s name. When configuring hierarchies, specify this property to mark the field as a level of a hierarchy or as a member property of a hierarchy (in this case, the type parameter should be set to "property"). Only for "json", "csv", and "api" data source types.
  • parent (optional) – String. The unique name of the parent level. This property is necessary if the field is a level of a hierarchy and has a parent level. Only for "json", "csv", and "api" data source types.
  • folder (optional) – String. The field’s folder. Folders are used to group several fields in the Field List. folder supports nesting via / (e.g., "Folder/Subfolder/"). Only for "json", "csv", and "api" data source types.
  • aggregations (optional) — Array of strings. This property represents the list of aggregation functions that can be applied to the current measure.
  • filters (optional) – Boolean. This property allows enabling and disabling the UI filters for a specific hierarchy. When set to false, the UI filters are disabled. Default value: true.
  • visible (optional) – Boolean. When set to false, hides the field from the Field List. Only for "elasticsearch", "csv", and "api" data source types.
  • interval (optional) – String. Allows aggregating dates by the given interval. The interval property can be used in the following ways:
    • For the date histogram in Elasticsearch. Check out supported time units. Only for the "elasticsearch" data source type.
    • For the "date string" and "datetime" field types. Supported date intervals are the following: "d" for days, "h" for hours, "m" for minutes, and "s" for seconds (e.g., "1d", "7h", "20m", "30s"). Note that grouping by days starts from 1 January 1970. Only for "csv" and "json" data source types.
  • isMeasure (optional) – Boolean. When set to true, the field can be selected only as a measure. The isMeasure property should be used only with the strictDataTypes option (see an example on JSFiddle). Only for the "json" data source type. Default value: false.
  • time_zone (optional) – String. Used for the date histogram. You can specify time zones as either an ISO 8601 UTC offset (e.g., +01:00 or -08:00) or as a time zone ID as specified in the IANA time zone database, such as America/Los_Angeles. Only for the "elasticsearch" data source type. Check out an example here.
  • format (optional) – String. Used to format different types of date fields. format can be used in the following ways:
    • For the date histogram in Elasticsearch. Check out the date format/pattern. Only for the "elasticsearch" data source type.
    • For the "date string" field type ("date" in custom data source API), it allows overriding the datePattern set in the Options Object for a certain field. The pattern string is the same as in the datePattern option (i.e., "dd/MM/yyyy"). Only for "json", "csv", and "api" data source types.
    • For the "datetime" field type, it allows overriding the dateTimePattern set in the Options Object for a certain field. The pattern string is the same as in the dateTimePattern option (i.e., "dd/MM/yyyy HH:mm:ss"). Only for "json" and "csv" data source types.
    • For the "time" field type, it allows overriding the timePattern set in the Options Object for a certain field. The pattern string is the same as in the timePattern option (i.e., "HH:mm:ss"). Only for "json" and "csv" data source types.
  • min_doc_count (optional) – Number. Only for the "elasticsearch" data source type. Used for the date histogram. Can be used to show intervals with empty values (min_doc_count: 0). Default value: 1 (empty intervals are hidden).