[Home] [Help]
PACKAGE BODY: APPS.PV_USER_REGISTRATION_PKG
Source
1 package body pv_user_registration_pkg as
2 /* $Header: pvregisb.pls 115.4 2002/12/11 10:24:26 anubhavk ship $ */
3
4 G_PKG_NAME CONSTANT VARCHAR2(100) := 'pv_user_registration_pkg';
5 g_item_type varchar2(100) := 'PVLEADAS';
6
7
8 procedure notify_user_by_email(
9 p_creator IN VARCHAR2,
10 p_username IN VARCHAR2,
11 p_password IN VARCHAR2,
12 x_item_type OUT NOCOPY VARCHAR2,
13 x_item_key OUT NOCOPY VARCHAR2,
14 x_return_status OUT NOCOPY VARCHAR2,
15 x_msg_count OUT NOCOPY NUMBER,
16 x_msg_data OUT NOCOPY VARCHAR2) is
17
18 l_message VARCHAR2(2000);
19 l_api_name CONSTANT VARCHAR2(30) := 'notify_user_by_email';
20
21 l_wf_item_type VARCHAR2(30) := 'PVREGIS';
22 l_wf_notify_process VARCHAR2(30) := 'USER_REGISTRATION_NOTIFY_PR';
23 l_wf_creator_attr_name VARCHAR2(30) := 'USER_RGSTRTN_CREATOR';
24 l_wf_username_attr_name VARCHAR2(30) := 'USER_RGSTRTN_USER';
25 l_wf_password_attr_name VARCHAR2(30) := 'USER_RGSTRTN_USER_PASSWORD';
26
27 l_wf_item_key number;
28
29 begin
30
31 x_return_status := FND_API.G_RET_STS_SUCCESS;
32
33 select pv_lead_workflows_s.nextval into l_wf_item_key
34 from sys.dual;
35
36 wf_engine.CreateProcess( ItemType => l_wf_item_type,
37 ItemKey => l_wf_item_key,
38 process => l_wf_notify_process);
39
40 wf_engine.SetItemUserKey (itemType => l_wf_item_type,
41 itemKey => l_wf_item_key,
42 userKey => l_wf_item_key);
43
44 wf_engine.setItemOwner( ITEMTYPE => l_wf_item_type,
45 ITEMKEY => l_wf_item_key,
46 OWNER => p_creator);
47
48 wf_engine.SetItemAttrText (itemtype => l_wf_item_type,
49 itemkey => l_wf_item_key,
50 aname => l_wf_creator_attr_name,
51 avalue => p_creator);
52
53 wf_engine.SetItemAttrText (itemtype => l_wf_item_type,
54 itemkey => l_wf_item_key,
55 aname => l_wf_username_attr_name,
56 avalue => p_username);
57
58 wf_engine.SetItemAttrText (itemtype => l_wf_item_type,
59 itemkey => l_wf_item_key,
60 aname => l_wf_password_attr_name,
61 avalue => p_password);
62
63 wf_engine.StartProcess( itemtype => l_wf_item_type,
64 itemkey => l_wf_item_key);
65
66 x_item_type := l_wf_item_type;
67 x_item_key := l_wf_item_key;
68
69 EXCEPTION
70 WHEN FND_API.G_EXC_ERROR THEN
71 x_return_status := FND_API.G_RET_STS_ERROR;
72
73 fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE
74 ,p_count => x_msg_count
75 ,p_data => x_msg_data);
76
77 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
78 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
79
80 fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE
81 ,p_count => x_msg_count
82 ,p_data => x_msg_data);
83
84 WHEN OTHERS THEN
85 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
86 fnd_msg_pub.Add_Exc_Msg(G_PKG_NAME, l_api_name);
87
88 fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE
89 ,p_count => x_msg_count
90 ,p_data => x_msg_data);
91
92 end notify_user_by_email;
93
94
95 end pv_user_registration_pkg;