DBA Data[Home] [Help]

PACKAGE BODY: APPS.IRC_ASG_STATUS_BE1

Source


1 package body irc_asg_status_be1 as 
2 --Code generated on 06/11/2008 12:45:25
3 /* $Header: hrapiwfe.pkb 120.4 2008/02/15 06:27:49 viviswan ship $*/
4 procedure create_irc_asg_status_a (
5 p_assignment_id                number,
6 p_assignment_status_type_id    number,
7 p_status_change_reason         varchar2,
8 p_assignment_status_id         number,
9 p_object_version_number        number,
10 p_status_change_date           date) is
11   l_event_key number;
12   l_event_data clob;
13   l_event_name varchar2(250);
14   l_text varchar2(2000);
15   l_message varchar2(10);
16   --
17   cursor get_seq is
18   select per_wf_events_s.nextval from dual;
19   --
20   l_proc varchar2(72):='  irc_asg_status_be1.create_irc_asg_status_a';
21 begin
22   hr_utility.set_location('Entering: '||l_proc,10);
23   -- check the status of the business event
24   l_event_name:='oracle.apps.per.irc.api.asg_status.create_irc_asg_status';
25   l_message:=wf_event.test(l_event_name);
26   --
27   if (l_message='MESSAGE') then
28     hr_utility.set_location(l_proc,20);
29     --
30     -- get a key for the event
31     --
32     open get_seq;
33     fetch get_seq into l_event_key;
34     close get_seq;
35     --
36     -- build the xml data for the event
37     --
38     dbms_lob.createTemporary(l_event_data,false,dbms_lob.call);
39     l_text:='<?xml version =''1.0'' encoding =''ASCII''?>';
40     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
41     l_text:='<asg_status>';
42     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
43     --
44     l_text:='<assignment_id>';
45     l_text:=l_text||fnd_number.number_to_canonical(p_assignment_id);
46     l_text:=l_text||'</assignment_id>';
47     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
48     l_text:='<assignment_status_type_id>';
49     l_text:=l_text||fnd_number.number_to_canonical(p_assignment_status_type_id);
50     l_text:=l_text||'</assignment_status_type_id>';
51     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
52     l_text:='<status_change_reason>';
53     l_text:=l_text||irc_utilities_pkg.removeTags(p_status_change_reason);
54     l_text:=l_text||'</status_change_reason>';
55     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
56     l_text:='<assignment_status_id>';
57     l_text:=l_text||fnd_number.number_to_canonical(p_assignment_status_id);
58     l_text:=l_text||'</assignment_status_id>';
59     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
60     l_text:='<object_version_number>';
61     l_text:=l_text||fnd_number.number_to_canonical(p_object_version_number);
62     l_text:=l_text||'</object_version_number>';
63     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
64     l_text:='<status_change_date>';
65     l_text:=l_text||fnd_date.date_to_canonical(p_status_change_date);
66     l_text:=l_text||'</status_change_date>';
67     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
68     l_text:='</asg_status>';
69     --
70     dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
71     --
72     -- raise the event with the event data
73     wf_event.raise(p_event_name=>l_event_name
74                   ,p_event_key=>l_event_key
75                   ,p_event_data=>l_event_data);
76     --
77   elsif (l_message='KEY') then
78     hr_utility.set_location(l_proc,30);
79     -- get a key for the event
80     open get_seq;
81     fetch get_seq into l_event_key;
82     close get_seq;
83     -- this is a key event, so just raise the event
84     -- without the event data
85     wf_event.raise(p_event_name=>l_event_name
86                   ,p_event_key=>l_event_key);
87     --
88   elsif (l_message='NONE') then
89     hr_utility.set_location(l_proc,40);
90     -- no event is required, so do nothing
91     null;
92   end if;
93     hr_utility.set_location('Leaving: '||l_proc,50);
94 end create_irc_asg_status_a;
95 end irc_asg_status_be1;