DBA Data[Home] [Help]

PACKAGE BODY: APPS.JTF_PREFAB_POLICY_PUB

Source


1 Package Body JTF_PREFAB_POLICY_PUB AS
2 /* $Header: jtfprefabpob.pls 120.3 2005/10/28 01:23:28 emekala ship $ */
3 
4 -- global variables --
5 G_PKG_NAME      CONSTANT VARCHAR2(30):='JTF_PREFAB_POLICY_PUB';
6 G_FILE_NAME     CONSTANT VARCHAR2(16):='jtfprefabpob.pls';
7 
8 G_LOGIN_ID      NUMBER := FND_GLOBAL.CONC_LOGIN_ID;
9 G_USER_ID       NUMBER := FND_GLOBAL.USER_ID;
10 
11 PROCEDURE INSERT_POLICY(
12   p_api_version         IN      NUMBER,
13   p_init_msg_list       IN      VARCHAR2        := FND_API.G_FALSE,
14   p_commit              IN      VARCHAR2        := FND_API.G_FALSE,
15 
16   p_policy_id           OUT  NOCOPY    jtf_prefab_policies_b.policy_id%TYPE,
17   p_policy_name         IN      jtf_prefab_policies_b.policy_name%TYPE,
18   p_priority            IN      jtf_prefab_policies_b.priority%TYPE,
19   p_description         IN      jtf_prefab_policies_tl.description%TYPE,
20   p_enabled_flag        IN      jtf_prefab_policies_b.enabled_flag%TYPE,
21   p_application_id      IN      jtf_prefab_policies_b.application_id%TYPE,
22   p_all_applications_flag IN    jtf_prefab_policies_b.all_applications_flag%TYPE,
23   p_depth               IN      jtf_prefab_policies_b.depth%TYPE,
24   p_all_responsibilities_flag IN  jtf_prefab_policies_b.all_responsibilities_flag%TYPE,
25   p_all_users_flag      IN      jtf_prefab_policies_b.all_users_flag%TYPE,
26   p_refresh_interval    IN      jtf_prefab_policies_b.refresh_interval%TYPE,
27   p_interval_unit       IN      jtf_prefab_policies_b.interval_unit%TYPE,
28   p_start_time          IN      jtf_prefab_policies_b.start_time%TYPE,
29   p_end_time            IN      jtf_prefab_policies_b.end_time%TYPE,
30   p_run_always_flag     IN      jtf_prefab_policies_b.run_always_flag%TYPE,
31 
32   p_object_version_number OUT  NOCOPY  jtf_prefab_policies_b.object_version_number%TYPE,
33 
34   x_return_status       OUT  NOCOPY    VARCHAR2,
35   x_msg_count           OUT  NOCOPY    NUMBER,
36   x_msg_data            OUT  NOCOPY    VARCHAR2
37 ) AS
38         -- local variables --
39         l_api_name              CONSTANT VARCHAR2(30)   := 'INSERT_POLICY';
40         l_api_version           NUMBER  := p_api_version;
41         l_row_id                VARCHAR2(255) := NULL;
42 
43         CURSOR sequence_cursor IS
44           SELECT jtf_prefab_policies_b_s.NEXTVAL from dual;
45 BEGIN
46         -- Standard Start of API savepoint
47         SAVEPOINT INSERT_POLICY;
48 
49         -- Standard call to check for call compatibility.
50         IF NOT FND_API.Compatible_API_Call (
51                 l_api_version,
52                 p_api_version,
53                 l_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         -- Initialize API return status to success
65         x_return_status := FND_API.G_RET_STS_SUCCESS;
66 
67         -- real logic --
68         ----------------
69 
70    	OPEN sequence_cursor;
71    	FETCH sequence_cursor INTO p_policy_id;
72    	CLOSE sequence_cursor;
73         p_object_version_number := 1;
74 
75         JTF_PREFAB_POLICIES_PKG.INSERT_ROW(l_row_id,
76                                            p_policy_id,
77                                            p_object_version_number,
78                                            NULL,
79                                            p_policy_name,
80                                            p_priority,
81                                            p_enabled_flag,
82                                            p_application_id,
83                                            p_all_applications_flag,
84                                            p_depth,
85                                            p_all_responsibilities_flag,
86                                            p_all_users_flag,
87                                            p_refresh_interval,
88                                            p_interval_unit,
89                                            p_start_time,
90                                            p_end_time,
91                                            p_run_always_flag,
92                                            p_description,
93                                            SYSDATE,
94                                            G_USER_ID,
95                                            SYSDATE,
96                                            G_USER_ID,
97                                            G_LOGIN_ID);
98 
99         /*
100         INSERT INTO jtf_prefab_policies (policy_id,
101                                          object_version_number,
102                                          created_by,
103                                          creation_date,
104                                          last_updated_by,
105                                          last_update_date,
106                                          last_update_login,
107                                          policy_name,
108                                          application_id,
109                                          -- security_group_id,
110                                          priority,
111                                          description,
112                                          enabled_flag,
113                                          application_id_col,
114                                          all_applications_flag,
115                                          depth,
116                                          all_responsibilities_flag,
117                                          all_users_flag,
118                                          refresh_interval,
119                                          interval_unit,
120                                          start_time,
121                                          end_time,
122                                          run_always_flag)
123         VALUES (p_policy_id,
124                 p_object_version_number,
125                 G_USER_ID,
126                 SYSDATE,
127                 G_USER_ID,
128                 SYSDATE,
129                 G_LOGIN_ID,
130                 p_policy_name,
131                 p_application_id,
132                 -- NULL,
133                 p_priority,
134                 p_description,
135                 p_enabled_flag,
136                 p_application_id_col,
137                 p_all_applications_flag,
138                 p_depth,
139                 p_all_responsibilities_flag,
140                 p_all_users_flag,
141                 p_refresh_interval,
142                 p_interval_unit,
143                 p_start_time,
144                 p_end_time,
145                 p_run_always_flag);
146                 */
147 
148         -----------------------
149         -- end of real logic --
150 
151         -- Standard check of p_commit.
152         IF (FND_API.To_Boolean(p_commit)) THEN
153                 COMMIT WORK;
154         END IF;
155 
156         -- Standard call to get message count and if count is 1, get message info.
157         FND_MSG_PUB.Count_And_Get(
158                 p_count => x_msg_count,
159                 p_data  => x_msg_data );
160 
161 EXCEPTION
162         WHEN FND_API.G_EXC_ERROR THEN
163                 ROLLBACK TO INSERT_POLICY;
164                 x_return_status := FND_API.G_RET_STS_ERROR ;
165 
166                 FND_MSG_PUB.Count_And_Get(
167                         p_count => x_msg_count,
168                         p_data  => x_msg_data );
169 
170         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
171                 ROLLBACK TO INSERT_POLICY;
172                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
173 
174                 FND_MSG_PUB.Count_And_Get(
175                         p_count => x_msg_count,
176                         p_data  => x_msg_data );
177 
178         WHEN OTHERS THEN
179                 ROLLBACK TO INSERT_POLICY;
180                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
181 
182                 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
183                         FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
184                 END IF;
185 
186                 FND_MSG_PUB.Count_And_Get(
187                         p_count => x_msg_count,
188                         p_data  => x_msg_data );
189 
190 END INSERT_POLICY;
191 
192 PROCEDURE UPDATE_POLICY(
193   p_api_version         IN      NUMBER,
194   p_init_msg_list       IN      VARCHAR2        := FND_API.G_FALSE,
195   p_commit              IN      VARCHAR2        := FND_API.G_FALSE,
196 
197   p_policy_id           IN      jtf_prefab_policies_b.policy_id%TYPE,
198   p_policy_name         IN      jtf_prefab_policies_b.policy_name%TYPE,
199   p_priority            IN      jtf_prefab_policies_b.priority%TYPE,
200   p_description         IN      jtf_prefab_policies_tl.description%TYPE,
201   p_enabled_flag        IN      jtf_prefab_policies_b.enabled_flag%TYPE,
202   p_application_id      IN      jtf_prefab_policies_b.application_id%TYPE,
203   p_all_applications_flag IN      jtf_prefab_policies_b.all_applications_flag%TYPE,
204   p_depth               IN      jtf_prefab_policies_b.depth%TYPE,
205   p_all_responsibilities_flag IN  jtf_prefab_policies_b.all_responsibilities_flag%TYPE,
206   p_all_users_flag      IN      jtf_prefab_policies_b.all_users_flag%TYPE,
207   p_refresh_interval    IN      jtf_prefab_policies_b.refresh_interval%TYPE,
208   p_interval_unit       IN      jtf_prefab_policies_b.interval_unit%TYPE,
209   p_start_time          IN      jtf_prefab_policies_b.start_time%TYPE,
210   p_end_time            IN      jtf_prefab_policies_b.end_time%TYPE,
211   p_run_always_flag     IN      jtf_prefab_policies_b.run_always_flag%TYPE,
212 
213   p_object_version_number IN OUT  NOCOPY  jtf_prefab_policies_b.object_version_number%TYPE,
214 
215   x_return_status       OUT  NOCOPY    VARCHAR2,
216   x_msg_count           OUT  NOCOPY    NUMBER,
217   x_msg_data            OUT  NOCOPY    VARCHAR2
218 ) AS
219         -- local variables --
220         l_api_name              CONSTANT VARCHAR2(30)   := 'UPDATE_POLICY';
221         l_api_version           NUMBER  := p_api_version;
222 
223 BEGIN
224         -- Standard Start of API savepoint
225         SAVEPOINT UPDATE_POLICY;
226 
227         -- Standard call to check for call compatibility.
228         IF NOT FND_API.Compatible_API_Call (
229                 l_api_version,
230                 p_api_version,
231                 l_api_name,
232                 G_PKG_NAME)
233         THEN
234                 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
235         END IF;
236 
237         -- Initialize message list if p_init_msg_list is set to TRUE.
238         IF FND_API.To_Boolean( p_init_msg_list ) THEN
239                 FND_MSG_PUB.initialize;
240         END IF;
241 
242         -- Initialize API return status to success
243         x_return_status := FND_API.G_RET_STS_SUCCESS;
244 
245         -- real logic --
246         ----------------
247 
248         JTF_PREFAB_POLICIES_PKG.UPDATE_ROW(p_policy_id,
249                                            p_object_version_number,
250                                            NULL,
251                                            p_policy_name,
252                                            p_priority,
253                                            p_enabled_flag,
254                                            p_application_id,
255                                            p_all_applications_flag,
256                                            p_depth,
257                                            p_all_responsibilities_flag,
258                                            p_all_users_flag,
259                                            p_refresh_interval,
260                                            p_interval_unit,
261                                            p_start_time,
262                                            p_end_time,
263                                            p_run_always_flag,
264                                            p_description,
265                                            SYSDATE,
266                                            G_USER_ID,
267                                            G_LOGIN_ID);
268 
269         /*
270         UPDATE jtf_prefab_policies
271         SET object_version_number = p_object_version_number,
272             last_updated_by = G_USER_ID,
273             last_update_date = SYSDATE,
274             last_update_login = G_LOGIN_ID,
275             policy_name = p_policy_name,
276             application_id = p_application_id,
277             priority = p_priority,
278             description = p_description,
279             enabled_flag = p_enabled_flag,
280             all_applications_flag = p_all_applications_flag,
281             depth = p_depth,
282             all_responsibilities_flag = p_all_responsibilities_flag,
283             all_users_flag = p_all_users_flag,
284             refresh_interval = p_refresh_interval,
285             interval_unit = p_interval_unit,
286             start_time = p_start_time,
287             end_time = p_end_time,
288             run_always_flag = p_run_always_flag
289         WHERE policy_id = p_policy_id;
290          */
291 
292         -----------------------
293         -- end of real logic --
294 
295         -- Standard check of p_commit.
296         IF (FND_API.To_Boolean(p_commit)) THEN
297                 COMMIT WORK;
298         END IF;
299 
300         -- Standard call to get message count and if count is 1, get message info.
301         FND_MSG_PUB.Count_And_Get(
302                 p_count => x_msg_count,
303                 p_data  => x_msg_data );
304 
305 EXCEPTION
306         WHEN FND_API.G_EXC_ERROR THEN
307                 ROLLBACK TO UPDATE_POLICY;
308                 x_return_status := FND_API.G_RET_STS_ERROR ;
309 
310                 FND_MSG_PUB.Count_And_Get(
311                         p_count => x_msg_count,
312                         p_data  => x_msg_data );
313 
314         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
315                 ROLLBACK TO UPDATE_POLICY;
316                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
317 
318                 FND_MSG_PUB.Count_And_Get(
319                         p_count => x_msg_count,
320                         p_data  => x_msg_data );
321 
322         WHEN OTHERS THEN
323                 ROLLBACK TO UPDATE_POLICY;
324                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
325 
326                 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
327                         FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
328                 END IF;
329 
330                 FND_MSG_PUB.Count_And_Get(
331                         p_count => x_msg_count,
332                         p_data  => x_msg_data );
333 
334 END UPDATE_POLICY;
335 
336 procedure DELETE_POLICY(
337   p_api_version         IN      NUMBER,
338   p_init_msg_list       IN      VARCHAR2        := FND_API.G_FALSE,
339   p_commit              IN      VARCHAR2        := FND_API.G_FALSE,
340 
341   p_policy_id           IN      jtf_prefab_policies_b.policy_id%TYPE,
342 
343   p_object_version_number IN    jtf_prefab_policies_b.object_version_number%TYPE,
344 
345   x_return_status       OUT  NOCOPY    VARCHAR2,
346   x_msg_count           OUT  NOCOPY    NUMBER,
347   x_msg_data            OUT  NOCOPY    VARCHAR2
348 ) AS
349         l_api_name              CONSTANT VARCHAR2(30) := 'DELETE_POLICY';
350         l_api_version           CONSTANT NUMBER := p_api_version;
351 
352 BEGIN
353         -- Standard Start of API savepoint
354         SAVEPOINT DELETE_POLICY;
355 
356         -- Standard call to check for call compatibility.
357         IF NOT FND_API.Compatible_API_Call (
358                 l_api_version,
359                 p_api_version,
360                 l_api_name,
361                 G_PKG_NAME)
362         THEN
363                 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
364         END IF;
365 
366         -- Initialize message list if p_init_msg_list is set to TRUE.
367         IF FND_API.To_Boolean( p_init_msg_list ) THEN
368                 FND_MSG_PUB.initialize;
369         END IF;
370 
371         -- Initialize API return status to success
372         x_return_status := FND_API.G_RET_STS_SUCCESS;
373 
374         -- real logic --
375         ----------------
376 
377         JTF_PREFAB_POLICIES_PKG.DELETE_ROW(p_policy_id);
378 
379         /*
380         DELETE FROM jtf_prefab_policies
381         WHERE policy_id = p_policy_id;
382          */
383 
384         -----------------------
385         -- end of real logic --
386 
387         -- Standard check of p_commit.
388         IF (FND_API.To_Boolean(p_commit)) THEN
389                 COMMIT WORK;
390         END IF;
391 
392         -- Standard call to get message count and if count is 1, get message info.
393         FND_MSG_PUB.Count_And_Get(
394                 p_count => x_msg_count,
395                 p_data  => x_msg_data );
396 
397 EXCEPTION
398         WHEN FND_API.G_EXC_ERROR THEN
399                 ROLLBACK TO DELETE_POLICY;
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         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
407                 ROLLBACK TO DELETE_POLICY;
408                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
409 
410                 FND_MSG_PUB.Count_And_Get(
411                         p_count => x_msg_count,
412                         p_data  => x_msg_data );
413 
414         WHEN OTHERS THEN
415                 ROLLBACK TO DELETE_POLICY;
416                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
417 
418                 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
419                         FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
420                 END IF;
421 
422                 FND_MSG_PUB.Count_And_Get(
423                         p_count => x_msg_count,
424                         p_data  => x_msg_data );
425 
426 END DELETE_POLICY;
427 
428 PROCEDURE INSERT_UR_POLICY(
429   p_api_version         IN      NUMBER,
430   p_init_msg_list       IN      VARCHAR2        := FND_API.G_FALSE,
431   p_commit              IN      VARCHAR2        := FND_API.G_FALSE,
432 
433   p_policy_id           IN      jtf_prefab_ur_policies.policy_id%TYPE,
434   p_userresp_id         IN      jtf_prefab_ur_policies.userresp_id%TYPE,
435   p_userresp_type       IN      jtf_prefab_ur_policies.userresp_type%TYPE,
436 
437   p_object_version_number OUT  NOCOPY  jtf_prefab_ur_policies.object_version_number%TYPE,
438 
439   x_return_status       OUT  NOCOPY    VARCHAR2,
440   x_msg_count           OUT  NOCOPY    NUMBER,
441   x_msg_data            OUT  NOCOPY    VARCHAR2
442 ) AS
443         -- local variables --
444         l_api_name              CONSTANT VARCHAR2(30)   := 'INSERT_UR_POLICY';
445         l_api_version           NUMBER  := p_api_version;
446 
447 BEGIN
448         -- Standard Start of API savepoint
449         SAVEPOINT INSERT_UR_POLICY;
450 
451         -- Standard call to check for call compatibility.
452         IF NOT FND_API.Compatible_API_Call (
453                 l_api_version,
454                 p_api_version,
455                 l_api_name,
456                 G_PKG_NAME)
457         THEN
458                 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
459         END IF;
460 
461         -- Initialize message list if p_init_msg_list is set to TRUE.
462         IF FND_API.To_Boolean( p_init_msg_list ) THEN
463                 FND_MSG_PUB.initialize;
464         END IF;
465 
466         -- Initialize API return status to success
467         x_return_status := FND_API.G_RET_STS_SUCCESS;
468 
469         -- real logic --
470         ----------------
471         p_object_version_number := 1;
472 
473         INSERT INTO jtf_prefab_ur_policies (ur_policy_id,
474                                             object_version_number,
475                                             created_by,
476                                             creation_date,
477                                             last_updated_by,
478                                             last_update_date,
479                                             last_update_login,
480                                             -- security_group_id,
481                                             policy_id,
482                                             userresp_id,
483                                             userresp_type)
484         VALUES (jtf_prefab_ur_policies_s.NEXTVAL,
485                 p_object_version_number,
486                 G_USER_ID,
487                 SYSDATE,
488                 G_USER_ID,
489                 SYSDATE,
490                 G_LOGIN_ID,
491                 -- NULL,
492                 p_policy_id,
493                 p_userresp_id,
494                 p_userresp_type);
495 
496         -----------------------
497         -- end of real logic --
498 
499         -- Standard check of p_commit.
500         IF (FND_API.To_Boolean(p_commit)) THEN
501                 COMMIT WORK;
502         END IF;
503 
504         -- Standard call to get message count and if count is 1, get message info.
505         FND_MSG_PUB.Count_And_Get(
506                 p_count => x_msg_count,
507                 p_data  => x_msg_data );
508 
509 EXCEPTION
510         WHEN FND_API.G_EXC_ERROR THEN
511                 ROLLBACK TO INSERT_UR_POLICY;
512                 x_return_status := FND_API.G_RET_STS_ERROR ;
513 
514                 FND_MSG_PUB.Count_And_Get(
515                         p_count => x_msg_count,
516                         p_data  => x_msg_data );
517 
518         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
519                 ROLLBACK TO INSERT_UR_POLICY;
520                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
521 
522                 FND_MSG_PUB.Count_And_Get(
523                         p_count => x_msg_count,
524                         p_data  => x_msg_data );
525 
526         WHEN OTHERS THEN
527                 ROLLBACK TO INSERT_UR_POLICY;
528                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
529 
530                 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
531                         FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
532                 END IF;
533 
534                 FND_MSG_PUB.Count_And_Get(
535                         p_count => x_msg_count,
536                         p_data  => x_msg_data );
537 
538 END INSERT_UR_POLICY;
539 
540 PROCEDURE DELETE_UR_POLICY (
541   p_api_version         IN      NUMBER,
542   p_init_msg_list       IN      VARCHAR2        := FND_API.G_FALSE,
543   p_commit              IN      VARCHAR2        := FND_API.G_FALSE,
544 
545   p_policy_id           IN      jtf_prefab_ur_policies.policy_id%TYPE,
546   p_userresp_id         IN      jtf_prefab_ur_policies.userresp_id%TYPE,
547   p_userresp_type       IN      jtf_prefab_ur_policies.userresp_type%TYPE,
548 
549   p_object_version_number IN    jtf_prefab_ur_policies.object_version_number%TYPE,
550 
551   x_return_status       OUT  NOCOPY    VARCHAR2,
552   x_msg_count           OUT  NOCOPY    NUMBER,
553   x_msg_data            OUT  NOCOPY    VARCHAR2
554 ) AS
555         l_api_name              CONSTANT VARCHAR2(30)   := 'DELETE_UR_POLICY';
556         l_api_version           NUMBER  := p_api_version;
557 
558 BEGIN
559         -- Standard Start of API savepoint
560         SAVEPOINT DELETE_UR_POLICY;
561 
562         -- Standard call to check for call compatibility.
563         IF NOT FND_API.Compatible_API_Call (
564                 l_api_version,
565                 p_api_version,
566                 l_api_name,
567                 G_PKG_NAME)
568         THEN
569                 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
570         END IF;
571 
572         -- Initialize message list if p_init_msg_list is set to TRUE.
573         IF FND_API.To_Boolean( p_init_msg_list ) THEN
574                 FND_MSG_PUB.initialize;
575         END IF;
576 
577         -- Initialize API return status to success
578         x_return_status := FND_API.G_RET_STS_SUCCESS;
579 
580         -- real logic --
581         ----------------
582 
583         DELETE FROM jtf_prefab_ur_policies
584         WHERE policy_id = p_policy_id
585         AND   userresp_id = p_userresp_id
586         AND   userresp_type = p_userresp_type;
587 
588         -----------------------
589         -- end of real logic --
590 
591         -- Standard check of p_commit.
592         IF (FND_API.To_Boolean(p_commit)) THEN
593                 COMMIT WORK;
594         END IF;
595 
596         -- Standard call to get message count and if count is 1, get message info.
597         FND_MSG_PUB.Count_And_Get(
598                 p_count => x_msg_count,
599                 p_data  => x_msg_data );
600 
601 EXCEPTION
602         WHEN FND_API.G_EXC_ERROR THEN
603                 ROLLBACK TO DELETE_UR_POLICY;
604                 x_return_status := FND_API.G_RET_STS_ERROR ;
605 
606                 FND_MSG_PUB.Count_And_Get(
607                         p_count => x_msg_count,
608                         p_data  => x_msg_data );
609 
610         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
611                 ROLLBACK TO DELETE_UR_POLICY;
612                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
613 
614                 FND_MSG_PUB.Count_And_Get(
615                         p_count => x_msg_count,
616                         p_data  => x_msg_data );
617 
618         WHEN OTHERS THEN
619                 ROLLBACK TO DELETE_UR_POLICY;
620                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
621 
622                 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
623                         FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
624                 END IF;
625 
626                 FND_MSG_PUB.Count_And_Get(
627                         p_count => x_msg_count,
628                         p_data  => x_msg_data );
629 
630 END DELETE_UR_POLICY;
631 
632 PROCEDURE DELETE_UR_POLICY (
633   p_api_version         IN      NUMBER,
634   p_init_msg_list       IN      VARCHAR2        := FND_API.G_FALSE,
635   p_commit              IN      VARCHAR2        := FND_API.G_FALSE,
636 
637   p_policy_id           IN      jtf_prefab_ur_policies.policy_id%TYPE,
638 
639   p_object_version_number IN    jtf_prefab_ur_policies.object_version_number%TYPE,
640 
641   x_return_status       OUT  NOCOPY    VARCHAR2,
642   x_msg_count           OUT  NOCOPY    NUMBER,
643   x_msg_data            OUT  NOCOPY    VARCHAR2
644 ) AS
645         l_api_name              CONSTANT VARCHAR2(30)   := 'DELETE_UR_POLICY';
646         l_api_version           NUMBER  := p_api_version;
647 
648 BEGIN
649         -- Standard Start of API savepoint
650         SAVEPOINT DELETE_UR_POLICY;
651 
652         -- Standard call to check for call compatibility.
653         IF NOT FND_API.Compatible_API_Call (
654                 l_api_version,
655                 p_api_version,
656                 l_api_name,
657                 G_PKG_NAME)
658         THEN
659                 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
660         END IF;
661 
662         -- Initialize message list if p_init_msg_list is set to TRUE.
663         IF FND_API.To_Boolean( p_init_msg_list ) THEN
664                 FND_MSG_PUB.initialize;
665         END IF;
666 
667         -- Initialize API return status to success
668         x_return_status := FND_API.G_RET_STS_SUCCESS;
669 
670         -- real logic --
671         ----------------
672 
673         DELETE FROM jtf_prefab_ur_policies
674         WHERE policy_id = p_policy_id;
675 
676         -----------------------
677         -- end of real logic --
678 
679         -- Standard check of p_commit.
680         IF (FND_API.To_Boolean(p_commit)) THEN
681                 COMMIT WORK;
682         END IF;
683 
684         -- Standard call to get message count and if count is 1, get message info.
685         FND_MSG_PUB.Count_And_Get(
686                 p_count => x_msg_count,
687                 p_data  => x_msg_data );
688 
689 EXCEPTION
690         WHEN FND_API.G_EXC_ERROR THEN
691                 ROLLBACK TO DELETE_UR_POLICY;
692                 x_return_status := FND_API.G_RET_STS_ERROR ;
693 
694                 FND_MSG_PUB.Count_And_Get(
695                         p_count => x_msg_count,
696                         p_data  => x_msg_data );
697 
698         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
699                 ROLLBACK TO DELETE_UR_POLICY;
700                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
701 
702                 FND_MSG_PUB.Count_And_Get(
703                         p_count => x_msg_count,
704                         p_data  => x_msg_data );
705 
706         WHEN OTHERS THEN
707                 ROLLBACK TO DELETE_UR_POLICY;
708                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
709 
710                 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
711                         FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
712                 END IF;
713 
714                 FND_MSG_PUB.Count_And_Get(
715                         p_count => x_msg_count,
716                         p_data  => x_msg_data );
717 
718 END DELETE_UR_POLICY;
719 
720 PROCEDURE CONFIGURE_SYS_POLICY (
721   p_api_version         IN      NUMBER,
722   p_init_msg_list       IN      VARCHAR2        := FND_API.G_FALSE,
723   p_commit              IN      VARCHAR2        := FND_API.G_FALSE,
724 
725   p_start_flag          IN      jtf_prefab_sys_policies.start_flag%TYPE,
726   p_cpu                 IN      jtf_prefab_sys_policies.cpu%TYPE,
727   p_memory              IN      jtf_prefab_sys_policies.memory%TYPE,
728   p_disk_location       IN      jtf_prefab_sys_policies.disk_location%TYPE,
729   p_max_concurrency     IN      jtf_prefab_sys_policies.max_concurrency%TYPE,
730   p_use_load_balancer_flag IN      jtf_prefab_sys_policies.use_load_balancer_flag%TYPE,
731   p_load_balancer_url   IN      jtf_prefab_sys_policies.load_balancer_url%TYPE,
732   p_refresh_flag        IN      jtf_prefab_sys_policies.refresh_flag%TYPE,
733   p_interceptor_enabled_flag IN jtf_prefab_sys_policies.interceptor_enabled_flag%TYPE,
734   p_cache_memory        IN      jtf_prefab_sys_policies.cache_memory%TYPE,
735 
736   p_object_version_number IN OUT  NOCOPY  jtf_prefab_sys_policies.object_version_number%TYPE,
737   x_return_status       OUT  NOCOPY    VARCHAR2,
738   x_msg_count           OUT  NOCOPY    NUMBER,
739   x_msg_data            OUT  NOCOPY    VARCHAR2
740 ) AS
741         l_api_name              CONSTANT VARCHAR2(30)   := 'CONFIGURE_SYS_POLICY';
742         l_api_version           NUMBER  := p_api_version;
743 
744 BEGIN
745         -- Standard Start of API savepoint
746         SAVEPOINT CONFIGURE_SYS_POLICY;
747 
748         -- Standard call to check for call compatibility.
749         IF NOT FND_API.Compatible_API_Call (
750                 l_api_version,
751                 p_api_version,
752                 l_api_name,
753                 G_PKG_NAME)
754         THEN
755                 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
756         END IF;
757 
758         -- Initialize message list if p_init_msg_list is set to TRUE.
759         IF FND_API.To_Boolean( p_init_msg_list ) THEN
760                 FND_MSG_PUB.initialize;
761         END IF;
762 
763         -- Initialize API return status to success
764         x_return_status := FND_API.G_RET_STS_SUCCESS;
765 
766         -- real logic --
767         ----------------
768 
769         UPDATE jtf_prefab_sys_policies
770         SET object_version_number = p_object_version_number,
771             last_updated_by = G_USER_ID,
772             last_update_date = SYSDATE,
773             last_update_login = G_LOGIN_ID,
774             start_flag = p_start_flag,
775             cpu = p_cpu,
776             memory = p_memory,
777             disk_location = p_disk_location,
778             max_concurrency = p_max_concurrency,
779             use_load_balancer_flag = p_use_load_balancer_flag,
780             load_balancer_url = p_load_balancer_url,
781             refresh_flag = p_refresh_flag,
782             interceptor_enabled_flag = p_interceptor_enabled_flag,
783             cache_memory = p_cache_memory;
784 
785         IF SQL%NOTFOUND THEN
786           p_object_version_number := 1;
787 
788           INSERT INTO jtf_prefab_sys_policies (sys_policy_id,
789                                                object_version_number,
790                                                created_by,
791                                                creation_date,
792                                                last_updated_by,
793                                                last_update_date,
794                                                last_update_login,
795                                                -- security_group_id,
796                                                start_flag,
797                                                cpu,
798                                                memory,
799                                                disk_location,
800                                                max_concurrency,
801                                                use_load_balancer_flag,
802                                                load_balancer_url,
803                                                refresh_flag,
804                                                interceptor_enabled_flag,
805                                                cache_memory)
806           VALUES (jtf_prefab_sys_policies_s.NEXTVAL,
807                   p_object_version_number,
808                   G_USER_ID,
809                   SYSDATE,
810                   G_USER_ID,
811                   SYSDATE,
812                   G_LOGIN_ID,
813                   -- NULL,
814                   p_start_flag,
815                   p_cpu,
816                   p_memory,
817                   p_disk_location,
818                   p_max_concurrency,
819                   p_use_load_balancer_flag,
820                   p_load_balancer_url,
821                   p_refresh_flag,
822                   p_interceptor_enabled_flag,
823                   p_cache_memory);
824         END IF;
825 
826         -----------------------
827         -- end of real logic --
828 
829         -- Standard check of p_commit.
830         IF (FND_API.To_Boolean(p_commit)) THEN
831                 COMMIT WORK;
832         END IF;
833 
834         -- Standard call to get message count and if count is 1, get message info.
835         FND_MSG_PUB.Count_And_Get(
836                 p_count => x_msg_count,
837                 p_data  => x_msg_data );
838 
839 EXCEPTION
840         WHEN FND_API.G_EXC_ERROR THEN
841                 ROLLBACK TO CONFIGURE_SYS_POLICY;
842                 x_return_status := FND_API.G_RET_STS_ERROR ;
843 
844                 FND_MSG_PUB.Count_And_Get(
845                         p_count => x_msg_count,
846                         p_data  => x_msg_data );
847 
848         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
849                 ROLLBACK TO CONFIGURE_SYS_POLICY;
850                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
851 
852                 FND_MSG_PUB.Count_And_Get(
853                         p_count => x_msg_count,
854                         p_data  => x_msg_data );
855 
856         WHEN OTHERS THEN
857                 ROLLBACK TO CONFIGURE_SYS_POLICY;
858                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
859 
860                 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
861                         FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
862                 END IF;
863 
864                 FND_MSG_PUB.Count_And_Get(
865                         p_count => x_msg_count,
866                         p_data  => x_msg_data );
867 
868 END CONFIGURE_SYS_POLICY;
869 
870 PROCEDURE INSERT_WSH_POLICY(
871   p_api_version         IN      NUMBER,
872   p_init_msg_list       IN      VARCHAR2        := FND_API.G_FALSE,
873   p_commit              IN      VARCHAR2        := FND_API.G_FALSE,
874 
875   p_wsh_po_id           OUT  NOCOPY    jtf_prefab_wsh_poes_b.wsh_po_id%TYPE,
876   p_hostname            IN      jtf_prefab_wsh_poes_b.hostname%TYPE,
877   p_description         IN      jtf_prefab_wsh_poes_tl.description%TYPE,
878   p_weight              IN      jtf_prefab_wsh_poes_b.weight%TYPE,
879   p_load_pick_up_flag   IN      jtf_prefab_wsh_poes_b.load_pick_up_flag%TYPE,
880   p_cache_size          IN      jtf_prefab_wsh_poes_b.cache_size%TYPE,
881   p_wsh_type            IN      jtf_prefab_wsh_poes_b.wsh_type%TYPE,
882   p_prefab_enabled_flag IN      jtf_prefab_wsh_poes_b.prefab_enabled_flag%TYPE,
883 
884   p_object_version_number OUT  NOCOPY  jtf_prefab_wsh_poes_b.object_version_number%TYPE,
885 
886   x_return_status       OUT  NOCOPY    VARCHAR2,
887   x_msg_count           OUT  NOCOPY    NUMBER,
888   x_msg_data            OUT  NOCOPY    VARCHAR2
889 ) AS
890         -- local variables --
891         l_api_name              CONSTANT VARCHAR2(30)   := 'INSERT_WSH_POLICY';
892         l_api_version           NUMBER  := p_api_version;
893         l_row_id                VARCHAR2(255) := NULL;
894 
895         CURSOR sequence_cursor IS
896           SELECT jtf_prefab_wsh_poes_b_s.NEXTVAL from dual;
897 BEGIN
898         -- Standard Start of API savepoint
899         SAVEPOINT INSERT_WSH_POLICY;
900 
901         -- Standard call to check for call compatibility.
902         IF NOT FND_API.Compatible_API_Call (
903                 l_api_version,
904                 p_api_version,
905                 l_api_name,
906                 G_PKG_NAME)
907         THEN
908                 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
909         END IF;
910 
911         -- Initialize message list if p_init_msg_list is set to TRUE.
912         IF FND_API.To_Boolean( p_init_msg_list ) THEN
913                 FND_MSG_PUB.initialize;
914         END IF;
915 
916         -- Initialize API return status to success
917         x_return_status := FND_API.G_RET_STS_SUCCESS;
918 
919         -- real logic --
920         ----------------
921 
922    	OPEN sequence_cursor;
923    	FETCH sequence_cursor INTO p_wsh_po_id;
924    	CLOSE sequence_cursor;
925         p_object_version_number := 1;
926 
927         JTF_PREFAB_WSH_POES_PKG.INSERT_ROW(l_row_id,
928                                                p_wsh_po_id,
929                                                p_object_version_number,
930                                                NULL,
931                                                p_hostname,
932                                                p_weight,
933                                                p_load_pick_up_flag,
934                                                p_cache_size,
935                                                p_wsh_type,
936                                                p_prefab_enabled_flag,
937                                                p_description,
938                                                SYSDATE,
939                                                G_USER_ID,
940                                                SYSDATE,
941                                                G_USER_ID,
942                                                G_LOGIN_ID);
943         /*
944         INSERT INTO jtf_prefab_wsh_policies(wsh_policy_id,
945                                             object_version_number,
946                                             created_by,
947                                             creation_date,
948                                             last_updated_by,
949                                             last_update_date,
950                                             last_update_login,
951                                             -- security_group_id,
952                                             hostname,
953                                             description,
954                                             weight,
955                                             load_pick_up_flag,
956                                             prefab_enable_flag,
957                                             prefetch_enable_flag,
958                                             cache_enable_flag,
959                                             cache_size,
960                                             wsh_type)
961         VALUES (p_wsh_policy_id,
962                 p_object_version_number,
963                 G_USER_ID,
964                 SYSDATE,
965                 G_USER_ID,
966                 SYSDATE,
967                 G_LOGIN_ID,
968                 -- NULL,
969                 p_hostname,
970                 p_description,
971                 p_weight,
972                 p_load_pick_up_flag,
973                 p_prefab_enable_flag,
974                 p_prefetch_enable_flag,
975                 p_cache_enable_flag,
976                 p_cache_size,
977                 p_wsh_type);
978                 */
979 
980         -----------------------
981         -- end of real logic --
982 
983         -- Standard check of p_commit.
984         IF (FND_API.To_Boolean(p_commit)) THEN
985                 COMMIT WORK;
986         END IF;
987 
988         -- Standard call to get message count and if count is 1, get message info.
989         FND_MSG_PUB.Count_And_Get(
990                 p_count => x_msg_count,
991                 p_data  => x_msg_data );
992 
993 EXCEPTION
994         WHEN FND_API.G_EXC_ERROR THEN
995                 ROLLBACK TO INSERT_WSH_POLICY;
996                 x_return_status := FND_API.G_RET_STS_ERROR ;
997 
998                 FND_MSG_PUB.Count_And_Get(
999                         p_count => x_msg_count,
1000                         p_data  => x_msg_data );
1001 
1002         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1003                 ROLLBACK TO INSERT_WSH_POLICY;
1004                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1005 
1006                 FND_MSG_PUB.Count_And_Get(
1007                         p_count => x_msg_count,
1008                         p_data  => x_msg_data );
1009 
1010         WHEN OTHERS THEN
1011                 ROLLBACK TO INSERT_WSH_POLICY;
1012                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1013 
1014                 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
1015                         FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
1016                 END IF;
1017 
1018                 FND_MSG_PUB.Count_And_Get(
1019                         p_count => x_msg_count,
1020                         p_data  => x_msg_data );
1021 
1022 END INSERT_WSH_POLICY;
1023 
1024 PROCEDURE UPDATE_WSH_POLICY(
1025   p_api_version         IN      NUMBER,
1026   p_init_msg_list       IN      VARCHAR2        := FND_API.G_FALSE,
1027   p_commit              IN      VARCHAR2        := FND_API.G_FALSE,
1028 
1029   p_wsh_po_id           IN      jtf_prefab_wsh_poes_b.wsh_po_id%TYPE,
1030   p_hostname            IN      jtf_prefab_wsh_poes_b.hostname%TYPE,
1031   p_description         IN      jtf_prefab_wsh_poes_tl.description%TYPE,
1032   p_weight              IN      jtf_prefab_wsh_poes_b.weight%TYPE,
1033   p_load_pick_up_flag   IN      jtf_prefab_wsh_poes_b.load_pick_up_flag%TYPE,
1034   p_cache_size          IN      jtf_prefab_wsh_poes_b.cache_size%TYPE,
1035   p_wsh_type            IN      jtf_prefab_wsh_poes_b.wsh_type%TYPE,
1036   p_prefab_enabled_flag IN      jtf_prefab_wsh_poes_b.prefab_enabled_flag%TYPE,
1037 
1038   p_object_version_number IN OUT  NOCOPY jtf_prefab_wsh_poes_b.object_version_number%TYPE,
1039 
1040   x_return_status       OUT  NOCOPY    VARCHAR2,
1041   x_msg_count           OUT  NOCOPY    NUMBER,
1042   x_msg_data            OUT  NOCOPY    VARCHAR2
1043 ) AS
1044         -- local variables --
1045         l_api_name              CONSTANT VARCHAR2(30)   := 'UPDATE_WSH_POLICY';
1046         l_api_version           NUMBER  := p_api_version;
1047 
1048 BEGIN
1049         -- Standard Start of API savepoint
1050         SAVEPOINT UPDATE_WSH_POLICY;
1051 
1052         -- Standard call to check for call compatibility.
1053         IF NOT FND_API.Compatible_API_Call (
1054                 l_api_version,
1055                 p_api_version,
1056                 l_api_name,
1057                 G_PKG_NAME)
1058         THEN
1059                 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1060         END IF;
1061 
1062         -- Initialize message list if p_init_msg_list is set to TRUE.
1063         IF FND_API.To_Boolean( p_init_msg_list ) THEN
1064                 FND_MSG_PUB.initialize;
1065         END IF;
1066 
1067         -- Initialize API return status to success
1068         x_return_status := FND_API.G_RET_STS_SUCCESS;
1069 
1070         -- real logic --
1071         ----------------
1072         JTF_PREFAB_WSH_POES_PKG.UPDATE_ROW(p_wsh_po_id,
1073                                                p_object_version_number,
1074                                                NULL,
1075                                                p_hostname,
1076                                                p_weight,
1077                                                p_load_pick_up_flag,
1078                                                p_cache_size,
1079                                                p_wsh_type,
1080                                                p_prefab_enabled_flag,
1081                                                p_description,
1082                                                SYSDATE,
1083                                                G_USER_ID,
1084                                                G_LOGIN_ID);
1085         /*
1086         UPDATE jtf_prefab_wsh_policies
1087         SET object_version_number = p_object_version_number,
1088             last_updated_by = G_USER_ID,
1089             last_update_date = SYSDATE,
1090             last_update_login = G_LOGIN_ID,
1091             description= p_description,
1092             weight = p_weight,
1093             load_pick_up_flag = p_load_pick_up_flag,
1094             prefab_enable_flag = p_prefab_enable_flag,
1095             prefetch_enable_flag = p_prefetch_enable_flag,
1096             cache_enable_flag = p_cache_enable_flag,
1097             cache_size = p_cache_size,
1098             wsh_type = p_wsh_type
1099         WHERE wsh_policy_id = p_wsh_policy_id;
1100          */
1101 
1102         -----------------------
1103         -- end of real logic --
1104 
1105         -- Standard check of p_commit.
1106         IF (FND_API.To_Boolean(p_commit)) THEN
1107                 COMMIT WORK;
1108         END IF;
1109 
1110         -- Standard call to get message count and if count is 1, get message info.
1111         FND_MSG_PUB.Count_And_Get(
1112                 p_count => x_msg_count,
1113                 p_data  => x_msg_data );
1114 
1115 EXCEPTION
1116         WHEN FND_API.G_EXC_ERROR THEN
1117                 ROLLBACK TO UPDATE_WSH_POLICY;
1118                 x_return_status := FND_API.G_RET_STS_ERROR ;
1119 
1120                 FND_MSG_PUB.Count_And_Get(
1121                         p_count => x_msg_count,
1122                         p_data  => x_msg_data );
1123 
1124         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1125                 ROLLBACK TO UPDATE_WSH_POLICY;
1126                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1127 
1128                 FND_MSG_PUB.Count_And_Get(
1129                         p_count => x_msg_count,
1130                         p_data  => x_msg_data );
1131 
1132         WHEN OTHERS THEN
1133                 ROLLBACK TO UPDATE_WSH_POLICY;
1134                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1135 
1136                 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
1137                         FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
1138                 END IF;
1139 
1140                 FND_MSG_PUB.Count_And_Get(
1141                         p_count => x_msg_count,
1142                         p_data  => x_msg_data );
1143 
1144 END UPDATE_WSH_POLICY;
1145 
1146 procedure DELETE_WSH_POLICY(
1147   p_api_version         IN      NUMBER,
1148   p_init_msg_list       IN      VARCHAR2        := FND_API.G_FALSE,
1149   p_commit              IN      VARCHAR2        := FND_API.G_FALSE,
1150 
1151   p_wsh_po_id           IN      jtf_prefab_wsh_poes_b.wsh_po_id%TYPE,
1152 
1153   p_object_version_number IN    jtf_prefab_wsh_poes_b.object_version_number%TYPE,
1154 
1155   x_return_status       OUT  NOCOPY    VARCHAR2,
1156   x_msg_count           OUT  NOCOPY    NUMBER,
1157   x_msg_data            OUT  NOCOPY    VARCHAR2
1158 ) AS
1159         l_api_name              CONSTANT VARCHAR2(30) := 'DELETE_WSH_POLICY';
1160         l_api_version           CONSTANT NUMBER := p_api_version;
1161 
1162 BEGIN
1163         -- Standard Start of API savepoint
1164         SAVEPOINT DELETE_WSH_POLICY;
1165 
1166         -- Standard call to check for call compatibility.
1167         IF NOT FND_API.Compatible_API_Call (
1168                 l_api_version,
1169                 p_api_version,
1170                 l_api_name,
1171                 G_PKG_NAME)
1172         THEN
1173                 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1174         END IF;
1175 
1176         -- Initialize message list if p_init_msg_list is set to TRUE.
1177         IF FND_API.To_Boolean( p_init_msg_list ) THEN
1178                 FND_MSG_PUB.initialize;
1179         END IF;
1180 
1181         -- Initialize API return status to success
1182         x_return_status := FND_API.G_RET_STS_SUCCESS;
1183 
1184         -- real logic --
1185         ----------------
1186 
1187         JTF_PREFAB_WSH_POES_PKG.DELETE_ROW(p_wsh_po_id);
1188 
1189         /*
1190         DELETE FROM jtf_prefab_wsh_policies
1191         WHERE wsh_policy_id = p_wsh_policy_id;
1192          */
1193 
1194         JTF_PREFAB_CACHE_PUB.DELETE_HOST_APPS_FOR_HOST(p_api_version,
1195                                                        p_init_msg_list,
1196                                                        p_commit,
1197                                                        p_wsh_po_id,
1198                                                        p_object_version_number,
1199                                                        x_return_status,
1200                                                        x_msg_count,
1201                                                        x_msg_data);
1202 
1203         -----------------------
1204         -- end of real logic --
1205 
1206         -- Standard check of p_commit.
1207         IF (FND_API.To_Boolean(p_commit)) THEN
1208                 COMMIT WORK;
1209         END IF;
1210 
1211         -- Standard call to get message count and if count is 1, get message info.
1212         FND_MSG_PUB.Count_And_Get(
1213                 p_count => x_msg_count,
1214                 p_data  => x_msg_data );
1215 
1216 EXCEPTION
1217         WHEN FND_API.G_EXC_ERROR THEN
1218                 ROLLBACK TO DELETE_WSH_POLICY;
1219                 x_return_status := FND_API.G_RET_STS_ERROR ;
1220 
1221                 FND_MSG_PUB.Count_And_Get(
1222                         p_count => x_msg_count,
1223                         p_data  => x_msg_data );
1224 
1225         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1226                 ROLLBACK TO DELETE_WSH_POLICY;
1227                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1228 
1229                 FND_MSG_PUB.Count_And_Get(
1230                         p_count => x_msg_count,
1231                         p_data  => x_msg_data );
1232 
1233         WHEN OTHERS THEN
1234                 ROLLBACK TO DELETE_WSH_POLICY;
1235                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1236 
1237                 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
1238                         FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
1239                 END IF;
1240 
1241                 FND_MSG_PUB.Count_And_Get(
1242                         p_count => x_msg_count,
1243                         p_data  => x_msg_data );
1244 
1245 END DELETE_WSH_POLICY;
1246 
1247 PROCEDURE INSERT_WSHP_POLICY(
1248   p_api_version         IN      NUMBER,
1249   p_init_msg_list       IN      VARCHAR2        := FND_API.G_FALSE,
1250   p_commit              IN      VARCHAR2        := FND_API.G_FALSE,
1251 
1252   p_wsh_po_id           IN      jtf_prefab_wshp_policies.wsh_po_id%TYPE,
1253   p_port                IN      jtf_prefab_wshp_policies.port%TYPE,
1254 
1255   p_object_version_number OUT  NOCOPY  jtf_prefab_wshp_policies.object_version_number%TYPE,
1256 
1257   x_return_status       OUT  NOCOPY    VARCHAR2,
1258   x_msg_count           OUT  NOCOPY    NUMBER,
1259   x_msg_data            OUT  NOCOPY    VARCHAR2
1260 ) AS
1261         -- local variables --
1262         l_api_name              CONSTANT VARCHAR2(30)   := 'INSERT_WSHP_POLICY';
1263         l_api_version           NUMBER  := p_api_version;
1264 
1265 BEGIN
1266         -- Standard Start of API savepoint
1267         SAVEPOINT INSERT_WSHP_POLICY;
1268 
1269         -- Standard call to check for call compatibility.
1270         IF NOT FND_API.Compatible_API_Call (
1271                 l_api_version,
1272                 p_api_version,
1273                 l_api_name,
1274                 G_PKG_NAME)
1275         THEN
1276                 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1277         END IF;
1278 
1279         -- Initialize message list if p_init_msg_list is set to TRUE.
1280         IF FND_API.To_Boolean( p_init_msg_list ) THEN
1281                 FND_MSG_PUB.initialize;
1282         END IF;
1283 
1284         -- Initialize API return status to success
1285         x_return_status := FND_API.G_RET_STS_SUCCESS;
1286 
1287         -- real logic --
1288         ----------------
1289         p_object_version_number := 1;
1290 
1291         INSERT INTO jtf_prefab_wshp_policies (wshp_policy_id,
1292                                               object_version_number,
1293                                               created_by,
1294                                               creation_date,
1295                                               last_updated_by,
1296                                               last_update_date,
1297                                               last_update_login,
1298                                               -- security_group_id,
1299                                               wsh_po_id,
1300                                               port)
1301         VALUES (jtf_prefab_wshp_policies_s.NEXTVAL,
1302                 p_object_version_number,
1303                 G_USER_ID,
1304                 SYSDATE,
1305                 G_USER_ID,
1306                 SYSDATE,
1307                 G_LOGIN_ID,
1308                 -- NULL,
1309                 p_wsh_po_id,
1310                 p_port);
1311 
1312         -----------------------
1313         -- end of real logic --
1314 
1315         -- Standard check of p_commit.
1316         IF (FND_API.To_Boolean(p_commit)) THEN
1317                 COMMIT WORK;
1318         END IF;
1319 
1320         -- Standard call to get message count and if count is 1, get message info.
1321         FND_MSG_PUB.Count_And_Get(
1322                 p_count => x_msg_count,
1323                 p_data  => x_msg_data );
1324 
1325 EXCEPTION
1326         WHEN FND_API.G_EXC_ERROR THEN
1327                 ROLLBACK TO INSERT_WSHP_POLICY;
1328                 x_return_status := FND_API.G_RET_STS_ERROR ;
1329 
1330                 FND_MSG_PUB.Count_And_Get(
1331                         p_count => x_msg_count,
1332                         p_data  => x_msg_data );
1333 
1334         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1335                 ROLLBACK TO INSERT_WSHP_POLICY;
1336                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1337 
1338                 FND_MSG_PUB.Count_And_Get(
1339                         p_count => x_msg_count,
1340                         p_data  => x_msg_data );
1341 
1342         WHEN OTHERS THEN
1343                 ROLLBACK TO INSERT_WSHP_POLICY;
1344                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1345 
1346                 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
1347                         FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
1348                 END IF;
1349 
1350                 FND_MSG_PUB.Count_And_Get(
1351                         p_count => x_msg_count,
1352                         p_data  => x_msg_data );
1353 
1354 END INSERT_WSHP_POLICY;
1355 
1356 PROCEDURE DELETE_WSHP_POLICY (
1357   p_api_version         IN      NUMBER,
1358   p_init_msg_list       IN      VARCHAR2        := FND_API.G_FALSE,
1359   p_commit              IN      VARCHAR2        := FND_API.G_FALSE,
1360 
1361   p_wsh_po_id           IN      jtf_prefab_wshp_policies.wsh_po_id%TYPE,
1362   p_port                IN      jtf_prefab_wshp_policies.port%TYPE,
1363 
1364   p_object_version_number IN    jtf_prefab_wshp_policies.object_version_number%TYPE,
1365 
1366   x_return_status       OUT  NOCOPY    VARCHAR2,
1367   x_msg_count           OUT  NOCOPY    NUMBER,
1368   x_msg_data            OUT  NOCOPY    VARCHAR2
1369 ) AS
1370         l_api_name              CONSTANT VARCHAR2(30)   := 'DELETE_WSHP_POLICY';
1371         l_api_version           NUMBER  := p_api_version;
1372 
1373 BEGIN
1374         -- Standard Start of API savepoint
1375         SAVEPOINT DELETE_WSHP_POLICY;
1376 
1377         -- Standard call to check for call compatibility.
1378         IF NOT FND_API.Compatible_API_Call (
1379                 l_api_version,
1380                 p_api_version,
1381                 l_api_name,
1382                 G_PKG_NAME)
1383         THEN
1384                 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1385         END IF;
1386 
1387         -- Initialize message list if p_init_msg_list is set to TRUE.
1388         IF FND_API.To_Boolean( p_init_msg_list ) THEN
1389                 FND_MSG_PUB.initialize;
1390         END IF;
1391 
1392         -- Initialize API return status to success
1393         x_return_status := FND_API.G_RET_STS_SUCCESS;
1394 
1395         -- real logic --
1396         ----------------
1397 
1398         DELETE FROM jtf_prefab_wshp_policies
1399         WHERE wsh_po_id = p_wsh_po_id
1400         AND   port = p_port;
1401 
1402         -----------------------
1403         -- end of real logic --
1404 
1405         -- Standard check of p_commit.
1406         IF (FND_API.To_Boolean(p_commit)) THEN
1407                 COMMIT WORK;
1408         END IF;
1409 
1410         -- Standard call to get message count and if count is 1, get message info.
1411         FND_MSG_PUB.Count_And_Get(
1412                 p_count => x_msg_count,
1413                 p_data  => x_msg_data );
1414 
1415 EXCEPTION
1416         WHEN FND_API.G_EXC_ERROR THEN
1417                 ROLLBACK TO DELETE_WSHP_POLICY;
1418                 x_return_status := FND_API.G_RET_STS_ERROR ;
1419 
1420                 FND_MSG_PUB.Count_And_Get(
1421                         p_count => x_msg_count,
1422                         p_data  => x_msg_data );
1423 
1424         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1425                 ROLLBACK TO DELETE_WSHP_POLICY;
1426                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1427 
1428                 FND_MSG_PUB.Count_And_Get(
1429                         p_count => x_msg_count,
1430                         p_data  => x_msg_data );
1431 
1432         WHEN OTHERS THEN
1433                 ROLLBACK TO DELETE_WSHP_POLICY;
1434                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1435 
1436                 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
1437                         FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
1438                 END IF;
1439 
1440                 FND_MSG_PUB.Count_And_Get(
1441                         p_count => x_msg_count,
1442                         p_data  => x_msg_data );
1443 
1444 END DELETE_WSHP_POLICY;
1445 
1446 PROCEDURE DELETE_WSHP_POLICY (
1447   p_api_version         IN      NUMBER,
1448   p_init_msg_list       IN      VARCHAR2        := FND_API.G_FALSE,
1449   p_commit              IN      VARCHAR2        := FND_API.G_FALSE,
1450 
1451   p_wsh_po_id           IN      jtf_prefab_wshp_policies.wsh_po_id%TYPE,
1452 
1453   p_object_version_number IN    jtf_prefab_wshp_policies.object_version_number%TYPE,
1454 
1455   x_return_status       OUT  NOCOPY    VARCHAR2,
1456   x_msg_count           OUT  NOCOPY    NUMBER,
1457   x_msg_data            OUT  NOCOPY    VARCHAR2
1458 ) AS
1459         l_api_name              CONSTANT VARCHAR2(30)   := 'DELETE_WSHP_POLICY';
1460         l_api_version           NUMBER  := p_api_version;
1461 
1462 BEGIN
1463         -- Standard Start of API savepoint
1464         SAVEPOINT DELETE_WSHP_POLICY;
1465 
1466         -- Standard call to check for call compatibility.
1467         IF NOT FND_API.Compatible_API_Call (
1468                 l_api_version,
1469                 p_api_version,
1470                 l_api_name,
1471                 G_PKG_NAME)
1472         THEN
1473                 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1474         END IF;
1475 
1476         -- Initialize message list if p_init_msg_list is set to TRUE.
1477         IF FND_API.To_Boolean( p_init_msg_list ) THEN
1478                 FND_MSG_PUB.initialize;
1479         END IF;
1480 
1481         -- Initialize API return status to success
1482         x_return_status := FND_API.G_RET_STS_SUCCESS;
1483 
1484         -- real logic --
1485         ----------------
1486 
1487         DELETE FROM jtf_prefab_wshp_policies
1488         WHERE wsh_po_id = p_wsh_po_id;
1489 
1490         -----------------------
1491         -- end of real logic --
1492 
1493         -- Standard check of p_commit.
1494         IF (FND_API.To_Boolean(p_commit)) THEN
1495                 COMMIT WORK;
1496         END IF;
1497 
1498         -- Standard call to get message count and if count is 1, get message info.
1499         FND_MSG_PUB.Count_And_Get(
1500                 p_count => x_msg_count,
1501                 p_data  => x_msg_data );
1502 
1503 EXCEPTION
1504         WHEN FND_API.G_EXC_ERROR THEN
1505                 ROLLBACK TO DELETE_WSHP_POLICY;
1506                 x_return_status := FND_API.G_RET_STS_ERROR ;
1507 
1508                 FND_MSG_PUB.Count_And_Get(
1509                         p_count => x_msg_count,
1510                         p_data  => x_msg_data );
1511 
1512         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1513                 ROLLBACK TO DELETE_WSHP_POLICY;
1514                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1515 
1516                 FND_MSG_PUB.Count_And_Get(
1517                         p_count => x_msg_count,
1518                         p_data  => x_msg_data );
1519 
1520         WHEN OTHERS THEN
1521                 ROLLBACK TO DELETE_WSHP_POLICY;
1522                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1523 
1524                 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
1525                         FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
1526                 END IF;
1527 
1528                 FND_MSG_PUB.Count_And_Get(
1529                         p_count => x_msg_count,
1530                         p_data  => x_msg_data );
1531 
1532 END DELETE_WSHP_POLICY;
1533 
1534 END JTF_PREFAB_POLICY_PUB;