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
    15. Share Report Connection 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. getAllHierarchiesAsync
    23. getAllMeasures
    24. getAllMeasuresAsync
    25. getCell
    26. getColumns
    27. getColumnsAsync
    28. getCondition
    29. getFilter
    30. getFlatSort
    31. getFormat
    32. getMeasures
    33. getMeasuresAsync
    34. getMembers
    35. getMembersAsync
    36. getOptions
    37. getReport
    38. getReportFilters
    39. getReportFiltersAsync
    40. getRows
    41. getRowsAsync
    42. getSelectedCell
    43. getSort
    44. getTableSizes
    45. getXMLACatalogs
    46. getXMLACatalogsAsync
    47. getXMLACubes
    48. getXMLACubesAsync
    49. getXMLADataSources
    50. getXMLADataSourcesAsync
    51. getXMLAProviderName
    52. getXMLAProviderNameAsync
    53. load
    54. off
    55. on
    56. open
    57. openCalculatedValueEditor
    58. openFieldsList
    59. openFilter
    60. print
    61. refresh
    62. removeAllCalculatedMeasures
    63. removeAllConditions
    64. removeCalculatedMeasure
    65. removeCondition
    66. removeSelection
    67. runQuery
    68. save
    69. scrollToColumn
    70. scrollToRow
    71. setFilter
    72. setFlatSort
    73. setFormat
    74. setOptions
    75. setReport
    76. setSort
    77. setTableSizes
    78. shareReport
    79. showCharts
    80. showGrid
    81. showGridAndCharts
    82. sortingMethod
    83. sortValues
    84. 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

updateData

updateData(connectionParameters: Object, options: Object)

[starting from version: 2.3]

Helps to update data for the report without cleaning the report. Only the dataSource is updated, whereas the slice, all defined options, number and conditional formatting, the scroll position stay the same. For all data sources, updateData allows connecting to a new data source. For JSON data source it is also possible to update only some part of the data.

Parameters

  • connectionParameters – Object. It contains connection parameters. The connectionParameters object has the same structure as the Data Source Object.
  • options (optional) – Object. Contains additional options:
    • partial (optional) – Boolean. For JSON data source only. Allows partial updating of the data. When partial is set to true, you can add, update, or remove certain records of JSON array. For more information, check example number 4. Default value: false.
    • ignoreSorting (optional) – Boolean. Set ignoreSorting: true and current sorting defined in the report will be ignored when you update the data. Default value: false.
    • ignoreScroll (optional) – Boolean. Set ignoreScroll: true and current scroll position in the pivot table will be ignored when you update the data. Default value: false.

Examples

1) Update data from Microsoft Analysis Services:

flexmonster.updateData({
type: 'microsoft analysis services',
proxyUrl: 'https://olap.flexmonster.com/olap/msmdpump.dll',
catalog: 'Adventure Works DW Standard Edition',
cube: 'Adventure Works'
});

Open the example on JSFiddle.

2) Update data from CSV data source:

flexmonster.updateData({
type: 'csv',
filename: 'data/data.csv'
});

Try on JSFiddle.

3) Update data from JSON inline data:

var jsonData = [{
"Category": "Accessories",
"Size": "277 oz",
"Color": "red",
"Destination": "United Kingdom",
"Business Type": "Warehouse",
"Country": "United Kingdom",
"Price": 1222,
"Quantity": 730,
"Discount": 38
},
{
"Category": "Accessories",
"Size": "47 oz",
"Color": "white",
"Destination": "United States",
"Business Type": "Warehouse",
"Country": "United States",
"Price": 7941,
"Quantity": 73,
"Discount": 53
},
{
"Category": "Bikes",
"Size": "264 oz",
"Color": "white",
"Destination": "Australia",
"Business Type": "Specialty Bike Shop",
"Country": "Australia",
"Price": 6829,
"Quantity": 19,
"Discount": 56
}];
flexmonster.updateData({ data: jsonData });

Check out on JSFiddle.

4) How to use updateData for adding/updating/removing partial data:

First of all, we add id and delete types to the first object of JSON array:

{
      "Category": { "type": "string" },
      "Price": { "type": "number" },
      "RowId": { "type": "id" },
      "DeleteRow": { "type": "delete" }
}

Then, when defining the data, we specify an id field for every object the following way:

{
      "Category": "Accessories",
      "Price": 242,   
      "RowId": 1 
}

To add or update only some of the records use partial: true:

var dataForUpdate = [{
      "Category": "Cars",
      "Price": 51844,
      "RowId": 4   	
}]
flexmonster.updateData({data: dataForUpdate}, {partial: true});

To delete the records specify id and delete fields:

var dataForUpdate = [{
      "RowId": 3,
      "DeleteRow": true  	
}]
flexmonster.updateData({data: dataForUpdate}, {partial: true});

Live example on JSFiddle.

See also

connectTo