[Home] [Help]
PACKAGE BODY: APPS.JTF_RS_GROUP_ORGS_PUB
Source
1 PACKAGE BODY JTF_RS_GROUP_ORGS_PUB AS
2 /* $Header: jtfrsuob.pls 120.0 2005/05/11 08:22:49 appldev noship $ */
3
4 /*****************************************************************************************
5 This is a public API that caller will invoke.
6 It provides procedures for managing Resource Group to HR Org mapping, like
7 create, update and delete from other modules.
8 Its main procedures are as following:
9 Create Resource Group to HR Org mapping
10 Update Resource Group to HR Org mapping
11 Delete Resource Group to HR Org mapping
12 Calls to these procedures will invoke procedures from jtf_rs_group_orgs_pvt
13 to do business validations and to do actual inserts, updates and deletes into
14 tables.
15 ******************************************************************************************/
16
17 /* Package variables. */
18
19 G_PKG_NAME CONSTANT VARCHAR2(30) := 'JTF_RS_GROUP_ORGS_PUB';
20
21 /* Procedure to create the Resource Group to HR Org mapping
22 based on input values passed by calling routines. */
23
24 PROCEDURE create_group_org
25 (P_API_VERSION IN NUMBER,
26 P_INIT_MSG_LIST IN VARCHAR2,
27 P_COMMIT IN VARCHAR2,
28 P_GROUP_ID IN JTF_RS_GROUP_ORGANIZATIONS.GROUP_ID%TYPE,
29 P_ORGANIZATION_ID IN JTF_RS_GROUP_ORGANIZATIONS.ORGANIZATION_ID%TYPE,
30 P_ATTRIBUTE1 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE1%TYPE,
31 P_ATTRIBUTE2 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE2%TYPE,
32 P_ATTRIBUTE3 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE3%TYPE,
33 P_ATTRIBUTE4 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE4%TYPE,
34 P_ATTRIBUTE5 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE5%TYPE,
35 P_ATTRIBUTE6 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE6%TYPE,
36 P_ATTRIBUTE7 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE7%TYPE,
37 P_ATTRIBUTE8 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE8%TYPE,
38 P_ATTRIBUTE9 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE9%TYPE,
39 P_ATTRIBUTE10 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE10%TYPE,
40 P_ATTRIBUTE11 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE11%TYPE,
41 P_ATTRIBUTE12 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE12%TYPE,
42 P_ATTRIBUTE13 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE13%TYPE,
43 P_ATTRIBUTE14 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE14%TYPE,
44 P_ATTRIBUTE15 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE15%TYPE,
45 P_ATTRIBUTE_CATEGORY IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE_CATEGORY%TYPE,
46 X_RETURN_STATUS OUT NOCOPY VARCHAR2,
47 X_MSG_COUNT OUT NOCOPY NUMBER,
48 X_MSG_DATA OUT NOCOPY VARCHAR2
49 ) IS
50
51 l_api_version CONSTANT NUMBER := 1.0;
52 l_api_name CONSTANT VARCHAR2(30) := 'CREATE_GROUP_ORG';
53
54 BEGIN
55
56 SAVEPOINT sp_create_group_org;
57
58 x_return_status := fnd_api.g_ret_sts_success;
59
60 IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
61 RAISE fnd_api.g_exc_unexpected_error;
62 END IF;
63
64 IF fnd_api.to_boolean(p_init_msg_list) THEN
65 fnd_msg_pub.initialize;
66 END IF;
67
68 /* Call the private API to do validations and data processing */
69 JTF_RS_GROUP_ORGS_PVT.create_group_org
70 (P_API_VERSION => P_API_VERSION,
71 P_INIT_MSG_LIST => P_INIT_MSG_LIST,
72 P_COMMIT => P_COMMIT,
73 P_GROUP_ID => P_GROUP_ID,
74 P_ORGANIZATION_ID => P_ORGANIZATION_ID,
75 P_ATTRIBUTE1 => P_ATTRIBUTE1,
76 P_ATTRIBUTE2 => P_ATTRIBUTE2,
77 P_ATTRIBUTE3 => P_ATTRIBUTE3,
78 P_ATTRIBUTE4 => P_ATTRIBUTE4,
79 P_ATTRIBUTE5 => P_ATTRIBUTE5,
80 P_ATTRIBUTE6 => P_ATTRIBUTE6,
81 P_ATTRIBUTE7 => P_ATTRIBUTE7,
82 P_ATTRIBUTE8 => P_ATTRIBUTE8,
83 P_ATTRIBUTE9 => P_ATTRIBUTE9,
84 P_ATTRIBUTE10 => P_ATTRIBUTE10,
85 P_ATTRIBUTE11 => P_ATTRIBUTE11,
86 P_ATTRIBUTE12 => P_ATTRIBUTE12,
87 P_ATTRIBUTE13 => P_ATTRIBUTE13,
88 P_ATTRIBUTE14 => P_ATTRIBUTE14,
89 P_ATTRIBUTE15 => P_ATTRIBUTE15,
90 P_ATTRIBUTE_CATEGORY => P_ATTRIBUTE_CATEGORY,
91 X_RETURN_STATUS => X_RETURN_STATUS,
92 X_MSG_COUNT => X_MSG_COUNT,
93 X_MSG_DATA => X_MSG_DATA
94 );
95
96 IF NOT (x_return_status = fnd_api.g_ret_sts_success) THEN
97 RAISE fnd_api.g_exc_unexpected_error;
98 END IF;
99
100 IF fnd_api.to_boolean(p_commit) THEN
101 COMMIT WORK;
102 END IF;
103
104 fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
105
106 EXCEPTION
107
108 WHEN fnd_api.g_exc_unexpected_error THEN
109 ROLLBACK TO sp_create_group_org;
110 x_return_status := fnd_api.g_ret_sts_unexp_error;
111 fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
112
113 WHEN OTHERS THEN
114 ROLLBACK TO sp_create_group_org;
115 fnd_message.set_name ('JTF', 'JTF_RS_UNEXP_ERROR');
116 fnd_message.set_token('P_SQLCODE',SQLCODE);
117 fnd_message.set_token('P_SQLERRM',SQLERRM);
118 fnd_message.set_token('P_API_NAME',g_pkg_name||'.'||l_api_name);
119 FND_MSG_PUB.add;
120 x_return_status := fnd_api.g_ret_sts_unexp_error;
121 fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
122
123 END create_group_org;
124
125 /* Procedure to update the Resource Group to HR Org mapping Attributes
126 based on input values passed by calling routines. */
127
128 PROCEDURE update_group_org
129 (P_API_VERSION IN NUMBER,
130 P_INIT_MSG_LIST IN VARCHAR2,
131 P_COMMIT IN VARCHAR2,
132 P_GROUP_ID IN JTF_RS_GROUP_ORGANIZATIONS.GROUP_ID%TYPE,
133 P_ORGANIZATION_ID IN JTF_RS_GROUP_ORGANIZATIONS.ORGANIZATION_ID%TYPE,
134 P_ATTRIBUTE1 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE1%TYPE,
135 P_ATTRIBUTE2 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE2%TYPE,
136 P_ATTRIBUTE3 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE3%TYPE,
137 P_ATTRIBUTE4 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE4%TYPE,
138 P_ATTRIBUTE5 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE5%TYPE,
139 P_ATTRIBUTE6 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE6%TYPE,
140 P_ATTRIBUTE7 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE7%TYPE,
141 P_ATTRIBUTE8 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE8%TYPE,
142 P_ATTRIBUTE9 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE9%TYPE,
143 P_ATTRIBUTE10 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE10%TYPE,
144 P_ATTRIBUTE11 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE11%TYPE,
145 P_ATTRIBUTE12 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE12%TYPE,
146 P_ATTRIBUTE13 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE13%TYPE,
147 P_ATTRIBUTE14 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE14%TYPE,
148 P_ATTRIBUTE15 IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE15%TYPE,
149 P_ATTRIBUTE_CATEGORY IN JTF_RS_GROUP_ORGANIZATIONS.ATTRIBUTE_CATEGORY%TYPE,
150 P_OBJECT_VERSION_NUMBER IN OUT NOCOPY JTF_RS_GROUP_ORGANIZATIONS.OBJECT_VERSION_NUMBER%TYPE,
151 X_RETURN_STATUS OUT NOCOPY VARCHAR2,
152 X_MSG_COUNT OUT NOCOPY NUMBER,
153 X_MSG_DATA OUT NOCOPY VARCHAR2
154 ) IS
155
156 l_api_version CONSTANT NUMBER := 1.0;
157 l_api_name CONSTANT VARCHAR2(30) := 'UPDATE_GROUP_ORG';
158
159 BEGIN
160
161 SAVEPOINT sp_update_group_org;
162
163 x_return_status := fnd_api.g_ret_sts_success;
164
165 IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
166 RAISE fnd_api.g_exc_unexpected_error;
167 END IF;
168
169 IF fnd_api.to_boolean(p_init_msg_list) THEN
170 fnd_msg_pub.initialize;
171 END IF;
172
173 /* Call the private API to do validations and data processing */
174 JTF_RS_GROUP_ORGS_PVT.update_group_org
175 (P_API_VERSION => P_API_VERSION,
176 P_INIT_MSG_LIST => P_INIT_MSG_LIST,
177 P_COMMIT => P_COMMIT,
178 P_GROUP_ID => P_GROUP_ID,
179 P_ORGANIZATION_ID => P_ORGANIZATION_ID,
180 P_ATTRIBUTE1 => P_ATTRIBUTE1,
181 P_ATTRIBUTE2 => P_ATTRIBUTE2,
182 P_ATTRIBUTE3 => P_ATTRIBUTE3,
183 P_ATTRIBUTE4 => P_ATTRIBUTE4,
184 P_ATTRIBUTE5 => P_ATTRIBUTE5,
185 P_ATTRIBUTE6 => P_ATTRIBUTE6,
186 P_ATTRIBUTE7 => P_ATTRIBUTE7,
187 P_ATTRIBUTE8 => P_ATTRIBUTE8,
188 P_ATTRIBUTE9 => P_ATTRIBUTE9,
189 P_ATTRIBUTE10 => P_ATTRIBUTE10,
190 P_ATTRIBUTE11 => P_ATTRIBUTE11,
191 P_ATTRIBUTE12 => P_ATTRIBUTE12,
192 P_ATTRIBUTE13 => P_ATTRIBUTE13,
193 P_ATTRIBUTE14 => P_ATTRIBUTE14,
194 P_ATTRIBUTE15 => P_ATTRIBUTE15,
195 P_ATTRIBUTE_CATEGORY => P_ATTRIBUTE_CATEGORY,
196 P_OBJECT_VERSION_NUMBER => P_OBJECT_VERSION_NUMBER,
197 X_RETURN_STATUS => X_RETURN_STATUS,
198 X_MSG_COUNT => X_MSG_COUNT,
199 X_MSG_DATA => X_MSG_DATA
200 );
201
202 IF NOT (x_return_status = fnd_api.g_ret_sts_success) THEN
203 RAISE fnd_api.g_exc_unexpected_error;
204 END IF;
205
206 IF fnd_api.to_boolean(p_commit) THEN
207 COMMIT WORK;
208 END IF;
209
210 fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
211
212 EXCEPTION
213
214 WHEN fnd_api.g_exc_unexpected_error THEN
215 ROLLBACK TO sp_update_group_org;
216 x_return_status := fnd_api.g_ret_sts_unexp_error;
217 fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
218
219 WHEN OTHERS THEN
220 ROLLBACK TO sp_update_group_org;
221 fnd_message.set_name ('JTF', 'JTF_RS_UNEXP_ERROR');
222 fnd_message.set_token('P_SQLCODE',SQLCODE);
223 fnd_message.set_token('P_SQLERRM',SQLERRM);
224 fnd_message.set_token('P_API_NAME',g_pkg_name||'.'||l_api_name);
225 FND_MSG_PUB.add;
226 x_return_status := fnd_api.g_ret_sts_unexp_error;
227 fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
228
229 END update_group_org;
230
231 /* Procedure to delete resource group - HR Org mapping */
232
233 PROCEDURE delete_group_org
234 (P_API_VERSION IN NUMBER,
235 P_INIT_MSG_LIST IN VARCHAR2,
236 P_COMMIT IN VARCHAR2,
237 P_GROUP_ID IN JTF_RS_GROUP_ORGANIZATIONS.GROUP_ID%TYPE,
238 P_ORGANIZATION_ID IN JTF_RS_GROUP_ORGANIZATIONS.ORGANIZATION_ID%TYPE,
239 P_OBJECT_VERSION_NUMBER IN JTF_RS_GROUP_ORGANIZATIONS.OBJECT_VERSION_NUMBER%TYPE,
240 X_RETURN_STATUS OUT NOCOPY VARCHAR2,
241 X_MSG_COUNT OUT NOCOPY NUMBER,
242 X_MSG_DATA OUT NOCOPY VARCHAR2
243 ) IS
244
245 l_api_version CONSTANT NUMBER := 1.0;
246 l_api_name CONSTANT VARCHAR2(30) := 'DELETE_GROUP_ORG';
247
248 BEGIN
249
250 SAVEPOINT sp_delete_group_org;
251
252 x_return_status := fnd_api.g_ret_sts_success;
253
254 IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
255 RAISE fnd_api.g_exc_unexpected_error;
256 END IF;
257
258 IF fnd_api.to_boolean(p_init_msg_list) THEN
259 fnd_msg_pub.initialize;
260 END IF;
261
262 /* Call the private API to do validations and data processing */
263 JTF_RS_GROUP_ORGS_PVT.delete_group_org
264 (P_API_VERSION => P_API_VERSION,
265 P_INIT_MSG_LIST => P_INIT_MSG_LIST,
266 P_COMMIT => P_COMMIT,
267 P_GROUP_ID => P_GROUP_ID,
268 P_ORGANIZATION_ID => P_ORGANIZATION_ID,
269 P_OBJECT_VERSION_NUMBER => P_OBJECT_VERSION_NUMBER,
270 X_RETURN_STATUS => X_RETURN_STATUS,
271 X_MSG_COUNT => X_MSG_COUNT,
272 X_MSG_DATA => X_MSG_DATA
273 );
274
275 IF NOT (x_return_status = fnd_api.g_ret_sts_success) THEN
276 RAISE fnd_api.g_exc_unexpected_error;
277 END IF;
278
279 IF fnd_api.to_boolean(p_commit) THEN
280 COMMIT WORK;
281 END IF;
282
283 fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
284
285 EXCEPTION
286
287 WHEN fnd_api.g_exc_unexpected_error THEN
288 ROLLBACK TO sp_delete_group_org;
289 x_return_status := fnd_api.g_ret_sts_unexp_error;
290 fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
291
292 WHEN OTHERS THEN
293 ROLLBACK TO sp_delete_group_org;
294 fnd_message.set_name ('JTF', 'JTF_RS_UNEXP_ERROR');
295 fnd_message.set_token('P_SQLCODE',SQLCODE);
296 fnd_message.set_token('P_SQLERRM',SQLERRM);
297 fnd_message.set_token('P_API_NAME',g_pkg_name||'.'||l_api_name);
298 FND_MSG_PUB.add;
299 x_return_status := fnd_api.g_ret_sts_unexp_error;
300 fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
301
302 END delete_group_org;
303
304 END JTF_RS_GROUP_ORGS_PUB;