|
In CR XI (11) I'm ReportSDKException "/ by zero" around the time it goes to preview in html. This happening on the middle tier (java) on our test server. It works however on my local development environment (IntelliJ). It still works when I point my dev environment to the test db. Even using the same search criteria, I still couldn't get it to fail for me.
All other reports in that reports module application work, except for this one report I recently modified (REPORT_IN_QUESTION.rpt).
Modifications included; Deleting one database field (card id) and introduce another one (personal id number), which also required me to modify the layout so everything fit. In so doing, I also chose a different Page Setup (I can't recall which I used now). BTW, upon initially entering CR XI IDE it told me the printer setup was not valid, and that it would just use the default. That's why I chose a different Page Setup, as I just mentioned.
What fixed the problem was to NOT change the Page Setup / Printer Layout options at all. The tester was able to run a version of REPORT_IN_QUESTION.rpt with no formatting introduced - only the introduction of the new database field.
At this point, I'm trying to understand what was the specific cause of all this. My best guess was the Page Setup / Layout I introduced initially was somehow unknown on the server/workstation - and that resulted in some value becoming zero, and during the calculations to preview in html (position things like the field, etc) that divide by zero happened.
Curious to know if anyone out there has experienced anything similar. I didn't do a complete search of google, but I did see divide by zeros being mentioned in relation to printing and drivers.
As for the initial exception - here is what gets thrown in more detail:
2014-05-06 13:45:08,510 DEBUG [TP-Processor1] (ReportsServlet.java:98) - Loading reports config file /usr/share/tomcat6/webapps/[...]/WEB-INF/classes/reports_setup.properties
2014-05-06 13:45:08,513 DEBUG [TP-Processor1] (ReportsServlet.java:121) - Connecting with driver:oracle.jdbc.driver.OracleDriver User:dbconn to DB:jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL = TCP)(PORT = 1521)(HOST = [...])))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME = [...])))
2014-05-06 13:45:08,534 DEBUG [TP-Processor1] (ReportsServlet.java:152) - Running report [RptFile:REPORT_IN_QUESTION.rpt][Name:REPORT_IN_QUESTION][Location:1][Module:[...]][Operator:[...]][Pass:[...]][System:[...]]
2014-05-06 13:45:08,548 DEBUG [TP-Processor1] (SessionDAOHibernate.java:126) - [Session] Commit : 3ms
2014-05-06 13:45:08,549 DEBUG [TP-Processor1] (ReportsServlet.java:175) - Authentication: true
2014-05-06 13:45:11,855 ERROR [TP-Processor1] (ReportsServlet.java:293) - Error generating report
**com.crystaldecisions.sdk.occa.report.lib.ReportSDKException: / by zero---- Error code:-2147467259 Error code name:failed
at com.businessobjects.reports.sdk.JRCCommunicationAdapter.request(Unknown Source)**
at com.crystaldecisions.proxy.remoteagent.x.a(Unknown Source)
at com.crystaldecisions.proxy.remoteagent.q.a(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.ReportClientDocument.do(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.ReportClientDocument.if(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.ReportClientDocument.a(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.ClientDocument.open(Unknown Source)
**at com.crystaldecisions.reports.sdk.ReportClientDocument.open(Unknown Source)
at com.cbnco.idsys.common.reports.soap.ReportsServlet.doPost(ReportsServlet.java:183)**
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.ArithmeticException: / by zero
at com.crystaldecisions.reports.reportdefinition.eq.else(Unknown Source)
at com.crystaldecisions.reports.reportdefinition.eq.else(Unknown Source)
at com.crystaldecisions.reports.reportdefinition.eq.aY(Unknown Source)
at com.crystaldecisions.reports.reportdefinition.bi.C(Unknown Source)
at com.crystaldecisions.reports.reportdefinition.bi.a(Unknown Source)
at com.crystaldecisions.reports.common.ae.a(Unknown Source)
at com.crystaldecisions.reports.common.ae.if(Unknown Source)
at com.crystaldecisions.reports.reportdefinition.bi.if(Unknown Source)
at com.crystaldecisions.reports.reportdefinition.bi.C(Unknown Source)
at com.businessobjects.reports.sdk.c.a(Unknown Source)
at com.businessobjects.reports.sdk.b.v.if(Unknown Source)
... 26 more
Caused by:
java.lang.ArithmeticException: / by zero
at com.crystaldecisions.reports.reportdefinition.eq.else(Unknown Source)
at com.crystaldecisions.reports.reportdefinition.eq.else(Unknown Source)
at com.crystaldecisions.reports.reportdefinition.eq.aY(Unknown Source)
at com.crystaldecisions.reports.reportdefinition.bi.C(Unknown Source)
at com.crystaldecisions.reports.reportdefinition.bi.a(Unknown Source)
at com.crystaldecisions.reports.common.ae.a(Unknown Source)
at com.crystaldecisions.reports.common.ae.if(Unknown Source)
at com.crystaldecisions.reports.reportdefinition.bi.if(Unknown Source)
at com.crystaldecisions.reports.reportdefinition.bi.C(Unknown Source)
at com.businessobjects.reports.sdk.c.a(Unknown Source)
at com.businessobjects.reports.sdk.b.v.if(Unknown Source)
at com.businessobjects.reports.sdk.JRCCommunicationAdapter.request(Unknown Source)
at com.crystaldecisions.proxy.remoteagent.x.a(Unknown Source)
at com.crystaldecisions.proxy.remoteagent.q.a(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.ReportClientDocument.do(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.ReportClientDocument.if(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.ReportClientDocument.a(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.ClientDocument.open(Unknown Source)
at com.crystaldecisions.reports.sdk.ReportClientDocument.open(Unknown Source)
at com.cbnco.idsys.common.reports.soap.ReportsServlet.doPost(ReportsServlet.java:183)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
at java.lang.Thread.run(Thread.java:619)
|
|
I am not going to be any help, but for what's it worth, I tend to set the report to use no printer at all...it's easier for me to read the report if I use really small fonts.
As long as it fits reasonably on the page it will probably fit the printer...and if this is for an app that is released into the wild or that many different departments use, it may go to a printer that is very different than you developed in your office.
Just something to think about as I have never encountered your error...especially in the middle tier
|