PL/SQL implementation of FTP. OpenSource. Free to the public.
Why FTP from PL/SQL? Good question and here are some reasons why you might consider doing just that :
1) You are already in a stored procedure environment, why engineer some host shell execution when you don’t need to ?
2) Why would you email from PL/SQL instead of using O/S based mail scripts ? Whatever your answer might be for that most likely would be similar to why you would also FTP from PL/SQL.
3) PL/SQL offers powerful exception handling and logic coding that might be more complicated using shell scripts and the like.
4) The solution is extensible… you see a feature not listed… add it.
5) Does not require a file to actually be written out if you use the LOB API calls… all of it can be performed in memory from getting it remotely and storing or emailing it elsewhere or for that matter “slingshot” it to another remote server…
6) Just because you can.
This latest edition of the FTP_INTERFACE has been modified to support LS/DIR commands.
The LS command provides directory results of remote server in filename only format. The
DIR command provides directory results of remote server in full detail (long version).
* Local <=> Remote operations
* LOB <=> Remote operations
* Session Timeout Control automatically kills dead server connections
* Server Type identification
* RMDIR/MKDIR support for remote server
* LS/DIR commands to provide directory listing retrieval
* Oracle Applications integration
* Mainframe Compatible
* Binary/Ascii support
Author Comments : Important issue identified regarding the structure of your remote FTP servers banners. Although with a true FTP client tool it may not be required, this FTP process follows best practice and expects that the server codes precede each line being returned by the remote FTP Server as it authenticates to the remote server. Failure to include the required prefix could cause you to be unable to access the remote server or failure to authenticate. See for more info => TCP Banners and then contact the respective server administrator.
Additional information on server codes can also be found here.
It might be possible to enhance the PLSQL solution to work past the issue, however I would not encourage that and instead stay with best practice.


