Conditional Split not working when running SSIS package from SSMS - sql-server

I have a SSIS package that works fine from VS2015 but when I try to run it from SSMS it fails with the error:
To run a SSIS package outside of SQL Server you must install
conditional split of integration services or higher.
I did a little research and also created a new package with only a source and destination which worked fine. Once I added the conditional split it failed again. It seems like this may be a version conflict between the data tools, SSIS and SQL Server. I have other packages with conditional splits and other tasks that are executed in SQL Server such as Execute SQL tasks. The only reason I can think that they work is because they were created in a previous version of SSIS then upgraded.
I am using Visual Studio 2015 Community with
SQL Server Data Tools 14.0.61021.0 (SQL Server 2016 version which is backward compatible)
SQL Server Integration Services Designer 13.0.1701.8
On the SQL Server it says the SSIS version is 12.0.2269
My version of management Studio is 12.0.2000.8
Any ideas on what might be causing this error?

Related

SSIS Package gets corrupted after importing from local machine

I have upgraded from SQL Server 2016 to SQL Server 2019 recently. Before that, I have used Visual Studio 2015 & SSDT on my local machine to create SSIS Packages and deployed them with SSMS 2016 onto the SSIS Server (File System).
After the server upgrade to 2019 I am now using Visual Studio 2019 Community Edition with the extension "SQL Server Integration Services Projects (v3.15)". When I try to deploy the package with SSMS 18.10 from my local machine to the new SSIS Server the package can't be executed. When I manually copy the SSIS package onto the server and use the same SSMS 18.10 installed on the SQL server I can deploy them without any problems.
I have checked what happened to the package after the import from my local machine. It seems that some kind of server-side upgrade process kicks in and replaces all the SSAS processing tasks in the package with a strange task called "SSIS.ReplacementTask", which gives me the error:
The task with the name "Analysis Services Processing Task" and the creation name "SSIS.ReplacementTask" is not registered for use on this computer. Contact Information: ...
I can connect to my SSIS server with SSMS 18.10 without any error messages. However, when I check the DTEXEC version on my local machine, it still says that I am on version 13 (SSIS 2016). Could this be the cause of the problem?
Update
The TargetServerVersion is correctly set to 2019. Still either the SSIS Server or my local SSMS thinks it needs to change/upgrade the package.
I am slowly running out of ideas. Thanks for any help in advance!
Make sure that the package TargetServerVersion property is set to SQL Server 2019:
How to change TargetServerVersion of my SSIS Project

SSIS package deployment on SQL Server 2016 using SSMS 2017

I am running into a problem as outlined in this artice: Execution error while validating script component. I am using Visual Studio 2015 to create SSIS packages and also upgrade old 2008 packages to be supported on SQL Server 2016. First, Visual Studio was able to upgrade the packages and I can run them successfully from within VS2015, but not as a job on SQL Server 2016 using SSMS 2017.
The article says to use the same version of SSMS as your SQL Server and your Integration Services package version. Is this indeed the case even with SQL Server 2016, Integration Services deployment set to 2016, and SSMS 2017?
I get the error that says the script task is corrupted. I have tried it using deployment versions 2016 AND 2017. Here is the error for deployment version 2017 (similar errors in 2016):
Note that I even went so far as to completely rewrite new script tasks using the same code as the old ones. I did have to add a reference to some .NET stuff for Directory Services though. But it compiled after I made that change.
Any help is appreciated!
Well I wasn't able to get SSMS 2016 on the server due to delay in change request but I did do a deployment from within Visual Studio to the destination server and all is well. I found that here: Deploying SSIS Package to SQL Server 2016
I didn't install anything on my destination server though. I just deployed from directly within Visual Studio on its server. Some of my scripts had to be rewritten but it wasn't much of a headache.

SSIS Package Error: To run a SSIS package outside of SQL Server Data Tools

I am getting below exception while executing package with "Script Task" from my .NET application, if I remove script task from package then it's running fine.
To run a SSIS package outside of SQL Server Data Tools you must install Script Task of Integration Services or higher.
When I am executing package with script task from SSDT 2015 then it works fine as expected. Also, checked service "SQL Server Integration Services 11.0" which is also running fine.
I have installed following:
SQL SERVER 2012 with all the features
SSDT 2015 for developing packages (deployment target version is selected to SQL SERVER 2012)
Visual Studio 2017 for calling the Package from my application
I think it's problem of version but I am not able to find the solution yet.
Any help would be great!!

Will SSDT-BI work with SQL Server 2008 R2?

Can some one tell me whether the SSIS packages developed in Visual Studio 2012 or 2013 works in 2008r2 server or not ???
If yes, did any other software needs to be installed in the 2008r2 server?
Deployment is not any concern here. I just want to run the packages in 2008r2 server via sql agent job
Please help.
No. Backwards compatibility is not an option. A package built in 2014 will not run on 2012. A 2012 package will not run on 2008 and a 2008 package will not run on 2005.
However, forward compatibility does exist so a 2005 package will run on 2008. 2008 will run on 2012, 2012 on 2014.
While I don't think this is your scenario, if you have the 2012/2014 SSIS packages deployed to a 2012/2014 server, you could run them from the 2008 server's SQL Agent task. It'd just be a matter of scripting the catalog.create_execution and catalog.start_execution BOL
Having that SQL Script, add a job step task of SQL and point the context over to your 2012/2014 server.
MSDN at https://msdn.microsoft.com/en-us/library/mt204009.aspx contains an overview of all the supported VS/SQLServer version combinations.
Basically, for SQLServer2008R2 SSIS development you will need BIDS (from the SQLServer installation).
The VS2012/VS2013 tools support only SQLServer2012/2014 SSIS development.
For VS2015, the Februari preview release of the SSDT-BI tools is intended to support multi-targetting SSIS package development (but only SQLServer2012-2016, no 2008R2), see also in the comments at http://blogs.msdn.com/b/ssdt/archive/2015/12/16/sql-server-data-tools-preview-update-for-december-2015.aspx
Note there is also something called BIML which is able to generate SSIS packages for different versions of SQLServer (incl 2008R2) from the same source code, so you could possibly use VS2012/VS2013 with BIDSHelper and then as a last step maybe generate packages for SQLServer2008R2.

How can I create a SSIS package for SQL Server 2008 in a SQL Server 2014 environment?

We have SQL Server & SSIS 2014 in our local environment, and most of SQL Server 2014 in our production environment, except for the SSIS, which is still 2008.
So we're creating SSIS packages locally which can't be deployed to production, because the SSIS packages are not backwards-compatible.
Is it possible to create the packages locally to target SSIS 2008? If so, how?
Just to note, the SSIS packages are defined in Visual Studio 2008, so I don't understand why they're dependent on SQL Server 2014.
The format of the SSIS packages has change from SSDT 2012 to 2013/2014. I was facing that situation recently before a Go Live. A colleague had developed SSIS packages in SSDT 2013 with SQL Server 2012 as the target environment for the deployment. While the development and execution from within SSDT 2013 with SQL Server 2012 is no problem, the package is not deployable within the SSIS catalog of SQL Server 2012. SSIS Packages are NOT downward compatible. ...at least with respect to the deployment in the SQL Server SSIS catalogue.
Open the dtsx file in the editor and check the value for "PackageFormatVersion". Possible values are:
VS 2013/2013 = 8
VS 2010/2012 = 6
Unfortunately, you cannot open SSIS packages with PackageFormatVersion=8 in SSDT 2012 or lower in order to downgrade a package. You could of course figure out, how the format has changed. I started to do this but gave up after a while. The best possible solution was to redevelop the package in SSDT 2012. Argh!
So, when developing SSIS packages you must take care of the target SQL Server version and then decide to choose the right SSDT version.

Resources