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