DBA Data[Home] [Help]

PACKAGE BODY: APPS.JTF_PERZ_DATA_PUB

Source


1 PACKAGE BODY JTF_PERZ_DATA_PUB as
2 /* $Header: jtfzppdb.pls 120.2 2005/11/02 03:46:52 skothe ship $ */
3 --
4 --
5 -- Start of Comments
6 --
7 -- NAME
8 --   JTF_PERZ_DATA_PUB
9 --
10 -- PURPOSE
11 --   Public API for creating, getting and updating personalized data objects
12 -- 	 in the Personalization Framework.
13 --
14 -- NOTES
15 --   This is a pulicly accessible pacakge.  It should be used by all
16 --   sources for creating, getting and updating personalized data objects
17 -- 	 in the Personalization Framework.
18 --
19 -- HISTORY
20 --	09/21/99	SMATTEGU	Created
21 --
22 -- End of Comments
23 -- *****************************************************************************
24 
25 
26 G_PKG_NAME  	CONSTANT VARCHAR2(30):='JTF_PERZ_DATA_PUB';
27 G_FILE_NAME   	CONSTANT VARCHAR2(12):='jtfppzdb.pls';
28 
29 
30 -- *****************************************************************************
31 -- *****************************************************************************
32 
33 PROCEDURE Save_Perz_Data
34 ( 	p_api_version_number	IN	NUMBER,
35   	p_init_msg_list		IN	VARCHAR2 	:= FND_API.G_FALSE,
36 	p_commit		IN VARCHAR		:= FND_API.G_FALSE,
37 
38 	p_application_id	IN NUMBER,
39 	p_profile_id        IN NUMBER,
40 	p_profile_name      IN VARCHAR2,
41 	p_profile_type      IN VARCHAR2,
42 	p_profile_attrib    IN JTF_PERZ_PROFILE_PUB.PROFILE_ATTRIB_TBL_TYPE
43 			:= JTF_PERZ_PROFILE_PUB.G_MISS_PROFILE_ATTRIB_TBL,
44 	p_perz_data_id		IN NUMBER,
45 	p_perz_data_name          IN VARCHAR2,
46 	p_perz_data_type		IN VARCHAR2,
47 	p_perz_data_desc	IN VARCHAR2,
48 	p_data_attrib_tbl	IN JTF_PERZ_DATA_PUB.DATA_ATTRIB_TBL_TYPE
49 				:= JTF_PERZ_DATA_PUB.G_MISS_DATA_ATTRIB_TBL,
50 
51 	x_perz_data_id	    OUT NOCOPY /* file.sql.39 change */ NUMBER,
52 	x_return_status	 OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
53 	x_msg_count	 OUT NOCOPY /* file.sql.39 change */ NUMBER,
54 	x_msg_data	 OUT NOCOPY /* file.sql.39 change */ VARCHAR2
55 )IS
56 
57 	--******** Save_Perz_Data local variable for standards **********
58      	l_api_name		 CONSTANT VARCHAR2(30)	:= 'Save PerzData';
59 	l_api_version_number	NUMBER 	:= p_api_version_number;
60 BEGIN
61        -- ******* Standard Begins ********
62 
63       -- Standard Start of API savepoint
64       SAVEPOINT	SAVE_PERZ_DATA_PUB;
65 
66 --       -- Standard call to check for call compatibility.
67 --       IF NOT FND_API.Compatible_API_Call ( l_api_version_number, p_api_version_number, l_api_name, G_PKG_NAME)
68 --       THEN
69 --           RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
70 --       END IF;
71 
72       -- Initialize message list if p_init_msg_list is set to TRUE.
73       IF FND_API.to_Boolean( p_init_msg_list )
74       THEN
75           FND_MSG_PUB.initialize;
76       END IF;
77 
78   	  -- Initialize API return status to success
79       x_return_status := FND_API.G_RET_STS_SUCCESS;
80 
81 
82 	JTF_PERZ_DATA_PVT.Save_Perz_Data(
83 	p_api_version_number,
84   	p_init_msg_list,
85 	p_commit,
86 
87 	p_application_id,
88 
89 	p_profile_id    ,
90 	p_profile_name  ,
91 	p_profile_type  ,
92 	p_profile_attrib,
93 
94 	p_perz_data_id,
95 	p_perz_data_name ,
96 	p_perz_data_type ,
97     	p_perz_data_desc,
98 
99 	p_data_attrib_tbl,
100 
101 	x_perz_data_id  ,
102 	x_return_status	,
103 	x_msg_count,
104 	x_msg_data
105    	);
106 
107 
108 -- ******** Standard Ends ***********
109 --
110 -- End of main API body.
111 
112    -- Standard check of p_commit.
113    IF (FND_API.To_Boolean(p_commit)) THEN
114       COMMIT WORK;
115    END IF;
116 
117    -- Standard call to get message count and if count is 1, get message info.
118    FND_MSG_PUB.Count_And_Get( p_count       	=>      x_msg_count,
119 				p_data        	=>      x_msg_data );
120 
121   EXCEPTION
122 
123     WHEN FND_API.G_EXC_ERROR THEN
124 	--  dbms_output.put_line('stop 1 ');
125 
126 	  ROLLBACK TO SAVE_PERZ_DATA_PUB;
127 	  x_return_status := FND_API.G_RET_STS_ERROR ;
128 
129 	  FND_MSG_PUB.Count_And_Get
130 	( p_count    	=>      x_msg_count,
131 	  p_data       	=>      x_msg_data );
132 
133     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
134 	--  dbms_output.put_line('stop 2 ');
135 	  ROLLBACK TO SAVE_PERZ_DATA_PUB;
136 	  x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
137 	  FND_MSG_PUB.Count_And_Get
138 	( p_count    	=>      x_msg_count,
139 	  p_data       	=>      x_msg_data );
140 
141 
142     WHEN OTHERS THEN
143 	 -- dbms_output.put_line('stop 3 ');
144 	  ROLLBACK TO SAVE_PERZ_DATA_PUB;
145 	  x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
146 
147 	IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR )
148 	  THEN
149     	      FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
150     	END IF;
151 
152 	  FND_MSG_PUB.Count_And_Get
153 	( p_count    	=>      x_msg_count,
154 	  p_data       	=>      x_msg_data );
155 
156 
157 END Save_Perz_Data;
158 -- *****************************************************************************
159 
160 PROCEDURE Create_Perz_Data
161 ( 	p_api_version_number	IN	NUMBER,
162   	p_init_msg_list		IN	VARCHAR2 	:= FND_API.G_FALSE,
163 	p_commit		IN VARCHAR		:= FND_API.G_FALSE,
164 
165 	p_application_id	IN NUMBER,
166 	p_profile_id            IN NUMBER,
167 	p_profile_name          IN VARCHAR2,
168 	p_perz_data_id		IN NUMBER,
169     	p_perz_data_name             IN VARCHAR2,
170 	p_perz_data_type		IN VARCHAR2,
171 	p_perz_data_desc	IN VARCHAR2,
172 	p_data_attrib_tbl	IN JTF_PERZ_DATA_PUB.DATA_ATTRIB_TBL_TYPE
173 				:= JTF_PERZ_DATA_PUB.G_MISS_DATA_ATTRIB_TBL,
174 
175 	x_perz_data_id	    OUT NOCOPY /* file.sql.39 change */ NUMBER,
176 	x_return_status	 OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
177 	x_msg_count	 OUT NOCOPY /* file.sql.39 change */ NUMBER,
178 	x_msg_data	 OUT NOCOPY /* file.sql.39 change */ VARCHAR2
179 )IS
180 
181 	--******** Save_Perz_Data local variable for standards **********
182      	l_api_name		 CONSTANT VARCHAR2(30)	:= 'Save PerzData';
183 	l_api_version_number	NUMBER 	:= p_api_version_number;
184 BEGIN
185        -- ******* Standard Begins ********
186 
187       -- Standard Start of API savepoint
188       SAVEPOINT	CREATE_PERZ_DATA_PUB;
189 
190 --       -- Standard call to check for call compatibility.
191 --       IF NOT FND_API.Compatible_API_Call ( l_api_version_number, p_api_version_number, l_api_name, G_PKG_NAME)
192 --       THEN
193 --           RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
194 --       END IF;
195 
196       -- Initialize message list if p_init_msg_list is set to TRUE.
197       IF FND_API.to_Boolean( p_init_msg_list )
198       THEN
199           FND_MSG_PUB.initialize;
200       END IF;
201 
202   	  -- Initialize API return status to success
203       x_return_status := FND_API.G_RET_STS_SUCCESS;
204 
205 
206 	JTF_PERZ_DATA_PVT.Create_Perz_Data(
207 	p_api_version_number,
208   	p_init_msg_list,
209 	p_commit,
210 
211 	p_application_id,
212 
213 	p_profile_id    ,
214 	p_profile_name  ,
215 
216 	p_perz_data_id,
217 	p_perz_data_name ,
218 	p_perz_data_type ,
219     	p_perz_data_desc,
220 
221 	p_data_attrib_tbl,
222 
223 	x_perz_data_id  ,
224 	x_return_status	,
225 	x_msg_count,
226 	x_msg_data
227    	);
228 
229 
230 -- ******** Standard Ends ***********
231 --
232 -- End of main API body.
233 
234    -- Standard check of p_commit.
235    IF (FND_API.To_Boolean(p_commit)) THEN
236       COMMIT WORK;
237    END IF;
238 
239    -- Standard call to get message count and if count is 1, get message info.
240    FND_MSG_PUB.Count_And_Get( p_count       =>      x_msg_count,
241 				p_data      =>      x_msg_data );
242 
243   EXCEPTION
244 
245     WHEN FND_API.G_EXC_ERROR THEN
246 	--  dbms_output.put_line('stop 1 ');
247 
248 	  ROLLBACK TO CREATE_PERZ_DATA_PUB;
249 	  x_return_status := FND_API.G_RET_STS_ERROR ;
250 
251 	  FND_MSG_PUB.Count_And_Get
252 	( p_count    	=>      x_msg_count,
253 	  p_data       	=>      x_msg_data );
254 
255     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
256 	--  dbms_output.put_line('stop 2 ');
257 	  ROLLBACK TO CREATE_PERZ_DATA_PUB;
258 	  x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
259 	  FND_MSG_PUB.Count_And_Get
260 	( p_count    	=>      x_msg_count,
261 	  p_data       	=>      x_msg_data );
262 
263 
264     WHEN OTHERS THEN
265 	 -- dbms_output.put_line('stop 3 ');
266 	  ROLLBACK TO CREATE_PERZ_DATA_PUB;
267 	  x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
268 
269 	IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR )
270 	  THEN
271     	      FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
272     	END IF;
273 
274 	  FND_MSG_PUB.Count_And_Get
275 	( p_count    	=>      x_msg_count,
276 	  p_data       	=>      x_msg_data );
277 
278 
279 END Create_Perz_Data;
280 
281 -- *****************************************************************************
282 
283 PROCEDURE Get_Perz_Data
284 ( 	p_api_version_number	IN	NUMBER,
285   	p_init_msg_list		IN VARCHAR2 	:= FND_API.G_FALSE,
286 
287 	p_application_id	IN NUMBER,
288 	p_profile_id       	IN	NUMBER,
289 	p_profile_name     	IN	VARCHAR2,
290 	p_perz_data_id            IN NUMBER,
291 	p_perz_data_name          IN VARCHAR2,
292 	p_perz_data_type		IN VARCHAR2 := NULL,
293 
294     	x_perz_data_id            OUT NOCOPY /* file.sql.39 change */ NUMBER,
295 	x_perz_data_name          OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
296 	x_perz_data_type	 OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
297 	x_perz_data_desc OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
298 	x_data_attrib_tbl OUT NOCOPY /* file.sql.39 change */ JTF_PERZ_DATA_PUB.DATA_ATTRIB_TBL_TYPE,
299 
300 	x_return_status	 OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
301 	x_msg_count	 OUT NOCOPY /* file.sql.39 change */ NUMBER,
302 	x_msg_data	 OUT NOCOPY /* file.sql.39 change */ VARCHAR2
303 )IS
304 
305 
306 	--******** Get_Perz_Data_Summary local variable for standards **********
307      	l_api_name		 CONSTANT VARCHAR2(30)	:= 'Get PerzData';
308 	l_api_version_number	NUMBER 	:= p_api_version_number;
309 
310        -- ******* Get_Perz_Data_Summary Local Variables ********
311 
312 BEGIN
313        -- ******* Standard Begins ********
314 
315 --       -- Standard call to check for call compatibility.
316 --       IF NOT FND_API.Compatible_API_Call
317 --		( l_api_version_number,
318 --		p_api_version_number, l_api_name, G_PKG_NAME)
319 --       THEN
320 --           RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
321 --       END IF;
322 
323       -- Initialize message list if p_init_msg_list is set to TRUE.
324       IF FND_API.to_Boolean( p_init_msg_list )
325       THEN
326           FND_MSG_PUB.initialize;
327       END IF;
328 
329   	  -- Initialize API return status to success
330       x_return_status := FND_API.G_RET_STS_SUCCESS;
331 
332 	JTF_PERZ_DATA_PVT.Get_Perz_Data(
333 	p_api_version_number,
334   	p_init_msg_list,
335 
336 	p_application_id,
337 
338 	p_profile_id    ,
339 	p_profile_name  ,
340 
341 	p_perz_data_id,
342 	p_perz_data_name ,
343 	p_perz_data_type ,
344 
345 	x_perz_data_id  ,
346 	x_perz_data_name ,
347 	x_perz_data_type,
348 	x_perz_data_desc,
349 	x_data_attrib_tbl,
350 
351 	x_return_status	,
352 	x_msg_count,
353 	x_msg_data
354    	);
355 
356 
357 -- ******** Standard Ends ***********
358    -- Standard call to get message count and if count is 1, get message info.
359    FND_MSG_PUB.Count_And_Get( p_count     =>      x_msg_count,
360         		      p_data      =>      x_msg_data );
361 
362   EXCEPTION
363 
364     WHEN FND_API.G_EXC_ERROR THEN
365 
366 	  x_return_status := FND_API.G_RET_STS_ERROR ;
367 
368 	  FND_MSG_PUB.Count_And_Get( p_count   =>      x_msg_count,
369 	  			     p_data    =>      x_msg_data );
370 
371     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
372 
373 	  x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
374 
375 	  FND_MSG_PUB.Count_And_Get( p_count      =>      x_msg_count,
376         	  		     p_data       =>      x_msg_data );
377 
378     WHEN OTHERS THEN
379 
380 	  x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
381 
382 	IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR )
383 	  THEN
384     	      FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
385     END IF;
386 
387 	FND_MSG_PUB.Count_And_Get( p_count      =>      x_msg_count,
388         	  		  p_data        =>      x_msg_data );
389 
390 
391 END Get_Perz_Data;
392 
393 -- *****************************************************************************
394 PROCEDURE Get_Perz_Data_Summary
395 ( 	p_api_version_number	IN	NUMBER,
396   	p_init_msg_list		IN VARCHAR2 	:= FND_API.G_FALSE,
397 
398 	p_application_id	IN NUMBER,
399 	p_profile_id       	IN	NUMBER,
400 	p_profile_name     	IN	VARCHAR2,
401 	p_perz_data_id            IN NUMBER,
402 	p_perz_data_name          IN VARCHAR2,
403 	p_perz_data_type			IN VARCHAR2 := NULL,
404 
405 	x_data_out_tbl OUT NOCOPY /* file.sql.39 change */ JTF_PERZ_DATA_PUB.DATA_OUT_TBL_TYPE,
406 
407 	x_return_status	 OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
408 	x_msg_count		 OUT NOCOPY /* file.sql.39 change */ NUMBER,
409 	x_msg_data		 OUT NOCOPY /* file.sql.39 change */ VARCHAR2
410 )IS
411 
412 	--******** Get_Perz_Data_Summary local variable for standards **********
413      	l_api_name		 CONSTANT VARCHAR2(30)	:= 'Get PerzData Summary';
414 	l_api_version_number	NUMBER 	:= p_api_version_number;
415 
416 BEGIN
417        -- ******* Standard Begins ********
418 
419 --       -- Standard call to check for call compatibility.
420 --       IF NOT FND_API.Compatible_API_Call
421 --		( l_api_version_number,
422 --		p_api_version_number, l_api_name, G_PKG_NAME)
423 --       THEN
424 --           RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
425 --       END IF;
426 
427       -- Initialize message list if p_init_msg_list is set to TRUE.
428       IF FND_API.to_Boolean( p_init_msg_list )
429       THEN
430           FND_MSG_PUB.initialize;
431       END IF;
432 
433   	  -- Initialize API return status to success
434       x_return_status := FND_API.G_RET_STS_SUCCESS;
435 
436 	JTF_PERZ_DATA_PVT.Get_Perz_Data_Summary(
437 	p_api_version_number,
438   	p_init_msg_list,
439 
440 	p_application_id,
441 
442 	p_profile_id    ,
443 	p_profile_name  ,
444 
445 	p_perz_data_id,
446 	p_perz_data_name ,
447 	p_perz_data_type ,
448 
452 	x_msg_data
449 	x_data_out_tbl,
450 	x_return_status	,
451 	x_msg_count,
453    	);
454 
455 -- ******** Standard Ends ***********
456    -- Standard call to get message count and if count is 1, get message info.
457    FND_MSG_PUB.Count_And_Get( p_count     =>      x_msg_count,
458         		      p_data      =>      x_msg_data );
459 
460   EXCEPTION
461 
462     WHEN FND_API.G_EXC_ERROR THEN
463 
464 	  x_return_status := FND_API.G_RET_STS_ERROR ;
465 
466 	  FND_MSG_PUB.Count_And_Get( p_count   =>      x_msg_count,
467 	  			     p_data    =>      x_msg_data );
468 
469     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
470 
471 	  x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
472 
473 	  FND_MSG_PUB.Count_And_Get( p_count      =>      x_msg_count,
474         	  		     p_data       =>      x_msg_data );
475 
476     WHEN OTHERS THEN
477 
478 	  x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
479 
480 	IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR )
481 	  THEN
482     	      FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
483     END IF;
484 
485 	FND_MSG_PUB.Count_And_Get( p_count      =>      x_msg_count,
486         	  		  p_data        =>      x_msg_data );
487 
488 
489 END Get_Perz_Data_Summary;
490 -- *****************************************************************************
491 
492 PROCEDURE Update_Perz_Data
493 (	p_api_version_number	IN NUMBER,
494   	p_init_msg_list		IN VARCHAR2 	:= FND_API.G_FALSE,
495 	p_commit			IN VARCHAR		:= FND_API.G_FALSE,
496 
497 	p_application_id	IN NUMBER,
498 	p_profile_id        IN NUMBER,
499 
500 	p_perz_data_id            IN NUMBER,
501 	p_perz_data_name          IN VARCHAR2,
502 	p_perz_data_type			IN VARCHAR2 := NULL,
503 	p_perz_data_desc	IN VARCHAR2,
504 	p_data_attrib_tbl	IN JTF_PERZ_DATA_PUB.DATA_ATTRIB_TBL_TYPE
505 						:= JTF_PERZ_DATA_PUB.G_MISS_DATA_ATTRIB_TBL,
506 
507 	x_perz_data_id	   	 OUT NOCOPY /* file.sql.39 change */ NUMBER,
508 	x_return_status	 OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
509 	x_msg_count		 OUT NOCOPY /* file.sql.39 change */ NUMBER,
510 	x_msg_data		 OUT NOCOPY /* file.sql.39 change */ VARCHAR2
511 )
512 IS
513 
514 	--******** Update_Perz_Data local variable for standards **********
515      	l_api_name		 CONSTANT VARCHAR2(30)	:= 'Update_Perz_Data';
516 	l_api_version_number	NUMBER 	:= p_api_version_number;
517 BEGIN
518        -- ******* Standard Begins ********
519 
520       -- Standard Start of API savepoint
521       SAVEPOINT	UPDATE_PERZ_DATA_PUB;
522 
523 --       -- Standard call to check for call compatibility.
524 --       IF NOT FND_API.Compatible_API_Call ( l_api_version_number, p_api_version_number, l_api_name, G_PKG_NAME)
525 --       THEN
526 --           RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
527 --       END IF;
528 
529       -- Initialize message list if p_init_msg_list is set to TRUE.
530       IF FND_API.to_Boolean( p_init_msg_list )
531       THEN
532           FND_MSG_PUB.initialize;
533       END IF;
534 
535   	  -- Initialize API return status to success
536       x_return_status := FND_API.G_RET_STS_SUCCESS;
537 
538 
539 	JTF_PERZ_DATA_PVT.Update_Perz_Data(
540 	p_api_version_number,
541   	p_init_msg_list,
542 	p_commit,
543 
544 	p_application_id,
545 
546 	p_profile_id    ,
547 	p_perz_data_id,
548 	p_perz_data_name ,
549 	p_perz_data_type ,
550     	p_perz_data_desc,
551 
552 	p_data_attrib_tbl,
553 
554 	x_perz_data_id  ,
555 	x_return_status	,
556 	x_msg_count,
557 	x_msg_data
558    	);
559 
560 -- ******** Standard Ends ***********
561 --
562 -- End of main API body.
563 
564    -- Standard check of p_commit.
565    IF (FND_API.To_Boolean(p_commit)) THEN
566       COMMIT WORK;
567    END IF;
568 
569    -- Standard call to get message count and if count is 1, get message info.
570    FND_MSG_PUB.Count_And_Get( p_count       =>      x_msg_count,
571 				p_data      =>      x_msg_data );
572 
573   EXCEPTION
574 
575     WHEN FND_API.G_EXC_ERROR THEN
576 	--  dbms_output.put_line('stop 1 ');
577 
578 	  ROLLBACK TO UPDATE_PERZ_DATA_PUB;
579 	  x_return_status := FND_API.G_RET_STS_ERROR ;
580 
581 	  FND_MSG_PUB.Count_And_Get
582 	( p_count    	=>      x_msg_count,
583 	  p_data       	=>      x_msg_data );
584 
585     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
586 	--  dbms_output.put_line('stop 2 ');
587 	  ROLLBACK TO UPDATE_PERZ_DATA_PUB;
588 	  x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
589 	  FND_MSG_PUB.Count_And_Get
590 	( p_count    	=>      x_msg_count,
591 	  p_data       	=>      x_msg_data );
592 
593 
594     WHEN OTHERS THEN
595 	 -- dbms_output.put_line('stop 3 ');
596 	  ROLLBACK TO UPDATE_PERZ_DATA_PUB;
597 	  x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
598 
599 	IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR )
600 	  THEN
601     	      FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
605 	( p_count    	=>      x_msg_count,
602     	END IF;
603 
604 	  FND_MSG_PUB.Count_And_Get
606 	  p_data       	=>      x_msg_data );
607 
608 
609 END Update_Perz_Data;
610 
611 -- *****************************************************************************
612 
613 PROCEDURE Delete_Perz_Data
614 (	p_api_version_number	IN	NUMBER,
615   	p_init_msg_list			IN	VARCHAR2 	:= FND_API.G_FALSE,
616 	p_commit				IN VARCHAR		:= FND_API.G_FALSE,
617 
618 	p_application_id	IN NUMBER,
619 	p_profile_id        IN NUMBER,
620 	p_perz_data_id            IN NUMBER,
621 
622 	x_return_status	 OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
623 	x_msg_count		 OUT NOCOPY /* file.sql.39 change */ NUMBER,
624 	x_msg_data		 OUT NOCOPY /* file.sql.39 change */ VARCHAR2
625 )IS
626 
627 	--******** Delete_Perz_Data local variable for standards **********
628      	l_api_name		 CONSTANT VARCHAR2(30)	:= 'Delete_Perz_Data';
629 	l_api_version_number	NUMBER 	:= p_api_version_number;
630 BEGIN
631        -- ******* Standard Begins ********
632 
633       -- Standard Start of API savepoint
634       SAVEPOINT	DELETE_PERZ_DATA_PUB;
635 
636 --       -- Standard call to check for call compatibility.
637 --       IF NOT FND_API.Compatible_API_Call ( l_api_version_number, p_api_version_number, l_api_name, G_PKG_NAME)
638 --       THEN
639 --           RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
640 --       END IF;
641 
642       -- Initialize message list if p_init_msg_list is set to TRUE.
643       IF FND_API.to_Boolean( p_init_msg_list )
644       THEN
645           FND_MSG_PUB.initialize;
646       END IF;
647 
648   	  -- Initialize API return status to success
649       x_return_status := FND_API.G_RET_STS_SUCCESS;
650 
651 
652 	JTF_PERZ_DATA_PVT.Delete_Perz_Data(
653 	p_api_version_number,
654   	p_init_msg_list,
655 	p_commit,
656 
657 	p_application_id,
658 
659 	p_profile_id    ,
660 	p_perz_data_id,
661 
662 	x_return_status	,
663 	x_msg_count,
664 	x_msg_data
665    	);
666 
667 
668 -- ******** Standard Ends ***********
669 --
670 -- End of main API body.
671 
672    -- Standard check of p_commit.
673    IF (FND_API.To_Boolean(p_commit)) THEN
674       COMMIT WORK;
675    END IF;
676 
677    -- Standard call to get message count and if count is 1, get message info.
678    FND_MSG_PUB.Count_And_Get( p_count       =>      x_msg_count,
679 				p_data      =>      x_msg_data );
680 
681   EXCEPTION
682 
683     WHEN FND_API.G_EXC_ERROR THEN
684 	--  dbms_output.put_line('stop 1 ');
685 
686 	  ROLLBACK TO DELETE_PERZ_DATA_PUB;
687 	  x_return_status := FND_API.G_RET_STS_ERROR ;
688 
689 	  FND_MSG_PUB.Count_And_Get
690 	( p_count    	=>      x_msg_count,
691 	  p_data       	=>      x_msg_data );
692 
693     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
694 	--  dbms_output.put_line('stop 2 ');
695 	  ROLLBACK TO DELETE_PERZ_DATA_PUB;
696 	  x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
697 	  FND_MSG_PUB.Count_And_Get
698 	( p_count    	=>      x_msg_count,
699 	  p_data       	=>      x_msg_data );
700 
701 
702     WHEN OTHERS THEN
703 	 -- dbms_output.put_line('stop 3 ');
704 	  ROLLBACK TO DELETE_PERZ_DATA_PUB;
705 	  x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
706 
707 	IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR )
708 	  THEN
709     	      FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
710     	END IF;
711 
712 	  FND_MSG_PUB.Count_And_Get
713 	( p_count    	=>      x_msg_count,
714 	  p_data       	=>      x_msg_data );
715 
716 
717 
718 
719 END Delete_Perz_Data;
720 
721 -- *****************************************************************************
722 -- *****************************************************************************
723 
724 
725 END  JTF_PERZ_DATA_PUB;