Será que alguem pode me ajudar nessa trigger?

A função dela é enviar um e-mail ao usuário que tiver uma tarefa atribuida
ao seu login, mas ela agora esta com um erro no smtp que antes era open
relay e agora não é mais, ou seja ele precisa de autenticação de usuário e
senha para concluir o envio.
Alguém poderia me dizer o comando eu posso colar nessa trigger para que ela
autentique usuário e senha antes do envio.

Muito, mas mto obrigada pessoal!

*

declare

*sSrcEmail *varchar2*(255);

sSrcName *varchar2*(255);

sMsg *varchar2*(255);

sEmail *varchar2*(255);

xmessag *varchar2*(255);
*

-- username varchar2(256) := 'crm';

-- passwd varchar2(256) := '12345';

**PROCEDURE *send_mail

(sender *IN VARCHAR2*,

recipient *IN VARCHAR2*,

subject *IN VARCHAR2*,

message *IN VARCHAR2*)

*IS

**--mailhost VARCHAR2(30) := 'Exchange1'; -- > NOME OU IP DO SERVIDOR DE
SMTP

*mailhost *VARCHAR2*(30) := '15.15.1.1'; *--'172.17.10.131'; -- > NOME OU IP
DO SERVIDOR DE SMTP

*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: <'||sender||'>' || crlf ||

'Subject: '||subject || crlf ||

'To: '||recipient || crlf ||
*

-- 'To: '||'[EMAIL PROTECTED]' || crlf ||

*' '||crlf||

'A manifestac?o numero ' || :new.incident_number || ' foi encaminhada a
voce.'||crlf||

' '||crlf||'Para acessar o sistema, clique em:
http://anpprod.gpnetrj.com.br:8000/';

*utl_smtp*.helo(mail_conn, mailhost);

*utl_smtp*.mail(mail_conn, sender);

*utl_smtp*.rcpt(mail_conn, recipient);
*

-- utl_smtp.rcpt(mail_conn, '[EMAIL PROTECTED]');

-- utl_smtp.open_data(mail_conn);

**utl_smtp*.data(mail_conn, mesg);

*utl_smtp*.quit(mail_conn);

*Exception

WHEN **OTHERS **THEN

*raise_application_error(-20002,'unable to send the mail.'||*SQLERRM*);

*END*;
*

Begin

if *:new.incident_owner_id <> :old.incident_owner_id

*then

*sMsg := 'Erro ao buscar email do novo responsavel. ';

*select distinct nvl*(fu.EMAIL_ADDRESS,'NO_EMAIL')

,fu.user_name

*into *sSrcEmail

,sSrcName

*from *jtf_rs_resource_extns jr

, fnd_user fu

*where *jr.user_id = fu.user_id

*and *jr.resource_id = :new.incident_owner_id;

*if *sSrcEmail <> 'NO_EMAIL'

*then
**

-- sMsg := 'Erro ao enviar email para novo responsavel. ';

*sMsg := '...';

sEmail := 'A manifestac?o numero ' || :new.incident_number || ' foi
encaminhada a voce.';

send_mail ('[EMAIL PROTECTED]',sSrcEmail ,sEmail,xmessag );

*--send_mail ('[EMAIL PROTECTED]','[EMAIL PROTECTED]' ,sEmail ||
sSrcEmail ,xmessag );

**end if*;

*end if*;
*

exception

when **no_data_found **then

**-- email nao obrigatorio

**null*;

*when **others **then

*sMsg := sMsg || *substr*(*sqlerrm*,1,700);

raise_application_error(-20300, sMsg);
*

End*;



-- 
Fabiana Moreira
Consultora Funcional Trainee - GPTI
Celular: (21) 9382-0945
E-mail: [EMAIL PROTECTED]
Msn: [EMAIL PROTECTED]

  ----------

declare 
  sSrcEmail varchar2(255);
  sSrcName  varchar2(255);

  sMsg   varchar2(255);
  sEmail varchar2(255);
  xmessag varchar2(255);
--  username varchar2(256) := 'crm';
--  passwd varchar2(256) := '12345';

  
  PROCEDURE send_mail 
           (sender IN VARCHAR2, 
            recipient IN VARCHAR2, 
            subject IN VARCHAR2, 
            message IN VARCHAR2) 
    IS 
      --mailhost VARCHAR2(30) := 'Exchange1'; -- > NOME OU IP DO SERVIDOR DE 
SMTP 
      mailhost VARCHAR2(30) := '15.15.1.1'; --'172.17.10.131'; -- > NOME OU IP 
DO SERVIDOR DE SMTP
      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: <'||sender||'>' || crlf ||
            'Subject: '||subject || crlf ||
            'To: '||recipient || crlf ||
--            'To: '||'[EMAIL PROTECTED]' || crlf ||
            ' '||crlf||
            'A manifestac?o numero ' || :new.incident_number || ' foi 
encaminhada a voce.'||crlf||
            ' '||crlf||'Para acessar o sistema, clique em: 
http://anpprod.gpnetrj.com.br:8000/'; 

     utl_smtp.helo(mail_conn, mailhost); 
     utl_smtp.mail(mail_conn, sender);
     utl_smtp.rcpt(mail_conn, recipient);
--     utl_smtp.rcpt(mail_conn, '[EMAIL PROTECTED]');
    -- utl_smtp.open_data(mail_conn);
     utl_smtp.data(mail_conn, mesg); 
     utl_smtp.quit(mail_conn); 

   Exception 
     WHEN OTHERS THEN 
      raise_application_error(-20002,'unable to send the mail.'||SQLERRM);
    END; 

Begin
  if :new.incident_owner_id <> :old.incident_owner_id
  then 
    sMsg := 'Erro ao buscar email do novo responsavel. ';
    select distinct nvl(fu.EMAIL_ADDRESS,'NO_EMAIL')
          ,fu.user_name
      into sSrcEmail
          ,sSrcName
      from jtf_rs_resource_extns jr
           , fnd_user fu
     where jr.user_id = fu.user_id
     and jr.resource_id = :new.incident_owner_id;
    if sSrcEmail <> 'NO_EMAIL'
    then
--      sMsg := 'Erro ao enviar email para novo responsavel. ';
      sMsg := '...';
      sEmail := 'A manifestac?o numero ' || :new.incident_number || ' foi 
encaminhada a voce.';
      send_mail ('[EMAIL PROTECTED]',sSrcEmail ,sEmail,xmessag );
      --send_mail ('[EMAIL PROTECTED]','[EMAIL PROTECTED]' ,sEmail || sSrcEmail 
,xmessag ); 
  
    end if;
  end if;
exception
  when no_data_found then
    -- email nao obrigatorio
    null;
  when others then
    sMsg := sMsg || substr(sqlerrm,1,700);
    raise_application_error(-20300, sMsg);
End;

[As partes desta mensagem que não continham texto foram removidas]

Responder a