package Sybase::ESP::FileDir; use Sybase::ESP; sub handler { my $esp = shift; my ($dir) = $esp->params; $esp->print("some string"); # same as T-SQL PRINT $esp->error(25001, "some error"); # same as T-SQL RAISERROR $esp->resultset([{ name => 'size', type => 'int' }, { name => 'filename', type => 'char', size => 255} ]); if(!opendir(DIR, $dir)) { $esp->error(25001, "Can't open $dir: $!"); return -6; } while(my $file = readdir(DIR)) { # ... get file size, etc. $esp->datarow($size, $file); } closedir(DIR); return 0; }