• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1476
  • Last Modified:

convert ssis from v2012 to v2008 R2

We have our production server on SQL server 2008 R2 and the plan to upgrade to SQL server 2012 has been delayed because the upgrade on the development environment has ETL performance issues. So, we need to convert some of the SSIS packages that we developed for SQL server 2012 using dev environment, to be to be deployed to SQL server 2008 R2 .

What is the fastest way to convert those SSIS packages? I have installed Visual studio 2008 with BIDS for Sql 2008 R2 on my local machine.

Here is what I tried:
I opened the SSIS package for SQL 2012 on VisualStudio 2010 and midified the code (in code view) as follows:
1)  changed the references from 2012 to 2008
2) changed the target framework to 3.5
3) replaced SSIS_ST110 to SSIS_ST100
Now when I try to open this package on Visual studio 2008 I get the following error:

===================================

The package failed to load due to error 0xC0010014 "One or more error occurred. There should be more specific errors preceding this one that explains the details of the errors. This message is used as a return value from functions that encounter errors.". This occurs when CPackage::LoadFromXML fails.
 (Microsoft Visual Studio)

------------------------------
Program Location:

   at Microsoft.SqlServer.Dts.Runtime.Application.LoadPackage(String fileName, IDTSEvents events, Boolean loadNeutral)
   at Microsoft.SqlServer.Dts.Runtime.Application.LoadPackage(String fileName, IDTSEvents events)
   at Microsoft.DataTransformationServices.Controls.PackageProtectionUtils.<>c__DisplayClass4.<LoadPackageFromFile>b__3(String password, IDTSEvents events)
   at Microsoft.DataTransformationServices.Controls.PackageProtectionUtils.LoadPackageWithPassword(PackageLoader loader, IWin32Window dialogParent, String packageName, Boolean askOptionalPassword, String& packagePassword, DtsProtectionEventListener errorListener)
   at Microsoft.DataTransformationServices.Controls.PackageProtectionUtils.LoadPackageFromFile(String file, IWin32Window dialogParent, Boolean askOptionalPassword, PackageUpgradeOptions packageUpgradeOptions, String& packagePassword, DtsProtectionEventListener errorListener)
   at Microsoft.DataTransformationServices.Controls.PackageLocationControl.LoadPackage(DtsProtectionEventListener errorListener, PackageUpgradeOptions packageUpgradeOptions, String& packagePassword)
   at Microsoft.DataTransformationServices.Project.Controls.AddExistingPackageForm.AddExistingPackage(AddExistinngPackageEventListener eventListener)
   at Microsoft.DataTransformationServices.Project.Controls.AddExistingPackageForm.AddExistingPackageForm_FormClosing(Object sender, FormClosingEventArgs e)


Thanks for your help.
0
patd1
Asked:
patd1
1 Solution
 
DcpKingCommented:
You can't auto-convert a 2012 package to 2008R2 - in fact, you can't auto-convert any of MS' SSIS packages backwards between any versions - only forwards. The option simply doesn't exist!

Your best way - from experience of just this thing - is to sit yourself down with two development machines beside each other. Have one with 2008 and the other set up with 2012; bring up the 2012 solution in one and start a new 2008 solution in the other. Use the 2012 version as a script and replicate it in the 2008 system.

Why two machines? Because SSIS versions can overwrite each other in installation, meaning that it can be difficult to get both running on the same machine. 2005 and 2008 were like that: I never tried running 2008R2 and 2012 on the same machine - I had better things to do with my time :)

Good luck

Mike
0
 
patd1Author Commented:
I wish there was a way.
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now