Harry Leboeuf
Harry Leboeuf

Reputation: 59

How to deploy SSIS Package VS2012, DataTools 2014 to a SQL Server 2012

I have VS2012 with the latest datatools. Almost all our SQL Servers are 2014 and deploying packages works fine.

Now we have one server that has to stay on 2012 due to a external vendor. When I deploy my packages and try to run it I'm getting the error that version number is higher ...

I found plenty of cases on how they solved it, but even installing SSIS 2012 on my machine, trying to deploy with the deployer from 2012 nothing works.

The ISDeplymentWizard from the 2012 version results in a xml read error.

Anybody got a suggestion how I could deploy?

Upvotes: 0

Views: 459

Answers (1)

billinkc
billinkc

Reputation: 61201

How do I tell what version of SSIS this package is?

The only accurate way to identify the version an SSIS package is to open it and find the PackageFormatVersion value.

PackageFormatVersion

  • 1? = 2005
  • 3 = 2008
  • 6 = 2012
  • 8 = 2014

The clever ones amongst you might say "I can use the SSIS libraries themselves to inspect that value." When you do that, you'll learn that every SSIS package you can open is going to be the same version as your SSIS library. This is because packages are forward compatible.

A 2005 package will run on 2014 installation. The package is opened, upgraded in memory to the current version, [executed] and then the modifications are discarded. So, if you ask the libraries to report the value, that operation won't happen to the package on disk. Instead, it'll be the in-memory/temporarily upgraded version. that's never bitten me in the butt

There was a codeplex project for moving a 2008 package to 2005. No one has attempted to do the same for any other version of SSIS packages (that I'm aware of).

Changing the number won't magically downgrade a 2014 to 2012. If I had to support a 2012 and 2014 environment with SSIS packages, I'd build everything as 2012. They'll get upgraded when deployed to the 2014 servers.

If I had to support 2008/2005 in that mix, I'd likely use something like Biml to describe my SSIS packages and then use the free add-in BIDS Helper to emit my packages. I open the Biml with VS 2008 and out comes a 2008 version package. Same Biml, opened in VS 2014 emits a 2014 version package.

Upvotes: 1

Related Questions