[Home] [Help]
PACKAGE BODY: APPS.JTF_WFNOTIFICATION_PVT
Source
1 PACKAGE BODY JTF_WFNOTIFICATION_PVT AS
2 /* $Header: JTFVWNTB.pls 120.2 2005/10/25 05:08:00 psanyal ship $ */
3
4 PROCEDURE Send_Email (
5 p_api_version IN NUMBER,
6 p_commit IN VARCHAR2 := FND_API.g_false,
7 p_init_msg_list IN VARCHAR2 := FND_API.g_false,
8 email_list IN VARCHAR2,
9 subject IN VARCHAR2,
10 body IN VARCHAR2,
11 return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
12 x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
13 x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2
14 )
15 IS
16 wf_itemkey_seq INTEGER;
17 wf_itemkey VARCHAR2(30);
18 role_name VARCHAR2(30);
19 role_display_name VARCHAR2(30);
20 BEGIN
21 return_status := FND_API.g_ret_sts_success;
22
23 -- DBMS_OUTPUT.put_line('email_list: ' || email_list );
24 -- DBMS_OUTPUT.put_line('subject: ' || subject );
25 -- DBMS_OUTPUT.put_line('body: ' || body );
26
27 select JTF_WFNOTIFICATION_S2.NEXTVAL into wf_itemkey_seq from dual;
28 wf_itemkey := 'JTF_MAIL_' || wf_itemkey_seq;
29
30 role_name := 'JTF_EMAIL_LIST_' || wf_itemkey_seq ;
31 role_display_name := 'JTF_EMAIL_LIST_' || wf_itemkey_seq ;
32
33 wf_directory.CreateAdHocUser(
34 name => role_name,
35 display_name => role_display_name,
36 notification_preference => 'MAILTEXT',
37 email_address => email_list,
38 expiration_date => sysdate + 1
39 );
40
41 wf_engine.CreateProcess (
42 itemtype => 'JTF_MAIL',
43 itemkey => wf_itemkey,
44 process => 'JTF_SEND_MAIL'
45 );
46 wf_engine.SetItemUserKey (
47 itemtype => 'JTF_MAIL',
48 itemkey => wf_itemkey,
49 userkey => 'JTF Email Notification' || wf_itemkey_seq
50 );
51 wf_engine.SetItemAttrText (
52 itemtype => 'JTF_MAIL',
53 itemkey => wf_itemkey,
54 aname => 'ROLE_TO_NOTIFY',
55 avalue => role_name
56 );
57 wf_engine.SetItemAttrText (
58 itemtype => 'JTF_MAIL',
59 itemkey => wf_itemkey,
60 aname => 'NOTIFICATION_SUBJECT',
61 avalue => subject
62 );
63 wf_engine.SetItemAttrText (
64 itemtype => 'JTF_MAIL',
65 itemkey => wf_itemkey,
66 aname => 'NOTIFICATION_BODY',
67 avalue => body
68 );
69 wf_engine.SetItemOwner (
70 itemtype => 'JTF_MAIL',
71 itemkey => wf_itemkey,
72 owner => role_name
73 );
74 wf_engine.StartProcess (
75 itemtype => 'JTF_MAIL',
76 itemkey => wf_itemkey
77 );
78
79 EXCEPTION
80 When others then
81
82 return_status := FND_API.g_ret_sts_error;
83 x_msg_count := 0;
84
85 wf_core.context('JTF_WFNOTIFICATION_PVT',
86 'Send_Email',
87 email_list,
88 subject,
89 body
90 );
91 raise;
92 END Send_Email;
93
94 END JTF_WFNOTIFICATION_PVT ;