Bu örneğimizde 5 tane gönderilememiş e-posta olduğu gözükmektedir. Bunu veritabanından da görmek istersek aşağıdaki ekrandaki sorguyu kullanabiliriz.
select * from wf_notifications where mail_status='MAIL' and end_date is not null and status='CLOSED';
Bu uyarıyı düzeltmek için veritabanında bir sorgu girmemiz gerekir.
update wf_notifications
set mail_status = 'SENT'
where end_date is not null
and status = 'CLOSED'
and MAIL_STATUS = 'MAIL';
commit;
Yukarıdaki sorguyu çalıştırdığımızda en başta belirttiğimiz ekrandaki uyarı 0'lanır.
Wf_Notifications Altındaki Gönderilecek Mailler:
Eğer bir mail notification'ın statüsü OPEN ve mail_status MAIL ise bununla ilgili bir mail gönderilecek demektir.
select notification_id,status,mail_status,begin_date from WF_NOTIFICATIONS where status = 'OPEN' and mail_status = 'MAIL';
Gönderilmemesi İstenen Mailler:
Mail_status'leri Mail olanları Sent olarak değiştirirsek bunlarla ilgili mail atılmaz.
update WF_NOTIFICATIONS set mail_status = 'SENT' where mail_status = 'MAIL';
Workflow Mail'lerinin İptal Edilmesi:
Workflow'ların iptal edilmesini sağlamak için aşağıdaki kodu kullanmamız gerekir. Ancak dikkatli kullanılmalıdır çünkü o an çalışan workflow'lar da iptal edilebilinir. O yüzden bir şart belirtilmelidir.
DECLARE
ln_sayi number;
BEGIN
ln_sayi := 0;
for rec in
(select * from apps.wf_notifications where status = 'OPEN' and Mail_status='MAIL' and begin_date
Yukarıdaki kodda bu şart başlangıçtan 7 gün öncesi için belirtilmiştir. 7 gündür açık olan bir notification maili hala mail status'unde gözüküyorsa o zaman bu notification kapatılır.
Wf_Notifications Queue(Sıra) Düzenlemesi:
Şimdi belirteceğimiz sql'i çalıştırarak bekleyen mailleri silip sadece gönderilecek mailleri sırada tutabiliriz. Bu şekilde yanlış bir işlem yapıp eğer mail miktarını arttırmış olursak bunu bu şekilde düzenleyebiliriz.
sqlplus apps/apps_pwd @$FND_TOP/patch/115/sql/wfntfqup APPS APPS_PWD APPLSYS
Not:Apps_pwd; apps kullanıcısının şifresidir.
Hiç yorum yok:
Yorum Gönder