Defining multiple Crystal Report Data Consumer connections?
I am creating a Xcelsius object that uses data from Crystal Reports.
To do that, I define Crystal Report Data Consumer connection. With this I can use Crystal to connect to the data source, create table of data (crosstab) and pass it to the flash object.
But I can only define one such connection. Why can't I define more that one?
I would like to pass two different sets of data and use them in different parts of the dashboard. Trying to get all the data into a single crosstab may not be possible.
Is there another way to do this?
Thanks.
Tim
I have found that I can pass any number of tables of data from CR to XC using flashvars, either XML or CSV.
XML is easy, but you chew up 17 chars (64 bytes) in XML chars per column marker. And with a 64KB string max, you're left with at most 1K data points, and that's with no data!
CSV is old school XC 4.5, converting an array in to a row-order string, not nearly as convenient as a Crystal Report Data Consumers, but it works and you have only a 4 byte overhead per column (the comma.)
Converting cross-tabs to strings, though, can be a bear because cross-tabs are evaluated column-order and you may not know how many columns you are going to have.
So use the Crystal Reports Data Consumer for the intricate cross-tab and CSV flashvars for the other tables.
And then hope it all loads in less than 7 seconds.
Tim
Similar Messages
-
Xcelsius - Crystal Report Data Consumer connection Issues
Sorry for the long post but i hope with the full explaination, i can get a quick answer & solution.
Using Crystal Reports 2008 and Xcelsius 2008 Engage, SQL 2008 stored procedure.
I have tested the Crystal Reports Data Consumer connection within the Xcelsius program, using the following steps :
1. Create a stored procedure that returns the Continent Name and the Count of Projects within each Continent.
2. Create a Crystal Report using the stored procedure, 2 columns in the Details section, column names in the Page Header section.
3. Save and export this as an Excel spreadsheet.
4. Open the Xcelsius program, new file and import spreadsheet. Column A is the Continent Name, Column B is the Count.
5. Without altering the spreadsheet, I created a graph using the data imbedded. i.Bar Graph, series and row selections. Ii. Pie chart with row data selection. Iii.Column data as series and row selections.
6. Created a Crystal Report Data Consumer connection using the data imbedded within then spreadsheet. The column A as the u201CRow Headersu201D & column B as the u201CDatau201D. Took quite a while to get the right combination of selected components so that the preview actually showed the data and the corresponding data labels. The Legend still hasnu2019t shown up.
7. Save and Export as Flash (swf) file.
8. Close Xcelsius and open Crystal Reports.
9. Open the same report used to create the spreadsheet and Insert -> Flash, choosing the newly created swf file.
10. Link the data displayed On the Crystal Report to the Flash file now embedded, using the Flash Expert. Have tried both with the data listed on the Report, and the data listed as the result of the stored procedure.
11. Previewed and the Data shown on the Graph does match the data listed within the Details section of the Report.
12. I then altered the stored procedure to add u201C1u201D to all counts, and refreshed the Crystal Report. (I cannot add new data to the underlying database/tables, due to various other folks & projects using that same database.)
13. The listed data does change to match the changes within the procedure.
14. The Data labels on the Graph do change to match the changes within the procedure.
15. The Actual Displayed Data within the Graph Does Not change to match the changes within the procedure.
I have attempted this with a pie chart, a bar and column charts with the same affect.
I have searched the web, printed out 4 different examples on how to make this work and still it is hit or miss. I still can not get the legend to show up, either in the preview or the within the Crystal Reports. When I preview the graph before adding the Crystal Report Data Consumer connections, it does work.
Please someone tell me, What am I missing here ?
Thanks in advance for your help.http://www.****************/Tutorials/BI/Xcelsius/Index.htm
http://www.resultdata.com/Company/News/Newsletter/2008/aug/Articles/Xcelsius/Using%20the%20Xcelsius%20Crystal%20Report%20Data%20Consumer.htm
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/10161e25-c158-2c10-3086-ad502098b36b?QuickLink=index&overridelayout=true
http://codesforprogrammers.blogspot.com/search/label/How%20to%20suppress%20blank%20row(s)%20in%20detail%20section%20of%20the%20report%3F
http://www.businessobjects.com/pdf/product/catalog/crystalreports/cr_xc_integration.pdf -
SAP Crystal Reports data source connection problem using sap business one
Hi,
I m facing a problem regarding: SAP Crystal Reports data source connection problem using sap business one
I am trying to create a Crystal report but when I try to configure a new connection it does not work.
I select Sap Business One data source and try to complete the information required to connection but it does not list my companies databases, what is the problem?
Our Current SAP related software details are as follows:
OS: Windows Server 2008
SAP B1 Version: SAP B1 9 (902001) Patch 9
SAP Crystal Report Version: 14.0.4.738 RTM
Database: MS SQL Server 2008 R2
I have also added some screenshots of the issues.
Please have a look and let me know if you have any questions or any further clarifications.
I m eagerly waiting for a quick and positive reply.Hi,
There is problem with SAP Business One date source.
I had faced same problem, I used OLEDB Data-source, and it worked fine for me.
So, try to use OLEDB.
Regards,
Amrut Sabnis. -
Schedule CR by crystal report data consumer
Hello expert,
I want to embed a xcelsius dashboard into crystal report by crystal report data consumer, but I don't know if I can schedule this mixed crystal report in infoview and send it out by email periodically? because I 've heard there are some restriction for crystal report data consumer on export and print.
Many Thanks,Moved to xcelsius forum. It may need to be posted in the BOE Admin forum.
-
Using Crystal Report Data Connection in Xcelcius 2008
The documentation does not explain how data to populate row, column and details is passed to SWF.
Can some-one please point how CR Data Connection when created in Xcelcius 2008 is used in Crystal Report Design time ? Is it through Flash variables? Basically more details are needed for "when setup properly" clause. How to map Crystal Reports Fields to Xcelcius Definitions.
Thanks
Harish Tejwani
From Doc:
"With the release of Crystal Reports 2008, it is now possible to embed an Xcelsius-generated SWF file into a Crystal Report and have the SWF consume data from that report. When set up properly, refreshing the data in your Crystal Report will update the embedded SWF.
To configure your Xcelsius SWF to consume data from its Crystal Rport source data, you must open the Data Manager in Xcelsius and add a new Crystal Report Data Consumer connection. After adding the connection, bind the following ranges to your spreadsheet: Row Headers, Column Headers, Data"
"Using Crystal Reports 2008, embed the SWF file into the Crystal Report source data file. When designing your Crystal Report, you will determine what fields/data populate the Row Headers, Comumn Headers, and Data ranges that were designated in your Xcelsius SWF. When set up properly, refereshing your Crystal Report will also refresh the data being sent to and consumed by the embedded SWF. See"<div class="content">
<p>
Please check the following post to see if there is a solution to the issue you are experiencing:
</p>
<p>
<a href="/node/19014"><span style="color: #0063af">http://diamond.businessobjects.com/node/19014</span></a>
</p>
</div> -
Crystal Reports data connection using Java beans
Hi
My name is Bach Ong, i'm currently perform re-configuring Crystal reports 2008 to connect via
Java bean to Jboss server, this uses look up service on JBoss server. The connection is using Connect
look up using the properties:
java.naming.provider.url=jnp://emgsydapp121:10499
java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
for file CRConfig.xml i put as follows:
<JDBCURL></JDBCURL>
<JDBCClassName></JDBCClassName>
<JDBCUserName></JDBCUserName>
<JNDIURL>jnp://emgsydapp121:10499</JNDIURL>
<JNDIConnectionFactory>org.jnp.interfaces.NamingContextFactor
y</JNDIConnectionFactory>
<JNDIInitContext>/</JNDIInitContext>
<JNDIUserName></JNDIUserName>
Can you advise us if this step is correct, and is there any
documentation that can guide us to right direction.
for Java testing in Eclipse using remote call class it is working suing the following code:
Properties p = new Properties();
p.put(Context.INITIAL_CONTEXT_FACTORY,
"org.jnp.interfaces.NamingContextFactory");
p.put(Context.URL_PKG_PREFIXES, "jboss.naming:org.jnp.interfaces");
p.put(Context.PROVIDER_URL, "jnp://emgsydapp121:10499");
InitialContext ctx = new InitialContext(p);
Date asAtDate = CrystalUtils.convertToDate("2014-01-01", CrystalUtils.relativeToToday(0), false);
String asxCode = "BHP";
ClosingPricesReportRequest criteria = new ClosingPricesReportRequest(asAtDate, asxCode);
InitialContext context = new InitialContext(p);
ClosingPricesReportService ejb = (ClosingPricesReportService) context.lookup(ClosingPricesReportService.REMOTE_JNDI);
ClosingPricesReport report = ejb.createMTMClosingPriceReport(criteria);
System.out.println(report.getClosingPrices()[0].getClosingPrice());
testval = report.getClosingPrices()[0].getClosingPrice().toString();
System.out.println(testval);
when i run the tes code the results as follow:
10:49:45,244 DEBUG [SecurityAssociation ] Using ThreadLocal: false
10:49:45,338 DEBUG [MicroSocketClientInvoker ] SocketClientInvoker[709446e4, socket://emgsydapp121:10473] constructed
10:49:45,338 DEBUG [MicroRemoteClientInvoker ] SocketClientInvoker[709446e4, socket://emgsydapp121:10473] connecting
10:49:45,338 DEBUG [MicroSocketClientInvoker ] Creating semaphore with size 50
10:49:45,338 DEBUG [MicroRemoteClientInvoker ] SocketClientInvoker[709446e4, socket://emgsydapp121:10473] connected
10:49:45,369 DEBUG [ClientSocketWrapper ] reset timeout: 0
10:49:45,650 DEBUG [InvokerRegistry ] removed SocketClientInvoker[709446e4, socket://emgsydapp121:10473] from registry
10:49:45,650 DEBUG [MicroSocketClientInvoker ] SocketClientInvoker[709446e4, socket://emgsydapp121:10473] disconnecting ...
10:49:45,650 DEBUG [SocketWrapper ] ClientSocketWrapper[Socket[addr=/10.137.2.40,port=10473,localport=64150].2cba5bdb] closing
37.99000000000000198951966012828052043914794921875
37.99000000000000198951966012828052043914794921875
Can anyone assist me in convert the above settings to get access by Crystal reports.
My attemp current are below:
public class CFDClosingPricesRpt extends CrystalReport {
//Constructor
public CFDClosingPricesRpt(){
super(ClosingPriceBean.INSTANCE);
* Returns the ResultSet for this report to Crystal.
* @param asxCode
* @param asAtDateString
* @return
public ResultSet getNewReport(String asxCode, String asAtDateString) {
try {
Properties p = new Properties();
p.put(Context.INITIAL_CONTEXT_FACTORY,
"org.jnp.interfaces.NamingContextFactory");
p.put(Context.URL_PKG_PREFIXES, "jboss.naming:org.jnp.interfaces");
p.put(Context.PROVIDER_URL, "jnp://emgsydapp121:10499");
//InitialContext ctx = new InitialContext(p);
clearCachedReportBeans();
Date asAtDate = CrystalUtils.convertToDate("2013-01-01", CrystalUtils.relativeToToday(0), false);
asxCode = "BHP";
ClosingPricesReportRequest criteria = new ClosingPricesReportRequest(asAtDate, asxCode);
//ClosingPricesReportService ejb = (ClosingPricesReportService) ctx.lookup(ClosingPricesReportService.REMOTE_JNDI);
ClosingPricesReportService ejb = (ClosingPricesReportService) ServiceLocator.getInstance().getService(ClosingPricesReportService.REMOTE_JNDI);
ClosingPricesReport report = ejb.createClosingPriceReport(criteria);
// assemble Crystal-friendly DTO
Collection closingPrices = Arrays.asList(report.getClosingPrices());
for (Iterator iter = closingPrices.iterator(); iter.hasNext();) {
MBLXClosingPrice cp = (MBLXClosingPrice) iter.next();
if (cp==null) continue;
addReportBean(new ClosingPriceBean( report.getSuppliedDate(),
cp.getClosingPrice(),
cp.getAsxCode()));
} catch (Throwable x) {
saveErrorMessage(x);
return getAsResultSet();
Thanks
Bach OngHi Don Thanks for the reply.
I've was able to connect via Java beans and JNDI. But this one is going the JNDI of JBoss sever, which the JNDI already configure and working for Crystal reports v10.
Bach -
Get the parameter fields defined in crystal report
I am porting my application from crystal 8.5 written in C++ to crystal 2008 in .net.
Here I am not making use of crystal report viewer neither I am creating .rpt in .net code.
I have a set of already created .rpt files.
I have written a function in .net to export the crystal report.
Its a generic function and will be called for multiple crystal reports.
I am passing the parameter values to the report by making use of the following function :
ReportDocument repDoc;
repDoc.SetParameterValue(APPTYPE, strNextToken[0]);
repDoc.SetParameterValue(COMPORROLETYPE, strNextToken[1]);
Similarly I are setting other parameter values.
The problem here is that, all the reports do not have parameter fields defined that I am trying to set.
They may be present for one report and absent for another. In this case , if the report does not have a particular parameter
field, then it gives error on setting parameters and subsequently fails.
Now I want to find out through code what all parameter fields are defined in the report. Then I will only set those
parameter fields?
Please guide how can this be done.
Thanks
SonamNot as trivial as you might think. You will have to loop through all the sections of the report looking for the objects you need. I don't have a code specific to parameters, but looping through al the sections would be something like the code below. But... this will only show you parameters in a section. It will not show you parameters used in a formula, record selection formula, group selection formula, text field or a conditional formula. In order to get those parameters, you's have to parse out each of those objects looking for parameters. And this is probably not an exhaustive list of places to look for a parameter in the report. I get a headache just thinking about this...
Dim crSections As Sections
Dim crSection As Section
Dim crSubreportObject As SubreportObject
'set the crSections object to the current report's sections
crSections = crReportDocument.ReportDefinition.Sections
'loop through all the sections to find all the report objects
For Each crSection In crSections
crReportObjects = crSection.ReportObjects
'loop through all the report objects to find all the subreports
For Each crReportObject In crReportObjects
If crReportObject.Kind = ReportObjectKind.SubreportObject Then
'you will need to typecast the reportobject to a subreport
'object once you find it (***you'd go to setting the parameter here - or not...)
crSubreportObject = CType(crReportObject, SubreportObject)
'open the subreport object
crSubreportDocument = crSubreportObject.OpenSubreport(crSubreportObject.SubreportName)
'set the database and tables objects to work with the subreport
Ludek
Follow us on Twitter http://twitter.com/SAPCRNetSup -
One parameter for multiple Crystal reports in Publication
Does anyone know if it is possible to enter one identical parameter for multiple Crystal reports in publication when scheduling? BOE 3.1 SP3 Windows, Java.
To elaborate I am creating publication with multiple reports, each report has one parameter and this parameter is identical in every report in publication. So instead of entering this parameter many times I would like to enter once.
If yes point me in the right direction to get the how to or post the steps.Daniel,
Thank you so much for your answer. It was very helpful. In the end, it didn't work but it helped me figure out what was happening. I use a different form for the reports and I had it coded in the form which report to use. I created a second form for the second crystal and then I used an if statement to choose the form and it worked like a charm.
Thanks so much again! -
Ports Crystal Reports uses when Connecting to a Universe as a Data Source
I have a couple of Crystal Reports that use universes as a data source. On my Windows 7 machine I am getting an error message that "Logon Failed", rather opening and running the same report on my Windows XP machine, I get the results from the universe as expected. I have tried multiple universes that report against different databases (Oracle, SQL Server, Sybase, etc) and I am getting the same vague error message on my Windows 7 machine with Crystal Reports 12.3.0.601.
Can someone please tell me what ports are being used within Crystal Reports (other than 6400) when connecting to the CMS and pulling back data from a universe? The odd thing, is that I can connect to the CMS, see the universes that I have permissions too and even see the objects within the universe, but I cannot view the results. This is a pretty high priority for us, so I would appreciate any feedback possible.Hello,
"Seems contrary to the concept of isolating users (in this case designers) from connection details. I can only be hopeful that report users will not also have to have connections configured on the local workstations to view these reports ;-)"
As long as you use/set Saved Data with the reports then they don't need the client installed. If they hit Refresh to update the data then obviously they need to be able to connect to the data source, how else are they going to get it.
Think about it, you sit down to write a report off of a database you don't have access to? How are you going to create a report....
If you planning on sending out reports for viewing only then export them to PDF or some other type, then DB connections are not an issue, the PDF's are for viewing only.
Another concept is DB Security. Using NT Authentication or DB Authentication unless that user hitting the refresh button has access to the DB it won't prompt for log on info or if they don't provide the correct log on info they can't see new data.
It's all about security, CR does not save the Password in the RPT file, if we did anyone could get it and hack your database.
Not sure what your post has to do with Ports?
If you have questions then please post, in this forum we assume post that are answered are closed.
Don -
XCelsius and Crystal Report data connectivity
Hello,
I have an Excelsius SWF-file and a Crystal Report in which I want to show the SWF. The data of the SWF should depend on a cross table in Crystal Report (event type/month. I tried but have several difficulties:
1. there are different counts of event types in the different customer databases so I can not assign a fix data area in XCelsius
2. I have sorted the columns in the cross table in CR according to the number of the month, but the name of the month is showing. When I choose the option "use an existing cross table" the SWF in the design form only shows the numbers and not the names like in the cross table of CR
3. in the preview no SWF is shown
4. how to bind cross table(s) AND single values to CR
Can anybody help or can suggest an exact documentation of the connection of the both programms with an example?
Thanks in advance for help.
Monika AnnaHi Ingo,
Yes, I understand what you 're saying:
"for distributing report objects with a larger audience you need a BusinessObjects server environment - either BusinessObjects Edge or BusinessObjects Enterprise."
What I dont understand is WHY we need to have BusinessObject Enterprise to distribute the crystal report so that my user can access the crystal report?
The reason why I am confused because earlier on, you mentioned we (BW users) can call the URL and access crystal report is saved in the BW Role.
Since my BW users can access crystal report directly from BW, WHY do we still need BusinessObject Enterprise?
Please advise, thank you. -
Share database connection among multiple crystal reports using PULL model
Hi All,
Is there any way to share database connection using crystal report PULL method ? I m using crystal report 2011 with visual c# (VS2010). Reports get connected to database server using Oracle Native client drivers.
Thanks,
GauravIn crystal report 8.5, we have used "PESetNthTableLogonInfo" (after PELogOnServer got deprecated) which shares the connection among reports. Is there any way to implement the same functionality in crystal reports.
Thanks,
Gaurav -
Change crystal report data source dynamically failed with multi tables report
hello all
i have many reports created by someone else on his own machine using same database file i use
my application use Visual studio 2013 win form with crystal report pack 9
i use rpt files provided to me
connect database use OLEDB
to show form i use below code
SQLstr = " select what ever from table " ' defined as Public
reportName = rpt file path & report name
showReport()
public sub showReport()
reportTable.clear() ' defined as Public
DBAdapter = new oleDpdataAdapter(SQLstr,DBconnection)
DBAdapter.fill(reportTable)
dim rptDoc as new Crystaldesicin.crystalreports.Engine.ReportDocument
rptDoc.load(reportName)
rptDoc.setdatasource(reportTable)
formRpt.RptViewer.reportsource = rptDoc
formRpt.showdialog()
now
when i use one table report with (select from one table) >>>>> works perfectly
but when i use report retrieve data from 2 tables and group data like using
SQLstr = " select 'table'.'coulumn', 'table2'.'column' ....... etc
from 'table1'
INNER JOIN 'table2' ON 'table'.'coulumn' = 'table2'.'column'
it's not working and formrpt shown but asking for database login
I noted that in database login window : server name refer to ORIGINAL DATABASE USED BY Report Creator not to my local database
================================================
i tried to set
rptDoc.datasourceconnection.item(0).setconnection("","databse file path and name", False)
rptDoc.datasourceconnection.item(0).setlogin("admin","")
but the same
using dataset instead of reportTable the same error
================================================
what i missed in this type of reports?
( apologize about long take and poor English )Hi
Please have a look at the wiki Troubleshooting Issues with VS .NET Datasets and Crystal Reports.
- Ludek
Senior Support Engineer AGS Product Support, Global Support Center Canada
Follow us on Twitter -
Universe based Crystal report date prompt appears as DateTime
I have faced this issue in all XI versions and was hoping there is a solution for this in XI 3.1 and/or Crystal 2008.
There is a date dimension in a universe which is tied to a datetime datatype on the backend SQL server field. If a Crystal report (XI,2008) uses this date dimension as a prompt, the prompt created in Crystal report is of type Date Time and therefore when the report is ran, the required syntax for this prompt is with timestamp. There was a fix for a similar issue in XI R2 Fix Pack 3.3 by creating a useDateInsteadOfDateTime registry key and setting its value to the DSN of the ODBC based universe connection. I could never get that to work by the way.
Any ideas on how to change the prompt data type to Date without the timestamp in XI 3.1 and Crystal 2008 reports?
Thanks.Hi Farhan Jaffery
Have you tried to change the object defination in universe level and crate a prompt and check.
Also try to use Add Command to retrive the database field with only date and create a prompt.
Thanks,
Sastry -
Crystal Reports and Universe Connection (Access DB)
Hi,
I am trying to use a universe as a data source for Crystal Reports 2008. The universe is defined on a simple relational Access DB table (.mdb file which resides on the server). After selecting the universe as data source, I can select measures and attributes from it, but after clicking "ok" I am getting the error "Fehler bei Anmeldung." ("Logon failed.").
Please note that although I am connecting to a relational (not OLAP!) DB, SAP-Note
" 1363326 - Error: Logon failed on Crystal Report conecting to OLAP Universe."
describes exactly the error I am facing (except that this note is for OLAP universes).
The universe works fine if I use it in WebI as data soruce.
Which universes can Crystal Reports 2008 actually use in general?
Are there any special restrictions for the data model?
Thanks for your help!Make sure that the Access DB is accessible also from the local workstation the CR Designer is installed on.
In fact I would recommend to setup your universe connection to you the generic ODBC driver and setup a system DSN for accessing the DB once on your BO server and once on your client. Make sure to use the same DSN name in both cases.
Regards,
Stratos -
What I need to do is to connect the two SAP B1 v9.0 tables listed above (A/P Invoice OINV, and A/R Invoice OPCH) in a Crystal report WITHOUT SQL. How do you connect these tables? Purpose of report is for sales commissions. Existing customer report combines SAP B1 data from these tables but is done manually in Excel. Attempting to create report in Crystal for automation purposes. Will also include INV1 and PCH1 for detailed line item marketing document information. Thanks for any assistance.
Since the picture doesn't show what is actually linked to what, here is a written description of the links I used between tables (with 2 alternates in case I'm wrong):
OPRJ.PrjCode left join INV1.Project
INV1.BaseEntry left join RDR1.DocEntry
INV1.BaseLine left join RDR1.LineNumber
INV1.DocEntry left join OINV.DocEntry
INV1.ObjType left join OINV.ObjType
INV1.ItemCode inner join OITM.ItemCode
OINV.CardCode inner join OCRD.CardCode
OINV.SlpCode left join OSLP.SlpCode
OITM.ItmsGrpCod left join OITB.ItmsGrpCod
RDR1.DocEntry left join ORDR.DocEntry
RDR1.DocEntry left join DLN1.BaseEntry
RDR1.LineNum left join DLN1.LineNum (s/b BaseLine?)
RDR1.DocEntry left joing POR1.BaseEntry
RDR1.LineNum left join POR1.LineNum (s/b BaseLine?)
RDR1.ObjType left join ORDR.ObjType
POR1.DocEntry left join OPOR.DocEntry
POR1.ObjType left join OPOR.ObjType
POR1.DocEntry left join PCH1.BaseEntry
POR1.LineNum left join PCH1.BaseLine
PCH1.DocEntry left join OPCH.DocEntry
PCH1.ObjType left join OPCH.ObjType
DLN1.DocEntry left join ODLN.DocEntry
DLN1.ObjType left join ODLN.ObjType
Maybe you are looking for
-
How do i get all the music that i purchased back on my ipod touch 3rd generation?
how do i get all the music that i purchased back on my ipod touch 3rd generation?
-
Saving With An Earlier Version
Trying to save a numbers file so I can send to my daughter who has an earlier version of Numbers. Anyone know how?
-
Hi all . I want to learn the XI give me the some information in PDF or Document . Please help me.
-
Quicktime won't export to Itunes??
I have been using final cut express to make my videos. When I export them, I export them over to quicktime. To upload them to vimeo, they need to be below 500MB. I have always just uploaded them to Itunes which makes them smaller. I have done this fo
-
What is the website to find my ipad
what is the website to find my ipad