[ Ninobos @ 22.03.2005. 13:34 ] @
POzdrav,

Da li je mozda neko imao slican problem?
Naime,u Oracle Enterprise Manager Konsole po prijavi na Oracle Management Server sam kreirao jedan Job koji odraduje Backup baze.Hteo bih po zavrsenom Backup_u da dobijem poruku putem email_a da je backup zavrsen.Konfigurisao sam opciju Paging/Email ali jos bez uspeha.
Svaka ideja dobro dosla!
[ dusanmiloradovic @ 23.03.2005. 09:08 ] @
Postoji paket utl_smtp. Napravi stored proceduru pomocu koja salje mail pomocu njega, i ukljuci je u taj job.

Dusan Miloradovic
[ Ninobos @ 23.03.2005. 10:48 ] @
Hvala na ideji,medjutim ne mogu da vidim izvorni kod utl_smtp paketa,ne znam sta se nalazi u tom paketu.
[ DebeliV @ 23.03.2005. 13:52 ] @
Evo ti jedan primer slanja:

DECLARE
SendorAddress Varchar2(30) := '[email protected]';
ReceiverAddress varchar2(30) := '[email protected]';
EmailServer varchar2(30) := 'pop3.nn.com';
Port number := 25;
conn UTL_SMTP.CONNECTION;
crlf VARCHAR2( 2 ):= CHR( 13 ) || CHR( 10 );
mesg VARCHAR2( 4000 );
mesg_body varchar2(4000);
cursor c1 is
select d.deptno,count(e.empno)
from dept d,
emp e
where e.deptno(+) = d.deptno
group by d.deptno
order by 1;

BEGIN

conn:= utl_smtp.open_connection( EmailServer, Port );
utl_smtp.helo( conn, EmailServer );
utl_smtp.mail( conn, SendorAddress);
utl_smtp.rcpt( conn, ReceiverAddress );
mesg:=

'Date: '||TO_CHAR( SYSDATE, 'dd Mon yy hh24:mi:ss' )|| crlf ||
'From:'||SendorAddress|| crlf ||
'Subject: Sending Mail From Database' || crlf ||
'To: '||ReceiverAddress || crlf ||
'' || crlf ||
'Dept No' ||' Count ' ||crlf||
'----------------------' ||' ------' ||crlf;
for c1rec in c1 LOOP
mesg := mesg || rpad(c1rec.deptno,22,' ') ||'
'||rpad(c1rec.count,10,' ') || crlf;
end loop;
utl_smtp.data( conn, mesg );
utl_smtp.quit( conn );
END;
[ Ninobos @ 23.03.2005. 14:21 ] @
Hvala DebeliV na primeru.
Ako moze jos jedno objasnjenje posto sa ovim nemam mnogo iskustva.Iz koje tabele selektiras u upitu i moram li ovu proceduru postaviti u utl_smtp paket odnosno kako da je ukljucim u job.
[ DebeliV @ 23.03.2005. 14:54 ] @
Ovaj pl kod možeš da postaviš u neku nezavisnu proceduru/funkciju kojoj ćeš samo proslediti tekst poruke(uspešno, neuspešno). Ako radiš hot backup, pretpostavljam da imaš backup script, u koji možeš da postaviš poziv toj proceduri. Ali, ako već celu priču radiš kroz oem, onda ti je lakše da njega pustiš da ti šalje mail. Napisao si da imaš problema da podesiš mail opciju u oem-u.
Treba da podesiš par stvari: izabereš Configuration/Preferences pa na tabu Notification , pod Email popuniš polja(Receiver's email, Subject prefix). Na tabu Schedule izabereš vreme u kojem oem šalje mail(dan u nedelji, čas). Ukoliko ti se backup izvrši u vreme koje nije pokriveno email notifikacijom, neće ti ni poslati email.
Druga stvar koju moraš da podesiš je pod Configuration/Configure Paging-Email. Tu samo treba da postaviš adresu smtp servera i mail adresu sa koje će ti slati mail, što će reći, da moraš da imaš nalog na mail serveru.
I treća stvar, na job-u moraš da čekiraš na tabu Access Notify.
Nadam se da je ovo od pomoći.
[ Ninobos @ 23.03.2005. 15:08 ] @
Jos jednom hvala.
Podesio sam sve osim Schedule,verovatno zbog toga nisam dobio email.
Probat cu ponovo.
Interesuje me ako mozes da mi napises iz koje tabele i ko je owner tim tabelama od malo pre tvog pl koda.
[ DebeliV @ 23.03.2005. 15:20 ] @
Onaj kod od malopre je samo primer kako se koristi utl_smtp. Pretraga je bila nad tabelama emp i dept demo korisnika(scott/tiger).
[ Ninobos @ 23.03.2005. 15:31 ] @
Da, to je ok,ali ukoliko bih upotrebio taj kod iz kojih tabela je potrebno selektirati?
[ DebeliV @ 23.03.2005. 16:14 ] @
To su neke tabele iz šeme u kojoj se nalazi oem repository. Ne znam tačno kako se zovu, znam samo da to nećeš naći u dokumentaciji.
Pozdrav
[ Ninobos @ 24.03.2005. 10:26 ] @
U svakom slucaju hvala

pozdrav