[Home] [Help]
PACKAGE BODY: APPS.IGS_AD_PRD_AD_PRC_CA_PKG
Source
1 PACKAGE BODY IGS_AD_PRD_AD_PRC_CA_PKG AS
2 /* $Header: IGSAI30B.pls 115.8 2003/10/30 13:12:17 akadam ship $*/
3 l_rowid VARCHAR2(25);
4 old_references IGS_AD_PRD_AD_PRC_CA%RowType;
5 new_references IGS_AD_PRD_AD_PRC_CA%RowType;
6
7 PROCEDURE Set_Column_Values (
8 p_action IN VARCHAR2,
9 x_rowid IN VARCHAR2,
10 x_adm_cal_type IN VARCHAR2 ,
11 x_adm_ci_sequence_number IN NUMBER ,
12 x_admission_cat IN VARCHAR2 ,
13 x_s_admission_process_type IN VARCHAR2 ,
14 x_creation_date IN DATE,
15 x_created_by IN NUMBER ,
16 x_last_update_date IN DATE ,
17 x_last_updated_by IN NUMBER ,
18 x_last_update_login IN NUMBER ,
19 x_closed_ind IN VARCHAR2 ,
20 x_single_response_flag IN VARCHAR2 ,
21 x_include_sr_in_rollover_flag IN VARCHAR2
22 ) AS
23
24 CURSOR cur_old_ref_values IS
25 SELECT *
26 FROM IGS_AD_PRD_AD_PRC_CA
27 WHERE rowid = x_rowid;
28
29 BEGIN
30
31 l_rowid := x_rowid;
32
33 -- Code for setting the Old and New Reference Values.
34 -- Populate Old Values.
35 Open cur_old_ref_values;
36 Fetch cur_old_ref_values INTO old_references;
37 IF (cur_old_ref_values%NOTFOUND) AND (p_action NOT IN ('INSERT','VALIDATE_INSERT')) THEN
38 Close cur_old_ref_values;
39 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
40 IGS_GE_MSG_STACK.ADD;
41 App_Exception.Raise_Exception;
42 Return;
43 END IF;
44 Close cur_old_ref_values;
45
46 -- Populate New Values.
47 new_references.adm_cal_type := x_adm_cal_type;
48 new_references.adm_ci_sequence_number := x_adm_ci_sequence_number;
49 new_references.admission_cat := x_admission_cat;
50 new_references.s_admission_process_type := x_s_admission_process_type;
51 new_references.closed_ind := x_closed_ind;
52 new_references.single_response_flag := x_single_response_flag;
53 new_references.include_sr_in_rollover_flag := x_include_sr_in_rollover_flag;
54
55 IF (p_action = 'UPDATE') THEN
56 new_references.creation_date := old_references.creation_date;
57 new_references.created_by := old_references.created_by;
58 ELSE
59 new_references.creation_date := x_creation_date;
60 new_references.created_by := x_created_by;
61 END IF;
62 new_references.last_update_date := x_last_update_date;
63 new_references.last_updated_by := x_last_updated_by;
64 new_references.last_update_login := x_last_update_login;
65
66 END Set_Column_Values;
67
68 PROCEDURE Check_Constraints (
69 Column_Name IN VARCHAR2 ,
70 Column_Value IN VARCHAR2
71 )
72 AS
73 BEGIN
74 IF column_name is null then
75 NULL;
76 ELSIF upper(Column_name) = 'ADM_CAL_TYPE' then
77 new_references.adm_cal_type := column_value;
78 ELSIF upper(Column_name) = 'ADMISSION_CAT' then
79 new_references.admission_cat := column_value;
80 ELSIF upper(Column_name) = 'S_ADMISSION_PROCESS_TYPE' then
81 new_references.s_admission_process_type := column_value;
82 ELSIF upper(Column_name) = 'ADM_CI_SEQUENCE_NUMBER' then
83 new_references.adm_ci_sequence_number := igs_ge_number.to_num(column_value);
84 END IF;
85
86 IF upper(column_name) = 'ADM_CAL_TYPE' OR
87 column_name is null Then
88 IF new_references.adm_cal_type <> UPPER(new_references.adm_cal_type) Then
89 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
90 IGS_GE_MSG_STACK.ADD;
91 App_Exception.Raise_Exception;
92 END IF;
93 END IF;
94
95 IF upper(column_name) = 'ADMISSION_CAT' OR
96 column_name is null Then
97 IF new_references.admission_cat <> UPPER(new_references.admission_cat) Then
98 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
99 IGS_GE_MSG_STACK.ADD;
100 App_Exception.Raise_Exception;
101 END IF;
102 END IF;
103
104 IF upper(column_name) = 'S_ADMISSION_PROCESS_TYPE' OR
105 column_name is null Then
106 IF new_references.s_admission_process_type <> UPPER(new_references.s_admission_process_type) Then
107 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
108 IGS_GE_MSG_STACK.ADD;
109 App_Exception.Raise_Exception;
110 END IF;
111 END IF;
112
113 IF upper(column_name) = 'ADM_CI_SEQUENCE_NUMBER' OR
114 column_name is null Then
115 IF new_references.adm_ci_sequence_number < 1 OR
116 new_references.adm_ci_sequence_number > 999999 Then
117 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
118 IGS_GE_MSG_STACK.ADD;
119 App_Exception.Raise_Exception;
120 END IF;
121 END IF;
122 END Check_Constraints;
123
124 PROCEDURE Check_Parent_Existance AS
125 BEGIN
126
127 IF (((old_references.adm_cal_type = new_references.adm_cal_type) AND
128 (old_references.adm_ci_sequence_number = new_references.adm_ci_sequence_number) AND
129 (old_references.admission_cat = new_references.admission_cat)) OR
130 ((new_references.adm_cal_type IS NULL) OR
131 (new_references.adm_ci_sequence_number IS NULL) OR
132 (new_references.admission_cat IS NULL))) THEN
133 NULL;
134 ELSE
135 IF NOT IGS_AD_PERD_AD_CAT_PKG.Get_PK_For_Validation (
136 new_references.adm_cal_type,
137 new_references.adm_ci_sequence_number,
138 new_references.admission_cat
139 ) THEN
140 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
141 IGS_GE_MSG_STACK.ADD;
142 App_Exception.Raise_Exception;
143 END IF;
144 END IF;
145
146 IF (((old_references.admission_cat = new_references.admission_cat) AND
147 (old_references.s_admission_process_type = new_references.s_admission_process_type)) OR
148 ((new_references.admission_cat IS NULL) OR
149 (new_references.s_admission_process_type IS NULL))) THEN
150 NULL;
151 ELSE
152 IF NOT IGS_AD_PRCS_CAT_PKG.Get_PK_For_Validation (
153 new_references.admission_cat,
154 new_references.s_admission_process_type ,
155 'N') THEN
156 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
157 IGS_GE_MSG_STACK.ADD;
158 App_Exception.Raise_Exception;
159 END IF;
160 END IF;
161
162 END Check_Parent_Existance;
163
164 PROCEDURE Check_Child_Existance AS
165 BEGIN
166
167 IGS_AD_APPL_PKG.GET_FK_IGS_AD_PRD_AD_PRC_CA (
168 old_references.adm_cal_type,
169 old_references.adm_ci_sequence_number,
170 old_references.admission_cat,
171 old_references.s_admission_process_type
172 );
173
174 IGS_AD_PRD_PS_OF_OPT_PKG.GET_FK_IGS_AD_PRD_AD_PRC_CA (
175 old_references.adm_cal_type,
176 old_references.adm_ci_sequence_number,
177 old_references.admission_cat,
178 old_references.s_admission_process_type
179 );
180
181 IGS_AD_PECRS_OFOP_DT_PKG.GET_FK_IGS_AD_PRD_AD_PRC_CA (
182 old_references.adm_cal_type,
183 old_references.adm_ci_sequence_number,
184 old_references.admission_cat,
185 old_references.s_admission_process_type
186 );
187
188 END Check_Child_Existance;
189
190 FUNCTION Get_PK_For_Validation (
191 x_adm_cal_type IN VARCHAR2,
192 x_adm_ci_sequence_number IN NUMBER,
193 x_admission_cat IN VARCHAR2,
194 x_s_admission_process_type IN VARCHAR2,
195 x_closed_ind IN VARCHAR2
196 )
197 RETURN BOOLEAN
198 AS
199 CURSOR cur_rowid IS
200 SELECT rowid
201 FROM IGS_AD_PRD_AD_PRC_CA
202 WHERE adm_cal_type = x_adm_cal_type
203 AND adm_ci_sequence_number = x_adm_ci_sequence_number
204 AND admission_cat = x_admission_cat
205 AND s_admission_process_type = x_s_admission_process_type AND
206 closed_ind = NVL(x_closed_ind,closed_ind);
207
208 lv_rowid cur_rowid%RowType;
209
210 BEGIN
211
212 Open cur_rowid;
213 Fetch cur_rowid INTO lv_rowid;
214 IF (cur_rowid%FOUND) THEN
215 Close cur_rowid;
216 Return (TRUE);
217 ELSE
218 Close cur_rowid;
219 Return (FALSE);
220 END IF;
221 END Get_PK_For_Validation;
222
223 PROCEDURE GET_FK_IGS_AD_PERD_AD_CAT (
224 x_adm_cal_type IN VARCHAR2,
225 x_adm_ci_sequence_number IN NUMBER,
226 x_admission_cat IN VARCHAR2
227 ) AS
228
229 CURSOR cur_rowid IS
230 SELECT rowid
231 FROM IGS_AD_PRD_AD_PRC_CA
232 WHERE adm_cal_type = x_adm_cal_type
233 AND adm_ci_sequence_number = x_adm_ci_sequence_number
234 AND admission_cat = x_admission_cat ;
235
236 lv_rowid cur_rowid%RowType;
237
238 BEGIN
239
240 Open cur_rowid;
241 Fetch cur_rowid INTO lv_rowid;
242 IF (cur_rowid%FOUND) THEN
243 Close cur_rowid;
244 Fnd_Message.Set_Name ('IGS', 'IGS_AD_APAPC_APAC_FK');
245 IGS_GE_MSG_STACK.ADD;
246 App_Exception.Raise_Exception;
247 Return;
248 END IF;
249 Close cur_rowid;
250
251 END GET_FK_IGS_AD_PERD_AD_CAT;
252
253 PROCEDURE GET_FK_IGS_AD_PRCS_CAT (
254 x_admission_cat IN VARCHAR2,
255 x_s_admission_process_type IN VARCHAR2
256 ) AS
257
258 CURSOR cur_rowid IS
259 SELECT rowid
260 FROM IGS_AD_PRD_AD_PRC_CA
261 WHERE admission_cat = x_admission_cat
262 AND s_admission_process_type = x_s_admission_process_type ;
263
264 lv_rowid cur_rowid%RowType;
265
266 BEGIN
267
268 Open cur_rowid;
269 Fetch cur_rowid INTO lv_rowid;
270 IF (cur_rowid%FOUND) THEN
271 Close cur_rowid;
272 Fnd_Message.Set_Name ('IGS', 'IGS_AD_APAPC_APC_FK');
273 IGS_GE_MSG_STACK.ADD;
274 App_Exception.Raise_Exception;
275 Return;
276 END IF;
277 Close cur_rowid;
278
279 END GET_FK_IGS_AD_PRCS_CAT;
280
281 PROCEDURE Before_DML (
282 p_action IN VARCHAR2,
283 x_rowid IN VARCHAR2 ,
284 x_adm_cal_type IN VARCHAR2 ,
285 x_adm_ci_sequence_number IN NUMBER ,
286 x_admission_cat IN VARCHAR2 ,
287 x_s_admission_process_type IN VARCHAR2 ,
288 x_creation_date IN DATE ,
289 x_created_by IN NUMBER ,
290 x_last_update_date IN DATE ,
291 x_last_updated_by IN NUMBER ,
292 x_last_update_login IN NUMBER ,
293 x_closed_ind IN VARCHAR2,
294 x_single_response_flag IN VARCHAR2,
295 x_include_sr_in_rollover_flag IN VARCHAR2
296 ) AS
297 BEGIN
298
299 Set_Column_Values (
300 p_action,
301 x_rowid,
302 x_adm_cal_type,
303 x_adm_ci_sequence_number,
304 x_admission_cat,
305 x_s_admission_process_type,
306 x_creation_date,
307 x_created_by,
308 x_last_update_date,
309 x_last_updated_by,
310 x_last_update_login ,
311 x_closed_ind,
312 x_single_response_flag,
313 x_include_sr_in_rollover_flag
314 );
315
316 IF (p_action = 'INSERT') THEN
317 Null;
318 IF Get_PK_For_Validation (
319 new_references.adm_cal_type,
320 new_references.adm_ci_sequence_number,
321 new_references.admission_cat,
322 new_references.s_admission_process_type
323 ) THEN
324 Fnd_Message.Set_Name ('IGS', 'IGS_GE_RECORD_ALREADY_EXISTS');
325 IGS_GE_MSG_STACK.ADD;
326 App_Exception.Raise_Exception;
327 END IF;
328 Check_Constraints;
329 Check_Parent_Existance;
330 ELSIF (p_action = 'UPDATE') THEN
331 Check_Constraints;
332 Check_Parent_Existance;
333 ELSIF (p_action = 'DELETE') THEN
334 Check_Child_Existance;
335 ELSIF (p_action = 'VALIDATE_INSERT') THEN
336 IF Get_PK_For_Validation (
337 new_references.adm_cal_type,
338 new_references.adm_ci_sequence_number,
339 new_references.admission_cat,
340 new_references.s_admission_process_type
341 ) THEN
342 Fnd_Message.Set_Name ('IGS', 'IGS_GE_RECORD_ALREADY_EXISTS');
343 IGS_GE_MSG_STACK.ADD;
344 App_Exception.Raise_Exception;
345 END IF;
346 Check_Constraints;
347 ELSIF (p_action = 'VALIDATE_UPDATE') THEN
348 Check_Constraints;
349 ELSIF (p_action = 'VALIDATE_DELETE') THEN
350 Check_Child_Existance;
351 END IF;
352
353 -- Navin.Sinha 9/25/2003 Enhancement: 3132406 ENFORCE SINGLE RESPONSE TO OFFER
354 -- Rollover checkbox can be checked only if the Single Response checkbox is checked.
355 -- If rollover checkbox is checked without checking the Single Response checkbox the
356 -- raise the error message saying 'You cannot check the Single Response Rollover
357 -- checkbox without checking the Single Response checkbox'
358 IF p_action IN ('INSERT', 'UPDATE', 'VALIDATE_INSERT', 'VALIDATE_UPDATE') THEN
359 IF NVL(new_references.include_sr_in_rollover_flag,'N') = 'Y' AND NVL(new_references.single_response_flag,'N') = 'N' THEN
360 Fnd_Message.Set_Name ('IGS', 'IGS_AD_SR_CHECK_VALUE'); -- Single Response Rollover checkbox cannot be checked without checking Single Response checkbox.
361 IGS_GE_MSG_STACK.ADD;
362 App_Exception.Raise_Exception;
363 END IF;
364 END IF;
365
366 END Before_DML;
367
368 PROCEDURE After_DML (
369 p_action IN VARCHAR2,
370 x_rowid IN VARCHAR2
371 ) AS
372 BEGIN
373
374 l_rowid := x_rowid;
375
376 END After_DML;
377
378 PROCEDURE INSERT_ROW (
379 X_ROWID in out NOCOPY VARCHAR2,
380 X_ADM_CAL_TYPE in VARCHAR2,
381 X_ADM_CI_SEQUENCE_NUMBER in NUMBER,
382 X_ADMISSION_CAT in VARCHAR2,
383 X_S_ADMISSION_PROCESS_TYPE in VARCHAR2,
384 X_MODE in VARCHAR2 ,
385 x_closed_ind IN VARCHAR2,
386 x_single_response_flag IN VARCHAR2,
387 x_include_sr_in_rollover_flag IN VARCHAR2
388 ) AS
389 cursor C is select ROWID from IGS_AD_PRD_AD_PRC_CA
390 where ADM_CAL_TYPE = X_ADM_CAL_TYPE
391 and ADM_CI_SEQUENCE_NUMBER = X_ADM_CI_SEQUENCE_NUMBER
392 and ADMISSION_CAT = X_ADMISSION_CAT
393 and S_ADMISSION_PROCESS_TYPE = X_S_ADMISSION_PROCESS_TYPE;
394 X_LAST_UPDATE_DATE DATE;
395 X_LAST_UPDATED_BY NUMBER;
396 X_LAST_UPDATE_LOGIN NUMBER;
397 BEGIN
398 X_LAST_UPDATE_DATE := SYSDATE;
399 IF(X_MODE = 'I') THEN
400 X_LAST_UPDATED_BY := 1;
401 X_LAST_UPDATE_LOGIN := 0;
402 ELSIF (X_MODE = 'R') THEN
403 X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
404 IF X_LAST_UPDATED_BY is NULL THEN
405 X_LAST_UPDATED_BY := -1;
406 END IF;
407 X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
408 IF X_LAST_UPDATE_LOGIN is NULL THEN
409 X_LAST_UPDATE_LOGIN := -1;
410 END IF;
411 ELSE
412 FND_MESSAGE.SET_NAME( 'FND', 'SYSTEM-INVALID ARGS');
413 IGS_GE_MSG_STACK.ADD;
414 app_exception.raise_exception;
415 END IF;
416 Before_DML(p_action =>'INSERT',
417 x_rowid =>X_ROWID,
418 x_adm_cal_type => X_ADM_CAL_TYPE,
419 x_adm_ci_sequence_number => X_ADM_CI_SEQUENCE_NUMBER,
420 x_admission_cat => X_ADMISSION_CAT,
421 x_s_admission_process_type => X_S_ADMISSION_PROCESS_TYPE,
422 x_creation_date => X_LAST_UPDATE_DATE,
423 x_created_by => X_LAST_UPDATED_BY,
424 x_last_update_date => X_LAST_UPDATE_DATE,
425 x_last_updated_by => X_LAST_UPDATED_BY,
426 x_last_update_login => X_LAST_UPDATE_LOGIN,
427 x_closed_ind => x_closed_ind,
428 x_single_response_flag => x_single_response_flag,
429 x_include_sr_in_rollover_flag => x_include_sr_in_rollover_flag
430 );
431
432 INSERT INTO IGS_AD_PRD_AD_PRC_CA (
433 ADM_CAL_TYPE,
434 ADM_CI_SEQUENCE_NUMBER,
435 ADMISSION_CAT,
436 S_ADMISSION_PROCESS_TYPE,
437 CREATION_DATE,
438 CREATED_BY,
439 LAST_UPDATE_DATE,
440 LAST_UPDATED_BY,
441 LAST_UPDATE_LOGIN,
442 CLOSED_IND,
443 SINGLE_RESPONSE_FLAG,
444 INCLUDE_SR_IN_ROLLOVER_FLAG
445 ) values (
446 NEW_REFERENCES.ADM_CAL_TYPE,
447 NEW_REFERENCES.ADM_CI_SEQUENCE_NUMBER,
448 NEW_REFERENCES.ADMISSION_CAT,
449 NEW_REFERENCES.S_ADMISSION_PROCESS_TYPE,
450 X_LAST_UPDATE_DATE,
451 X_LAST_UPDATED_BY,
452 X_LAST_UPDATE_DATE,
453 X_LAST_UPDATED_BY,
454 X_LAST_UPDATE_LOGIN,
455 NEW_REFERENCES.CLOSED_IND,
456 NEW_REFERENCES.SINGLE_RESPONSE_FLAG,
457 NEW_REFERENCES.INCLUDE_SR_IN_ROLLOVER_FLAG
458 );
459
460 OPEN c;
461 FETCH c into X_ROWID;
462 IF (c%notfound) then
463 CLOSE c;
464 RAISE NO_DATA_FOUND;
465 END IF;
466 CLOSE c;
467 After_DML(
468 p_action =>'INSERT',
469 x_rowid => X_ROWID
470 );
471 END INSERT_ROW;
472
473
474 PROCEDURE update_row (
475 X_ROWID in VARCHAR2,
476 X_ADM_CAL_TYPE in VARCHAR2,
477 X_ADM_CI_SEQUENCE_NUMBER in NUMBER,
478 X_ADMISSION_CAT in VARCHAR2,
479 X_S_ADMISSION_PROCESS_TYPE in VARCHAR2,
480 X_MODE in VARCHAR2 ,
481 x_closed_ind IN VARCHAR2,
482 x_single_response_flag IN VARCHAR2,
483 x_include_sr_in_rollover_flag IN VARCHAR2
484 ) AS
485 X_LAST_UPDATE_DATE DATE;
486 X_LAST_UPDATED_BY NUMBER;
487 X_LAST_UPDATE_LOGIN NUMBER;
488 BEGIN
489 X_LAST_UPDATE_DATE := SYSDATE;
490 if(X_MODE = 'I') then
491 X_LAST_UPDATED_BY := 1;
492 X_LAST_UPDATE_LOGIN := 0;
493 elsif (X_MODE = 'R') then
494 X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
495 if X_LAST_UPDATED_BY is NULL then
496 X_LAST_UPDATED_BY := -1;
497 end if;
498 X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
499 if X_LAST_UPDATE_LOGIN is NULL then
500 X_LAST_UPDATE_LOGIN := -1;
501 end if;
502 else
503 FND_MESSAGE.SET_NAME( 'FND', 'SYSTEM-INVALID ARGS');
504 IGS_GE_MSG_STACK.ADD;
505 app_exception.raise_exception;
506 end if;
507 Before_DML(p_action =>'UPDATE',
508 x_rowid =>X_ROWID,
509 x_adm_cal_type => X_ADM_CAL_TYPE,
510 x_adm_ci_sequence_number => X_ADM_CI_SEQUENCE_NUMBER,
511 x_admission_cat => X_ADMISSION_CAT,
512 x_s_admission_process_type => X_S_ADMISSION_PROCESS_TYPE,
513 x_creation_date => X_LAST_UPDATE_DATE,
514 x_created_by => X_LAST_UPDATED_BY,
515 x_last_update_date => X_LAST_UPDATE_DATE,
516 x_last_updated_by => X_LAST_UPDATED_BY,
517 x_last_update_login => X_LAST_UPDATE_LOGIN,
518 x_closed_ind => x_closed_ind,
519 x_single_response_flag => x_single_response_flag,
520 x_include_sr_in_rollover_flag => x_include_sr_in_rollover_flag
521 );
522
523 UPDATE IGS_AD_PRD_AD_PRC_CA SET
524 ADM_CAL_TYPE = new_references.adm_cal_type,
525 ADM_CI_SEQUENCE_NUMBER = new_references.adm_ci_sequence_number,
526 ADMISSION_CAT = new_references.admission_cat,
527 S_ADMISSION_PROCESS_TYPE = new_references.s_admission_process_type,
528 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
529 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
530 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
531 CLOSED_IND = X_CLOSED_IND,
532 SINGLE_RESPONSE_FLAG = X_SINGLE_RESPONSE_FLAG,
533 INCLUDE_SR_IN_ROLLOVER_FLAG = X_INCLUDE_SR_IN_ROLLOVER_FLAG
534 WHERE
535 ROWID = X_ROWID;
536
537 IF SQL%NOTFOUND THEN
538 RAISE NO_DATA_FOUND;
539 END IF;
540
541 After_DML(
542 p_action =>'UPDATE',
543 x_rowid => X_ROWID
544 );
545 END update_row;
546
547 PROCEDURE LOCK_ROW (
548 X_ROWID in VARCHAR2,
549 X_ADM_CAL_TYPE in VARCHAR2,
550 X_ADM_CI_SEQUENCE_NUMBER in NUMBER,
551 X_ADMISSION_CAT in VARCHAR2,
552 X_S_ADMISSION_PROCESS_TYPE in VARCHAR2,
553 X_CLOSED_IND IN VARCHAR2,
554 x_single_response_flag IN VARCHAR2,
555 x_include_sr_in_rollover_flag IN VARCHAR2
556 ) AS
557 CURSOR c1 IS SELECT
558 rowid
559 FROM IGS_AD_PRD_AD_PRC_CA
560 WHERE ROWID = X_ROWID for update nowait;
561 tlinfo c1%rowtype;
562
563 BEGIN
564 OPEN c1;
565 FETCH c1 into tlinfo;
566 IF (c1%NOTFOUND) THEN
567 CLOSE c1;
568 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
569 IGS_GE_MSG_STACK.ADD;
570 app_exception.raise_exception;
571 RETURN;
572 END IF;
573 CLOSE c1;
574 RETURN;
575 END LOCK_ROW;
576
577 PROCEDURE DELETE_ROW (
578 X_ROWID in VARCHAR2
579 ) AS
580 BEGIN
581 Before_DML(
582 p_action =>'DELETE',
583 x_rowid => X_ROWID
584 );
585 DELETE FROM IGS_AD_PRD_AD_PRC_CA
586 WHERE ROWID = X_ROWID;
587 IF (sql%notfound) then
588 raise no_data_found;
589 END IF;
590 After_DML(
591 p_action =>'DELETE',
592 x_rowid => X_ROWID
593 );
594
595 END DELETE_ROW;
596
597 END IGS_AD_PRD_AD_PRC_CA_PKG;