Sunday, September 23, 2012

Powershell script that checks a folder for new files to process by a SSIS package

Using the script below, everytime a new file is deposited in the folder "MyFolder", the powershell script detects that and starts the execution of a SSIS package.

$folder = 'D:\...\MyFolder'
$filter = '*.*'
$cmd = '
DTExec /FILE D:\....\Package.dtsx'
$fsw = New-Object IO.FileSystemWatcher $folder, $filter -Property @{
 IncludeSubdirectories = $false
 NotifyFilter = [IO.NotifyFilters]'FileName, LastWrite'
}
$onCreated = Register-ObjectEvent $fsw Created -SourceIdentifier FileCreated -Action {
 invoke-expression -command $cmd
}