utl_smtb
al ejecutar un procedure para mandar correo, me aparece el error
ora-29540:tcpconnection does not exist.
¿que es lo que me falta??
Muchas gracias
ora-29540:tcpconnection does not exist.
¿que es lo que me falta??
Muchas gracias
Yo tambien tenia ese mismo problema, fue porque utilice una IP equivocada del servidor de correos.
Te paso mi procedimiento, si funciona:
PROCEDURE ENVIAR_MAIL(ENVIA IN VARCHAR2 ,
RECIBE IN VARCHAR2 ,
ASUNTO IN VARCHAR2 ,
MENSAJE IN VARCHAR2,
HOST IN VARCHAR2)
IS
MAILHOST VARCHAR2(30) := LTRIM(RTRIM(HOST));
MAIL_CONN UTL_SMTP.CONNECTION;
CRLF VARCHAR2( 2 ):= CHR( 13 ) || CHR( 10 );
MESG VARCHAR2( 1000 );
BEGIN
MAIL_CONN := UTL_SMTP.OPEN_CONNECTION(MAILHOST, 25);
MESG:= 'DATE: ' || TO_CHAR( SYSDATE, 'DD MON YY HH24:MI:SS' ) || CRLF ||
'FROM: <'||ENVIA||'>' || CRLF ||
'SUBJECT: '||ASUNTO || CRLF ||
'TO: '||RECIBE || CRLF ||
'' || CRLF || MENSAJE;
UTL_SMTP.HELO(MAIL_CONN, MAILHOST);
UTL_SMTP.MAIL(MAIL_CONN, ENVIA);
UTL_SMTP.RCPT(MAIL_CONN, RECIBE);
UTL_SMTP.DATA(MAIL_CONN, MESG);
UTL_SMTP.QUIT(MAIL_CONN);
END;
Para ejecutarlo:
ENVIAR_MAIL(CorreoFrom, CorreoTo, Asunto, Mensaje, IP_server_correo);
Saludos
Te paso mi procedimiento, si funciona:
PROCEDURE ENVIAR_MAIL(ENVIA IN VARCHAR2 ,
RECIBE IN VARCHAR2 ,
ASUNTO IN VARCHAR2 ,
MENSAJE IN VARCHAR2,
HOST IN VARCHAR2)
IS
MAILHOST VARCHAR2(30) := LTRIM(RTRIM(HOST));
MAIL_CONN UTL_SMTP.CONNECTION;
CRLF VARCHAR2( 2 ):= CHR( 13 ) || CHR( 10 );
MESG VARCHAR2( 1000 );
BEGIN
MAIL_CONN := UTL_SMTP.OPEN_CONNECTION(MAILHOST, 25);
MESG:= 'DATE: ' || TO_CHAR( SYSDATE, 'DD MON YY HH24:MI:SS' ) || CRLF ||
'FROM: <'||ENVIA||'>' || CRLF ||
'SUBJECT: '||ASUNTO || CRLF ||
'TO: '||RECIBE || CRLF ||
'' || CRLF || MENSAJE;
UTL_SMTP.HELO(MAIL_CONN, MAILHOST);
UTL_SMTP.MAIL(MAIL_CONN, ENVIA);
UTL_SMTP.RCPT(MAIL_CONN, RECIBE);
UTL_SMTP.DATA(MAIL_CONN, MESG);
UTL_SMTP.QUIT(MAIL_CONN);
END;
Para ejecutarlo:
ENVIAR_MAIL(CorreoFrom, CorreoTo, Asunto, Mensaje, IP_server_correo);
Saludos
