Posted 5 October 2026, 6:39 am EST
Question: ActiveReports Web Designer – How can we retrieve the serialized report definition of an unsaved report?
We are using ActiveReports 18.1 Web Designer in an ASP.NET application.
We are implementing a feature where support users can create a standard dataset using the Web Designer’s normal Dataset dialog and publish that dataset without having to manually create JSON.
Our current working approach is:
- User creates a dataset in the Web Designer.
- Report is saved/previewed.
- On the server, we load the report using
/IReportStore.LoadReport()
.PageReport - We read the
object and extract:DataSet- Data source
- Query / CommandType
- Query parameters
- Fields
- Calculated fields
- Filters
- Dataset options
- We convert this into our standard dataset definition.
We would like to avoid requiring the user to save or preview the report just to publish the dataset.
We found the Web Designer’s:
documents.handlers.onDocumentChanged
event, which provides the current
document object even when the report has not been saved.
The document contains the dataset information we need, for example:
{
"DataSets": [
{
"Name": "DataSet1",
"Fields": [
{
"Name": "DATASETNAME",
"DataField": "DATASETNAME"
}
],
"Query": {
"DataSourceName": "DataSource1",
"CommandType": "Text",
"CommandText": "SELECT ... WHERE PERIODSEQUENCE > @MinSeq",
"QueryParameters": [
{
"Name": "@MinSeq",
"Value": "0"
}
]
},
"Filters": [
...
],
"$calculatedFields": [
...
]
}
]
}
However, this appears to be the Web Designer’s internal document model, rather than the serialized report JSON format.
We tried passing the complete
document directly to:
ReportJsonSerializer.Deserialize(documentJson)
but it fails with a
JsonException.
Our question
Is there a supported ActiveReports 18.1 API that allows us to obtain the serialized/server-side report definition from the current unsaved Web Designer document?
Specifically, we are looking for something equivalent to the internal conversion the Web Designer performs before Save/Preview, but exposed through a public/supported API.
We would like to avoid:
- Reimplementing the Web Designer’s internal
logic ourselves.serializeDocument - Depending on undocumented properties of the
document.onDocumentChanged - Building a solution that could break with a future ActiveReports upgrade.
If there is no supported API for this in ActiveReports 18.1, could you please confirm that the recommended approach is to save the report first and then load it through the report store?
Any guidance on the supported API or recommended architecture would be greatly appreciated.
