1: package body IGS_RU_RULE_PKG as
2: /* $Header: IGSUI11B.pls 115.12 2002/11/29 04:27:46 nsidana ship $ */
3:
4: l_rowid VARCHAR2(25);
5: old_references IGS_RU_RULE%RowType;
1: package body IGS_RU_RULE_PKG as
2: /* $Header: IGSUI11B.pls 115.12 2002/11/29 04:27:46 nsidana ship $ */
3:
4: l_rowid VARCHAR2(25);
5: old_references IGS_RU_RULE%RowType;
6: new_references IGS_RU_RULE%RowType;
7:
8: PROCEDURE Set_Column_Values (
9: p_action IN VARCHAR2,
2: /* $Header: IGSUI11B.pls 115.12 2002/11/29 04:27:46 nsidana ship $ */
3:
4: l_rowid VARCHAR2(25);
5: old_references IGS_RU_RULE%RowType;
6: new_references IGS_RU_RULE%RowType;
7:
8: PROCEDURE Set_Column_Values (
9: p_action IN VARCHAR2,
10: x_rowid IN VARCHAR2 ,
17: ) as
18:
19: CURSOR cur_old_ref_values IS
20: SELECT *
21: FROM IGS_RU_RULE
22: WHERE rowid = x_rowid;
23:
24: BEGIN
25:
29: -- Populate Old Values.
30: Open cur_old_ref_values;
31: Fetch cur_old_ref_values INTO old_references;
32: IF (cur_old_ref_values%NOTFOUND) AND (p_action NOT IN ('INSERT', 'VALIDATE_INSERT')) THEN
33: IGS_RU_GEN_006.SET_TOKEN(' IGS_RU_RULE : P_ACTION INSERT VALIDATE_INSERT : IGSUI11B.PLS');
34: Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
35: IGS_GE_MSG_STACK.ADD;
36: App_Exception.Raise_Exception;
37: Close cur_old_ref_values;
81: )return BOOLEAN as
82:
83: CURSOR cur_rowid IS
84: SELECT rowid
85: FROM IGS_RU_RULE
86: WHERE sequence_number = x_sequence_number
87: FOR UPDATE NOWAIT;
88:
89: lv_rowid cur_rowid%RowType;
199:
200: --svenkata - The cursor C is being modified and cursor cur_max_plus_one is being created . This is to ensure that
201: -- when a user defined rule is created , it picks up a sequence number more than 50000 . Bug # 2233951
202: l_sequence_number NUMBER;
203: cursor C is select ROWID from IGS_RU_RULE
204: where SEQUENCE_NUMBER = L_SEQUENCE_NUMBER;
205:
206:
207: -- this cursor has been modified to lock the record so that parallel processing is avoided
207: -- this cursor has been modified to lock the record so that parallel processing is avoided
208: -- rnirwani - 15.mar.02- 2233951
209: CURSOR cur_max_plus_one IS
210: SELECT (sequence_number + 1) sequence_number
211: FROM IGS_RU_RULE
212: WHERE sequence_number = (SELECT MAX(sequence_number) + 1 FROM igs_ru_rule
213: where sequence_number < 499999 ) FOR UPDATE OF sequence_number NOWAIT;
214:
215: X_LAST_UPDATE_DATE DATE;
208: -- rnirwani - 15.mar.02- 2233951
209: CURSOR cur_max_plus_one IS
210: SELECT (sequence_number + 1) sequence_number
211: FROM IGS_RU_RULE
212: WHERE sequence_number = (SELECT MAX(sequence_number) + 1 FROM igs_ru_rule
213: where sequence_number < 499999 ) FOR UPDATE OF sequence_number NOWAIT;
214:
215: X_LAST_UPDATE_DATE DATE;
216: X_LAST_UPDATED_BY NUMBER;
272: ELSE
273: l_sequence_number := NEW_REFERENCES.SEQUENCE_NUMBER;
274: END IF;
275:
276: insert into IGS_RU_RULE (
277: SEQUENCE_NUMBER,
278: CREATION_DATE,
279: CREATED_BY,
280: LAST_UPDATE_DATE,
307: X_ROWID in VARCHAR2,
308: X_SEQUENCE_NUMBER in NUMBER
309: ) as
310: cursor c1 is select ROWID
311: from IGS_RU_RULE
312: where ROWID = X_ROWID for update nowait;
313: tlinfo c1%rowtype;
314:
315: begin
316: open c1;
317: fetch c1 into tlinfo;
318: if (c1%notfound) then
319: fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
320: IGS_RU_GEN_006.SET_TOKEN(' IGS_RU_RULE : P_ACTION LOCK_ROW : IGSUI11B.PLS');
321: IGS_GE_MSG_STACK.ADD;
322: app_exception.raise_exception;
323: close c1;
324: return;
336: Before_DML (
337: p_action => 'DELETE',
338: x_rowid => X_ROWID);
339:
340: delete from IGS_RU_RULE
341: where ROWID = X_ROWID;
342: if (sql%notfound) then
343: raise no_data_found;
344: end if;
348: x_rowid => X_ROWID);
349:
350: end DELETE_ROW;
351:
352: end IGS_RU_RULE_PKG;