Get Free Trial
  1. API reference
    1. Introduction
    2. Flexmonster()
  2. Objects
    1. All objects
    2. ReportObject
    3. DataSourceObject
    4. MappingObject
    5. SliceObject
    6. OptionsObject
    7. GlobalObject
    8. Filtering
      1. FilterObject
      2. NumberQueryObject
      3. StringQueryObject
      4. DateQueryObject
      5. TimeQueryObject
      6. ValueQueryObject
    9. FormatObject
    10. ConditionalFormatObject
    11. TableSizesObject
    12. CellDataObject
    13. ChartDataObject
    14. ToolbarObject
    15. ChartLegendDataObject
    16. ShareReportConnectionObject
  3. Methods
    1. All methods
    2. addCalculatedMeasure
    3. addCondition
    4. alert
    5. clear
    6. clearFilter
    7. clearXMLACache
    8. closeFieldsList
    9. collapseAllData
    10. collapseCell
    11. collapseData
    12. connectTo
    13. customizeAPIRequest
    14. customizeCell
    15. customizeChartElement
    16. customizeContextMenu
    17. dispose
    18. drillDownCell
    19. drillUpCell
    20. expandAllData
    21. expandCell
    22. expandData
    23. exportTo
    24. getAllConditions
    25. getAllHierarchies
    26. getAllHierarchiesAsync
    27. getAllMeasures
    28. getAllMeasuresAsync
    29. getCell
    30. getColumns
    31. getColumnsAsync
    32. getCondition
    33. getFilter
    34. getFlatSort
    35. getFormat
    36. getMeasures
    37. getMeasuresAsync
    38. getMembers
    39. getMembersAsync
    40. getOptions
    41. getReport
    42. getReportFilters
    43. getReportFiltersAsync
    44. getRows
    45. getRowsAsync
    46. getSelectedCell
    47. getSort
    48. getTableSizes
    49. getXMLACatalogs
    50. getXMLACatalogsAsync
    51. getXMLACubes
    52. getXMLACubesAsync
    53. getXMLADataSources
    54. getXMLADataSourcesAsync
    55. getXMLAProviderName
    56. getXMLAProviderNameAsync
    57. load
    58. off
    59. on
    60. open
    61. openCalculatedValueEditor
    62. openFieldsList
    63. openFilter
    64. print
    65. refresh
    66. removeAllCalculatedMeasures
    67. removeAllConditions
    68. removeCalculatedMeasure
    69. removeCondition
    70. removeSelection
    71. runQuery
    72. save
    73. scrollToColumn
    74. scrollToRow
    75. setFilter
    76. setFlatSort
    77. setFormat
    78. setOptions
    79. setReport
    80. setSort
    81. setTableSizes
    82. shareReport
    83. showCharts
    84. showGrid
    85. showGridAndCharts
    86. sortingMethod
    87. sortValues
    88. 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. FieldObject
    9. FilterObject
    10. FilterGroupObject
  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

exportTo

exportTo(type: String, params: Object, callbackHandler: Function)

[starting from version: 1.4]

Exports grid or chart to CSV, HTML, PDF, Image or Excel format. The file can be saved to the local file system or to your server (you need to have a script on the server side).

Parameters

  • type – String. A type of export. There are such types available: "csv", "html", "pdf", "image" and "excel".
  • params (optional) – Object. It contains export parameters. The object can have the following properties:
    • alwaysEnclose (optional) – Boolean. Indicates whether to enclose all CSV fields in quotes. When set to true, the fields are always enclosed in quotes. Otherwise, they will be enclosed only when necessary (e.g., if a field contains a comma: Bike, "$15,000", blue). Only for CSV export. Default value: false.
    • filename (optional) – String. A default name of the resulting file.
    • destinationType (optional) – String. It defines where the component’s content will be exported. Destination type can be the following:
      • "file" (by default) – the component’s content will be exported to the file to the local computer.
      • "server" – the component’s content will be exported to the server (a server-side script is required).
      • "plain" – the component’s content will be returned with callbackHandler. Below are the types of the component’s content for each type of export:
        • for HTML export: String
        • for CSV export: String
        • for Excel export: Uint8Array
        • for image export: HTMLCanvasElement
        • for PDF export: jsPDF object. This destination type allows modification of the generated PDF file. jsPDF is a library which generates PDFs in client-side JavaScript. After export from Flexmonster, jsPDF object can be modified using jsPDF API and then saved. See the example.
    • excelSheetName (starting from v2.2) (optional) – String. To configure the sheet name when exporting to Excel file.
    • fieldSeparator (optional) – String. Defines specific fields separator to split CSV row in the export file (only for CSV export). Default value: ,.
    • fontUrl (from v2.7.7) (optional) – String. The URL to the TTF font file for saving PDF reports in Chinese, Arabic or any other language. Check out the list of ready-to-use Google Noto Fonts that you can use to support almost any language in the world. Only fonts in standard TTF format are supported.
    • pageFormat (optional) – String. It defines the page format for a PDF file. There are such types available: "A0", "A1", "A2", "A3", "A4", "A5". Default value: "A4".
    • pageOrientation (optional) – String. It defines the page orientation for a PDF file. Page orientation can be the following:
      • "portrait" (by default) – defines portrait page orientation for a PDF file.
      • "landscape" – defines landscape page orientation for a PDF file.
    • requestHeaders (starting from v2.6.13) (optional) – Object. It allows adding custom request headers when exporting the file to a server. The object consists of "key": "value" pairs, where "key" is a header name and "value" is its value.
    • showFilters (starting from v2.1) (optional) – Boolean. Excel only. Indicates whether the filters info will be shown (true) in exported Excel file or not (false). Default value: false.
    • url (optional) – String. A path to a server-side script that can save the file to the server. The url property is required when the destinationType property is "server".
    • useOlapFormattingInExcel (starting from v2.2) (optional) – Boolean. To configure how to export grid cells in Excel file if formatting is taken from OLAP cube – as a formatted string (true) or as numbers without formatting (false).
    • useCustomizeCellForData (optional) – Boolean. Excel only. Specifies how cells modified by customizeCell are exported: as formatted strings (true) or as numbers without formatting (false). Default value: true.
  • callbackHandler (optional) – Function. A JS function that is called when the data is ready to be exported. It has the following parameters:
    • result – Object. Describes the result of the export. If the export fails, the result will be null. The result object can have the following properties:
      • data – String | Uint8Array. The data to be exported. The data’s type depends on the type of the export: String for "csv" and "html", Uint8Array for "excel", "image", and "pdf".
        Note that the types are different for the "plain" destination type – learn more here.
      • filename – String. The name of the resulting file.
      • response (optional) – String. The server’s response. This property is defined in the result only when the destinationType is set to "server".
      • type – String. The export type.
    • error – Object. Describes the error with export. If the export is successful, the error will be null. Check out how to handle errors when exporting to a server.
      The error object can have the following properties:
      • message – String. The error message.
      • response (optional) – String. The server’s response. This property is defined in the error only when the destinationType is set to "server".
      • status (optional) – Number. The response status code. This property is defined in the error only when the destinationType is set to "server".

Examples

1) This example on JSFiddle demonstrates all types of export: CSV, HTML, PDF, Image and Excel.

2) Export to PDF, modify generated file and save locally:

flexmonster.exportTo("pdf", { destinationType: "plain" }, function(res) {
var pdf = res.data;
pdf.addPage();
pdf.text('Hello world!', 10, 10);
pdf.save(res.filename);
});

3) Export to CSV, save as a local file and add a callback handler:

flexmonster.exportTo('csv', {filename : 'flexmonster.csv'}, 
function(result) { console.log(result.data); }
);

4) Export to HTML and save as local file:

var params = { 
  filename : 'flexmonster.html'
};
flexmonster.exportTo('html', params);

5) Export to PDF file, change page orientation to landscape and save file to the server:

var params = { 
  filename : 'flexmonster.pdf',
 pageOrientation : 'landscape',
  destinationType : 'server',
  url : 'your server'
};
flexmonster.exportTo('pdf', params);

6) Export to Excel and save as local file:

flexmonster.exportTo('excel');

7) Export to PDF and set TTF font file:

flexmonster.exportTo('pdf', { 
fontUrl: 'https://cdn.flexmonster.com/fonts/NotoSansCJKtc-Regular.ttf'
});

See also

print
Export and print tutorial