[Home] [Help]
PACKAGE BODY: APPS.JTF_RS_TEAM_USAGES_PUB
Source
1 PACKAGE BODY jtf_rs_team_usages_pub AS
2 /* $Header: jtfrspjb.pls 120.0 2005/05/11 08:21:12 appldev ship $ */
3
4 /*****************************************************************************************
5 This is a public API that caller will invoke.
6 It provides procedures for managing resource team usages.
7 Its main procedures are as following:
8 Create Resource Team Usage
9 Delete Resource Team Usage
10 Calls to these procedures will invoke procedures from jtf_rs_team_usages_pvt
11 to do business validations and to do actual inserts and updates into tables.
12 ******************************************************************************************/
13
14
15 /* Package variables. */
16
17 G_PKG_NAME VARCHAR2(30) := 'JTF_RS_TEAM_USAGES_PUB';
18
19
20 /* Procedure to create the resource team usage
21 based on input values passed by calling routines. */
22
23 PROCEDURE create_team_usage
24 (P_API_VERSION IN NUMBER,
25 P_INIT_MSG_LIST IN VARCHAR2 DEFAULT FND_API.G_FALSE,
26 P_COMMIT IN VARCHAR2 DEFAULT FND_API.G_FALSE,
27 P_TEAM_ID IN JTF_RS_TEAM_USAGES.TEAM_ID%TYPE,
28 P_TEAM_NUMBER IN JTF_RS_TEAMS_VL.TEAM_NUMBER%TYPE,
29 P_USAGE IN JTF_RS_TEAM_USAGES.USAGE%TYPE,
30 X_RETURN_STATUS OUT NOCOPY VARCHAR2,
31 X_MSG_COUNT OUT NOCOPY NUMBER,
32 X_MSG_DATA OUT NOCOPY VARCHAR2,
33 X_TEAM_USAGE_ID OUT NOCOPY JTF_RS_TEAM_USAGES.TEAM_USAGE_ID%TYPE
34 ) IS
35
36 l_api_version CONSTANT NUMBER := 1.0;
37 l_api_name CONSTANT VARCHAR2(30) := 'CREATE_TEAM_USAGE';
38 l_team_id jtf_rs_team_usages.team_id%TYPE := p_team_id;
39 l_team_number jtf_rs_teams_vl.team_number%TYPE := p_team_number;
40 l_usage jtf_rs_team_usages.usage%TYPE := p_usage;
41
42 l_team_id_out jtf_rs_team_usages.team_id%TYPE;
43
44
45 BEGIN
46
47
48 SAVEPOINT create_rs_team_usage_pub;
49
50 x_return_status := fnd_api.g_ret_sts_success;
51
52 -- DBMS_OUTPUT.put_line('Started Create Resource Team Usage Pub ');
53
54
55 IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
56
57 RAISE fnd_api.g_exc_unexpected_error;
58
59 END IF;
60
61
62 IF fnd_api.to_boolean(p_init_msg_list) THEN
63
64 fnd_msg_pub.initialize;
65
66 END IF;
67
68
69 /* Validate the Resource Team. */
70
71 jtf_resource_utl.validate_resource_team(
72 p_team_id => l_team_id,
73 p_team_number => l_team_number,
74 x_return_status => x_return_status,
75 x_team_id => l_team_id_out
76 );
77 -- added for NOCOPY
78 l_team_id := l_team_id_out;
79
80 IF NOT (x_return_status = fnd_api.g_ret_sts_success) THEN
81
82 x_return_status := fnd_api.g_ret_sts_unexp_error;
83
84 RAISE fnd_api.g_exc_unexpected_error;
85
86 END IF;
87
88
89
90 /* Validate the Resource Usage. */
91
92 jtf_resource_utl.validate_usage
93 (p_usage => l_usage,
94 x_return_status => x_return_status
95 );
96
97
98 IF NOT (x_return_status = fnd_api.g_ret_sts_success) THEN
99
100 x_return_status := fnd_api.g_ret_sts_unexp_error;
101
102 RAISE fnd_api.g_exc_unexpected_error;
103
104 END IF;
105
106
107
108 /* Call the private procedure with the validated parameters. */
109
110 jtf_rs_team_usages_pvt.create_team_usage
111 (P_API_VERSION => 1,
112 P_INIT_MSG_LIST => fnd_api.g_false,
113 P_COMMIT => fnd_api.g_false,
114 P_TEAM_ID => l_team_id,
115 P_USAGE => l_usage,
116 X_RETURN_STATUS => x_return_status,
117 X_MSG_COUNT => x_msg_count,
118 X_MSG_DATA => x_msg_data,
119 X_TEAM_USAGE_ID => x_team_usage_id
120 );
121
122
123 IF NOT (x_return_status = fnd_api.g_ret_sts_success) THEN
124
125 -- dbms_output.put_line('Failed status from call to private procedure');
126
127 RAISE fnd_api.g_exc_unexpected_error;
128
129 END IF;
130
131
132 IF fnd_api.to_boolean(p_commit) THEN
133
134 COMMIT WORK;
135
136 END IF;
137
138 fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
139
140
141 EXCEPTION
142
143
144 WHEN fnd_api.g_exc_unexpected_error THEN
145
146 -- DBMS_OUTPUT.put_line (' ========================================== ');
147
148 -- DBMS_OUTPUT.put_line ('=========== Raised Unexpected Error ======= ======== ');
149
150 ROLLBACK TO create_rs_team_usage_pub;
151
152 x_return_status := fnd_api.g_ret_sts_unexp_error;
153
154 fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
155
156
157 WHEN OTHERS THEN
158
159 -- DBMS_OUTPUT.put_line (' ========================================== ');
160
161 -- DBMS_OUTPUT.put_line (' =========== Raised Others in Create Team Usage Pub ========= ');
162
163 -- DBMS_OUTPUT.put_line (SQLCODE || SQLERRM);
164
165 ROLLBACK TO create_rs_team_usage_pub;
166
167 x_return_status := fnd_api.g_ret_sts_unexp_error;
168
169 fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
170
171
172 END create_team_usage;
173
174
175
176 /* Procedure to delete the resource team usage
177 based on input values passed by calling routines. */
178
179 PROCEDURE delete_team_usage
180 (P_API_VERSION IN NUMBER,
181 P_INIT_MSG_LIST IN VARCHAR2 DEFAULT FND_API.G_FALSE,
182 P_COMMIT IN VARCHAR2 DEFAULT FND_API.G_FALSE,
183 P_TEAM_ID IN JTF_RS_TEAM_USAGES.TEAM_ID%TYPE,
184 P_TEAM_NUMBER IN JTF_RS_TEAMS_VL.TEAM_NUMBER%TYPE,
185 P_USAGE IN JTF_RS_TEAM_USAGES.USAGE%TYPE,
186 P_OBJECT_VERSION_NUM IN JTF_RS_TEAM_USAGES.OBJECT_VERSION_NUMBER%TYPE,
187 X_RETURN_STATUS OUT NOCOPY VARCHAR2,
188 X_MSG_COUNT OUT NOCOPY NUMBER,
189 X_MSG_DATA OUT NOCOPY VARCHAR2
190 ) IS
191
192 l_api_version CONSTANT NUMBER := 1.0;
193 l_api_name CONSTANT VARCHAR2(30) := 'DELETE_TEAM_USAGE';
194 l_team_id jtf_rs_team_usages.team_id%TYPE := p_team_id;
195 l_team_number jtf_rs_teams_vl.team_number%TYPE := p_team_number;
196 l_usage jtf_rs_team_usages.usage%TYPE := p_usage;
197
198 l_team_id_out jtf_rs_team_usages.team_id%TYPE;
199
200
201 BEGIN
202
203
204 SAVEPOINT delete_team_usage_pub;
205
206 x_return_status := fnd_api.g_ret_sts_success;
207
208 -- DBMS_OUTPUT.put_line(' Started Delete Team Usage Pub ');
209
210
211 IF NOT fnd_api.compatible_api_call(l_api_version, p_api_version, l_api_name, g_pkg_name) THEN
212
213 RAISE fnd_api.g_exc_unexpected_error;
214
215 END IF;
216
217
218 IF fnd_api.to_boolean(p_init_msg_list) THEN
219
220 fnd_msg_pub.initialize;
221
222 END IF;
223
224
225 /* Validate the Resource Team. */
226
227 BEGIN
228
229 jtf_resource_utl.validate_resource_team(
230 p_team_id => l_team_id,
231 p_team_number => l_team_number,
232 x_return_status => x_return_status,
233 x_team_id => l_team_id_out
234 );
235 -- added for NOCOPY
236 l_team_id := l_team_id_out;
237
238 IF NOT (x_return_status = fnd_api.g_ret_sts_success) THEN
239
240 x_return_status := fnd_api.g_ret_sts_unexp_error;
241
242 RAISE fnd_api.g_exc_unexpected_error;
243
244 END IF;
245
246 END; /* End of Resource Team Validation */
247
248
249
250 /* Validate the Resource Usage. */
251
252 jtf_resource_utl.validate_usage
253 (p_usage => l_usage,
254 x_return_status => x_return_status
255 );
256
257
258 IF NOT (x_return_status = fnd_api.g_ret_sts_success) THEN
259
260 x_return_status := fnd_api.g_ret_sts_unexp_error;
261
262 RAISE fnd_api.g_exc_unexpected_error;
263
264 END IF;
265
266
267
268 /* Call the private procedure for delete */
269
270 jtf_rs_team_usages_pvt.delete_team_usage
271 (P_API_VERSION => 1,
272 P_INIT_MSG_LIST => fnd_api.g_false,
273 P_COMMIT => fnd_api.g_false,
274 P_TEAM_ID => l_team_id,
275 P_USAGE => l_usage,
276 P_OBJECT_VERSION_NUM => p_object_version_num,
277 X_RETURN_STATUS => x_return_status,
278 X_MSG_COUNT => x_msg_count,
279 X_MSG_DATA => x_msg_data
280 );
281
282
283 IF NOT (x_return_status = fnd_api.g_ret_sts_success) THEN
284
285 -- dbms_output.put_line('Failed status from call to private procedure');
286
287 RAISE fnd_api.g_exc_unexpected_error;
288
289 END IF;
290
291
292 IF fnd_api.to_boolean(p_commit) THEN
293
294 COMMIT WORK;
295
296 END IF;
297
298 fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
299
300
301 EXCEPTION
302
303
304 WHEN fnd_api.g_exc_unexpected_error THEN
305
306 -- DBMS_OUTPUT.put_line (' ========================================== ');
307
308 -- DBMS_OUTPUT.put_line ('=========== Raised Unexpected Error ======= ======== ');
309
310 ROLLBACK TO delete_team_usage_pub;
311
312 x_return_status := fnd_api.g_ret_sts_unexp_error;
313
314 fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
315
316
317 WHEN OTHERS THEN
318
319 -- DBMS_OUTPUT.put_line (' ========================================== ');
320
321 -- DBMS_OUTPUT.put_line (' =========== Raised Others in Delete Team Usage Pub ============= ');
322
323 -- DBMS_OUTPUT.put_line (SQLCODE || SQLERRM);
324
325 ROLLBACK TO delete_team_usage_pub;
326
327 x_return_status := fnd_api.g_ret_sts_unexp_error;
328
329 fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data);
330
331
332 END delete_team_usage;
333
334
335 END jtf_rs_team_usages_pub;