DBA Data[Home] [Help]

PACKAGE BODY: APPS.JTF_PREFAB_LOAD_DIST_PUB

Source


1 Package Body JTF_PREFAB_LOAD_DIST_PUB AS
2 /* $Header: jtfprefabldb.pls 120.1 2005/07/02 00:56:38 appldev ship $ */
3 
4 -- global variables --
5 G_PKG_NAME      CONSTANT VARCHAR2(30):='JTF_PREFAB_LOAD_DIST_PUB';
6 G_FILE_NAME     CONSTANT VARCHAR2(16):='jtfprefabldb.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_PRB(
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           IN      jtf_prefab_prbs.policy_id%TYPE,
17   p_uri                 IN      jtf_prefab_prbs.uri%TYPE,
18   p_user_id             IN      jtf_prefab_prbs.user_id%TYPE,
19   p_responsibility_id   IN      jtf_prefab_prbs.responsibility_id%TYPE,
20   p_application_id      IN      jtf_prefab_prbs.application_id%TYPE,
21   p_prefab_hostname     IN      jtf_prefab_prbs.prefab_hostname%TYPE,
22 
23   p_object_version_number OUT NOCOPY   jtf_prefab_prbs.object_version_number%TYPE,
24 
25   x_return_status       OUT NOCOPY     VARCHAR2,
26   x_msg_count           OUT NOCOPY     NUMBER,
27   x_msg_data            OUT NOCOPY     VARCHAR2
28 ) AS
29         -- local variables --
30         l_api_name              CONSTANT VARCHAR2(30)   := 'INSERT_PRB';
31         l_api_version           NUMBER  := p_api_version;
32 
33 BEGIN
34         -- Standard Start of API savepoint
35         SAVEPOINT INSERT_PRB;
36 
37         -- Standard call to check for call compatibility.
38         IF NOT FND_API.Compatible_API_Call (
39                 l_api_version,
40                 p_api_version,
41                 l_api_name,
42                 G_PKG_NAME)
43         THEN
44                 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
45         END IF;
46 
47         -- Initialize message list if p_init_msg_list is set to TRUE.
48         IF FND_API.To_Boolean( p_init_msg_list ) THEN
49                 FND_MSG_PUB.initialize;
50         END IF;
51 
52         -- Initialize API return status to success
53         x_return_status := FND_API.G_RET_STS_SUCCESS;
54 
55         -- real logic --
56         ----------------
57 
58         p_object_version_number := 1;
59 
60         INSERT INTO jtf_prefab_prbs(prb_id,
61                                     object_version_number,
62                                     created_by,
63                                     creation_date,
64                                     last_updated_by,
65                                     last_update_date,
66                                     last_update_login,
67                                     -- security_group_id,
68                                     policy_id,
69                                     uri,
70                                     user_id,
71                                     responsibility_id,
72                                     application_id,
73                                     prefab_hostname)
74         VALUES (jtf_prefab_prbs_s.NEXTVAL,
75                 p_object_version_number,
76                 G_USER_ID,
77                 SYSDATE,
78                 G_USER_ID,
79                 SYSDATE,
80                 G_LOGIN_ID,
81                 -- NULL,
82                 p_policy_id,
83                 p_uri,
84                 p_user_id,
85                 p_responsibility_id,
86                 p_application_id,
87                 p_prefab_hostname);
88 
89         -----------------------
90         -- end of real logic --
91 
92         -- Standard check of p_commit.
93         IF (FND_API.To_Boolean(p_commit)) THEN
94                 COMMIT WORK;
95         END IF;
96 
97         -- Standard call to get message count and if count is 1, get message info.
98         FND_MSG_PUB.Count_And_Get(
99                 p_count => x_msg_count,
100                 p_data  => x_msg_data );
101 
102 EXCEPTION
103         WHEN FND_API.G_EXC_ERROR THEN
104                 ROLLBACK TO INSERT_PRB;
105                 x_return_status := FND_API.G_RET_STS_ERROR ;
106 
107                 FND_MSG_PUB.Count_And_Get(
108                         p_count => x_msg_count,
109                         p_data  => x_msg_data );
110 
111         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
112                 ROLLBACK TO INSERT_PRB;
113                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
114 
115                 FND_MSG_PUB.Count_And_Get(
116                         p_count => x_msg_count,
117                         p_data  => x_msg_data );
118 
119         WHEN OTHERS THEN
120                 ROLLBACK TO INSERT_PRB;
121                 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
122 
123                 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR ) THEN
124                         FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME, l_api_name );
125                 END IF;
126 
127                 FND_MSG_PUB.Count_And_Get(
128                         p_count => x_msg_count,
129                         p_data  => x_msg_data );
130 
131 END INSERT_PRB;
132 
133 END JTF_PREFAB_LOAD_DIST_PUB;