Copying SSIS Packages to a New Project

by | Nov 6, 2014

Jonathan-Sellar-SunAs is common in a data warehouse solution, over time the primary SSIS Project has grown dramatically as new packages have been added and a definable split in the function of those packages has appeared. To make deployment easier for one of our customers we have decided to split a SSIS project up along this functional line. BIDS allows us to cut and paste packages from one project to another but this doesn’t actually physically move the underlying files from one project folder to the another nor does it drag those project defined connection managers with it. Further to this only packages can be moved in this way, connection managers can’t.
To overcome these limits this is what I did:

  1. Created a new Project in the Solution.
  2. Copied the physical package files to a temporary folder.
  3. Copied the required physical Project Connection Manager files from the original project folder to the new project folder.
  4. Copied the physical project parameter file from the existing project folder to the new project folder.
  5. Edited the original project definition file and copied out the required connection manager definition tags from within the XML.
  6. Edited the new project definition file and pasted in the connection manager definition tags from within the XML – don’t forget to modify the opening ConnectionManager tag to remove the closing slash and add a closing tag at the end of the connect manager definition tags.
  7. Used the Add existing package dialogue to import each of the packages from the temporary folder created in 2.
  8. Checked each package to confirm that connection managers had been mapped as expected and no other issues were created in the move.

This worked well and the connection managers plumbed up as expected. The only drawback we have now is that the SVN history for the moved packages has become disconnected.
Have you had any experience with this – is there a better way? Leave a message in the comments below.
Cheers
Jono
We run regular Agile courses with a business intelligence slant in both Wellington and Auckland. Find out more here.

3 Comments
  1. MK

    Jono,
    I tried your way and got stuck on #5, so I added the existing project through File>Add Existing Project and then an Upgrade Wizard appeared. I saw all my packages from the project, they had a check box next to them and all were checked. I clicked Next and it upgraded all with no warnings.
    This was in VS 2012.
    thanks.
    MK

    Reply
  2. Frank

    Hi,
    Based on MK’s findings I did the following in VS2015.
    Right Click Project -> Add -> Existing Package.
    You can now choose were you get the package from, in this context ‘File System’ would be the most obvious choice.
    In the bottom press the ‘…’ button which is situated on the end of the Package Path field.
    Browse to your package and select it.
    This did the trick for me; it copied the package including connection managers to my project.
    Also, using Perforce, this also did not mangle up my file history.
    Good luck!
    Frank

    Reply
    • Jack Prichard

      Thanks,
      Jack

      Reply
Submit a Comment

Your email address will not be published. Required fields are marked *