SSIS Package failure when deployed in Sql server due to Version Mismatch - sql-server

currently i have deployed a SSIS package(built on visual studio 2015) in cloud iaas Sql server ( package has script task and script component along with another ssis tasks) when executed in sql server fails with below error . Although same when executed in my local works fine without any issue.
Error
There was an exception while loading Script Task from XML: System.Exception: The Script Task "ST_71fc189aeb4a40b3aac7355e33225ca6" uses version 15.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 tried multiple of approaches mentioned below as suggested in MSDN forum but nothing worked
i)tried upgrading the package target version to 2016 and turned off validation for 64 bit
runtime(Failed).
ii) created and deployed a Dummy package with script task alone(Failed).
iii) Developed a package which was built on Lower version of Visual studio ( failed).
currently there server which i am deploying in has below version
Sql server Version : [ *Microsoft SQL Server 2016 (RTM) - 13.0.1601.5 (X64)]
Also the Vm in which server is hosted has the GAC MSIL for Script TAsk of Version (v4.0_11 ,v4.0_12 ,v4.0_13 , v4.0_14) and the Integration Service of Version 2016 is installed in the sql database server.
Any help appreciated. Thanks in advance.

Related

SSIS: script task version 15.0 script that is not supported when deployed in active batch

Error:
Description: There was an exception while loading Script Task from XML: System.Exception: The Script Task "ST_b7d198f240cd42ed864706faee2f4f58" uses version 15.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)
End Error
We upgraded SSIS packages from VS2013 to VS 2019 and tried running through active batch job and this is the error i got.
FYI- I changed deployed target version from "SQL Server 2014" to "SQL Server 2019"
When i change my target version to "sql Server 2014" it works fine.
Do i need to install any higher version for SSMS? If yes, can you please let me know what and where to download.
SSMS version 14.0
Visual studio 2019
Any solution?
Thanks
S
Run this query in SSMS to find out your SQL Server version.
select ##VERSION
Open your SSIS package in Visual Studio.
Right click on your project in Visual Studio and select properties.
Go to Configuration Properties > General > Deployment Target Version > TargetServerVersion.
Select appropriate version of SQL Server here.
Rebuild and re-deploy it.

The Script Task Uses Version 15.0 that is not supported in the release of integration services

My team is planning to move from SQL Server 2014 to 2016. Currently, SSIS package is created in VS 2013 and deployed on SQL Server 2014. For testing i tried to deploy the package in SSMS 17.3 (Integration services 13.0). The package is successfully deployed but when i try to validate the package, the get the following error:
After reading some solutions on the internet, I deployed the package from the following path:
%ProgramFiles%\Microsoft SQL Server\130\DTS\Binn
The package was successfully validated (without modifying ispac file). As per my understanding, the script task is created with VSTA major version 15 in VS 2017. I tried to open the solution in VS 2015 and rebuilt the solution with SQL server 2017 as target server. Before deploying the package on SSMS 17.3, I made sure that the dtsx file contains 15 VSTA major version.
After verifying, i deployed the package on SSMS 17.3 which is using the following path:
%ProgramFiles%\Microsoft SQL Server\140\DTS\Binn
I validated the package but i got the same error. As per my understanding, if i build the solution by selecting SQL server 2017 as target version, it should be successfully validated. How can i resolve this issue if i want to use SSMS 17.3 for deployment?
In my case the Target Server Version was set to 2017. I updated it to 2016 and it worked.
After searching for a while on this issue, it looks like this is a common issue of SSMS 17.x you must install 16.x versions to avoid this error or deploy with SQL Server 2016 deployment tools (Microsoft SQL Server\130\DTS\Binn) as you mentioned:
For more information, read the discussions below, they contains very helpful
SSMS 17.3 and VS 2015 deployment issue
Difference between .ispac and SSDT deploy

SSIS - The script task ... use version 15.0 script that is not supported in this release of Integrated service

Hi I'm looking for some guidance.
I've developed an SSIS project with a couple of script tasks and script components using visual studio 2015 for targeted version 2016.
I have two environment server A and server B both have SSIS 2016 SP1 installed on it.
I have done a project deployed of the packages to Sever A and tested the packages everything executed perfectly.
However when I deployed the packages in SSIS_DB from Server A to Server B I get these errors in my execution report.
The component metadata for "script component, clsid { }" could not be upgraded to the newer version of the component. The PerformUpgrade method failed
2
There was an exception while loading Script Task from XML: System.Exception: The Script Task "" uses version 15.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)
The interesting part is if I deploy my packages directly from visual studio to Server B the packages executes correctly with no issue.
So there seems to be inconsistencies between server A and Server B.
A small background to this is that when both servers were built Server A had Microsoft SQL Server 2016 (SP1-GDR) and Server Microsoft SQL Server 2016 (RTM)
but they both now have Microsoft SQL Server 2016 (SP1-GDR) after Server B was updated.
I'm not sure how the upgrade was done by my suspicion is that the SSIS on server are different but I can't seem to prove it.
when I check the version they both seem to return same or similar meta data
The right answer is here: https://andyleonard.blog/2017/09/ssis-version-15-0-script-error/
In my case the problem was the setting at the project level “TargetServerLevel” set to “SQL Server 2017”. The correct value must be “SQL Server 2016”. Once the value is changed and the project redeployed errors desappear.
I believe one of developers in my team used VS 2017 when added the project. All other tasks and components, excep script, were fine even with incorrect server version and the problem appeared only when I had to use script tasks and components.
To fix the problem open project parameters => Configuration Properties => TargetServerVersion
Select “SQL Server 2016”, then deploy to the server.
This was caused by SSMS. I don’t know what’s going on under the hood but During the deployment I was using SSMS 2017 which seems to be upgrading script components in my packages. I changed to use SSMS 2016 and this issue disappeared
Just summarizing some things because there are some reasons for facing this problem:
Your are deploying a package with Target Version Definition for another SQL Server
You are deploying a package which contains a script task with not same SSMS version as SQL Server Version
If your package doesn't contain a script task for example, then any version of SSMS can deploy the package to any version of SQL Server via SSISDB catalog. Not sure why is this happening. Seems that you can deploy and execute packages while making sure that the package target version is supported from SQL Version, but also if you have a ScriptTask inside you need to be super careful and make sure also that the integration services version of SSMS is the same with SQL Server version.
I will open a question to Microsoft just to be sure why the script task has this treatment. Maybe is because the script task is Framework dependent.

ERROR: To run a SSIS package outside of SQL Server Data Tools you must install Standard Edition (64-bit) of Integration Services or higher

I have VS2015 Community and SQL Server 2016 Developer installed. Using the MSFT link, I've ensured to download the latest version of SSDT, which appears to install without error (though, Integration Services do not show in the SQL Configuration Manager). Using previously validated projects that creates and executes SSIS packages, I cannot get the same code to work with the current setup.
The error showing when I debug:
Component: SSIS.Pipeline
Error: To run a SSIS package outside of SQL Server Data Tools you must install Standard Edition (64-bit) of Integration Services or higher.
I've uninstalled, reinstalled, repaired, modified, etc., but cannot get the package to build and execute. Has anyone seen similar issues with the setup mentioned?
As per my understanding
You need to install SQL Server and make sure to select Integration Services. Then run DTExec.exe from the new SQL server installation folder.
I have exactly the same issue. I ended up installing SQL Server 2017, SSMS 17.4 and VS 2017, SSDT for VS2017 and successfully run my packages FINALLY! It looks like SQL server and SSDT/VS version has to be "matched". Not sure if they have to be the same version though. But this is quite annoying.

SQL Server Visual Studio SSIS Versioning

Something similar to my problem has been posted before but not quite like this. I have Visual Studio 2015 Version 14.0.25431.01 Update 3. I develop packages with this and deploy the project to SQL Server 12.0.4100.01. The packages run fine. Then I try to deploy from the ispac and I get the error:
There was an exception while loading Script Task from XML: System.Exception:
The Script Task redacted 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 checked the xml in Visual Studio and unpacked the ispac to compare the code in each and all the versioning code is the same. Apparently there is an upgrade/downgrade operation happening when deploying from Visual Studio but doesn't happen when deploying from the ispac. Is there a way to create an ispac that is version compatible?
You can change the project property TargetServerVersion : SQL Server 2012/2014/2016
The script language will be changed automatically to Microsoft Visual c# 2010/2012/2015.
Note: First copy code from the script task and save it.

Resources