[Home] [Help]
PACKAGE BODY: APPS.QP_CURR_LISTS_UTIL
Source
1 PACKAGE BODY QP_Curr_Lists_Util AS
2 /* $Header: QPXUCURB.pls 120.1 2005/06/10 00:09:31 appldev $ */
3
4 -- Global constant holding the package name
5
6 G_PKG_NAME CONSTANT VARCHAR2(30) := 'QP_Curr_Lists_Util';
7
8 -- Procedure Clear_Dependent_Attr
9
10 PROCEDURE Clear_Dependent_Attr
11 ( p_attr_id IN NUMBER := FND_API.G_MISS_NUM
12 , p_CURR_LISTS_rec IN QP_Currency_PUB.Curr_Lists_Rec_Type
13 , p_old_CURR_LISTS_rec IN QP_Currency_PUB.Curr_Lists_Rec_Type :=
14 QP_Currency_PUB.G_MISS_CURR_LISTS_REC
15 , x_CURR_LISTS_rec OUT NOCOPY /* file.sql.39 change */ QP_Currency_PUB.Curr_Lists_Rec_Type
16 )
17 IS
18 l_index NUMBER := 0;
19 l_src_attr_tbl QP_GLOBALS.NUMBER_Tbl_Type;
20 l_dep_attr_tbl QP_GLOBALS.NUMBER_Tbl_Type;
21 BEGIN
22
23 -- Load out record
24
25 x_CURR_LISTS_rec := p_CURR_LISTS_rec;
26
27 -- If attr_id is missing compare old and new records and for
28 -- every changed attribute clear its dependent fields.
29
30 IF p_attr_id = FND_API.G_MISS_NUM THEN
31
32 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute1,p_old_CURR_LISTS_rec.attribute1)
33 THEN
34 l_index := l_index + 1;
35 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE1;
36 END IF;
37
38 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute10,p_old_CURR_LISTS_rec.attribute10)
39 THEN
40 l_index := l_index + 1;
41 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE10;
42 END IF;
43
44 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute11,p_old_CURR_LISTS_rec.attribute11)
45 THEN
46 l_index := l_index + 1;
47 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE11;
48 END IF;
49
50 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute12,p_old_CURR_LISTS_rec.attribute12)
51 THEN
52 l_index := l_index + 1;
53 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE12;
54 END IF;
55
56 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute13,p_old_CURR_LISTS_rec.attribute13)
57 THEN
58 l_index := l_index + 1;
59 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE13;
60 END IF;
61
62 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute14,p_old_CURR_LISTS_rec.attribute14)
63 THEN
64 l_index := l_index + 1;
65 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE14;
66 END IF;
67
68 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute15,p_old_CURR_LISTS_rec.attribute15)
69 THEN
70 l_index := l_index + 1;
71 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE15;
72 END IF;
73
74 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute2,p_old_CURR_LISTS_rec.attribute2)
75 THEN
76 l_index := l_index + 1;
77 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE2;
78 END IF;
79
80 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute3,p_old_CURR_LISTS_rec.attribute3)
81 THEN
82 l_index := l_index + 1;
83 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE3;
84 END IF;
85
86 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute4,p_old_CURR_LISTS_rec.attribute4)
87 THEN
88 l_index := l_index + 1;
89 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE4;
90 END IF;
91
92 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute5,p_old_CURR_LISTS_rec.attribute5)
93 THEN
94 l_index := l_index + 1;
95 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE5;
96 END IF;
97
98 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute6,p_old_CURR_LISTS_rec.attribute6)
99 THEN
100 l_index := l_index + 1;
101 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE6;
102 END IF;
103
104 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute7,p_old_CURR_LISTS_rec.attribute7)
105 THEN
106 l_index := l_index + 1;
107 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE7;
108 END IF;
109
110 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute8,p_old_CURR_LISTS_rec.attribute8)
111 THEN
112 l_index := l_index + 1;
113 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE8;
114 END IF;
115
116 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute9,p_old_CURR_LISTS_rec.attribute9)
117 THEN
118 l_index := l_index + 1;
119 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE9;
120 END IF;
121
122 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.base_currency_code,p_old_CURR_LISTS_rec.base_currency_code)
123 THEN
124 l_index := l_index + 1;
125 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_BASE_CURRENCY;
126 END IF;
127
128 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.context,p_old_CURR_LISTS_rec.context)
129 THEN
130 l_index := l_index + 1;
131 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_CONTEXT;
132 END IF;
133
134 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.created_by,p_old_CURR_LISTS_rec.created_by)
135 THEN
136 l_index := l_index + 1;
137 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_CREATED_BY;
138 END IF;
139
140 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.creation_date,p_old_CURR_LISTS_rec.creation_date)
141 THEN
142 l_index := l_index + 1;
143 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_CREATION_DATE;
144 END IF;
145
146 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.currency_header_id,p_old_CURR_LISTS_rec.currency_header_id)
147 THEN
148 l_index := l_index + 1;
149 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_CURRENCY_HEADER;
150 END IF;
151
152 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.description,p_old_CURR_LISTS_rec.description)
153 THEN
154 l_index := l_index + 1;
155 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_DESCRIPTION;
156 END IF;
157
158 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.last_updated_by,p_old_CURR_LISTS_rec.last_updated_by)
159 THEN
160 l_index := l_index + 1;
161 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_LAST_UPDATED_BY;
162 END IF;
163
164 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.last_update_date,p_old_CURR_LISTS_rec.last_update_date)
165 THEN
166 l_index := l_index + 1;
167 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_LAST_UPDATE_DATE;
168 END IF;
169
170 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.last_update_login,p_old_CURR_LISTS_rec.last_update_login)
171 THEN
172 l_index := l_index + 1;
173 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_LAST_UPDATE_LOGIN;
174 END IF;
175
176 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.name,p_old_CURR_LISTS_rec.name)
177 THEN
178 l_index := l_index + 1;
179 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_NAME;
180 END IF;
181
182 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.program_application_id,p_old_CURR_LISTS_rec.program_application_id)
183 THEN
184 l_index := l_index + 1;
185 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_PROGRAM_APPLICATION;
186 END IF;
187
188 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.program_id,p_old_CURR_LISTS_rec.program_id)
189 THEN
190 l_index := l_index + 1;
191 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_PROGRAM;
192 END IF;
193
194 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.program_update_date,p_old_CURR_LISTS_rec.program_update_date)
195 THEN
196 l_index := l_index + 1;
197 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_PROGRAM_UPDATE_DATE;
198 END IF;
199
200 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.request_id,p_old_CURR_LISTS_rec.request_id)
201 THEN
202 l_index := l_index + 1;
203 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_REQUEST;
204 END IF;
205
206 -- Added by Sunil Pandey 10/01/01
207 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.base_markup_formula_id,p_old_CURR_LISTS_rec.base_markup_formula_id)
208 THEN
209 l_index := l_index + 1;
210 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_BASE_MARKUP_FORMULA;
211 END IF;
212
213 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.base_markup_operator,p_old_CURR_LISTS_rec.base_markup_operator)
214 THEN
215 l_index := l_index + 1;
216 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_BASE_MARKUP_OPERATOR;
217 END IF;
218
219 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.base_markup_value,p_old_CURR_LISTS_rec.base_markup_value)
220 THEN
221 l_index := l_index + 1;
222 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_BASE_MARKUP_VALUE;
223 END IF;
224
225 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.base_rounding_factor,p_old_CURR_LISTS_rec.base_rounding_factor)
226 THEN
227 l_index := l_index + 1;
228 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_BASE_ROUNDING_FACTOR;
229 END IF;
230 -- Added by Sunil Pandey 10/01/01
231
232
233 /* Commented by Sunil
234 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.row_id,p_old_CURR_LISTS_rec.row_id)
235 THEN
236 l_index := l_index + 1;
237 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ROW;
238 END IF;
239 Commented by Sunil */
240
241 ELSIF p_attr_id = G_ATTRIBUTE1 THEN
242 l_index := l_index + 1;
243 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE1;
244 ELSIF p_attr_id = G_ATTRIBUTE10 THEN
245 l_index := l_index + 1;
246 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE10;
247 ELSIF p_attr_id = G_ATTRIBUTE11 THEN
248 l_index := l_index + 1;
249 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE11;
250 ELSIF p_attr_id = G_ATTRIBUTE12 THEN
251 l_index := l_index + 1;
252 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE12;
253 ELSIF p_attr_id = G_ATTRIBUTE13 THEN
254 l_index := l_index + 1;
255 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE13;
256 ELSIF p_attr_id = G_ATTRIBUTE14 THEN
257 l_index := l_index + 1;
258 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE14;
259 ELSIF p_attr_id = G_ATTRIBUTE15 THEN
260 l_index := l_index + 1;
261 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE15;
262 ELSIF p_attr_id = G_ATTRIBUTE2 THEN
263 l_index := l_index + 1;
264 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE2;
265 ELSIF p_attr_id = G_ATTRIBUTE3 THEN
266 l_index := l_index + 1;
267 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE3;
268 ELSIF p_attr_id = G_ATTRIBUTE4 THEN
269 l_index := l_index + 1;
270 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE4;
271 ELSIF p_attr_id = G_ATTRIBUTE5 THEN
272 l_index := l_index + 1;
273 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE5;
274 ELSIF p_attr_id = G_ATTRIBUTE6 THEN
275 l_index := l_index + 1;
276 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE6;
277 ELSIF p_attr_id = G_ATTRIBUTE7 THEN
278 l_index := l_index + 1;
279 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE7;
280 ELSIF p_attr_id = G_ATTRIBUTE8 THEN
281 l_index := l_index + 1;
282 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE8;
283 ELSIF p_attr_id = G_ATTRIBUTE9 THEN
284 l_index := l_index + 1;
285 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ATTRIBUTE9;
286 ELSIF p_attr_id = G_BASE_CURRENCY THEN
287 l_index := l_index + 1;
288 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_BASE_CURRENCY;
289 ELSIF p_attr_id = G_CONTEXT THEN
290 l_index := l_index + 1;
291 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_CONTEXT;
292 ELSIF p_attr_id = G_CREATED_BY THEN
293 l_index := l_index + 1;
294 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_CREATED_BY;
295 ELSIF p_attr_id = G_CREATION_DATE THEN
296 l_index := l_index + 1;
297 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_CREATION_DATE;
298 ELSIF p_attr_id = G_CURRENCY_HEADER THEN
299 l_index := l_index + 1;
300 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_CURRENCY_HEADER;
301 ELSIF p_attr_id = G_DESCRIPTION THEN
302 l_index := l_index + 1;
303 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_DESCRIPTION;
304 ELSIF p_attr_id = G_LAST_UPDATED_BY THEN
305 l_index := l_index + 1;
306 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_LAST_UPDATED_BY;
307 ELSIF p_attr_id = G_LAST_UPDATE_DATE THEN
308 l_index := l_index + 1;
309 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_LAST_UPDATE_DATE;
310 ELSIF p_attr_id = G_LAST_UPDATE_LOGIN THEN
311 l_index := l_index + 1;
312 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_LAST_UPDATE_LOGIN;
313 ELSIF p_attr_id = G_NAME THEN
314 l_index := l_index + 1;
315 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_NAME;
316 ELSIF p_attr_id = G_PROGRAM_APPLICATION THEN
317 l_index := l_index + 1;
318 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_PROGRAM_APPLICATION;
319 ELSIF p_attr_id = G_PROGRAM THEN
320 l_index := l_index + 1;
321 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_PROGRAM;
322 ELSIF p_attr_id = G_PROGRAM_UPDATE_DATE THEN
323 l_index := l_index + 1;
324 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_PROGRAM_UPDATE_DATE;
325 ELSIF p_attr_id = G_REQUEST THEN
326 l_index := l_index + 1;
327 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_REQUEST;
328 -- Added by Sunil Pandey 10/01/01
329 ELSIF p_attr_id = G_BASE_MARKUP_FORMULA THEN
330 l_index := l_index + 1;
331 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_BASE_MARKUP_FORMULA;
332 ELSIF p_attr_id = G_BASE_MARKUP_OPERATOR THEN
333 l_index := l_index + 1;
334 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_BASE_MARKUP_OPERATOR;
335 ELSIF p_attr_id = G_BASE_MARKUP_VALUE THEN
336 l_index := l_index + 1;
337 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_BASE_MARKUP_VALUE;
338 ELSIF p_attr_id = G_BASE_ROUNDING_FACTOR THEN
339 l_index := l_index + 1;
340 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_BASE_ROUNDING_FACTOR;
341 -- Added by Sunil Pandey 10/01/01
342 ELSIF p_attr_id = G_ROW THEN
343 l_index := l_index + 1;
344 l_src_attr_tbl(l_index) := QP_CURR_LISTS_UTIL.G_ROW;
345 END IF;
346
347 END Clear_Dependent_Attr;
348
349 -- Procedure Apply_Attribute_Changes
350
351 PROCEDURE Apply_Attribute_Changes
352 ( p_CURR_LISTS_rec IN QP_Currency_PUB.Curr_Lists_Rec_Type
353 , p_old_CURR_LISTS_rec IN QP_Currency_PUB.Curr_Lists_Rec_Type :=
354 QP_Currency_PUB.G_MISS_CURR_LISTS_REC
355 , x_CURR_LISTS_rec OUT NOCOPY /* file.sql.39 change */ QP_Currency_PUB.Curr_Lists_Rec_Type
356 )
357 IS
358 l_dummy_c VARCHAR2(1);
359 list_already_attached EXCEPTION;
360
361 BEGIN
362
363 -- Load out record
364
365 x_CURR_LISTS_rec := p_CURR_LISTS_rec;
366
367 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute1,p_old_CURR_LISTS_rec.attribute1)
368 THEN
369 NULL;
370 END IF;
371
372 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute10,p_old_CURR_LISTS_rec.attribute10)
373 THEN
374 NULL;
375 END IF;
376
377 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute11,p_old_CURR_LISTS_rec.attribute11)
378 THEN
379 NULL;
380 END IF;
381
382 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute12,p_old_CURR_LISTS_rec.attribute12)
383 THEN
384 NULL;
385 END IF;
386
387 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute13,p_old_CURR_LISTS_rec.attribute13)
388 THEN
389 NULL;
390 END IF;
391
392 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute14,p_old_CURR_LISTS_rec.attribute14)
393 THEN
394 NULL;
395 END IF;
396
397 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute15,p_old_CURR_LISTS_rec.attribute15)
398 THEN
399 NULL;
400 END IF;
401
402 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute2,p_old_CURR_LISTS_rec.attribute2)
403 THEN
404 NULL;
405 END IF;
406
407 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute3,p_old_CURR_LISTS_rec.attribute3)
408 THEN
409 NULL;
410 END IF;
411
412 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute4,p_old_CURR_LISTS_rec.attribute4)
413 THEN
414 NULL;
415 END IF;
416
417 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute5,p_old_CURR_LISTS_rec.attribute5)
418 THEN
419 NULL;
420 END IF;
421
422 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute6,p_old_CURR_LISTS_rec.attribute6)
423 THEN
424 NULL;
425 END IF;
426
427 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute7,p_old_CURR_LISTS_rec.attribute7)
428 THEN
429 NULL;
430 END IF;
431
432 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute8,p_old_CURR_LISTS_rec.attribute8)
433 THEN
434 NULL;
435 END IF;
436
437 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute9,p_old_CURR_LISTS_rec.attribute9)
438 THEN
439 NULL;
440 END IF;
441
442 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.base_currency_code,p_old_CURR_LISTS_rec.base_currency_code)
443 THEN
444 -- Added by Sunil Pandey 10/01/01
445 -- Allow modification of Base_Currency_code only if the currency_list is not attached to
446 -- any Price List
447 Begin
448 Select 'X'
449 Into l_dummy_c
450 From QP_LIST_HEADERS_B
451 Where currency_header_id = p_old_CURR_LISTS_rec.currency_header_id;
452
453 -- If the currency_list is attached then raise error
454 raise list_already_attached;
455
456 Exception
457 WHEN NO_DATA_FOUND THEN
458 IF p_old_CURR_LISTS_rec.base_currency_code <> FND_API.G_MISS_CHAR
459 THEN
460
461 -- Update details record's to_currency_code with new base_currency_code
462 Update QP_CURRENCY_DETAILS
463 Set to_currency_code = p_CURR_LISTS_rec.base_currency_code
464 Where to_currency_code = p_old_CURR_LISTS_rec.base_currency_code
465 And currency_header_id = p_old_CURR_LISTS_rec.currency_header_id;
466
467 -- Delete detail record having to_currecny = new.base_currency and conversion_type<>NULL
468 Delete from QP_CURRENCY_DETAILS
469 Where to_currency_code = p_CURR_LISTS_rec.base_currency_code
470 And currency_header_id = p_old_CURR_LISTS_rec.currency_header_id
471 -- And conversion_method is NOT NULL;
472 And conversion_type is NOT NULL;
473 ELSE
474 NULL;
475 END IF;
476
477 WHEN TOO_MANY_ROWS THEN
478 -- if the multi-currency list is attached to multiple price lists
479 -- oe_debug_pub.add('ERROR: This Multi-Currency is attached to more than one Price Lists, so Base Currency Code can not be modified');
480
481 FND_MESSAGE.SET_NAME('QP','QP_MCURR_ATTCHD_TO_PRL'); -- CHANGE
482 OE_MSG_PUB.Add;
483
484 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
485 WHEN list_already_attached THEN
486 -- oe_debug_pub.add('ERROR: This Multi-Currency is attached to a Price List, so Base Currency Code can not be modified');
487
488 FND_MESSAGE.SET_NAME('QP','QP_MCURR_ATTCHD_TO_PRL'); -- CHANGE
489 OE_MSG_PUB.Add;
490
491 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
492
493 End;
494 END IF;
495
496 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.context,p_old_CURR_LISTS_rec.context)
497 THEN
498 NULL;
499 END IF;
500
501 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.created_by,p_old_CURR_LISTS_rec.created_by)
502 THEN
503 NULL;
504 END IF;
505
506 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.creation_date,p_old_CURR_LISTS_rec.creation_date)
507 THEN
508 NULL;
509 END IF;
510
511 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.currency_header_id,p_old_CURR_LISTS_rec.currency_header_id)
512 THEN
513 NULL;
514 END IF;
515
516 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.description,p_old_CURR_LISTS_rec.description)
517 THEN
518 NULL;
519 END IF;
520
521 -- Added by Sunil Pandey 10/01/01
522 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.base_rounding_factor,p_old_CURR_LISTS_rec.base_rounding_factor)
523 THEN
524 NULL;
525 update qp_list_headers_b
526 set rounding_factor = p_CURR_LISTS_rec.base_rounding_factor
527 where currency_header_id = p_CURR_LISTS_rec.currency_header_id;
528 END IF;
529
530 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.base_markup_operator,p_old_CURR_LISTS_rec.base_markup_operator)
531 THEN
532 NULL;
533 END IF;
534
535 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.base_markup_value,p_old_CURR_LISTS_rec.base_markup_value)
536 THEN
537 NULL;
538 END IF;
539
540 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.base_markup_formula_id,p_old_CURR_LISTS_rec.base_markup_formula_id)
541 THEN
542 NULL;
543 END IF;
544 -- Added by Sunil Pandey 10/01/01
545
546 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.last_updated_by,p_old_CURR_LISTS_rec.last_updated_by)
547 THEN
548 NULL;
549 END IF;
550
551 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.last_update_date,p_old_CURR_LISTS_rec.last_update_date)
552 THEN
553 NULL;
554 END IF;
555
556 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.last_update_login,p_old_CURR_LISTS_rec.last_update_login)
557 THEN
558 NULL;
559 END IF;
560
561 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.name,p_old_CURR_LISTS_rec.name)
562 THEN
563 NULL;
564 END IF;
565
566 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.program_application_id,p_old_CURR_LISTS_rec.program_application_id)
567 THEN
568 NULL;
569 END IF;
570
571 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.program_id,p_old_CURR_LISTS_rec.program_id)
572 THEN
573 NULL;
574 END IF;
575
576 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.program_update_date,p_old_CURR_LISTS_rec.program_update_date)
577 THEN
578 NULL;
579 END IF;
580
581 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.request_id,p_old_CURR_LISTS_rec.request_id)
582 THEN
583 NULL;
584 END IF;
585
586 /* Commented by Sunil
587 IF NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.row_id,p_old_CURR_LISTS_rec.row_id)
588 THEN
589 NULL;
590 END IF;
591 Commented by Sunil */
592
593 END Apply_Attribute_Changes;
594
595 -- Function Complete_Record
596
597 FUNCTION Complete_Record
598 ( p_CURR_LISTS_rec IN QP_Currency_PUB.Curr_Lists_Rec_Type
599 , p_old_CURR_LISTS_rec IN QP_Currency_PUB.Curr_Lists_Rec_Type
600 ) RETURN QP_Currency_PUB.Curr_Lists_Rec_Type
601 IS
602 l_CURR_LISTS_rec QP_Currency_PUB.Curr_Lists_Rec_Type := p_CURR_LISTS_rec;
603 BEGIN
604
605 IF l_CURR_LISTS_rec.attribute1 = FND_API.G_MISS_CHAR THEN
606 l_CURR_LISTS_rec.attribute1 := p_old_CURR_LISTS_rec.attribute1;
607 END IF;
608
609 IF l_CURR_LISTS_rec.attribute10 = FND_API.G_MISS_CHAR THEN
610 l_CURR_LISTS_rec.attribute10 := p_old_CURR_LISTS_rec.attribute10;
611 END IF;
612
613 IF l_CURR_LISTS_rec.attribute11 = FND_API.G_MISS_CHAR THEN
614 l_CURR_LISTS_rec.attribute11 := p_old_CURR_LISTS_rec.attribute11;
615 END IF;
616
617 IF l_CURR_LISTS_rec.attribute12 = FND_API.G_MISS_CHAR THEN
618 l_CURR_LISTS_rec.attribute12 := p_old_CURR_LISTS_rec.attribute12;
619 END IF;
620
621 IF l_CURR_LISTS_rec.attribute13 = FND_API.G_MISS_CHAR THEN
622 l_CURR_LISTS_rec.attribute13 := p_old_CURR_LISTS_rec.attribute13;
623 END IF;
624
625 IF l_CURR_LISTS_rec.attribute14 = FND_API.G_MISS_CHAR THEN
626 l_CURR_LISTS_rec.attribute14 := p_old_CURR_LISTS_rec.attribute14;
627 END IF;
628
629 IF l_CURR_LISTS_rec.attribute15 = FND_API.G_MISS_CHAR THEN
630 l_CURR_LISTS_rec.attribute15 := p_old_CURR_LISTS_rec.attribute15;
631 END IF;
632
633 IF l_CURR_LISTS_rec.attribute2 = FND_API.G_MISS_CHAR THEN
634 l_CURR_LISTS_rec.attribute2 := p_old_CURR_LISTS_rec.attribute2;
635 END IF;
636
637 IF l_CURR_LISTS_rec.attribute3 = FND_API.G_MISS_CHAR THEN
638 l_CURR_LISTS_rec.attribute3 := p_old_CURR_LISTS_rec.attribute3;
639 END IF;
640
641 IF l_CURR_LISTS_rec.attribute4 = FND_API.G_MISS_CHAR THEN
642 l_CURR_LISTS_rec.attribute4 := p_old_CURR_LISTS_rec.attribute4;
643 END IF;
644
645 IF l_CURR_LISTS_rec.attribute5 = FND_API.G_MISS_CHAR THEN
646 l_CURR_LISTS_rec.attribute5 := p_old_CURR_LISTS_rec.attribute5;
647 END IF;
648
649 IF l_CURR_LISTS_rec.attribute6 = FND_API.G_MISS_CHAR THEN
650 l_CURR_LISTS_rec.attribute6 := p_old_CURR_LISTS_rec.attribute6;
651 END IF;
652
653 IF l_CURR_LISTS_rec.attribute7 = FND_API.G_MISS_CHAR THEN
654 l_CURR_LISTS_rec.attribute7 := p_old_CURR_LISTS_rec.attribute7;
655 END IF;
656
657 IF l_CURR_LISTS_rec.attribute8 = FND_API.G_MISS_CHAR THEN
658 l_CURR_LISTS_rec.attribute8 := p_old_CURR_LISTS_rec.attribute8;
659 END IF;
660
661 IF l_CURR_LISTS_rec.attribute9 = FND_API.G_MISS_CHAR THEN
662 l_CURR_LISTS_rec.attribute9 := p_old_CURR_LISTS_rec.attribute9;
663 END IF;
664
665 IF l_CURR_LISTS_rec.base_currency_code = FND_API.G_MISS_CHAR THEN
666 l_CURR_LISTS_rec.base_currency_code := p_old_CURR_LISTS_rec.base_currency_code;
667 END IF;
668
669 IF l_CURR_LISTS_rec.context = FND_API.G_MISS_CHAR THEN
670 l_CURR_LISTS_rec.context := p_old_CURR_LISTS_rec.context;
671 END IF;
672
673 IF l_CURR_LISTS_rec.created_by = FND_API.G_MISS_NUM THEN
674 l_CURR_LISTS_rec.created_by := p_old_CURR_LISTS_rec.created_by;
675 END IF;
676
677 IF l_CURR_LISTS_rec.creation_date = FND_API.G_MISS_DATE THEN
678 l_CURR_LISTS_rec.creation_date := p_old_CURR_LISTS_rec.creation_date;
679 END IF;
680
681 IF l_CURR_LISTS_rec.currency_header_id = FND_API.G_MISS_NUM THEN
682 l_CURR_LISTS_rec.currency_header_id := p_old_CURR_LISTS_rec.currency_header_id;
683 END IF;
684
685 IF l_CURR_LISTS_rec.description = FND_API.G_MISS_CHAR THEN
686 l_CURR_LISTS_rec.description := p_old_CURR_LISTS_rec.description;
687 END IF;
688
689 -- Added by Sunil Pandey 10/01/01
690 IF l_CURR_LISTS_rec.base_rounding_factor = FND_API.G_MISS_NUM THEN
691 l_CURR_LISTS_rec.base_rounding_factor := p_old_CURR_LISTS_rec.base_rounding_factor;
692 END IF;
693
694 IF l_CURR_LISTS_rec.base_markup_formula_id = FND_API.G_MISS_NUM THEN
695 l_CURR_LISTS_rec.base_markup_formula_id := p_old_CURR_LISTS_rec.base_markup_formula_id;
696 END IF;
697
698 IF l_CURR_LISTS_rec.base_markup_operator = FND_API.G_MISS_CHAR THEN
699 l_CURR_LISTS_rec.base_markup_operator := p_old_CURR_LISTS_rec.base_markup_operator;
700 END IF;
701
702 IF l_CURR_LISTS_rec.base_markup_value = FND_API.G_MISS_NUM THEN
703 l_CURR_LISTS_rec.base_markup_value := p_old_CURR_LISTS_rec.base_markup_value;
704 END IF;
705 -- Added by Sunil Pandey 10/01/01
706
707 IF l_CURR_LISTS_rec.last_updated_by = FND_API.G_MISS_NUM THEN
708 l_CURR_LISTS_rec.last_updated_by := p_old_CURR_LISTS_rec.last_updated_by;
709 END IF;
710
711 IF l_CURR_LISTS_rec.last_update_date = FND_API.G_MISS_DATE THEN
712 l_CURR_LISTS_rec.last_update_date := p_old_CURR_LISTS_rec.last_update_date;
713 END IF;
714
715 IF l_CURR_LISTS_rec.last_update_login = FND_API.G_MISS_NUM THEN
716 l_CURR_LISTS_rec.last_update_login := p_old_CURR_LISTS_rec.last_update_login;
717 END IF;
718
719 IF l_CURR_LISTS_rec.name = FND_API.G_MISS_CHAR THEN
720 l_CURR_LISTS_rec.name := p_old_CURR_LISTS_rec.name;
721 END IF;
722
723 IF l_CURR_LISTS_rec.program_application_id = FND_API.G_MISS_NUM THEN
724 l_CURR_LISTS_rec.program_application_id := p_old_CURR_LISTS_rec.program_application_id;
725 END IF;
726
727 IF l_CURR_LISTS_rec.program_id = FND_API.G_MISS_NUM THEN
728 l_CURR_LISTS_rec.program_id := p_old_CURR_LISTS_rec.program_id;
729 END IF;
730
731 IF l_CURR_LISTS_rec.program_update_date = FND_API.G_MISS_DATE THEN
732 l_CURR_LISTS_rec.program_update_date := p_old_CURR_LISTS_rec.program_update_date;
733 END IF;
734
735 IF l_CURR_LISTS_rec.request_id = FND_API.G_MISS_NUM THEN
736 l_CURR_LISTS_rec.request_id := p_old_CURR_LISTS_rec.request_id;
737 END IF;
738
739 /* Commented by Sunil
740 IF l_CURR_LISTS_rec.row_id = FND_API.G_MISS_NUM THEN
741 l_CURR_LISTS_rec.row_id := p_old_CURR_LISTS_rec.row_id;
742 END IF;
743 Commented by Sunil */
744
745 RETURN l_CURR_LISTS_rec;
746
747 END Complete_Record;
748
749 -- Function Convert_Miss_To_Null
750
751 FUNCTION Convert_Miss_To_Null
752 ( p_CURR_LISTS_rec IN QP_Currency_PUB.Curr_Lists_Rec_Type
753 ) RETURN QP_Currency_PUB.Curr_Lists_Rec_Type
754 IS
755 l_CURR_LISTS_rec QP_Currency_PUB.Curr_Lists_Rec_Type := p_CURR_LISTS_rec;
756 BEGIN
757
758 IF l_CURR_LISTS_rec.attribute1 = FND_API.G_MISS_CHAR THEN
759 l_CURR_LISTS_rec.attribute1 := NULL;
760 END IF;
761
762 IF l_CURR_LISTS_rec.attribute10 = FND_API.G_MISS_CHAR THEN
763 l_CURR_LISTS_rec.attribute10 := NULL;
764 END IF;
765
766 IF l_CURR_LISTS_rec.attribute11 = FND_API.G_MISS_CHAR THEN
767 l_CURR_LISTS_rec.attribute11 := NULL;
768 END IF;
769
770 IF l_CURR_LISTS_rec.attribute12 = FND_API.G_MISS_CHAR THEN
771 l_CURR_LISTS_rec.attribute12 := NULL;
772 END IF;
773
774 IF l_CURR_LISTS_rec.attribute13 = FND_API.G_MISS_CHAR THEN
775 l_CURR_LISTS_rec.attribute13 := NULL;
776 END IF;
777
778 IF l_CURR_LISTS_rec.attribute14 = FND_API.G_MISS_CHAR THEN
779 l_CURR_LISTS_rec.attribute14 := NULL;
780 END IF;
781
782 IF l_CURR_LISTS_rec.attribute15 = FND_API.G_MISS_CHAR THEN
783 l_CURR_LISTS_rec.attribute15 := NULL;
784 END IF;
785
786 IF l_CURR_LISTS_rec.attribute2 = FND_API.G_MISS_CHAR THEN
787 l_CURR_LISTS_rec.attribute2 := NULL;
788 END IF;
789
790 IF l_CURR_LISTS_rec.attribute3 = FND_API.G_MISS_CHAR THEN
791 l_CURR_LISTS_rec.attribute3 := NULL;
792 END IF;
793
794 IF l_CURR_LISTS_rec.attribute4 = FND_API.G_MISS_CHAR THEN
795 l_CURR_LISTS_rec.attribute4 := NULL;
796 END IF;
797
798 IF l_CURR_LISTS_rec.attribute5 = FND_API.G_MISS_CHAR THEN
799 l_CURR_LISTS_rec.attribute5 := NULL;
800 END IF;
801
802 IF l_CURR_LISTS_rec.attribute6 = FND_API.G_MISS_CHAR THEN
803 l_CURR_LISTS_rec.attribute6 := NULL;
804 END IF;
805
806 IF l_CURR_LISTS_rec.attribute7 = FND_API.G_MISS_CHAR THEN
807 l_CURR_LISTS_rec.attribute7 := NULL;
808 END IF;
809
810 IF l_CURR_LISTS_rec.attribute8 = FND_API.G_MISS_CHAR THEN
811 l_CURR_LISTS_rec.attribute8 := NULL;
812 END IF;
813
814 IF l_CURR_LISTS_rec.attribute9 = FND_API.G_MISS_CHAR THEN
815 l_CURR_LISTS_rec.attribute9 := NULL;
816 END IF;
817
818 IF l_CURR_LISTS_rec.base_currency_code = FND_API.G_MISS_CHAR THEN
819 l_CURR_LISTS_rec.base_currency_code := NULL;
820 END IF;
821
822 IF l_CURR_LISTS_rec.context = FND_API.G_MISS_CHAR THEN
823 l_CURR_LISTS_rec.context := NULL;
824 END IF;
825
826 IF l_CURR_LISTS_rec.created_by = FND_API.G_MISS_NUM THEN
827 l_CURR_LISTS_rec.created_by := NULL;
828 END IF;
829
830 IF l_CURR_LISTS_rec.creation_date = FND_API.G_MISS_DATE THEN
831 l_CURR_LISTS_rec.creation_date := NULL;
832 END IF;
833
834 IF l_CURR_LISTS_rec.currency_header_id = FND_API.G_MISS_NUM THEN
835 l_CURR_LISTS_rec.currency_header_id := NULL;
836 END IF;
837
838 IF l_CURR_LISTS_rec.description = FND_API.G_MISS_CHAR THEN
839 l_CURR_LISTS_rec.description := NULL;
840 END IF;
841
842 IF l_CURR_LISTS_rec.last_updated_by = FND_API.G_MISS_NUM THEN
843 l_CURR_LISTS_rec.last_updated_by := NULL;
844 END IF;
845
846 IF l_CURR_LISTS_rec.last_update_date = FND_API.G_MISS_DATE THEN
847 l_CURR_LISTS_rec.last_update_date := NULL;
848 END IF;
849
850 IF l_CURR_LISTS_rec.last_update_login = FND_API.G_MISS_NUM THEN
851 l_CURR_LISTS_rec.last_update_login := NULL;
852 END IF;
853
854 IF l_CURR_LISTS_rec.name = FND_API.G_MISS_CHAR THEN
855 l_CURR_LISTS_rec.name := NULL;
856 END IF;
857
858 IF l_CURR_LISTS_rec.program_application_id = FND_API.G_MISS_NUM THEN
859 l_CURR_LISTS_rec.program_application_id := NULL;
860 END IF;
861
862 IF l_CURR_LISTS_rec.program_id = FND_API.G_MISS_NUM THEN
863 l_CURR_LISTS_rec.program_id := NULL;
864 END IF;
865
866 IF l_CURR_LISTS_rec.program_update_date = FND_API.G_MISS_DATE THEN
867 l_CURR_LISTS_rec.program_update_date := NULL;
868 END IF;
869
870 IF l_CURR_LISTS_rec.request_id = FND_API.G_MISS_NUM THEN
871 l_CURR_LISTS_rec.request_id := NULL;
872 END IF;
873
874 -- Added by Sunil Pandey 10/01/01
875 IF l_CURR_LISTS_rec.base_markup_formula_id = FND_API.G_MISS_NUM THEN
876 l_CURR_LISTS_rec.base_markup_formula_id := NULL;
877 END IF;
878
879 IF l_CURR_LISTS_rec.base_markup_operator = FND_API.G_MISS_CHAR THEN
880 l_CURR_LISTS_rec.base_markup_operator := NULL;
881 END IF;
882
883 IF l_CURR_LISTS_rec.base_markup_value = FND_API.G_MISS_NUM THEN
884 l_CURR_LISTS_rec.base_markup_value := NULL;
885 END IF;
886
887 IF l_CURR_LISTS_rec.base_rounding_factor = FND_API.G_MISS_NUM THEN
888 l_CURR_LISTS_rec.base_rounding_factor := NULL;
889 END IF;
890 -- Added by Sunil Pandey 10/01/01
891
892 /* Commented by Sunil
893 IF l_CURR_LISTS_rec.row_id = FND_API.G_MISS_NUM THEN
894 l_CURR_LISTS_rec.row_id := NULL;
895 END IF;
896 Commented by Sunil */
897
898 RETURN l_CURR_LISTS_rec;
899
900 END Convert_Miss_To_Null;
901
902 -- Procedure Update_Row
903
904 PROCEDURE Update_Row
905 ( p_CURR_LISTS_rec IN QP_Currency_PUB.Curr_Lists_Rec_Type
906 )
907 IS
908 BEGIN
909
910 -- oe_debug_pub.add('UPDATE_ROW of Header');
911 -- oe_debug_pub.add('Header_id=' || p_CURR_LISTS_rec.currency_header_id);
912 -- oe_debug_pub.add('Name=' || p_CURR_LISTS_rec.name);
913 -- oe_debug_pub.add('Description=' || p_CURR_LISTS_rec.description);
914 -- oe_debug_pub.add('Base Currency=' || p_CURR_LISTS_rec.base_currency_code);
915 -- oe_debug_pub.add('Base base_rounding_factor=' || p_CURR_LISTS_rec.base_rounding_factor);
916 -- oe_debug_pub.add('Base base_markup_value=' || p_CURR_LISTS_rec.base_markup_value);
917 -- oe_debug_pub.add('Base base_markup_operator=' || p_CURR_LISTS_rec.base_markup_operator);
918 -- oe_debug_pub.add('Base base_markup_formula=' || p_CURR_LISTS_rec.base_markup_formula_id);
919
920
921 UPDATE QP_CURRENCY_LISTS_B
922 SET ATTRIBUTE1 = p_CURR_LISTS_rec.attribute1
923 , ATTRIBUTE10 = p_CURR_LISTS_rec.attribute10
924 , ATTRIBUTE11 = p_CURR_LISTS_rec.attribute11
925 , ATTRIBUTE12 = p_CURR_LISTS_rec.attribute12
926 , ATTRIBUTE13 = p_CURR_LISTS_rec.attribute13
927 , ATTRIBUTE14 = p_CURR_LISTS_rec.attribute14
928 , ATTRIBUTE15 = p_CURR_LISTS_rec.attribute15
929 , ATTRIBUTE2 = p_CURR_LISTS_rec.attribute2
930 , ATTRIBUTE3 = p_CURR_LISTS_rec.attribute3
931 , ATTRIBUTE4 = p_CURR_LISTS_rec.attribute4
932 , ATTRIBUTE5 = p_CURR_LISTS_rec.attribute5
933 , ATTRIBUTE6 = p_CURR_LISTS_rec.attribute6
934 , ATTRIBUTE7 = p_CURR_LISTS_rec.attribute7
935 , ATTRIBUTE8 = p_CURR_LISTS_rec.attribute8
936 , ATTRIBUTE9 = p_CURR_LISTS_rec.attribute9
937 , BASE_CURRENCY_CODE = p_CURR_LISTS_rec.base_currency_code
938 , CONTEXT = p_CURR_LISTS_rec.context
939 , CREATED_BY = p_CURR_LISTS_rec.created_by
940 , CREATION_DATE = p_CURR_LISTS_rec.creation_date
941 , CURRENCY_HEADER_ID = p_CURR_LISTS_rec.currency_header_id
942 , LAST_UPDATED_BY = p_CURR_LISTS_rec.last_updated_by
943 , LAST_UPDATE_DATE = p_CURR_LISTS_rec.last_update_date
944 , LAST_UPDATE_LOGIN = p_CURR_LISTS_rec.last_update_login
945 , PROGRAM_APPLICATION_ID = p_CURR_LISTS_rec.program_application_id
946 , PROGRAM_ID = p_CURR_LISTS_rec.program_id
947 , PROGRAM_UPDATE_DATE = p_CURR_LISTS_rec.program_update_date
948 , REQUEST_ID = p_CURR_LISTS_rec.request_id
949 WHERE CURRENCY_HEADER_ID = p_CURR_LISTS_rec.currency_header_id
950 ;
951
952 -- oe_debug_pub.add('After Update of B');
953
954 -- Added by Sunil
955 update QP_CURRENCY_LISTS_TL set
956 NAME = p_CURR_LISTS_rec.NAME
957 , DESCRIPTION = p_CURR_LISTS_rec.DESCRIPTION
958 , LAST_UPDATE_DATE = p_CURR_LISTS_rec.LAST_UPDATE_DATE
959 , LAST_UPDATED_BY = p_CURR_LISTS_rec.LAST_UPDATED_BY
960 , LAST_UPDATE_LOGIN = p_CURR_LISTS_rec.LAST_UPDATE_LOGIN
961 , SOURCE_LANG = userenv('LANG')
962 where CURRENCY_HEADER_ID = p_CURR_LISTS_rec.CURRENCY_HEADER_ID
963 and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
964
965 -- oe_debug_pub.add('After Update of TL');
966
967 -- Added by Sunil Pandey 10/01/01
968 update QP_CURRENCY_DETAILS set
969 selling_rounding_factor = p_CURR_LISTS_rec.base_rounding_factor
970 , markup_operator = p_CURR_LISTS_rec.base_markup_operator
971 , markup_value = p_CURR_LISTS_rec.base_markup_value
972 , markup_formula_id = p_CURR_LISTS_rec.base_markup_formula_id
973 , LAST_UPDATE_DATE = p_CURR_LISTS_rec.LAST_UPDATE_DATE
974 , LAST_UPDATED_BY = p_CURR_LISTS_rec.LAST_UPDATED_BY
975 , LAST_UPDATE_LOGIN = p_CURR_LISTS_rec.last_update_login
976 where CURRENCY_HEADER_ID = p_CURR_LISTS_rec.CURRENCY_HEADER_ID
977 and TO_CURRENCY_CODE = p_CURR_LISTS_rec.BASE_CURRENCY_CODE;
978
979 -- oe_debug_pub.add('After Update of Details');
980
981
982 EXCEPTION
983
984 WHEN OTHERS THEN
985
986 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
987 THEN
988 OE_MSG_PUB.Add_Exc_Msg
989 ( G_PKG_NAME
990 , 'Update_Row'
991 );
992 END IF;
993
994 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
995
996 END Update_Row;
997
998 -- Procedure Insert_Row
999
1000 PROCEDURE Insert_Row
1001 ( p_CURR_LISTS_rec IN QP_Currency_PUB.Curr_Lists_Rec_Type
1002 )
1003 IS
1004 BEGIN
1005 -- oe_debug_pub.add('INSERT_ROW of Header');
1006 -- oe_debug_pub.add('Header_id=' || p_CURR_LISTS_rec.currency_header_id);
1007 -- oe_debug_pub.add('Name=' || p_CURR_LISTS_rec.name);
1008 -- oe_debug_pub.add('Description=' || p_CURR_LISTS_rec.description);
1009 -- oe_debug_pub.add('Base Currency=' || p_CURR_LISTS_rec.base_currency_code);
1010 -- oe_debug_pub.add('Base base_rounding_factor=' || p_CURR_LISTS_rec.base_rounding_factor);
1011 -- oe_debug_pub.add('Base base_markup_value=' || p_CURR_LISTS_rec.base_markup_value);
1012 -- oe_debug_pub.add('Base base_markup_operator=' || p_CURR_LISTS_rec.base_markup_operator);
1013 -- oe_debug_pub.add('Base base_markup_formula=' || p_CURR_LISTS_rec.base_markup_formula_id);
1014
1015 -- Added by Sunil Pandey 10/01/01
1016 Begin
1017 INSERT INTO QP_CURRENCY_DETAILS
1018 ( ATTRIBUTE1
1019 , ATTRIBUTE10
1020 , ATTRIBUTE11
1021 , ATTRIBUTE12
1022 , ATTRIBUTE13
1023 , ATTRIBUTE14
1024 , ATTRIBUTE15
1025 , ATTRIBUTE2
1026 , ATTRIBUTE3
1027 , ATTRIBUTE4
1028 , ATTRIBUTE5
1029 , ATTRIBUTE6
1030 , ATTRIBUTE7
1031 , ATTRIBUTE8
1032 , ATTRIBUTE9
1033 , CONTEXT
1034 , CONVERSION_DATE
1035 , CONVERSION_DATE_TYPE
1036 -- , CONVERSION_METHOD
1037 , CONVERSION_TYPE
1038 , CREATED_BY
1039 , CREATION_DATE
1040 , CURRENCY_DETAIL_ID
1041 , CURRENCY_HEADER_ID
1042 , END_DATE_ACTIVE
1043 , FIXED_VALUE
1044 , LAST_UPDATED_BY
1045 , LAST_UPDATE_DATE
1046 , LAST_UPDATE_LOGIN
1047 , MARKUP_FORMULA_ID
1048 , MARKUP_OPERATOR
1049 , MARKUP_VALUE
1050 , PRICE_FORMULA_ID
1051 , PROGRAM_APPLICATION_ID
1052 , PROGRAM_ID
1053 , PROGRAM_UPDATE_DATE
1054 , REQUEST_ID
1055 , SELLING_ROUNDING_FACTOR
1056 , START_DATE_ACTIVE
1057 , TO_CURRENCY_CODE
1058 , CURR_ATTRIBUTE_TYPE
1059 , CURR_ATTRIBUTE_CONTEXT
1060 , CURR_ATTRIBUTE
1061 , CURR_ATTRIBUTE_VALUE
1062 , PRECEDENCE
1063 )
1064 VALUES
1065 ( NULL -- p_CURR_DETAILS_rec.attribute1
1066 , NULL -- p_CURR_DETAILS_rec.attribute10
1067 , NULL -- p_CURR_DETAILS_rec.attribute11
1068 , NULL -- p_CURR_DETAILS_rec.attribute12
1069 , NULL -- p_CURR_DETAILS_rec.attribute13
1070 , NULL -- p_CURR_DETAILS_rec.attribute14
1071 , NULL -- p_CURR_DETAILS_rec.attribute15
1072 , NULL -- p_CURR_DETAILS_rec.attribute2
1073 , NULL -- p_CURR_DETAILS_rec.attribute3
1074 , NULL -- p_CURR_DETAILS_rec.attribute4
1075 , NULL -- p_CURR_DETAILS_rec.attribute5
1076 , NULL -- p_CURR_DETAILS_rec.attribute6
1077 , NULL -- p_CURR_DETAILS_rec.attribute7
1078 , NULL -- p_CURR_DETAILS_rec.attribute8
1079 , NULL -- p_CURR_DETAILS_rec.attribute9
1080 , NULL -- p_CURR_DETAILS_rec.context
1081 , NULL -- p_CURR_DETAILS_rec.conversion_date
1082 , NULL -- p_CURR_DETAILS_rec.conversion_date_type
1083 -- , NULL -- p_CURR_DETAILS_rec.conversion_method
1084 , NULL -- p_CURR_DETAILS_rec.conversion_type
1085 , p_CURR_LISTS_rec.created_by
1086 , p_CURR_LISTS_rec.creation_date
1087 , QP_CURRENCY_DETAILS_S.nextval
1088 , p_CURR_LISTS_rec.currency_header_id
1089 , NULL -- p_CURR_DETAILS_rec.end_date_active
1090 , NULL -- p_CURR_DETAILS_rec.fixed_value
1091 , p_CURR_LISTS_rec.last_updated_by
1092 , p_CURR_LISTS_rec.last_update_date
1093 , p_CURR_LISTS_rec.last_update_login
1094 , p_CURR_LISTS_rec.base_markup_formula_id
1095 , p_CURR_LISTS_rec.base_markup_operator
1096 , p_CURR_LISTS_rec.base_markup_value
1097 , NULL -- p_CURR_DETAILS_rec.price_formula_id
1098 , NULL -- p_CURR_DETAILS_rec.program_application_id
1099 , NULL -- p_CURR_DETAILS_rec.program_id
1100 , NULL -- p_CURR_DETAILS_rec.program_update_date
1101 , NULL -- p_CURR_DETAILS_rec.request_id
1102 , p_CURR_LISTS_rec.base_rounding_factor
1103 , NULL -- p_CURR_DETAILS_rec.start_date_active
1104 , p_CURR_LISTS_rec.base_currency_code
1105 , NULL -- p_CURR_DETAILS_rec.curr_attribute_type
1106 , NULL -- p_CURR_DETAILS_rec.curr_attribute_context
1107 , NULL -- p_CURR_DETAILS_rec.curr_attribute
1108 , NULL -- p_CURR_DETAILS_rec.curr_attribute_value
1109 , NULL -- p_CURR_DETAILS_rec.precedence
1110 );
1111
1112 EXCEPTION
1113
1114 WHEN OTHERS THEN
1115
1116 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1117 THEN
1118 OE_MSG_PUB.Add_Exc_Msg
1119 ( G_PKG_NAME
1120 , 'Insert_Row'
1121 );
1122 END IF;
1123
1124 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1125 End;
1126 -- Added by Sunil Pandey 10/01/01
1127
1128 -- Added by Sunil
1129 BEGIN
1130 Insert into QP_CURRENCY_LISTS_TL
1131 ( CURRENCY_HEADER_ID
1132 , NAME
1133 , DESCRIPTION
1134 , CREATION_DATE
1135 , CREATED_BY
1136 , LAST_UPDATE_DATE
1137 , LAST_UPDATED_BY
1138 , LAST_UPDATE_LOGIN
1139 , LANGUAGE
1140 , SOURCE_LANG
1141 ) select
1142 p_CURR_LISTS_rec.CURRENCY_HEADER_ID
1143 , p_CURR_LISTS_rec.NAME
1144 , p_CURR_LISTS_rec.DESCRIPTION
1145 , p_CURR_LISTS_rec.CREATION_DATE
1146 , p_CURR_LISTS_rec.CREATED_BY
1147 , p_CURR_LISTS_rec.LAST_UPDATE_DATE
1148 , p_CURR_LISTS_rec.LAST_UPDATED_BY
1149 , p_CURR_LISTS_rec.LAST_UPDATE_LOGIN
1150 , L.LANGUAGE_CODE
1151 , userenv('LANG')
1152 from FND_LANGUAGES L
1153 where L.INSTALLED_FLAG in ('I','B')
1154 and not exists
1155 (select NULL from QP_CURRENCY_LISTS_TL T
1156 where T.CURRENCY_HEADER_ID = p_CURR_LISTS_rec.CURRENCY_HEADER_ID
1157 and T.LANGUAGE = L.LANGUAGE_CODE);
1158
1159 Exception
1160 WHEN DUP_VAL_ON_INDEX THEN
1161
1162 FND_MESSAGE.SET_NAME('QP','QP_DUPLICATE_MULTICURR');
1163 OE_MSG_PUB.Add;
1164 RAISE FND_API.G_EXC_ERROR;
1165
1166 WHEN OTHERS THEN
1167
1168 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1169 THEN
1170 OE_MSG_PUB.Add_Exc_Msg
1171 ( G_PKG_NAME
1172 , 'Insert_Row'
1173 );
1174 END IF;
1175
1176 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1177
1178 End;
1179
1180 INSERT INTO QP_CURRENCY_LISTS_B
1181 ( ATTRIBUTE1
1182 , ATTRIBUTE10
1183 , ATTRIBUTE11
1184 , ATTRIBUTE12
1185 , ATTRIBUTE13
1186 , ATTRIBUTE14
1187 , ATTRIBUTE15
1188 , ATTRIBUTE2
1189 , ATTRIBUTE3
1190 , ATTRIBUTE4
1191 , ATTRIBUTE5
1192 , ATTRIBUTE6
1193 , ATTRIBUTE7
1194 , ATTRIBUTE8
1195 , ATTRIBUTE9
1196 , BASE_CURRENCY_CODE
1197 , CONTEXT
1198 , CREATED_BY
1199 , CREATION_DATE
1200 , CURRENCY_HEADER_ID
1201 , LAST_UPDATED_BY
1202 , LAST_UPDATE_DATE
1203 , LAST_UPDATE_LOGIN
1204 , PROGRAM_APPLICATION_ID
1205 , PROGRAM_ID
1206 , PROGRAM_UPDATE_DATE
1207 , REQUEST_ID
1208 )
1209 VALUES
1210 ( p_CURR_LISTS_rec.attribute1
1211 , p_CURR_LISTS_rec.attribute10
1212 , p_CURR_LISTS_rec.attribute11
1213 , p_CURR_LISTS_rec.attribute12
1214 , p_CURR_LISTS_rec.attribute13
1215 , p_CURR_LISTS_rec.attribute14
1216 , p_CURR_LISTS_rec.attribute15
1217 , p_CURR_LISTS_rec.attribute2
1218 , p_CURR_LISTS_rec.attribute3
1219 , p_CURR_LISTS_rec.attribute4
1220 , p_CURR_LISTS_rec.attribute5
1221 , p_CURR_LISTS_rec.attribute6
1222 , p_CURR_LISTS_rec.attribute7
1223 , p_CURR_LISTS_rec.attribute8
1224 , p_CURR_LISTS_rec.attribute9
1225 , p_CURR_LISTS_rec.base_currency_code
1226 , p_CURR_LISTS_rec.context
1227 , p_CURR_LISTS_rec.created_by
1228 , p_CURR_LISTS_rec.creation_date
1229 , p_CURR_LISTS_rec.currency_header_id
1230 , p_CURR_LISTS_rec.last_updated_by
1231 , p_CURR_LISTS_rec.last_update_date
1232 , p_CURR_LISTS_rec.last_update_login
1233 , p_CURR_LISTS_rec.program_application_id
1234 , p_CURR_LISTS_rec.program_id
1235 , p_CURR_LISTS_rec.program_update_date
1236 , p_CURR_LISTS_rec.request_id
1237 );
1238
1239 EXCEPTION
1240 WHEN FND_API.G_EXC_ERROR THEN
1241 raise;
1242
1243 WHEN OTHERS THEN
1244
1245 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1246 THEN
1247 OE_MSG_PUB.Add_Exc_Msg
1248 ( G_PKG_NAME
1249 , 'Insert_Row'
1250 );
1251 END IF;
1252
1253 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1254
1255 END Insert_Row;
1256
1257 -- Procedure Delete_Row
1258
1259 PROCEDURE Delete_Row
1260 ( p_currency_header_id IN NUMBER
1261 )
1262 IS
1263 BEGIN
1264
1265 DELETE FROM QP_CURRENCY_LISTS_B
1266 WHERE CURRENCY_HEADER_ID = p_currency_header_id
1267 ;
1268
1269 -- Added by Sunil
1270 DELETE FROM QP_CURRENCY_LISTS_TL
1271 WHERE CURRENCY_HEADER_ID = p_currency_header_id;
1272
1273 EXCEPTION
1274
1275 WHEN OTHERS THEN
1276
1277 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1278 THEN
1279 OE_MSG_PUB.Add_Exc_Msg
1280 ( G_PKG_NAME
1281 , 'Delete_Row'
1282 );
1283 END IF;
1284
1285 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1286
1287 END Delete_Row;
1288
1289 -- Function Query_Row
1290
1291 FUNCTION Query_Row
1292 ( p_currency_header_id IN NUMBER
1293 ) RETURN QP_Currency_PUB.Curr_Lists_Rec_Type
1294 IS
1295 l_CURR_LISTS_rec QP_Currency_PUB.Curr_Lists_Rec_Type;
1296 BEGIN
1297
1298 SELECT ATTRIBUTE1
1299 , ATTRIBUTE10
1300 , ATTRIBUTE11
1301 , ATTRIBUTE12
1302 , ATTRIBUTE13
1303 , ATTRIBUTE14
1304 , ATTRIBUTE15
1305 , ATTRIBUTE2
1306 , ATTRIBUTE3
1307 , ATTRIBUTE4
1308 , ATTRIBUTE5
1309 , ATTRIBUTE6
1310 , ATTRIBUTE7
1311 , ATTRIBUTE8
1312 , ATTRIBUTE9
1313 , BASE_CURRENCY_CODE
1314 , CONTEXT
1315 , CREATED_BY
1316 , CREATION_DATE
1317 , CURRENCY_HEADER_ID
1318 --, DESCRIPTION
1319 , LAST_UPDATED_BY
1320 , LAST_UPDATE_DATE
1321 , LAST_UPDATE_LOGIN
1322 --, NAME
1323 , PROGRAM_APPLICATION_ID
1324 , PROGRAM_ID
1325 , PROGRAM_UPDATE_DATE
1326 , REQUEST_ID
1327 --, ROW_ID
1328 INTO l_CURR_LISTS_rec.attribute1
1329 , l_CURR_LISTS_rec.attribute10
1330 , l_CURR_LISTS_rec.attribute11
1331 , l_CURR_LISTS_rec.attribute12
1332 , l_CURR_LISTS_rec.attribute13
1333 , l_CURR_LISTS_rec.attribute14
1334 , l_CURR_LISTS_rec.attribute15
1335 , l_CURR_LISTS_rec.attribute2
1336 , l_CURR_LISTS_rec.attribute3
1337 , l_CURR_LISTS_rec.attribute4
1338 , l_CURR_LISTS_rec.attribute5
1339 , l_CURR_LISTS_rec.attribute6
1340 , l_CURR_LISTS_rec.attribute7
1341 , l_CURR_LISTS_rec.attribute8
1342 , l_CURR_LISTS_rec.attribute9
1343 , l_CURR_LISTS_rec.base_currency_code
1344 , l_CURR_LISTS_rec.context
1345 , l_CURR_LISTS_rec.created_by
1346 , l_CURR_LISTS_rec.creation_date
1347 , l_CURR_LISTS_rec.currency_header_id
1348 --, l_CURR_LISTS_rec.description
1349 , l_CURR_LISTS_rec.last_updated_by
1350 , l_CURR_LISTS_rec.last_update_date
1351 , l_CURR_LISTS_rec.last_update_login
1352 --, l_CURR_LISTS_rec.name
1353 , l_CURR_LISTS_rec.program_application_id
1354 , l_CURR_LISTS_rec.program_id
1355 , l_CURR_LISTS_rec.program_update_date
1356 , l_CURR_LISTS_rec.request_id
1357 --, l_CURR_LISTS_rec.row_id
1358 --FROM QP_CURRENCY_LISTS_VL
1359 FROM QP_CURRENCY_LISTS_B
1360 WHERE CURRENCY_HEADER_ID = p_currency_header_id
1361 ;
1362
1363 -- Added by Sunil
1364 SELECT NAME
1365 , DESCRIPTION
1366 INTO l_CURR_LISTS_rec.name
1367 , l_CURR_LISTS_rec.description
1368 FROM QP_CURRENCY_LISTS_TL
1369 WHERE CURRENCY_HEADER_ID = p_currency_header_id
1370 AND LANGUAGE = userenv('LANG');
1371
1372 -- oe_debug_pub.add('Inside Query_Row of QPXUCURB; p_currency_header_id: '||p_currency_header_id);
1373 -- oe_debug_pub.add('Inside Query_Row of QPXUCURB; Base_Currency_Code: '||l_CURR_LISTS_rec.base_currency_code);
1374 -- Added by Sunil Pandey 10/01/01
1375 SELECT selling_rounding_factor
1376 , markup_value
1377 , markup_operator
1378 , markup_formula_id
1379 INTO l_CURR_LISTS_rec.base_rounding_factor
1380 , l_CURR_LISTS_rec.base_markup_value
1381 , l_CURR_LISTS_rec.base_markup_operator
1382 , l_CURR_LISTS_rec.base_markup_formula_id
1383 FROM QP_CURRENCY_DETAILS
1384 WHERE CURRENCY_HEADER_ID = p_currency_header_id
1385 AND CONVERSION_TYPE IS NULL
1386 AND TO_CURRENCY_CODE = l_CURR_LISTS_rec.base_currency_code;
1387
1388 -- oe_debug_pub.add('After Select of QP_CURRENCY_DETAILS');
1389
1390
1391 RETURN l_CURR_LISTS_rec;
1392
1393 EXCEPTION
1394
1395 WHEN OTHERS THEN
1396
1397
1398 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1399 THEN
1400 OE_MSG_PUB.Add_Exc_Msg
1401 ( G_PKG_NAME
1402 , 'Query_Row'
1403 );
1404 END IF;
1405
1406 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1407
1408 END Query_Row;
1409
1410 -- Procedure lock_Row
1411 --
1412
1413 PROCEDURE Lock_Row
1414 ( x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
1415 , p_CURR_LISTS_rec IN QP_Currency_PUB.Curr_Lists_Rec_Type
1416 , x_CURR_LISTS_rec OUT NOCOPY /* file.sql.39 change */ QP_Currency_PUB.Curr_Lists_Rec_Type
1417 )
1418 IS
1419 l_CURR_LISTS_rec QP_Currency_PUB.Curr_Lists_Rec_Type;
1420 BEGIN
1421
1422 SELECT ATTRIBUTE1
1423 , ATTRIBUTE10
1424 , ATTRIBUTE11
1425 , ATTRIBUTE12
1426 , ATTRIBUTE13
1427 , ATTRIBUTE14
1428 , ATTRIBUTE15
1429 , ATTRIBUTE2
1430 , ATTRIBUTE3
1431 , ATTRIBUTE4
1432 , ATTRIBUTE5
1433 , ATTRIBUTE6
1434 , ATTRIBUTE7
1435 , ATTRIBUTE8
1436 , ATTRIBUTE9
1437 , BASE_CURRENCY_CODE
1438 , CONTEXT
1439 , CREATED_BY
1440 , CREATION_DATE
1441 , CURRENCY_HEADER_ID
1442 -- , DESCRIPTION
1443 , LAST_UPDATED_BY
1444 , LAST_UPDATE_DATE
1445 , LAST_UPDATE_LOGIN
1446 -- , NAME
1447 , PROGRAM_APPLICATION_ID
1448 , PROGRAM_ID
1449 , PROGRAM_UPDATE_DATE
1450 , REQUEST_ID
1451 -- , ROW_ID
1452 INTO l_CURR_LISTS_rec.attribute1
1453 , l_CURR_LISTS_rec.attribute10
1454 , l_CURR_LISTS_rec.attribute11
1455 , l_CURR_LISTS_rec.attribute12
1456 , l_CURR_LISTS_rec.attribute13
1457 , l_CURR_LISTS_rec.attribute14
1458 , l_CURR_LISTS_rec.attribute15
1459 , l_CURR_LISTS_rec.attribute2
1460 , l_CURR_LISTS_rec.attribute3
1461 , l_CURR_LISTS_rec.attribute4
1462 , l_CURR_LISTS_rec.attribute5
1463 , l_CURR_LISTS_rec.attribute6
1464 , l_CURR_LISTS_rec.attribute7
1465 , l_CURR_LISTS_rec.attribute8
1466 , l_CURR_LISTS_rec.attribute9
1467 , l_CURR_LISTS_rec.base_currency_code
1468 , l_CURR_LISTS_rec.context
1469 , l_CURR_LISTS_rec.created_by
1470 , l_CURR_LISTS_rec.creation_date
1471 , l_CURR_LISTS_rec.currency_header_id
1472 -- , l_CURR_LISTS_rec.description
1473 , l_CURR_LISTS_rec.last_updated_by
1474 , l_CURR_LISTS_rec.last_update_date
1475 , l_CURR_LISTS_rec.last_update_login
1476 -- , l_CURR_LISTS_rec.name
1477 , l_CURR_LISTS_rec.program_application_id
1478 , l_CURR_LISTS_rec.program_id
1479 , l_CURR_LISTS_rec.program_update_date
1480 , l_CURR_LISTS_rec.request_id
1481 -- , l_CURR_LISTS_rec.row_id
1482 -- FROM QP_CURRENCY_LISTS_VL
1483 FROM QP_CURRENCY_LISTS_B
1484 WHERE CURRENCY_HEADER_ID = p_CURR_LISTS_rec.currency_header_id
1485 FOR UPDATE NOWAIT;
1486
1487 -- Added by Sunil
1488 SELECT NAME
1489 , DESCRIPTION
1490 INTO l_CURR_LISTS_rec.name
1491 , l_CURR_LISTS_rec.description
1492 FROM QP_CURRENCY_LISTS_TL
1493 WHERE CURRENCY_HEADER_ID = p_CURR_LISTS_rec.CURRENCY_HEADER_ID
1494 AND LANGUAGE = userenv('LANG');
1495
1496 -- Added by Sunil Pandey 10/01/01
1497 SELECT SELLING_ROUNDING_FACTOR
1498 , MARKUP_OPERATOR
1499 , MARKUP_VALUE
1500 , MARKUP_FORMULA_ID
1501 INTO l_CURR_LISTS_rec.base_rounding_factor
1502 , l_CURR_LISTS_rec.base_markup_operator
1503 , l_CURR_LISTS_rec.base_markup_value
1504 , l_CURR_LISTS_rec.base_markup_formula_id
1505 FROM QP_CURRENCY_DETAILS
1506 WHERE CURRENCY_HEADER_ID = p_CURR_LISTS_rec.CURRENCY_HEADER_ID
1507 AND TO_CURRENCY_CODE = p_CURR_LISTS_rec.BASE_CURRENCY_CODE;
1508 -- FOR UPDATE NOWAIT;
1509
1510 -- Row locked. Compare IN attributes to DB attributes.
1511
1512 IF QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute1,
1513 l_CURR_LISTS_rec.attribute1)
1514 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute10,
1515 l_CURR_LISTS_rec.attribute10)
1516 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute11,
1517 l_CURR_LISTS_rec.attribute11)
1518 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute12,
1519 l_CURR_LISTS_rec.attribute12)
1520 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute13,
1521 l_CURR_LISTS_rec.attribute13)
1522 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute14,
1523 l_CURR_LISTS_rec.attribute14)
1524 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute15,
1525 l_CURR_LISTS_rec.attribute15)
1526 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute2,
1527 l_CURR_LISTS_rec.attribute2)
1528 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute3,
1529 l_CURR_LISTS_rec.attribute3)
1530 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute4,
1531 l_CURR_LISTS_rec.attribute4)
1532 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute5,
1533 l_CURR_LISTS_rec.attribute5)
1534 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute6,
1535 l_CURR_LISTS_rec.attribute6)
1536 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute7,
1537 l_CURR_LISTS_rec.attribute7)
1538 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute8,
1539 l_CURR_LISTS_rec.attribute8)
1540 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.attribute9,
1541 l_CURR_LISTS_rec.attribute9)
1542 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.base_currency_code,
1543 l_CURR_LISTS_rec.base_currency_code)
1544 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.context,
1545 l_CURR_LISTS_rec.context)
1546 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.created_by,
1547 l_CURR_LISTS_rec.created_by)
1548 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.creation_date,
1549 l_CURR_LISTS_rec.creation_date)
1550 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.currency_header_id,
1551 l_CURR_LISTS_rec.currency_header_id)
1552 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.description,
1553 l_CURR_LISTS_rec.description)
1554 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.last_updated_by,
1555 l_CURR_LISTS_rec.last_updated_by)
1556 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.last_update_date,
1557 l_CURR_LISTS_rec.last_update_date)
1558 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.last_update_login,
1559 l_CURR_LISTS_rec.last_update_login)
1560 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.name,
1561 l_CURR_LISTS_rec.name)
1562 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.program_application_id,
1563 l_CURR_LISTS_rec.program_application_id)
1564 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.program_id,
1565 l_CURR_LISTS_rec.program_id)
1566 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.program_update_date,
1567 l_CURR_LISTS_rec.program_update_date)
1568 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.request_id,
1569 l_CURR_LISTS_rec.request_id)
1570 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.base_rounding_factor,
1571 l_CURR_LISTS_rec.base_rounding_factor)
1572 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.base_markup_value,
1573 l_CURR_LISTS_rec.base_markup_value)
1574 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.base_markup_operator,
1575 l_CURR_LISTS_rec.base_markup_operator)
1576 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.base_markup_formula_id,
1577 l_CURR_LISTS_rec.base_markup_formula_id)
1578 /* Commented by Sunil
1579 AND QP_GLOBALS.Equal(p_CURR_LISTS_rec.row_id,
1580 l_CURR_LISTS_rec.row_id)
1581 Commented by Sunil */
1582 THEN
1583
1584 -- Row has not changed. Set out parameter.
1585
1586 x_CURR_LISTS_rec := l_CURR_LISTS_rec;
1587
1588 -- Set return status
1589
1590 x_return_status := FND_API.G_RET_STS_SUCCESS;
1591 x_CURR_LISTS_rec.return_status := FND_API.G_RET_STS_SUCCESS;
1592
1593 ELSE
1594
1595 -- Row has changed by another user.
1596
1597 x_return_status := FND_API.G_RET_STS_ERROR;
1598 x_CURR_LISTS_rec.return_status := FND_API.G_RET_STS_ERROR;
1599
1600 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_ERROR)
1601 THEN
1602
1603 FND_MESSAGE.SET_NAME('QP','OE_LOCK_ROW_CHANGED');
1604 OE_MSG_PUB.Add;
1605
1606 END IF;
1607
1608 END IF;
1609
1610 EXCEPTION
1611
1612 WHEN NO_DATA_FOUND THEN
1613
1614 x_return_status := FND_API.G_RET_STS_ERROR;
1615 x_CURR_LISTS_rec.return_status := FND_API.G_RET_STS_ERROR;
1616
1617 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_ERROR)
1618 THEN
1619
1620 FND_MESSAGE.SET_NAME('QP','OE_LOCK_ROW_DELETED');
1621 OE_MSG_PUB.Add;
1622
1623 END IF;
1624 WHEN APP_EXCEPTIONS.RECORD_LOCK_EXCEPTION THEN
1625
1626 x_return_status := FND_API.G_RET_STS_ERROR;
1627 x_CURR_LISTS_rec.return_status := FND_API.G_RET_STS_ERROR;
1628
1629 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_ERROR)
1630 THEN
1631
1632 FND_MESSAGE.SET_NAME('QP','OE_LOCK_ROW_ALREADY_LOCKED');
1633 OE_MSG_PUB.Add;
1634
1635 END IF;
1636 WHEN OTHERS THEN
1637
1638 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1639 x_CURR_LISTS_rec.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1640
1641 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1642 THEN
1643 OE_MSG_PUB.Add_Exc_Msg
1644 ( G_PKG_NAME
1645 , 'Lock_Row'
1646 );
1647 END IF;
1648
1649 END Lock_Row;
1650
1651 -- Function Get_Values
1652
1653 FUNCTION Get_Values
1654 ( p_CURR_LISTS_rec IN QP_Currency_PUB.Curr_Lists_Rec_Type
1655 , p_old_CURR_LISTS_rec IN QP_Currency_PUB.Curr_Lists_Rec_Type :=
1656 QP_Currency_PUB.G_MISS_CURR_LISTS_REC
1657 ) RETURN QP_Currency_PUB.Curr_Lists_Val_Rec_Type
1658 IS
1659 l_CURR_LISTS_val_rec QP_Currency_PUB.Curr_Lists_Val_Rec_Type;
1660 BEGIN
1661
1662 -- oe_debug_pub.add('. ENTERED QP_Curr_Lists_Util.Get_Values');
1663 IF p_CURR_LISTS_rec.base_currency_code IS NOT NULL AND
1664 p_CURR_LISTS_rec.base_currency_code <> FND_API.G_MISS_CHAR AND
1665 NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.base_currency_code,
1666 p_old_CURR_LISTS_rec.base_currency_code)
1667 THEN
1668 l_CURR_LISTS_val_rec.base_currency := QP_Id_To_Value.Base_Currency
1669 ( p_base_currency_code => p_CURR_LISTS_rec.base_currency_code
1670 );
1671 END IF;
1672
1673 IF p_CURR_LISTS_rec.currency_header_id IS NOT NULL AND
1674 p_CURR_LISTS_rec.currency_header_id <> FND_API.G_MISS_NUM AND
1675 NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.currency_header_id,
1676 p_old_CURR_LISTS_rec.currency_header_id)
1677 THEN
1678 l_CURR_LISTS_val_rec.currency_header := QP_Id_To_Value.Currency_Header
1679 ( p_currency_header_id => p_CURR_LISTS_rec.currency_header_id
1680 );
1681 END IF;
1682
1683 /*
1684 -- Added by Sunil Pandey 10/01/01
1685 IF p_CURR_LISTS_rec.base_markup_formula_id IS NOT NULL AND
1686 p_CURR_LISTS_rec.base_markup_formula_id <> FND_API.G_MISS_CHAR AND
1687 NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.base_markup_formula_id,
1688 p_old_CURR_LISTS_rec.base_markup_formula_id)
1689 THEN
1690 l_CURR_LISTS_val_rec.base_markup_formula := QP_Id_To_Value.Base_Markup_Formula
1691 ( p_base_markup_formula_id => p_CURR_LISTS_rec.base_markup_formula_id
1692 );
1693 END IF;
1694 */
1695
1696
1697 /* Commented by Sunil
1698 IF p_CURR_LISTS_rec.row_id IS NOT NULL AND
1699 p_CURR_LISTS_rec.row_id <> FND_API.G_MISS_NUM AND
1700 NOT QP_GLOBALS.Equal(p_CURR_LISTS_rec.row_id,
1701 p_old_CURR_LISTS_rec.row_id)
1702 THEN
1703 l_CURR_LISTS_val_rec.row := QP_Id_To_Value.Row
1704 ( p_row_id => p_CURR_LISTS_rec.row_id
1705 );
1706 END IF;
1707 Commented by Sunil */
1708
1709 -- oe_debug_pub.add('. EXITING QP_Curr_Lists_Util.Get_Values');
1710 RETURN l_CURR_LISTS_val_rec;
1711
1712 END Get_Values;
1713
1714 -- Function Get_Ids
1715
1716 FUNCTION Get_Ids
1717 ( p_CURR_LISTS_rec IN QP_Currency_PUB.Curr_Lists_Rec_Type
1718 , p_CURR_LISTS_val_rec IN QP_Currency_PUB.Curr_Lists_Val_Rec_Type
1719 ) RETURN QP_Currency_PUB.Curr_Lists_Rec_Type
1720 IS
1721 l_CURR_LISTS_rec QP_Currency_PUB.Curr_Lists_Rec_Type;
1722 BEGIN
1723
1724 -- initialize return_status.
1725
1726 l_CURR_LISTS_rec.return_status := FND_API.G_RET_STS_SUCCESS;
1727
1728 -- initialize l_CURR_LISTS_rec.
1729
1730 l_CURR_LISTS_rec := p_CURR_LISTS_rec;
1731
1732 IF p_CURR_LISTS_val_rec.base_currency <> FND_API.G_MISS_CHAR
1733 THEN
1734
1735 IF p_CURR_LISTS_rec.base_currency_code <> FND_API.G_MISS_CHAR THEN
1736
1737 l_CURR_LISTS_rec.base_currency_code := p_CURR_LISTS_rec.base_currency_code;
1738
1739 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_SUCCESS)
1740 THEN
1741
1742 FND_MESSAGE.SET_NAME('QP','FND_BOTH_VAL_AND_ID_EXIST');
1743 FND_MESSAGE.SET_TOKEN('ATTRIBUTE','base_currency');
1744 OE_MSG_PUB.Add;
1745
1746 END IF;
1747
1748 ELSE
1749
1750 l_CURR_LISTS_rec.base_currency_code := QP_Value_To_Id.base_currency
1751 ( p_base_currency => p_CURR_LISTS_val_rec.base_currency
1752 );
1753
1754 IF l_CURR_LISTS_rec.base_currency_code = FND_API.G_MISS_CHAR THEN
1755 l_CURR_LISTS_rec.return_status := FND_API.G_RET_STS_ERROR;
1756 END IF;
1757
1758 END IF;
1759
1760 END IF;
1761
1762 IF p_CURR_LISTS_val_rec.currency_header <> FND_API.G_MISS_CHAR
1763 THEN
1764
1765 IF p_CURR_LISTS_rec.currency_header_id <> FND_API.G_MISS_NUM THEN
1766
1767 l_CURR_LISTS_rec.currency_header_id := p_CURR_LISTS_rec.currency_header_id;
1768
1769 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_SUCCESS)
1770 THEN
1771
1772 FND_MESSAGE.SET_NAME('QP','FND_BOTH_VAL_AND_ID_EXIST');
1773 FND_MESSAGE.SET_TOKEN('ATTRIBUTE','currency_header');
1774 OE_MSG_PUB.Add;
1775
1776 END IF;
1777
1778 ELSE
1779
1780 l_CURR_LISTS_rec.currency_header_id := QP_Value_To_Id.currency_header
1781 ( p_currency_header => p_CURR_LISTS_val_rec.currency_header
1782 );
1783
1784 IF l_CURR_LISTS_rec.currency_header_id = FND_API.G_MISS_NUM THEN
1785 l_CURR_LISTS_rec.return_status := FND_API.G_RET_STS_ERROR;
1786 END IF;
1787
1788 END IF;
1789
1790 END IF;
1791
1792 -- Added by Sunil Pandey 10/01/01
1793 IF p_CURR_LISTS_val_rec.base_markup_formula <> FND_API.G_MISS_CHAR
1794 THEN
1795
1796 IF p_CURR_LISTS_rec.base_markup_formula_id <> FND_API.G_MISS_NUM THEN
1797
1798 l_CURR_LISTS_rec.base_markup_formula_id := p_CURR_LISTS_rec.base_markup_formula_id;
1799
1800 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_SUCCESS)
1801 THEN
1802
1803 FND_MESSAGE.SET_NAME('QP','FND_BOTH_VAL_AND_ID_EXIST');
1804 FND_MESSAGE.SET_TOKEN('ATTRIBUTE','base_markup_formula');
1805 OE_MSG_PUB.Add;
1806
1807 END IF;
1808
1809 ELSE
1810
1811 l_CURR_LISTS_rec.base_markup_formula_id := QP_Value_To_Id.Base_Markup_Formula
1812 ( p_base_markup_formula => p_CURR_LISTS_val_rec.base_markup_formula
1813 );
1814
1815 IF l_CURR_LISTS_rec.base_markup_formula_id = FND_API.G_MISS_NUM THEN
1816 l_CURR_LISTS_rec.return_status := FND_API.G_RET_STS_ERROR;
1817 END IF;
1818
1819 END IF;
1820
1821 END IF;
1822
1823 /* Commented by Sunil
1824 IF p_CURR_LISTS_val_rec.row <> FND_API.G_MISS_CHAR
1825 THEN
1826
1827 IF p_CURR_LISTS_rec.row_id <> FND_API.G_MISS_CHAR THEN
1828
1829 l_CURR_LISTS_rec.row_id := p_CURR_LISTS_rec.row_id;
1830
1831 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_SUCCESS)
1832 THEN
1833
1834 FND_MESSAGE.SET_NAME('QP','FND_BOTH_VAL_AND_ID_EXIST');
1835 FND_MESSAGE.SET_TOKEN('ATTRIBUTE','row');
1836 OE_MSG_PUB.Add;
1837
1838 END IF;
1839
1840 ELSE
1841
1842 l_CURR_LISTS_rec.row_id := QP_Value_To_Id.row
1843 ( p_row => p_CURR_LISTS_val_rec.row
1844 );
1845
1846 IF l_CURR_LISTS_rec.row_id = FND_API.G_MISS_CHAR THEN
1847 l_CURR_LISTS_rec.return_status := FND_API.G_RET_STS_ERROR;
1848 END IF;
1849
1850 END IF;
1851
1852 END IF;
1853 Commented by Sunil */
1854
1855
1856 RETURN l_CURR_LISTS_rec;
1857
1858 END Get_Ids;
1859
1860 END QP_Curr_Lists_Util;