1. API reference
    1. Introduction
    2. Flexmonster()
  2. Objects
    1. All objects
    2. Report Object
    3. Data Source Object
    4. Slice Object
    5. Options Object
    6. Filtering
      1. Filter Object
      2. Number Query Object
      3. String Query Object
      4. Date Query Object
      5. Time Query Object
      6. Value Query Object
    7. Format Object
    8. Conditional Format Object
    9. Cell Data Object
    10. Toolbar 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. customizeCell
    13. customizeContextMenu
    14. dispose
    15. expandAllData
    16. expandData
    17. exportTo
    18. getAllConditions
    19. getAllHierarchies
    20. getAllMeasures
    21. getCell
    22. getColumns
    23. getCondition
    24. getData
    25. getFilter
    26. getFormat
    27. getMeasures
    28. getMembers
    29. getOptions
    30. getReport
    31. getReportFilters
    32. getRows
    33. getSelectedCell
    34. getSort
    35. getXMLACatalogs
    36. getXMLACubes
    37. getXMLADataSources
    38. getXMLAProviderName
    39. load
    40. off
    41. on
    42. open
    43. openFieldsList
    44. openFilter
    45. print
    46. refresh
    47. removeAllCalculatedMeasures
    48. removeAllConditions
    49. removeCalculatedMeasure
    50. removeCondition
    51. removeSelection
    52. runQuery
    53. save
    54. setFilter
    55. setFormat
    56. setOptions
    57. setReport
    58. setSort
    59. showCharts
    60. showGrid
    61. showGridAndCharts
    62. sortingMethod
    63. sortValues
    64. updateData
  4. Events
    1. All events
    2. afterchartdraw
    3. aftergriddraw
    4. beforegriddraw
    5. beforetoolbarcreated
    6. cellclick
    7. celldoubleclick
    8. datachanged
    9. dataerror
    10. datafilecancelled
    11. dataloaded
    12. exportcomplete
    13. exportstart
    14. fieldslistclose
    15. fieldslistopen
    16. filterclose
    17. filteropen
    18. loadingdata
    19. loadinglocalization
    20. loadingolapstructure
    21. loadingreportfile
    22. localizationerror
    23. localizationloaded
    24. olapstructureerror
    25. olapstructureloaded
    26. openingreportfile
    27. printcomplete
    28. printstart
    29. querycomplete
    30. queryerror
    31. ready
    32. reportchange
    33. reportcomplete
    34. reportfilecancelled
    35. reportfileerror
    36. runningquery
    37. update
Table of contents

addCalculatedMeasure

addCalculatedMeasure(measure:Object)

[starting from version: 2.3]

This API call adds calculated measure. Calculated measure has formula property. If it is defined, the measure is calculated. You can create as many calculated measures for one report as you need, there is no limit towards the number of calculated measures. When you save the report all the calculated measures will be saved as well and loaded when report is retrieved. Please note that you can add calculated measures only for reports based on JSON, CSV and OCSV data sources.

Parameters

measure – the object that describes measure. This object can have the following parameters:

  • uniqueName – String. The measure’s unique name. This property will be used as an identifier for the measure inside Flexmonster and as an identifier to remove the measure via API.
  • formula – String. Represents the formula. It can contain the following operators:+, -, *, / and the following functions:isNaN(), !isNaN() (check a full list). Other measures can be addressed using the measure’s unique name and aggregation function, for example sum("Price") or max("Order"). Flexmonster supports the following aggregation functions for CSV, OCSV, and JSON data sources: "sum", "count", "distinctcount", "average", "median", "product", "min", "max", "percent", "percentofcolumn", "percentofrow", "index", "difference", "%difference", "runningtotals", "stdevp", and "stdevs".
  • caption (optional) – String. The measure’s caption.
  • grandTotalCaption (optional) – String. The measure’s grand total caption.
  • active (optional) – Boolean. Indicates whether the measure will be selected for the report (true) or not (false). active: false can be useful if the measure has non-default properties, but should not be selected for the grid or the chart.
  • individual (optional) – Boolean. Defines whether the formula is calculated using raw values (true) or using aggregated values (false). Default value: false.
  • calculateNaN (optional) – Boolean. Defines whether the formula is calculated using NaN values (true) or using null values (false). Default value: true.
  • format (optional) – String. The name of the number formatting that will be applied to the measure. Measure values can be formatted according to the number formatting defined in the report. All available number formattings are stored in the formats array in the report. More information about the number formatting part of the report can be found in the number formatting article.

Example

The following example shows the calculated measure Average Quantity which is calculated as sum("Quantity")/count("Quantity") and will be added to the list of available measures but not selected for the report (active: false):

var measure = {
  formula: 'sum("Quantity")/count("Quantity")',
  uniqueName: "Average Quantity",
  caption: "Average Quantity",
  grandTotalCaption: "Total Quantity",
  active: false
};
flexmonster.addCalculatedMeasure(measure);

Open the example on JSFiddle.

See also

removeCalculatedMeasure
getAllMeasures
getMeasures
Calculated values tutorial