Tuesday, June 17, 2008

File Path Expression Tip

Expressions in SQL Server Integration Services packages allow you to dynamically change values during the execution of a package. Each time you create an expression, it's as though you're creating a little program to retrieve the desired value. One use of an expression is to split a value into chunks that can be configured and used in multiple places.

A common example is separating out file information into a file path and a file name, where the file path is the reusable piece. The file path can then be managed through a configuration and modified at any time.

The expression usually looks similar to this:
    @[User::FilePath] + @[User::FileName]
or maybe this:
    @[User::FilePath] + "\\" + @[User::FileName]

The obvious problem is that you need to remember to add (or not add) the back slash on the file path. By extending our "little program", we can handle either situation at the same time, like so:
    @[User::FilePath] +
    (RIGHT(@[User::FilePath], 1) == "\\" ? "" : "\\") +
    @[User::FileName]

This is just a fun little tip to help you in your development!

Version: SQL Server 2005 SP2

2 comments:

Englestone said...

Nice little tip, cos lets face it we all forget those slashes sometimes!

-- Lee

Jessica M. Moss said...

I'm glad that you found it useful, Lee!