"com.cristaldecisions.sdk.occa.report.reportsource.IReportSource" missed
Hi ,
I am using Crystal Reports v XI with java. when i try to compile the java program , error is occured as
package com.crystaldecisions.sdk.occa.report.reportsource does not exist
import com.
com.crystaldecisions.sdk.occa.report.reportsource.IReportSource;
^
I looked for the jar file to set class path but I colud not find that. I think jar file containing this package might be missed. if so , How can i get it. is there any possibility to download that . please help me.
[email protected]
thank you.
heee hiiii,
i am also a new user of it....
if u r using eclipse IDE
u can download plugins and features of crystalReport for eclipse
on www.businessobjects.com
and then try out
Similar Messages
-
Hi,
I got the following Exception when I try to open a report from page server in CRS 2008.
]] Root cause of ServletException.
java.lang.NoSuchMethodError: com/crystaldecisions/sdk/occa/report/reportsource/IReportSource.getPreferredViewingLocale()Ljava/util/Locale;
at com.businessobjects.report.web.b.a.aJ(Unknown Source)
at com.businessobjects.report.web.a.r.try(Unknown Source)
at com.businessobjects.report.web.a.r.saveState(Unknown Source)
at com.businessobjects.report.web.a.u.saveState(Unknown Source)
at com.businessobjects.report.web.a.m.saveState(Unknown Source)
Truncated. see log file for complete stacktrace
The class I have imported is the following.
com.crystaldecisions.sdk.occa.report.reportsource.IReportSource
How to get rid of this exception?
Thanks & Regards,
SteveHi Aasavari,
This is the snippet of the java
String userName = "xxxxxxx";
String password = "xxxxxxxxx";
String auth = "secEnterprise";
String pageServer = "xxxxxxxxxxxx";
String report = "report";
ISessionMgr sessionMgr = CrystalEnterprise.getSessionMgr();
IEnterpriseSession enterpriseSession = sessionMgr.logon(userName, password, pageServer, auth);
// get info store from enterpise session
IInfoStore iStore = (IInfoStore) enterpriseSession.getService("InfoStore");
// get a collection of SI_ID from info store
IInfoObjects infoObjects = iStore.query("Select SI_ID From CI_INFOOBJECTS Where SI_NAME='" + report + "' And SI_INSTANCE=0");
// get the first SI_ID from the collection
IInfoObject infoObject = (IInfoObject)infoObjects.get(0);
// get report source factory from enterprise session
IReportSourceFactory reportFactory = (IReportSourceFactory) enterpriseSession.getService ("", "PSReportFactory");
// get report from report factory
Object reportSource = reportFactory.openReportSource(infoObject.getID(), Locale.ENGLISH);
HttpSession session = (HttpSession) FacesContext.getCurrentInstance().getExternalContext().getSession(true);
session.setAttribute("reportSource", reportSource);
Below are the jsp source code.
<%@ page import= "com.crystaldecisions.report.web.viewer.*" %>
<%@ page import="com.crystaldecisions.sdk.occa.report.data.*"%>
<%@ page import="com.crystaldecisions.sdk.occa.report.application.reportsourcefactory.RasReportSourceFactory"%>
<%@ page import="com.crystaldecisions.sdk.occa.report.reportsource.IReportSourceFactory2"%>
<%@ page import="com.crystaldecisions.sdk.occa.report.reportsource.IReportSource"%>
<%@ page import= "java.util.Date" %>
<%
Object reportSource = session.getAttribute("reportSource");
CrystalReportViewer viewer = new CrystalReportViewer();
viewer.setReportSource(reportSource);
viewer.setOwnPage(true);
viewer.setPrintMode(CrPrintMode.ACTIVEX);
viewer.processHttpRequest(request, response, getServletConfig().getServletContext(), null);
%>
Thanks & Regards,
Steve -
I am testing BOE 4.0 with a simple jsp based on the samples. The code is what I used to test BOE xi 3.1. But I ran into some report display inconsistencies with 3.1 so I am trying 4.0. The code below works in 3.1 But in 4.0, I get the report viewer screen coming up but get a null pointer exception coming to the screen.
2014-06-18 13:48:01
java.lang.NullPointerException
at com.crystaldecisions.sdk.occa.report.application.ControllerBase.checkViewReportRight(ControllerBase.java:114)
at com.crystaldecisions.sdk.occa.report.application.ReportSource.getPage(ReportSource.java:945)
at com.crystaldecisions.sdk.occa.report.application.AdvancedReportSource.getPage(AdvancedReportSource.java:343)
at com.businessobjects.report.web.event.PageListener.renderContentLocally(PageListener.java:394)
at com.businessobjects.report.web.event.PageListener.getPage(PageListener.java:181)
at com.businessobjects.report.web.event.PageListener.updatePage(PageListener.java:123)
at com.businessobjects.report.web.event.UpdatePageEvent.processListener(UpdatePageEvent.java:47)
at com.businessobjects.report.web.event.ViewerBroadcaster.broadcast(ViewerBroadcaster.java:109)
at com.businessobjects.report.web.event.EventQueue.processEvents(EventQueue.java:53)
at com.businessobjects.report.web.component.ViewerContainer.processEvents(ViewerContainer.java:1403)
at com.businessobjects.report.web.WorkflowController.doEventProcessing(WorkflowController.java:353)
at com.businessobjects.report.web.WorkflowController.doLifecycle(WorkflowController.java:255)
at com.businessobjects.report.web.WorkflowController.doAsyncLifecycle(WorkflowController.java:106)
at com.crystaldecisions.report.web.viewer.CrystalReportViewerUpdater._processHttpRequest(CrystalReportViewerUpdater.java:61)
at com.crystaldecisions.report.web.ServerControl.processHttpRequest(ServerControl.java:345)
at com.crystaldecisions.report.web.viewer.CrystalReportViewerServlet.doUpdate(CrystalReportViewerServlet.java:156)
at com.crystaldecisions.report.web.viewer.CrystalReportViewerServlet.doPost(CrystalReportViewerServlet.java:144)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:646)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:315)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:662)
Here is the AlwaysRequiredSteps_UnmanagedRas.jsp
<%
String path = "rassdk://C:\\reports\\asn.rpt";
ReportAppSession ra = new ReportAppSession();
ra.createService("com.crystaldecisions.sdk.occa.report.application.ReportClientDocument");
ra.setReportAppServer("10.189.15.175:1566");
ra.initialize();
ReportClientDocument clientDoc = new ReportClientDocument();
clientDoc.setReportAppServer(ra.getReportAppServer());
clientDoc.open(path, OpenReportOptions._openAsReadOnly);
%>
Here is the OpenReport.jsp
<%@ page contentType="text/html; charset=utf-8" %>
<%@
page import="com.crystaldecisions.sdk.occa.report.application.*,
com.crystaldecisions.sdk.occa.report.data.*,
com.crystaldecisions.sdk.occa.report.lib.*,
com.crystaldecisions.report.web.viewer.*,
com.crystaldecisions.sdk.occa.report.definition.*"
%>
<html>
<head>
<title>Preview Report</title>
</head>
<body>
<%@ include file="AlwaysRequiredSteps_UnmanagedRAS.jsp"%>
<%
Tables oTablesCollection = clientDoc.getDatabaseController().getDatabase().getTables();
for(int i = 0; i < oTablesCollection.size(); i++) {
// We'll get two copies of the original table, change one, and use set table.
ITable originalTable = oTablesCollection.getTable(i);
ITable changedTable = oTablesCollection.getTable(i);
IConnectionInfo newConnectionInfo = new ConnectionInfo();
PropertyBag attributes = new PropertyBag();
attributes.putBooleanValue(PropertyBagHelper.CONNINFO_SSO_ENABLED, false);
attributes.putStringValue(PropertyBagHelper.CONNINFO_CRQE_DATABASETYPE, "JDBC (JNDI)");
attributes.putStringValue(PropertyBagHelper.CONNINFO_DATABASE_DLL, "crdb_jdbc.dll");
attributes.putStringValue(PropertyBagHelper.CONNINFO_CRQE_DATABASENAME, "");
attributes.putBooleanValue(PropertyBagHelper.CONNINFO_CRQE_SQLDB, true);
PropertyBag logonProperties = new PropertyBag();
logonProperties.putStringValue("JDBC Connection String", "!oracle.jdbc.driver.OracleDriver!jdbc:oracle:thin:{userid}/{password}@10.189.12.248:1521:gbg");
logonProperties.putBooleanValue("Trusted_Connection", false);
logonProperties.putBooleanValue("Use JDBC", true);
logonProperties.putStringValue("Database Class Name", "oracle.jdbc.driver.OracleDriver");
logonProperties.putStringValue("Connection URL", "jdbc:oracle:thin:@10.189.12.248:1521:gbg");
logonProperties.putStringValue("Server", "10.189.12.248");
attributes.put(PropertyBagHelper.CONNINFO_CRQE_LOGONPROPERTIES, logonProperties);
attributes.putStringValue("QE_ServerDescription", "10.189.12.248");
newConnectionInfo.setKind(ConnectionInfoKind.CRQE);
newConnectionInfo.setUserName("dsdone");
newConnectionInfo.setPassword("dbuser");
newConnectionInfo.setAttributes(attributes);
changedTable.setQualifiedName("DSDONE" + "." + changedTable.getName());
changedTable.setConnectionInfo(newConnectionInfo);
// Commit the changes by calling the setTableLocation method from
// the Database controller with the new table
clientDoc.getDatabaseController().setTableLocation(originalTable, changedTable);
// Create a Viewer object
CrystalReportViewer viewer = new CrystalReportViewer();
// Set the name for the viewer
viewer.setName("Crystal_Report_Viewer");
// Set the report source for the viewer to the ReportClientDocument's report source
viewer.setReportSource(clientDoc.getReportSource());
// Process the http request to view the report
viewer.processHttpRequest(request, response, getServletConfig().getServletContext(), out);
// Dispose of the viewer object
viewer.dispose();
// Release the memory used by the report
clientDoc.close();
%>
</body>
</html>Hi Jason,
Call any one of the methods
viewer.dispose(); or clientDoc.close();
Do not use both in BI 4.x version.
Test the same and let me know if it works.
Thanks,
Prithvi -
Hi,
I am trying to run the crystal reports from a web-app in jboss app server (4.3.2).
However on running the jsp the below error is received.
com.crystaldecisions.sdk.occa.report.lib.ReportSDKException---- Error code:-2147467259 Error code name:failed
Please help me if you have come across such exception.
Thanks,
LakshmiHello guys,
First thank you for your time and help !
Today finally I was able to resolve my problem. I think that somehow my project (Java Dynamic Web Project) was corrupted becouse I wasn't able to find the report on runtime in any way (I try to put it in .ear as well). Now I have created one new fresh Dynamic Web project and add Crystal Reports facets to it. Then I put my report file in "reports" folder under WebContent and I was able to find it on runtime. My CRConfig.xml is availiable under /WEB-INF/classes/ and it CONTAINS the following <reportlocation>../..</reportlocation> tag.
I found very useful and helpfull articles here :
http://publib.boulder.ibm.com/infocenter/iadthelp/v7r0/index.jsp?topic=/com.businessobjects.integration.eclipse.devtools.doc/developer/DisplayReports5.html
http://publib.boulder.ibm.com/infocenter/iadthelp/v7r0/index.jsp?topic=/com.businessobjects.integration.eclipse.devtools.doc/developer/JRCReference3.html
I still don't know what was the root couse for my problem. I hope that I never see this problem again
Regards,
Ivo
Edited by: Ivo Kotev on Sep 21, 2011 10:35 AM -
Load linkage error - "com/crystaldecisions/sdk/occa/report/data/Fields"
We had installed and were using Crystal Reports for Eclpse with JBoss 4.2. We recently upgraded to JBoss 5.1 Our crystal reports do not work from the web interface anymore. The error we get is:
Caused by: java.lang.LinkageError: loader constraint violation: loader (instance of org/jboss/web/tomcat/service/WebCtxLoader$ENCLoader) previously initiated loading for a different type with name "com/crystaldecisions/sdk/occa/report/data/Fields"
It looks like there might be a class conflict with JBoss jars? Any ideas on which jars to look at would be really appreciated. Any other ideas or suggestions on what this error might be?
Thank you.Based on the supported platforms document, I don't believe that JBoss 5.1 is on the list of application servers that are supported by Crystal Reports For Eclipse Version 2. I believe that the versions of JBoss that are supported are 4.2 and 5. By not supported, it means that SAP BusinessObjects hasn't tested and certified against these versions.
As for the error, I'm not sure which jar file would be causing the conflict.
Regards.
- Robert -
Hello,
I'm trying to upgrade from an older version of the Java CR libraries to Crystal Reports for Eclipse 2.
I downloaded the latest version, replaced all the jar files and then tried to open a report like this
ReportClientDocument doc = new ReportClientDocument()
doc.open("c:
report.rpt")
This gives me the following error:
com.crystaldecisions.sdk.occa.report.lib.ReportSDKException: rowIndex---- Error code:-2147467259 Error code name:failed
caused by: java.lang.NoSuchFieldError: rowIndex at
com.crystaldecisions.reports.valuegrid.ValueGridFormulaFunctions.ValueGridObjectFunctionFactory$GridValueAtFunction
Does anyone know how to get rid of this error?
Kind regards,
Dennis WestraI created a new report with just a text area containing some text. The report has no connection to the database.
When I open the report with ReportClientDocument.Open() this gives me the error. I havent tried to open an existing report yet. I wanted to start simple by creating a new report.
I assume that a database connection is not mandatory. Or am I incorrect? -
Com.crystaldecisions.sdk.exception.sdkExecption$InvalidCMSSyntax
hello,
i use infowiew by programm via url
http://pa/businessobjects/enterprise11/desktoplaunch/opendoc/view_report_pack.jsp?sdoc=devel&user=Administrator&pass=&cms=pack-81b36a7e9d&userdb=fo&passdb=fo&schamp=Date_EA&stype=DATE&svaleur=01/02/2007
the reports display one page (connection cms ok , connection db ok )
When i clik on button export or button next page
or button zoom 400% (Toolbar) i have an error
com.crystaldecisions.sdk.exception.sdkExecption$InvalidCMSSyntax
Have you an idea ?
option of viewer ?
Thanks Michel
<%@ page import = "com.crystaldecisions.sdk.occa.infostore.*,
com.crystaldecisions.sdk.plugin.desktop.common.*,
com.crystaldecisions.sdk.framework.*,
com.crystaldecisions.sdk.occa.security.*,
com.crystaldecisions.sdk.exception.SDKException,
com.crystaldecisions.sdk.occa.managedreports.IReportSourceFactory,
java.util.Locale,
java.util.*,
java.lang.String,
com.crystaldecisions.sdk.occa.report.data.*,
com.crystaldecisions.report.web.viewer.*"
%>
<%
// CMS : Nom de la machine exemple sethseth
// user : nom de l'utilisateur CMS exemple Administrator
// pass : mot de passe de l'utilisateur example vide
// Sdocname : nom du rapport Rpt
// notes avant il faut l'integrer dans InfoView
// userDb : utilisateur de la base de donnee exemple rcteaxeriah
// passDb : Mot de passe de la Bd exemple rcteaxeriah
// MM : recupére les infos passés en paramétre par l'url
String cms = request.getParameter("cms");
String user = request.getParameter("user");
String pass = request.getParameter("pass");
String sdocName = request.getParameter("sdoc");
String userDb = request.getParameter("userdb");
String passDb = request.getParameter("passdb");
// Multiparametre
String[] tab_schamp = request.getParameterValues("schamp");
String[] tab_stype = request.getParameterValues("stype");
String[] tab_svaleur = request.getParameterValues("svaleur");
try {
//Log in.
IEnterpriseSession enterpriseSession = CrystalEnterprise.getSessionMgr().logon(user,pass,cms,"secEnterprise");
//Grab the InfoStore from the httpsession
IInfoStore infoStore = (IInfoStore)enterpriseSession.getService("", "InfoStore");
//Query for the report object in the CMS. See the Developer Reference guide for more information the query language.
IInfoObjects oInfoObjects = (IInfoObjects)infoStore.query("SELECT TOP 1 * " +
"FROM CI_INFOOBJECTS " +
"WHERE SI_PROGID = 'CrystalEnterprise.Report' AND SI_INSTANCE=0 AND SI_NAME='" + sdocName + "'" );
if (oInfoObjects.size() > 0) {
//Retrieve the latest instance of the report
IInfoObject oInfoObject = (IInfoObject) oInfoObjects.get(0);
//Use the PS report factory to obtain a report source that will be processed on the Page Server.
IReportSourceFactory factoryPS = (IReportSourceFactory)enterpriseSession.getService("PSReportFactory");
Object reportSource = factoryPS.openReportSource((oInfoObject), Locale.ENGLISH);
session.setAttribute("reportSource", reportSource);
//Build database logon connection infos object. A connection info object containing the logon
//credentials must be created for each connection in the report. This will be passed into the report via
//the Viewer SDK so that the user is not prompted for report database logon credentials.
ConnectionInfo dbLogonInfo = new ConnectionInfo();
dbLogonInfo.setUserName(userDb);
dbLogonInfo.setPassword(passDb);
ConnectionInfos dbLogonInfos = new ConnectionInfos();
dbLogonInfos.add(dbLogonInfo);
//Put this object in session so that it can be retrieved and used by the viewer.
session.setAttribute("dbLogonInfos", dbLogonInfos);
CrystalReportViewer viewer = new CrystalReportViewer();
viewer.setName("CrystalReportViewer");
// Active l'exportation et l'impression sur le visualisateur
viewer.setOwnPage(true);
//Impression possible sur le mode ActiveX
viewer.setPrintMode(CrPrintMode.ACTIVEX);
//le rapport sera affiché sur le Viewer
//Object reportSource = session.getAttribute("reportSource");
viewer.setReportSource(reportSource);
//cache la fenetre d'authentification à la BD (Nom utilisateur et mot de passe)
// et se connecte directement à la base de donnée oracle
//ConnectionInfos dbLogonInfos = (ConnectionInfos)session.getAttribute("dbLogonInfos");
viewer.setDatabaseLogonInfos(dbLogonInfos);
Fields fields = new Fields();
// multi parametre entree
for (int l_i_Nbr_Champ = 0; l_i_Nbr_Champ < tab_schamp.length; l_i_Nbr_Champ++)
////////////// Paramétre entrée = DATE //////////////////////////////////////////////////////
/// TEST = if (tab_stype[l_i_Nbr_Champ].equals("DATE"))
// extraction du format JJ/MM/AAAA et déclaration des variables
// Année
int iannee = Integer.parseInt(tab_svaleur[l_i_Nbr_Champ].substring(6,10));
// le mois de janvier commence a 0
int imois = Integer.parseInt(tab_svaleur[l_i_Nbr_Champ].substring(3,5)) -1 ;
// Jour
int ijour = Integer.parseInt(tab_svaleur[l_i_Nbr_Champ].substring(0,2));
setParameterValueDate(fields,tab_schamp[l_i_Nbr_Champ],"",iannee,imois,ijour,out);
////////////// Fin Parametre entree = DATE ////////////////////////////////////////
////////////// Paramétre entrée = STRING //////////////////////////////////////////////////////
if (tab_stype[l_i_Nbr_Champ].equals("STR"))
setParameterValueStr(fields,tab_schamp[l_i_Nbr_Champ],"",tab_svaleur[l_i_Nbr_Champ],out);
////////////// Fin Parametre entree = STRING ////////////////////////////////////////
// force le parametre dans le browser
viewer.setParameterFields(fields);
// prompt du parametre de saisie caché
// car on veut que le rapport s'affiche automatiquement
viewer.setEnableParameterPrompt(false);
// // Rafraichissement
viewer.refresh();
// appel browser
viewer.processHttpRequest(request, response, getServletConfig().getServletContext(), null);
// Nettoyage
viewer.dispose();
else {
out.println("Report " + sdocName + " not found.");
catch(SDKException sdkEx) {
out.println(sdkEx);
%>
<%!
static void setParameterValueDate(Fields oFields, String paramName, String reportName,int annee,int mois,int jour,JspWriter out) throws javax.servlet.jsp.JspException
// FORMAT DATE
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.DAY_OF_MONTH, jour);
calendar.set(Calendar.MONTH, mois);
calendar.set(Calendar.YEAR, annee);
Object value = calendar.getTime();
ParameterField oParameterField = new ParameterField();
oParameterField.setReportName(reportName);
Values oValues = new Values();
ParameterFieldDiscreteValue oParameterFieldDiscreteValue = new ParameterFieldDiscreteValue();
oParameterField.setName(paramName);
oParameterFieldDiscreteValue.setValue(value);
oValues.add(oParameterFieldDiscreteValue);
oParameterField.setCurrentValues(oValues);
oFields.add(oParameterField);
%>
<%!
private void setParameterValueStr(Fields oFields, String paramName, String reportName, Object value,JspWriter out) throws javax.servlet.jsp.JspException
ParameterField oParameterField = new ParameterField();
oParameterField.setReportName(reportName);
Values oValues = new Values();
ParameterFieldDiscreteValue oParameterFieldDiscreteValue = new ParameterFieldDiscreteValue();
oParameterField.setName(paramName);
oParameterFieldDiscreteValue.setValue(value);
oValues.add(oParameterFieldDiscreteValue);
oParameterField.setCurrentValues(oValues);
oFields.add(oParameterField);
%>
<%!
static void Affiche(JspWriter out, String s) throws javax.servlet.jsp.JspException
try
out.println(s);
catch(java.io.IOException e)
{ throw new javax.servlet.jsp.JspException(e); }
return;
%>
{code]The reason this is happening is because of how you are storing your CMS name. You are storing the CMS name in the request object
String[] tab_schamp = request.getParameterValues("schamp");
String[] tab_stype = request.getParameterValues("stype");
String[] tab_svaleur = request.getParameterValues("svaleur");
but when you change the zoom level - a postback occurs and your code is run again. However this time the request object is empty and there's no values to retrieve.
So your options are:
1. After you run through the first time, save the report / reportsource in session and just retrieve that on each subsequent postback. This is a common technique.
2. Save the values that you retrieved from the request object into something that persists between postbacks - such as session or a cookie.
Shawn -
Com.crystaldecisions.sdk
Hi,
Anyone knows which JAR files that I should have in order to import these packages?
<%@ page import="com.crystaldecisions.sdk.framework.*" %>
<%@ page import="com.crystaldecisions.sdk.exception.SDKException" %>
<%@ page import="com.crystaldecisions.sdk.occa.infostore.*" %>
Thanks in advance.
LizAn additional note here: you will need to have all of the Enterprise jar files in your application in order to have it function as expected; there are many dependencies between the libraries that can only be resolved if they are all in the class path.
Please see below link for steps on how to correctly set up your Enterprise application:
http://technicalsupport.businessobjects.com/KanisaSupportSite/search.do?cmd=displayKC&docType=kc&externalId=c2018319&sliceId=&dialogID=25146957&stateId=1%200%2025152030 -
Missing com.crystaldecisions.sdk.framework directory and classes
Hello,
I installed crystal report server 2008 and Iu2019m missing the directory and classes in "com.crystaldecisions.sdk.framework" on the webreporting.jar package. Does anyone know why? Or does anyone know where I can get the complete webreporting.jar package. I extracted all the files from the webreporting.jar file this is why I know this. ThanksIf you don't first refer to the BusinessObjects Enterprise Java SDK Developer Guide available on this page:
[http://www.sdn.sap.com/irj/boc/sdklibrary]
for the required jar files, then you're essentially flying blind into a hurricane with fuel gauge on empty.
Sincerely,
Ted Ueda -
I am attempting to automate the "Save As" or export funtion of a webi doc but the documentation that states:
ReportEngine repEngine = (ReportEngine)EnterpriseSession.getService("ReportEngine");
Fails with:
com.crystaldecisions.sdk.exception.SDKException$ServiceNotFound: The service ReportEngine could not be found
When I run:
enterpriseSession.getServiceNames("CMSName", 0);
There is now "ReportEngine" listed.
Can anyone help????? This is not JSP but a command line app that simple need to open a doc, then to getView() to get the binary version of the Webi doc in PDF and simply save to disk via some java method.
I can get the doc, query reports, schedule reports, etc.. Just not export the report to disk.
Can anyone help???These are the only things that show up when I call:
EnterpriseSession().getServiceNames("sales-demo", 0);
Batch
Diagnostics
InfoStore
Logon
NameService
OCAAdministrator
Pinger
PluginDistribution
Session
APSAdmin
AuditAdmin
ISGeneralAdmin
SSOAdmin
This is the whole error:
Exception in thread "main" java.lang.NoClassDefFoundError: com/businessobjects/wp/dbg/DBGTraceable
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
at com.businessobjects.rebean.wi.occa.WebiReportEngine.<init>(WebiReportEngine.java:66)
at com.businessobjects.rebean.wi.occa.WebiReportEngineFactory.makeOCCA(WebiReportEngineFactory.java:64)
at com.crystaldecisions.sdk.framework.internal.a.getService(Unknown Source)
at com.crystaldecisions.sdk.framework.internal.a.getService(Unknown Source)
at com.tidalsoft.adaptors.buisnessobjects.EnterpriseSession.getReportEngine(EnterpriseSession.java:72)
at com.tidalsoft.adaptors.buisnessobjects.BO.main(BO.java:28) -
Attribute "Report Layout" is missing in the "Print Attributes" tab for IR
Hallo,
The attribute “Report Layout” is missing in the “Print Attributes” tab for an interactive report?
How to alter the report layout (xsl-fo) of an interactive report?
Has someone any idea where to configure this?
Btw, for the "classic" SQL Report the XSL-FO "Report Layout" can be cahnged in "Print Attributes" and this works fine for me. But I want to change the xsl-fo for the interactive report.
"If you do not select a report layout, a default XSL-FO layout is used. The default XSL-FO layout is always used for rendering Interactive Report regions. ... Unlike classic reports, the Interactive Report Print Attributes can only utilize the default XSL-FO layout and is initiated from the Report Attributes, Download section rather than directly from this screen. Once configured, these attributes only apply only to the current region and cannot be used outside the context of the region."
http://apex.oracle.com/i/doc/bldapp_rpt_print.htm
How can the "default XSL-FO layout" be changed?
Changing is necessary because the Apache FOP 1.0 reports the following error (for the transmitted default XSL-FO):
"fo:simple-page-master", "fo:region-body" must be declared before "fo:region-before"
http://www.w3.org/TR/xsl/#fo_region-before
The default report layout is not saved in:
select * from APEX_040000.WWV_FLOW_REPORT_LAYOUTS
Thx, WilliI've found two workaround for getting Apache FOP 1.0 to work with Oracle Apex 4.0 for PDF printing of interactive reports:
1, Use an application process to set your custom layout for interactive reports:
[ ] grant all on APEX_040000.WWV_RENDER_REPORT3 to {YOUR_SCHEMA_NAME};
[ ] Create an Application Process e.g. "Custom Report Layout" with constraint for request 'PDF' and Process Text:
declare
v_xsl varchar2(32767);
begin
v_xsl := '<?xml version = ''1.0'' encoding = ''utf-8''?>
<xsl:stylesheet version="2.0"
<fo:region-body region-name="region-body" margin-top="54.0pt" margin-bottom="54.0pt"/>
<fo:region-before region-name="region-header" extent="54.0pt"/>
</xsl:stylesheet>';
APEX_040000.WWV_RENDER_REPORT3.g_prn_template := v_xsl;
end;2, If you have some knowlege in Java change the sequnce of the the nodes in the apex_fop.jsp (or servlet), ie. changing the xsl before you use it for transformation.
The code depends on the solution you are using to parse the xsl string.
Hope this may help someone,
Willi -
Hi,
I have created a REPORT Program (Z Program) and also created a TOP INCLUDE. I am NOT using Function module. When I tried to syntex check the INCLUDE, system is giving
following error:
REPORT/PROGRAM statement missing, program type I (Include).
Can you help me in resolving this error.
Currently TOP include has only one statement to declare a Constant.
Thanks,hi,
take your program in se80.
double click on the program name. Right click on it and press Activate. All the include will get activated and the problem will get solved.
Regards,
Renjith Michael.
http://www.sourceveda.com/ -
com.crystaldecisions.sdk.exception.SDKException$ServiceNotFound: The service WebiReportEngine could not be found
Here is the code I have used to obtain a report engine object
oEnterpriseSession = CrystalEnterprise.getSessionMgr().logon(username, password, cms, authType);
reportEngine = (ReportEngine) oEnterpriseSession.getService("","WebiReportEngine");
Exception lies in the above line .. I am not able to debugTo get the ReportEngine object use the following code:
// Retrieve the Report Engines
ReportEngines boReportEngines = (ReportEngines) boEnterpriseSession.getService("ReportEngines");
// Retrieve the Report Engine for Web Intelligence documents
ReportEngine boReportEngine = boReportEngines.getService(ReportEngines.ReportEngineType.WI_REPORT_ENGINE);
You may also want to look at our samples using the Report Engine SDK available here:
http://diamond.businessobjects.com/samples/86/1199/ -
Hi
Is there a way to confirm if com.businessobjects.sdk.ceutils.prompts.PromptsUtil has been deprecated for BusinessObjects Enterprise XI 3.1 SP4 ?
I see the following posts saying that it could be a documentation error and it has not been deprecated for web intelligene but nothing specific to my version
BOE 3.1 Service Pack 2 SDK changes
Schedule webi with prompts problem
If it has been deprecated whats the correct way for populating webi prompts ?
ThanksOur code is similar to what you have, but if we don't use the .refresh command, the new values are not populated on the report. Do you have any idea why? Our issue is that when it schedueles the report, it doesn't return quickly. It waits until the report is done. Here is our code:
public static void sendReport
( IEnterpriseSession eSession,
String TstPrdFlag,
int jobControlId,
String docId,
int format,
String mimeType,
String filepath
try
IInfoStore infoStore = (IInfoStore) eSession.getService("InfoStore");
//get WebI doc
IInfoObjects infoObjects = infoStore.query("Select TOP 1 * From CI_INFOOBJECTS Where "
+ " SI_KIND='Webi' And SI_INSTANCE=0 "
+ " And SI_ID = '" + docId + "'");
IWebi webi = (IWebi) infoObjects.get(0);
ISchedulingInfo schedInfo = webi.getSchedulingInfo();
//============================================================================
// Set Prompts
//============================================================================
if (webi.hasPrompts())
try
ReportEngine reportEngine = (ReportEngine) eSession.getService("WebiReportEngine");
DocumentInstance docInst = (DocumentInstance) reportEngine.openDocument(webi.getID());
docInst.refresh();
Prompts prompts = docInst.getPrompts();
for (int j = 0; j < prompts.getCount(); j++)
// assumes only a single value per prompt - no MultiValues
Prompt prompt = prompts.getItem(j);
String [] vals = new String[1];
vals[0] = getParameter (TstPrdFlag, jobControlId, prompt.getName());
//System.out.println(prompt.getName()+ " " + vals[0]);
prompt.enterValues(vals);
docInst.setPrompts();
docInst.refresh();
docInst.save();
//getSQL (docInst);
//DataProvider dp = docInst.getDataProviders().getItem(0); // retrieve the DataProvider that you would like the SQL for
//String sql = dp.getQuery().getSQL(); // the SQL out of the DataProvider
//System.out.println(sql);
//PromptsUtil.populateWebiPrompts(prompts, webi);
docInst.closeDocument();
reportEngine.close();
catch (REException e)
e.printStackTrace();
//===========================================================================
// Format as Excel or PDF
//===========================================================================
webi.getWebiFormatOptions().setFormat(format);
//===========================================================================
// send to disk
//===========================================================================
//Get the destination object from schedulingInfo
IDestination destinationObject = schedInfo.getDestination();
//IDestinations destinations = schedInfo.getDestinations();
//IDestination destinationObject = (IDestination) destinations.get(0);
// Specify that we are writing to disk
destinationObject.setName("CrystalEnterprise.DiskUnmanaged");
// Get the Destination plug-in. Note that the SI_PARENTID will always be 29.
IDestinationPlugin destinationPlugin = (IDestinationPlugin)
infoStore.query("SELECT * FROM CI_SYSTEMOBJECTS WHERE SI_NAME='CrystalEnterprise.DiskUnmanaged'").get(0);
destinationObject.copyToPlugin(destinationPlugin);
IDiskUnmanagedOptions diskUnmanagedOptions = (IDiskUnmanagedOptions) destinationPlugin.getScheduleOptions();
diskUnmanagedOptions.getDestinationFiles().add(filepath);
destinationObject.setFromPlugin(destinationPlugin);
//===========================================================================
// Schedule WebI report to run once now
//===========================================================================
schedInfo.setRightNow(true);
schedInfo.setType(CeScheduleType.ONCE);
// Tell the CMS to schedule the report.
infoStore.schedule (infoObjects);
} catch (SDKException e)
throw new Error ("Failed to schedule report. Exception caught: " + e.getMessage()); -
Hi All,
I am using BO XI R2 version.
I am facing issues with BOE Java SDK web application.
In this application, I have just by-passed login page(jsp page) and logout from BO. But, it is throwing errors as mentioned below:
Generated servlet error:
E:\BusinessObjects\Tomcat\work\Catalina\localhost\_\org\apache\jsp\BO_005fHello_005fWorld\login_jsp.java:6: package com.crystaldecisions.sdk.framework does not exist
import com.crystaldecisions.sdk.framework.CrystalEnterprise;
Application gives errors for these two packages:
package com.crystaldecisions.sdk.framework
package com.crystaldecisions.sdk.exception
Can anyone please tell me the solution?
From where I can get the jar files to resolves these problems?
I tried to search these jar files in BO installation folder but was not able to get.
Can anyone tell the exact folder path for these jar files, if it is there.
Or any link to download jar files.
Thanks in advance.Hello ,
-In order to run your application, please copy the Business Objects JAR files from the installed location.
-For example : If you have installed Business Objects on C:
then , go to the path :
C:\Program Files\Business Objects\common\3.5\Java\Lib and copy all the Jar files from that location including JAR files that are present in the external folder.
-Paste these JAR files inside lib folder of your application.
-The class com.crystaldecisions.sdk.framework comes under cesession.jar
Thanks,
Chinmay
Maybe you are looking for
-
Error in starting Oracle 9.2.01 on Redhat 9
Hi, I am a novice in linux. When I tre to start Oracle Instance from terminal window when logged in as Oracle user, I get the following message. [oracle@linserver oracle]$ dbstart Can't find init file for Database "SecondDB". Database "SecondDB" NOT
-
WRT54GC - VPN connects but doesn't connect
I have a WRT54GC. When I use the Netgear ProSafe VP Client in order to connect to my clients network through his Netgear router. The Security Policy appears to be correctly set up because when I try to connect the Netgear client software indicates th
-
Transfer the emp from one comp code to another
Hi All, Is it possible to transfer the emp between the company codes..if it is means,how? Could you pls elaborate the above issue....
-
How do i download my contact from the cloud to my mac
how do i download my contacts from the cloud to my mac?
-
Apple TV Wireless Wreaks Havoc on AP Extreme
In the year or so I've had my Apple TV, I've never been able to get this stable with my Airport Extreme on 802.11n. The Apple TV is right below the router which is on the second floor. My MacBook works just fine on the n network as well as every othe