sub SqlScriptResultsToFile { my %args = ( db_srv => '', db_name => '', db_user => '', db_pass => '', sql => '', filepath => '', separator => ',', columnwidth => 20000, @_ ); my @errors; # # arg validation ... # my $osql = "|c:\\Progra~1\\MSSQL7\\Binn\\osql.exe -n -U$args{db_user} -P$args{db_pass} -S$args{db_srv} -d$args{db_name} -o$args{filepath}"; $osql .= " -s$args{separator}" if ( $args{separator} ne '' ); $osql .= " -w$args{columnwidth}" if ( $args{columnwidth} ne '' ); if ( ! open(PROGRAM,$osql) ) { push @errors, "invalid filepath [$args{$filepath}]"; return ( success => 0, errors => \@errors ); } print PROGRAM $args{sql}; close PROGRAM; return ( success => 1, errors => \@errors ); }