Enviando e-mail utilizando o UTL_SMTP

Oracle

13/07/2006

Olá pessoal!

Sei que isso já foi assunto de muitos tópicos mas não consegui resolver o meu problema...

Quando executo o procedimento abaixo ele retorna o erro:

DECLARE
vHostEmail VARCHAR2( 60 );
vConexao UTL_SMTP.CONNECTION;
vMessagem VARCHAR2( 4000 );
vDestinatario VARCHAR2( 4000 );
vRemetente VARCHAR2( 100 );
vAssunto VARCHAR2( 60 );
BEGIN
vAssunto := ´package UTL_SMTP´;
vDestinatario := ´user1@oracle.com.br´;
vRemetente := ´user2@oracle-ltda.com.br´;
vMessagem := ´Teste de envio de e-mail, utilizando a package UTL_SMTP´;
vHostEmail := ´smtp.oracle.com.br´;
vConexao := UTL_SMTP.OPEN_CONNECTION( vHostEmail, 25 );
UTL_SMTP.HELO( vConexao, vHostEmail );
UTL_SMTP.MAIL( vConexao, vRemetente );
UTL_SMTP.RCPT( vConexao, vDestinatario );
UTL_SMTP.DATA( vConexao, ´Date: ´ || TO_CHAR( SYSDATE, ´dd Mon yy hh24:mi:ss´ ) || UTL_TCP.CRLF ||
´From: ´ || vRemetente || UTL_TCP.CRLF ||
´To: ´ || vDestinatario || UTL_TCP.CRLF ||
´Subject: ´ || vAssunto ||
UTL_TCP.CRLF || vMessagem );
UTL_SMTP.QUIT( vConexao );
END;
/

DECLARE
*
ERROR at line 1:
ORA-20002: 555 syntax error (#5.5.4)
ORA-06512: at ´SYS.UTL_SMTP´, line 86
ORA-06512: at ´SYS.UTL_SMTP´, line 204
ORA-06512: at line 16

Que syntax é essa!?!?!? Alguém pode me ajudar?


Rscramin

Rscramin

Curtidas 0

Respostas

Rosterne

Rosterne

13/07/2006

Faça assim:

CREATE OR REPLACE PROCEDURE EMAIL
IS
BEGIN
DECLARE
vHostEmail VARCHAR2( 60 );
vConexao UTL_SMTP.CONNECTION;
vMessagem VARCHAR2( 4000 );
vDestinatario VARCHAR2( 4000 );
vRemetente VARCHAR2( 100 );
vAssunto VARCHAR2( 60 );
BEGIN
vAssunto := ´package UTL_SMTP´;
vDestinatario := ´user1@oracle.com.br´;
vRemetente := ´user2@oracle-ltda.com.br´;
vMessagem := ´Teste de envio de e-mail, utilizando a package UTL_SMTP´;
vHostEmail := ´smtp.oracle.com.br´;
vConexao := UTL_SMTP.OPEN_CONNECTION( vHostEmail, 25 );
UTL_SMTP.HELO( vConexao, vHostEmail );
UTL_SMTP.MAIL( vConexao, vRemetente );
UTL_SMTP.RCPT( vConexao, vDestinatario );
UTL_SMTP.DATA( vConexao, ´Date: ´ || TO_CHAR( SYSDATE, ´dd Mon yy hh24:mi:ss´ ) || UTL_TCP.CRLF ||
´From: ´ || vRemetente || UTL_TCP.CRLF ||
´To: ´ || vDestinatario || UTL_TCP.CRLF ||
´Subject: ´ || vAssunto ||
UTL_TCP.CRLF || vMessagem );
UTL_SMTP.QUIT( vConexao );
END;
END;

dps rode a procedure:

- exec email

Espero ter ajudado.


GOSTEI 0
Motta

Motta

13/07/2006

http://forum.devmedia.com.br/viewtopic.php?t=68041&sid=51f22091cb4d96afa28517e81e2e3367


GOSTEI 0
POSTAR