I've been asked to develop a report using Jaspersoft studio to generate the report template and then use jaspersoft server to have users that generate the report on demand, using data from a CSV file, instead of a DB.
I've been able to generate a report locally using studio, upload the report to the server, but I'm not able to generate the report from there.
I've been looking around and every solution that is proposed is to inject the data into a DB and then generate the report using that. But in other post in the jaspersoft community, it's said that CSV support is going to be added by early 2014, so I guess it's already there.
So, What I think that might fix it is:
1) Add the CSV file to the server, but how to link the report (.jrxml) and the dataAdapter (.xml)?
Right now, I've uploaded it to /contentFiles/xls/energy.csv, but if I put that on the data adaptor, jaspersoft can't find it:
I assume because there is no ip to the server, so it might think it's a local file. If I use the ip to the server, in my case, http://...***:8080/jasperserver/ (* for security reasons) and add after that /contentfiles/xls/energy.csv it still can find it. So, how to link the adaptor to the csv file on the server?
Also, since this csv file will be generated from time to time:
2) There is a folder where I can place or generate the csv file to be updated on the jaspersoft server?
There are a couple of steps to follow in order to have a file-based dataAdapter correctly deployed in JasperReports Server. The following steps were performed with Jaspersoft Studio 6.4.0 and JasperReports Server Pro 6.4.0.
Assuming you have your CSV file in your workspace
(I'm using the CsvDataSouce.txt from the csvdatasource sample)
you begin by creating the data adapter from the Repository Explorer view by pointing to your file and setting up the column names.
You then export your newly created adapter to file by right-clicking it and choosing the Export To File option
(I'm saving it along the CSV file)
At this point you could even delete the adapter from the Repository Explorer view and keep only the saved file to avoid any mistakes. You then create your report by picking the workspace dataAdapter and continue with your report design.
Publishing the report to the server at this stage would not push the dataAdapter files. You need to specify the report's Default Data Adapter property from the properties panel
by picking your workspace adapter
You can now publish the report to your server and the wizard will automatically discover the additional resources to be published
Make sure you pick the Don't use any Data Source option in the last dialog
Your report is now linked to the one from the server with this set of properties:
<property name="ireport.jasperserver.url" value="http://localhost:8080/jasperserver/"/>
<property name="ireport.jasperserver.user" value="jasperadmin"/>
<property name="ireport.jasperserver.report.resource" value="/public/CsvReport_files/main_jrxml"/>
<property name="ireport.jasperserver.reportUnit" value="/public/CsvReport"/>
You can continue to work on it and Jaspersoft Studio will prompt you to republish on each save.
Your CSV file is now a JasperReports Server repository resource that you can update whenever you want, either through Studio or Server's UI. If you don't want it to reside on the JasperReports Server side you could simply use an external URL pointing to your file when creating/editing the dataAdapter file.
Related
I have report solution file with one project and one report.I have designed rdl report using BI in SSDT tools. After creating report successfully build is success and preview is ok. No problem did not arise when i did create report.
Now, I want to deploy this report to my remote reporting server. I gave a url like this www.plumeria.arvixe.com/Reports into Target server url. when i press deploy then need username and password, i gave that. after certain time it appears a errors like this.
Many times i have tried but not get a proper solution step by step deploy rdl report to remote server.
Is there any solution? Thanks.
"like this www.plumeria.arvixe.com/Reports into Target server url" is not correct. What you are referring to is the Report Manager.
You have to correctly specify:
Target Dataset folder
Target Data Source Folder
Target Report Folder -->From your project
Target Server URL-->Get it from Reporting Services Configuration Manager
Target Server version.
You may need elevvated permissions in SSDT.
My target url used in my book is as follows:
http://HODENTEKWIN7/Report_Server_Kailua
The instance name of SQL Server is Kailua and it is native mode.
This is a comprehensive book covering SQL Server 2012 both native mode and SharePoint
Does SSIS 2012 allow to export all connections of a project for a further import into another project?
In 2012 SSIS projects, you now have 2 options. The classic, pre 2012 way which is referred to as Package Deployment Model. The new, default, model is the Project Deployment Model. This answer focuses on the Project Deployment model.
Before you begin any manual edits of files, use a version control system. While you can edit XML by hand, you need to have a safe recovery point in case you pooch the files.
In SSIS 2012, you can have Connection Managers scoped to packages as you've always done or they can now be a shared, project wide connection. Project connection managers show up in every package in SSDT, whether you need them or not. They are prefaced with (project).
If you've created a package Connection Manager that you wish to make into a project resource, simply right click on the CM and select Convert to Project Connection.
One caveat if you reverse that, the Convert to Package Connection is only going to create that CM in the current package. That's not such a hassle when it's 2 or 3 packages, but when it's 20ish, that gets tedious.
A Project Connection Manager has a physical file associated with it. In your project's folder, there will be .conmgr file for each connection manager. That defines the connection all the packages share. However, packages only "know" about the connection manager because of data in the .dtproj file.
If I wanted to re-use an existing project connection manager in a new project, I'd need to copy that file into my new projects folder. After that, I'd have to edit the .dtproj file and add that file's name in between the ConnectionManagers tag
<DeploymentModelSpecificContent>
<Manifest>
...
<SSIS:ConnectionManagers>
<SSIS:ConnectionManager SSIS:Name="PackageCM.conmgr" />
</SSIS:ConnectionManagers>
Now when SSDT opens the project file up, you should have a project CM exposed.
I don't think there's import/export connections utility in SSIS. You could, however, create package configuration file and include your connection managers in it. Then you can edit the file to run your package on different environment, or use values in it to update configuration file of another package.
resource:
http://msdn.microsoft.com/en-us/library/ms141132.aspx
Right click on the connection. Copy the connection Manager and paste in required package
So my problem is that on an already working instance of SQL Server 2008R2, a former colleague of mine installed a new instance, apparently with the same name and leaving us now with an empty Report Manager. The URL for the old one still works, but it only shows me the file structure for the old Report Manager.
Is there a way to somehow extract the old RDLs (considering it has no graphical interface anymore) so that I may load them to the new one? Or alternatively, set the ReportServer service to use the old instance in order to download the RDL files?
Thanks in advance.
I can think about a couple of options:
Download through Report Builder
It sounds like the old ReportServer URL is available? That's something, at least.
One option that might have the least impact is connecting to the old ReportServer through Report Builder, opening the RDL files then saving them to the location of your choice.
Connect to the ReportServer:
Navigate and open the file you need.
Click Save As to save the RDL as required.
Start/restart different instances
Based on your description, it sounds like both instances are trying to register the same URL.
If possible, I would stop both instances, then restart the old instance which has the RDL files you want.
Hopefully this will allow the old instance to register its URLs successfully and allow you to connect to the old Report Manager URL and download the RDL files.
You can check the different URLs each instance is using through the Reporting Services Configuration Manager application:
I'm fairly new to SSIS and am having trouble figuring out something that seems like it should be straight forward:
On server A, I have 10 files in "C:\SourceFiles\Patients" (these files are PDFs). I know the names of these 10 files and they won't change. Also, there is a server B which is the DB server and is where the SSIS package will be located. My goal is to loop through a DB table containing patients, add some patient data to the 10 source files (renaming the file) and then save this new file to server A.
I have most of this running already. Currently, all of this is happening in a script task using ADO.NET for the DB access (I'm already accessing the DB table on server B) and I'm accessing the source files on my local C drive.
I am having trouble figuring out how to specify server A in the Package Configuration for the source files. I have a file connection which specifies an existing folder (C:\SourceFiles\Patients), but it only specifies the location of the folder NOT the server. How to I specify server A for this file connection? Or, how do I use this file connection with a server A connection? I'm having real difficulty grasping this for some reason!!
The technologies I'm using are:
Visual Studio 2008,
C# in the SSIS script task,
ADO.NET in the SSIS script task and
SQL Server Management Studio 2008 (SSIS package will be imported here).
Thanks for pointing me in the right direction!
I see some issues with what you are trying to do.
PDF is an image format (an image of a document) and as such is not easily manipulated by SSIS. Generally if you are acting on a file from within SSIS, it would be a flat file of some sort, like a CSV or some other text format.
Using a script task to do all of your work within SSIS is failing to use the power of SSIS properly. If all you have in your SSIS project is a script task, you should just be using C# or VB.net directly and not involving SSIS in your project at all.
That all being said, you should access your files on server A using UNC (Universal Naming Convention) paths. You will need to pay close attention to your permissions within SSIS to make this work. When an SSIS job runs, it runs under a specific user, usually the SQL Server Agent user, and that user will need permissions to access the folder on server A remotely. When all of these permissions are set correctly, you can use something akin to \\ServerA\ShareName\Patients\ as the pointer to your directory with pdf's in it.
I am creating a simple C# CMS system using a Microsoft Access database
This is my connection string in the web.config file
<add name="VirtualCMSConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=|DataDirectory|ASPNetDB.mdb" providerName="System.Data.OleDB"/>
I have used the "Access Provider" module found here: http://blog.krisvandermast.com/UsingAccessInsteadOfSQLServerForYourASPNETApplicationServices.aspx
The problem I am having is that when I try to create a Dataset with the dataset designing I recieve an error when I try to choose the connection string for the table adapter.
Failed to open a connection to the database
"Cannot obtain provider factory for
data provider named
'System.Data.OleDb'
Check the connection and try again
Could anyone please help me on this matter.
Thanks.
Have you downloaded the .vsi, extracted it, built the SampleAccessProviders.dll and added it to your project?
Now that we have created the assembly
it's time to actually use it. Open
your Visual Studio or Visual Web
Developer Express and create a new
website. In the project you create a
new subfolder called bin. After
creation right click on it and choose
Add existing item... from the context
menu that appears. Navigate to the
place where the built assembly is. Add
it to the bin folder of the website
project. After that repeat the same
thing with the access database
(ASPNetDB.mdb) file but this time put
it in the dedicated folder App_Data
which is one of the predefined ASP.NET
2.0 subfolders.