[Home] [Help]
PACKAGE BODY: APPS.CSD_RT_TRANS_PVT
Source
1 PACKAGE BODY CSD_RT_TRANS_PVT as
2 /* $Header: csdvrttb.pls 120.1 2005/07/29 16:37:39 vkjain noship $ */
3
4 G_PKG_NAME CONSTANT VARCHAR2(30) := 'CSD_RT_TRANS_PVT';
5 G_FILE_NAME CONSTANT VARCHAR2(12) := 'csdvrttb.pls';
6
7 /*--------------------------------------------------*/
8 /* procedure name: Create_Rt_Tran */
9 /* description : procedure used to create */
10 /* repair type transition */
11 /* */
12 /*--------------------------------------------------*/
13 PROCEDURE Create_Rt_Tran
14 (
15 p_api_version IN NUMBER,
16 p_commit IN VARCHAR2,
17 p_init_msg_list IN VARCHAR2,
18 p_validation_level IN NUMBER,
19 x_return_status OUT NOCOPY VARCHAR2,
20 x_msg_count OUT NOCOPY NUMBER,
21 x_msg_data OUT NOCOPY VARCHAR2,
22 p_rt_tran_rec IN RT_TRAN_REC_TYPE,
23 x_rt_tran_id OUT NOCOPY NUMBER
24 ) IS
25
26 -- CONSTANTS --
27 lc_mod_name CONSTANT VARCHAR2(100) := 'csd.plsql.CSD_RT_TRANS_PVT.create_rt_tran';
28 lc_api_name CONSTANT VARCHAR2(30) := 'Create_Rt_Tran';
29 lc_api_version CONSTANT NUMBER := 1.0;
30
31 -- VARIABLES --
32 l_msg_count NUMBER;
33 l_msg_data VARCHAR2(100);
34 l_msg_index NUMBER;
35 l_dummy VARCHAR2(1) := null;
36 l_obj_ver_num NUMBER := 1;
37 l_rowid ROWID;
38
39 -- EXCEPTIONS --
40 UNIQUE_CONSTRAINT_VIOLATED Exception;
41
42 -- This will trap all exceptions that have
43 -- SQLCODE = -00001 and name it as 'UNIQUE_CONSTRAINT_VIOLATED'.
44 PRAGMA EXCEPTION_INIT( UNIQUE_CONSTRAINT_VIOLATED, -00001 );
45
46 BEGIN
47 -- Standard Start of API savepoint
48 SAVEPOINT Create_Rt_Tran;
49
50 -- Standard call to check for call compatibility.
51 IF NOT FND_API.Compatible_API_Call (lc_api_version,
52 p_api_version,
53 lc_api_name ,
54 G_PKG_NAME )
55 THEN
56 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
57 END IF;
58
59 -- Initialize message list if p_init_msg_list is set to TRUE.
60 IF FND_API.to_Boolean( p_init_msg_list ) THEN
61 FND_MSG_PUB.initialize;
62 END IF;
63
64 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
65 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, lc_mod_name || '.BEGIN',
66 'Entered Create_Rt_Tran');
67 END IF;
68
69 -- Initialize API return status to success
70 x_return_status := FND_API.G_RET_STS_SUCCESS;
71
72 -- Api body starts
73
74 -- Check the required parameters
75 if (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
76 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, lc_mod_name,
77 'Checking required parameters');
78 end if;
79
80 -- Check the required parameters
81 CSD_PROCESS_UTIL.Check_Reqd_Param
82 ( p_param_value => p_rt_tran_rec.from_repair_type_id,
83 p_param_name => 'FROM_REPAIR_TYPE_ID',
84 p_api_name => lc_api_name);
85
86 CSD_PROCESS_UTIL.Check_Reqd_Param
87 ( p_param_value => p_rt_tran_rec.to_repair_type_id,
88 p_param_name => 'TO_REPAIR_TYPE_ID',
89 p_api_name => lc_api_name);
90
91 CSD_PROCESS_UTIL.Check_Reqd_Param
92 ( p_param_value => p_rt_tran_rec.common_flow_status_id,
93 p_param_name => 'COMMON_FLOW_STATUS_ID',
94 p_api_name => lc_api_name);
95
96 -- Insert row
97 if (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
98 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, lc_mod_name,
99 'Calling Insert_Row table handler');
100 end if;
101
102 Begin
103
104 -- Insert the new diagnostic code
105 CSD_RT_TRANS_PKG.Insert_Row
106 (
107 px_rt_tran_id => x_rt_tran_id,
108 p_from_repair_type_id => p_rt_tran_rec.from_repair_type_id,
109 p_to_repair_type_id => p_rt_tran_rec.to_repair_type_id,
110 p_common_flow_status_id => p_rt_tran_rec.common_flow_status_id,
111 p_reason_required_flag => p_rt_tran_rec.reason_required_flag,
112 p_capture_activity_flag => p_rt_tran_rec.capture_activity_flag,
113 p_allow_all_resp_flag => p_rt_tran_rec.allow_all_resp_flag,
114 p_description => p_rt_tran_rec.description,
115 p_object_version_number => l_obj_ver_num,
116 p_created_by => FND_GLOBAL.USER_ID,
117 p_creation_date => SYSDATE,
118 p_last_updated_by => FND_GLOBAL.USER_ID,
119 p_last_update_date => SYSDATE,
120 p_last_update_login => FND_GLOBAL.LOGIN_ID
121 );
122
123 END;
124
125 if (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
126 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, lc_mod_name,
127 'Returned from Insert_Row table handler');
128 end if;
129
130 -- Api body ends here
131
132 -- Standard check of p_commit.
133 IF FND_API.To_Boolean( p_commit ) THEN
134 COMMIT WORK;
135 END IF;
136
137 -- Standard call to get message count and IF count is get message info.
138 FND_MSG_PUB.Count_And_Get
139 (p_count => x_msg_count,
140 p_data => x_msg_data );
141
142 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
143 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, lc_mod_name || '.END',
144 'Leaving Create_Rt_Tran');
145 END IF;
146
147 EXCEPTION
148 WHEN UNIQUE_CONSTRAINT_VIOLATED THEN
149 ROLLBACK TO Create_Rt_Tran;
150 x_return_status := FND_API.G_RET_STS_ERROR;
151
152 -- The definition already exists. No duplicates are allowed.
153 FND_MESSAGE.set_name('CSD', 'CSD_FLEX_DEFN_EXISTS');
154 FND_MSG_PUB.add;
155
156 FND_MSG_PUB.Count_And_Get
157 (p_count => x_msg_count,
158 p_data => x_msg_data );
159
160 -- save message in debug log
161 IF (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
162 FND_LOG.STRING(FND_LOG.LEVEL_EXCEPTION, lc_mod_name,
163 'EXC_ERROR['||x_msg_data||']');
164 END IF;
165 WHEN FND_API.G_EXC_ERROR THEN
166 ROLLBACK TO Create_Rt_Tran;
167 x_return_status := FND_API.G_RET_STS_ERROR;
168
169 FND_MSG_PUB.Count_And_Get
170 (p_count => x_msg_count,
171 p_data => x_msg_data );
172
173 -- save message in debug log
174 IF (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
175 FND_LOG.STRING(FND_LOG.LEVEL_EXCEPTION, lc_mod_name,
176 'EXC_ERROR['||x_msg_data||']');
177 END IF;
178
179 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
180 ROLLBACK TO Create_Rt_Tran;
181 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
182
183 -- save message in fnd stack
184 IF FND_MSG_PUB.Check_Msg_Level
185 (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
186 THEN
187 if (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
188 FND_LOG.STRING(FND_LOG.LEVEL_STATEMENT, lc_mod_name,
189 'Adding message using FND_MSG_PUB.Add_Exc_Msg to FND_MSG stack');
190 end if;
191 FND_MSG_PUB.Add_Exc_Msg
192 (G_PKG_NAME ,
193 lc_api_name );
194 END IF;
195
196 FND_MSG_PUB.Count_And_Get
197 ( p_count => x_msg_count,
198 p_data => x_msg_data );
199
200 -- save message in debug log
201 IF (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
202 FND_LOG.STRING(FND_LOG.LEVEL_EXCEPTION, lc_mod_name,
203 'EXC_UNEXPECTED_ERROR['||x_msg_data||']');
204 END IF;
205
206 WHEN OTHERS THEN
207 ROLLBACK TO Create_Rt_Tran;
208 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
209
210 -- save message in fnd stack
211 IF FND_MSG_PUB.Check_Msg_Level
212 (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
213 THEN
214 if (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
215 FND_LOG.STRING(FND_LOG.LEVEL_STATEMENT, lc_mod_name,
216 'Adding message using FND_MSG_PUB.Add_Exc_Msg to FND_MSG stack');
217 end if;
218 FND_MSG_PUB.Add_Exc_Msg
219 (G_PKG_NAME ,
220 lc_api_name );
221 END IF;
222
223 FND_MSG_PUB.Count_And_Get
224 (p_count => x_msg_count,
225 p_data => x_msg_data );
226
227 -- save message in debug log
228 IF (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
229 -- create a seeded message
230 FND_LOG.STRING(FND_LOG.LEVEL_EXCEPTION, lc_mod_name,
231 'SQL Message['||sqlerrm||']' );
232 END IF;
233
234 END Create_Rt_Tran;
235
236 /*--------------------------------------------------*/
237 /* procedure name: Update_Rt_Tran */
238 /* description : procedure used to update */
239 /* repair type transition */
240 /* */
241 /*--------------------------------------------------*/
242 PROCEDURE Update_Rt_Tran
243 (
244 p_api_version IN NUMBER,
245 p_commit IN VARCHAR2,
246 p_init_msg_list IN VARCHAR2,
247 p_validation_level IN NUMBER,
248 x_return_status OUT NOCOPY VARCHAR2,
249 x_msg_count OUT NOCOPY NUMBER,
250 x_msg_data OUT NOCOPY VARCHAR2,
251 p_rt_tran_rec IN RT_TRAN_REC_TYPE,
252 x_obj_ver_number OUT NOCOPY NUMBER
253 ) IS
254
255 -- CONSTANTS --
256 lc_mod_name CONSTANT VARCHAR2(100) := 'csd.plsql.CSD_RT_TRANS_PVT.update_rt_tran';
257 lc_api_name CONSTANT VARCHAR2(30) := 'Update_Rt_Tran';
258 lc_api_version CONSTANT NUMBER := 1.0;
259
260 -- VARIABLES --
261 l_msg_count NUMBER;
262 l_msg_data VARCHAR2(100);
263 l_msg_index NUMBER;
264 l_dummy VARCHAR2(1) := null;
265 l_obj_ver_num NUMBER;
266 l_rowid ROWID;
267
268 -- EXCEPTIONS --
269 UNIQUE_CONSTRAINT_VIOLATED Exception;
270
271 -- This will trap all exceptions that have
272 -- SQLCODE = -00001 and name it as 'UNIQUE_CONSTRAINT_VIOLATED'.
273 PRAGMA EXCEPTION_INIT( UNIQUE_CONSTRAINT_VIOLATED, -00001 );
274
275 BEGIN
276 -- Standard Start of API savepoint
277 SAVEPOINT Update_Rt_Tran;
278
279 -- Standard call to check for call compatibility.
280 IF NOT FND_API.Compatible_API_Call (lc_api_version,
281 p_api_version,
282 lc_api_name ,
283 G_PKG_NAME )
284 THEN
285 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
286 END IF;
287
288 -- Initialize message list if p_init_msg_list is set to TRUE.
289 IF FND_API.to_Boolean( p_init_msg_list ) THEN
290 FND_MSG_PUB.initialize;
291 END IF;
292
293 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
294 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, lc_mod_name || '.BEGIN',
295 'Entered Update_Rt_Tran');
296 END IF;
297
298 -- Initialize API return status to success
299 x_return_status := FND_API.G_RET_STS_SUCCESS;
300
301 -- Api body starts
302
303 -- Check the required parameters
304 if (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
305 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, lc_mod_name,
306 'Checking required parameters');
307 end if;
308
309 -- Check the required parameters
310 CSD_PROCESS_UTIL.Check_Reqd_Param
311 ( p_param_value => p_rt_tran_rec.rt_tran_id,
312 p_param_name => 'RT_TRAN_ID',
313 p_api_name => lc_api_name);
314
315 CSD_PROCESS_UTIL.Check_Reqd_Param
316 ( p_param_value => p_rt_tran_rec.from_repair_type_id,
317 p_param_name => 'FROM_REPAIR_TYPE_ID',
318 p_api_name => lc_api_name);
319
320 CSD_PROCESS_UTIL.Check_Reqd_Param
321 ( p_param_value => p_rt_tran_rec.to_repair_type_id,
322 p_param_name => 'TO_REPAIR_TYPE_ID',
323 p_api_name => lc_api_name);
324
325 CSD_PROCESS_UTIL.Check_Reqd_Param
326 ( p_param_value => p_rt_tran_rec.common_flow_status_id,
327 p_param_name => 'COMMON_FLOW_STATUS_ID',
328 p_api_name => lc_api_name);
329
330 -- Update row
331 if (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
332 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, lc_mod_name,
333 'Calling Update_Row table handler');
334 end if;
335
336 Begin
337
338 -- Update the diagnostic code
339 CSD_RT_TRANS_PKG.Update_Row
340 (p_rt_tran_id => p_rt_tran_rec.rt_tran_id,
341 p_from_repair_type_id => p_rt_tran_rec.from_repair_type_id,
342 p_to_repair_type_id => p_rt_tran_rec.to_repair_type_id,
343 p_common_flow_status_id => p_rt_tran_rec.common_flow_status_id,
344 p_reason_required_flag => p_rt_tran_rec.reason_required_flag,
345 p_capture_activity_flag => p_rt_tran_rec.capture_activity_flag,
346 p_allow_all_resp_flag => p_rt_tran_rec.allow_all_resp_flag,
347 p_description => p_rt_tran_rec.description,
348 p_object_version_number => p_rt_tran_rec.object_version_number,
349 p_last_updated_by => FND_GLOBAL.USER_ID,
350 p_last_update_date => SYSDATE,
351 p_last_update_login => FND_GLOBAL.LOGIN_ID
352 );
353
354 x_obj_ver_number := p_rt_tran_rec.object_version_number + 1;
355
356 END;
357
358 if (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
359 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, lc_mod_name,
360 'Returned from Update_Row table handler');
361 end if;
362
363 -- Api body ends here
364
365 -- Standard check of p_commit.
366 IF FND_API.To_Boolean( p_commit ) THEN
367 COMMIT WORK;
368 END IF;
369
370 -- Standard call to get message count and IF count is get message info.
371 FND_MSG_PUB.Count_And_Get
372 (p_count => x_msg_count,
373 p_data => x_msg_data );
374
375 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
376 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, lc_mod_name || '.END',
377 'Leaving Update_Rt_Tran');
378 END IF;
379
380 EXCEPTION
381 WHEN UNIQUE_CONSTRAINT_VIOLATED THEN
382 ROLLBACK TO Update_Rt_Tran;
383 x_return_status := FND_API.G_RET_STS_ERROR;
384
385 -- The definition already exists. No duplicates are allowed.
386 FND_MESSAGE.set_name('CSD', 'CSD_FLEX_DEFN_EXISTS');
387 FND_MSG_PUB.add;
388
389 FND_MSG_PUB.Count_And_Get
390 (p_count => x_msg_count,
391 p_data => x_msg_data );
392
393 -- save message in debug log
394 IF (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
395 FND_LOG.STRING(FND_LOG.LEVEL_EXCEPTION, lc_mod_name,
396 'EXC_ERROR['||x_msg_data||']');
397 END IF;
398 WHEN FND_API.G_EXC_ERROR THEN
399 ROLLBACK TO Update_Rt_Tran;
400 x_return_status := FND_API.G_RET_STS_ERROR;
401
402 FND_MSG_PUB.Count_And_Get
403 (p_count => x_msg_count,
404 p_data => x_msg_data );
405
406 -- save message in debug log
407 IF (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
408 FND_LOG.STRING(FND_LOG.LEVEL_EXCEPTION, lc_mod_name,
409 'EXC_ERROR['||x_msg_data||']');
410 END IF;
411
412 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
413 ROLLBACK TO Update_Rt_Tran;
414 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
415
416 IF FND_MSG_PUB.Check_Msg_Level
417 (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
418 THEN
419 if (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
420 FND_LOG.STRING(FND_LOG.LEVEL_STATEMENT, lc_mod_name,
421 'Adding message using FND_MSG_PUB.Add_Exc_Msg to FND_MSG stack');
422 end if;
423 FND_MSG_PUB.Add_Exc_Msg
424 (G_PKG_NAME ,
425 lc_api_name );
426 END IF;
427
428 FND_MSG_PUB.Count_And_Get
429 ( p_count => x_msg_count,
430 p_data => x_msg_data );
431
432 -- save message in debug log
433 IF (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
434 FND_LOG.STRING(FND_LOG.LEVEL_EXCEPTION, lc_mod_name,
435 'EXC_UNEXPECTED_ERROR['||x_msg_data||']');
436 END IF;
437
438 WHEN OTHERS THEN
439 ROLLBACK TO Update_Rt_Tran;
440 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
441
442 -- save message in fnd stack
443 IF FND_MSG_PUB.Check_Msg_Level
444 (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
445 THEN
446 if (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
447 FND_LOG.STRING(FND_LOG.LEVEL_STATEMENT, lc_mod_name,
448 'Adding message using FND_MSG_PUB.Add_Exc_Msg to FND_MSG stack');
449 end if;
450 FND_MSG_PUB.Add_Exc_Msg
451 (G_PKG_NAME ,
452 lc_api_name );
453 END IF;
454
455 FND_MSG_PUB.Count_And_Get
456 (p_count => x_msg_count,
457 p_data => x_msg_data );
458
459 -- save message in debug log
460 IF (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
461 -- create a seeded message
462 FND_LOG.STRING(FND_LOG.LEVEL_EXCEPTION, lc_mod_name,
463 'SQL Message['||sqlerrm||']' );
464 END IF;
465
466 END Update_Rt_Tran;
467
468 /*--------------------------------------------------*/
469 /* procedure name: Delete_Rt_Tran */
470 /* description : procedure used to delete */
471 /* repair type transition */
472 /* */
473 /*--------------------------------------------------*/
474 PROCEDURE Delete_Rt_Tran
475 (
476 p_api_version IN NUMBER,
477 p_commit IN VARCHAR2,
478 p_init_msg_list IN VARCHAR2,
479 p_validation_level IN NUMBER,
480 x_return_status OUT NOCOPY VARCHAR2,
481 x_msg_count OUT NOCOPY NUMBER,
482 x_msg_data OUT NOCOPY VARCHAR2,
483 p_rt_tran_id IN NUMBER
484 ) IS
485
486 -- CONSTANTS --
487 lc_mod_name CONSTANT VARCHAR2(100) := 'csd.plsql.CSD_RT_TRANS_PVT.Delete_Rt_Tran';
488 lc_api_name CONSTANT VARCHAR2(30) := 'Delete_Rt_Tran';
489 lc_api_version CONSTANT NUMBER := 1.0;
490
491 -- VARIABLES --
492 l_msg_count NUMBER;
493 l_msg_data VARCHAR2(100);
494 l_msg_index NUMBER;
495
496 BEGIN
497 -- Standard Start of API savepoint
498 SAVEPOINT Delete_Rt_Tran;
499
500 -- Standard call to check for call compatibility.
501 IF NOT FND_API.Compatible_API_Call (lc_api_version,
502 p_api_version,
503 lc_api_name ,
504 G_PKG_NAME )
505 THEN
506 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
507 END IF;
508
509 -- Initialize message list if p_init_msg_list is set to TRUE.
510 IF FND_API.to_Boolean( p_init_msg_list ) THEN
511 FND_MSG_PUB.initialize;
512 END IF;
513
514 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
515 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, lc_mod_name || '.BEGIN',
516 'Entered Delete_Rt_Tran');
517 END IF;
518
519 -- Initialize API return status to success
520 x_return_status := FND_API.G_RET_STS_SUCCESS;
521
522 -- Api body starts
523
524 -- Check the required parameters
525 if (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
526 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, lc_mod_name,
527 'Checking required parameter');
528 end if;
529
530 -- Check the required parameter
531 CSD_PROCESS_UTIL.Check_Reqd_Param
532 ( p_param_value => p_rt_tran_id,
533 p_param_name => 'RT_TRAN_ID',
534 p_api_name => lc_api_name);
535
536 -- Delete row
537 if (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
538 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, lc_mod_name,
539 'Calling Delete_Row table handler');
540 end if;
541
542 BEGIN
543
544 -- Delete the diagnostic code domain
545 CSD_RT_TRANS_PKG.Delete_Row
546 ( p_rt_tran_id => p_rt_tran_id);
547
548 END;
549
550 if (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
551 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, lc_mod_name,
552 'Returned from Delete_Row table handler');
553 end if;
554
555 -- Api body ends here
556
557 -- Standard check of p_commit.
558 IF FND_API.To_Boolean( p_commit ) THEN
559 COMMIT WORK;
560 END IF;
561
562 -- Standard call to get message count and IF count is get message info.
563 FND_MSG_PUB.Count_And_Get
564 (p_count => x_msg_count,
565 p_data => x_msg_data );
566
567 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
568 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, lc_mod_name || '.END',
569 'Leaving Delete_Rt_Tran');
570 END IF;
571
572 EXCEPTION
573
574 WHEN FND_API.G_EXC_ERROR THEN
575 ROLLBACK TO Delete_Rt_Tran;
576
577 x_return_status := FND_API.G_RET_STS_ERROR;
578
579 FND_MSG_PUB.Count_And_Get
580 (p_count => x_msg_count,
581 p_data => x_msg_data );
582
583 -- save message in debug log
584 IF (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
585 FND_LOG.STRING(FND_LOG.LEVEL_EXCEPTION, lc_mod_name,
586 'EXC_ERROR['||x_msg_data||']');
587 END IF;
588
589 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
590 ROLLBACK TO Delete_Rt_Tran;
591
592 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
593
594 IF FND_MSG_PUB.Check_Msg_Level
595 (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
596 THEN
597 if (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
598 FND_LOG.STRING(FND_LOG.LEVEL_STATEMENT, lc_mod_name,
599 'Adding message using FND_MSG_PUB.Add_Exc_Msg to FND_MSG stack');
600 end if;
601 FND_MSG_PUB.Add_Exc_Msg
602 (G_PKG_NAME ,
603 lc_api_name );
604 END IF;
605
606 FND_MSG_PUB.Count_And_Get
607 ( p_count => x_msg_count,
608 p_data => x_msg_data );
609
610 -- save message in debug log
611 IF (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
612 FND_LOG.STRING(FND_LOG.LEVEL_EXCEPTION, lc_mod_name,
613 'EXC_UNEXPECTED_ERROR['||x_msg_data||']');
614 END IF;
615
616 WHEN OTHERS THEN
617 ROLLBACK TO Delete_Rt_Tran;
618
619 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
620
621 -- save message in fnd stack
622 IF FND_MSG_PUB.Check_Msg_Level
623 (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
624 THEN
625 if (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
626 FND_LOG.STRING(FND_LOG.LEVEL_STATEMENT, lc_mod_name,
627 'Adding message using FND_MSG_PUB.Add_Exc_Msg to FND_MSG stack');
628 end if;
629 FND_MSG_PUB.Add_Exc_Msg
630 (G_PKG_NAME ,
631 lc_api_name );
632 END IF;
633
634 FND_MSG_PUB.Count_And_Get
635 (p_count => x_msg_count,
636 p_data => x_msg_data );
637
638 -- save message in debug log
639 IF (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
640 -- create a seeded message
641 FND_LOG.STRING(FND_LOG.LEVEL_EXCEPTION, lc_mod_name,
642 'SQL Message['||sqlerrm||']' );
643 END IF;
644
645 END Delete_Rt_Tran;
646
647 /*--------------------------------------------------*/
648 /* procedure name: Lock_Rt_Tran */
649 /* description : procedure used to lock */
650 /* repair type transition */
651 /* */
652 /*--------------------------------------------------*/
653 PROCEDURE Lock_Rt_Tran
654 (
655 p_api_version IN NUMBER,
656 p_commit IN VARCHAR2,
657 p_init_msg_list IN VARCHAR2,
658 p_validation_level IN NUMBER,
659 x_return_status OUT NOCOPY VARCHAR2,
660 x_msg_count OUT NOCOPY NUMBER,
661 x_msg_data OUT NOCOPY VARCHAR2,
662 p_rt_tran_rec IN RT_TRAN_REC_TYPE
663 ) IS
664
665 -- CONSTANTS --
666 lc_mod_name CONSTANT VARCHAR2(100) := 'csd.plsql.CSD_RT_TRANS_PVT.lock_rt_tran';
667 lc_api_name CONSTANT VARCHAR2(30) := 'Lock_Rt_Tran';
668 lc_api_version CONSTANT NUMBER := 1.0;
669
670 -- VARIABLES --
671 l_msg_count NUMBER;
672 l_msg_data VARCHAR2(100);
673 l_msg_index NUMBER;
674 l_rowid ROWID;
675
676 BEGIN
677 -- Standard Start of API savepoint
678 SAVEPOINT Lock_Rt_Tran;
679
680 -- Standard call to check for call compatibility.
681 IF NOT FND_API.Compatible_API_Call (lc_api_version,
682 p_api_version,
683 lc_api_name ,
684 G_PKG_NAME )
685 THEN
686 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
687 END IF;
688
689 -- Initialize message list if p_init_msg_list is set to TRUE.
690 IF FND_API.to_Boolean( p_init_msg_list ) THEN
691 FND_MSG_PUB.initialize;
692 END IF;
693
694 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
695 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, lc_mod_name || '.BEGIN',
696 'Entered Lock_Rt_Tran');
697 END IF;
698
699 -- Initialize API return status to success
700 x_return_status := FND_API.G_RET_STS_SUCCESS;
701
702 -- Api body starts
703
704 -- Check the required parameters
705 if (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
706 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, lc_mod_name,
707 'Checking required parameters');
708 end if;
709
710 -- Check the required parameters
711 CSD_PROCESS_UTIL.Check_Reqd_Param
712 ( p_param_value => p_rt_tran_rec.rt_tran_id,
713 p_param_name => 'RT_TRAN_ID',
714 p_api_name => lc_api_name);
715
716 CSD_PROCESS_UTIL.Check_Reqd_Param
717 ( p_param_value => p_rt_tran_rec.object_version_number,
718 p_param_name => 'OBJECT_VERSION_NUMBER',
719 p_api_name => lc_api_name);
720
721 -- Lock row
722 if (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
723 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, lc_mod_name,
724 'Calling Lock_Row table handler');
725 end if;
726
727 Begin
728
729 -- Lock the diagnostic code
730 CSD_RT_TRANS_PKG.Lock_Row
731 (
732 p_rt_tran_id => p_rt_tran_rec.rt_tran_id,
733 p_object_version_number => p_rt_tran_rec.object_version_number
734 );
735
736 END;
737
738 if (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
739 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, lc_mod_name,
740 'Returned from Lock_Row table handler');
741 end if;
742
743 -- Api body ends here
744
745 -- Standard check of p_commit.
746 IF FND_API.To_Boolean( p_commit ) THEN
747 COMMIT WORK;
748 END IF;
749
750 -- Standard call to get message count and IF count is get message info.
751 FND_MSG_PUB.Count_And_Get
752 (p_count => x_msg_count,
753 p_data => x_msg_data );
754
755 IF (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
756 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, lc_mod_name || '.END',
757 'Leaving Lock_Rt_Tran');
758 END IF;
759
760 EXCEPTION
761
762 WHEN FND_API.G_EXC_ERROR THEN
763 ROLLBACK TO Lock_Rt_Tran;
764 x_return_status := FND_API.G_RET_STS_ERROR;
765
766 FND_MSG_PUB.Count_And_Get
767 (p_count => x_msg_count,
768 p_data => x_msg_data );
769
770 -- save message in debug log
771 IF (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
772 FND_LOG.STRING(FND_LOG.LEVEL_EXCEPTION, lc_mod_name,
773 'EXC_ERROR['||x_msg_data||']');
774 END IF;
775
776 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
777 ROLLBACK TO Lock_Rt_Tran;
778 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
779
780 IF FND_MSG_PUB.Check_Msg_Level
781 (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
782 THEN
783 if (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
784 FND_LOG.STRING(FND_LOG.LEVEL_STATEMENT, lc_mod_name,
785 'Adding message using FND_MSG_PUB.Add_Exc_Msg to FND_MSG stack');
786 end if;
787 FND_MSG_PUB.Add_Exc_Msg
788 (G_PKG_NAME ,
789 lc_api_name );
790 END IF;
791
792 FND_MSG_PUB.Count_And_Get
793 ( p_count => x_msg_count,
794 p_data => x_msg_data );
795
796 -- save message in debug log
797 IF (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
798 FND_LOG.STRING(FND_LOG.LEVEL_EXCEPTION, lc_mod_name,
799 'EXC_UNEXPECTED_ERROR['||x_msg_data||']');
800 END IF;
801
802 WHEN OTHERS THEN
803 ROLLBACK TO Lock_Rt_Tran;
804 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
805
806 -- save message in fnd stack
807 IF FND_MSG_PUB.Check_Msg_Level
808 (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
809 THEN
810 if (FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
811 FND_LOG.STRING(FND_LOG.LEVEL_STATEMENT, lc_mod_name,
812 'Adding message using FND_MSG_PUB.Add_Exc_Msg to FND_MSG stack');
813 end if;
814 FND_MSG_PUB.Add_Exc_Msg
815 (G_PKG_NAME ,
816 lc_api_name );
817 END IF;
818
819 FND_MSG_PUB.Count_And_Get
820 (p_count => x_msg_count,
821 p_data => x_msg_data );
822
823 -- save message in debug log
824 IF (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) THEN
825 -- create a seeded message
826 FND_LOG.STRING(FND_LOG.LEVEL_EXCEPTION, lc_mod_name,
827 'SQL Message['||sqlerrm||']' );
828 END IF;
829
830 END Lock_Rt_Tran;
831
832 End CSD_RT_TRANS_PVT;