Cara eu fiz porém nao funcionou para envio de e-mail externo.

Utilizei o usuário sys, depois de deixar o PL certinho eu criei uma 
função e depois fiz um sinonimo no esquema que iria utilizar

declare
    mailhost   VARCHAR2(30) := '192.168.1.1';
    mail_conn  utl_smtp.connection;
    crlf       VARCHAR2( 2 ):= CHR( 13 ) || CHR( 10 );
    mesg       VARCHAR2( 1000 );
    RECIPIENTE VARCHAR2(40);
    message    VARCHAR2(200);

BEGIN
    mail_conn := utl_smtp.open_connection(mailhost, 25);
    RECIPIENTE := 'tme...@stf.com.br';
    message := 'Texto da mensagem'|| crlf ||
               'Texto da mensagem'|| crlf ||
               'Texto da mensagem'|| crlf ||
               'Texto da mensagem'|| crlf ||
               'Texto da mensagem'|| crlf ;

    mesg:= 'Date: '    || TO_CHAR( SYSDATE, 'dd Mon yy hh24:mi:ss' 
)                     || crlf ||
           'From: 
tme...@globecall.com.br'                                               
|| crlf ||
           'Subject: Teste de e-mail pelo oracle - Agora sim - '|| 
to_char(sysdate, 'DD/MM/YYYY HH24:MI:SS')|| crlf ||
           'To: 
'||RECIPIENTE                                                            
|| crlf ||
           'Mime-Version: 
1.0'                                                           || crlf ||
           
''                                                                            
|| crlf ||
           
message                                                                       
|| crlf ;

    utl_smtp.helo(mail_conn, mailhost);
    utl_smtp.mail(mail_conn, 'tme...@globecall.com.br');
    utl_smtp.rcpt(mail_conn, RECIPIENTE);
    utl_smtp.open_data (mail_conn );
    utl_smtp.write_data (mail_conn, mesg );
    utl_smtp.close_data(mail_conn );
    utl_smtp.quit(mail_conn);

end;
/


Espero q ajude.




Em 17/05/2011 16:39, alessandro escreveu:
> Boa Tarde
>
>
>
>     Estou precisando fazer uma rotina p/ enviar email pelo Oracle
>
>
>
> DECLARE
>
>    V_EMAIL_DESTINO   VARCHAR2(100)  := 'alessan...@micromap.com.br';
>
>    V_EMAIL_REMETENTE VARCHAR2(100)  :=
> 'alessandro.mai...@itelefonica.com.br';
>
>    V_ASSUNTO         VARCHAR2(1000) := 'Cadastro atualizado pelo Portal';
>
> BEGIN
>
>    UTL_MAIL.send(V_EMAIL_REMETENTE,
>
>                  V_EMAIL_DESTINO,
>
>                  V_ASSUNTO,
>
>                  'O servidor Oracle me enviou este e-mail utilizando o pacote
> UTL_MAIL');
>
> END;
>
> /
>
>
>
> DECLARE
>
> *
>
> ERRO na linha 1:
>
> ORA-29278: erro transiente de SMTP: 421 Service not available
>
> ORA-06512: em "SYS.UTL_SMTP", line 21
>
> ORA-06512: em "SYS.UTL_SMTP", line 97
>
> ORA-06512: em "SYS.UTL_SMTP", line 139
>
> ORA-06512: em "SYS.UTL_MAIL", line 405
>
> ORA-06512: em "SYS.UTL_MAIL", line 594
>
> ORA-06512: em line 6
>
>
>
> O QUE TEM QUE FAZER P/ RESOLVER ESTE PROBLEMA, POIS ESTA ROTIN A SERÁ
> COLOCADO EM VÁRIOS CLIENTES COM BANCO ORACLE 10GR2 COM WINDOWS 2003 SERVER.
>
>
>
> Desde já muito obrigado a todos do Forum
>
>
>
> Fique com Deus e que Deus te Abençoe hoje e sempre.
>
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
> ------------------------------------
>
> --------------------------------------------------------------------------------------------------------------------------
>> Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>> responsabilidade de seus remetentes.
> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
> --------------------------------------------------------------------------------------------------------------------------
>> Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>> Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>> http://www.oraclebr.com.br/
> ------------------------------------------------------------------------------------------------------------------------
>  Links do Yahoo! Grupos
>
>
>

Responder a