Some users are getting an error message when accessing the Jasper Reports dashboards.
An unknown error occur and the operation failed.
These issues occur after the users stop working for some time in the Jasper GUI.
The jaserserver.log files show the cause of the issue:
ERROR AsyncJasperPrintAccessor,pool-6-thread-750:321 - Error during report execution net.sf.jasperreports.engine.JRException: Error preparing statement for executing the report query:
Caused by: java.sql.SQLException: [DataDirect][OpenAccess SDK JDBC Driver][OpenAccess SDK SQL Engine]AHD12033:Request cannot be processed. The session was timeout, after 60 minutes of inactivity
Basically the end user left the Jasper session opened, the session timeout is higher than the ODBC timeout so when it tried to access the dash board it failed as the ODBC session was already ended.
Service Desk 14.1 or higher
Jasper Reports 6.3.0 or higher
Increase the ODBC timeout from default 60 min to whatever you require via the NX_ROOT\bopcfg\www\web.cfg file.
Within the file, find and change the line below:
! OdbcTimeout 60
to the following:
The value indicated is in minutes. So in the example above, the timeout would be set for two hours. Make the same change to the NX_ROOT\bopcfg\www\web.cfg.tpl file so the changes will not be lost when a pdm_configure is executed. After making and saving the change to the WEB.CFG file, a recycle of the SD service is required for the change to take effect.