We're using Appian 25.4.
We have a ReadOnly Grid that gets it data from a Record, which has a DataSource of a Process Model.
Recently, we added 3 new fields to a CDT used in this Process Model as a Process Variable (note this CDT does not get written to the database at any point), and updated the grid to include one of these new fields. Since then, when we export the grid to Excel, we get the error "Query has failed: null". Undoing the changes we made results in the same problem, which has lead me to believe it's a problem with the data in the process instances, especially as when we filter the data on the grid to exclude instances that have these changes, we don't get this error at all.
The really strange thing is this error isn't consistent, as we've been able to export data that includes the changes we've made to the process model, the CDT, and the grid.
Has anyone else encountered this particular error message?
Discussion posts and replies are publicly visible
Do you see any details in the tomcat stdout log file?
Why a CDT? Did you consider to just use a simple map or dictionary?
The only information from tomcat stdout relating to this issue is:
2026-04-07 09:48:11 WARNING [http-nio-8080-exec-199] com.sun.jersey.spi.container.servlet.WebComponent.filterFormParameters A servlet request, to the URI https://[REDACTED]/suite/rest/a/dataexport/latest/download-grid, contains form parameters in the request body but the request body has been consumed by the servlet or a servlet filter accessing the request parameters. Only resource methods using @FormParam will work as expected. Resource methods consuming the request body by other means will not work as expected. 2026-04-07 09:48:11,605 [http-nio-8080-exec-199] ERROR com.appiancorp.dataexport.DataExportStreamingOutput - Writing SmartServiceException to Excel Workbook com.appiancorp.suiteapi.process.exceptions.SmartServiceException: Query has failed: null...
2026-04-07 09:48:11 SEVERE [http-nio-8080-exec-199] org.apache.catalina.core.StandardWrapperValve.invoke Servlet.service() for servlet [default] in context with path [/suite] threw exception com.appiancorp.suiteapi.process.exceptions.SmartServiceException: Query has failed: null
As for your CDT question, that's an excellent question, but I wasn't part of the team when this Process was built, and the original developer is not here to answer.
I suggest to open a support case.
Yeah, we're thinking of going down that route. Thank you