How To Deploy An Report And Connection String From Some Xml File
Mar 24, 2007
Suppose we are two developer.Who have SSRS install at there own system.
Our database server is intalled on our main db server.
1,First thing does it necessay to create a shared datasource.
I have a web application in which I want's to add a folder say My reports in which i will put my reports {that is .rdl file}
Then I want's to hit a url with render format as excel this will bring down my report in excel format.
2,How to configure a connection
I want's to pass the connection string in the rdl via some xml file let say myconnectionn xml file
which look like
<connection-sources>
<source name="Mycon1" default="true" >
Data Source=abcyukon;User ID=sa;Password=as;Initial Catalog=MyDbName1
</source>
<source name="Mycon2" skip="true" >
Data Source=asdsadabcyukon;User ID=sa;Password=as;Initial Catalog=MyDbName2
</source>
</connection-sources>
connection string would be where attribute default of source should be true.
I'm trying to deploy a Report Model to my local machine that contains an ODBC connection to an iSeries Access ODBC Driver. The system DSN is already setup on my PC, named exactly the same. The data set views and report models create and build succesfully but when I try to deploy using BIDS I get an error description "System.Data.Odbc" for the dataset file and the model.
I can't really see anything substantial in the log files, although not sure what one I should be looking in.
I have a report at server side, as this report will be used by three different company and each company has their own database, so is that possible to pass connection string of this report as parameter ? so that i can runtime change the onnection string of this report to display correct company data?
Hi all, I am new to SQL Server Reporting Services 2005.
I have created a report project and deployed in my report server. After deployment i also viewed all my reports in asp.net application using report viewer control.
Now my problem is i want to move my reports to another report server.. how to acheive this ?. Also database name also changed. now i also want to change connection string of all my reports in new server ?. Please let me know how to change the connection string for all my reports in a single attempt ?
Currently we have a 1.1 app that sets the connection string as a Application variable, we are wanting to change that and place it in the web config file, when I do this in 2.0 it's a simple process but in 1.1 it's different. It doesnt seem to like the <connection string> tag, does it go in the appsettings tag and if so what should it look like and how is it referenced.
The SSE Provider did not find the database file specified in the connection string. At the configured trust level (below High trust level), the SSE provider can not automatically create the database file. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.Configuration.Provider.ProviderException: The SSE Provider did not find the database file specified in the connection string. At the configured trust level (below High trust level), the SSE provider can not automatically create the database file.Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below. Stack Trace:
[ProviderException: The SSE Provider did not find the database file specified in the connection string. At the configured trust level (below High trust level), the SSE provider can not automatically create the database file.] System.Web.DataAccess.SqlConnectionHelper.EnsureSqlExpressDBFile(String connectionString) +2546149 System.Web.DataAccess.SqlConnectionHelper.GetConnection(String connectionString, Boolean revertImpersonation) +87 System.Web.Security.SqlMembershipProvider.GetPasswordWithFormat(String username, Boolean updateLastLoginActivityDate, Int32& status, String& password, Int32& passwordFormat, String& passwordSalt, Int32& failedPasswordAttemptCount, Int32& failedPasswordAnswerAttemptCount, Boolean& isApproved, DateTime& lastLoginDate, DateTime& lastActivityDate) +1121 System.Web.Security.SqlMembershipProvider.CheckPassword(String username, String password, Boolean updateLastLoginActivityDate, Boolean failIfNotApproved, String& salt, Int32& passwordFormat) +105 System.Web.Security.SqlMembershipProvider.CheckPassword(String username, String password, Boolean updateLastLoginActivityDate, Boolean failIfNotApproved) +42 System.Web.Security.SqlMembershipProvider.ValidateUser(String username, String password) +83 System.Web.UI.WebControls.Login.OnAuthenticate(AuthenticateEventArgs e) +160 System.Web.UI.WebControls.Login.AttemptLogin() +105 System.Web.UI.WebControls.Login.OnBubbleEvent(Object source, EventArgs e) +99 System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args) +35 System.Web.UI.WebControls.Button.OnCommand(CommandEventArgs e) +115 System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +163 System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5102
Version Information: Microsoft .NET Framework Version:2.0.50727.112; ASP.NET Version:2.0.50727.112
I've recently uploaded my website, http://www.bigredsongbus.com, to my host. Unfortunately, they don't support the use of SQL Server Express. So, I've purchased an addon through my host - discountasp.net. I've attached my database file to their server, now all that I need to do is to change the connection string in my .config file so that it points to the SQL Server. I don't know how to do this. Any help, please?Jeffrey Way
I have a simple package, which reads a flat file source, does some transformation, and outputs to a flat file destination. The package runs as a SQL Agent job, so I have the flat file source and OLEDB connection ticked and configured on the data sources tab.
What I would like to do is get hold of the flat file source connection string property from inside the package at run time, and use it to set the flat file destination connection string using property expressions.
The easy option is to set the destination in the agent job, but I'd like to add a date/time stamp to the destination filename.
Hi, I tried to follow the widely talked about method to dynamically populate the connection string property of my flatfileconnection manager from a variable. I keep getting the following non-fatal error.
TITLE: Microsoft Visual Studio ------------------------------
Nonfatal errors occurred while saving the package: Error at Package [Connection manager "FFCM"]: The file name ""C:ProjectsSSISHLoadTOutputOut.csv"" specified in the connection was not valid.
Error at Package: The result of the expression "@[User::CsvFullFileName]" on property "ConnectionString" cannot be written to the property. The expression was evaluated, but cannot be set on the property.
Here is what I am trying to do. I have a foreach loop that iterates through a list of xml config files and reads the config information including the destination csv file name and does a data transformation. So I created a flatfile connection to a csv file did my data mappings. Created a package level variable to hold the destination file path In the Flat file conn. manager's properties -> expression -> set the @[User::CsvFullFileName] (which even evaluates fine)
When I try to run the package I keep getting the above mentioned non-fatal error..I checked the path and it is valid. I even tried
the c:\projects\...notation and the UNC path notation...all seem to give the same error
Anyone experience this before ? any thoughts would be appreciated.
Another question regarding the frustrating SSIS stuff. Basically when I used to use a DTS task to import a flat file (comma delimited) into the database it worked fine no problems, however, for some reason the same approach in SSIS means that any string values in the file are automatically delimited with double quotes, even though I am specifying <none> as the delimitation. I have also changed the fields so that the the TextQualified is set to false.
This causes a problem because all of the information stored in the database (done by a stored procedure) contains these stupid quotes.
Is there something I am missing or haven't done correctly to get rid of the quotes
I am getting the following error when I attempt to deploy my test report.
"Failed to Deploy Report, The user 'XXX/IUSR_XXX' has insufficient rights to perform this action."
Has anyone gotten this error before, I have tried every permission option I could with the IUSR account by adding it to each folder etc ...and still get no resolve. Anyone have a fix for this bug ?
The current way I have my asp.net 2.0 web app running reports is, based on an interface the user selects the criteria for a report. The .RDL file is created dynamically based on the user's selections. I then need to SOAP the dynamically created report to the report server and then the report runs fine. BUT it requires Adminstrative rights to do this. Can this be accomplished without giving the local machine admin rights. I am sorry if this question has been answered before but i have not been up here in a while.
I have packages that must generate log errors dynamically including time of execution and the name of the task.
I make it changing the properties of the connection inserting two expressions.
1.-I alter the File Usage Type to 1 to generate this files. 2.- I alter the connection string as: @[User::myvariable] +"constant_description"+ time description+ +".txt"
The time description is : (DT_STR,40,1252) DAY (GETDATE())+"-"+(DT_STR,40,1252) MONTH( GETDATE())+"-"+(DT_STR,40,1252) YEAR( GETDATE())+" + REPLACE( (DT_STR,10,1252) (DT_DBTIME) GETDATE(),":","_") But it is not the problem
In those packages I have one connector for all the tasks and in execution time it creates one file for each of the tasks.
The problem is the way I insert in the filename the task name.
I have a pre-execute event handler in each task that modifies a string variable( myvariable) appending the task name. When I execute de package it works great but when I only execute a task, the program do not enter in the event and do not put the task’s name.
How can I put that name without using that handler? There is another handler can I use to do it that happens before the system generates the new file name and after pre-execute? Anyone knows another way to do this kind of things?
I apologize in advance for posting yet another connection failure issue. I went through quite a few posts and could not find the actual answer so here is the issue. I have a main SSIS package to call five other packages. This seems to work fine in my BIDS workstation; however, when I copied it, including the bat file that was created by dtexecui utility, to the production environment (which runs on 64 bit - probably has nothing to do with the 64 bit platform), the main package executes fine but the child packages failed with this error: Description: An OLE DB error has occurred. Error code: 0x80004005. An OLE DB record is available. Source: "Microsoft SQL Native Client" Hresult: 0x80004005 Description: "Login timeout expired". An OLE DB record is available. Source: "Microsoft SQL Native Client" Hresult: 0x80004005 Description: "An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote conne ctions.".
It seems that the child packages are still using the old connection strings from my workstation. My question is how can I pass the connection string from the batch file to all the child packages that the parent (main) package is using.
I have a report model that I am trying to deploy using report manager web service. A folder is created by the administrator to place all my SSRS reports. I deployed .rdl files using the "Upload file" function in "Report Manager". All the SSRS reports work fine but when I tried to upload .smdl file (report model file) using the Report Manager's "Upload file" function it gave me the following error message.
The permissions granted to user 'xxxxxxman' are insufficient for performing this operation. (rsAccessDenied)
Does this mean I only have permission to upload .rdl file but NOT .smdl file to my designated folder?
I am deploying programatically an Excel 2007 file to a SQL Server 2005 Reporting Server. The problem is that if a file with the same name already exists, that file isn't replaced. I would like the opposite to happen. I'm using the following code:
--Executable
set svr=http://w3sdwsqld1/reportserver set src_fld="\w3sdwsqld1\deploy\SAD\ECRANS\UPDATES_20061127_190000\Ecrans\AM\Associados\" set dest_fld="Associados" set script="\w3sdwsqld1\deploy\SADECRANS\UPDATES_20061127_190000\Ecrans\AM\Associados\PublishReports.rss" REM Sample: deploy.bat http://w3sdwsqld1/reportserver "\w3sdwsqld1\deploy\SAD\ECRANS\UPDATES_20061127_190000\Ecrans\AM\Associados\" "Associados" "\w3sdwsqld1\deploy\SADECRANS\UPDATES_20061127_190000\Ecrans\AM\Associados\PublishReports.rss" for /R %src_fld% %%f in (*.xlsx) do rs -i %script% -s %svr% -v ParentFolder=%dest_fld% -v reportP="%%~nf" -v path=%src_fld% PAUSE
--rss Code
' ' Script Variables ' ' Variables that are passed on the command line with the -v switch: ' ' (a) parentFolder - corresponds to the folder that the script creates and uses ' to contain your published reports
' (b) reportP - corresponds to the report to publish
Dim ROOT As String = "/SAD/Ecrans/Ecrans/AM"
Dim definition As [Byte]() = Nothing Dim warnings As Warning() = Nothing Dim parentPath As String = ROOT + "/"+ parentFolder Dim filePath As String = path Dim report As String = reportP
'Create the parent folder Try rs.CreateFolder(parentFolder, ROOT,Nothing) Console.WriteLine("Parent folder {0} created successfully", parentFolder) Catch e As Exception
Console.WriteLine(e.Message)
End Try
'Create shared data source 'CreateSampleDataSource("Solucao_Integrada", "OLEDB-MD", "Data Source=dwareas1;Initial Catalog=SAD_Solucao_Integrada")
'Publish the sample reports PublishReport(report)
End Sub
Public Sub CreateSampleDataSource(name As String, extension As String, connectionString As String) 'Define the data source definition. Dim definition As New DataSourceDefinition() definition.CredentialRetrieval = CredentialRetrievalEnum.Integrated definition.ConnectString = connectionString definition.Enabled = True definition.EnabledSpecified = True definition.Extension = extension definition.ImpersonateUser = False definition.ImpersonateUserSpecified = True 'Use the default prompt string. definition.Prompt = Nothing definition.WindowsCredentials = False
Catch e As Exception Console.WriteLine(e.Message) End Try
End Sub
Public Sub PublishReport(ByVal reportName As String) Try Dim stream As FileStream = File.OpenRead(filePath + reportName + ".xlsx") Console.WriteLine(reportName)
definition = New [Byte](stream.Length) {} stream.Read(definition, 0, CInt(stream.Length)) stream.Close()
Catch e As IOException Console.WriteLine(e.Message) End Try
Catch e As Exception Console.WriteLine(e.Message) Console.WriteLine("Failed to publish report") End Try End Sub --------------------------------------------------------------------------------------------------------------------
I added a connection (ADO.NET) object by name testCon in the connection manager - I wanted to programmatically supply the connection string. So I used the "Expressions" property of the connection object and set the connectionstring to one DTS variable. The idea is to supply the connection string value to the variable - so that the connection object uses my connection string.
Then I added a "Backup Database Task" to my package with the name BkpTask. Now whenever I try to set the connection property of BkpTask to the testCon connection object, by typing testCon, it automatically gets cleared. I am not able to set the connection value.
Then after spending several hours I found that this is because I have customized the connection string in testCon. If I don't customize the connection string, I am able to enter the "testCon" value in the connection property of the BkpTask.
I have made a report using Business Intelligence Development Studio in SQL2005. When I deploy that report the report server, I got the error:
**************************************************************************************************************************** A connection cannot not be made to the report server http://servername.
Addition Information:
The server committed a protocol violation. Section=ResponseHeader detail=CR must be followed by LF (System.Web.Service)
Then I use IE to open http://servername/reportserver , I get the following message:
Server Error in '/ReportServer' Application. --------------------------------------------------------------------------------
Runtime Error Description: An application error occurred on the server. The current custom error settings for this application prevent the details of the application error from being viewed remotely (for security reasons). It could, however, be viewed by browsers running on the local server machine.
Details: To enable the details of this specific error message to be viewable on remote machines, please create a <customErrors> tag within a "web.config" configuration file located in the root directory of the current web application. This <customErrors> tag should then have its "mode" attribute set to "Off".
Notes: The current error page you are seeing can be replaced by a custom error page by modifying the "defaultRedirect" attribute of the application's <customErrors> configuration tag to point to a custom error page URL.
I am trying to set up Reporting Services. I am using SQL Server 2005 on Win XP Pro.
I installed service pack 2 for SQL Server 2005. The database looks to be set up in the configuration manager. When I try to deploy the report I get the following message:
A connection could not be made to the report server http://localhost/ReportServer
When trying to open the ReportServer folder in IIS I get another message:
An internal error occurred on the report server. See the error log for more details. (rsInternalError) Get Online Help Exception has been thrown by the target of an invocation. Could not load file or assembly 'Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c' or one of its dependencies. The system cannot find the file specified.
I am not sure what SharePoint is and why I need it. I am just trying to set up simple reports on a local host SQL database and IIS on a standalone PC.
I have a report for reportserver. The preview is ok, the build is ok but when I made the deploy, I need a login, but I do not know what is this login Where I can change this login?
I am new for MS SQL Reports services. I have created a project with data source and reports using MS Visual Studio 2005 as reporting tool and MS SQL Server 2005 as database. Then I would like to deploy whole project (including data source and reports) to report web server. I put report server URL on the TargetServerURL for the project property. Then I tried to deploy it. I entered the user id and password on Reporting Services Login popup screen. Then I got error:
TITLE: Microsoft Report Designer ------------------------------
A connection could not be made to the report server http://testReports/Reports.
The attempt to connect to the report server failed. Check your connection information and that the report server is a compatible version. (Microsoft.ReportingServices.Designer)
------------------------------
The request failed with HTTP status 404: Not Found. (Microsoft.ReportingServices.Designer)
I've created a report and have the role of a 'global admin' however, when I try and deploy the report, I get an error message that I don't have permissions. What other permissions do I need? Thanks Susan
I need to deploy a report to the web, however the Web Service Identity is not set up on my Reporting services configuration and I do not know how to set it up. WE are running SQL 2005 SP1.
Does any one have any documentation or tips on this.
I deployed a report i'd been practicing on and it worked fine. I then attempted to deploy it to production and was asked for user name and password. On the server i used for production I am an admin yet my credentials did nothing, just keeps asking for user and pass again.
Along the same lines I want to know how to allow people within our network to view production reports without needing to type in credentials.
My first attempt to deploy a report from SQL Server Reporting Services failed and I'm not sure what to change to fix the problem.
The error message reads: "A connection could not be made to the report server http://localhost/ReportServer."
Then under Additional INformation, it reads: "Client found response content type of 'text/html; charset=utf8', but expected 'text/xml'."
I also had a problem after I configured the Reporting Services. To confirm that the ReportServer database had been created, I tried to access http://localhost/Reports from Internet Explorer. The error message I get is: "The XML page cannot be displayed" Then it says that "a name was started with an invalid character. Error processing resource 'http://localhost/reports/'. Line 1, Postition 2."
I'm assuming that the latter problem is causing the former, but I don't know what to do to correct it. Can you help me out?
I have a report which works perfectly well within Visual Studio in design. However as soon as I try to deploy this to the Report Server it throws the following error:
w3wp!library!6!02/12/2007-16:29:17:: i INFO: Call to CreateReport( 'Defects by Application (Inactive and Active by Severity) Chart', '/AET Deployment', def) w3wp!library!6!02/12/2007-16:29:17:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details., ; Info: Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details. ---> System.Data.SqlClient.SqlException: String or binary data would be truncated. The statement has been terminated. at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async) at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result) at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) at System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at Microsoft.ReportingServices.Library.InstrumentedSqlCommand.ExecuteNonQuery() at Microsoft.ReportingServices.Library.DBInterface.CreateObject(Guid id, String shortName, String fullPath, String parentPath, Guid parentId, ItemType objectType, Byte[] objectContent, Guid intermediateSnapshotID, Guid link, String linkPath, ItemProperties objectProperties, String parameters, Byte[] createdBySid, String createdByName, DateTime creationDate, String mimeType) at Microsoft.ReportingServices.Library.DBInterface.CreateObject(Guid id, String shortName, String fullPath, String parentPath, Guid parentId, ItemType objectType, Byte[] objectContent, Guid intermediateSnapshotID, Guid link, String linkPath, ItemProperties objectProperties, String parameters, String createdBy, DateTime creationDate, String mimeType) at Microsoft.ReportingServices.Library.CatalogItemCreator.CreateItem() at Microsoft.ReportingServices.Library.CreateReportAction._CreateReport(String report, String parent, Boolean overwrite, Byte[] definition, Property[] properties) at Microsoft.ReportingServices.Library.CreateReportAction.CreateReport(Guid batchId, String report, String parent, Boolean overwrite, Byte[] definition, Property[] properties) --- End of inner exception stack trace ---
I cannot identify any issues in the report definition which may indicate where data truncation may occur.
I've created a simple cube following the below link, but when I try to deploy the cube I am getting the below error.
[URL]
I tried to connect from SSMS to analysis service, (Connect - > Analysis Services ) I am still getting the below error. Â I saw the SQL browser is running.Â
One more strange thing I noticed is, in the services I do not see the Analysis Services ( Screen attached below)....
<b> Description: </b>An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately. <br><br>
<b> Parser Error Message: </b>An error occurred loading a configuration file: Failed to start monitoring changes to 'c:inetpubwwwrootweb.config' because access is denied.<br><br>
<b>Version Information:</b> Microsoft .NET Framework Version:2.0.50727.42; ASP.NET Version:2.0.50727.210
</font>
</body> </html> <!-- [HttpException]: Failed to start monitoring changes to 'c:inetpubwwwrootweb.config' because access is denied. at System.Web.DirectoryMonitor.AddFileMonitor(String file) at System.Web.DirectoryMonitor.StartMonitoringFile(String file, FileChangeEventHandler callback, String alias) at System.Web.FileChangesMonitor.StartMonitoringFile(String alias, FileChangeEventHandler callback) at System.Web.Configuration.WebConfigurationHost.StartMonitoringStreamForChanges(String streamName, StreamChangeCallback callback) at System.Configuration.BaseConfigurationRecord.MonitorStream(String configKey, String configSource, String streamname) at System.Configuration.BaseConfigurationRecord.InitConfigFromFile() [ConfigurationErrorsException]: An error occurred loading a configuration file: Failed to start monitoring changes to 'c:inetpubwwwrootweb.config' because access is denied. (c:inetpubwwwrootweb.config) at System.Configuration.ConfigurationSchemaErrors.ThrowIfErrors(Boolean ignoreLocal) at System.Configuration.BaseConfigurationRecord.ThrowIfParseErrors(ConfigurationSchemaErrors schemaErrors) at System.Configuration.BaseConfigurationRecord.GetSectionRecursive(String configKey, Boolean getLkg, Boolean checkPermission, Boolean getRuntimeObject, Boolean requestIsHere, Object& result, Object& resultRuntimeObject) at System.Configuration.BaseConfigurationRecord.GetSection(String configKey, Boolean getLkg, Boolean checkPermission) at System.Configuration.BaseConfigurationRecord.GetSection(String configKey) at System.Web.Configuration.RuntimeConfig.GetSectionObject(String sectionName) at System.Web.Configuration.RuntimeConfig.GetSection(String sectionName, Type type, ResultsIndex index) at System.Web.Configuration.RuntimeConfig.get_HealthMonitoring() at System.Web.Configuration.HealthMonitoringSectionHelper..ctor() at System.Web.Management.HealthMonitoringManager..ctor() at System.Web.Management.HealthMonitoringManager.Manager() at System.Web.Management.WebBaseEvent.RaiseRuntimeError(Exception e, Object source) at System.Web.HttpResponse.ReportRuntimeError(Exception e, Boolean canThrow, Boolean localExecute) at System.Web.HttpRuntime.FinishRequest(HttpWorkerRequest wr, HttpContext context, Exception e) --> --. (Microsoft.ReportingServices.Designer)
Hi! I have the report server in Share Point integrated mode. When I Deploy a report from a VS Report Server project by running Visual Studio on the machine where reporting servicers is running, everything works fine. But if I try the same thing on any other machine on the network, I get the following message:
TITLE: Microsoft Report Designer ------------------------------
A connection could not be made to the report server http://test/.