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