DBA Data[Home] [Help]

PACKAGE BODY: APPS.XTR_RM_MD_CURVES_PKG

Source


1 PACKAGE BODY XTR_RM_MD_CURVES_PKG as
2 /* $Header: xtrmdcvb.pls 120.3 2005/06/29 10:42:11 csutaria ship $ */
3 
4 PROCEDURE INSERT_ROW(
5 		X_ROWID IN OUT NOCOPY VARCHAR2,
6 		X_CURVE_CODE VARCHAR2,
7 		X_DESCRIPTION VARCHAR2,
8 		X_TYPE VARCHAR2,
9 		X_CCY VARCHAR2,
10 		X_CONTRA_CCY VARCHAR2,
11 		X_DATA_SIDE VARCHAR2,
12 		X_DEFAULT_INTERPOLATION VARCHAR2,
13 		X_AUTHORIZED_YN VARCHAR2,
14 		X_ATTRIBUTE_CATEGORY VARCHAR2,
15 		X_ATTRIBUTE1 VARCHAR2,
16 		X_ATTRIBUTE2 VARCHAR2,
17 		X_ATTRIBUTE3 VARCHAR2,
18 		X_ATTRIBUTE4 VARCHAR2,
19 		X_ATTRIBUTE5 VARCHAR2,
20 		X_ATTRIBUTE6 VARCHAR2,
21 		X_ATTRIBUTE7 VARCHAR2,
22 		X_ATTRIBUTE8 VARCHAR2,
23 		X_ATTRIBUTE9 VARCHAR2,
24 		X_ATTRIBUTE10 VARCHAR2,
25 		X_ATTRIBUTE11 VARCHAR2,
26 		X_ATTRIBUTE12 VARCHAR2,
27 		X_ATTRIBUTE13 VARCHAR2,
28 		X_ATTRIBUTE14 VARCHAR2,
29 		X_ATTRIBUTE15 VARCHAR2,
30 		X_CREATED_BY NUMBER,
31 		X_CREATION_DATE DATE,
32 		X_LAST_UPDATED_BY NUMBER,
33 		X_LAST_UPDATE_DATE DATE,
34 		X_LAST_UPDATE_LOGIN NUMBER) IS
35 
36 	X_CURVE_CODE_TMP VARCHAR(20);
37 
38 	CURSOR GET_CURVE_CODE IS
39 		SELECT CURVE_CODE
40 		FROM XTR_RM_MD_CURVES
41 		WHERE CURVE_CODE = X_CURVE_CODE;
42 
43 	CURSOR C IS
44 		SELECT ROWID FROM XTR_RM_MD_CURVES
45 		WHERE CURVE_CODE = X_CURVE_CODE;
46 
47 BEGIN
48 	OPEN GET_CURVE_CODE;
49 	FETCH GET_CURVE_CODE INTO X_CURVE_CODE_TMP;
50 	-- CURVE CODE DOESN'T ALREADY EXIST, SO SAVE INTO TABLE
51 	IF (GET_CURVE_CODE%NOTFOUND) THEN
52 		INSERT INTO XTR_RM_MD_CURVES (
53 			CURVE_CODE,
54 			DESCRIPTION,
55 			TYPE,
56 			CCY,
57 			CONTRA_CCY,
58 			DATA_SIDE,
59 			DEFAULT_INTERPOLATION,
60 			AUTHORIZED_YN,
61 			ATTRIBUTE_CATEGORY,
62 			ATTRIBUTE1,
63 			ATTRIBUTE2,
64 			ATTRIBUTE3,
65 			ATTRIBUTE4,
66 			ATTRIBUTE5,
67 			ATTRIBUTE6,
68 			ATTRIBUTE7,
69 			ATTRIBUTE8,
70 			ATTRIBUTE9,
71 			ATTRIBUTE10,
72 			ATTRIBUTE11,
73 			ATTRIBUTE12,
74 			ATTRIBUTE13,
75 			ATTRIBUTE14,
76 			ATTRIBUTE15,
77 			CREATED_BY,
78 			CREATION_DATE,
79 			LAST_UPDATED_BY,
80 			LAST_UPDATE_DATE,
81 			LAST_UPDATE_LOGIN)
82 		VALUES (X_CURVE_CODE,
83 			X_DESCRIPTION,
84 			X_TYPE,
85 			X_CCY,
86 			X_CONTRA_CCY,
87 			X_DATA_SIDE,
88 			X_DEFAULT_INTERPOLATION,
89 			X_AUTHORIZED_YN,
90 			X_ATTRIBUTE_CATEGORY,
91 			X_ATTRIBUTE1,
92 			X_ATTRIBUTE2,
93 			X_ATTRIBUTE3,
94 			X_ATTRIBUTE4,
95 			X_ATTRIBUTE5,
96 			X_ATTRIBUTE6,
97 			X_ATTRIBUTE7,
98 			X_ATTRIBUTE8,
99 			X_ATTRIBUTE9,
100 			X_ATTRIBUTE10,
101 			X_ATTRIBUTE11,
102 			X_ATTRIBUTE12,
103 			X_ATTRIBUTE13,
104 			X_ATTRIBUTE14,
105 			X_ATTRIBUTE15,
106 			X_CREATED_BY,
107 			X_CREATION_DATE,
108 			X_LAST_UPDATED_BY,
109 			X_LAST_UPDATE_DATE,
110 			X_LAST_UPDATE_LOGIN);
111 
112 	-- CURVE_CODE ALREADY EXISTS, SO THROW ERROR MESSAGE
113 	ELSE
114 		FND_MESSAGE.SET_NAME('XTR', 'XTR_RM_CURVE_CODE_EXISTS');
115 		APP_EXCEPTION.RAISE_EXCEPTION;
116 	END IF;
117 	CLOSE GET_CURVE_CODE;
118 
119 	OPEN C;
120 	FETCH C INTO X_ROWID;
121 	IF (C%NOTFOUND) THEN
122 		CLOSE C;
123 		RAISE NO_DATA_FOUND;
124 	END IF;
125 	CLOSE C;
126 
127 END INSERT_ROW;
128 
129 PROCEDURE DELETE_ROW (X_ROWID VARCHAR2) IS
130 
131 BEGIN
132 		-- DELETE THE ROW, SINCE NOT USED ANYWHERE ELSE
133 		DELETE FROM XTR_RM_MD_CURVES
134 		WHERE ROWID = X_ROWID;
135 			IF (SQL%NOTFOUND) THEN
136 				RAISE NO_DATA_FOUND;
137 			END IF;
138 END DELETE_ROW;
139 
140 
141 PROCEDURE UPDATE_ROW(
142 		X_ROWID VARCHAR2,
143 		X_CURVE_CODE VARCHAR2,
144 		X_DESCRIPTION VARCHAR2,
145 		X_TYPE VARCHAR2,
146 		X_CCY VARCHAR2,
147 		X_CONTRA_CCY VARCHAR2,
148 		X_DATA_SIDE VARCHAR2,
149 		X_DEFAULT_INTERPOLATION VARCHAR2,
150 		X_AUTHORIZED_YN VARCHAR2,
151 		X_ATTRIBUTE_CATEGORY VARCHAR2,
152 		X_ATTRIBUTE1 VARCHAR2,
153 		X_ATTRIBUTE2 VARCHAR2,
154 		X_ATTRIBUTE3 VARCHAR2,
155 		X_ATTRIBUTE4 VARCHAR2,
156 		X_ATTRIBUTE5 VARCHAR2,
157 		X_ATTRIBUTE6 VARCHAR2,
158 		X_ATTRIBUTE7 VARCHAR2,
159 		X_ATTRIBUTE8 VARCHAR2,
160 		X_ATTRIBUTE9 VARCHAR2,
161 		X_ATTRIBUTE10 VARCHAR2,
162 		X_ATTRIBUTE11 VARCHAR2,
163 		X_ATTRIBUTE12 VARCHAR2,
164 		X_ATTRIBUTE13 VARCHAR2,
165 		X_ATTRIBUTE14 VARCHAR2,
166 		X_ATTRIBUTE15 VARCHAR2,
167 		X_LAST_UPDATED_BY NUMBER,
168 		X_LAST_UPDATE_DATE DATE,
169 		X_LAST_UPDATE_LOGIN NUMBER) IS
170 BEGIN
171 	UPDATE XTR_RM_MD_CURVES
172 	SET
173 		CURVE_CODE 	= 	X_CURVE_CODE,
174 		DESCRIPTION	=	X_DESCRIPTION,
175 		TYPE		=  	X_TYPE,
176 		CCY		=	X_CCY,
177 		CONTRA_CCY	=	X_CONTRA_CCY,
178 		DATA_SIDE	=	X_DATA_SIDE,
179 		DEFAULT_INTERPOLATION	=	X_DEFAULT_INTERPOLATION,
180 		AUTHORIZED_YN	=	X_AUTHORIZED_YN,
181 		ATTRIBUTE_CATEGORY	=	X_ATTRIBUTE_CATEGORY,
182 		ATTRIBUTE1	=	X_ATTRIBUTE1,
183 		ATTRIBUTE2	=	X_ATTRIBUTE2,
184 		ATTRIBUTE3	=	X_ATTRIBUTE3,
185 		ATTRIBUTE4	=	X_ATTRIBUTE4,
186 		ATTRIBUTE5	=	X_ATTRIBUTE5,
187 		ATTRIBUTE6	=	X_ATTRIBUTE6,
188 		ATTRIBUTE7	=	X_ATTRIBUTE7,
189 		ATTRIBUTE8	=	X_ATTRIBUTE8,
190 		ATTRIBUTE9	=	X_ATTRIBUTE9,
191 		ATTRIBUTE10	=	X_ATTRIBUTE10,
192 		ATTRIBUTE11	=	X_ATTRIBUTE11,
193 		ATTRIBUTE12	=	X_ATTRIBUTE12,
194 		ATTRIBUTE13	=	X_ATTRIBUTE13,
195 		ATTRIBUTE14	=	X_ATTRIBUTE14,
196 		ATTRIBUTE15	=	X_ATTRIBUTE15,
197 		LAST_UPDATED_BY	=	X_LAST_UPDATED_BY,
198 		LAST_UPDATE_DATE	=	X_LAST_UPDATE_DATE,
199 		LAST_UPDATE_LOGIN	=	X_LAST_UPDATE_LOGIN
200 	WHERE ROWID = X_ROWID;
201 
202 	IF (SQL%NOTFOUND) THEN
203 		RAISE NO_DATA_FOUND;
204 	END IF;
205 END UPDATE_ROW;
206 
207 PROCEDURE LOCK_ROW (
208 		X_ROWID VARCHAR2,
209 		X_CURVE_CODE VARCHAR2,
210 		X_DESCRIPTION VARCHAR2,
211 		X_TYPE VARCHAR2,
212 		X_CCY VARCHAR2,
213 		X_CONTRA_CCY VARCHAR2,
214 		X_DATA_SIDE VARCHAR2,
215 		X_DEFAULT_INTERPOLATION VARCHAR2,
216 		X_AUTHORIZED_YN VARCHAR2,
217 		X_ATTRIBUTE_CATEGORY VARCHAR2,
218 		X_ATTRIBUTE1 VARCHAR2,
219 		X_ATTRIBUTE2 VARCHAR2,
220 		X_ATTRIBUTE3 VARCHAR2,
221 		X_ATTRIBUTE4 VARCHAR2,
222 		X_ATTRIBUTE5 VARCHAR2,
223 		X_ATTRIBUTE6 VARCHAR2,
224 		X_ATTRIBUTE7 VARCHAR2,
225 		X_ATTRIBUTE8 VARCHAR2,
226 		X_ATTRIBUTE9 VARCHAR2,
227 		X_ATTRIBUTE10 VARCHAR2,
228 		X_ATTRIBUTE11 VARCHAR2,
229 		X_ATTRIBUTE12 VARCHAR2,
230 		X_ATTRIBUTE13 VARCHAR2,
231 		X_ATTRIBUTE14 VARCHAR2,
232 		X_ATTRIBUTE15 VARCHAR2) IS
233 
234 	CURSOR C IS
235 		SELECT *
236 		FROM XTR_RM_MD_CURVES
237 		WHERE ROWID = X_ROWID
238 		FOR UPDATE OF CURVE_CODE NOWAIT;
239 	RECINFO C%ROWTYPE;
240 
241 BEGIN
242 	OPEN C;
243 	FETCH C INTO RECINFO;
244 	IF (C%NOTFOUND) THEN
245 		CLOSE C;
246 		FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_DELETED');
247 		APP_EXCEPTION.RAISE_EXCEPTION;
248 	END IF;
249 	CLOSE C;
250 
251 	IF (
252 			(RECINFO.CURVE_CODE = X_CURVE_CODE)
253 		AND	(	(RECINFO.DESCRIPTION = X_DESCRIPTION)
254 			OR	(	(RECINFO.DESCRIPTION IS NULL)
255 				AND 	(X_DESCRIPTION IS NULL)))
256 		AND	(RECINFO.TYPE = X_TYPE)
257 		AND 	(RECINFO.CCY = X_CCY)
258 		AND	(	(RECINFO.CONTRA_CCY = X_CONTRA_CCY)
259 			OR	(	(RECINFO.CONTRA_CCY IS NULL)
260 				AND	(X_CONTRA_CCY IS NULL)))
261 		AND	(RECINFO.DATA_SIDE = X_DATA_SIDE)
262 		AND	(RECINFO.DEFAULT_INTERPOLATION = X_DEFAULT_INTERPOLATION)
263 		AND	(	(RECINFO.ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY)
264 			OR	(	(RECINFO.ATTRIBUTE_CATEGORY IS NULL)
265 				AND 	(X_ATTRIBUTE_CATEGORY IS NULL)))
266 		AND	(	(RECINFO.ATTRIBUTE1 = X_ATTRIBUTE1)
267 			OR	(	(RECINFO.ATTRIBUTE1 IS NULL)
268 				AND	(X_ATTRIBUTE1 IS NULL)))
269 		AND	(	(RECINFO.ATTRIBUTE2 = X_ATTRIBUTE2)
270 			OR	(	(RECINFO.ATTRIBUTE2 IS NULL)
271 				AND	(X_ATTRIBUTE2 IS NULL)))
272 		AND	(	(RECINFO.ATTRIBUTE3 = X_ATTRIBUTE3)
273 			OR	(	(RECINFO.ATTRIBUTE3 IS NULL)
274 				AND	(X_ATTRIBUTE3 IS NULL)))
275 		AND	(	(RECINFO.ATTRIBUTE4 = X_ATTRIBUTE4)
276 			OR	(	(RECINFO.ATTRIBUTE4 IS NULL)
277 				AND	(X_ATTRIBUTE4 IS NULL)))
278 		AND	(	(RECINFO.ATTRIBUTE5 = X_ATTRIBUTE5)
279 			OR	(	(RECINFO.ATTRIBUTE5 IS NULL)
280 				AND	(X_ATTRIBUTE5 IS NULL)))
281 		AND	(	(RECINFO.ATTRIBUTE6 = X_ATTRIBUTE6)
282 			OR	(	(RECINFO.ATTRIBUTE6 IS NULL)
283 				AND	(X_ATTRIBUTE6 IS NULL)))
284 		AND	(	(RECINFO.ATTRIBUTE7 = X_ATTRIBUTE7)
285 			OR	(	(RECINFO.ATTRIBUTE7 IS NULL)
286 				AND	(X_ATTRIBUTE7 IS NULL)))
287 		AND	(	(RECINFO.ATTRIBUTE8 = X_ATTRIBUTE8)
288 			OR	(	(RECINFO.ATTRIBUTE8 IS NULL)
289 				AND	(X_ATTRIBUTE8 IS NULL)))
290 		AND	(	(RECINFO.ATTRIBUTE9 = X_ATTRIBUTE9)
291 			OR	(	(RECINFO.ATTRIBUTE9 IS NULL)
292 				AND	(X_ATTRIBUTE9 IS NULL)))
293 		AND	(	(RECINFO.ATTRIBUTE10 = X_ATTRIBUTE10)
294 			OR	(	(RECINFO.ATTRIBUTE10 IS NULL)
295 				AND	(X_ATTRIBUTE10 IS NULL)))
296 		AND	(	(RECINFO.ATTRIBUTE11 = X_ATTRIBUTE11)
297 			OR	(	(RECINFO.ATTRIBUTE11 IS NULL)
298 				AND	(X_ATTRIBUTE11 IS NULL)))
299 		AND	(	(RECINFO.ATTRIBUTE12 = X_ATTRIBUTE12)
300 			OR	(	(RECINFO.ATTRIBUTE12 IS NULL)
301 				AND	(X_ATTRIBUTE12 IS NULL)))
302 		AND	(	(RECINFO.ATTRIBUTE13 = X_ATTRIBUTE13)
303 			OR	(	(RECINFO.ATTRIBUTE13 IS NULL)
304 				AND	(X_ATTRIBUTE13 IS NULL)))
305 		AND	(	(RECINFO.ATTRIBUTE14 = X_ATTRIBUTE14)
306 			OR	(	(RECINFO.ATTRIBUTE14 IS NULL)
307 				AND	(X_ATTRIBUTE14 IS NULL)))
308 		AND	(	(RECINFO.ATTRIBUTE15 = X_ATTRIBUTE15)
309 			OR	(	(RECINFO.ATTRIBUTE15 IS NULL)
310 				AND	(X_ATTRIBUTE15 IS NULL)))
311 
312 		) THEN
313 		RETURN;
314 	ELSE
315 		FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_CHANGED');
316 		APP_EXCEPTION.RAISE_EXCEPTION;
317 	END IF;
318 END LOCK_ROW;
319 
320 END XTR_RM_MD_CURVES_PKG;
321