DBA Data[Home] [Help]

PACKAGE BODY: APPS.HRDPP_MAINTAIN_SUPER_INFO

Source


1 package body hrdpp_MAINTAIN_SUPER_INFO as
2 /*
3  * Generated by hr_pump_meta_mapper at: 2009/03/30 04:03:39
4  * Generated for API: HR_AU_TAX_API.MAINTAIN_SUPER_INFO
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_EFFECTIVE_START_DATE in date
83 ,P_EFFECTIVE_END_DATE in date
84 ,P_SESSION_DATE in date
85 ,P_MODE in varchar2
86 ,P_ATTRIBUTE_CATEGORY in varchar2 default null
87 ,P_ATTRIBUTE1 in varchar2 default null
88 ,P_ATTRIBUTE2 in varchar2 default null
89 ,P_ATTRIBUTE3 in varchar2 default null
90 ,P_ATTRIBUTE4 in varchar2 default null
91 ,P_ATTRIBUTE5 in varchar2 default null
92 ,P_ATTRIBUTE6 in varchar2 default null
93 ,P_ATTRIBUTE7 in varchar2 default null
94 ,P_ATTRIBUTE8 in varchar2 default null
95 ,P_ATTRIBUTE9 in varchar2 default null
96 ,P_ATTRIBUTE10 in varchar2 default null
97 ,P_ATTRIBUTE11 in varchar2 default null
98 ,P_ATTRIBUTE12 in varchar2 default null
99 ,P_ATTRIBUTE13 in varchar2 default null
100 ,P_ATTRIBUTE14 in varchar2 default null
101 ,P_ATTRIBUTE15 in varchar2 default null
102 ,P_ATTRIBUTE16 in varchar2 default null
103 ,P_ATTRIBUTE17 in varchar2 default null
104 ,P_ATTRIBUTE18 in varchar2 default null
105 ,P_ATTRIBUTE19 in varchar2 default null
106 ,P_ATTRIBUTE20 in varchar2 default null
107 ,P_TFN_FOR_SUPER_FLAG in varchar2 default null
108 ,P_ASSIGNMENT_USER_KEY in varchar2) is
109 blid number := p_data_pump_batch_line_id;
110 begin
111 if blid is not null then
112 delete from hr_pump_batch_lines where batch_line_id = blid;
113 delete from hr_pump_batch_exceptions
114 where source_type = 'BATCH_LINE' and source_id = blid;
115 end if;
116 insert into hr_pump_batch_lines
117 (batch_id
118 ,batch_line_id
119 ,business_group_name
120 ,api_module_id
121 ,line_status
122 ,user_sequence
123 ,link_value
124 ,pval001
125 ,pval002
126 ,pval003
127 ,pval004
128 ,pval005
129 ,pval006
130 ,pval007
131 ,pval008
132 ,pval009
133 ,pval010
134 ,pval011
135 ,pval012
136 ,pval013
137 ,pval014
138 ,pval015
139 ,pval016
140 ,pval017
141 ,pval018
142 ,pval019
143 ,pval020
144 ,pval021
145 ,pval022
146 ,pval023
147 ,pval024
148 ,pval025
149 ,pval026
150 ,pval028)
151 values
152 (p_batch_id
153 ,nvl(blid,hr_pump_batch_lines_s.nextval)
154 ,p_data_pump_business_grp_name
155 ,2168
156 ,'U'
157 ,p_user_sequence
158 ,p_link_value
159 ,dc(P_EFFECTIVE_START_DATE)
160 ,dc(P_EFFECTIVE_END_DATE)
161 ,dc(P_SESSION_DATE)
162 ,P_MODE
163 ,P_ATTRIBUTE_CATEGORY
164 ,P_ATTRIBUTE1
165 ,P_ATTRIBUTE2
166 ,P_ATTRIBUTE3
167 ,P_ATTRIBUTE4
168 ,P_ATTRIBUTE5
169 ,P_ATTRIBUTE6
170 ,P_ATTRIBUTE7
171 ,P_ATTRIBUTE8
172 ,P_ATTRIBUTE9
173 ,P_ATTRIBUTE10
174 ,P_ATTRIBUTE11
175 ,P_ATTRIBUTE12
176 ,P_ATTRIBUTE13
177 ,P_ATTRIBUTE14
178 ,P_ATTRIBUTE15
179 ,P_ATTRIBUTE16
180 ,P_ATTRIBUTE17
181 ,P_ATTRIBUTE18
182 ,P_ATTRIBUTE19
183 ,P_ATTRIBUTE20
184 ,P_TFN_FOR_SUPER_FLAG
185 ,P_ASSIGNMENT_USER_KEY);
186 end insert_batch_lines;
187 --
188 procedure call
189 (p_business_group_id in number,
190 p_batch_line_id     in number) is
191 cursor cr is
192 select l.rowid myrowid,
193 decode(l.pval001,cn,dn,d(l.pval001)) p1,
194 decode(l.pval002,cn,dn,d(l.pval002)) p2,
195 decode(l.pval003,cn,dn,d(l.pval003)) p3,
196 decode(l.pval004,cn,vn,l.pval004) p4,
197 decode(l.pval005,cn,vn,vn,vh,l.pval005) p5,
198 l.pval005 d5,
199 decode(l.pval006,cn,vn,vn,vh,l.pval006) p6,
200 l.pval006 d6,
201 decode(l.pval007,cn,vn,vn,vh,l.pval007) p7,
202 l.pval007 d7,
203 decode(l.pval008,cn,vn,vn,vh,l.pval008) p8,
204 l.pval008 d8,
205 decode(l.pval009,cn,vn,vn,vh,l.pval009) p9,
206 l.pval009 d9,
207 decode(l.pval010,cn,vn,vn,vh,l.pval010) p10,
208 l.pval010 d10,
209 decode(l.pval011,cn,vn,vn,vh,l.pval011) p11,
210 l.pval011 d11,
211 decode(l.pval012,cn,vn,vn,vh,l.pval012) p12,
212 l.pval012 d12,
213 decode(l.pval013,cn,vn,vn,vh,l.pval013) p13,
214 l.pval013 d13,
215 decode(l.pval014,cn,vn,vn,vh,l.pval014) p14,
216 l.pval014 d14,
217 decode(l.pval015,cn,vn,vn,vh,l.pval015) p15,
218 l.pval015 d15,
219 decode(l.pval016,cn,vn,vn,vh,l.pval016) p16,
220 l.pval016 d16,
221 decode(l.pval017,cn,vn,vn,vh,l.pval017) p17,
222 l.pval017 d17,
223 decode(l.pval018,cn,vn,vn,vh,l.pval018) p18,
224 l.pval018 d18,
225 decode(l.pval019,cn,vn,vn,vh,l.pval019) p19,
226 l.pval019 d19,
227 decode(l.pval020,cn,vn,vn,vh,l.pval020) p20,
228 l.pval020 d20,
229 decode(l.pval021,cn,vn,vn,vh,l.pval021) p21,
230 l.pval021 d21,
231 decode(l.pval022,cn,vn,vn,vh,l.pval022) p22,
232 l.pval022 d22,
233 decode(l.pval023,cn,vn,vn,vh,l.pval023) p23,
234 l.pval023 d23,
235 decode(l.pval024,cn,vn,vn,vh,l.pval024) p24,
236 l.pval024 d24,
237 decode(l.pval025,cn,vn,vn,vh,l.pval025) p25,
238 l.pval025 d25,
239 decode(l.pval026,cn,vn,vn,'NO',
240  hr_pump_get.gl(l.pval026,'YES_NO',dn,vn)) p26,
241 l.pval026 d26,
242 l.pval027 p27,
243 decode(l.pval028,cn,vn,l.pval028) p28
244 from hr_pump_batch_lines l
245 where l.batch_line_id = p_batch_line_id;
246 --
247 c cr%rowtype;
248 l_validate boolean := false;
249 L_UPDATE_WARNING boolean;
250 L_ASSIGNMENT_ID number;
251 --
252 begin
253 hr_data_pump.entry('call');
254 open cr;
255 fetch cr into c;
256 if cr%notfound then
257 hr_utility.set_message(800,'HR_50326_DP_NO_ROW');
258 hr_utility.set_message_token('TABLE','HR_PUMP_BATCH_LINES');
259 hr_utility.set_message_token('COLUMN','P_BATCH_LINE_ID');
260 hr_utility.set_message_token('VALUE',p_batch_line_id);
261 hr_utility.raise_error;
262 end if;
263 --
264 if c.p28 is null then
265 L_ASSIGNMENT_ID:=nn;
266 else
267 L_ASSIGNMENT_ID := 
268 hr_pump_get.get_assignment_id
269 (P_ASSIGNMENT_USER_KEY => c.p28);
270 end if;
271 --
272 hr_data_pump.api_trc_on;
273 HR_AU_TAX_API.MAINTAIN_SUPER_INFO
274 (p_validate => l_validate
275 ,P_ASSIGNMENT_ID => L_ASSIGNMENT_ID
276 ,P_EFFECTIVE_START_DATE => c.p1
277 ,P_EFFECTIVE_END_DATE => c.p2
278 ,P_SESSION_DATE => c.p3
279 ,P_MODE => c.p4
280 ,p_business_group_id => p_business_group_id
281 ,P_ATTRIBUTE_CATEGORY => c.p5
282 ,P_ATTRIBUTE1 => c.p6
283 ,P_ATTRIBUTE2 => c.p7
284 ,P_ATTRIBUTE3 => c.p8
285 ,P_ATTRIBUTE4 => c.p9
286 ,P_ATTRIBUTE5 => c.p10
287 ,P_ATTRIBUTE6 => c.p11
288 ,P_ATTRIBUTE7 => c.p12
289 ,P_ATTRIBUTE8 => c.p13
290 ,P_ATTRIBUTE9 => c.p14
291 ,P_ATTRIBUTE10 => c.p15
292 ,P_ATTRIBUTE11 => c.p16
293 ,P_ATTRIBUTE12 => c.p17
294 ,P_ATTRIBUTE13 => c.p18
295 ,P_ATTRIBUTE14 => c.p19
296 ,P_ATTRIBUTE15 => c.p20
297 ,P_ATTRIBUTE16 => c.p21
298 ,P_ATTRIBUTE17 => c.p22
299 ,P_ATTRIBUTE18 => c.p23
300 ,P_ATTRIBUTE19 => c.p24
301 ,P_ATTRIBUTE20 => c.p25
302 ,P_TFN_FOR_SUPER_FLAG => c.p26
303 ,P_UPDATE_WARNING => L_UPDATE_WARNING);
304 hr_data_pump.api_trc_off;
305 --
306 if L_UPDATE_WARNING then
307 c.p27 := 'TRUE';
308 else
309 c.p27 := 'FALSE';
310 end if;
311 --
312 update hr_pump_batch_lines l set
313 l.pval001 = decode(c.p1,null,cn,dc(c.p1)),
314 l.pval002 = decode(c.p2,null,cn,dc(c.p2)),
315 l.pval027 = decode(c.p27,null,cn,c.p27)
316 where l.rowid = c.myrowid;
317 --
318 close cr;
319 --
320 hr_data_pump.exit('call');
321 exception
322  when hr_multi_message.error_message_exist then
323    if cr%isopen then
324     close cr;
325    end if;
326    hr_pump_utils.set_multi_msg_error_flag(true);
327  when others then
328  if cr%isopen then
329   close cr;
330  end if;
331  raise;
332 end call;
333 end hrdpp_MAINTAIN_SUPER_INFO;