DBA Data[Home] [Help]

PACKAGE BODY: APPS.PAY_ELEMENT_LINK_BE3

Source


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