Ver Mensaje Individual
  #4 (permalink)  
Antiguo 25/06/2008, 10:00
Avatar de matanga
matanga
 
Fecha de Ingreso: octubre-2007
Ubicación: España
Mensajes: 1.091
Antigüedad: 16 años, 6 meses
Puntos: 85
Respuesta: Procedimiento de envio de correo

Hola,

Si te fijas en los dos ejemplos (el de jc3000 y el mio) sobre utl_smtp, veras que no existe el metodo utl_smtp.subject, simplemente porque no funciona asi.

ult_smtp es un package que abre un socket sobre el servidor de correo y negocia la conexion a bajo nivel, por eso hay que leerse la RFC que describe el formato de texto de un correo para saber como indicar dentro del buffer de datos cual es el subject.

A modo de resumen, te copio y pego parte de los ejemplos, el metodo utl_smtp.data es el que envia toda la informacion, incluyendo el asunto.

Código:
 
   --Header del mensaje - RFC 822
        sz_header :='Date: ' || TO_CHAR( SYSDATE, 'dd Mon yy hh24:mi:ss' ) || crlf ||
                    'From: '|| sz_from || crlf ||
                    'Subject: ' || sz_subject || crlf ||
                    'To: '  || sz_to_list_str || crlf ;

        sz_body := 'texto del mensaje';

        --Body del mensaje: lsz_body
        --Envío de datos al servidor de correo y cierre de la conexión
        r := UTL_SMTP.DATA(c, sz_header || lsz_body);
No tengo mucho mas para aportarte, el codigo que postee en su momento es el que tengo funcionando y el subject me aparece bien.

Saludos