[Home] [Help]
PACKAGE BODY: APPS.OKC_CYL_PVT
Source
1 PACKAGE BODY OKC_CYL_PVT AS
2 /* $Header: OKCSCYLB.pls 120.0 2005/05/30 04:12:56 appldev noship $ */
3
4 l_debug VARCHAR2(1) := NVL(FND_PROFILE.VALUE('AFLOG_ENABLED'),'N');
5 ---------------------------------------------------------------------------
6 -- FUNCTION get_seq_id
7 ---------------------------------------------------------------------------
8 FUNCTION get_seq_id RETURN NUMBER IS
9 BEGIN
10 RETURN(okc_p_util.raw_to_number(sys_guid()));
11 END get_seq_id;
12
13 ---------------------------------------------------------------------------
14 -- PROCEDURE qc
15 ---------------------------------------------------------------------------
16 PROCEDURE qc IS
17 BEGIN
18 null;
19 END qc;
20
21 ---------------------------------------------------------------------------
22 -- PROCEDURE change_version
23 ---------------------------------------------------------------------------
24 PROCEDURE change_version IS
25 BEGIN
26 null;
27 END change_version;
28
29 ---------------------------------------------------------------------------
30 -- PROCEDURE api_copy
31 ---------------------------------------------------------------------------
32 PROCEDURE api_copy IS
33 BEGIN
34 null;
35 END api_copy;
36
37 ---------------------------------------------------------------------------
38 -- FUNCTION get_rec for: OKC_TIMEVALUES_B
39 ---------------------------------------------------------------------------
40 FUNCTION get_rec (
41 p_tve_rec IN tve_rec_type,
42 x_no_data_found OUT NOCOPY BOOLEAN
43 ) RETURN tve_rec_type IS
44 CURSOR tve_pk_csr (p_id IN NUMBER) IS
45 SELECT
46 ID,
47 SPN_ID,
48 TVE_ID_OFFSET,
49 uom_code,
50 CNH_ID,
51 TVE_ID_GENERATED_BY,
52 TVE_ID_STARTED,
53 TVE_ID_ENDED,
54 TVE_ID_LIMITED,
55 DNZ_CHR_ID,
56 TZE_ID,
57 TVE_TYPE,
58 OBJECT_VERSION_NUMBER,
59 CREATED_BY,
60 CREATION_DATE,
61 LAST_UPDATED_BY,
62 LAST_UPDATE_DATE,
63 DURATION,
64 OPERATOR,
65 BEFORE_AFTER,
66 DATETIME,
67 MONTH,
68 DAY,
69 HOUR,
70 MINUTE,
71 SECOND,
72 NTH,
73 DAY_OF_WEEK,
74 INTERVAL_YN,
75 LAST_UPDATE_LOGIN,
76 ATTRIBUTE_CATEGORY,
77 ATTRIBUTE1,
78 ATTRIBUTE2,
79 ATTRIBUTE3,
80 ATTRIBUTE4,
81 ATTRIBUTE5,
82 ATTRIBUTE6,
83 ATTRIBUTE7,
84 ATTRIBUTE8,
85 ATTRIBUTE9,
86 ATTRIBUTE10,
87 ATTRIBUTE11,
88 ATTRIBUTE12,
89 ATTRIBUTE13,
90 ATTRIBUTE14,
91 ATTRIBUTE15,
92 --Bug 3122962
93 name,
94 description,
95 short_description,
96 comments
97 FROM Okc_Timevalues
98 WHERE okc_timevalues.id = p_id;
99 l_tve_pk tve_pk_csr%ROWTYPE;
100 l_tve_rec tve_rec_type;
101 BEGIN
102 x_no_data_found := TRUE;
103 -- Get current database values
104 OPEN tve_pk_csr (p_tve_rec.id);
105 FETCH tve_pk_csr INTO
106 l_tve_rec.ID,
107 l_tve_rec.SPN_ID,
108 l_tve_rec.TVE_ID_OFFSET,
109 l_tve_rec.uom_code,
110 l_tve_rec.CNH_ID,
111 l_tve_rec.TVE_ID_GENERATED_BY,
112 l_tve_rec.TVE_ID_STARTED,
113 l_tve_rec.TVE_ID_ENDED,
114 l_tve_rec.TVE_ID_LIMITED,
115 l_tve_rec.DNZ_CHR_ID,
116 l_tve_rec.TZE_ID,
117 l_tve_rec.TVE_TYPE,
118 l_tve_rec.OBJECT_VERSION_NUMBER,
119 l_tve_rec.CREATED_BY,
120 l_tve_rec.CREATION_DATE,
121 l_tve_rec.LAST_UPDATED_BY,
122 l_tve_rec.LAST_UPDATE_DATE,
123 l_tve_rec.DURATION,
124 l_tve_rec.OPERATOR,
125 l_tve_rec.BEFORE_AFTER,
126 l_tve_rec.DATETIME,
127 l_tve_rec.MONTH,
128 l_tve_rec.DAY,
129 l_tve_rec.HOUR,
130 l_tve_rec.MINUTE,
131 l_tve_rec.SECOND,
132 l_tve_rec.NTH,
133 l_tve_rec.DAY_OF_WEEK,
134 l_tve_rec.INTERVAL_YN,
135 l_tve_rec.LAST_UPDATE_LOGIN,
136 l_tve_rec.ATTRIBUTE_CATEGORY,
137 --Bug 3122962
138 l_tve_rec.name,
139 l_tve_rec.description,
140 l_tve_rec.short_description,
141 l_tve_rec.comments,
142
143 l_tve_rec.ATTRIBUTE1,
144 l_tve_rec.ATTRIBUTE2,
145 l_tve_rec.ATTRIBUTE3,
146 l_tve_rec.ATTRIBUTE4,
147 l_tve_rec.ATTRIBUTE5,
148 l_tve_rec.ATTRIBUTE6,
149 l_tve_rec.ATTRIBUTE7,
150 l_tve_rec.ATTRIBUTE8,
151 l_tve_rec.ATTRIBUTE9,
152 l_tve_rec.ATTRIBUTE10,
153 l_tve_rec.ATTRIBUTE11,
154 l_tve_rec.ATTRIBUTE12,
155 l_tve_rec.ATTRIBUTE13,
156 l_tve_rec.ATTRIBUTE14,
157 l_tve_rec.ATTRIBUTE15;
158 x_no_data_found := tve_pk_csr%NOTFOUND;
159 CLOSE tve_pk_csr;
160 RETURN(l_tve_rec);
161 END get_rec;
162
163 FUNCTION get_rec (
164 p_tve_rec IN tve_rec_type
165 ) RETURN tve_rec_type IS
166 l_row_notfound BOOLEAN := TRUE;
167 BEGIN
168 RETURN(get_rec(p_tve_rec, l_row_notfound));
169 END get_rec;
170 ---------------------------------------------------------------------------
171 -- FUNCTION get_rec for: OKC_TIMEVALUES_TL
172 ---------------------------------------------------------------------------
173 --Bug 3122962
174 /*
175 FUNCTION get_rec (
176 p_okc_timevalues_tl_rec IN okc_timevalues_tl_rec_type,
177 x_no_data_found OUT NOCOPY BOOLEAN
178 ) RETURN okc_timevalues_tl_rec_type IS
179 CURSOR tve_pktl_csr (p_id IN NUMBER,
180 p_language IN VARCHAR2) IS
181 SELECT
182 ID,
183 LANGUAGE,
184 SOURCE_LANG,
185 SFWT_FLAG,
186 DESCRIPTION,
187 SHORT_DESCRIPTION,
188 COMMENTS,
189 NAME,
190 CREATED_BY,
191 CREATION_DATE,
192 LAST_UPDATED_BY,
193 LAST_UPDATE_DATE,
194 LAST_UPDATE_LOGIN
195 FROM Okc_Timevalues_Tl
196 WHERE okc_timevalues_tl.id = p_id
197 AND okc_timevalues_tl.language = p_language;
198 l_tve_pktl tve_pktl_csr%ROWTYPE;
199 l_okc_timevalues_tl_rec okc_timevalues_tl_rec_type;
200 BEGIN
201 x_no_data_found := TRUE;
202 -- Get current database values
203 OPEN tve_pktl_csr (p_okc_timevalues_tl_rec.id,
204 p_okc_timevalues_tl_rec.language);
205 FETCH tve_pktl_csr INTO
206 l_okc_timevalues_tl_rec.ID,
207 l_okc_timevalues_tl_rec.LANGUAGE,
208 l_okc_timevalues_tl_rec.SOURCE_LANG,
209 l_okc_timevalues_tl_rec.SFWT_FLAG,
210 l_okc_timevalues_tl_rec.DESCRIPTION,
211 l_okc_timevalues_tl_rec.SHORT_DESCRIPTION,
212 l_okc_timevalues_tl_rec.COMMENTS,
213 l_okc_timevalues_tl_rec.NAME,
214 l_okc_timevalues_tl_rec.CREATED_BY,
215 l_okc_timevalues_tl_rec.CREATION_DATE,
216 l_okc_timevalues_tl_rec.LAST_UPDATED_BY,
217 l_okc_timevalues_tl_rec.LAST_UPDATE_DATE,
218 l_okc_timevalues_tl_rec.LAST_UPDATE_LOGIN;
219 x_no_data_found := tve_pktl_csr%NOTFOUND;
220 CLOSE tve_pktl_csr;
221 RETURN(l_okc_timevalues_tl_rec);
222 END get_rec;
223
224 FUNCTION get_rec (
225 p_okc_timevalues_tl_rec IN okc_timevalues_tl_rec_type
226 ) RETURN okc_timevalues_tl_rec_type IS
227 l_row_notfound BOOLEAN := TRUE;
228 BEGIN
229 RETURN(get_rec(p_okc_timevalues_tl_rec, l_row_notfound));
230 END get_rec;
231 */
232 ---------------------------------------------------------------------------
233 -- FUNCTION get_rec for: OKC_TIME_CYCLE_V
234 ---------------------------------------------------------------------------
235 FUNCTION get_rec (
236 p_cylv_rec IN cylv_rec_type,
237 x_no_data_found OUT NOCOPY BOOLEAN
238 ) RETURN cylv_rec_type IS
239 CURSOR okc_cylv_pk_csr (p_id IN NUMBER) IS
240 SELECT
241 ID,
242 OBJECT_VERSION_NUMBER,
243 --Bug 3122962 SFWT_FLAG,
244 SPN_ID,
245 TVE_ID_LIMITED,
246 DNZ_CHR_ID,
247 TZE_ID,
248 DESCRIPTION,
249 SHORT_DESCRIPTION,
250 COMMENTS,
251 NAME,
252 INTERVAL_YN,
253 ATTRIBUTE_CATEGORY,
254 ATTRIBUTE1,
255 ATTRIBUTE2,
256 ATTRIBUTE3,
257 ATTRIBUTE4,
258 ATTRIBUTE5,
259 ATTRIBUTE6,
260 ATTRIBUTE7,
261 ATTRIBUTE8,
262 ATTRIBUTE9,
263 ATTRIBUTE10,
264 ATTRIBUTE11,
265 ATTRIBUTE12,
266 ATTRIBUTE13,
267 ATTRIBUTE14,
268 ATTRIBUTE15,
269 CREATED_BY,
270 CREATION_DATE,
271 LAST_UPDATED_BY,
272 LAST_UPDATE_DATE,
273 LAST_UPDATE_LOGIN
274 FROM Okc_Time_Cycle_V
275 WHERE okc_time_cycle_v.id = p_id;
276 l_okc_cylv_pk okc_cylv_pk_csr%ROWTYPE;
277 l_cylv_rec cylv_rec_type;
278 BEGIN
279 x_no_data_found := TRUE;
280 -- Get current database values
281 OPEN okc_cylv_pk_csr (p_cylv_rec.id);
282 FETCH okc_cylv_pk_csr INTO
283 l_cylv_rec.ID,
284 l_cylv_rec.OBJECT_VERSION_NUMBER,
285 --Bug 3122962 l_cylv_rec.SFWT_FLAG,
286 l_cylv_rec.SPN_ID,
287 l_cylv_rec.TVE_ID_LIMITED,
288 l_cylv_rec.DNZ_CHR_ID,
289 l_cylv_rec.TZE_ID,
290 l_cylv_rec.DESCRIPTION,
291 l_cylv_rec.SHORT_DESCRIPTION,
292 l_cylv_rec.COMMENTS,
293 l_cylv_rec.NAME,
294 l_cylv_rec.INTERVAL_YN,
295 l_cylv_rec.ATTRIBUTE_CATEGORY,
296 l_cylv_rec.ATTRIBUTE1,
297 l_cylv_rec.ATTRIBUTE2,
298 l_cylv_rec.ATTRIBUTE3,
299 l_cylv_rec.ATTRIBUTE4,
300 l_cylv_rec.ATTRIBUTE5,
301 l_cylv_rec.ATTRIBUTE6,
302 l_cylv_rec.ATTRIBUTE7,
303 l_cylv_rec.ATTRIBUTE8,
304 l_cylv_rec.ATTRIBUTE9,
305 l_cylv_rec.ATTRIBUTE10,
306 l_cylv_rec.ATTRIBUTE11,
307 l_cylv_rec.ATTRIBUTE12,
308 l_cylv_rec.ATTRIBUTE13,
309 l_cylv_rec.ATTRIBUTE14,
310 l_cylv_rec.ATTRIBUTE15,
311 l_cylv_rec.CREATED_BY,
312 l_cylv_rec.CREATION_DATE,
313 l_cylv_rec.LAST_UPDATED_BY,
314 l_cylv_rec.LAST_UPDATE_DATE,
315 l_cylv_rec.LAST_UPDATE_LOGIN;
316 x_no_data_found := okc_cylv_pk_csr%NOTFOUND;
317 CLOSE okc_cylv_pk_csr;
318 RETURN(l_cylv_rec);
319 END get_rec;
320
321 FUNCTION get_rec (
322 p_cylv_rec IN cylv_rec_type
323 ) RETURN cylv_rec_type IS
324 l_row_notfound BOOLEAN := TRUE;
325 BEGIN
326 RETURN(get_rec(p_cylv_rec, l_row_notfound));
327 END get_rec;
328
329 ------------------------------------------------------
330 -- FUNCTION null_out_defaults for: OKC_TIME_CYCLE_V --
331 ------------------------------------------------------
332 FUNCTION null_out_defaults (
333 p_cylv_rec IN cylv_rec_type
334 ) RETURN cylv_rec_type IS
335 l_cylv_rec cylv_rec_type := p_cylv_rec;
336 BEGIN
337 IF (l_cylv_rec.object_version_number = OKC_API.G_MISS_NUM) THEN
338 l_cylv_rec.object_version_number := NULL;
339 END IF;
340 /*
341 IF (l_cylv_rec.sfwt_flag = OKC_API.G_MISS_CHAR) THEN
342 l_cylv_rec.sfwt_flag := NULL;
343 END IF;
344 */
345 IF (l_cylv_rec.spn_id = OKC_API.G_MISS_NUM) THEN
346 l_cylv_rec.spn_id := NULL;
347 END IF;
348 IF (l_cylv_rec.tve_id_limited = OKC_API.G_MISS_NUM) THEN
349 l_cylv_rec.tve_id_limited := NULL;
350 END IF;
351 IF (l_cylv_rec.dnz_chr_id = OKC_API.G_MISS_NUM) THEN
352 l_cylv_rec.dnz_chr_id := NULL;
353 END IF;
354 IF (l_cylv_rec.tze_id = OKC_API.G_MISS_NUM) THEN
355 l_cylv_rec.tze_id := NULL;
356 END IF;
357 IF (l_cylv_rec.description = OKC_API.G_MISS_CHAR) THEN
358 l_cylv_rec.description := NULL;
359 END IF;
360 IF (l_cylv_rec.short_description = OKC_API.G_MISS_CHAR) THEN
361 l_cylv_rec.short_description := NULL;
362 END IF;
363 IF (l_cylv_rec.comments = OKC_API.G_MISS_CHAR) THEN
364 l_cylv_rec.comments := NULL;
365 END IF;
366 IF (l_cylv_rec.name = OKC_API.G_MISS_CHAR) THEN
367 l_cylv_rec.name := NULL;
368 END IF;
369 IF (l_cylv_rec.interval_yn = OKC_API.G_MISS_CHAR) THEN
370 l_cylv_rec.interval_yn := NULL;
371 END IF;
372 IF (l_cylv_rec.attribute_category = OKC_API.G_MISS_CHAR) THEN
373 l_cylv_rec.attribute_category := NULL;
374 END IF;
375 IF (l_cylv_rec.attribute1 = OKC_API.G_MISS_CHAR) THEN
376 l_cylv_rec.attribute1 := NULL;
377 END IF;
378 IF (l_cylv_rec.attribute2 = OKC_API.G_MISS_CHAR) THEN
379 l_cylv_rec.attribute2 := NULL;
380 END IF;
381 IF (l_cylv_rec.attribute3 = OKC_API.G_MISS_CHAR) THEN
382 l_cylv_rec.attribute3 := NULL;
383 END IF;
384 IF (l_cylv_rec.attribute4 = OKC_API.G_MISS_CHAR) THEN
385 l_cylv_rec.attribute4 := NULL;
386 END IF;
387 IF (l_cylv_rec.attribute5 = OKC_API.G_MISS_CHAR) THEN
388 l_cylv_rec.attribute5 := NULL;
389 END IF;
390 IF (l_cylv_rec.attribute6 = OKC_API.G_MISS_CHAR) THEN
391 l_cylv_rec.attribute6 := NULL;
392 END IF;
393 IF (l_cylv_rec.attribute7 = OKC_API.G_MISS_CHAR) THEN
394 l_cylv_rec.attribute7 := NULL;
395 END IF;
396 IF (l_cylv_rec.attribute8 = OKC_API.G_MISS_CHAR) THEN
397 l_cylv_rec.attribute8 := NULL;
398 END IF;
399 IF (l_cylv_rec.attribute9 = OKC_API.G_MISS_CHAR) THEN
400 l_cylv_rec.attribute9 := NULL;
401 END IF;
402 IF (l_cylv_rec.attribute10 = OKC_API.G_MISS_CHAR) THEN
403 l_cylv_rec.attribute10 := NULL;
404 END IF;
405 IF (l_cylv_rec.attribute11 = OKC_API.G_MISS_CHAR) THEN
406 l_cylv_rec.attribute11 := NULL;
407 END IF;
408 IF (l_cylv_rec.attribute12 = OKC_API.G_MISS_CHAR) THEN
409 l_cylv_rec.attribute12 := NULL;
410 END IF;
411 IF (l_cylv_rec.attribute13 = OKC_API.G_MISS_CHAR) THEN
412 l_cylv_rec.attribute13 := NULL;
413 END IF;
414 IF (l_cylv_rec.attribute14 = OKC_API.G_MISS_CHAR) THEN
415 l_cylv_rec.attribute14 := NULL;
419 END IF;
416 END IF;
417 IF (l_cylv_rec.attribute15 = OKC_API.G_MISS_CHAR) THEN
418 l_cylv_rec.attribute15 := NULL;
420 IF (l_cylv_rec.created_by = OKC_API.G_MISS_NUM) THEN
421 l_cylv_rec.created_by := NULL;
422 END IF;
423 IF (l_cylv_rec.creation_date = OKC_API.G_MISS_DATE) THEN
424 l_cylv_rec.creation_date := NULL;
425 END IF;
426 IF (l_cylv_rec.last_updated_by = OKC_API.G_MISS_NUM) THEN
427 l_cylv_rec.last_updated_by := NULL;
428 END IF;
429 IF (l_cylv_rec.last_update_date = OKC_API.G_MISS_DATE) THEN
430 l_cylv_rec.last_update_date := NULL;
431 END IF;
432 IF (l_cylv_rec.last_update_login = OKC_API.G_MISS_NUM) THEN
433 l_cylv_rec.last_update_login := NULL;
434 END IF;
435 RETURN(l_cylv_rec);
436 END null_out_defaults;
437
438 --**** Change from TAPI Code---follow till end of change---------------
439 ------------------------------------------------------
440 -- FUNCTION null_out_defaults for: OKC_TIMEVALUES_V --
441 ------------------------------------------------------
442 -- 1. Added null_out_defaults to overcome number initialization
443 -- problem while populating optional columns for supertypes from a subtype
444 -- 2. Moved all column validations (including FK) to Validate_column
445 -- and is called from Validate_Attributes
446 -- 3. Validate_Records will have tuple rule checks.
447
448 FUNCTION null_out_defaults (
449 p_tve_rec IN tve_rec_type
450 ) RETURN tve_rec_type IS
451 l_tve_rec tve_rec_type := p_tve_rec;
452 BEGIN
453 IF (l_tve_rec.cnh_id = OKC_API.G_MISS_NUM) THEN
454 l_tve_rec.cnh_id := NULL;
455 END IF;
456 IF (l_tve_rec.tve_id_generated_by = OKC_API.G_MISS_NUM) THEN
457 l_tve_rec.tve_id_generated_by := NULL;
458 END IF;
459 IF (l_tve_rec.datetime = OKC_API.G_MISS_DATE) THEN
460 l_tve_rec.datetime := NULL;
461 END IF;
462 IF (l_tve_rec.month = OKC_API.G_MISS_NUM) THEN
463 l_tve_rec.month := NULL;
464 END IF;
465 IF (l_tve_rec.day = OKC_API.G_MISS_NUM) THEN
466 l_tve_rec.day := NULL;
467 END IF;
468 IF (l_tve_rec.hour = OKC_API.G_MISS_NUM) THEN
469 l_tve_rec.hour := NULL;
470 END IF;
471 IF (l_tve_rec.minute = OKC_API.G_MISS_NUM) THEN
472 l_tve_rec.minute := NULL;
473 END IF;
474 IF (l_tve_rec.second = OKC_API.G_MISS_NUM) THEN
475 l_tve_rec.second := NULL;
476 END IF;
477 IF (l_tve_rec.nth = OKC_API.G_MISS_NUM) THEN
478 l_tve_rec.nth := NULL;
479 END IF;
480 IF (l_tve_rec.day_of_week = OKC_API.G_MISS_CHAR) THEN
481 l_tve_rec.day_of_week := NULL;
482 END IF;
483 IF (l_tve_rec.interval_yn = OKC_API.G_MISS_CHAR) THEN
484 l_tve_rec.interval_yn := NULL;
485 END IF;
486 IF (l_tve_rec.spn_id = OKC_API.G_MISS_NUM) THEN
487 l_tve_rec.spn_id := NULL;
488 END IF;
489 IF (l_tve_rec.tve_id_offset = OKC_API.G_MISS_NUM) THEN
490 l_tve_rec.tve_id_offset := NULL;
491 END IF;
492 IF (l_tve_rec.tve_id_started = OKC_API.G_MISS_NUM) THEN
493 l_tve_rec.tve_id_started := NULL;
494 END IF;
495 IF (l_tve_rec.tve_id_ended = OKC_API.G_MISS_NUM) THEN
496 l_tve_rec.tve_id_ended := NULL;
497 END IF;
498 IF (l_tve_rec.uom_code = OKC_API.G_MISS_CHAR) THEN
499 l_tve_rec.uom_code := NULL;
500 END IF;
501 IF (l_tve_rec.duration = OKC_API.G_MISS_NUM) THEN
502 l_tve_rec.duration := NULL;
503 END IF;
504 IF (l_tve_rec.before_after = OKC_API.G_MISS_CHAR) THEN
505 l_tve_rec.before_after := NULL;
506 END IF;
507 IF (l_tve_rec.operator = OKC_API.G_MISS_CHAR) THEN
508 l_tve_rec.operator := NULL;
509 END IF;
510 --Bug 3122962
511 IF (l_tve_rec.name = OKC_API.G_MISS_CHAR) THEN
512 l_tve_rec.name := NULL;
513 END IF;
514 IF (l_tve_rec.description = OKC_API.G_MISS_CHAR) THEN
515 l_tve_rec.description := NULL;
516 END IF;
517 IF (l_tve_rec.short_description = OKC_API.G_MISS_CHAR) THEN
518 l_tve_rec.short_description := NULL;
519 END IF;
520 IF (l_tve_rec.comments = OKC_API.G_MISS_CHAR) THEN
521 l_tve_rec.comments := NULL;
522 END IF;
523
524 RETURN(l_tve_rec);
525 END null_out_defaults;
526 /*
527 FUNCTION null_out_defaults (
528 p_tve_tl_rec IN okc_timevalues_tl_rec_type
529 ) RETURN okc_timevalues_tl_rec_type IS
530 l_tve_tl_rec okc_timevalues_tl_rec_type := p_tve_tl_rec;
531 BEGIN
532 RETURN(l_tve_tl_rec);
533 END null_out_defaults;
534 */
535 ---------------------------------------------------------------------------
536 -- PROCEDURE Validate_Attributes
537 ---------------------------------------------------------------------------
538 ----------------------------------------------
539 -- Validate_Attributes for:OKC_TIME_CYCLE_V --
540 ----------------------------------------------
541 PROCEDURE Validate_DNZ_Chr_ID (
542 x_return_status OUT NOCOPY VARCHAR2,
543 p_cylv_rec IN cylv_rec_type) IS
544 item_not_found_error EXCEPTION;
545 l_row_notfound BOOLEAN := TRUE;
546 CURSOR okc_chrv_pk_csr (p_id IN NUMBER) IS
547 SELECT '1'
551 BEGIN
548 FROM Okc_k_headers_b
549 WHERE id = p_id;
550 l_okc_chrv_pk okc_chrv_pk_csr%ROWTYPE;
552 x_return_status := OKC_API.G_RET_STS_SUCCESS;
553 IF (p_cylv_rec.dnz_chr_id IS NOT NULL AND
554 p_cylv_rec.dnz_chr_id <> OKC_API.G_MISS_NUM)
555 THEN
556 OPEN okc_chrv_pk_csr(p_cylv_rec.dnz_chr_id);
557 FETCH okc_chrv_pk_csr INTO l_okc_chrv_pk;
558 l_row_notfound := okc_chrv_pk_csr%NOTFOUND;
559 CLOSE okc_chrv_pk_csr;
560 IF (l_row_notfound) THEN
561 OKC_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'DNZ_CHR_ID');
562 RAISE item_not_found_error;
563 END IF;
564 ELSE
565 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'DNZ_CHR_ID');
566 x_return_status := OKC_API.G_RET_STS_ERROR;
567 END IF;
568 EXCEPTION
569 WHEN item_not_found_error THEN
570 x_return_status := OKC_API.G_RET_STS_ERROR;
571 WHEN OTHERS THEN
572 -- store SQL error message on message stack for caller
573 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
574 p_msg_name => g_unexpected_error,
575 p_token1 => g_sqlcode_token,
576 p_token1_value => sqlcode,
577 p_token2 => g_col_name_token,
578 p_token2_value => 'DNZ_CHR_ID',
579 p_token3 => g_sqlerrm_token,
580 p_token3_value => sqlerrm);
581 -- notify caller of an UNEXPECTED error
582 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
583 END Validate_DNZ_Chr_Id ;
584
585 PROCEDURE Validate_Interval_YN (
586 x_return_status OUT NOCOPY VARCHAR2,
587 p_cylv_rec IN cylv_rec_type) IS
588 BEGIN
589 IF upper(p_cylv_rec.interval_yn) = 'Y' OR
590 upper(p_cylv_rec.interval_yn) = 'N'
591 THEN
592 IF p_cylv_rec.interval_yn = 'Y' OR
593 p_cylv_rec.interval_yn = 'N'
594 THEN
595 x_return_status := OKC_API.G_RET_STS_SUCCESS;
596 ELSE
597 OKC_API.set_message(G_APP_NAME, G_UPPERCASE_REQUIRED,G_COL_NAME_TOKEN,'INTERVAL_YN');
598 x_return_status := OKC_API.G_RET_STS_ERROR;
599 END IF;
600 ELSE
601 OKC_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'INTERVAL_YN');
602 x_return_status := OKC_API.G_RET_STS_ERROR;
603 END IF;
604 END Validate_Interval_YN;
605
606 PROCEDURE Validate_Spn_Id (
607 x_return_status OUT NOCOPY VARCHAR2,
608 p_cylv_rec IN cylv_rec_type) IS
609 item_not_found_error EXCEPTION;
610 l_row_notfound BOOLEAN := TRUE;
611 CURSOR okc_spnv_pk_csr (p_id IN NUMBER) IS
612 SELECT '1'
613 FROM Okc_Span
614 WHERE id = p_id;
615 l_okc_spnv_pk okc_spnv_pk_csr%ROWTYPE;
616 BEGIN
617 x_return_status := OKC_API.G_RET_STS_SUCCESS;
618 IF (p_cylv_rec.SPN_ID IS NOT NULL AND
619 p_cylv_rec.SPN_ID <> OKC_API.G_MISS_NUM)
620 THEN
621 OPEN okc_spnv_pk_csr(p_cylv_rec.SPN_ID);
622 FETCH okc_spnv_pk_csr INTO l_okc_spnv_pk;
623 l_row_notfound := okc_spnv_pk_csr%NOTFOUND;
624 CLOSE okc_spnv_pk_csr;
625 IF (l_row_notfound) THEN
626 OKC_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'SPN_ID');
627 RAISE item_not_found_error;
628 END IF;
629 END IF;
630 EXCEPTION
631 WHEN item_not_found_error THEN
632 x_return_status := OKC_API.G_RET_STS_ERROR;
633 WHEN OTHERS THEN
634 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
635 p_msg_name => g_unexpected_error,
636 p_token1 => g_sqlcode_token,
637 p_token1_value => sqlcode,
638 p_token2 => g_col_name_token,
639 p_token2_value => 'SPN_ID',
640 p_token3 => g_sqlerrm_token,
641 p_token3_value => sqlerrm);
642 -- notify caller of an UNEXPECTED error
643 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
644 END Validate_Spn_Id ;
645
646 PROCEDURE Validate_Tve_Id_Limited (
647 x_return_status OUT NOCOPY VARCHAR2,
648 p_cylv_rec IN cylv_rec_type) IS
649 item_not_found_error EXCEPTION;
650 l_row_notfound BOOLEAN := TRUE;
651 CURSOR okc_tvev_pk_csr (p_id IN NUMBER) IS
652 SELECT '1'
653 FROM Okc_Timevalues
654 WHERE id = p_id
655 and tve_type in ('ISE','IGS');
656 l_okc_tvev_pk okc_tvev_pk_csr%ROWTYPE;
657 BEGIN
658 x_return_status := OKC_API.G_RET_STS_SUCCESS;
659 IF (p_cylv_rec.TVE_ID_LIMITED IS NOT NULL AND
660 p_cylv_rec.TVE_ID_LIMITED <> OKC_API.G_MISS_NUM)
661 THEN
662 OPEN okc_tvev_pk_csr(p_cylv_rec.TVE_ID_LIMITED);
663 FETCH okc_tvev_pk_csr INTO l_okc_tvev_pk;
664 l_row_notfound := okc_tvev_pk_csr%NOTFOUND;
668 RAISE item_not_found_error;
665 CLOSE okc_tvev_pk_csr;
666 IF (l_row_notfound) THEN
667 OKC_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'TVE_ID_LIMITED');
669 END IF;
670 END IF;
671 EXCEPTION
672 WHEN item_not_found_error THEN
673 x_return_status := OKC_API.G_RET_STS_ERROR;
674 WHEN OTHERS THEN
675 -- store SQL error message on message stack for caller
676 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
677 p_msg_name => g_unexpected_error,
678 p_token1 => g_sqlcode_token,
679 p_token1_value => sqlcode,
680 p_token2 => g_col_name_token,
681 p_token2_value => 'TVE_ID_LIMITED',
682 p_token3 => g_sqlerrm_token,
683 p_token3_value => sqlerrm);
684 -- notify caller of an UNEXPECTED error
685 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
686 END Validate_Tve_Id_Limited ;
687
688 PROCEDURE Validate_Time_Zone_Id (
689 x_return_status OUT NOCOPY VARCHAR2,
690 p_cylv_rec IN cylv_rec_type) IS
691 item_not_found_error EXCEPTION;
692 l_row_notfound BOOLEAN := TRUE;
693 l_row_found BOOLEAN := FALSE;
694 CURSOR okx_timezones_v_pk_csr (p_tze_id IN NUMBER) IS
695 SELECT '1'
696 FROM Okx_TimeZones_V
697 WHERE okx_timezones_v.timezone_id = p_tze_id;
698 l_okx_timezones_v_pk okx_timezones_v_pk_csr%ROWTYPE;
699 BEGIN
700 x_return_status := OKC_API.G_RET_STS_SUCCESS;
701 IF (p_cylv_rec.TZE_ID IS NOT NULL AND
702 p_cylv_rec.TZE_ID <> OKC_API.G_MISS_NUM)
703 THEN
704 OPEN okx_timezones_v_pk_csr(p_cylv_rec.TZE_ID);
705 FETCH okx_timezones_v_pk_csr INTO l_okx_timezones_v_pk;
706 l_row_notfound := okx_timezones_v_pk_csr%NOTFOUND;
707 CLOSE okx_timezones_v_pk_csr;
708 IF (l_row_notfound) THEN
709 OKC_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'TZE_ID');
710 RAISE item_not_found_error;
711 END IF;
712 END IF;
713 EXCEPTION
714 WHEN item_not_found_error THEN
715 x_return_status := OKC_API.G_RET_STS_ERROR;
716 WHEN OTHERS THEN
717 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
718 p_msg_name => g_unexpected_error,
719 p_token1 => g_sqlcode_token,
720 p_token1_value => sqlcode,
721 p_token2 => g_col_name_token,
722 p_token2_value => 'TZE_ID',
723 p_token3 => g_sqlerrm_token,
724 p_token3_value => sqlerrm);
725 -- notify caller of an UNEXPECTED error
726 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
727 END Validate_Time_Zone_Id ;
728 --Bug 3122962
729 /*
730 PROCEDURE Validate_SFWT_Flag (
731 x_return_status OUT NOCOPY VARCHAR2,
732 p_cylv_rec IN cylv_rec_type) IS
733 BEGIN
734 IF upper(p_cylv_rec.sfwt_flag) = 'Y' OR
735 upper(p_cylv_rec.sfwt_flag) = 'N'
736 THEN
737 IF p_cylv_rec.sfwt_flag = 'Y' OR
738 p_cylv_rec.sfwt_flag = 'N'
739 THEN
740 x_return_status := OKC_API.G_RET_STS_SUCCESS;
741 ELSE
742 OKC_API.set_message(G_APP_NAME, G_UPPERCASE_REQUIRED,G_COL_NAME_TOKEN,'SFWT_FLAG');
743 x_return_status := OKC_API.G_RET_STS_ERROR;
744 END IF;
745 ELSE
746 OKC_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'SFWT_FLAG');
747 x_return_status := OKC_API.G_RET_STS_ERROR;
748 END IF;
749 END Validate_SFWT_Flag;
750 */
751 FUNCTION Validate_Attributes (
752 p_cylv_rec IN cylv_rec_type
753 ) RETURN VARCHAR2 IS
754 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
755 x_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
756 BEGIN
757 IF p_cylv_rec.id = OKC_API.G_MISS_NUM OR
758 p_cylv_rec.id IS NULL
759 THEN
760 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'id');
761 x_return_status := OKC_API.G_RET_STS_ERROR;
762 ELSIF p_cylv_rec.object_version_number = OKC_API.G_MISS_NUM OR
763 p_cylv_rec.object_version_number IS NULL
764 THEN
765 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'object_version_number');
766 x_return_status := OKC_API.G_RET_STS_ERROR;
767 END IF;
768 IF p_cylv_rec.dnz_chr_id <> 0 Then
769 Validate_DNZ_Chr_Id (l_return_status,
770 p_cylv_rec);
771 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
772 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
773 x_return_status := l_return_status;
774 RAISE G_EXCEPTION_HALT_VALIDATION;
775 ELSE
776 x_return_status := l_return_status; -- record that there was an error
777 END IF;
778 END IF;
779 END IF;
780 IF (p_cylv_rec.tve_id_limited is NOT NULL AND
781 p_cylv_rec.tve_id_limited <> OKC_API.G_MISS_NUM) THEN
785 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
782 Validate_Tve_Id_Limited (l_return_status,
783 p_cylv_rec);
784 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
786 x_return_status := l_return_status;
787 RAISE G_EXCEPTION_HALT_VALIDATION;
788 ELSE
789 x_return_status := l_return_status; -- record that there was an error
790 END IF;
791 END IF;
792 END IF;
793 IF (p_cylv_rec.TZE_ID IS NOT NULL AND
794 p_cylv_rec.TZE_ID <> OKC_API.G_MISS_NUM)
795 THEN
796 Validate_Time_Zone_Id (l_return_status,
797 p_cylv_rec);
798 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
799 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
800 x_return_status := l_return_status;
801 RAISE G_EXCEPTION_HALT_VALIDATION;
802 ELSE
803 x_return_status := l_return_status; -- record that there was an error
804 END IF;
805 END IF;
806 END IF;
807 IF (p_cylv_rec.spn_id is NOT NULL) AND
808 (p_cylv_rec.spn_id <> OKC_API.G_MISS_NUM) THEN
809 Validate_Spn_Id (l_return_status,
810 p_cylv_rec);
811 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
812 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
813 x_return_status := l_return_status;
814 RAISE G_EXCEPTION_HALT_VALIDATION;
815 ELSE
816 x_return_status := l_return_status; -- record that there was an error
817 END IF;
818 END IF;
819 END IF;
820 Validate_Interval_YN (l_return_status,
821 p_cylv_rec);
822 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
823 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
824 x_return_status := l_return_status;
825 RAISE G_EXCEPTION_HALT_VALIDATION;
826 ELSE
827 x_return_status := l_return_status; -- record that there was an error
828 END IF;
829 END IF;
830 /* Validate_SFWT_Flag (l_return_status,
831 p_cylv_rec);
832 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
833 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
834 x_return_status := l_return_status;
835 RAISE G_EXCEPTION_HALT_VALIDATION;
836 ELSE
837 x_return_status := l_return_status; -- record that there was an error
838 END IF;
839 END IF;
840 */
841 RETURN(x_return_status);
842 EXCEPTION
843 WHEN G_EXCEPTION_HALT_VALIDATION THEN
844 RETURN(x_return_status);
845
846 WHEN OTHERS THEN
847 -- store SQL error message on message stack for caller
848 OKC_API.SET_MESSAGE(p_app_name => g_app_name,
849 p_msg_name => g_unexpected_error,
850 p_token1 => g_sqlcode_token,
851 p_token1_value => sqlcode,
852 p_token2 => g_sqlerrm_token,
853 p_token2_value => sqlerrm);
854
855 -- notify caller of an UNEXPECTED error
856 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
857 RETURN(x_return_status);
858 END Validate_Attributes;
859
860 ---------------------------------------------------------------------------
861 -- PROCEDURE Validate_Record
862 ---------------------------------------------------------------------------
863 ------------------------------------------
864 -- Validate_Record for:OKC_TIME_CYCLE_V --
865 ------------------------------------------
866 FUNCTION Validate_Record (
867 p_cylv_rec IN cylv_rec_type
868 ) RETURN VARCHAR2 IS
869 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
870 BEGIN
871 RETURN (l_return_status);
872 END Validate_Record;
873
874 --**** End of Change -------------------------------------------------------
875 ---------------------------------------------------------------------------
876 -- PROCEDURE Migrate
877 ---------------------------------------------------------------------------
878 PROCEDURE migrate (
879 p_from IN cylv_rec_type,
880 p_to IN OUT NOCOPY tve_rec_type
881 ) IS
882 l_tve_rec tve_rec_type;
883 BEGIN
884 -- **** The following line is added to populate record type for Supertype
885 p_to.tve_type := 'CYL';
886 p_to.id := p_from.id;
887 p_to.spn_id := p_from.spn_id;
888 p_to.tve_id_limited := p_from.tve_id_limited;
889 p_to.dnz_chr_id := p_from.dnz_chr_id;
890 p_to.tze_id := p_from.tze_id;
891 p_to.object_version_number := p_from.object_version_number;
892 p_to.created_by := p_from.created_by;
893 p_to.creation_date := p_from.creation_date;
894 p_to.last_updated_by := p_from.last_updated_by;
895 p_to.last_update_date := p_from.last_update_date;
896 p_to.interval_yn := p_from.interval_yn;
897 p_to.last_update_login := p_from.last_update_login;
898 p_to.attribute_category := p_from.attribute_category;
899 p_to.attribute1 := p_from.attribute1;
900 p_to.attribute2 := p_from.attribute2;
901 p_to.attribute3 := p_from.attribute3;
902 p_to.attribute4 := p_from.attribute4;
906 p_to.attribute8 := p_from.attribute8;
903 p_to.attribute5 := p_from.attribute5;
904 p_to.attribute6 := p_from.attribute6;
905 p_to.attribute7 := p_from.attribute7;
907 p_to.attribute9 := p_from.attribute9;
908 p_to.attribute10 := p_from.attribute10;
909 p_to.attribute11 := p_from.attribute11;
910 p_to.attribute12 := p_from.attribute12;
911 p_to.attribute13 := p_from.attribute13;
912 p_to.attribute14 := p_from.attribute14;
913 p_to.attribute15 := p_from.attribute15;
914 --Bug 3122962
915 p_to.description := p_from.description;
916 p_to.short_description := p_from.short_description;
917 p_to.comments := p_from.comments;
918 p_to.name := p_from.name;
919
920 -- **** Added null_out_defaults to overcome number initialization
921 -- problem while populating optional columns for supertypes from a subtype
922 l_tve_rec := null_out_defaults(p_to);
923 p_to := l_tve_rec;
924 END migrate;
925 PROCEDURE migrate (
926 p_from IN tve_rec_type,
927 p_to IN OUT NOCOPY cylv_rec_type
928 ) IS
929 BEGIN
930 p_to.id := p_from.id;
931 p_to.spn_id := p_from.spn_id;
932 p_to.tve_id_limited := p_from.tve_id_limited;
933 p_to.dnz_chr_id := p_from.dnz_chr_id;
934 p_to.tze_id := p_from.tze_id;
935 p_to.object_version_number := p_from.object_version_number;
936 p_to.created_by := p_from.created_by;
937 p_to.creation_date := p_from.creation_date;
938 p_to.last_updated_by := p_from.last_updated_by;
939 p_to.last_update_date := p_from.last_update_date;
940 p_to.interval_yn := p_from.interval_yn;
941 p_to.last_update_login := p_from.last_update_login;
942 p_to.attribute_category := p_from.attribute_category;
943 p_to.attribute1 := p_from.attribute1;
944 p_to.attribute2 := p_from.attribute2;
945 p_to.attribute3 := p_from.attribute3;
946 p_to.attribute4 := p_from.attribute4;
947 p_to.attribute5 := p_from.attribute5;
948 p_to.attribute6 := p_from.attribute6;
949 p_to.attribute7 := p_from.attribute7;
950 p_to.attribute8 := p_from.attribute8;
951 p_to.attribute9 := p_from.attribute9;
952 p_to.attribute10 := p_from.attribute10;
953 p_to.attribute11 := p_from.attribute11;
954 p_to.attribute12 := p_from.attribute12;
955 p_to.attribute13 := p_from.attribute13;
956 p_to.attribute14 := p_from.attribute14;
957 p_to.attribute15 := p_from.attribute15;
958 --Bug 3122962
959 p_to.description := p_from.description;
960 p_to.short_description := p_from.short_description;
961 p_to.comments := p_from.comments;
962 p_to.name := p_from.name;
963
964 END migrate;
965 /*
966 PROCEDURE migrate (
967 p_from IN cylv_rec_type,
968 p_to IN OUT NOCOPY okc_timevalues_tl_rec_type
969 ) IS
970 l_tve_tl_type okc_timevalues_tl_rec_type;
971 BEGIN
972 p_to.id := p_from.id;
973 p_to.sfwt_flag := p_from.sfwt_flag;
974 p_to.description := p_from.description;
975 p_to.short_description := p_from.short_description;
976 p_to.comments := p_from.comments;
977 p_to.name := p_from.name;
978 p_to.created_by := p_from.created_by;
979 p_to.creation_date := p_from.creation_date;
980 p_to.last_updated_by := p_from.last_updated_by;
981 p_to.last_update_date := p_from.last_update_date;
982 p_to.last_update_login := p_from.last_update_login;
983 -- **** Added null_out_defaults to overcome number initialization
984 -- problem while populating optional columns for supertypes from a subtype
985 l_tve_tl_type := null_out_defaults(p_to);
986 p_to := l_tve_tl_type;
987 END migrate;
988 PROCEDURE migrate (
989 p_from IN okc_timevalues_tl_rec_type,
990 p_to IN OUT NOCOPY cylv_rec_type
991 ) IS
992 BEGIN
993 p_to.id := p_from.id;
994 p_to.sfwt_flag := p_from.sfwt_flag;
995 p_to.description := p_from.description;
996 p_to.short_description := p_from.short_description;
997 p_to.comments := p_from.comments;
998 p_to.name := p_from.name;
999 p_to.created_by := p_from.created_by;
1000 p_to.creation_date := p_from.creation_date;
1001 p_to.last_updated_by := p_from.last_updated_by;
1002 p_to.last_update_date := p_from.last_update_date;
1003 p_to.last_update_login := p_from.last_update_login;
1004 END migrate;
1005 */
1006 ---------------------------------------------------------------------------
1007 -- PROCEDURE validate_row
1008 ---------------------------------------------------------------------------
1009 ---------------------------------------
1010 -- validate_row for:OKC_TIME_CYCLE_V --
1011 ---------------------------------------
1012 PROCEDURE validate_row(
1013 p_api_version IN NUMBER,
1014 p_init_msg_list IN VARCHAR2 ,
1015 x_return_status OUT NOCOPY VARCHAR2,
1016 x_msg_count OUT NOCOPY NUMBER,
1017 x_msg_data OUT NOCOPY VARCHAR2,
1018 p_cylv_rec IN cylv_rec_type) IS
1019
1020 l_api_version CONSTANT NUMBER := 1;
1021 l_api_name CONSTANT VARCHAR2(30) := 'V_validate_row';
1022 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1023 l_cylv_rec cylv_rec_type := p_cylv_rec;
1024 l_tve_rec tve_rec_type;
1028 G_PKG_NAME,
1025 --Bug 3122962 l_okc_timevalues_tl_rec okc_timevalues_tl_rec_type;
1026 BEGIN
1027 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1029 p_init_msg_list,
1030 l_api_version,
1031 p_api_version,
1032 '_PVT',
1033 x_return_status);
1034 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1035 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1036 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1037 RAISE OKC_API.G_EXCEPTION_ERROR;
1038 END IF;
1039 --- Validate all non-missing attributes (Item Level Validation)
1040 l_return_status := Validate_Attributes(l_cylv_rec);
1041 --- If any errors happen abort API
1042 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1043 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1044 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1045 RAISE OKC_API.G_EXCEPTION_ERROR;
1046 END IF;
1047 l_return_status := Validate_Record(l_cylv_rec);
1048 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1049 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1050 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1051 RAISE OKC_API.G_EXCEPTION_ERROR;
1052 END IF;
1053 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1054 EXCEPTION
1055 WHEN OKC_API.G_EXCEPTION_ERROR THEN
1056 x_return_status := OKC_API.HANDLE_EXCEPTIONS
1057 (
1058 l_api_name,
1059 G_PKG_NAME,
1060 'OKC_API.G_RET_STS_ERROR',
1061 x_msg_count,
1062 x_msg_data,
1063 '_PVT'
1064 );
1065 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1066 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1067 (
1068 l_api_name,
1069 G_PKG_NAME,
1070 'OKC_API.G_RET_STS_UNEXP_ERROR',
1071 x_msg_count,
1072 x_msg_data,
1073 '_PVT'
1074 );
1075 WHEN OTHERS THEN
1076 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1077 (
1078 l_api_name,
1079 G_PKG_NAME,
1080 'OTHERS',
1081 x_msg_count,
1082 x_msg_data,
1083 '_PVT'
1084 );
1085 END validate_row;
1086 ------------------------------------------
1087 -- PL/SQL TBL validate_row for:CYLV_TBL --
1088 ------------------------------------------
1089 PROCEDURE validate_row(
1090 p_api_version IN NUMBER,
1091 p_init_msg_list IN VARCHAR2 ,
1092 x_return_status OUT NOCOPY VARCHAR2,
1093 x_msg_count OUT NOCOPY NUMBER,
1094 x_msg_data OUT NOCOPY VARCHAR2,
1095 p_cylv_tbl IN cylv_tbl_type) IS
1096
1097 l_api_version CONSTANT NUMBER := 1;
1098 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_validate_row';
1099 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1100 i NUMBER := 0;
1101 BEGIN
1102 -- Make sure PL/SQL table has records in it before passing
1103 IF (p_cylv_tbl.COUNT > 0) THEN
1104 i := p_cylv_tbl.FIRST;
1105 LOOP
1106 validate_row (
1107 p_api_version => p_api_version,
1108 p_init_msg_list => p_init_msg_list,
1109 x_return_status => x_return_status,
1110 x_msg_count => x_msg_count,
1111 x_msg_data => x_msg_data,
1112 p_cylv_rec => p_cylv_tbl(i));
1113 EXIT WHEN (i = p_cylv_tbl.LAST);
1114 i := p_cylv_tbl.NEXT(i);
1115 END LOOP;
1116 END IF;
1117 EXCEPTION
1118 WHEN OKC_API.G_EXCEPTION_ERROR THEN
1119 x_return_status := OKC_API.HANDLE_EXCEPTIONS
1120 (
1121 l_api_name,
1122 G_PKG_NAME,
1123 'OKC_API.G_RET_STS_ERROR',
1124 x_msg_count,
1125 x_msg_data,
1126 '_PVT'
1127 );
1128 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1129 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1130 (
1131 l_api_name,
1132 G_PKG_NAME,
1133 'OKC_API.G_RET_STS_UNEXP_ERROR',
1134 x_msg_count,
1135 x_msg_data,
1136 '_PVT'
1137 );
1138 WHEN OTHERS THEN
1139 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1140 (
1141 l_api_name,
1142 G_PKG_NAME,
1143 'OTHERS',
1144 x_msg_count,
1145 x_msg_data,
1146 '_PVT'
1147 );
1148 END validate_row;
1149
1150 ---------------------------------------------------------------------------
1151 -- PROCEDURE insert_row
1152 ---------------------------------------------------------------------------
1153 -------------------------------------
1154 -- insert_row for:OKC_TIMEVALUES_B --
1155 -------------------------------------
1156 PROCEDURE insert_row(
1157 p_init_msg_list IN VARCHAR2 ,
1158 x_return_status OUT NOCOPY VARCHAR2,
1162 x_tve_rec OUT NOCOPY tve_rec_type) IS
1159 x_msg_count OUT NOCOPY NUMBER,
1160 x_msg_data OUT NOCOPY VARCHAR2,
1161 p_tve_rec IN tve_rec_type,
1163
1164 l_api_version CONSTANT NUMBER := 1;
1165 l_api_name CONSTANT VARCHAR2(30) := 'B_insert_row';
1166 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1167 l_tve_rec tve_rec_type := p_tve_rec;
1168 l_def_tve_rec tve_rec_type;
1169 -----------------------------------------
1170 -- Set_Attributes for:OKC_TIMEVALUES_B --
1171 -----------------------------------------
1172 FUNCTION Set_Attributes (
1173 p_tve_rec IN tve_rec_type,
1174 x_tve_rec OUT NOCOPY tve_rec_type
1175 ) RETURN VARCHAR2 IS
1176 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1177 BEGIN
1178 x_tve_rec := p_tve_rec;
1179 RETURN(l_return_status);
1180 END Set_Attributes;
1181 BEGIN
1182 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1183 p_init_msg_list,
1184 '_PVT',
1185 x_return_status);
1186 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1187 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1188 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1189 RAISE OKC_API.G_EXCEPTION_ERROR;
1190 END IF;
1191 --- Setting item attributes
1192 l_return_status := Set_Attributes(
1193 p_tve_rec, -- IN
1194 l_tve_rec); -- OUT
1195 --- If any errors happen abort API
1196 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1197 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1198 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1199 RAISE OKC_API.G_EXCEPTION_ERROR;
1200 END IF;
1201 INSERT INTO OKC_TIMEVALUES(
1202 id,
1203 spn_id,
1204 tve_id_offset,
1205 uom_code,
1206 cnh_id,
1207 tve_id_generated_by,
1208 tve_id_started,
1209 tve_id_ended,
1210 tve_id_limited,
1211 dnz_chr_id,
1212 tze_id,
1213 tve_type,
1214 object_version_number,
1215 created_by,
1216 creation_date,
1217 last_updated_by,
1218 last_update_date,
1219 duration,
1220 operator,
1221 before_after,
1222 datetime,
1223 month,
1224 day,
1225 hour,
1226 minute,
1227 second,
1228 nth,
1229 day_of_week,
1230 interval_yn,
1231 last_update_login,
1232 attribute_category,
1233 --Bug 3122962
1234 description,
1235 short_description,
1236 comments,
1237 name,
1238
1239 attribute1,
1240 attribute2,
1241 attribute3,
1242 attribute4,
1243 attribute5,
1244 attribute6,
1245 attribute7,
1246 attribute8,
1247 attribute9,
1248 attribute10,
1249 attribute11,
1250 attribute12,
1251 attribute13,
1252 attribute14,
1253 attribute15)
1254 VALUES (
1255 l_tve_rec.id,
1256 l_tve_rec.spn_id,
1257 l_tve_rec.tve_id_offset,
1258 l_tve_rec.uom_code,
1259 l_tve_rec.cnh_id,
1260 l_tve_rec.tve_id_generated_by,
1261 l_tve_rec.tve_id_started,
1262 l_tve_rec.tve_id_ended,
1263 l_tve_rec.tve_id_limited,
1264 l_tve_rec.dnz_chr_id,
1265 l_tve_rec.tze_id,
1266 l_tve_rec.tve_type,
1267 l_tve_rec.object_version_number,
1268 l_tve_rec.created_by,
1269 l_tve_rec.creation_date,
1270 l_tve_rec.last_updated_by,
1271 l_tve_rec.last_update_date,
1272 l_tve_rec.duration,
1273 l_tve_rec.operator,
1274 l_tve_rec.before_after,
1275 l_tve_rec.datetime,
1276 l_tve_rec.month,
1277 l_tve_rec.day,
1278 l_tve_rec.hour,
1279 l_tve_rec.minute,
1280 l_tve_rec.second,
1281 l_tve_rec.nth,
1282 l_tve_rec.day_of_week,
1283 l_tve_rec.interval_yn,
1284 l_tve_rec.last_update_login,
1285 l_tve_rec.attribute_category,
1286
1287 --Bug 3122962
1288 l_tve_rec.description,
1289 l_tve_rec.short_description,
1290 l_tve_rec.comments,
1291 l_tve_rec.name,
1292 l_tve_rec.attribute1,
1293 l_tve_rec.attribute2,
1294 l_tve_rec.attribute3,
1295 l_tve_rec.attribute4,
1296 l_tve_rec.attribute5,
1297 l_tve_rec.attribute6,
1298 l_tve_rec.attribute7,
1299 l_tve_rec.attribute8,
1300 l_tve_rec.attribute9,
1301 l_tve_rec.attribute10,
1302 l_tve_rec.attribute11,
1303 l_tve_rec.attribute12,
1304 l_tve_rec.attribute13,
1305 l_tve_rec.attribute14,
1306 l_tve_rec.attribute15);
1307 -- Set OUT values
1311 WHEN OKC_API.G_EXCEPTION_ERROR THEN
1308 x_tve_rec := l_tve_rec;
1309 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1310 EXCEPTION
1312 x_return_status := OKC_API.HANDLE_EXCEPTIONS
1313 (
1314 l_api_name,
1315 G_PKG_NAME,
1316 'OKC_API.G_RET_STS_ERROR',
1317 x_msg_count,
1318 x_msg_data,
1319 '_PVT'
1320 );
1321 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1322 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1323 (
1324 l_api_name,
1325 G_PKG_NAME,
1326 'OKC_API.G_RET_STS_UNEXP_ERROR',
1327 x_msg_count,
1328 x_msg_data,
1329 '_PVT'
1330 );
1331 WHEN OTHERS THEN
1332 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1333 (
1334 l_api_name,
1335 G_PKG_NAME,
1336 'OTHERS',
1337 x_msg_count,
1338 x_msg_data,
1339 '_PVT'
1340 );
1341 END insert_row;
1342 --------------------------------------
1343 -- insert_row for:OKC_TIMEVALUES_TL --
1344 --------------------------------------
1345 --Bug 3122962
1346 /* PROCEDURE insert_row(
1347 p_init_msg_list IN VARCHAR2 ,
1348 x_return_status OUT NOCOPY VARCHAR2,
1349 x_msg_count OUT NOCOPY NUMBER,
1350 x_msg_data OUT NOCOPY VARCHAR2,
1351 p_okc_timevalues_tl_rec IN okc_timevalues_tl_rec_type,
1352 x_okc_timevalues_tl_rec OUT NOCOPY okc_timevalues_tl_rec_type) IS
1353
1354 l_api_version CONSTANT NUMBER := 1;
1355 l_api_name CONSTANT VARCHAR2(30) := 'TL_insert_row';
1356 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1357 l_okc_timevalues_tl_rec okc_timevalues_tl_rec_type := p_okc_timevalues_tl_rec;
1358 l_def_okc_timevalues_tl_rec okc_timevalues_tl_rec_type;
1359 CURSOR get_languages IS
1360 SELECT *
1361 FROM FND_LANGUAGES
1362 WHERE INSTALLED_FLAG IN ('I', 'B');
1363 ------------------------------------------
1364 -- Set_Attributes for:OKC_TIMEVALUES_TL --
1365 ------------------------------------------
1366 FUNCTION Set_Attributes (
1367 p_okc_timevalues_tl_rec IN okc_timevalues_tl_rec_type,
1368 x_okc_timevalues_tl_rec OUT NOCOPY okc_timevalues_tl_rec_type
1369 ) RETURN VARCHAR2 IS
1370 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1371 BEGIN
1372 x_okc_timevalues_tl_rec := p_okc_timevalues_tl_rec;
1373 x_okc_timevalues_tl_rec.LANGUAGE := okc_util.get_userenv_lang;
1374 x_okc_timevalues_tl_rec.SOURCE_LANG := okc_util.get_userenv_lang;
1375 RETURN(l_return_status);
1376 END Set_Attributes;
1377 BEGIN
1378 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1379 p_init_msg_list,
1380 '_PVT',
1381 x_return_status);
1382 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1383 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1384 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1385 RAISE OKC_API.G_EXCEPTION_ERROR;
1386 END IF;
1387 --- Setting item attributes
1388 l_return_status := Set_Attributes(
1389 p_okc_timevalues_tl_rec, -- IN
1390 l_okc_timevalues_tl_rec); -- OUT
1391 --- If any errors happen abort API
1392 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1393 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1394 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1395 RAISE OKC_API.G_EXCEPTION_ERROR;
1396 END IF;
1397 FOR l_lang_rec IN get_languages LOOP
1398 l_okc_timevalues_tl_rec.language := l_lang_rec.language_code;
1399 INSERT INTO OKC_TIMEVALUES_TL(
1400 id,
1401 language,
1402 source_lang,
1403 sfwt_flag,
1404 description,
1405 short_description,
1406 comments,
1407 name,
1408 created_by,
1409 creation_date,
1410 last_updated_by,
1411 last_update_date,
1412 last_update_login)
1413 VALUES (
1414 l_okc_timevalues_tl_rec.id,
1415 l_okc_timevalues_tl_rec.language,
1416 l_okc_timevalues_tl_rec.source_lang,
1417 l_okc_timevalues_tl_rec.sfwt_flag,
1418 l_okc_timevalues_tl_rec.description,
1419 l_okc_timevalues_tl_rec.short_description,
1420 l_okc_timevalues_tl_rec.comments,
1421 l_okc_timevalues_tl_rec.name,
1422 l_okc_timevalues_tl_rec.created_by,
1423 l_okc_timevalues_tl_rec.creation_date,
1424 l_okc_timevalues_tl_rec.last_updated_by,
1425 l_okc_timevalues_tl_rec.last_update_date,
1426 l_okc_timevalues_tl_rec.last_update_login);
1427 END LOOP;
1428 -- Set OUT values
1429 x_okc_timevalues_tl_rec := l_okc_timevalues_tl_rec;
1430 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1431 EXCEPTION
1432 WHEN OKC_API.G_EXCEPTION_ERROR THEN
1433 x_return_status := OKC_API.HANDLE_EXCEPTIONS
1434 (
1435 l_api_name,
1436 G_PKG_NAME,
1437 'OKC_API.G_RET_STS_ERROR',
1441 );
1438 x_msg_count,
1439 x_msg_data,
1440 '_PVT'
1442 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1443 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1444 (
1445 l_api_name,
1446 G_PKG_NAME,
1447 'OKC_API.G_RET_STS_UNEXP_ERROR',
1448 x_msg_count,
1449 x_msg_data,
1450 '_PVT'
1451 );
1452 WHEN OTHERS THEN
1453 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1454 (
1455 l_api_name,
1456 G_PKG_NAME,
1457 'OTHERS',
1458 x_msg_count,
1459 x_msg_data,
1460 '_PVT'
1461 );
1462 END insert_row;
1463 */
1464 -------------------------------------
1465 -- insert_row for:OKC_TIME_CYCLE_V --
1466 -------------------------------------
1467 PROCEDURE insert_row(
1468 p_api_version IN NUMBER,
1469 p_init_msg_list IN VARCHAR2 ,
1470 x_return_status OUT NOCOPY VARCHAR2,
1471 x_msg_count OUT NOCOPY NUMBER,
1472 x_msg_data OUT NOCOPY VARCHAR2,
1473 p_cylv_rec IN cylv_rec_type,
1474 x_cylv_rec OUT NOCOPY cylv_rec_type) IS
1475
1476 l_api_version CONSTANT NUMBER := 1;
1477 l_api_name CONSTANT VARCHAR2(30) := 'V_insert_row';
1478 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1479 l_cylv_rec cylv_rec_type;
1480 l_def_cylv_rec cylv_rec_type;
1481 l_tve_rec tve_rec_type;
1482 lx_tve_rec tve_rec_type;
1483 --Bug 3122962 l_okc_timevalues_tl_rec okc_timevalues_tl_rec_type;
1484 --Bug 3122962 lx_okc_timevalues_tl_rec okc_timevalues_tl_rec_type;
1485 -------------------------------
1486 -- FUNCTION fill_who_columns --
1487 -------------------------------
1488 FUNCTION fill_who_columns (
1489 p_cylv_rec IN cylv_rec_type
1490 ) RETURN cylv_rec_type IS
1491 l_cylv_rec cylv_rec_type := p_cylv_rec;
1492 BEGIN
1493 l_cylv_rec.CREATION_DATE := SYSDATE;
1494 l_cylv_rec.CREATED_BY := FND_GLOBAL.USER_ID;
1495 l_cylv_rec.LAST_UPDATE_DATE := l_cylv_rec.CREATION_DATE;
1496 l_cylv_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
1497 l_cylv_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
1498 RETURN(l_cylv_rec);
1499 END fill_who_columns;
1500 -----------------------------------------
1501 -- Set_Attributes for:OKC_TIME_CYCLE_V --
1502 -----------------------------------------
1503 FUNCTION Set_Attributes (
1504 p_cylv_rec IN cylv_rec_type,
1505 x_cylv_rec OUT NOCOPY cylv_rec_type
1506 ) RETURN VARCHAR2 IS
1507 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1508 BEGIN
1509 x_cylv_rec := p_cylv_rec;
1510 -- **** Added the following line(s) for uppercasing *****
1511 -- x_cylv_rec.SFWT_FLAG := upper(p_cylv_rec.SFWT_FLAG);
1512 x_cylv_rec.INTERVAL_YN := upper(p_cylv_rec.INTERVAL_YN);
1513 x_cylv_rec.OBJECT_VERSION_NUMBER := 1;
1514 -- x_cylv_rec.SFWT_FLAG := 'N';
1515 RETURN(l_return_status);
1516 END Set_Attributes;
1517 BEGIN
1518 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1519 G_PKG_NAME,
1520 p_init_msg_list,
1521 l_api_version,
1522 p_api_version,
1523 '_PVT',
1524 x_return_status);
1525 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1526 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1527 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1528 RAISE OKC_API.G_EXCEPTION_ERROR;
1529 END IF;
1530 l_cylv_rec := null_out_defaults(p_cylv_rec);
1531 -- Set primary key value
1532 l_cylv_rec.ID := get_seq_id;
1533 --- Setting item attributes
1534 l_return_status := Set_Attributes(
1535 l_cylv_rec, -- IN
1536 l_def_cylv_rec); -- OUT
1537 --- If any errors happen abort API
1538 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1539 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1540 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1541 RAISE OKC_API.G_EXCEPTION_ERROR;
1542 END IF;
1543 l_def_cylv_rec := fill_who_columns(l_def_cylv_rec);
1544 --- Validate all non-missing attributes (Item Level Validation)
1545 l_return_status := Validate_Attributes(l_def_cylv_rec);
1546 --- If any errors happen abort API
1547 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1548 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1549 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1550 RAISE OKC_API.G_EXCEPTION_ERROR;
1551 END IF;
1552 l_return_status := Validate_Record(l_def_cylv_rec);
1553 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1554 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1555 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1556 RAISE OKC_API.G_EXCEPTION_ERROR;
1557 END IF;
1558 --------------------------------------
1559 -- Move VIEW record to "Child" records
1563 --------------------------------------------
1560 --------------------------------------
1561 migrate(l_def_cylv_rec, l_tve_rec);
1562 --Bug 3122962 migrate(l_def_cylv_rec, l_okc_timevalues_tl_rec);
1564 -- Call the INSERT_ROW for each child record
1565 --------------------------------------------
1566 insert_row(
1567 p_init_msg_list,
1568 x_return_status,
1569 x_msg_count,
1570 x_msg_data,
1571 l_tve_rec,
1572 lx_tve_rec
1573 );
1574 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1575 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1576 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
1577 RAISE OKC_API.G_EXCEPTION_ERROR;
1578 END IF;
1579 migrate(lx_tve_rec, l_def_cylv_rec);
1580 --Bug 3122962
1581 /*
1582 insert_row(
1583 p_init_msg_list,
1584 x_return_status,
1585 x_msg_count,
1586 x_msg_data,
1587 l_okc_timevalues_tl_rec,
1588 lx_okc_timevalues_tl_rec
1589 );
1590 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1591 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1592 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
1593 RAISE OKC_API.G_EXCEPTION_ERROR;
1594 END IF;
1595 migrate(lx_okc_timevalues_tl_rec, l_def_cylv_rec);
1596 */
1597 -- Set OUT values
1598 x_cylv_rec := l_def_cylv_rec;
1599 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1600 EXCEPTION
1601 WHEN OKC_API.G_EXCEPTION_ERROR THEN
1602 x_return_status := OKC_API.HANDLE_EXCEPTIONS
1603 (
1604 l_api_name,
1605 G_PKG_NAME,
1606 'OKC_API.G_RET_STS_ERROR',
1607 x_msg_count,
1608 x_msg_data,
1609 '_PVT'
1610 );
1611 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1612 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1613 (
1614 l_api_name,
1615 G_PKG_NAME,
1616 'OKC_API.G_RET_STS_UNEXP_ERROR',
1617 x_msg_count,
1618 x_msg_data,
1619 '_PVT'
1620 );
1621 WHEN OTHERS THEN
1622 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1623 (
1624 l_api_name,
1625 G_PKG_NAME,
1626 'OTHERS',
1627 x_msg_count,
1628 x_msg_data,
1629 '_PVT'
1630 );
1631 END insert_row;
1632 ----------------------------------------
1633 -- PL/SQL TBL insert_row for:CYLV_TBL --
1634 ----------------------------------------
1635 PROCEDURE insert_row(
1636 p_api_version IN NUMBER,
1637 p_init_msg_list IN VARCHAR2 ,
1638 x_return_status OUT NOCOPY VARCHAR2,
1639 x_msg_count OUT NOCOPY NUMBER,
1640 x_msg_data OUT NOCOPY VARCHAR2,
1641 p_cylv_tbl IN cylv_tbl_type,
1642 x_cylv_tbl OUT NOCOPY cylv_tbl_type) IS
1643
1644 l_api_version CONSTANT NUMBER := 1;
1645 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_insert_row';
1646 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1647 i NUMBER := 0;
1648 BEGIN
1649 -- Make sure PL/SQL table has records in it before passing
1650 IF (p_cylv_tbl.COUNT > 0) THEN
1651 i := p_cylv_tbl.FIRST;
1652 LOOP
1653 insert_row (
1654 p_api_version => p_api_version,
1655 p_init_msg_list => p_init_msg_list,
1656 x_return_status => x_return_status,
1657 x_msg_count => x_msg_count,
1658 x_msg_data => x_msg_data,
1659 p_cylv_rec => p_cylv_tbl(i),
1660 x_cylv_rec => x_cylv_tbl(i));
1661 EXIT WHEN (i = p_cylv_tbl.LAST);
1662 i := p_cylv_tbl.NEXT(i);
1663 END LOOP;
1664 END IF;
1665 EXCEPTION
1666 WHEN OKC_API.G_EXCEPTION_ERROR THEN
1667 x_return_status := OKC_API.HANDLE_EXCEPTIONS
1668 (
1669 l_api_name,
1670 G_PKG_NAME,
1671 'OKC_API.G_RET_STS_ERROR',
1672 x_msg_count,
1673 x_msg_data,
1674 '_PVT'
1675 );
1676 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1677 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1678 (
1679 l_api_name,
1680 G_PKG_NAME,
1681 'OKC_API.G_RET_STS_UNEXP_ERROR',
1682 x_msg_count,
1683 x_msg_data,
1684 '_PVT'
1685 );
1686 WHEN OTHERS THEN
1687 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1688 (
1689 l_api_name,
1690 G_PKG_NAME,
1691 'OTHERS',
1692 x_msg_count,
1693 x_msg_data,
1694 '_PVT'
1695 );
1696 END insert_row;
1697
1698 ---------------------------------------------------------------------------
1699 -- PROCEDURE lock_row
1700 ---------------------------------------------------------------------------
1701 -----------------------------------
1702 -- lock_row for:OKC_TIMEVALUES_B --
1703 -----------------------------------
1704 PROCEDURE lock_row(
1708 x_msg_data OUT NOCOPY VARCHAR2,
1705 p_init_msg_list IN VARCHAR2 ,
1706 x_return_status OUT NOCOPY VARCHAR2,
1707 x_msg_count OUT NOCOPY NUMBER,
1709 p_tve_rec IN tve_rec_type) IS
1710
1711 E_Resource_Busy EXCEPTION;
1712 PRAGMA EXCEPTION_INIT(E_Resource_Busy, -00054);
1713 CURSOR lock_csr (p_tve_rec IN tve_rec_type) IS
1714 --Bug 3122962
1715 SELECT OBJECT_VERSION_NUMBER
1716 FROM OKC_TIMEVALUES
1717 WHERE ID = p_tve_rec.id
1718 AND OBJECT_VERSION_NUMBER = p_tve_rec.object_version_number
1719 FOR UPDATE OF OBJECT_VERSION_NUMBER NOWAIT;
1720
1721 CURSOR lchk_csr (p_tve_rec IN tve_rec_type) IS
1722 SELECT OBJECT_VERSION_NUMBER
1723 FROM OKC_TIMEVALUES
1724 WHERE ID = p_tve_rec.id;
1725 l_api_version CONSTANT NUMBER := 1;
1726 l_api_name CONSTANT VARCHAR2(30) := 'B_lock_row';
1727 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1728 l_object_version_number OKC_TIMEVALUES.OBJECT_VERSION_NUMBER%TYPE;
1729 lc_object_version_number OKC_TIMEVALUES.OBJECT_VERSION_NUMBER%TYPE;
1730 l_row_notfound BOOLEAN := FALSE;
1731 lc_row_notfound BOOLEAN := FALSE;
1732 BEGIN
1733 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1734 p_init_msg_list,
1735 '_PVT',
1736 x_return_status);
1737 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1738 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1739 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1740 RAISE OKC_API.G_EXCEPTION_ERROR;
1741 END IF;
1742 BEGIN
1743 OPEN lock_csr(p_tve_rec);
1744 FETCH lock_csr INTO l_object_version_number;
1745 l_row_notfound := lock_csr%NOTFOUND;
1746 CLOSE lock_csr;
1747 EXCEPTION
1748 WHEN E_Resource_Busy THEN
1749 IF (lock_csr%ISOPEN) THEN
1750 CLOSE lock_csr;
1751 END IF;
1752 OKC_API.set_message(G_FND_APP,G_FORM_UNABLE_TO_RESERVE_REC);
1753 RAISE APP_EXCEPTIONS.RECORD_LOCK_EXCEPTION;
1754 END;
1755
1756 IF ( l_row_notfound ) THEN
1757 OPEN lchk_csr(p_tve_rec);
1758 FETCH lchk_csr INTO lc_object_version_number;
1759 lc_row_notfound := lchk_csr%NOTFOUND;
1760 CLOSE lchk_csr;
1761 END IF;
1762 IF (lc_row_notfound) THEN
1763 OKC_API.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
1764 RAISE OKC_API.G_EXCEPTION_ERROR;
1765 ELSIF lc_object_version_number > p_tve_rec.object_version_number THEN
1766 OKC_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1767 RAISE OKC_API.G_EXCEPTION_ERROR;
1768 ELSIF lc_object_version_number <> p_tve_rec.object_version_number THEN
1769 OKC_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1770 RAISE OKC_API.G_EXCEPTION_ERROR;
1771 ELSIF lc_object_version_number = -1 THEN
1772 OKC_API.set_message(G_APP_NAME,G_RECORD_LOGICALLY_DELETED);
1773 RAISE OKC_API.G_EXCEPTION_ERROR;
1774 END IF;
1775 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1776 EXCEPTION
1777 WHEN OKC_API.G_EXCEPTION_ERROR THEN
1778 x_return_status := OKC_API.HANDLE_EXCEPTIONS
1779 (
1780 l_api_name,
1781 G_PKG_NAME,
1782 'OKC_API.G_RET_STS_ERROR',
1783 x_msg_count,
1784 x_msg_data,
1785 '_PVT'
1786 );
1787 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1788 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1789 (
1790 l_api_name,
1791 G_PKG_NAME,
1792 'OKC_API.G_RET_STS_UNEXP_ERROR',
1793 x_msg_count,
1794 x_msg_data,
1795 '_PVT'
1796 );
1797 WHEN OTHERS THEN
1798 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1799 (
1800 l_api_name,
1801 G_PKG_NAME,
1802 'OTHERS',
1803 x_msg_count,
1804 x_msg_data,
1805 '_PVT'
1806 );
1807 END lock_row;
1808 ------------------------------------
1809 -- lock_row for:OKC_TIMEVALUES_TL --
1810 ------------------------------------
1811 --Bug 3122962
1812 /* PROCEDURE lock_row(
1813 p_init_msg_list IN VARCHAR2 ,
1814 x_return_status OUT NOCOPY VARCHAR2,
1815 x_msg_count OUT NOCOPY NUMBER,
1816 x_msg_data OUT NOCOPY VARCHAR2,
1817 p_okc_timevalues_tl_rec IN okc_timevalues_tl_rec_type) IS
1818
1819 E_Resource_Busy EXCEPTION;
1820 PRAGMA EXCEPTION_INIT(E_Resource_Busy, -00054);
1821 CURSOR lock_csr (p_okc_timevalues_tl_rec IN okc_timevalues_tl_rec_type) IS
1822 SELECT id
1823 FROM OKC_TIMEVALUES_TL
1824 WHERE ID = p_okc_timevalues_tl_rec.id
1825 FOR UPDATE NOWAIT;
1826
1827 l_api_version CONSTANT NUMBER := 1;
1828 l_api_name CONSTANT VARCHAR2(30) := 'TL_lock_row';
1829 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1830 l_lock_var lock_csr%ROWTYPE;
1831 l_row_notfound BOOLEAN := FALSE;
1832 lc_row_notfound BOOLEAN := FALSE;
1833 BEGIN
1837 x_return_status);
1834 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1835 p_init_msg_list,
1836 '_PVT',
1838 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1839 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1840 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1841 RAISE OKC_API.G_EXCEPTION_ERROR;
1842 END IF;
1843 BEGIN
1844 OPEN lock_csr(p_okc_timevalues_tl_rec);
1845 FETCH lock_csr INTO l_lock_var;
1846 l_row_notfound := lock_csr%NOTFOUND;
1847 CLOSE lock_csr;
1848 EXCEPTION
1849 WHEN E_Resource_Busy THEN
1850 IF (lock_csr%ISOPEN) THEN
1851 CLOSE lock_csr;
1852 END IF;
1853 OKC_API.set_message(G_FND_APP,G_FORM_UNABLE_TO_RESERVE_REC);
1854 RAISE APP_EXCEPTIONS.RECORD_LOCK_EXCEPTION;
1855 END;
1856
1857 IF ( l_row_notfound ) THEN
1858 OKC_API.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
1859 RAISE OKC_API.G_EXCEPTION_ERROR;
1860 END IF;
1861 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1862 EXCEPTION
1863 WHEN OKC_API.G_EXCEPTION_ERROR THEN
1864 x_return_status := OKC_API.HANDLE_EXCEPTIONS
1865 (
1866 l_api_name,
1867 G_PKG_NAME,
1868 'OKC_API.G_RET_STS_ERROR',
1869 x_msg_count,
1870 x_msg_data,
1871 '_PVT'
1872 );
1873 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1874 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1875 (
1876 l_api_name,
1877 G_PKG_NAME,
1878 'OKC_API.G_RET_STS_UNEXP_ERROR',
1879 x_msg_count,
1880 x_msg_data,
1881 '_PVT'
1882 );
1883 WHEN OTHERS THEN
1884 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1885 (
1886 l_api_name,
1887 G_PKG_NAME,
1888 'OTHERS',
1889 x_msg_count,
1890 x_msg_data,
1891 '_PVT'
1892 );
1893 END lock_row;
1894 */ -----------------------------------
1895 -- lock_row for:OKC_TIME_CYCLE_V --
1896 -----------------------------------
1897 PROCEDURE lock_row(
1898 p_api_version IN NUMBER,
1899 p_init_msg_list IN VARCHAR2 ,
1900 x_return_status OUT NOCOPY VARCHAR2,
1901 x_msg_count OUT NOCOPY NUMBER,
1902 x_msg_data OUT NOCOPY VARCHAR2,
1903 p_cylv_rec IN cylv_rec_type) IS
1904
1905 l_api_version CONSTANT NUMBER := 1;
1906 l_api_name CONSTANT VARCHAR2(30) := 'V_lock_row';
1907 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1908 l_tve_rec tve_rec_type;
1909 --Bug 3122962 l_okc_timevalues_tl_rec okc_timevalues_tl_rec_type;
1910 BEGIN
1911 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
1912 G_PKG_NAME,
1913 p_init_msg_list,
1914 l_api_version,
1915 p_api_version,
1916 '_PVT',
1917 x_return_status);
1918 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1919 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1920 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
1921 RAISE OKC_API.G_EXCEPTION_ERROR;
1922 END IF;
1923 --------------------------------------
1924 -- Move VIEW record to "Child" records
1925 --------------------------------------
1926 migrate(p_cylv_rec, l_tve_rec);
1927 --Bug 3122962 migrate(p_cylv_rec, l_okc_timevalues_tl_rec);
1928 --------------------------------------------
1929 -- Call the LOCK_ROW for each child record
1930 --------------------------------------------
1931 lock_row(
1932 p_init_msg_list,
1933 x_return_status,
1934 x_msg_count,
1935 x_msg_data,
1936 l_tve_rec
1937 );
1938 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1939 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1940 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
1941 RAISE OKC_API.G_EXCEPTION_ERROR;
1942 END IF;
1943 --Bug 3122962
1944 /*
1945 lock_row(
1946 p_init_msg_list,
1947 x_return_status,
1948 x_msg_count,
1949 x_msg_data,
1950 l_okc_timevalues_tl_rec
1951 );
1952 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1953 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
1954 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
1955 RAISE OKC_API.G_EXCEPTION_ERROR;
1956 END IF;
1957 */
1958 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
1959 EXCEPTION
1960 WHEN OKC_API.G_EXCEPTION_ERROR THEN
1961 x_return_status := OKC_API.HANDLE_EXCEPTIONS
1962 (
1963 l_api_name,
1964 G_PKG_NAME,
1965 'OKC_API.G_RET_STS_ERROR',
1966 x_msg_count,
1967 x_msg_data,
1968 '_PVT'
1969 );
1970 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1974 G_PKG_NAME,
1971 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1972 (
1973 l_api_name,
1975 'OKC_API.G_RET_STS_UNEXP_ERROR',
1976 x_msg_count,
1977 x_msg_data,
1978 '_PVT'
1979 );
1980 WHEN OTHERS THEN
1981 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
1982 (
1983 l_api_name,
1984 G_PKG_NAME,
1985 'OTHERS',
1986 x_msg_count,
1987 x_msg_data,
1988 '_PVT'
1989 );
1990 END lock_row;
1991 --------------------------------------
1992 -- PL/SQL TBL lock_row for:CYLV_TBL --
1993 --------------------------------------
1994 PROCEDURE lock_row(
1995 p_api_version IN NUMBER,
1996 p_init_msg_list IN VARCHAR2 ,
1997 x_return_status OUT NOCOPY VARCHAR2,
1998 x_msg_count OUT NOCOPY NUMBER,
1999 x_msg_data OUT NOCOPY VARCHAR2,
2000 p_cylv_tbl IN cylv_tbl_type) IS
2001
2002 l_api_version CONSTANT NUMBER := 1;
2003 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_lock_row';
2004 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2005 i NUMBER := 0;
2006 BEGIN
2007 -- Make sure PL/SQL table has records in it before passing
2008 IF (p_cylv_tbl.COUNT > 0) THEN
2009 i := p_cylv_tbl.FIRST;
2010 LOOP
2011 lock_row (
2012 p_api_version => p_api_version,
2013 p_init_msg_list => p_init_msg_list,
2014 x_return_status => x_return_status,
2015 x_msg_count => x_msg_count,
2016 x_msg_data => x_msg_data,
2017 p_cylv_rec => p_cylv_tbl(i));
2018 EXIT WHEN (i = p_cylv_tbl.LAST);
2019 i := p_cylv_tbl.NEXT(i);
2020 END LOOP;
2021 END IF;
2022 EXCEPTION
2023 WHEN OKC_API.G_EXCEPTION_ERROR THEN
2024 x_return_status := OKC_API.HANDLE_EXCEPTIONS
2025 (
2026 l_api_name,
2027 G_PKG_NAME,
2028 'OKC_API.G_RET_STS_ERROR',
2029 x_msg_count,
2030 x_msg_data,
2031 '_PVT'
2032 );
2033 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2034 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2035 (
2036 l_api_name,
2037 G_PKG_NAME,
2038 'OKC_API.G_RET_STS_UNEXP_ERROR',
2039 x_msg_count,
2040 x_msg_data,
2041 '_PVT'
2042 );
2043 WHEN OTHERS THEN
2044 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2045 (
2046 l_api_name,
2047 G_PKG_NAME,
2048 'OTHERS',
2049 x_msg_count,
2050 x_msg_data,
2051 '_PVT'
2052 );
2053 END lock_row;
2054
2055 ---------------------------------------------------------------------------
2056 -- PROCEDURE update_row
2057 ---------------------------------------------------------------------------
2058 -------------------------------------
2059 -- update_row for:OKC_TIMEVALUES_B --
2060 -------------------------------------
2061 PROCEDURE update_row(
2062 p_init_msg_list IN VARCHAR2 ,
2063 x_return_status OUT NOCOPY VARCHAR2,
2064 x_msg_count OUT NOCOPY NUMBER,
2065 x_msg_data OUT NOCOPY VARCHAR2,
2066 p_tve_rec IN tve_rec_type,
2067 x_tve_rec OUT NOCOPY tve_rec_type) IS
2068
2069 l_api_version CONSTANT NUMBER := 1;
2070 l_api_name CONSTANT VARCHAR2(30) := 'B_update_row';
2071 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2072 l_tve_rec tve_rec_type := p_tve_rec;
2073 l_def_tve_rec tve_rec_type;
2074 l_row_notfound BOOLEAN := TRUE;
2075 ----------------------------------
2076 -- FUNCTION populate_new_record --
2077 ----------------------------------
2078 FUNCTION populate_new_record (
2079 p_tve_rec IN tve_rec_type,
2080 x_tve_rec OUT NOCOPY tve_rec_type
2081 ) RETURN VARCHAR2 IS
2082 l_tve_rec tve_rec_type;
2083 l_row_notfound BOOLEAN := TRUE;
2084 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2085 BEGIN
2086 x_tve_rec := p_tve_rec;
2087 -- Get current database values
2088 l_tve_rec := get_rec(p_tve_rec, l_row_notfound);
2089 IF (l_row_notfound) THEN
2090 l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
2091 END IF;
2092 IF (x_tve_rec.id = OKC_API.G_MISS_NUM)
2093 THEN
2094 x_tve_rec.id := l_tve_rec.id;
2095 END IF;
2096 IF (x_tve_rec.spn_id = OKC_API.G_MISS_NUM)
2097 THEN
2098 x_tve_rec.spn_id := l_tve_rec.spn_id;
2099 END IF;
2100 IF (x_tve_rec.tve_id_offset = OKC_API.G_MISS_NUM)
2101 THEN
2102 x_tve_rec.tve_id_offset := l_tve_rec.tve_id_offset;
2103 END IF;
2104 IF (x_tve_rec.uom_code = OKC_API.G_MISS_CHAR)
2105 THEN
2106 x_tve_rec.uom_code := l_tve_rec.uom_code;
2110 x_tve_rec.cnh_id := l_tve_rec.cnh_id;
2107 END IF;
2108 IF (x_tve_rec.cnh_id = OKC_API.G_MISS_NUM)
2109 THEN
2111 END IF;
2112 IF (x_tve_rec.tve_id_generated_by = OKC_API.G_MISS_NUM)
2113 THEN
2114 x_tve_rec.tve_id_generated_by := l_tve_rec.tve_id_generated_by;
2115 END IF;
2116 IF (x_tve_rec.tve_id_started = OKC_API.G_MISS_NUM)
2117 THEN
2118 x_tve_rec.tve_id_started := l_tve_rec.tve_id_started;
2119 END IF;
2120 IF (x_tve_rec.tve_id_ended = OKC_API.G_MISS_NUM)
2121 THEN
2122 x_tve_rec.tve_id_ended := l_tve_rec.tve_id_ended;
2123 END IF;
2124 IF (x_tve_rec.tve_id_limited = OKC_API.G_MISS_NUM)
2125 THEN
2126 x_tve_rec.tve_id_limited := l_tve_rec.tve_id_limited;
2127 END IF;
2128 IF (x_tve_rec.dnz_chr_id = OKC_API.G_MISS_NUM)
2129 THEN
2130 x_tve_rec.dnz_chr_id := l_tve_rec.dnz_chr_id;
2131 END IF;
2132 IF (x_tve_rec.tze_id = OKC_API.G_MISS_NUM)
2133 THEN
2134 x_tve_rec.tze_id := l_tve_rec.tze_id;
2135 END IF;
2136 IF (x_tve_rec.tve_type = OKC_API.G_MISS_CHAR)
2137 THEN
2138 x_tve_rec.tve_type := l_tve_rec.tve_type;
2139 END IF;
2140 IF (x_tve_rec.object_version_number = OKC_API.G_MISS_NUM)
2141 THEN
2142 x_tve_rec.object_version_number := l_tve_rec.object_version_number;
2143 END IF;
2144 IF (x_tve_rec.created_by = OKC_API.G_MISS_NUM)
2145 THEN
2146 x_tve_rec.created_by := l_tve_rec.created_by;
2147 END IF;
2148 IF (x_tve_rec.creation_date = OKC_API.G_MISS_DATE)
2149 THEN
2150 x_tve_rec.creation_date := l_tve_rec.creation_date;
2151 END IF;
2152 IF (x_tve_rec.last_updated_by = OKC_API.G_MISS_NUM)
2153 THEN
2154 x_tve_rec.last_updated_by := l_tve_rec.last_updated_by;
2155 END IF;
2156 IF (x_tve_rec.last_update_date = OKC_API.G_MISS_DATE)
2157 THEN
2158 x_tve_rec.last_update_date := l_tve_rec.last_update_date;
2159 END IF;
2160 IF (x_tve_rec.duration = OKC_API.G_MISS_NUM)
2161 THEN
2162 x_tve_rec.duration := l_tve_rec.duration;
2163 END IF;
2164 IF (x_tve_rec.operator = OKC_API.G_MISS_CHAR)
2165 THEN
2166 x_tve_rec.operator := l_tve_rec.operator;
2167 END IF;
2168 IF (x_tve_rec.before_after = OKC_API.G_MISS_CHAR)
2169 THEN
2170 x_tve_rec.before_after := l_tve_rec.before_after;
2171 END IF;
2172 IF (x_tve_rec.datetime = OKC_API.G_MISS_DATE)
2173 THEN
2174 x_tve_rec.datetime := l_tve_rec.datetime;
2175 END IF;
2176 IF (x_tve_rec.month = OKC_API.G_MISS_NUM)
2177 THEN
2178 x_tve_rec.month := l_tve_rec.month;
2179 END IF;
2180 IF (x_tve_rec.day = OKC_API.G_MISS_NUM)
2181 THEN
2182 x_tve_rec.day := l_tve_rec.day;
2183 END IF;
2184 IF (x_tve_rec.hour = OKC_API.G_MISS_NUM)
2185 THEN
2186 x_tve_rec.hour := l_tve_rec.hour;
2187 END IF;
2188 IF (x_tve_rec.minute = OKC_API.G_MISS_NUM)
2189 THEN
2190 x_tve_rec.minute := l_tve_rec.minute;
2191 END IF;
2192 IF (x_tve_rec.second = OKC_API.G_MISS_NUM)
2193 THEN
2194 x_tve_rec.second := l_tve_rec.second;
2195 END IF;
2196 IF (x_tve_rec.nth = OKC_API.G_MISS_NUM)
2197 THEN
2198 x_tve_rec.nth := l_tve_rec.nth;
2199 END IF;
2200 IF (x_tve_rec.day_of_week = OKC_API.G_MISS_CHAR)
2201 THEN
2202 x_tve_rec.day_of_week := l_tve_rec.day_of_week;
2203 END IF;
2204 IF (x_tve_rec.interval_yn = OKC_API.G_MISS_CHAR)
2205 THEN
2206 x_tve_rec.interval_yn := l_tve_rec.interval_yn;
2207 END IF;
2208 IF (x_tve_rec.last_update_login = OKC_API.G_MISS_NUM)
2209 THEN
2210 x_tve_rec.last_update_login := l_tve_rec.last_update_login;
2211 END IF;
2212 IF (x_tve_rec.attribute_category = OKC_API.G_MISS_CHAR)
2213 THEN
2214 x_tve_rec.attribute_category := l_tve_rec.attribute_category;
2215 END IF;
2216 IF (x_tve_rec.attribute1 = OKC_API.G_MISS_CHAR)
2217 THEN
2218 x_tve_rec.attribute1 := l_tve_rec.attribute1;
2219 END IF;
2220 IF (x_tve_rec.attribute2 = OKC_API.G_MISS_CHAR)
2221 THEN
2222 x_tve_rec.attribute2 := l_tve_rec.attribute2;
2223 END IF;
2224 IF (x_tve_rec.attribute3 = OKC_API.G_MISS_CHAR)
2225 THEN
2226 x_tve_rec.attribute3 := l_tve_rec.attribute3;
2227 END IF;
2228 IF (x_tve_rec.attribute4 = OKC_API.G_MISS_CHAR)
2229 THEN
2230 x_tve_rec.attribute4 := l_tve_rec.attribute4;
2231 END IF;
2232 IF (x_tve_rec.attribute5 = OKC_API.G_MISS_CHAR)
2233 THEN
2234 x_tve_rec.attribute5 := l_tve_rec.attribute5;
2235 END IF;
2236 IF (x_tve_rec.attribute6 = OKC_API.G_MISS_CHAR)
2237 THEN
2238 x_tve_rec.attribute6 := l_tve_rec.attribute6;
2239 END IF;
2240 IF (x_tve_rec.attribute7 = OKC_API.G_MISS_CHAR)
2241 THEN
2242 x_tve_rec.attribute7 := l_tve_rec.attribute7;
2243 END IF;
2244 IF (x_tve_rec.attribute8 = OKC_API.G_MISS_CHAR)
2245 THEN
2249 THEN
2246 x_tve_rec.attribute8 := l_tve_rec.attribute8;
2247 END IF;
2248 IF (x_tve_rec.attribute9 = OKC_API.G_MISS_CHAR)
2250 x_tve_rec.attribute9 := l_tve_rec.attribute9;
2251 END IF;
2252 IF (x_tve_rec.attribute10 = OKC_API.G_MISS_CHAR)
2253 THEN
2254 x_tve_rec.attribute10 := l_tve_rec.attribute10;
2255 END IF;
2256 IF (x_tve_rec.attribute11 = OKC_API.G_MISS_CHAR)
2257 THEN
2258 x_tve_rec.attribute11 := l_tve_rec.attribute11;
2259 END IF;
2260 IF (x_tve_rec.attribute12 = OKC_API.G_MISS_CHAR)
2261 THEN
2262 x_tve_rec.attribute12 := l_tve_rec.attribute12;
2263 END IF;
2264 IF (x_tve_rec.attribute13 = OKC_API.G_MISS_CHAR)
2265 THEN
2266 x_tve_rec.attribute13 := l_tve_rec.attribute13;
2267 END IF;
2268 IF (x_tve_rec.attribute14 = OKC_API.G_MISS_CHAR)
2269 THEN
2270 x_tve_rec.attribute14 := l_tve_rec.attribute14;
2271 END IF;
2272 IF (x_tve_rec.attribute15 = OKC_API.G_MISS_CHAR)
2273 THEN
2274 x_tve_rec.attribute15 := l_tve_rec.attribute15;
2275 END IF;
2276 --Bug 3122962
2277 IF (x_tve_rec.description = OKC_API.G_MISS_CHAR)
2278 THEN
2279 x_tve_rec.description := x_tve_rec.description;
2280 END IF;
2281 IF (x_tve_rec.short_description = OKC_API.G_MISS_CHAR)
2282 THEN
2283 x_tve_rec.short_description := x_tve_rec.short_description;
2284 END IF;
2285 IF (x_tve_rec.comments = OKC_API.G_MISS_CHAR)
2286 THEN
2287 x_tve_rec.comments := x_tve_rec.comments;
2288 END IF;
2289 IF (x_tve_rec.name = OKC_API.G_MISS_CHAR)
2290 THEN
2291 x_tve_rec.name := x_tve_rec.name;
2292 END IF;
2293
2294
2295 RETURN(l_return_status);
2296 END populate_new_record;
2297 -----------------------------------------
2298 -- Set_Attributes for:OKC_TIMEVALUES_B --
2299 -----------------------------------------
2300 FUNCTION Set_Attributes (
2301 p_tve_rec IN tve_rec_type,
2302 x_tve_rec OUT NOCOPY tve_rec_type
2303 ) RETURN VARCHAR2 IS
2304 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2305 BEGIN
2306 x_tve_rec := p_tve_rec;
2307 RETURN(l_return_status);
2308 END Set_Attributes;
2309 BEGIN
2310 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
2311 p_init_msg_list,
2312 '_PVT',
2313 x_return_status);
2314 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2315 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2316 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2317 RAISE OKC_API.G_EXCEPTION_ERROR;
2318 END IF;
2319 --- Setting item attributes
2320 l_return_status := Set_Attributes(
2321 p_tve_rec, -- IN
2322 l_tve_rec); -- OUT
2323 --- If any errors happen abort API
2324 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2325 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2326 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2327 RAISE OKC_API.G_EXCEPTION_ERROR;
2328 END IF;
2329 l_return_status := populate_new_record(l_tve_rec, l_def_tve_rec);
2330 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2331 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2332 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2333 RAISE OKC_API.G_EXCEPTION_ERROR;
2334 END IF;
2335 UPDATE OKC_TIMEVALUES
2336 SET SPN_ID = l_def_tve_rec.spn_id,
2337 TVE_ID_OFFSET = l_def_tve_rec.tve_id_offset,
2338 uom_code = l_def_tve_rec.uom_code,
2339 CNH_ID = l_def_tve_rec.cnh_id,
2340 TVE_ID_GENERATED_BY = l_def_tve_rec.tve_id_generated_by,
2341 TVE_ID_STARTED = l_def_tve_rec.tve_id_started,
2342 TVE_ID_ENDED = l_def_tve_rec.tve_id_ended,
2343 TVE_ID_LIMITED = l_def_tve_rec.tve_id_limited,
2344 DNZ_CHR_ID = l_def_tve_rec.dnz_chr_id,
2345 TZE_ID = l_def_tve_rec.tze_id,
2346 TVE_TYPE = l_def_tve_rec.tve_type,
2347 OBJECT_VERSION_NUMBER = l_def_tve_rec.object_version_number,
2348 CREATED_BY = l_def_tve_rec.created_by,
2349 CREATION_DATE = l_def_tve_rec.creation_date,
2350 LAST_UPDATED_BY = l_def_tve_rec.last_updated_by,
2351 LAST_UPDATE_DATE = l_def_tve_rec.last_update_date,
2352 DURATION = l_def_tve_rec.duration,
2353 OPERATOR = l_def_tve_rec.operator,
2354 BEFORE_AFTER = l_def_tve_rec.before_after,
2355 DATETIME = l_def_tve_rec.datetime,
2356 MONTH = l_def_tve_rec.month,
2357 DAY = l_def_tve_rec.day,
2358 HOUR = l_def_tve_rec.hour,
2359 MINUTE = l_def_tve_rec.minute,
2360 SECOND = l_def_tve_rec.second,
2361 NTH = l_def_tve_rec.nth,
2362 DAY_OF_WEEK = l_def_tve_rec.day_of_week,
2363 INTERVAL_YN = l_def_tve_rec.interval_yn,
2364 LAST_UPDATE_LOGIN = l_def_tve_rec.last_update_login,
2365 ATTRIBUTE_CATEGORY = l_def_tve_rec.attribute_category,
2366 --Bug 3122962
2367 DESCRIPTION = l_def_tve_rec.description,
2368 SHORT_DESCRIPTION = l_def_tve_rec.short_description,
2369 COMMENTS = l_def_tve_rec.comments,
2370 NAME = l_def_tve_rec.name,
2374 ATTRIBUTE3 = l_def_tve_rec.attribute3,
2371
2372 ATTRIBUTE1 = l_def_tve_rec.attribute1,
2373 ATTRIBUTE2 = l_def_tve_rec.attribute2,
2375 ATTRIBUTE4 = l_def_tve_rec.attribute4,
2376 ATTRIBUTE5 = l_def_tve_rec.attribute5,
2377 ATTRIBUTE6 = l_def_tve_rec.attribute6,
2378 ATTRIBUTE7 = l_def_tve_rec.attribute7,
2379 ATTRIBUTE8 = l_def_tve_rec.attribute8,
2380 ATTRIBUTE9 = l_def_tve_rec.attribute9,
2381 ATTRIBUTE10 = l_def_tve_rec.attribute10,
2382 ATTRIBUTE11 = l_def_tve_rec.attribute11,
2383 ATTRIBUTE12 = l_def_tve_rec.attribute12,
2384 ATTRIBUTE13 = l_def_tve_rec.attribute13,
2385 ATTRIBUTE14 = l_def_tve_rec.attribute14,
2386 ATTRIBUTE15 = l_def_tve_rec.attribute15
2387 WHERE ID = l_def_tve_rec.id;
2388 x_tve_rec := l_def_tve_rec;
2389 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2390 EXCEPTION
2391 WHEN OKC_API.G_EXCEPTION_ERROR THEN
2392 x_return_status := OKC_API.HANDLE_EXCEPTIONS
2393 (
2394 l_api_name,
2395 G_PKG_NAME,
2396 'OKC_API.G_RET_STS_ERROR',
2397 x_msg_count,
2398 x_msg_data,
2399 '_PVT'
2400 );
2401 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2402 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2403 (
2404 l_api_name,
2405 G_PKG_NAME,
2406 'OKC_API.G_RET_STS_UNEXP_ERROR',
2407 x_msg_count,
2408 x_msg_data,
2409 '_PVT'
2410 );
2411 WHEN OTHERS THEN
2412 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2413 (
2414 l_api_name,
2415 G_PKG_NAME,
2416 'OTHERS',
2417 x_msg_count,
2418 x_msg_data,
2419 '_PVT'
2420 );
2421 END update_row;
2422 --------------------------------------
2423 -- update_row for:OKC_TIMEVALUES_TL --
2424 --------------------------------------
2425 --Bug 3122962
2426 /*
2427 PROCEDURE update_row(
2428 p_init_msg_list IN VARCHAR2 ,
2429 x_return_status OUT NOCOPY VARCHAR2,
2430 x_msg_count OUT NOCOPY NUMBER,
2431 x_msg_data OUT NOCOPY VARCHAR2,
2432 p_okc_timevalues_tl_rec IN okc_timevalues_tl_rec_type,
2433 x_okc_timevalues_tl_rec OUT NOCOPY okc_timevalues_tl_rec_type) IS
2434
2435 l_api_version CONSTANT NUMBER := 1;
2436 l_api_name CONSTANT VARCHAR2(30) := 'TL_update_row';
2437 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2438 l_okc_timevalues_tl_rec okc_timevalues_tl_rec_type := p_okc_timevalues_tl_rec;
2439 l_def_okc_timevalues_tl_rec okc_timevalues_tl_rec_type;
2440 l_row_notfound BOOLEAN := TRUE;
2441 ----------------------------------
2442 -- FUNCTION populate_new_record --
2443 ----------------------------------
2444 FUNCTION populate_new_record (
2445 p_okc_timevalues_tl_rec IN okc_timevalues_tl_rec_type,
2446 x_okc_timevalues_tl_rec OUT NOCOPY okc_timevalues_tl_rec_type
2447 ) RETURN VARCHAR2 IS
2448 l_okc_timevalues_tl_rec okc_timevalues_tl_rec_type;
2449 l_row_notfound BOOLEAN := TRUE;
2450 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2451 BEGIN
2452 x_okc_timevalues_tl_rec := p_okc_timevalues_tl_rec;
2453 -- Get current database values
2454 l_okc_timevalues_tl_rec := get_rec(p_okc_timevalues_tl_rec, l_row_notfound);
2455 IF (l_row_notfound) THEN
2456 l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
2457 END IF;
2458 IF (x_okc_timevalues_tl_rec.id = OKC_API.G_MISS_NUM)
2459 THEN
2460 x_okc_timevalues_tl_rec.id := l_okc_timevalues_tl_rec.id;
2461 END IF;
2462 IF (x_okc_timevalues_tl_rec.language = OKC_API.G_MISS_CHAR)
2463 THEN
2464 x_okc_timevalues_tl_rec.language := l_okc_timevalues_tl_rec.language;
2465 END IF;
2466 IF (x_okc_timevalues_tl_rec.source_lang = OKC_API.G_MISS_CHAR)
2467 THEN
2468 x_okc_timevalues_tl_rec.source_lang := l_okc_timevalues_tl_rec.source_lang;
2469 END IF;
2470 IF (x_okc_timevalues_tl_rec.sfwt_flag = OKC_API.G_MISS_CHAR)
2471 THEN
2472 x_okc_timevalues_tl_rec.sfwt_flag := l_okc_timevalues_tl_rec.sfwt_flag;
2473 END IF;
2474 IF (x_okc_timevalues_tl_rec.description = OKC_API.G_MISS_CHAR)
2475 THEN
2476 x_okc_timevalues_tl_rec.description := l_okc_timevalues_tl_rec.description;
2477 END IF;
2478 IF (x_okc_timevalues_tl_rec.short_description = OKC_API.G_MISS_CHAR)
2479 THEN
2480 x_okc_timevalues_tl_rec.short_description := l_okc_timevalues_tl_rec.short_description;
2481 END IF;
2482 IF (x_okc_timevalues_tl_rec.comments = OKC_API.G_MISS_CHAR)
2483 THEN
2484 x_okc_timevalues_tl_rec.comments := l_okc_timevalues_tl_rec.comments;
2485 END IF;
2486 IF (x_okc_timevalues_tl_rec.name = OKC_API.G_MISS_CHAR)
2487 THEN
2488 x_okc_timevalues_tl_rec.name := l_okc_timevalues_tl_rec.name;
2489 END IF;
2490 IF (x_okc_timevalues_tl_rec.created_by = OKC_API.G_MISS_NUM)
2491 THEN
2492 x_okc_timevalues_tl_rec.created_by := l_okc_timevalues_tl_rec.created_by;
2493 END IF;
2494 IF (x_okc_timevalues_tl_rec.creation_date = OKC_API.G_MISS_DATE)
2495 THEN
2499 THEN
2496 x_okc_timevalues_tl_rec.creation_date := l_okc_timevalues_tl_rec.creation_date;
2497 END IF;
2498 IF (x_okc_timevalues_tl_rec.last_updated_by = OKC_API.G_MISS_NUM)
2500 x_okc_timevalues_tl_rec.last_updated_by := l_okc_timevalues_tl_rec.last_updated_by;
2501 END IF;
2502 IF (x_okc_timevalues_tl_rec.last_update_date = OKC_API.G_MISS_DATE)
2503 THEN
2504 x_okc_timevalues_tl_rec.last_update_date := l_okc_timevalues_tl_rec.last_update_date;
2505 END IF;
2506 IF (x_okc_timevalues_tl_rec.last_update_login = OKC_API.G_MISS_NUM)
2507 THEN
2508 x_okc_timevalues_tl_rec.last_update_login := l_okc_timevalues_tl_rec.last_update_login;
2509 END IF;
2510 RETURN(l_return_status);
2511 END populate_new_record;
2512 ------------------------------------------
2513 -- Set_Attributes for:OKC_TIMEVALUES_TL --
2514 ------------------------------------------
2515 FUNCTION Set_Attributes (
2516 p_okc_timevalues_tl_rec IN okc_timevalues_tl_rec_type,
2517 x_okc_timevalues_tl_rec OUT NOCOPY okc_timevalues_tl_rec_type
2518 ) RETURN VARCHAR2 IS
2519 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2520 BEGIN
2521 x_okc_timevalues_tl_rec := p_okc_timevalues_tl_rec;
2522 x_okc_timevalues_tl_rec.LANGUAGE := okc_util.get_userenv_lang;
2523 x_okc_timevalues_tl_rec.SOURCE_LANG := okc_util.get_userenv_lang;
2524 RETURN(l_return_status);
2525 END Set_Attributes;
2526 BEGIN
2527 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
2528 p_init_msg_list,
2529 '_PVT',
2530 x_return_status);
2531 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2532 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2533 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2534 RAISE OKC_API.G_EXCEPTION_ERROR;
2535 END IF;
2536 --- Setting item attributes
2537 l_return_status := Set_Attributes(
2538 p_okc_timevalues_tl_rec, -- IN
2539 l_okc_timevalues_tl_rec); -- OUT
2540 --- If any errors happen abort API
2541 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2542 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2543 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2544 RAISE OKC_API.G_EXCEPTION_ERROR;
2545 END IF;
2546 l_return_status := populate_new_record(l_okc_timevalues_tl_rec, l_def_okc_timevalues_tl_rec);
2547 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2548 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2549 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2550 RAISE OKC_API.G_EXCEPTION_ERROR;
2551 END IF;
2552 UPDATE OKC_TIMEVALUES_TL
2553 SET DESCRIPTION = l_def_okc_timevalues_tl_rec.description,
2554 SHORT_DESCRIPTION = l_def_okc_timevalues_tl_rec.short_description,
2555 COMMENTS = l_def_okc_timevalues_tl_rec.comments,
2556 NAME = l_def_okc_timevalues_tl_rec.name,
2557 CREATED_BY = l_def_okc_timevalues_tl_rec.created_by,
2558 CREATION_DATE = l_def_okc_timevalues_tl_rec.creation_date,
2559 LAST_UPDATED_BY = l_def_okc_timevalues_tl_rec.last_updated_by,
2560 LAST_UPDATE_DATE = l_def_okc_timevalues_tl_rec.last_update_date,
2561 LAST_UPDATE_LOGIN = l_def_okc_timevalues_tl_rec.last_update_login
2562 WHERE ID = l_def_okc_timevalues_tl_rec.id
2563 AND USERENV('LANG') IN (SOURCE_LANG,LANGUAGE);
2564
2565 UPDATE OKC_TIMEVALUES_TL
2566 SET SFWT_FLAG = 'Y'
2567 WHERE ID = l_def_okc_timevalues_tl_rec.id
2568 AND SOURCE_LANG <> USERENV('LANG');
2569 x_okc_timevalues_tl_rec := l_def_okc_timevalues_tl_rec;
2570 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2571 EXCEPTION
2572 WHEN OKC_API.G_EXCEPTION_ERROR THEN
2573 x_return_status := OKC_API.HANDLE_EXCEPTIONS
2574 (
2575 l_api_name,
2576 G_PKG_NAME,
2577 'OKC_API.G_RET_STS_ERROR',
2578 x_msg_count,
2579 x_msg_data,
2580 '_PVT'
2581 );
2582 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2583 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2584 (
2585 l_api_name,
2586 G_PKG_NAME,
2587 'OKC_API.G_RET_STS_UNEXP_ERROR',
2588 x_msg_count,
2589 x_msg_data,
2590 '_PVT'
2591 );
2592 WHEN OTHERS THEN
2593 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2594 (
2595 l_api_name,
2596 G_PKG_NAME,
2597 'OTHERS',
2598 x_msg_count,
2599 x_msg_data,
2600 '_PVT'
2601 );
2602 END update_row;
2603 */
2604 -------------------------------------
2605 -- update_row for:OKC_TIME_CYCLE_V --
2606 -------------------------------------
2607 PROCEDURE update_row(
2608 p_api_version IN NUMBER,
2609 p_init_msg_list IN VARCHAR2 ,
2610 x_return_status OUT NOCOPY VARCHAR2,
2611 x_msg_count OUT NOCOPY NUMBER,
2612 x_msg_data OUT NOCOPY VARCHAR2,
2613 p_cylv_rec IN cylv_rec_type,
2614 x_cylv_rec OUT NOCOPY cylv_rec_type) IS
2615
2616 l_api_version CONSTANT NUMBER := 1;
2617 l_api_name CONSTANT VARCHAR2(30) := 'V_update_row';
2621 --Bug 3122962 l_okc_timevalues_tl_rec okc_timevalues_tl_rec_type;
2618 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2619 l_cylv_rec cylv_rec_type := p_cylv_rec;
2620 l_def_cylv_rec cylv_rec_type;
2622 --Bug 3122962 lx_okc_timevalues_tl_rec okc_timevalues_tl_rec_type;
2623 l_tve_rec tve_rec_type;
2624 lx_tve_rec tve_rec_type;
2625 -------------------------------
2626 -- FUNCTION fill_who_columns --
2627 -------------------------------
2628 FUNCTION fill_who_columns (
2629 p_cylv_rec IN cylv_rec_type
2630 ) RETURN cylv_rec_type IS
2631 l_cylv_rec cylv_rec_type := p_cylv_rec;
2632 BEGIN
2633 l_cylv_rec.LAST_UPDATE_DATE := SYSDATE;
2634 l_cylv_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
2635 l_cylv_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
2636 RETURN(l_cylv_rec);
2637 END fill_who_columns;
2638 ----------------------------------
2639 -- FUNCTION populate_new_record --
2640 ----------------------------------
2641 FUNCTION populate_new_record (
2642 p_cylv_rec IN cylv_rec_type,
2643 x_cylv_rec OUT NOCOPY cylv_rec_type
2644 ) RETURN VARCHAR2 IS
2645 l_cylv_rec cylv_rec_type;
2646 l_row_notfound BOOLEAN := TRUE;
2647 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2648 BEGIN
2649 x_cylv_rec := p_cylv_rec;
2650 -- Get current database values
2651 l_cylv_rec := get_rec(p_cylv_rec, l_row_notfound);
2652 IF (l_row_notfound) THEN
2653 l_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
2654 END IF;
2655 IF (x_cylv_rec.id = OKC_API.G_MISS_NUM)
2656 THEN
2657 x_cylv_rec.id := l_cylv_rec.id;
2658 END IF;
2659 IF (x_cylv_rec.object_version_number = OKC_API.G_MISS_NUM)
2660 THEN
2661 x_cylv_rec.object_version_number := l_cylv_rec.object_version_number;
2662 END IF;
2663 /* IF (x_cylv_rec.sfwt_flag = OKC_API.G_MISS_CHAR)
2664 THEN
2665 x_cylv_rec.sfwt_flag := l_cylv_rec.sfwt_flag;
2666 END IF;
2667 */
2668 IF (x_cylv_rec.spn_id = OKC_API.G_MISS_NUM)
2669 THEN
2670 x_cylv_rec.spn_id := l_cylv_rec.spn_id;
2671 END IF;
2672 IF (x_cylv_rec.tve_id_limited = OKC_API.G_MISS_NUM)
2673 THEN
2674 x_cylv_rec.tve_id_limited := l_cylv_rec.tve_id_limited;
2675 END IF;
2676 IF (x_cylv_rec.dnz_chr_id = OKC_API.G_MISS_NUM)
2677 THEN
2678 x_cylv_rec.dnz_chr_id := l_cylv_rec.dnz_chr_id;
2679 END IF;
2680 IF (x_cylv_rec.tze_id = OKC_API.G_MISS_NUM)
2681 THEN
2682 x_cylv_rec.tze_id := l_cylv_rec.tze_id;
2683 END IF;
2684 IF (x_cylv_rec.description = OKC_API.G_MISS_CHAR)
2685 THEN
2686 x_cylv_rec.description := l_cylv_rec.description;
2687 END IF;
2688 IF (x_cylv_rec.short_description = OKC_API.G_MISS_CHAR)
2689 THEN
2690 x_cylv_rec.short_description := l_cylv_rec.short_description;
2691 END IF;
2692 IF (x_cylv_rec.comments = OKC_API.G_MISS_CHAR)
2693 THEN
2694 x_cylv_rec.comments := l_cylv_rec.comments;
2695 END IF;
2696 IF (x_cylv_rec.name = OKC_API.G_MISS_CHAR)
2697 THEN
2698 x_cylv_rec.name := l_cylv_rec.name;
2699 END IF;
2700 IF (x_cylv_rec.interval_yn = OKC_API.G_MISS_CHAR)
2701 THEN
2702 x_cylv_rec.interval_yn := l_cylv_rec.interval_yn;
2703 END IF;
2704 IF (x_cylv_rec.attribute_category = OKC_API.G_MISS_CHAR)
2705 THEN
2706 x_cylv_rec.attribute_category := l_cylv_rec.attribute_category;
2707 END IF;
2708 IF (x_cylv_rec.attribute1 = OKC_API.G_MISS_CHAR)
2709 THEN
2710 x_cylv_rec.attribute1 := l_cylv_rec.attribute1;
2711 END IF;
2712 IF (x_cylv_rec.attribute2 = OKC_API.G_MISS_CHAR)
2713 THEN
2714 x_cylv_rec.attribute2 := l_cylv_rec.attribute2;
2715 END IF;
2716 IF (x_cylv_rec.attribute3 = OKC_API.G_MISS_CHAR)
2717 THEN
2718 x_cylv_rec.attribute3 := l_cylv_rec.attribute3;
2719 END IF;
2720 IF (x_cylv_rec.attribute4 = OKC_API.G_MISS_CHAR)
2721 THEN
2722 x_cylv_rec.attribute4 := l_cylv_rec.attribute4;
2723 END IF;
2724 IF (x_cylv_rec.attribute5 = OKC_API.G_MISS_CHAR)
2725 THEN
2726 x_cylv_rec.attribute5 := l_cylv_rec.attribute5;
2727 END IF;
2728 IF (x_cylv_rec.attribute6 = OKC_API.G_MISS_CHAR)
2729 THEN
2730 x_cylv_rec.attribute6 := l_cylv_rec.attribute6;
2731 END IF;
2732 IF (x_cylv_rec.attribute7 = OKC_API.G_MISS_CHAR)
2733 THEN
2734 x_cylv_rec.attribute7 := l_cylv_rec.attribute7;
2735 END IF;
2736 IF (x_cylv_rec.attribute8 = OKC_API.G_MISS_CHAR)
2737 THEN
2738 x_cylv_rec.attribute8 := l_cylv_rec.attribute8;
2739 END IF;
2740 IF (x_cylv_rec.attribute9 = OKC_API.G_MISS_CHAR)
2741 THEN
2742 x_cylv_rec.attribute9 := l_cylv_rec.attribute9;
2743 END IF;
2744 IF (x_cylv_rec.attribute10 = OKC_API.G_MISS_CHAR)
2745 THEN
2746 x_cylv_rec.attribute10 := l_cylv_rec.attribute10;
2747 END IF;
2748 IF (x_cylv_rec.attribute11 = OKC_API.G_MISS_CHAR)
2749 THEN
2753 THEN
2750 x_cylv_rec.attribute11 := l_cylv_rec.attribute11;
2751 END IF;
2752 IF (x_cylv_rec.attribute12 = OKC_API.G_MISS_CHAR)
2754 x_cylv_rec.attribute12 := l_cylv_rec.attribute12;
2755 END IF;
2756 IF (x_cylv_rec.attribute13 = OKC_API.G_MISS_CHAR)
2757 THEN
2758 x_cylv_rec.attribute13 := l_cylv_rec.attribute13;
2759 END IF;
2760 IF (x_cylv_rec.attribute14 = OKC_API.G_MISS_CHAR)
2761 THEN
2762 x_cylv_rec.attribute14 := l_cylv_rec.attribute14;
2763 END IF;
2764 IF (x_cylv_rec.attribute15 = OKC_API.G_MISS_CHAR)
2765 THEN
2766 x_cylv_rec.attribute15 := l_cylv_rec.attribute15;
2767 END IF;
2768 IF (x_cylv_rec.created_by = OKC_API.G_MISS_NUM)
2769 THEN
2770 x_cylv_rec.created_by := l_cylv_rec.created_by;
2771 END IF;
2772 IF (x_cylv_rec.creation_date = OKC_API.G_MISS_DATE)
2773 THEN
2774 x_cylv_rec.creation_date := l_cylv_rec.creation_date;
2775 END IF;
2776 IF (x_cylv_rec.last_updated_by = OKC_API.G_MISS_NUM)
2777 THEN
2778 x_cylv_rec.last_updated_by := l_cylv_rec.last_updated_by;
2779 END IF;
2780 IF (x_cylv_rec.last_update_date = OKC_API.G_MISS_DATE)
2781 THEN
2782 x_cylv_rec.last_update_date := l_cylv_rec.last_update_date;
2783 END IF;
2784 IF (x_cylv_rec.last_update_login = OKC_API.G_MISS_NUM)
2785 THEN
2786 x_cylv_rec.last_update_login := l_cylv_rec.last_update_login;
2787 END IF;
2788 RETURN(l_return_status);
2789 END populate_new_record;
2790 -----------------------------------------
2791 -- Set_Attributes for:OKC_TIME_CYCLE_V --
2792 -----------------------------------------
2793 FUNCTION Set_Attributes (
2794 p_cylv_rec IN cylv_rec_type,
2795 x_cylv_rec OUT NOCOPY cylv_rec_type
2796 ) RETURN VARCHAR2 IS
2797 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2798 BEGIN
2799 x_cylv_rec := p_cylv_rec;
2800 -- **** Added the following line(s) for uppercasing *****
2801 -- x_cylv_rec.SFWT_FLAG := upper(p_cylv_rec.SFWT_FLAG);
2802 x_cylv_rec.OBJECT_VERSION_NUMBER := NVL(x_cylv_rec.OBJECT_VERSION_NUMBER, 0) + 1;
2803 RETURN(l_return_status);
2804 END Set_Attributes;
2805 BEGIN
2806 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
2807 G_PKG_NAME,
2808 p_init_msg_list,
2809 l_api_version,
2810 p_api_version,
2811 '_PVT',
2812 x_return_status);
2813 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2814 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2815 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2816 RAISE OKC_API.G_EXCEPTION_ERROR;
2817 END IF;
2818 --- Setting item attributes
2819 l_return_status := Set_Attributes(
2820 p_cylv_rec, -- IN
2821 l_cylv_rec); -- OUT
2822 --- If any errors happen abort API
2823 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2824 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2825 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2826 RAISE OKC_API.G_EXCEPTION_ERROR;
2827 END IF;
2828 l_return_status := populate_new_record(l_cylv_rec, l_def_cylv_rec);
2829 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2830 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2831 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2832 RAISE OKC_API.G_EXCEPTION_ERROR;
2833 END IF;
2834 l_def_cylv_rec := fill_who_columns(l_def_cylv_rec);
2835 --- Validate all non-missing attributes (Item Level Validation)
2836 l_return_status := Validate_Attributes(l_def_cylv_rec);
2837 --- If any errors happen abort API
2838 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2839 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2840 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2841 RAISE OKC_API.G_EXCEPTION_ERROR;
2842 END IF;
2843 l_return_status := Validate_Record(l_def_cylv_rec);
2844 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2845 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2846 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
2847 RAISE OKC_API.G_EXCEPTION_ERROR;
2848 END IF;
2849
2850 --------------------------------------
2851 -- Move VIEW record to "Child" records
2852 --------------------------------------
2853 --Bug 3122962 migrate(l_def_cylv_rec, l_okc_timevalues_tl_rec);
2854 migrate(l_def_cylv_rec, l_tve_rec);
2855 --------------------------------------------
2856 -- Call the UPDATE_ROW for each child record
2857 --------------------------------------------
2858 /* update_row(
2859 p_init_msg_list,
2860 x_return_status,
2861 x_msg_count,
2862 x_msg_data,
2863 l_okc_timevalues_tl_rec,
2864 lx_okc_timevalues_tl_rec
2865 );
2866 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2867 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2868 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
2869 RAISE OKC_API.G_EXCEPTION_ERROR;
2873 update_row(
2870 END IF;
2871 migrate(lx_okc_timevalues_tl_rec, l_def_cylv_rec);
2872 */
2874 p_init_msg_list,
2875 x_return_status,
2876 x_msg_count,
2877 x_msg_data,
2878 l_tve_rec,
2879 lx_tve_rec
2880 );
2881 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
2882 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
2883 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
2884 RAISE OKC_API.G_EXCEPTION_ERROR;
2885 END IF;
2886 migrate(lx_tve_rec, l_def_cylv_rec);
2887 x_cylv_rec := l_def_cylv_rec;
2888 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
2889 EXCEPTION
2890 WHEN OKC_API.G_EXCEPTION_ERROR THEN
2891 x_return_status := OKC_API.HANDLE_EXCEPTIONS
2892 (
2893 l_api_name,
2894 G_PKG_NAME,
2895 'OKC_API.G_RET_STS_ERROR',
2896 x_msg_count,
2897 x_msg_data,
2898 '_PVT'
2899 );
2900 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2901 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2902 (
2903 l_api_name,
2904 G_PKG_NAME,
2905 'OKC_API.G_RET_STS_UNEXP_ERROR',
2906 x_msg_count,
2907 x_msg_data,
2908 '_PVT'
2909 );
2910 WHEN OTHERS THEN
2911 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2912 (
2913 l_api_name,
2914 G_PKG_NAME,
2915 'OTHERS',
2916 x_msg_count,
2917 x_msg_data,
2918 '_PVT'
2919 );
2920 END update_row;
2921 ----------------------------------------
2922 -- PL/SQL TBL update_row for:CYLV_TBL --
2923 ----------------------------------------
2924 PROCEDURE update_row(
2925 p_api_version IN NUMBER,
2926 p_init_msg_list IN VARCHAR2 ,
2927 x_return_status OUT NOCOPY VARCHAR2,
2928 x_msg_count OUT NOCOPY NUMBER,
2929 x_msg_data OUT NOCOPY VARCHAR2,
2930 p_cylv_tbl IN cylv_tbl_type,
2931 x_cylv_tbl OUT NOCOPY cylv_tbl_type) IS
2932
2933 l_api_version CONSTANT NUMBER := 1;
2934 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_update_row';
2935 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
2936 i NUMBER := 0;
2937 BEGIN
2938 -- Make sure PL/SQL table has records in it before passing
2939 IF (p_cylv_tbl.COUNT > 0) THEN
2940 i := p_cylv_tbl.FIRST;
2941 LOOP
2942 update_row (
2943 p_api_version => p_api_version,
2944 p_init_msg_list => p_init_msg_list,
2945 x_return_status => x_return_status,
2946 x_msg_count => x_msg_count,
2947 x_msg_data => x_msg_data,
2948 p_cylv_rec => p_cylv_tbl(i),
2949 x_cylv_rec => x_cylv_tbl(i));
2950 EXIT WHEN (i = p_cylv_tbl.LAST);
2951 i := p_cylv_tbl.NEXT(i);
2952 END LOOP;
2953 END IF;
2954 EXCEPTION
2955 WHEN OKC_API.G_EXCEPTION_ERROR THEN
2956 x_return_status := OKC_API.HANDLE_EXCEPTIONS
2957 (
2958 l_api_name,
2959 G_PKG_NAME,
2960 'OKC_API.G_RET_STS_ERROR',
2961 x_msg_count,
2962 x_msg_data,
2963 '_PVT'
2964 );
2965 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2966 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2967 (
2968 l_api_name,
2969 G_PKG_NAME,
2970 'OKC_API.G_RET_STS_UNEXP_ERROR',
2971 x_msg_count,
2972 x_msg_data,
2973 '_PVT'
2974 );
2975 WHEN OTHERS THEN
2976 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
2977 (
2978 l_api_name,
2979 G_PKG_NAME,
2980 'OTHERS',
2981 x_msg_count,
2982 x_msg_data,
2983 '_PVT'
2984 );
2985 END update_row;
2986
2987 ---------------------------------------------------------------------------
2988 -- PROCEDURE delete_row
2989 ---------------------------------------------------------------------------
2990 -------------------------------------
2991 -- delete_row for:OKC_TIMEVALUES_B --
2992 -------------------------------------
2993 PROCEDURE delete_row(
2994 p_init_msg_list IN VARCHAR2 ,
2995 x_return_status OUT NOCOPY VARCHAR2,
2996 x_msg_count OUT NOCOPY NUMBER,
2997 x_msg_data OUT NOCOPY VARCHAR2,
2998 p_tve_rec IN tve_rec_type) IS
2999
3000 l_api_version CONSTANT NUMBER := 1;
3001 l_api_name CONSTANT VARCHAR2(30) := 'B_delete_row';
3002 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3003 l_tve_rec tve_rec_type:= p_tve_rec;
3004 l_row_notfound BOOLEAN := TRUE;
3005 BEGIN
3006 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
3007 p_init_msg_list,
3008 '_PVT',
3009 x_return_status);
3013 RAISE OKC_API.G_EXCEPTION_ERROR;
3010 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3011 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3012 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3014 END IF;
3015 --Bug 3122962
3016 DELETE FROM OKC_TIMEVALUES
3017 WHERE ID = l_tve_rec.id;
3018
3019 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
3020 EXCEPTION
3021 WHEN OKC_API.G_EXCEPTION_ERROR THEN
3022 x_return_status := OKC_API.HANDLE_EXCEPTIONS
3023 (
3024 l_api_name,
3025 G_PKG_NAME,
3026 'OKC_API.G_RET_STS_ERROR',
3027 x_msg_count,
3028 x_msg_data,
3029 '_PVT'
3030 );
3031 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3032 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3033 (
3034 l_api_name,
3035 G_PKG_NAME,
3036 'OKC_API.G_RET_STS_UNEXP_ERROR',
3037 x_msg_count,
3038 x_msg_data,
3039 '_PVT'
3040 );
3041 WHEN OTHERS THEN
3042 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3043 (
3044 l_api_name,
3045 G_PKG_NAME,
3046 'OTHERS',
3047 x_msg_count,
3048 x_msg_data,
3049 '_PVT'
3050 );
3051 END delete_row;
3052 --------------------------------------
3053 -- delete_row for:OKC_TIMEVALUES_TL --
3054 --------------------------------------
3055 /* PROCEDURE delete_row(
3056 p_init_msg_list IN VARCHAR2 ,
3057 x_return_status OUT NOCOPY VARCHAR2,
3058 x_msg_count OUT NOCOPY NUMBER,
3059 x_msg_data OUT NOCOPY VARCHAR2,
3060 p_okc_timevalues_tl_rec IN okc_timevalues_tl_rec_type) IS
3061
3062 l_api_version CONSTANT NUMBER := 1;
3063 l_api_name CONSTANT VARCHAR2(30) := 'TL_delete_row';
3064 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3065 l_okc_timevalues_tl_rec okc_timevalues_tl_rec_type:= p_okc_timevalues_tl_rec;
3066 l_row_notfound BOOLEAN := TRUE;
3067 ------------------------------------------
3068 -- Set_Attributes for:OKC_TIMEVALUES_TL --
3069 ------------------------------------------
3070 FUNCTION Set_Attributes (
3071 p_okc_timevalues_tl_rec IN okc_timevalues_tl_rec_type,
3072 x_okc_timevalues_tl_rec OUT NOCOPY okc_timevalues_tl_rec_type
3073 ) RETURN VARCHAR2 IS
3074 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3075 BEGIN
3076 x_okc_timevalues_tl_rec := p_okc_timevalues_tl_rec;
3077 x_okc_timevalues_tl_rec.LANGUAGE := okc_util.get_userenv_lang;
3078 RETURN(l_return_status);
3079 END Set_Attributes;
3080 BEGIN
3081 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
3082 p_init_msg_list,
3083 '_PVT',
3084 x_return_status);
3085 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3086 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3087 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3088 RAISE OKC_API.G_EXCEPTION_ERROR;
3089 END IF;
3090 --- Setting item attributes
3091 l_return_status := Set_Attributes(
3092 p_okc_timevalues_tl_rec, -- IN
3093 l_okc_timevalues_tl_rec); -- OUT
3094 --- If any errors happen abort API
3095 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3096 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3097 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3098 RAISE OKC_API.G_EXCEPTION_ERROR;
3099 END IF;
3100 DELETE FROM OKC_TIMEVALUES_TL
3101 WHERE ID = l_okc_timevalues_tl_rec.id;
3102
3103 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
3104 EXCEPTION
3105 WHEN OKC_API.G_EXCEPTION_ERROR THEN
3106 x_return_status := OKC_API.HANDLE_EXCEPTIONS
3107 (
3108 l_api_name,
3109 G_PKG_NAME,
3110 'OKC_API.G_RET_STS_ERROR',
3111 x_msg_count,
3112 x_msg_data,
3113 '_PVT'
3114 );
3115 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3116 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3117 (
3118 l_api_name,
3119 G_PKG_NAME,
3120 'OKC_API.G_RET_STS_UNEXP_ERROR',
3121 x_msg_count,
3122 x_msg_data,
3123 '_PVT'
3124 );
3125 WHEN OTHERS THEN
3126 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3127 (
3128 l_api_name,
3129 G_PKG_NAME,
3130 'OTHERS',
3131 x_msg_count,
3132 x_msg_data,
3133 '_PVT'
3134 );
3135 END delete_row;
3136 */
3137 -------------------------------------
3138 -- delete_row for:OKC_TIME_CYCLE_V --
3139 -------------------------------------
3140 PROCEDURE delete_row(
3141 p_api_version IN NUMBER,
3142 p_init_msg_list IN VARCHAR2 ,
3143 x_return_status OUT NOCOPY VARCHAR2,
3144 x_msg_count OUT NOCOPY NUMBER,
3145 x_msg_data OUT NOCOPY VARCHAR2,
3146 p_cylv_rec IN cylv_rec_type) IS
3147
3151 l_cylv_rec cylv_rec_type := p_cylv_rec;
3148 l_api_version CONSTANT NUMBER := 1;
3149 l_api_name CONSTANT VARCHAR2(30) := 'V_delete_row';
3150 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3152 --Bug 3122962 l_okc_timevalues_tl_rec okc_timevalues_tl_rec_type;
3153 l_tve_rec tve_rec_type;
3154 BEGIN
3155 l_return_status := OKC_API.START_ACTIVITY(l_api_name,
3156 G_PKG_NAME,
3157 p_init_msg_list,
3158 l_api_version,
3159 p_api_version,
3160 '_PVT',
3161 x_return_status);
3162 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3163 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3164 ELSIF (l_return_status = OKC_API.G_RET_STS_ERROR) THEN
3165 RAISE OKC_API.G_EXCEPTION_ERROR;
3166 END IF;
3167 --------------------------------------
3168 -- Move VIEW record to "Child" records
3169 --------------------------------------
3170 --Bug 3122962 migrate(l_cylv_rec, l_okc_timevalues_tl_rec);
3171 migrate(l_cylv_rec, l_tve_rec);
3172 --------------------------------------------
3173 -- Call the DELETE_ROW for each child record
3174 --------------------------------------------
3175 /* delete_row(
3176 p_init_msg_list,
3177 x_return_status,
3178 x_msg_count,
3179 x_msg_data,
3180 l_okc_timevalues_tl_rec
3181 );
3182 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3183 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3184 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
3185 RAISE OKC_API.G_EXCEPTION_ERROR;
3186 END IF;
3187 */
3188 delete_row(
3189 p_init_msg_list,
3190 x_return_status,
3191 x_msg_count,
3192 x_msg_data,
3193 l_tve_rec
3194 );
3195 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
3196 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
3197 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
3198 RAISE OKC_API.G_EXCEPTION_ERROR;
3199 END IF;
3200 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
3201 EXCEPTION
3202 WHEN OKC_API.G_EXCEPTION_ERROR THEN
3203 x_return_status := OKC_API.HANDLE_EXCEPTIONS
3204 (
3205 l_api_name,
3206 G_PKG_NAME,
3207 'OKC_API.G_RET_STS_ERROR',
3208 x_msg_count,
3209 x_msg_data,
3210 '_PVT'
3211 );
3212 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3213 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3214 (
3215 l_api_name,
3216 G_PKG_NAME,
3217 'OKC_API.G_RET_STS_UNEXP_ERROR',
3218 x_msg_count,
3219 x_msg_data,
3220 '_PVT'
3221 );
3222 WHEN OTHERS THEN
3223 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3224 (
3225 l_api_name,
3226 G_PKG_NAME,
3227 'OTHERS',
3228 x_msg_count,
3229 x_msg_data,
3230 '_PVT'
3231 );
3232 END delete_row;
3233 ----------------------------------------
3234 -- PL/SQL TBL delete_row for:CYLV_TBL --
3235 ----------------------------------------
3236 PROCEDURE delete_row(
3237 p_api_version IN NUMBER,
3238 p_init_msg_list IN VARCHAR2 ,
3239 x_return_status OUT NOCOPY VARCHAR2,
3240 x_msg_count OUT NOCOPY NUMBER,
3241 x_msg_data OUT NOCOPY VARCHAR2,
3242 p_cylv_tbl IN cylv_tbl_type) IS
3243
3244 l_api_version CONSTANT NUMBER := 1;
3245 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_delete_row';
3246 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
3247 i NUMBER := 0;
3248 BEGIN
3249 -- Make sure PL/SQL table has records in it before passing
3250 IF (p_cylv_tbl.COUNT > 0) THEN
3251 i := p_cylv_tbl.FIRST;
3252 LOOP
3253 delete_row (
3254 p_api_version => p_api_version,
3255 p_init_msg_list => p_init_msg_list,
3256 x_return_status => x_return_status,
3257 x_msg_count => x_msg_count,
3258 x_msg_data => x_msg_data,
3259 p_cylv_rec => p_cylv_tbl(i));
3260 EXIT WHEN (i = p_cylv_tbl.LAST);
3261 i := p_cylv_tbl.NEXT(i);
3262 END LOOP;
3263 END IF;
3264 EXCEPTION
3265 WHEN OKC_API.G_EXCEPTION_ERROR THEN
3266 x_return_status := OKC_API.HANDLE_EXCEPTIONS
3267 (
3268 l_api_name,
3269 G_PKG_NAME,
3270 'OKC_API.G_RET_STS_ERROR',
3271 x_msg_count,
3272 x_msg_data,
3273 '_PVT'
3274 );
3275 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3276 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3277 (
3278 l_api_name,
3279 G_PKG_NAME,
3280 'OKC_API.G_RET_STS_UNEXP_ERROR',
3281 x_msg_count,
3282 x_msg_data,
3283 '_PVT'
3284 );
3285 WHEN OTHERS THEN
3286 x_return_status :=OKC_API.HANDLE_EXCEPTIONS
3287 (
3288 l_api_name,
3289 G_PKG_NAME,
3290 'OTHERS',
3291 x_msg_count,
3292 x_msg_data,
3293 '_PVT'
3294 );
3295 END delete_row;
3296
3297 END OKC_CYL_PVT;