I need to build the SSRS project (.rptproj) without using devenv utility. I have used devenv to build from command line but can not use the same on build server as it is not having Visual Studio. Is there any way we can achieve this using command?
I am using TargetServerVersion - SQL Server 2008 R2, 2012 or 2014
I tried to run it using the msbuild(v4.0) command but getting the error message - .rptproj is not supported by MSBuild and can not be build
Earlier I was using VS 2015 for solution creation and SQL server Data tool 14.0.61 for SSRS project. using msbuild build command I was getting error message saying that .rptproj is not supported by msbuild so not build.
To resolve this issue, I referred the link posted by Moshe and
I installed VS 2017 for solution creation and SQL Server Data tool 15.8.2 for SSRS project and now I am able to build the SSRS project using the msbuild command.
Please note after installation you will see the set of dlls in folder C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\Reporting Services
Related
The error:
There was an exception while
loading Script Task from XML: System.Exception: The Script Task
uses version 14.0 script that is
not supported in this release of Integration Services. To run the
package, use the Script Task to create a new VSTA script. In most
cases, scripts are converted automatically to use a supported version,
when you open a SQL Server Integration Services package in
%SQL_PRODUCT_SHORT_NAME% Integration Services. at
Microsoft.SqlServer.Dts.Tasks.ScriptTask.ScriptTask.LoadFromXML(XmlElement
elemProj, IDTSInfoEvents events)
I'm doing exactly what it says, but it does not help.
Any solution?
This worked for me:
Install SSDT-BI for Visual Studio 2013.
Open your solution in Visual Studio 2015.
Select your SSIS Project in the Solution Explorer.
In the Project menu select Properties.
In the Property Pages dialog select Configuration Properties -> General
Under Deployment Target Version change the Target Server Version to "SQL Server 2014."
Clean and rebuild solution and redeploy.
In the revised version of the SSDT (now 14.0.61x), there is a fix.
Install new version. (SSDT For download)
Right click project > Properties > Configuration Properties > General > TargetServerVersion - Update to SQL Server 2014 > Redeploy.
Even though this question is a bit dated, I am getting the same error on the targeted server, but in a slightly different context:
created an SSIS package targeting SQL Server 2014
add a script task
deployed it to SQL Server 2014
package validation failed with "The Script Task uses version 15.0 script that is not supported in this release of Integration Services..."
I used the following environments for the development and deployment:
VS2015 Update 3
SSDT v 17.1
Deployed using SSMS v17.1
The current SSDT version 17.1 provides a support to target SQL Server 2014 - SQL Server vNext. The current version of the SSDT resolves the issue in the question by providing targeted option in the project configuration as already mentioned.
I noticed that the above SSIS project works on the targeted server if deployed with:
VS 2015 (Select SSIS Project -> Right Click -> Select Deploy)
SQL Server 2014 SSIS Deployment Wizard (probably available only if you have a local instance installed; found in the Microsoft SQL Server 2014 Windows Start Menu)
If you try to deploy it using SQL Server Management Studio v17.1 version of the SSIS Deployment Wizard the deployed package fails. The deployed script task is deployed as version 15.0 that is not supported on the SQL Server 2014.
If I deploy the same package using SSIS Deployment Wizard from Microsoft SQL Server vNext CTP2.0 Windows Start Menu, which probably got added by installing SSMS 17.1, the deployed package script task fails with same error.
In summary:
The latest SSDT v17.1 for VS2015 resolves above issue by providing targeted server configuration options
It needs to be deployed through Visual Studio 2015
It can be deployed using the targeted server version of the SSIS Deployment Wizard
If using the latest SSMS v17.1 and build-in SSIS Deployment Wizard the SSIS package Script Task will fail on the targeted server for being upgraded to SQL Server 2017 version
Maybe this is by design, but it is very confusing and caught me of guard. Just in case this is a bug I submitted a bug report.
I am trying to deploy a Script component to SSIS toolbox in the Data Flow for reuse. I'm using visual studio 2010, and SQL server 2014.
I have created the script, Signed the assembly, used Gacutil.exe /i on the DLL file to add it. It now recedes in the GAC_MSIL folder under it's strong name folder.
The above procedure is the current way I'm trying to get it to work, but I have additionally tried to use SN utility to generate a strong name and add this key back into the build. Didn't work any better than the above procedure. Is it supposed to be next to impossible to add custom components to SSIS?
In my simple mind it should be just sign, build, GAC and done.
The editor for SSIS packages is tightly bound to the version of the SQL Server you're working with.
As a general reference, we have the following
VS 2005 = SQL Server 2005 {90}
VS 2008 = SQL Server 2008 & SQL Server 2008 R2 {100}
VS 2010, VS 2012 = SQL Server 2012 {110}
VS 2013 = SQL Server 2014 {120}
VS 2015 = SQL Server 2016 (once it's RTMed) {130}
Now, you could be using VS 2010 to build your custom DLL, as long as you've referenced the correct version of the SSIS DLLs, and then used SSDT-BI edition for VS 2013 to author your SSIS packages --- that's fine.
Making it work
Your current build and deploy cycle is what you need to do on your servers. That will allow SSIS to find the components when it runs.
However, you need the development experience so you need to also add that same DLL into the correct folder in your SQL Server installation. For SQL Server 2014, a custom "Script Component", or anything that lives in the data flow, would also need to be copied to
C:\Program Files\Microsoft SQL Server\120\DTS\PipelineComponents
If you've done it properly, then items automatically show up for VS 2010+. VS 2005/2008 required an additional step of explicitly adding tasks and components into the Toolbox.
If they aren't showing then you've either
built your DLL against the wrong version of the SSIS framework
using the wrong version of SSIS tools
not deployed the DLL to both the GAC and the correct DTS subfolder based upon your SQL Server version.
Clear as mud?
My development environment: SQL Server 2014, Visual Studio 2015, SQL Server Data Tools Preview (September) for Visual Studio 2015
I have a custom SSIS source component that I can successfully use on another SQL 2014 box with VS 2013 and SQL Server Data Tools - Business Intelligence. However, this component does not show up in the toolbox in VS 2015 Integration Services project.
The component is located in c:\Program Files (x86)\Microsoft SQL Server\120\DTS\PipelineComponents. It is also registered in GAC.
Do I need to make changes to the component so that it will work with VS2015?
More general question: how to troubleshoot issues like this?
I've managed to get the problem of adding a custom SSIS component to a Visual Studio 2015 SSIS package. This maybe have been enabled by the release of SQL Server 2016 CTP 3.2, but I thought that I'd put this out there in case it helps anyone.
First of all let me just let everyone know what system I'm using in case this doesn't work for everyone:
My system is: Windows 8.1 64 bit
Visual Studio Community 2015 Version 14.0.24720.00 Update 1
Microsoft SQL Server Integration Services Designer Version 13.0.900.80 (I've installed the SQL Server 2016 CTP3.2 so the version of SSIS is this version - this may be part of the problem and it isn't a fully released product and this may be a bug)
Microsoft .NET Framework Version 4.6.01055
In my c# class project I used the .NET Framework 4.6
(Project Properties->Application).
I made sure that I added to the gac using the gacutil.exe in the following folder:
C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6 Tools
and I copied the dll to the following folder:
C:\Program Files (x86)\Microsoft SQL Server\130\DTS\PipelineComponents
After refreshing the SSIS toolbox the component now appears in the Common folder/subsection.
I hope this works for everyone or is at least of use to anyone else who has had this problem. I was so happy after trying nearly everything and it coming up blank to see the component appear in the SSIS toolbox and know how frustrating this kind of thing can be!!!
Matt
In VS2015 Solution Explorer, right click on the .dtproj file and select properties. On the General Tab choose the SQL Server version that matches the component version. If the component worked on VS2013, choose 'SQL SERVER 14' when opening the package in VS2015.
I have several custom SSIS Tasks and Components implemented for SQL Server 2008 R2. Now we want to switch to SQL Server 2012. First I tried just to open my DTSX packages in VS 2010 and no package could be loaded. Does anybody knows what I have to change in my projects that I can use my tasks and components with SQL Server 2012.
Thanks
Assuming you've installed SQL Server 2012 and SQL Server Data Tools, you should be prompted to upgrade your solution when you open it. I'm also assuming your 2008R2 assemblies are setup for signing.
After going thru the upgrade wizard you need to do several things:
Change your custom tasks and components to target the .NET 4
Framework in each of the project properties, in the Application Tab,
under Target framework.
Update the assembly references in each of your projects to point to
the appropriate SqlServer dlls.
Build and copy your project dlls to the appropriate directory,
depending on what kind of components you are updating, i.e. Program
Files (x86)\Microsoft SQL Server\110\DTS\PiplelineComponents
Program Files (x86)\Microsoft SQL Server\110\DTS\Tasks
Register your components in the GAC.
Close Visual Studio and then reopen; open your SSIS packages and
refresh the SSIS Toolbox, by right clicking in the tool box and
selected Refresh Toolbox.
You can get more detailed info here http://msdn.microsoft.com/en-us/library/ms345161.aspx
I am trying to write a .NET program so I can execute a Dts pacakge but I cannot find the Microsoft.SqlServer.ManagedDTS.dll reference so I can then use the namespace Microsoft.SqlServer.Dts.Runtime.
However I have SQL Server 2008 Developer edition installed on my development machine along with Visual Studio 2008 and 2010. Therefore it should be there, What have I missed?
Many thanks
Mike
In References, browse to this directory:
C:\Program Files\Microsoft SQL
Server\90\SDK\Assemblies
hopefully you'll find it there.
The above was for SQL Server 2005. It should be located in your GAC. Have a look in:
C:\Windows\assembly
for the DLL as Visual Studio won't list all of the DLLs so you'll have to browse to it.
For Windows 7 "Microsoft.SqlServer.ManagedDTS" can be found in following path
"C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.SqlServer.ManagedDTS\"
For SQL 2005
C:\Program Files\Microsoft SQL Server\90\SDK\Assemblies\Microsoft.SQLServer.ManagedDTS.dll
For SQL 2008
C:\Program Files\Microsoft SQL Server\100\SDK\Assemblies\Microsoft.SQLServer.ManagedDTS.dll
If you still can't find the Assembly, make sure you've installed the Client Tools SDK.
One more option to try if above given solution does not work.
Add a script Task to SSIS ControlFlow Panel. Double click to configure.
Click on Edit Script... Script page will open as project in Visual Studio.
Find the reference Folder under the project.
Here Microsoft.SqlServer.ManagedDTS.dll will be added for you by default.
Click on the Dll and go to property window.
Copy the path.
This worked for me after a trial and error. I am using VS Data Tools trial version.
For dotnet Framework 4.0
C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.SqlServer.ManagedDTS\v4.0_11.0.0.0__89845dcd8080cc91