我有一个子报表,它调用一个sybase stored procedure.
子报表在 ireport 和 jasper 上单独运行良好。当我在主报表中使用子报表并在iReport上运行它时,它运行良好。当我在JasperReports上运行相同的报告时,问题就出现了。我收到以下错误:
Error Message
com.sybase.jdbc3.jdbc.SybSQLException: SET CHAINED command not allowed within multi-statement transaction.
.
我用谷歌搜索并没有找到解决我问题的任何地方。我的子报告在摘要带中。我正在使用JasperReports 服务器 4
下面是完整的错误跟踪。
java:901) 在 net.sf.jasperreports.engine.fill.JRFillSubreport.fillSubreport(JRFillSubreport.java:609) 在 net.sf 的 net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:845) .jasperreports.engine.fill.JRSubreportRunnable.run(JRSubreportRunnable.java:59) at net.sf.jasperreports.engine.fill.JRThreadSubreportRunner.run(JRThreadSubreportRunner.java:205) ... 1 更多原因:com.sybase。 jdbc3.jdbc.SybSQLException:在多语句事务中不允许使用 SET CHAINED 命令。在 com.sybase.jdbc3.tds.Tds.a(未知来源) 在 com.sybase.jdbc3.tds.Tds.nextResult(未知来源) 在 com.sybase.jdbc3.jdbc.ResultGetter.nextResult(未知来源) 在 com .sybase.jdbc3.jdbc.SybStatement.nextResult(Unknown Source) at com.sybase.jdbc3.jdbc.SybStatement.nextResult(Unknown Source) at com.sybase.jdbc3.jdbc。jdbc3.jdbc.SybSQLException:在多语句事务中不允许使用 SET CHAINED 命令。在 com.sybase.jdbc3.tds.Tds.a(未知来源) 在 com.sybase.jdbc3.tds.Tds.nextResult(未知来源) 在 com.sybase.jdbc3.jdbc.ResultGetter.nextResult(未知来源) 在 com .sybase.jdbc3.jdbc.SybStatement.nextResult(Unknown Source) at com.sybase.jdbc3.jdbc.SybStatement.nextResult(Unknown Source) at com.sybase.jdbc3.jdbc.SybStatement.queryLoop(Unknown Source) at com.sybase .jdbc3.jdbc.SybStatement.executeQuery(Unknown Source) at com.sybase.jdbc3.jdbc.SybPreparedStatement.executeQuery(Unknown Source) at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:92) at net。 sf.jasperreports.engine.query.JRJdbcQueryExecuter.createDatasource(JRJdbcQueryExecuter.java:137) ... 还有 10 条错误消息 com.sybase.jdbc3.jdbc.SybSQLException: SET CHAINED command not allowed within multi-statement transaction。错误跟踪 com.sybase.jdbc3.jdbc.SybSQLException:在多语句事务中不允许 SET CHAINED 命令。在 com.sybase.jdbc3.tds.Tds.a(未知来源) 在 com.sybase.jdbc3.tds.Tds.nextResult(未知来源) 在 com.sybase.jdbc3.jdbc.ResultGetter.nextResult(未知来源) 在 com .sybase.jdbc3.jdbc.SybStatement.nextResult(Unknown Source) at com.sybase.jdbc3.jdbc.SybStatement.nextResult(Unknown Source) at com.sybase.jdbc3.jdbc.SybStatement.queryLoop(Unknown Source) at com.sybase .jdbc3.jdbc.SybStatement.executeQuery(Unknown Source) at com.sybase.jdbc3.jdbc.SybPreparedStatement.executeQuery(Unknown Source) at org.apache.commons.dbcp.DelegatingPreparedStatement。
任何帮助,将不胜感激。