1 PACKAGE BODY XTR_RM_MD_SET_CURVES_PKG as
2 /* $Header: xtrmdscb.pls 120.1 2005/06/29 10:47:52 csutaria ship $ */
3
4 PROCEDURE insert_row(p_rowid IN OUT NOCOPY VARCHAR2,
5 p_curve_code IN VARCHAR2,
6 p_data_side IN VARCHAR2,
7 p_interpolation IN VARCHAR2,
8 p_set_code IN VARCHAR2,
9 p_created_by IN NUMBER,
10 p_creation_date IN DATE,
11 p_last_updated_by IN NUMBER,
12 p_last_update_date IN DATE,
13 p_last_update_login IN NUMBER) IS
14
15 CURSOR C IS select rowid from xtr_rm_md_set_curves
16 where set_code = p_set_code and curve_code = p_curve_code;
17
18 BEGIN
19
20 INSERT INTO xtr_rm_md_set_curves(curve_code,
21 data_side,
22 interpolation,
23 set_code,
24 created_by,
25 creation_date,
26 last_updated_by,
27 last_update_date,
28 last_update_login)
29 VALUES (p_curve_code,
30 p_data_side,
31 p_interpolation,
32 p_set_code,
33 p_created_by,
34 p_creation_date,
35 p_last_updated_by,
36 p_last_update_date,
37 p_last_update_login);
38
39 OPEN C;
40 FETCH C INTO p_rowid;
41 IF (C%NOTFOUND) THEN
42 CLOSE C;
43 raise NO_DATA_FOUND;
44 END IF;
45 CLOSE C;
46 END insert_row;
47
48
49 PROCEDURE update_row(p_rowid IN VARCHAR2,
50 p_curve_code IN VARCHAR2,
51 p_data_side IN VARCHAR2,
52 p_interpolation IN VARCHAR2,
53 p_set_code IN VARCHAR2,
54 p_last_updated_by IN NUMBER,
55 p_last_update_date IN DATE,
56 p_last_update_login IN NUMBER) IS
57
58
59 BEGIN
60
61 UPDATE xtr_rm_md_set_curves SET set_code = p_set_code,
62 curve_code = p_curve_code,
63 data_side = p_data_side,
64 interpolation = p_interpolation,
65 last_updated_by = p_last_updated_by,
66 last_update_date = p_last_update_date,
67 last_update_login = p_last_update_login
68 WHERE rowid = p_rowid;
69
70 IF (SQL%NOTFOUND) THEN
71 Raise NO_DATA_FOUND;
72 END IF;
73
74 END update_row;
75
76
77
78 PROCEDURE lock_row (p_rowid IN VARCHAR2,
79 p_curve_code IN VARCHAR2,
80 p_data_side IN VARCHAR2,
81 p_interpolation IN VARCHAR2,
82 p_set_code IN VARCHAR2) IS
83
84 CURSOR C IS
85 select * from xtr_rm_md_set_curves
86 where rowid = p_rowid
87 for update of curve_code NOWAIT;
88 recinfo C%ROWTYPE;
89
90 BEGIN
91
92 OPEN C;
93 FETCH C INTO recinfo;
94
95 IF (C%NOTFOUND) THEN
96 CLOSE C;
97 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
98 app_exception.raise_exception;
99 END IF;
100 CLOSE C;
101
102 IF ((recinfo.set_code = p_set_code) AND
103 (recinfo.curve_code = p_curve_code) AND
104 (recinfo.interpolation = p_interpolation) AND
105 (recinfo.data_side = p_data_side)) THEN
106
107 return;
108 ELSE
109 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
110 app_exception.raise_exception;
111 END IF;
112
113
114 END lock_row;
115
116
117
118 PROCEDURE delete_row(p_rowid IN VARCHAR2) IS
119
120 BEGIN
121
122 DELETE FROM xtr_rm_md_set_curves WHERE rowid = p_rowid;
123
124 IF (SQL%NOTFOUND) THEN
125 Raise NO_DATA_FOUND;
126 END IF;
127
128 END delete_row;
129
130 END XTR_RM_MD_SET_CURVES_PKG;
131