Skip to main content
Version: 8.1


This function is used in Python Scripting.


Formats the contents of one or more datasets as an Excel spreadsheet, returning the results as a byte array. Each dataset specified will be added as a worksheet in the Excel workbook.

This function replaces the deprecated system.dataset.dataSetToExcel function.

Client Permission Restrictions

This scripting function has no Client Permission restrictions.


system.dataset.toExcel(showHeaders, dataset, [nullsEmpty], [sheetNames])


BooleanshowHeadersIf True, the spreadsheet will include a header row. If False, the header row will be omitted.
st[Dataset]datasetA sequence of one or more datasets, one for each sheet in the resulting workbook.
BooleannullsEmptyIf True, the spreadsheet will leave cells with NULL values empty, instead of allowing Excel to provide a default value like 0. Defaults to False. [optional]
ListsheetNamesExpects a list of strings, where each string is a name for one of the datasets. When used, there must be an equal number of string names in sheetName as there are datasets in the dataset parameter. Names provided in this parameter may be sanitized into acceptable Excel sheet names. [optional]


Array - A byte array representing an Excel workbook.


Gateway, Vision Client, Perspective Session

Code Examples

Code Snippet
# This snippet would run a SQL query against a database, and turn the results into a string that is XML that Excel can open.
# It then writes the string to a file on the local hard drive.

results = system.db.runNamedQuery("Fetch Records",{})
spreadsheet = system.dataset.toExcel(True, [results])
filePath = "C:\\output\\results.xlsx"
system.file.writeFile(filePath, spreadsheet)


system dataset toExcel, dataset.toExcel