DBA Data[Home] [Help]

PACKAGE BODY: APPS.HRDPP_INSERT_EXTERNAL_EFFORT_L

Source


1 package body hrdpp_INSERT_EXTERNAL_EFFORT_L as
2 /*
3  * Generated by hr_pump_meta_mapper at: 2007/01/03 23:01:48
4  * Generated for API: PSP_EXTERNAL_EFFORT_LINES_API.INSERT_EXTERNAL_EFFORT_LINE
5  */
6 --
7 dh constant date := hr_api.g_date;
8 nh constant number := hr_api.g_number;
9 vh constant varchar2(64) := hr_api.g_varchar2;
10 c_sot constant date := to_date('01010001','DDMMYYYY');
11 cn constant varchar2(32) := '<NULL>';
12 dn constant date := null;
13 nn constant number := null;
14 vn constant varchar2(1) := null;
15 --
16 function dc(p in date) return varchar2 is
17 begin
18 if p<c_sot then
19  if p<>trunc(p) then
20   return to_char(p,'SYYYY/MM/DD HH24:MI:SS');
21  end if;
22  return to_char(p,'SYYYY/MM/DD');
23 elsif p<>trunc(p) then
24  return to_char(p,'YYYY/MM/DD HH24:MI:SS');
25 end if;
26 return to_char(p,'YYYY/MM/DD');
27 end dc;
28 function d(p in varchar2) return date is
29 begin
30 if length(p)=10 then
31 return to_date(p,'YYYY/MM/DD');
32 elsif length(p)=19 then
33 return to_date(p,'YYYY/MM/DD HH24:MI:SS');
34 elsif length(p)=11 then
35 return to_date(p,'SYYYY/MM/DD');
36 elsif length(p)=20 then
37 return to_date(p,'SYYYY/MM/DD HH24:MI:SS');
38 end if;
39 -- Try default format as last resort.
40 return to_date(p,'YYYY/MM/DD');
41 end d;
42 function n(p in varchar2) return number is
43 begin
44 return to_number(p);
45 end n;
46 function dd(p in date,i in varchar2)
47 return varchar2 is
48 begin
49 if upper(i) = 'N' then return dc(p);
50 else return cn; end if;
51 end dd;
52 function nd(p in number,i in varchar2)
53 return varchar2 is
54 begin
55 if upper(i) = 'N' then return to_char(p);
56 else return cn; end if;
57 end nd;
58 --
59 procedure iuk
60 (p_batch_line_id  in number,
61 p_user_key_value in varchar2,
62 p_unique_key_id  in number)
63 is
64 begin
65 hr_data_pump.entry('ins_user_key');
66 insert into hr_pump_batch_line_user_keys
67 (user_key_id, batch_line_id,user_key_value,unique_key_id)
68 values
69 (hr_pump_batch_line_user_keys_s.nextval,
70 p_batch_line_id,
71 p_user_key_value,
72 p_unique_key_id);
73 hr_data_pump.exit('ins_user_key');
74 end iuk;
75 --
76 procedure insert_batch_lines
77 (p_batch_id      in number
78 ,p_data_pump_batch_line_id in number default null
79 ,p_data_pump_business_grp_name in varchar2 default null
80 ,p_user_sequence in number default null
81 ,p_link_value    in number default null
82 ,P_BATCH_NAME in varchar2
83 ,P_DISTRIBUTION_DATE in date
84 ,P_PERSON_ID in number
85 ,P_ASSIGNMENT_ID in number
86 ,P_CURRENCY_CODE in varchar2
87 ,P_DISTRIBUTION_AMOUNT in number
88 ,P_SET_OF_BOOKS_ID in number
89 ,P_GL_CODE_COMBINATION_ID in number default null
90 ,P_PROJECT_ID in number default null
91 ,P_TASK_ID in number default null
92 ,P_AWARD_ID in number default null
93 ,P_EXPENDITURE_ORGANIZATION_ID in number default null
94 ,P_EXPENDITURE_TYPE in varchar2 default null
95 ,P_ATTRIBUTE_CATEGORY in varchar2 default null
96 ,P_ATTRIBUTE1 in varchar2 default null
97 ,P_ATTRIBUTE2 in varchar2 default null
98 ,P_ATTRIBUTE3 in varchar2 default null
99 ,P_ATTRIBUTE4 in varchar2 default null
100 ,P_ATTRIBUTE5 in varchar2 default null
101 ,P_ATTRIBUTE6 in varchar2 default null
102 ,P_ATTRIBUTE7 in varchar2 default null
103 ,P_ATTRIBUTE8 in varchar2 default null
104 ,P_ATTRIBUTE9 in varchar2 default null
105 ,P_ATTRIBUTE10 in varchar2 default null
106 ,P_ATTRIBUTE11 in varchar2 default null
107 ,P_ATTRIBUTE12 in varchar2 default null
108 ,P_ATTRIBUTE13 in varchar2 default null
109 ,P_ATTRIBUTE14 in varchar2 default null
110 ,P_ATTRIBUTE15 in varchar2 default null
111 ,P_OBJECT_VERSION_NUMBER in number
112 ,P_EXT_EFFORT_LINES_USER_KEY in varchar2) is
113 blid number := p_data_pump_batch_line_id;
114 begin
115 if blid is not null then
116 delete from hr_pump_batch_lines where batch_line_id = blid;
117 delete from hr_pump_batch_exceptions
118 where source_type = 'BATCH_LINE' and source_id = blid;
119 end if;
120 insert into hr_pump_batch_lines
121 (batch_id
122 ,batch_line_id
123 ,business_group_name
124 ,api_module_id
125 ,line_status
126 ,user_sequence
127 ,link_value
128 ,pval001
129 ,pval002
130 ,pval003
131 ,pval004
132 ,pval005
133 ,pval006
134 ,pval007
135 ,pval008
136 ,pval009
137 ,pval010
138 ,pval011
139 ,pval012
140 ,pval013
141 ,pval014
142 ,pval015
143 ,pval016
144 ,pval017
145 ,pval018
146 ,pval019
147 ,pval020
148 ,pval021
149 ,pval022
150 ,pval023
151 ,pval024
152 ,pval025
153 ,pval026
154 ,pval027
155 ,pval028
156 ,pval029
157 ,pval030
158 ,pval031)
159 values
160 (p_batch_id
161 ,nvl(blid,hr_pump_batch_lines_s.nextval)
162 ,p_data_pump_business_grp_name
163 ,3795
164 ,'U'
165 ,p_user_sequence
166 ,p_link_value
167 ,P_BATCH_NAME
168 ,dc(P_DISTRIBUTION_DATE)
169 ,P_PERSON_ID
170 ,P_ASSIGNMENT_ID
171 ,P_CURRENCY_CODE
172 ,P_DISTRIBUTION_AMOUNT
173 ,P_SET_OF_BOOKS_ID
174 ,P_GL_CODE_COMBINATION_ID
175 ,P_PROJECT_ID
176 ,P_TASK_ID
177 ,P_AWARD_ID
178 ,P_EXPENDITURE_ORGANIZATION_ID
179 ,P_EXPENDITURE_TYPE
180 ,P_ATTRIBUTE_CATEGORY
181 ,P_ATTRIBUTE1
182 ,P_ATTRIBUTE2
183 ,P_ATTRIBUTE3
184 ,P_ATTRIBUTE4
185 ,P_ATTRIBUTE5
186 ,P_ATTRIBUTE6
187 ,P_ATTRIBUTE7
188 ,P_ATTRIBUTE8
189 ,P_ATTRIBUTE9
190 ,P_ATTRIBUTE10
191 ,P_ATTRIBUTE11
192 ,P_ATTRIBUTE12
193 ,P_ATTRIBUTE13
194 ,P_ATTRIBUTE14
195 ,P_ATTRIBUTE15
196 ,P_OBJECT_VERSION_NUMBER
197 ,P_EXT_EFFORT_LINES_USER_KEY);
198 end insert_batch_lines;
199 --
200 procedure call
201 (p_business_group_id in number,
202 p_batch_line_id     in number) is
203 cursor cr is
204 select l.rowid myrowid,
205 decode(l.pval001,cn,vn,l.pval001) p1,
206 decode(l.pval002,cn,dn,d(l.pval002)) p2,
207 decode(l.pval003,cn,nn,n(l.pval003)) p3,
208 decode(l.pval004,cn,nn,n(l.pval004)) p4,
209 decode(l.pval005,cn,vn,l.pval005) p5,
210 decode(l.pval006,cn,nn,n(l.pval006)) p6,
211 decode(l.pval007,cn,nn,n(l.pval007)) p7,
212 decode(l.pval008,cn,nn,vn,NULL,n(l.pval008)) p8,
213 l.pval008 d8,
214 decode(l.pval009,cn,nn,vn,NULL,n(l.pval009)) p9,
215 l.pval009 d9,
216 decode(l.pval010,cn,nn,vn,NULL,n(l.pval010)) p10,
217 l.pval010 d10,
218 decode(l.pval011,cn,nn,vn,NULL,n(l.pval011)) p11,
219 l.pval011 d11,
220 decode(l.pval012,cn,nn,vn,NULL,n(l.pval012)) p12,
221 l.pval012 d12,
222 decode(l.pval013,cn,vn,vn,NULL,l.pval013) p13,
223 l.pval013 d13,
224 decode(l.pval014,cn,vn,vn,NULL,l.pval014) p14,
225 l.pval014 d14,
226 decode(l.pval015,cn,vn,vn,NULL,l.pval015) p15,
227 l.pval015 d15,
228 decode(l.pval016,cn,vn,vn,NULL,l.pval016) p16,
229 l.pval016 d16,
230 decode(l.pval017,cn,vn,vn,NULL,l.pval017) p17,
231 l.pval017 d17,
232 decode(l.pval018,cn,vn,vn,NULL,l.pval018) p18,
233 l.pval018 d18,
234 decode(l.pval019,cn,vn,vn,NULL,l.pval019) p19,
235 l.pval019 d19,
236 decode(l.pval020,cn,vn,vn,NULL,l.pval020) p20,
237 l.pval020 d20,
238 decode(l.pval021,cn,vn,vn,NULL,l.pval021) p21,
239 l.pval021 d21,
240 decode(l.pval022,cn,vn,vn,NULL,l.pval022) p22,
241 l.pval022 d22,
242 decode(l.pval023,cn,vn,vn,NULL,l.pval023) p23,
243 l.pval023 d23,
244 decode(l.pval024,cn,vn,vn,NULL,l.pval024) p24,
245 l.pval024 d24,
246 decode(l.pval025,cn,vn,vn,NULL,l.pval025) p25,
247 l.pval025 d25,
248 decode(l.pval026,cn,vn,vn,NULL,l.pval026) p26,
249 l.pval026 d26,
250 decode(l.pval027,cn,vn,vn,NULL,l.pval027) p27,
251 l.pval027 d27,
252 decode(l.pval028,cn,vn,vn,NULL,l.pval028) p28,
253 l.pval028 d28,
254 decode(l.pval029,cn,vn,vn,NULL,l.pval029) p29,
255 l.pval029 d29,
256 decode(l.pval030,cn,nn,n(l.pval030)) p30,
257 l.pval031 p31,
258 l.pval032 p32
259 from hr_pump_batch_lines l
260 where l.batch_line_id = p_batch_line_id;
261 --
262 c cr%rowtype;
263 l_validate boolean := false;
264 L_EXTERNAL_EFFORT_LINE_ID number;
265 L_RETURN_STATUS boolean;
266 --
267 begin
268 hr_data_pump.entry('call');
269 open cr;
270 fetch cr into c;
271 if cr%notfound then
272 hr_utility.set_message(800,'HR_50326_DP_NO_ROW');
273 hr_utility.set_message_token('TABLE','HR_PUMP_BATCH_LINES');
274 hr_utility.set_message_token('COLUMN','P_BATCH_LINE_ID');
275 hr_utility.set_message_token('VALUE',p_batch_line_id);
276 hr_utility.raise_error;
277 end if;
278 --
279 hr_data_pump.api_trc_on;
280 PSP_EXTERNAL_EFFORT_LINES_API.INSERT_EXTERNAL_EFFORT_LINE
281 (p_validate => l_validate
282 ,P_BATCH_NAME => c.p1
283 ,P_DISTRIBUTION_DATE => c.p2
284 ,P_PERSON_ID => c.p3
285 ,P_ASSIGNMENT_ID => c.p4
286 ,P_CURRENCY_CODE => c.p5
287 ,P_DISTRIBUTION_AMOUNT => c.p6
288 ,p_business_group_id => p_business_group_id
289 ,P_SET_OF_BOOKS_ID => c.p7
290 ,P_GL_CODE_COMBINATION_ID => c.p8
291 ,P_PROJECT_ID => c.p9
292 ,P_TASK_ID => c.p10
293 ,P_AWARD_ID => c.p11
294 ,P_EXPENDITURE_ORGANIZATION_ID => c.p12
295 ,P_EXPENDITURE_TYPE => c.p13
296 ,P_ATTRIBUTE_CATEGORY => c.p14
297 ,P_ATTRIBUTE1 => c.p15
298 ,P_ATTRIBUTE2 => c.p16
299 ,P_ATTRIBUTE3 => c.p17
300 ,P_ATTRIBUTE4 => c.p18
301 ,P_ATTRIBUTE5 => c.p19
302 ,P_ATTRIBUTE6 => c.p20
303 ,P_ATTRIBUTE7 => c.p21
304 ,P_ATTRIBUTE8 => c.p22
305 ,P_ATTRIBUTE9 => c.p23
306 ,P_ATTRIBUTE10 => c.p24
307 ,P_ATTRIBUTE11 => c.p25
308 ,P_ATTRIBUTE12 => c.p26
309 ,P_ATTRIBUTE13 => c.p27
310 ,P_ATTRIBUTE14 => c.p28
311 ,P_ATTRIBUTE15 => c.p29
312 ,P_OBJECT_VERSION_NUMBER => c.p30
313 ,P_EXTERNAL_EFFORT_LINE_ID => L_EXTERNAL_EFFORT_LINE_ID
314 ,P_RETURN_STATUS => L_RETURN_STATUS);
315 hr_data_pump.api_trc_off;
316 --
317 iuk(p_batch_line_id,c.p31,L_EXTERNAL_EFFORT_LINE_ID);
318 --
319 if L_RETURN_STATUS then
320 c.p32 := 'TRUE';
321 else
322 c.p32 := 'FALSE';
323 end if;
324 --
325 update hr_pump_batch_lines l set
326 l.pval030 = decode(c.p30,null,cn,c.p30),
327 l.pval031 = decode(c.p31,null,cn,c.p31),
328 l.pval032 = decode(c.p32,null,cn,c.p32)
329 where l.rowid = c.myrowid;
330 --
331 close cr;
332 --
333 hr_data_pump.exit('call');
334 exception
335  when hr_multi_message.error_message_exist then
336    if cr%isopen then
337     close cr;
338    end if;
339    hr_pump_utils.set_multi_msg_error_flag(true);
340  when others then
341  if cr%isopen then
342   close cr;
343  end if;
344  raise;
345 end call;
346 end hrdpp_INSERT_EXTERNAL_EFFORT_L;