running a script from within crystal reports - crystal-reports

I have an application that creates a report using crystal reports. The data for the report is created in db tables that are built on the fly and then deleted after the report has been created. I would like to save the database that create the report.
I have access to the reports, so I was wondering if it is possible to embed a script in the crystal report that would run when the report is created and move the data to another location, such as via a batch script.
Can anyone tell me if this can or cannot be done? Thanks for any thoughts.

Try this. In the .rpt, go to Database Export and Add Command as shown below.
I don't know what the proper SQL syntax is (the query in the sample image threw an error), but once you work it out, you could probably do it this way. This example from Business Objects uses this command as part of a larger question.
(However, since the original DB is immediately deleted, you'll have to specify a new database to put the table in. I don't know if that's possible.)

Related

Download reports from the Microstrategy with filtering

http://xx.xx.xxx.xx/servlet/mstrWeb?evt=4001&src=mstrWeb.4001&reportID=48C05A5F4CCF82CC07F4A1BE2D023FE5&visMode=0&reportViewMode=1&messageID=9850FBA54B678E5B6B66A4B1E527B7B5&stateID=0
This sample URL displays the report executed and saved in the archive. Before downloading, I need to specify an additional condition on one of the columns. For example, City = Samplesity How can this be implemented with the help of Microstrategy url api?
You could use a view filter (with a prompt) in the report and answer the prompt via MicroStrategy URLAPI. The problem would be that the prompt will be showed also to the users (if the report is executed with a subscription, then no problem).
Using a report in this way doesn't make much sense to me, better in this case to use a cube and create a report with a prompted view filter on top of it.
If by "saved in the archive" you mean stored in the History List then there is not much to do here. The History List contains an execution of a report, you cannot really modify it.
If you are looking for a way to filter on old version of your data you have to find another solution, like keeping historical version of the data.

Custom SQL in Tableau

I just downloaded the trial of Tableau desktop and this is my first time using the program. I do have a question. When needing to write a custom SQL script, is there only one way to do this? And is it by using the new custom SQL option? The reason I ask this is because it is trying to create a new object in the database, most likely a view. Unfortunately we cannot do this because we only have a read-only account.
I've worked with SSRS and Visual Studio allows you add your own custom SQL script without creating an object in the database. So, I'm hoping this option is available with Tableau. If not, I will just have to wait until we get our DW up and running.
Thanks!

Running Reporting Services against a test database

What's the best way to setup SSRS reports to run against a test database? We need to run them from the Report Server (e.g. from a browser) against a test database. I tried creating a linked report but I don't see a way to associate a different data connection with the linked report.
Thanks.
I usually create a second copy of reports in a Test folder on the SSRS server. This lets consumers test report changes before they affect production.
But if you really want one version of the report to point at both production and test you can get clever with data sources. Here's a blog entry discussing dynamically changing your datasource based on a parameter.
http://skamie.wordpress.com/2010/12/17/ssrs-changing-data-source-dynamically/
Then you'll need to either expose the parameter or call the report in some way where you can set the hidden parameter.
Create a new folder in the Report Manager and upload the exact same report to that new folder.
If needed, you can also hide this folder so only testing people can access the URL directly.
Create a new data source that points to your test database and change the data source of the new report to use the test data source.
That way you can leave your production report intact.
Go to Properties > Data Sources and point the datasource to your test database

create jrxml file at run time and modify at run time

I have a requirement to develop custom reports where we already have some reoprts developed using JasperReports using iReport tool. Now the requirement is to modify those reports design at run time. I should use those existing jrxml files and save as to new report then change the design at run time. Also I should see those newly created reports whenever I want.
I have gone through the Jasper API and Dynamic Reports where we can create the reports dynamically at run time but we can't save the design (like JRXML).
I am looking for any other JRXML design API to create and modify and save the Jasper Reports at run time.
I appreciate if any one can help me.
Thanks in Advance
Srinivas
It seems DynamicJasper can do this.
First thing you will need to draw a flow chart of how you want to do things.
For example, if the report already exists, and you want it as is, what will you do?
In case you want to modify it a little, do you want to save as jrxml and compile each time?
Or do you want to compile to jasper, store on local storage then populate later.
It seems you want to build a reporting engine and answering all those questions is basic. In that case here is something to start from.
Find a factory called DocumentBuilderFactory which will help you parse the XML into DOM object, modify then save it.
Here is a good tutorial on using it

Changing Crystal Reports reports shipped with an application and a runtime version

We have a purchased application (I'm told it's .NET, it's client server, running on Windows XP, connecting to SQL Server 2005) that uses a Crystal Reports runtime and separate report files (.rpt) to do it's reporting function. I have a copy of the CR Designer program but we don't have the CR Enterprise software. I can open the reports in the designer, get to the SQL Server data source (and any others, I guess), add them to the report, run it, print it -- but I can't figure out how to use the same Datasource, which is a subset of the tables in the database that it's connecting to, to do it, and I can't figure out how to save the report files so they'll work with the application. Real gravy would be coming up with new reports.
Is this even possible?
If you open up the report and then go to Database, Set Datasource Location, under the Properties section you will find a lot of info about the datasource and where it is getting it's info from. If the purchased application is creating its own datasource internally though and supplying it to the report at runtime, the best option that I can think of is to start a trace on the SQL Server and then run a report. You should be able to see the SQL that is issued by the Datasource and replicate it in your own version.
You have the possibility to manage your connection's properties at runtime (ie while launching CR from your app). Here is a proposal: Crystal Reports Datasource remap
If you cannot access your app code, you should then do as proposed by #Anthony, by updating all your connection strings in your rpt files, save the rpt files, and copy then on the corresponding report folder of your app: you might have to find where it's located in your system.
First of all, you'd better make sure you're not violating the application's license agreement by attempting to add to it in this way.
It may simply not be possible to add reports to the app in any case - it depends how it loads them and what it does with them.
To use the same datasource, you should just be able to open one of the .rpt files, then go to File > Save As, and give it a new name. Then modify it to what you want. Of course, if you don't know the authentication credentials the app passes to the report to connect, it would be tricky to test it.
It would help greatly if you gave us the name of the purchased application, as we don't really know what you're up against.
It could be that the application is passing through a filter of the data. So when you run the report from Crystal Reports Designer you get the whole data base, however when run through the program the parameters being passed to the report restrict the data back down.
Create a backup of the report. Then edit the existing report, make the changes you require, preview the report to get an idea it looks right, save the report and run the report via the application.
Warning:
As it has already been stated some vendors may not allow you to edit existing reports, your warranty/sport may be voided by editing existing reports, or reports could even be overwritten on the next update.