Hola de nuevo. Ya encontré la solución y es bastante trivial. Lo que me estaba fallando era que no estaba asignando a ninguna variable el valor regresado. Lo solucioné así:
Código:
CREATE OR REPLACE PROCEDURE send_shl(dir in varchar2, filename in varchar2,
ftpdir in varchar2, usr in varchar2, pass in varchar2, to_path in varchar2, command varchar2)
as
l_conn UTL_TCP.connection;
ret_val pls_integer;
begin
dbms_output.enable(999999);
l_conn := ftp.login(ftpdir, '21', usr, pass);
ftp.ascii(p_conn => l_conn);
--ftp.binary(p_conn => l_conn);
ret_val:= utl_tcp.write_line(l_conn, command);
ftp.put(p_conn => l_conn,
p_from_dir => dir,
p_from_file => filename,
p_to_file => to_path||filename);
ftp.logout(l_conn);
Exception
When Others then
dbms_output.put_line('Value: '||ret_val);
End send_shl;
Ahora el problema que tengo es manejar la excepción al momento de pasar el comando... El error que me manda es normal, lo que no puedo hacer es que despues del error se guarde el archivo en el ftp... Cualquier ayuda se agradecerá mucho. Saludos