system() returns the exit value of the command being run, which (on *nix systems, anyway) will be zero on success, so "system($foo) or bar()" will do bar() when $foo succeeds, not when it fails.
Comment on Re^3: lpr command from perl not working.
Would it be better if i assigned the value to a variable, tested it to check if its a 0 or a 1 and then did my error reporting? BTW i can concurrently check the as400.And I havent recieved the file