[Home] [Help]
PACKAGE BODY: APPS.IRC_DOCUMENT_BE1
Source
1 package body irc_document_be1 as
2 --Code generated on 30/03/2009 04:31:22
3 /* $Header: hrapiwfe.pkb 120.4.12010000.2 2008/09/29 12:54:07 srgnanas ship $*/
4 procedure create_document_a (
5 p_effective_date date,
6 p_type varchar2,
7 p_mime_type varchar2,
8 p_person_id number,
9 p_assignment_id number,
10 p_file_name varchar2,
11 p_description varchar2,
12 p_document_id number,
13 p_object_version_number number,
14 p_end_date date) is
15 l_event_key number;
16 l_event_data clob;
17 l_event_name varchar2(250);
18 l_text varchar2(2000);
19 l_message varchar2(10);
20 --
21 cursor get_seq is
22 select per_wf_events_s.nextval from dual;
23 --
24 l_proc varchar2(72):=' irc_document_be1.create_document_a';
25 begin
26 hr_utility.set_location('Entering: '||l_proc,10);
27 -- check the status of the business event
28 l_event_name:='oracle.apps.per.irc.api.document.create_document';
29 l_message:=wf_event.test(l_event_name);
30 --
31 if (l_message='MESSAGE') then
32 hr_utility.set_location(l_proc,20);
33 --
34 -- get a key for the event
35 --
36 open get_seq;
37 fetch get_seq into l_event_key;
38 close get_seq;
39 --
40 -- build the xml data for the event
41 --
42 dbms_lob.createTemporary(l_event_data,false,dbms_lob.call);
43 l_text:='<?xml version =''1.0'' encoding =''ASCII''?>';
44 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
45 l_text:='<document>';
46 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
47 --
48 l_text:='<effective_date>';
49 l_text:=l_text||fnd_date.date_to_canonical(p_effective_date);
50 l_text:=l_text||'</effective_date>';
51 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
52 l_text:='<type>';
53 l_text:=l_text||irc_utilities_pkg.removeTags(p_type);
54 l_text:=l_text||'</type>';
55 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
56 l_text:='<mime_type>';
57 l_text:=l_text||irc_utilities_pkg.removeTags(p_mime_type);
58 l_text:=l_text||'</mime_type>';
59 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
60 l_text:='<person_id>';
61 l_text:=l_text||fnd_number.number_to_canonical(p_person_id);
62 l_text:=l_text||'</person_id>';
63 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
64 l_text:='<assignment_id>';
65 l_text:=l_text||fnd_number.number_to_canonical(p_assignment_id);
66 l_text:=l_text||'</assignment_id>';
67 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
68 l_text:='<file_name>';
69 l_text:=l_text||irc_utilities_pkg.removeTags(p_file_name);
70 l_text:=l_text||'</file_name>';
71 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
72 l_text:='<description>';
73 l_text:=l_text||irc_utilities_pkg.removeTags(p_description);
74 l_text:=l_text||'</description>';
75 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
76 l_text:='<document_id>';
77 l_text:=l_text||fnd_number.number_to_canonical(p_document_id);
78 l_text:=l_text||'</document_id>';
79 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
80 l_text:='<object_version_number>';
81 l_text:=l_text||fnd_number.number_to_canonical(p_object_version_number);
82 l_text:=l_text||'</object_version_number>';
83 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
84 l_text:='<end_date>';
85 l_text:=l_text||fnd_date.date_to_canonical(p_end_date);
86 l_text:=l_text||'</end_date>';
87 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
88 l_text:='</document>';
89 --
90 dbms_lob.writeAppend(l_event_data,length(l_text),l_text);
91 --
92 -- raise the event with the event data
93 wf_event.raise(p_event_name=>l_event_name
94 ,p_event_key=>l_event_key
95 ,p_event_data=>l_event_data);
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 -- this is a key event, so just raise the event
103 -- without the event data
104 wf_event.raise(p_event_name=>l_event_name
105 ,p_event_key=>l_event_key);
106 elsif (l_message='NONE') then
107 hr_utility.set_location(l_proc,40);
108 -- no event is required, so do nothing
109 null;
110 end if;
111 hr_utility.set_location('Leaving: '||l_proc,50);
112 end create_document_a;
113 end irc_document_be1;