Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>You have options. You're in the right frame of mind using expressions, but you might benefit from using configurations as well.</p> <p>To use expressions, you would need to use a Script Task or Execute SQL Task to return back the list of files you want to work through.</p> <p>You would either have to assign each returned value to it's own variable that is passed into the expression, or use a FOR EACH loop and work through a list, assigning the location of the child package each time.</p> <p>The other option is to use configurations. My preference is to use a configuration table inside SSIS. If you have the same list of packages in each environment, you could either pass in the root directory and have an expression use that: @[User::RootPackagePath] + "\PackageName.dtsx"</p> <p>Or, you could simply have one record for each child package in the configuration table and that would be passed into the package.</p> <h2>Edit based on comments:</h2> <p>I was successfully able to configure a package to change via configurations to call a package from the file system then SQL.</p> <p>I only needed to pass the Connection and PackageName for each. With SQL, it want a name from the connection manager (.\SQL2008R2 in my case) and the package name (\Package1). For the file system, PackageName is blanked out and the connection is a FileConnection in the connection manager.</p> <p>You will have to keep both in the package, but you switch between the two.</p> <p><img src="https://i.stack.imgur.com/7BPP4.png" alt="Configurations"></p> <p><img src="https://i.stack.imgur.com/pcxXZ.png" alt="Before execution"></p> <p><img src="https://i.stack.imgur.com/4Mtv7.png" alt="After configuration"></p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload