Bandwidth Monitor
Make the Execute Package Task name dependent only
By Darren Green
Version 2000
Level Intermediate

By default the Execute Package Task will use the PackageID (GUID) to load and execute a package. The PackageID is assigned when you save a new package. A simple illustration of this is to open a package and then use Save As, giving the package a new name. If you where to replace the target or child package for some reason, this would break the Execute Package Task, as it is pointing to an old PackageID.

If you perceive this as being a risk in your environment, then you can remove the dependency on the PackageID, by blanking out the PackageID property of the ExecutePackageTask. This will cause the PackageName property to be used instead. This can be done as a one-off exercise with the Disconnected Edit feature, available on the Package menu.

If you regularly migrate packages and do not want to have to worry about this, you can add a Dynamic Properties task to perform this during package run-time. The Constant assignment type would seem the obvious choice, however it does not support an empty value. You can add a global variable, of type string, and leave the value blank. The global variable can then be assigned to the PackageID property of the Execute Package Task.