[Home] [Help]
PACKAGE BODY: APPS.PSP_PAYROLL_SUB_LINES_PKG
Source
1 package body PSP_PAYROLL_SUB_LINES_PKG as
2 /* $Header: PSPPITSB.pls 120.0 2005/06/02 16:01:30 appldev noship $ */
3 procedure INSERT_ROW (
4 X_ROWID in out NOCOPY VARCHAR2,
5 X_PAYROLL_SUB_LINE_ID in NUMBER,
6 X_PAYROLL_LINE_ID in NUMBER,
7 X_SUB_LINE_START_DATE in DATE,
8 X_SUB_LINE_END_DATE in DATE,
9 X_REASON_CODE in VARCHAR2,
10 X_PAY_AMOUNT in NUMBER,
11 X_DAILY_RATE in NUMBER,
12 X_SALARY_USED in NUMBER,
13 X_CURRENT_SALARY in NUMBER,
14 X_FTE in NUMBER,
15 X_ORGANIZATION_ID in NUMBER,
16 X_JOB_ID in NUMBER,
17 X_POSITION_ID in NUMBER,
18 X_GRADE_ID in NUMBER,
19 X_PEOPLE_GRP_ID in NUMBER,
20 X_EMPLOYMENT_BEGIN_DATE in DATE,
21 X_EMPLOYMENT_END_DATE in DATE,
22 X_EMPLOYEE_STATUS_INACTIVE_DAT in DATE,
23 X_EMPLOYEE_STATUS_ACTIVE_DATE in DATE,
24 X_ASSIGNMENT_BEGIN_DATE in DATE,
25 X_ASSIGNMENT_END_DATE in DATE,
26 X_ATTRIBUTE_CATEGORY IN VARCHAR2, -- Introduced DFF columns for bug fix 2908859
27 X_ATTRIBUTE1 IN VARCHAR2,
28 X_ATTRIBUTE2 IN VARCHAR2,
29 X_ATTRIBUTE3 IN VARCHAR2,
30 X_ATTRIBUTE4 IN VARCHAR2,
31 X_ATTRIBUTE5 IN VARCHAR2,
32 X_ATTRIBUTE6 IN VARCHAR2,
33 X_ATTRIBUTE7 IN VARCHAR2,
34 X_ATTRIBUTE8 IN VARCHAR2,
35 X_ATTRIBUTE9 IN VARCHAR2,
36 X_ATTRIBUTE10 IN VARCHAR2,
37 X_MODE in VARCHAR2 default 'R'
38 ) is
39 cursor C is select ROWID from PSP_PAYROLL_SUB_LINES
40 where PAYROLL_SUB_LINE_ID = X_PAYROLL_SUB_LINE_ID;
41 X_LAST_UPDATE_DATE DATE;
42 X_LAST_UPDATED_BY NUMBER;
43 X_LAST_UPDATE_LOGIN NUMBER;
44 begin
45 X_LAST_UPDATE_DATE := SYSDATE;
46 if(X_MODE = 'I') then
47 X_LAST_UPDATED_BY := 1;
48 X_LAST_UPDATE_LOGIN := 0;
49 elsif (X_MODE = 'R') then
50 X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
51 if X_LAST_UPDATED_BY is NULL then
52 X_LAST_UPDATED_BY := -1;
53 end if;
54 X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
55 if X_LAST_UPDATE_LOGIN is NULL then
56 X_LAST_UPDATE_LOGIN := -1;
57 end if;
58 else
59 FND_MESSAGE.SET_NAME( 'FND', 'SYSTEM-INVALID ARGS');
60 app_exception.raise_exception;
61 end if;
62 insert into PSP_PAYROLL_SUB_LINES (
63 PAYROLL_SUB_LINE_ID,
64 PAYROLL_LINE_ID,
65 SUB_LINE_START_DATE,
66 SUB_LINE_END_DATE,
67 REASON_CODE,
68 PAY_AMOUNT,
69 DAILY_RATE,
70 SALARY_USED,
71 CURRENT_SALARY,
72 FTE,
73 ORGANIZATION_ID,
74 JOB_ID,
75 POSITION_ID,
76 GRADE_ID,
77 PEOPLE_GROUP_ID,
78 EMPLOYMENT_BEGIN_DATE,
79 EMPLOYMENT_END_DATE,
80 EMPLOYEE_STATUS_INACTIVE_DATE,
81 EMPLOYEE_STATUS_ACTIVE_DATE,
82 ASSIGNMENT_BEGIN_DATE,
83 ASSIGNMENT_END_DATE,
84 CREATION_DATE,
85 CREATED_BY,
86 LAST_UPDATE_DATE,
87 LAST_UPDATED_BY,
88 LAST_UPDATE_LOGIN,
89 ATTRIBUTE_CATEGORY, -- Introduced DFF columns for bug fix 2908859
90 ATTRIBUTE1,
91 ATTRIBUTE2,
92 ATTRIBUTE3,
93 ATTRIBUTE4,
94 ATTRIBUTE5,
95 ATTRIBUTE6,
96 ATTRIBUTE7,
97 ATTRIBUTE8,
98 ATTRIBUTE9,
99 ATTRIBUTE10
100 ) values (
101 X_PAYROLL_SUB_LINE_ID,
102 X_PAYROLL_LINE_ID,
103 X_SUB_LINE_START_DATE,
104 X_SUB_LINE_END_DATE,
105 X_REASON_CODE,
106 X_PAY_AMOUNT,
107 X_DAILY_RATE,
108 X_SALARY_USED,
109 X_CURRENT_SALARY,
110 X_FTE,
111 X_ORGANIZATION_ID,
112 X_JOB_ID,
113 X_POSITION_ID,
114 X_GRADE_ID ,
115 X_PEOPLE_GRP_ID ,
116 X_EMPLOYMENT_BEGIN_DATE,
117 X_EMPLOYMENT_END_DATE,
118 X_EMPLOYEE_STATUS_INACTIVE_DAT,
119 X_EMPLOYEE_STATUS_ACTIVE_DATE,
120 X_ASSIGNMENT_BEGIN_DATE,
121 X_ASSIGNMENT_END_DATE,
122 X_LAST_UPDATE_DATE,
123 X_LAST_UPDATED_BY,
124 X_LAST_UPDATE_DATE,
125 X_LAST_UPDATED_BY,
126 X_LAST_UPDATE_LOGIN,
127 X_ATTRIBUTE_CATEGORY, -- Introduced DFF columns for bug fix 2908859
128 X_ATTRIBUTE1,
129 X_ATTRIBUTE2,
130 X_ATTRIBUTE3,
131 X_ATTRIBUTE4,
132 X_ATTRIBUTE5,
133 X_ATTRIBUTE6,
134 X_ATTRIBUTE7,
135 X_ATTRIBUTE8,
136 X_ATTRIBUTE9,
137 X_ATTRIBUTE10
138 );
139
140 open c;
141 fetch c into X_ROWID;
142 if (c%notfound) then
143 close c;
144 raise no_data_found;
145 end if;
146 close c;
147
148 end INSERT_ROW;
149
150 procedure LOCK_ROW (
151 X_PAYROLL_SUB_LINE_ID in NUMBER,
152 X_PAYROLL_LINE_ID in NUMBER,
153 X_SUB_LINE_START_DATE in DATE,
154 X_SUB_LINE_END_DATE in DATE,
155 X_REASON_CODE in VARCHAR2,
156 X_PAY_AMOUNT in NUMBER,
157 X_DAILY_RATE in NUMBER,
158 X_SALARY_USED in NUMBER,
159 X_CURRENT_SALARY in NUMBER,
160 X_FTE in NUMBER,
161 X_ORGANIZATION_ID in NUMBER,
162 X_JOB_ID in NUMBER,
163 X_POSITION_ID in NUMBER,
164 X_GRADE_ID in NUMBER,
165 X_PEOPLE_GRP_ID in NUMBER,
166 X_EMPLOYMENT_BEGIN_DATE in DATE,
167 X_EMPLOYMENT_END_DATE in DATE,
168 X_EMPLOYEE_STATUS_INACTIVE_DAT in DATE,
169 X_EMPLOYEE_STATUS_ACTIVE_DATE in DATE,
170 X_ASSIGNMENT_BEGIN_DATE in DATE,
171 X_ASSIGNMENT_END_DATE in DATE,
172 X_ATTRIBUTE_CATEGORY IN VARCHAR2, -- Introduced DFF columns for bug fix 2908859
173 X_ATTRIBUTE1 IN VARCHAR2,
174 X_ATTRIBUTE2 IN VARCHAR2,
175 X_ATTRIBUTE3 IN VARCHAR2,
176 X_ATTRIBUTE4 IN VARCHAR2,
177 X_ATTRIBUTE5 IN VARCHAR2,
178 X_ATTRIBUTE6 IN VARCHAR2,
179 X_ATTRIBUTE7 IN VARCHAR2,
180 X_ATTRIBUTE8 IN VARCHAR2,
181 X_ATTRIBUTE9 IN VARCHAR2,
182 X_ATTRIBUTE10 IN VARCHAR2
183 ) is
184 cursor c1 is select
185 PAYROLL_LINE_ID,
186 SUB_LINE_START_DATE,
187 SUB_LINE_END_DATE,
188 REASON_CODE,
189 PAY_AMOUNT,
190 DAILY_RATE,
191 SALARY_USED,
192 CURRENT_SALARY,
193 FTE,
194 ORGANIZATION_ID,
195 JOB_ID,
196 POSITION_ID,
197 GRADE_ID,
198 PEOPLE_GROUP_ID,
199 EMPLOYMENT_BEGIN_DATE,
200 EMPLOYMENT_END_DATE,
201 EMPLOYEE_STATUS_INACTIVE_DATE,
202 EMPLOYEE_STATUS_ACTIVE_DATE,
203 ASSIGNMENT_BEGIN_DATE,
204 ASSIGNMENT_END_DATE,
205 ATTRIBUTE_CATEGORY,
206 ATTRIBUTE1,
207 ATTRIBUTE2,
208 ATTRIBUTE3,
209 ATTRIBUTE4,
210 ATTRIBUTE5,
211 ATTRIBUTE6,
212 ATTRIBUTE7,
213 ATTRIBUTE8,
214 ATTRIBUTE9,
215 ATTRIBUTE10
216 from PSP_PAYROLL_SUB_LINES
217 where PAYROLL_SUB_LINE_ID = X_PAYROLL_SUB_LINE_ID
218 for update of PAYROLL_SUB_LINE_ID nowait;
219 tlinfo c1%rowtype;
220
221 begin
222 open c1;
223 fetch c1 into tlinfo;
224 if (c1%notfound) then
225 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
226 app_exception.raise_exception;
227 close c1;
228 return;
229 end if;
230 close c1;
231
232 if ( (tlinfo.PAYROLL_LINE_ID = X_PAYROLL_LINE_ID)
233 AND (tlinfo.SUB_LINE_START_DATE = X_SUB_LINE_START_DATE)
234 AND (tlinfo.SUB_LINE_END_DATE = X_SUB_LINE_END_DATE)
235 AND ((tlinfo.REASON_CODE = X_REASON_CODE)
236 OR ((tlinfo.REASON_CODE is null)
237 AND (X_REASON_CODE is null)))
238 AND (tlinfo.PAY_AMOUNT = X_PAY_AMOUNT)
239 AND (tlinfo.DAILY_RATE = X_DAILY_RATE)
240 AND (tlinfo.SALARY_USED = X_SALARY_USED)
241 AND ((tlinfo.CURRENT_SALARY = X_CURRENT_SALARY)
242 OR ((tlinfo.CURRENT_SALARY is null)
243 AND (X_CURRENT_SALARY is null)))
244 AND ((tlinfo.FTE = X_FTE)
245 OR ((tlinfo.FTE is null)
246 AND (X_FTE is null)))
247 AND ((tlinfo.ORGANIZATION_ID = X_ORGANIZATION_ID)
248 OR ((tlinfo.ORGANIZATION_ID is null)
249 AND (X_ORGANIZATION_ID is null)))
250 AND ((tlinfo.JOB_ID = X_JOB_ID)
251 OR ((tlinfo.JOB_ID is null)
252 AND (X_JOB_ID is null)))
253 AND ((tlinfo.POSITION_ID = X_POSITION_ID)
254 OR ((tlinfo.POSITION_ID is null)
255 AND (X_POSITION_ID is null)))
256 AND ((tlinfo.GRADE_ID = X_GRADE_ID)
257 OR ((tlinfo.GRADE_ID is null)
258 AND (X_GRADE_ID is null)))
259 AND ((tlinfo.PEOPLE_GROUP_ID = X_PEOPLE_GRP_ID)
260 OR ((tlinfo.PEOPLE_GROUP_ID is null)
261 AND (X_PEOPLE_GRP_ID is null)))
262 AND ((tlinfo.EMPLOYMENT_BEGIN_DATE = X_EMPLOYMENT_BEGIN_DATE)
263 OR ((tlinfo.EMPLOYMENT_BEGIN_DATE is null)
264 AND (X_EMPLOYMENT_BEGIN_DATE is null)))
265 AND ((tlinfo.EMPLOYMENT_END_DATE = X_EMPLOYMENT_END_DATE)
266 OR ((tlinfo.EMPLOYMENT_END_DATE is null)
267 AND (X_EMPLOYMENT_END_DATE is null)))
268 AND ((tlinfo.EMPLOYEE_STATUS_INACTIVE_DATE = X_EMPLOYEE_STATUS_INACTIVE_DAT)
269 OR ((tlinfo.EMPLOYEE_STATUS_INACTIVE_DATE is null)
270 AND (X_EMPLOYEE_STATUS_INACTIVE_DAT is null)))
271 AND ((tlinfo.EMPLOYEE_STATUS_ACTIVE_DATE = X_EMPLOYEE_STATUS_ACTIVE_DATE)
272 OR ((tlinfo.EMPLOYEE_STATUS_ACTIVE_DATE is null)
273 AND (X_EMPLOYEE_STATUS_ACTIVE_DATE is null)))
274 AND ((tlinfo.ASSIGNMENT_BEGIN_DATE = X_ASSIGNMENT_BEGIN_DATE)
275 OR ((tlinfo.ASSIGNMENT_BEGIN_DATE is null)
276 AND (X_ASSIGNMENT_BEGIN_DATE is null)))
277 AND ((tlinfo.ASSIGNMENT_END_DATE = X_ASSIGNMENT_END_DATE)
278 OR ((tlinfo.ASSIGNMENT_END_DATE is null)
279 AND (X_ASSIGNMENT_END_DATE is null)))
280 AND ((tlinfo.ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY) -- Introduced DFF columns for bug fix 2908859
281 OR ((tlinfo.ATTRIBUTE_CATEGORY is null)
282 AND (X_ATTRIBUTE_CATEGORY is null)))
283 AND ((tlinfo.ATTRIBUTE1 = X_ATTRIBUTE1)
284 OR ((tlinfo.ATTRIBUTE1 is null)
285 AND (X_ATTRIBUTE1 is null)))
286 AND ((tlinfo.ATTRIBUTE2 = X_ATTRIBUTE2)
287 OR ((tlinfo.ATTRIBUTE2 is null)
288 AND (X_ATTRIBUTE2 is null)))
289 AND ((tlinfo.ATTRIBUTE3 = X_ATTRIBUTE3)
290 OR ((tlinfo.ATTRIBUTE3 is null)
291 AND (X_ATTRIBUTE3 is null)))
292 AND ((tlinfo.ATTRIBUTE4 = X_ATTRIBUTE4)
293 OR ((tlinfo.ATTRIBUTE4 is null)
294 AND (X_ATTRIBUTE4 is null)))
295 AND ((tlinfo.ATTRIBUTE5 = X_ATTRIBUTE5)
296 OR ((tlinfo.ATTRIBUTE5 is null)
297 AND (X_ATTRIBUTE5 is null)))
298 AND ((tlinfo.ATTRIBUTE6 = X_ATTRIBUTE6)
299 OR ((tlinfo.ATTRIBUTE6 is null)
300 AND (X_ATTRIBUTE6 is null)))
301 AND ((tlinfo.ATTRIBUTE7 = X_ATTRIBUTE7)
302 OR ((tlinfo.ATTRIBUTE7 is null)
303 AND (X_ATTRIBUTE7 is null)))
304 AND ((tlinfo.ATTRIBUTE8 = X_ATTRIBUTE8)
305 OR ((tlinfo.ATTRIBUTE8 is null)
306 AND (X_ATTRIBUTE8 is null)))
307 AND ((tlinfo.ATTRIBUTE9 = X_ATTRIBUTE9)
308 OR ((tlinfo.ATTRIBUTE9 is null)
309 AND (X_ATTRIBUTE9 is null)))
310 AND ((tlinfo.ATTRIBUTE10 = X_ATTRIBUTE10)
311 OR ((tlinfo.ATTRIBUTE10 is null)
312 AND (X_ATTRIBUTE10 is null)))
313 ) then
314 null;
315 else
316 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
317 app_exception.raise_exception;
318 end if;
319 return;
320 end LOCK_ROW;
321
322 procedure UPDATE_ROW (
323 X_PAYROLL_SUB_LINE_ID in NUMBER,
324 X_PAYROLL_LINE_ID in NUMBER,
325 X_SUB_LINE_START_DATE in DATE,
326 X_SUB_LINE_END_DATE in DATE,
327 X_REASON_CODE in VARCHAR2,
328 X_PAY_AMOUNT in NUMBER,
329 X_DAILY_RATE in NUMBER,
330 X_SALARY_USED in NUMBER,
331 X_CURRENT_SALARY in NUMBER,
332 X_FTE in NUMBER,
333 X_ORGANIZATION_ID in NUMBER,
334 X_JOB_ID in NUMBER,
335 X_POSITION_ID in NUMBER,
336 X_GRADE_ID in NUMBER,
337 X_PEOPLE_GRP_ID in NUMBER,
338 X_EMPLOYMENT_BEGIN_DATE in DATE,
339 X_EMPLOYMENT_END_DATE in DATE,
340 X_EMPLOYEE_STATUS_INACTIVE_DAT in DATE,
341 X_EMPLOYEE_STATUS_ACTIVE_DATE in DATE,
342 X_ASSIGNMENT_BEGIN_DATE in DATE,
343 X_ASSIGNMENT_END_DATE in DATE,
344 X_ATTRIBUTE_CATEGORY IN VARCHAR2, -- Introduced DFF columns for bug fix 2908859
345 X_ATTRIBUTE1 IN VARCHAR2,
346 X_ATTRIBUTE2 IN VARCHAR2,
347 X_ATTRIBUTE3 IN VARCHAR2,
348 X_ATTRIBUTE4 IN VARCHAR2,
349 X_ATTRIBUTE5 IN VARCHAR2,
350 X_ATTRIBUTE6 IN VARCHAR2,
351 X_ATTRIBUTE7 IN VARCHAR2,
352 X_ATTRIBUTE8 IN VARCHAR2,
353 X_ATTRIBUTE9 IN VARCHAR2,
354 X_ATTRIBUTE10 IN VARCHAR2,
355 X_MODE in VARCHAR2 default 'R'
356 ) is
357 X_LAST_UPDATE_DATE DATE;
358 X_LAST_UPDATED_BY NUMBER;
359 X_LAST_UPDATE_LOGIN NUMBER;
360 begin
361 X_LAST_UPDATE_DATE := SYSDATE;
362 if(X_MODE = 'I') then
363 X_LAST_UPDATED_BY := 1;
364 X_LAST_UPDATE_LOGIN := 0;
365 elsif (X_MODE = 'R') then
366 X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
367 if X_LAST_UPDATED_BY is NULL then
368 X_LAST_UPDATED_BY := -1;
369 end if;
370 X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
371 if X_LAST_UPDATE_LOGIN is NULL then
372 X_LAST_UPDATE_LOGIN := -1;
373 end if;
374 else
375 FND_MESSAGE.SET_NAME('FND', 'SYSTEM-INVALID ARGS');
376 app_exception.raise_exception;
377 end if;
378 update PSP_PAYROLL_SUB_LINES set
379 PAYROLL_LINE_ID = X_PAYROLL_LINE_ID,
380 SUB_LINE_START_DATE = X_SUB_LINE_START_DATE,
381 SUB_LINE_END_DATE = X_SUB_LINE_END_DATE,
382 REASON_CODE = X_REASON_CODE,
383 PAY_AMOUNT = X_PAY_AMOUNT,
384 DAILY_RATE = X_DAILY_RATE,
385 SALARY_USED = X_SALARY_USED,
386 CURRENT_SALARY = X_CURRENT_SALARY,
387 FTE = X_FTE,
388 ORGANIZATION_ID = X_ORGANIZATION_ID,
389 JOB_ID = X_JOB_ID,
390 POSITION_ID = X_POSITION_ID,
391 GRADE_ID = X_GRADE_ID,
392 PEOPLE_GROUP_ID = X_PEOPLE_GRP_ID,
393 EMPLOYMENT_BEGIN_DATE = X_EMPLOYMENT_BEGIN_DATE,
394 EMPLOYMENT_END_DATE = X_EMPLOYMENT_END_DATE,
395 EMPLOYEE_STATUS_INACTIVE_DATE = X_EMPLOYEE_STATUS_INACTIVE_DAT,
396 EMPLOYEE_STATUS_ACTIVE_DATE = X_EMPLOYEE_STATUS_ACTIVE_DATE,
397 ASSIGNMENT_BEGIN_DATE = X_ASSIGNMENT_BEGIN_DATE,
398 ASSIGNMENT_END_DATE = X_ASSIGNMENT_END_DATE,
399 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
400 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
401 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
402 ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY, -- Introduced DFF columns for bub fix 2908859
403 ATTRIBUTE1 = X_ATTRIBUTE1,
404 ATTRIBUTE2 = X_ATTRIBUTE2,
405 ATTRIBUTE3 = X_ATTRIBUTE3,
406 ATTRIBUTE4 = X_ATTRIBUTE4,
407 ATTRIBUTE5 = X_ATTRIBUTE5,
408 ATTRIBUTE6 = X_ATTRIBUTE6,
409 ATTRIBUTE7 = X_ATTRIBUTE7,
410 ATTRIBUTE8 = X_ATTRIBUTE8,
411 ATTRIBUTE9 = X_ATTRIBUTE9,
412 ATTRIBUTE10 = X_ATTRIBUTE10
413 where PAYROLL_SUB_LINE_ID = X_PAYROLL_SUB_LINE_ID
414 ;
415 if (sql%notfound) then
416 raise no_data_found;
417 end if;
418 end UPDATE_ROW;
419
420 procedure ADD_ROW (
421 X_ROWID in out NOCOPY VARCHAR2,
422 X_PAYROLL_SUB_LINE_ID in NUMBER,
423 X_PAYROLL_LINE_ID in NUMBER,
424 X_SUB_LINE_START_DATE in DATE,
425 X_SUB_LINE_END_DATE in DATE,
426 X_REASON_CODE in VARCHAR2,
427 X_PAY_AMOUNT in NUMBER,
428 X_DAILY_RATE in NUMBER,
429 X_SALARY_USED in NUMBER,
430 X_CURRENT_SALARY in NUMBER,
431 X_FTE in NUMBER,
432 X_ORGANIZATION_ID in NUMBER,
433 X_JOB_ID in NUMBER,
434 X_POSITION_ID in NUMBER,
435 X_GRADE_ID in NUMBER,
436 X_PEOPLE_GRP_ID in NUMBER,
440 X_EMPLOYEE_STATUS_ACTIVE_DATE in DATE,
437 X_EMPLOYMENT_BEGIN_DATE in DATE,
438 X_EMPLOYMENT_END_DATE in DATE,
439 X_EMPLOYEE_STATUS_INACTIVE_DAT in DATE,
441 X_ASSIGNMENT_BEGIN_DATE in DATE,
442 X_ASSIGNMENT_END_DATE in DATE,
443 X_ATTRIBUTE_CATEGORY IN VARCHAR2, -- Introduced DFF columns for bug fix 2908859
444 X_ATTRIBUTE1 IN VARCHAR2,
445 X_ATTRIBUTE2 IN VARCHAR2,
446 X_ATTRIBUTE3 IN VARCHAR2,
447 X_ATTRIBUTE4 IN VARCHAR2,
448 X_ATTRIBUTE5 IN VARCHAR2,
449 X_ATTRIBUTE6 IN VARCHAR2,
450 X_ATTRIBUTE7 IN VARCHAR2,
451 X_ATTRIBUTE8 IN VARCHAR2,
452 X_ATTRIBUTE9 IN VARCHAR2,
453 X_ATTRIBUTE10 IN VARCHAR2,
454 X_MODE in VARCHAR2 default 'R'
455 ) is
456 cursor c1 is select rowid from PSP_PAYROLL_SUB_LINES
457 where PAYROLL_SUB_LINE_ID = X_PAYROLL_SUB_LINE_ID
458 ;
459 dummy c1%rowtype;
460 begin
461 open c1;
462 fetch c1 into dummy;
463 if (c1%notfound) then
464 close c1;
465 INSERT_ROW (
466 X_ROWID,
467 X_PAYROLL_SUB_LINE_ID,
468 X_PAYROLL_LINE_ID,
469 X_SUB_LINE_START_DATE,
470 X_SUB_LINE_END_DATE,
471 X_REASON_CODE,
472 X_PAY_AMOUNT,
473 X_DAILY_RATE,
474 X_SALARY_USED,
475 X_CURRENT_SALARY,
476 X_FTE,
477 X_ORGANIZATION_ID,
478 X_JOB_ID,
479 X_POSITION_ID,
480 X_GRADE_ID,
481 X_PEOPLE_GRP_ID,
482 X_EMPLOYMENT_BEGIN_DATE,
483 X_EMPLOYMENT_END_DATE,
484 X_EMPLOYEE_STATUS_INACTIVE_DAT,
485 X_EMPLOYEE_STATUS_ACTIVE_DATE,
486 X_ASSIGNMENT_BEGIN_DATE,
487 X_ASSIGNMENT_END_DATE,
488 X_ATTRIBUTE_CATEGORY, -- Introduced DFF columns for bug fix 2908859
489 X_ATTRIBUTE1,
490 X_ATTRIBUTE2,
491 X_ATTRIBUTE3,
492 X_ATTRIBUTE4,
493 X_ATTRIBUTE5,
494 X_ATTRIBUTE6,
495 X_ATTRIBUTE7,
496 X_ATTRIBUTE8,
497 X_ATTRIBUTE9,
498 X_ATTRIBUTE10,
499 X_MODE);
500 return;
501 end if;
502 close c1;
503 UPDATE_ROW (
504 X_PAYROLL_SUB_LINE_ID,
505 X_PAYROLL_LINE_ID,
506 X_SUB_LINE_START_DATE,
507 X_SUB_LINE_END_DATE,
508 X_REASON_CODE,
509 X_PAY_AMOUNT,
510 X_DAILY_RATE,
511 X_SALARY_USED,
512 X_CURRENT_SALARY,
513 X_FTE,
514 X_ORGANIZATION_ID,
515 X_JOB_ID,
516 X_POSITION_ID,
517 X_GRADE_ID,
518 X_PEOPLE_GRP_ID,
519 X_EMPLOYMENT_BEGIN_DATE,
520 X_EMPLOYMENT_END_DATE,
521 X_EMPLOYEE_STATUS_INACTIVE_DAT,
522 X_EMPLOYEE_STATUS_ACTIVE_DATE,
523 X_ASSIGNMENT_BEGIN_DATE,
524 X_ASSIGNMENT_END_DATE,
525 X_ATTRIBUTE_CATEGORY, -- Introduced DFF columns for bug fix 2908859
526 X_ATTRIBUTE1,
527 X_ATTRIBUTE2,
528 X_ATTRIBUTE3,
529 X_ATTRIBUTE4,
530 X_ATTRIBUTE5,
531 X_ATTRIBUTE6,
532 X_ATTRIBUTE7,
533 X_ATTRIBUTE8,
534 X_ATTRIBUTE9,
535 X_ATTRIBUTE10,
536 X_MODE);
537 end ADD_ROW;
538
539 procedure DELETE_ROW (
540 X_PAYROLL_SUB_LINE_ID in NUMBER
541 ) is
542 begin
543 delete from PSP_PAYROLL_SUB_LINES
544 where PAYROLL_SUB_LINE_ID = X_PAYROLL_SUB_LINE_ID;
545 if (sql%notfound) then
546 raise no_data_found;
547 end if;
548 end DELETE_ROW;
549
550 end PSP_PAYROLL_SUB_LINES_PKG;