DBA Data[Home] [Help]

PACKAGE BODY: APPS.CSD_FLWSTS_TRANS_PVT

Source


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