[Home] [Help]
PACKAGE BODY: APPS.IRC_PARTY_BE6
Source
1 package body irc_party_be6 as
2 --Code generated on 30/03/2009 04:31:35
3 /* $Header: hrapiwfe.pkb 120.4.12010000.2 2008/09/29 12:54:07 srgnanas ship $*/
4 procedure self_register_user_a (
5 p_current_email_address varchar2,
6 p_responsibility_id number,
7 p_resp_appl_id number,
8 p_security_group_id number,
9 p_first_name varchar2,
10 p_last_name varchar2,
11 p_middle_names varchar2,
12 p_previous_last_name varchar2,
13 p_employee_number varchar2,
14 p_national_identifier varchar2,
15 p_date_of_birth date,
16 p_email_address varchar2,
17 p_home_phone_number varchar2,
18 p_work_phone_number varchar2,
19 p_address_line_1 varchar2,
20 p_manager_last_name varchar2,
21 p_allow_access varchar2,
22 p_language varchar2,
23 p_user_name varchar2) is
24 l_event_key number;
25 l_event_data clob;
26 l_event_name varchar2(250);
27 l_text varchar2(2000);
28 l_message varchar2(10);
29 --
30 cursor get_seq is
31 select per_wf_events_s.nextval from dual;
32 --
33 l_proc varchar2(72):=' irc_party_be6.self_register_user_a';
34 begin
35 hr_utility.set_location('Entering: '||l_proc,10);
36 -- check the status of the business event
37 l_event_name:='oracle.apps.per.irc.api.party.self_register_user';
38 l_message:=wf_event.test(l_event_name);
39 --
40 if (l_message='MESSAGE') then
41 hr_utility.set_location(l_proc,20);
42 --
43 -- get a key for the event
44 --
45 open get_seq;
46 fetch get_seq into l_event_key;
47 close get_seq;
48 --
49 -- build the xml data for the event
50 --
51 dbms_lob.createTemporary(l_event_data,false,dbms_lob.call);
52 l_text:='<?xml version =''1.0'' encoding =''ASCII''?>';
53 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
54 l_text:='<party>';
55 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
56 --
57 l_text:='<current_email_address>';
58 l_text:=l_text||irc_utilities_pkg.removeTags(p_current_email_address);
59 l_text:=l_text||'</current_email_address>';
60 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
61 l_text:='<responsibility_id>';
62 l_text:=l_text||fnd_number.number_to_canonical(p_responsibility_id);
63 l_text:=l_text||'</responsibility_id>';
64 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
65 l_text:='<resp_appl_id>';
66 l_text:=l_text||fnd_number.number_to_canonical(p_resp_appl_id);
67 l_text:=l_text||'</resp_appl_id>';
68 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
69 l_text:='<security_group_id>';
70 l_text:=l_text||fnd_number.number_to_canonical(p_security_group_id);
71 l_text:=l_text||'</security_group_id>';
72 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
73 l_text:='<first_name>';
74 l_text:=l_text||irc_utilities_pkg.removeTags(p_first_name);
75 l_text:=l_text||'</first_name>';
76 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
77 l_text:='<last_name>';
78 l_text:=l_text||irc_utilities_pkg.removeTags(p_last_name);
79 l_text:=l_text||'</last_name>';
80 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
81 l_text:='<middle_names>';
82 l_text:=l_text||irc_utilities_pkg.removeTags(p_middle_names);
83 l_text:=l_text||'</middle_names>';
84 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
85 l_text:='<previous_last_name>';
86 l_text:=l_text||irc_utilities_pkg.removeTags(p_previous_last_name);
87 l_text:=l_text||'</previous_last_name>';
88 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
89 l_text:='<employee_number>';
90 l_text:=l_text||irc_utilities_pkg.removeTags(p_employee_number);
91 l_text:=l_text||'</employee_number>';
92 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
93 l_text:='<national_identifier>';
94 l_text:=l_text||irc_utilities_pkg.removeTags(p_national_identifier);
95 l_text:=l_text||'</national_identifier>';
96 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
97 l_text:='<date_of_birth>';
98 l_text:=l_text||fnd_date.date_to_canonical(p_date_of_birth);
99 l_text:=l_text||'</date_of_birth>';
100 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
101 l_text:='<email_address>';
102 l_text:=l_text||irc_utilities_pkg.removeTags(p_email_address);
103 l_text:=l_text||'</email_address>';
104 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
105 l_text:='<home_phone_number>';
106 l_text:=l_text||irc_utilities_pkg.removeTags(p_home_phone_number);
107 l_text:=l_text||'</home_phone_number>';
108 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
109 l_text:='<work_phone_number>';
110 l_text:=l_text||irc_utilities_pkg.removeTags(p_work_phone_number);
111 l_text:=l_text||'</work_phone_number>';
112 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
113 l_text:='<address_line_1>';
114 l_text:=l_text||irc_utilities_pkg.removeTags(p_address_line_1);
115 l_text:=l_text||'</address_line_1>';
116 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
117 l_text:='<manager_last_name>';
118 l_text:=l_text||irc_utilities_pkg.removeTags(p_manager_last_name);
119 l_text:=l_text||'</manager_last_name>';
120 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
121 l_text:='<allow_access>';
122 l_text:=l_text||irc_utilities_pkg.removeTags(p_allow_access);
123 l_text:=l_text||'</allow_access>';
124 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
125 l_text:='<language>';
126 l_text:=l_text||irc_utilities_pkg.removeTags(p_language);
127 l_text:=l_text||'</language>';
128 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
129 l_text:='<user_name>';
130 l_text:=l_text||irc_utilities_pkg.removeTags(p_user_name);
131 l_text:=l_text||'</user_name>';
132 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
133 l_text:='</party>';
134 --
135 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
136 --
137 -- raise the event with the event data
138 wf_event.raise(p_event_name=>l_event_name
139 ,p_event_key=>l_event_key
140 ,p_event_data=>l_event_data);
141 elsif (l_message='KEY') then
142 hr_utility.set_location(l_proc,30);
143 -- get a key for the event
144 open get_seq;
145 fetch get_seq into l_event_key;
146 close get_seq;
147 -- this is a key event, so just raise the event
148 -- without the event data
149 wf_event.raise(p_event_name=>l_event_name
150 ,p_event_key=>l_event_key);
151 elsif (l_message='NONE') then
152 hr_utility.set_location(l_proc,40);
153 -- no event is required, so do nothing
154 null;
155 end if;
156 hr_utility.set_location('Leaving: '||l_proc,50);
157 end self_register_user_a;
158 end irc_party_be6;