DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_APPLICANT_BE4

Source


1 package body hr_applicant_be4 as 
2 --Code generated on 13/08/2013 06:42:22
3 /* $Header: hrapiwfe.pkb 120.11 2011/12/24 13:28:35 vboggava ship $*/
4 procedure convert_to_applicant_a (
5 p_effective_date               date,
6 p_person_id                    number,
7 p_business_group_id            number,
8 p_object_version_number        number,
9 p_applicant_number             varchar2,
10 p_person_type_id               number,
11 p_effective_start_date         date,
12 p_effective_end_date           date,
13 p_appl_override_warning        boolean) is
14   l_event_key number;
15   l_event_data clob;
16   l_event_name varchar2(250);
17   l_text varchar2(2000);
18   l_message varchar2(10);
19   --
20   cursor get_seq is
21   select per_wf_events_s.nextval from dual;
22   --
23   l_proc varchar2(72):='  hr_applicant_be4.convert_to_applicant_a';
24 begin
25   hr_utility.set_location('Entering: '||l_proc,10);
26   -- check the status of the business event
27   l_event_name:='oracle.apps.per.api.applicant.convert_to_applicant';
28   l_message:=wf_event.test(l_event_name);
29   --
30   if (l_message='MESSAGE') then
31     hr_utility.set_location(l_proc,20);
32     --
33     -- get a key for the event
34     --
35     open get_seq;
36     fetch get_seq into l_event_key;
37     close get_seq;
38     --
39     -- build the xml data for the event
40     --
41     dbms_lob.createTemporary(l_event_data,false,dbms_lob.call);
42     l_text:='<?xml version =''1.0'' encoding =''ASCII''?>';
43     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
44     l_text:='<applicant>';
45     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
46     --
47     l_text:='<effective_date>';
48     l_text:=l_text||fnd_date.date_to_canonical(p_effective_date);
49     l_text:=l_text||'</effective_date>';
50     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
51     l_text:='<person_id>';
52     l_text:=l_text||fnd_number.number_to_canonical(p_person_id);
53     l_text:=l_text||'</person_id>';
54     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
55     l_text:='<business_group_id>';
56     l_text:=l_text||fnd_number.number_to_canonical(p_business_group_id);
57     l_text:=l_text||'</business_group_id>';
58     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
59     l_text:='<object_version_number>';
60     l_text:=l_text||fnd_number.number_to_canonical(p_object_version_number);
61     l_text:=l_text||'</object_version_number>';
62     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
63     l_text:='<applicant_number>';
64     l_text:=l_text||irc_utilities_pkg.removeTags(p_applicant_number);
65     l_text:=l_text||'</applicant_number>';
66     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
67     l_text:='<person_type_id>';
68     l_text:=l_text||fnd_number.number_to_canonical(p_person_type_id);
69     l_text:=l_text||'</person_type_id>';
70     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
71     l_text:='<effective_start_date>';
72     l_text:=l_text||fnd_date.date_to_canonical(p_effective_start_date);
73     l_text:=l_text||'</effective_start_date>';
74     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
75     l_text:='<effective_end_date>';
76     l_text:=l_text||fnd_date.date_to_canonical(p_effective_end_date);
77     l_text:=l_text||'</effective_end_date>';
78     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
79     l_text:='<appl_override_warning>';
80 if(P_APPL_OVERRIDE_WARNING) then
81 l_text:=l_text||'TRUE';
82 else
83 l_text:=l_text||'FALSE';
84 end if;
85     l_text:=l_text||'</appl_override_warning>';
86     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
87     l_text:='</applicant>';
88     --
89     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
90     --
91     if p_effective_start_date is not NULL and
92        p_effective_start_date > trunc(SYSDATE) and
93         fnd_profile.value('HR_DEFER_FD_BE_EVENTS') = 'Y' then 
94        -- raise the event with the event data, with send date set to effective date
95        wf_event.raise(p_event_name=>l_event_name
96                      ,p_event_key=>l_event_key
97                      ,p_event_data=>l_event_data
98                      ,p_send_date => p_effective_start_date);
99         --
100     else 
101        -- raise the event with the event data
102        wf_event.raise(p_event_name=>l_event_name
103                      ,p_event_key=>l_event_key
104                      ,p_event_data=>l_event_data);
105     end if;
106   elsif (l_message='KEY') then
107     hr_utility.set_location(l_proc,30);
108     -- get a key for the event
109     open get_seq;
110     fetch get_seq into l_event_key;
111     close get_seq;
112     if p_effective_start_date is not NULL and
113        p_effective_start_date > trunc(SYSDATE) and
114         fnd_profile.value('HR_DEFER_FD_BE_EVENTS') = 'Y' then 
115        -- this is a key event, so just raise the event
116        -- without the event data, with send date set to effective date
117        wf_event.raise(p_event_name=>l_event_name
118                      ,p_event_key=>l_event_key
119                      ,p_send_date => p_effective_start_date);
120        --
121     else
122        -- this is a key event, so just raise the event
123        -- without the event data
124        wf_event.raise(p_event_name=>l_event_name
125                      ,p_event_key=>l_event_key);
126     end if;
127   elsif (l_message='NONE') then
128     hr_utility.set_location(l_proc,40);
129     -- no event is required, so do nothing
130     null;
131   end if;
132     hr_utility.set_location('Leaving: '||l_proc,50);
133 end convert_to_applicant_a;
134 end hr_applicant_be4;