Deployed package not reading config file

  • Sorry, I've asked this before and I've hunted all over the net for an answer. I've seen forums where other people have asked the same q and they've not got an answer yet. Please, someone, help - this is desperate :crazy:

    I've checked all the settings, but to cut a long story short, I've proved conclusively that the config file isn't being used. I've renamed every instance of it and the package still runs, but just puts the outputs in the wrong place.

    However, one of the parameters in the config is the location of the child packages. The config file deployed into production points to the correct productions location. If I rename the parent folder in the development area, the job fails, because the default path for the child packages, in the parent package variable is the development path

    My parent package has the production config file embedded into the version deployed in production. The production config has all the right info. The only thing I can see is that all the variables still have the design-time defaults. I can't see any way to remove these. I can delete the contents of the value column from the variable but as soon as I save, build or debug the package, the values are restored.

    Any ideas, please?

    Is there some sort of

  • The first couple of things I would check are the file paths and file/folder permissions. It sounds like you may have already verified the former; double-check to make sure that the directory paths are the same on the server as they are on your development machine. You must also make sure that the correct permissions are granted to the config files as well as the child package files. Can I assume you are running under a domain account? If so, add this account to the Windows ACL for the files in question and see if it resolves the problem.

    hth,

    Tim

    Tim Mitchell, Microsoft Data Platform MVP
    Data Warehouse and ETL Consultant
    TimMitchell.net | @Tim_Mitchell | Tyleris.com
    ETL Best Practices

  • I guess the problem is that the child packages don't know where to look for the configuration file. If you run a parent package either in SQL Agent or by dtexec you can specify which configuration file the package should use. Unfortunately, this information is not passed to the child packages, so they're using the values you used during development.

    When using child packages I use the following configuration scheme:

    . a system environment variable CONFIG_FILE which refers to a configuration file holding the connectionstring of DB which contains a configuration table.

    . a system environment variable PACKAGE_DIR which point to the directory where my packages are.

    . all packages are configured to use the configuration table accessible through the environment variable CONFIG_FILE

    . when running a child package the location is taken from PACKAGE_DIR

    For a working example, you can take a look at the demo project Project REAL from the Microsoft site, which follows a simular scheme.

    Success!

    Peter

  • Remember aswell that parent package variables are the very last configurations that are read at runtime when calling dtexec. XML and SQL Server configs will be read beforehand regardless of the priority you set in BIDS. A problem if your parent package variables are supposed to point to a SQL Server config table.

    Also, check your configuration manager. I've been caught out on occasion because I had a project configuration set that overwrote the settings when the packages were rebuilt.

    Kindest Regards,

    Frank Bazan

Viewing 4 posts - 1 through 3 (of 3 total)

You must be logged in to reply to this topic. Login to reply