1 PACKAGE BODY igf_aw_coa_ld_pkg AS
2 /* $Header: IGFWI33B.pls 115.9 2002/11/28 14:41:20 nsidana ship $ */
3
4 l_rowid VARCHAR2(25);
5 old_references igf_aw_coa_ld_all%ROWTYPE;
6 new_references igf_aw_coa_ld_all%ROWTYPE;
7
8 PROCEDURE set_column_values (
9 p_action IN VARCHAR2,
10 x_rowid IN VARCHAR2,
11 x_coald_id IN NUMBER,
12 x_coa_code IN VARCHAR2,
13 x_ci_cal_type IN VARCHAR2,
14 x_ci_sequence_number IN NUMBER,
15 x_ld_cal_type IN VARCHAR2,
16 x_ld_sequence_number IN NUMBER,
17 x_ld_perct IN NUMBER,
18 x_creation_date IN DATE,
19 x_created_by IN NUMBER,
20 x_last_update_date IN DATE,
21 x_last_updated_by IN NUMBER,
22 x_last_update_login IN NUMBER
23 ) AS
24 /*
25 || Created By : brajendr
26 || Created On : 11-JUL-2001
27 || Purpose : Initialises the Old and New references for the columns of the table.
28 || Known limitations, enhancements or remarks :
29 || Change History :
30 || Who When What
31 || (reverse chronological order - newest change first)
32 */
33
34 CURSOR cur_old_ref_values IS
35 SELECT *
36 FROM IGF_AW_COA_LD_ALL
37 WHERE rowid = x_rowid;
38
39 BEGIN
40
41 l_rowid := x_rowid;
42
43 -- Code for setting the Old and New Reference Values.
44 -- Populate Old Values.
45 OPEN cur_old_ref_values;
46 FETCH cur_old_ref_values INTO old_references;
47 IF ((cur_old_ref_values%NOTFOUND) AND (p_action NOT IN ('INSERT', 'VALIDATE_INSERT'))) THEN
48 CLOSE cur_old_ref_values;
49 fnd_message.set_name ('FND', 'FORM_RECORD_DELETED');
50 igs_ge_msg_stack.add;
51 app_exception.raise_exception;
52 RETURN;
53 END IF;
54 CLOSE cur_old_ref_values;
55
56 -- Populate New Values.
57 new_references.coald_id := x_coald_id;
58 new_references.coa_code := x_coa_code;
59 new_references.ci_cal_type := x_ci_cal_type;
60 new_references.ci_sequence_number := x_ci_sequence_number;
61 new_references.ld_cal_type := x_ld_cal_type;
62 new_references.ld_sequence_number := x_ld_sequence_number;
63 new_references.ld_perct := x_ld_perct;
64
65 IF (p_action = 'UPDATE') THEN
66 new_references.creation_date := old_references.creation_date;
67 new_references.created_by := old_references.created_by;
68 ELSE
69 new_references.creation_date := x_creation_date;
70 new_references.created_by := x_created_by;
71 END IF;
72
73 new_references.last_update_date := x_last_update_date;
74 new_references.last_updated_by := x_last_updated_by;
75 new_references.last_update_login := x_last_update_login;
76
77 END set_column_values;
78
79
80 PROCEDURE check_uniqueness AS
81 /*
82 || Created By : brajendr
83 || Created On : 11-JUL-2001
84 || Purpose : Handles the Unique Constraint logic defined for the columns.
85 || Known limitations, enhancements or remarks :
86 || Change History :
87 || Who When What
88 || (reverse chronological order - newest change first)
89 */
90 BEGIN
91
92 IF ( get_uk_for_validation (
93 new_references.coa_code,
94 new_references.ci_cal_type,
95 new_references.ci_sequence_number,
96 new_references.ld_cal_type,
97 new_references.ld_sequence_number,
98 new_references.org_id
99 )
100 ) THEN
101 fnd_message.set_name ('IGS', 'IGS_GE_RECORD_ALREADY_EXISTS');
102 igs_ge_msg_stack.add;
103 app_exception.raise_exception;
104 END IF;
105
106 END check_uniqueness;
107
108
109 PROCEDURE check_parent_existance AS
110 /*
111 || Created By : brajendr
112 || Created On : 11-JUL-2001
113 || Purpose : Checks for the existance of Parent records.
114 || Known limitations, enhancements or remarks :
115 || Change History :
116 || Who When What
117 || (reverse chronological order - newest change first)
118 */
119 BEGIN
120
121 IF (((old_references.coa_code = new_references.coa_code) AND
122 (old_references.ci_cal_type = new_references.ci_cal_type) AND
123 (old_references.ci_sequence_number = new_references.ci_sequence_number)) OR
124 ((new_references.coa_code IS NULL) OR
125 (new_references.ci_cal_type IS NULL) OR
126 (new_references.ci_sequence_number IS NULL))) THEN
127 NULL;
128 ELSIF NOT igf_aw_coa_group_pkg.get_pk_for_validation (
129 new_references.coa_code,
130 new_references.ci_cal_type,
131 new_references.ci_sequence_number
132 ) THEN
133 fnd_message.set_name ('FND', 'FORM_RECORD_DELETED');
134 igs_ge_msg_stack.add;
135 app_exception.raise_exception;
136 END IF;
137
138 IF (((old_references.ld_cal_type = new_references.ld_cal_type) AND
139 (old_references.ld_sequence_number = new_references.ld_sequence_number)) OR
140 ((new_references.ld_cal_type IS NULL) OR
141 (new_references.ld_sequence_number IS NULL))) THEN
142 NULL;
143 ELSIF NOT igs_ca_inst_pkg.get_pk_for_validation (
144 new_references.ld_cal_type,
145 new_references.ld_sequence_number
146 ) THEN
147 fnd_message.set_name ('FND', 'FORM_RECORD_DELETED');
148 igs_ge_msg_stack.add;
149 app_exception.raise_exception;
150 END IF;
151
152 END check_parent_existance;
153
154
155
156 FUNCTION get_pk_for_validation (
157 x_coald_id IN NUMBER
158 ) RETURN BOOLEAN AS
159 /*
160 || Created By : brajendr
161 || Created On : 11-JUL-2001
162 || Purpose : Validates the Primary Key of the table.
163 || Known limitations, enhancements or remarks :
164 || Change History :
165 || Who When What
166 || (reverse chronological order - newest change first)
167 */
168 CURSOR cur_rowid IS
169 SELECT rowid
170 FROM igf_aw_coa_ld_all
171 WHERE coald_id = x_coald_id
172 FOR UPDATE NOWAIT;
173
174 lv_rowid cur_rowid%RowType;
175
176 BEGIN
177
178 OPEN cur_rowid;
179 FETCH cur_rowid INTO lv_rowid;
180 IF (cur_rowid%FOUND) THEN
181 CLOSE cur_rowid;
182 RETURN(TRUE);
183 ELSE
184 CLOSE cur_rowid;
185 RETURN(FALSE);
186 END IF;
187
188 END get_pk_for_validation;
189
190
191 FUNCTION get_uk_for_validation (
192 x_coa_code IN VARCHAR2,
193 x_ci_cal_type IN VARCHAR2,
194 x_ci_sequence_number IN NUMBER,
195 x_ld_cal_type IN VARCHAR2,
196 x_ld_sequence_number IN NUMBER,
197 x_org_id IN NUMBER
198 ) RETURN BOOLEAN AS
199 /*
200 || Created By : brajendr
201 || Created On : 11-JUL-2001
202 || Purpose : Validates the Unique Keys of the table.
203 || Known limitations, enhancements or remarks :
204 || Change History :
205 || Who When What
206 || vvutukur 18-feb-2002 modified org_id check in cur_rowid cursor and selected from igf_aw_coa_ld
207 || instead of igf_aw_coa_ld_all for bug :2222272
208 || (reverse chronological order - newest change first)
209 */
210
211 l_org_id igf_aw_coa_ld_all.org_id%TYPE;
212
213 CURSOR cur_rowid IS
214 SELECT rowid
215 FROM igf_aw_coa_ld
216 WHERE coa_code = x_coa_code
217 AND ci_cal_type = x_ci_cal_type
218 AND ci_sequence_number = x_ci_sequence_number
219 AND ld_cal_type = x_ld_cal_type
220 AND ld_sequence_number = x_ld_sequence_number
221 AND NVL(org_id,NVL(l_org_id,-99)) = NVL(l_org_id,-99) --bug:2222272
222 AND ((l_rowid IS NULL) OR (rowid <> l_rowid));
223
224 lv_rowid cur_rowid%RowType;
225
226 BEGIN
227
228 l_org_id := igf_aw_gen.get_org_id;
229 OPEN cur_rowid;
230 FETCH cur_rowid INTO lv_rowid;
231 IF (cur_rowid%FOUND) THEN
232 CLOSE cur_rowid;
233 RETURN (true);
234 ELSE
235 CLOSE cur_rowid;
236 RETURN(FALSE);
237 END IF;
238
239 END get_uk_for_validation ;
240
241
242 PROCEDURE get_fk_igf_aw_coa_group (
243 x_coa_code IN VARCHAR2,
244 x_ci_cal_type IN VARCHAR2,
245 x_ci_sequence_number IN NUMBER
246 ) AS
247 /*
248 || Created By : brajendr
249 || Created On : 11-JUL-2001
250 || Purpose : Validates the Foreign Keys for the table.
251 || Known limitations, enhancements or remarks :
252 || Change History :
253 || Who When What
254 || (reverse chronological order - newest change first)
255 */
256 CURSOR cur_rowid IS
257 SELECT rowid
258 FROM igf_aw_coa_ld_all
259 WHERE ((ci_cal_type = x_ci_cal_type) AND
260 (ci_sequence_number = x_ci_sequence_number) AND
261 (coa_code = x_coa_code));
262
263 lv_rowid cur_rowid%RowType;
264
265 BEGIN
266
267 OPEN cur_rowid;
268 FETCH cur_rowid INTO lv_rowid;
269 IF (cur_rowid%FOUND) THEN
270 CLOSE cur_rowid;
271 fnd_message.set_name ('IGF', 'IGF_AW_COALD_COAG_FK');
272 igs_ge_msg_stack.add;
273 app_exception.raise_exception;
274 RETURN;
275 END IF;
276 CLOSE cur_rowid;
277
278 END get_fk_igf_aw_coa_group;
279
280
281 PROCEDURE get_fk_igs_ca_inst (
282 x_cal_type IN VARCHAR2,
283 x_sequence_number IN NUMBER
284 ) AS
285 /*
286 || Created By : brajendr
287 || Created On : 11-JUL-2001
288 || Purpose : Validates the Foreign Keys for the table.
289 || Known limitations, enhancements or remarks :
290 || Change History :
291 || Who When What
292 || (reverse chronological order - newest change first)
293 */
294 CURSOR cur_rowid IS
295 SELECT rowid
296 FROM igf_aw_coa_ld_all
297 WHERE ((ld_cal_type = x_cal_type) AND
298 (ld_sequence_number = x_sequence_number));
299
300 lv_rowid cur_rowid%RowType;
301
302 BEGIN
303
304 OPEN cur_rowid;
305 FETCH cur_rowid INTO lv_rowid;
306 IF (cur_rowid%FOUND) THEN
307 CLOSE cur_rowid;
308 fnd_message.set_name ('IGF', 'IGF_AW_COALD_CI_FK');
309 igs_ge_msg_stack.add;
310 app_exception.raise_exception;
311 RETURN;
312 END IF;
313 CLOSE cur_rowid;
314
315 END get_fk_igs_ca_inst;
316
317
318 PROCEDURE before_dml (
319 p_action IN VARCHAR2,
320 x_rowid IN VARCHAR2,
321 x_coald_id IN NUMBER,
322 x_coa_code IN VARCHAR2,
323 x_ci_cal_type IN VARCHAR2,
324 x_ci_sequence_number IN NUMBER,
325 x_ld_cal_type IN VARCHAR2,
326 x_ld_sequence_number IN NUMBER,
327 x_ld_perct IN NUMBER,
328 x_creation_date IN DATE,
329 x_created_by IN NUMBER,
330 x_last_update_date IN DATE,
331 x_last_updated_by IN NUMBER,
332 x_last_update_login IN NUMBER
333 ) AS
334 /*
335 || Created By : brajendr
336 || Created On : 11-JUL-2001
337 || Purpose : Initialises the columns, Checks Constraints, Calls the
338 || Trigger Handlers for the table, before any DML operation.
339 || Known limitations, enhancements or remarks :
340 || Change History :
341 || Who When What
342 || (reverse chronological order - newest change first)
343 */
344 BEGIN
345
346 set_column_values (
347 p_action,
348 x_rowid,
349 x_coald_id,
350 x_coa_code,
351 x_ci_cal_type,
352 x_ci_sequence_number,
353 x_ld_cal_type,
354 x_ld_sequence_number,
355 x_ld_perct,
356 x_creation_date,
357 x_created_by,
358 x_last_update_date,
359 x_last_updated_by,
360 x_last_update_login
361 );
362
363 IF (p_action = 'INSERT') THEN
364 -- Call all the procedures related to Before Insert.
365 IF ( get_pk_for_validation(
366 new_references.coald_id
367 )
368 ) THEN
369 fnd_message.set_name('IGS','IGS_GE_RECORD_ALREADY_EXISTS');
370 igs_ge_msg_stack.add;
371 app_exception.raise_exception;
372 END IF;
373 check_uniqueness;
374 check_parent_existance;
375 ELSIF (p_action = 'UPDATE') THEN
376 -- Call all the procedures related to Before Update.
377 check_uniqueness;
378 check_parent_existance;
379 ELSIF (p_action = 'VALIDATE_INSERT') THEN
380 -- Call all the procedures related to Before Insert.
381 IF ( get_pk_for_validation (
382 new_references.coald_id
383 )
384 ) THEN
385 fnd_message.set_name('IGS','IGS_GE_RECORD_ALREADY_EXISTS');
386 igs_ge_msg_stack.add;
387 app_exception.raise_exception;
388 END IF;
389 check_uniqueness;
390 ELSIF (p_action = 'VALIDATE_UPDATE') THEN
391 check_uniqueness;
392 END IF;
393
394 END before_dml;
395
396
397 PROCEDURE insert_row (
398 x_rowid IN OUT NOCOPY VARCHAR2,
399 x_coald_id IN OUT NOCOPY NUMBER,
400 x_coa_code IN VARCHAR2,
401 x_ci_cal_type IN VARCHAR2,
402 x_ci_sequence_number IN NUMBER,
403 x_ld_cal_type IN VARCHAR2,
404 x_ld_sequence_number IN NUMBER,
405 x_ld_perct IN NUMBER,
406 x_mode IN VARCHAR2
407 ) AS
408 /*
409 || Created By : brajendr
410 || Created On : 11-JUL-2001
411 || Purpose : Handles the INSERT DML logic for the table.
412 || Known limitations, enhancements or remarks :
413 || Change History :
414 || Who When What
415 || (reverse chronological order - newest change first)
416 */
417 CURSOR c IS
418 SELECT rowid
419 FROM igf_aw_coa_ld_all
420 WHERE coald_id = x_coald_id;
421
422 x_last_update_date DATE;
423 x_last_updated_by NUMBER;
424 x_last_update_login NUMBER;
425
426 BEGIN
427
428 x_last_update_date := SYSDATE;
429 IF (x_mode = 'I') THEN
430 x_last_updated_by := 1;
431 x_last_update_login := 0;
432 ELSIF (x_mode = 'R') THEN
433 x_last_updated_by := fnd_global.user_id;
434 IF (x_last_updated_by IS NULL) THEN
435 x_last_updated_by := -1;
436 END IF;
437 x_last_update_login := fnd_global.login_id;
438 IF (x_last_update_login IS NULL) THEN
439 x_last_update_login := -1;
440 END IF;
441 ELSE
442 fnd_message.set_name ('FND', 'SYSTEM-INVALID ARGS');
443 igs_ge_msg_stack.add;
444 app_exception.raise_exception;
445 END IF;
446
447 SELECT igf_aw_coa_ld_s.NEXTVAL
448 INTO x_coald_id
449 FROM dual;
450
451 new_references.org_id := igs_ge_gen_003.get_org_id;
452
453 before_dml(
454 p_action => 'INSERT',
455 x_rowid => x_rowid,
456 x_coald_id => x_coald_id,
457 x_coa_code => x_coa_code,
458 x_ci_cal_type => x_ci_cal_type,
459 x_ci_sequence_number => x_ci_sequence_number,
460 x_ld_cal_type => x_ld_cal_type,
461 x_ld_sequence_number => x_ld_sequence_number,
462 x_ld_perct => x_ld_perct,
463 x_creation_date => x_last_update_date,
464 x_created_by => x_last_updated_by,
465 x_last_update_date => x_last_update_date,
466 x_last_updated_by => x_last_updated_by,
467 x_last_update_login => x_last_update_login
468 );
469
470 INSERT INTO igf_aw_coa_ld (
471 coald_id,
472 coa_code,
473 ci_cal_type,
474 ci_sequence_number,
475 ld_cal_type,
476 ld_sequence_number,
477 ld_perct,
478 org_id,
479 creation_date,
480 created_by,
481 last_update_date,
482 last_updated_by,
483 last_update_login
484 ) VALUES (
485 new_references.coald_id,
486 new_references.coa_code,
487 new_references.ci_cal_type,
488 new_references.ci_sequence_number,
489 new_references.ld_cal_type,
490 new_references.ld_sequence_number,
491 new_references.ld_perct,
492 new_references.org_id,
493 x_last_update_date,
494 x_last_updated_by,
495 x_last_update_date,
496 x_last_updated_by,
497 x_last_update_login
498 );
499
500 OPEN c;
501 FETCH c INTO x_rowid;
502 IF (c%NOTFOUND) THEN
503 CLOSE c;
504 RAISE NO_DATA_FOUND;
505 END IF;
506 CLOSE c;
507
508 END insert_row;
509
510
511 PROCEDURE lock_row (
512 x_rowid IN VARCHAR2,
513 x_coald_id IN NUMBER,
514 x_coa_code IN VARCHAR2,
515 x_ci_cal_type IN VARCHAR2,
516 x_ci_sequence_number IN NUMBER,
517 x_ld_cal_type IN VARCHAR2,
518 x_ld_sequence_number IN NUMBER,
519 x_ld_perct IN NUMBER
520 ) AS
521 /*
522 || Created By : brajendr
523 || Created On : 11-JUL-2001
524 || Purpose : Handles the LOCK mechanism for the table.
525 || Known limitations, enhancements or remarks :
526 || Change History :
527 || Who When What
528 || (reverse chronological order - newest change first)
529 */
530 CURSOR c1 IS
531 SELECT
532 coa_code,
533 ci_cal_type,
534 ci_sequence_number,
535 ld_cal_type,
536 ld_sequence_number,
537 ld_perct
538 FROM igf_aw_coa_ld_all
539 WHERE rowid = x_rowid
540 FOR UPDATE NOWAIT;
541
542 tlinfo c1%ROWTYPE;
543
544 BEGIN
545
546 OPEN c1;
547 FETCH c1 INTO tlinfo;
548 IF (c1%notfound) THEN
549 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
550 igs_ge_msg_stack.add;
551 CLOSE c1;
552 app_exception.raise_exception;
553 RETURN;
554 END IF;
555 CLOSE c1;
556
557 IF (
558 (tlinfo.coa_code = x_coa_code)
559 AND (tlinfo.ci_cal_type = x_ci_cal_type)
560 AND (tlinfo.ci_sequence_number = x_ci_sequence_number)
561 AND (tlinfo.ld_cal_type = x_ld_cal_type)
562 AND (tlinfo.ld_sequence_number = x_ld_sequence_number)
563 AND ((tlinfo.ld_perct = x_ld_perct) OR ((tlinfo.ld_perct IS NULL) AND (X_ld_perct IS NULL)))
564 ) THEN
565 NULL;
566 ELSE
567 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
568 igs_ge_msg_stack.add;
569 app_exception.raise_exception;
570 END IF;
571
572 RETURN;
573
574 END lock_row;
575
576
577 PROCEDURE update_row (
578 x_rowid IN VARCHAR2,
579 x_coald_id IN NUMBER,
580 x_coa_code IN VARCHAR2,
581 x_ci_cal_type IN VARCHAR2,
582 x_ci_sequence_number IN NUMBER,
583 x_ld_cal_type IN VARCHAR2,
584 x_ld_sequence_number IN NUMBER,
585 x_ld_perct IN NUMBER,
586 x_mode IN VARCHAR2
587 ) AS
588 /*
589 || Created By : brajendr
590 || Created On : 11-JUL-2001
591 || Purpose : Handles the UPDATE DML logic for the table.
592 || Known limitations, enhancements or remarks :
593 || Change History :
594 || Who When What
595 || (reverse chronological order - newest change first)
596 */
597 x_last_update_date DATE ;
598 x_last_updated_by NUMBER;
599 x_last_update_login NUMBER;
600
601 BEGIN
602
603 x_last_update_date := SYSDATE;
604 IF (X_MODE = 'I') THEN
605 x_last_updated_by := 1;
606 x_last_update_login := 0;
607 ELSIF (x_mode = 'R') THEN
608 x_last_updated_by := fnd_global.user_id;
609 IF x_last_updated_by IS NULL THEN
610 x_last_updated_by := -1;
611 END IF;
612 x_last_update_login := fnd_global.login_id;
613 IF (x_last_update_login IS NULL) THEN
614 x_last_update_login := -1;
615 END IF;
616 ELSE
617 fnd_message.set_name( 'FND', 'SYSTEM-INVALID ARGS');
618 igs_ge_msg_stack.add;
619 app_exception.raise_exception;
620 END IF;
621
622 before_dml(
623 p_action => 'UPDATE',
624 x_rowid => x_rowid,
625 x_coald_id => x_coald_id,
626 x_coa_code => x_coa_code,
627 x_ci_cal_type => x_ci_cal_type,
628 x_ci_sequence_number => x_ci_sequence_number,
629 x_ld_cal_type => x_ld_cal_type,
630 x_ld_sequence_number => x_ld_sequence_number,
631 x_ld_perct => x_ld_perct,
632 x_creation_date => x_last_update_date,
633 x_created_by => x_last_updated_by,
634 x_last_update_date => x_last_update_date,
635 x_last_updated_by => x_last_updated_by,
636 x_last_update_login => x_last_update_login
637 );
638
639 UPDATE igf_aw_coa_ld_all
640 SET
641 coa_code = new_references.coa_code,
642 ci_cal_type = new_references.ci_cal_type,
643 ci_sequence_number = new_references.ci_sequence_number,
644 ld_cal_type = new_references.ld_cal_type,
645 ld_sequence_number = new_references.ld_sequence_number,
646 ld_perct = new_references.ld_perct,
647 last_update_date = x_last_update_date,
648 last_updated_by = x_last_updated_by,
649 last_update_login = x_last_update_login
650 WHERE rowid = x_rowid;
651
652 IF (SQL%NOTFOUND) THEN
653 RAISE NO_DATA_FOUND;
654 END IF;
655
656 END update_row;
657
658
659 PROCEDURE add_row (
660 x_rowid IN OUT NOCOPY VARCHAR2,
661 x_coald_id IN OUT NOCOPY NUMBER,
662 x_coa_code IN VARCHAR2,
663 x_ci_cal_type IN VARCHAR2,
664 x_ci_sequence_number IN NUMBER,
665 x_ld_cal_type IN VARCHAR2,
666 x_ld_sequence_number IN NUMBER,
667 x_ld_perct IN NUMBER,
668 x_mode IN VARCHAR2
669 ) AS
670 /*
671 || Created By : brajendr
672 || Created On : 11-JUL-2001
673 || Purpose : Adds a row if there is no existing row, otherwise updates existing row in the table.
674 || Known limitations, enhancements or remarks :
675 || Change History :
676 || Who When What
677 || (reverse chronological order - newest change first)
678 */
679 CURSOR c1 IS
680 SELECT rowid
681 FROM igf_aw_coa_ld_all
682 WHERE coald_id = x_coald_id;
683
684 BEGIN
685
686 OPEN c1;
687 FETCH c1 INTO x_rowid;
688 IF (c1%NOTFOUND) THEN
689 CLOSE c1;
690
691 insert_row (
692 x_rowid,
693 x_coald_id,
694 x_coa_code,
695 x_ci_cal_type,
696 x_ci_sequence_number,
697 x_ld_cal_type,
698 x_ld_sequence_number,
699 x_ld_perct,
700 x_mode
701 );
702 RETURN;
703 END IF;
704 CLOSE c1;
705
706 update_row (
707 x_rowid,
708 x_coald_id,
709 x_coa_code,
710 x_ci_cal_type,
711 x_ci_sequence_number,
712 x_ld_cal_type,
713 x_ld_sequence_number,
714 x_ld_perct,
715 x_mode
716 );
717
718 END add_row;
719
720
721 PROCEDURE delete_row (
722 x_rowid IN VARCHAR2
723 ) AS
724 /*
725 || Created By : brajendr
726 || Created On : 11-JUL-2001
727 || Purpose : Handles the DELETE DML logic for the table.
728 || Known limitations, enhancements or remarks :
729 || Change History :
730 || Who When What
731 || (reverse chronological order - newest change first)
732 */
733 BEGIN
734
735 before_dml (
736 p_action => 'DELETE',
737 x_rowid => x_rowid
738 );
739
740 DELETE FROM igf_aw_coa_ld_all
741 WHERE rowid = x_rowid;
742
743 IF (SQL%NOTFOUND) THEN
744 RAISE NO_DATA_FOUND;
745 END IF;
746
747 END delete_row;
748
749
750 END igf_aw_coa_ld_pkg;