[Home] [Help]
PACKAGE BODY: APPS.AMS_PS_STRATS_PUB
Source
1 PACKAGE BODY AMS_Ps_Strats_PUB as
2 /* $Header: amspstrb.pls 120.0 2005/05/31 14:56:42 appldev noship $ */
3 -- ===============================================================
4 -- Start of Comments
5 -- Package name
6 -- AMS_Ps_Strats_PUB
7 -- Purpose
8 --
9 -- History
10 --
11 -- NOTE
12 --
13 -- End of Comments
14 -- ===============================================================
15
16 G_PKG_NAME CONSTANT VARCHAR2(30):= 'AMS_Ps_Strats_PUB';
17 G_FILE_NAME CONSTANT VARCHAR2(12) := 'amspstrb.pls';
18
19 AMS_DEBUG_HIGH_ON constant boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_HIGH);
20 AMS_DEBUG_LOW_ON constant boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW);
21 AMS_DEBUG_MEDIUM_ON constant boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_MEDIUM);
22
23 PROCEDURE Create_Ps_Strats(
24 p_api_version_number IN NUMBER,
25 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
26 p_commit IN VARCHAR2 := FND_API.G_FALSE,
27
28 x_return_status OUT NOCOPY VARCHAR2,
29 x_msg_count OUT NOCOPY NUMBER,
30 x_msg_data OUT NOCOPY VARCHAR2,
31
32 p_ps_strats_rec IN ps_strats_rec_type := g_miss_ps_strats_rec,
33 x_strategy_id OUT NOCOPY NUMBER
34 )
35
36 IS
37 L_API_NAME CONSTANT VARCHAR2(30) := 'Create_Ps_Strats';
38 L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
39 l_pvt_ps_strats_rec AMS_Ps_Strats_PVT.ps_strats_rec_type;
40 BEGIN
41 -- Standard Start of API savepoint
42 SAVEPOINT CREATE_Ps_Strats_PUB;
43
44 -- Standard call to check for call compatibility.
45 IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
46 p_api_version_number,
47 l_api_name,
48 G_PKG_NAME)
49 THEN
50 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
51 END IF;
52
53 -- Initialize message list if p_init_msg_list is set to TRUE.
54 IF FND_API.to_Boolean( p_init_msg_list )
55 THEN
56 FND_MSG_PUB.initialize;
57 END IF;
58
59 -- Debug Message
60 IF (AMS_DEBUG_HIGH_ON) THEN
61
62 AMS_UTILITY_PVT.debug_message('Public API: ' || l_api_name || 'start');
63 END IF;
64
65
66 -- Initialize API return status to SUCCESS
67 x_return_status := FND_API.G_RET_STS_SUCCESS;
68
69 --
70 -- API body
71 --
72 -- Calling Private package: Create_Ps_Strats
73 -- Hint: Primary key needs to be returned
74 AMS_Ps_Strats_PVT.Create_Ps_Strats(
75 p_api_version_number => 1.0,
76 p_init_msg_list => FND_API.G_FALSE,
77 p_commit => FND_API.G_FALSE,
78 p_validation_level => FND_API.G_VALID_LEVEL_FULL,
79 x_return_status => x_return_status,
80 x_msg_count => x_msg_count,
81 x_msg_data => x_msg_data,
82 p_ps_strats_rec => l_pvt_ps_strats_rec,
83 x_strategy_id => x_strategy_id);
84
85
86 -- Check return status from the above procedure call
87 IF x_return_status = FND_API.G_RET_STS_ERROR then
88 RAISE FND_API.G_EXC_ERROR;
89 elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
90 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
91 END IF;
92 --
93 -- End of API body.
94 --
95
96 -- Standard check for p_commit
97 IF FND_API.to_Boolean( p_commit )
98 THEN
99 COMMIT WORK;
100 END IF;
101
102
103 -- Debug Message
104 IF (AMS_DEBUG_HIGH_ON) THEN
105
106 AMS_UTILITY_PVT.debug_message('Public API: ' || l_api_name || 'end');
107 END IF;
108
109 -- Standard call to get message count and if count is 1, get message info.
110 FND_MSG_PUB.Count_And_Get
111 (p_count => x_msg_count,
112 p_data => x_msg_data
113 );
114 EXCEPTION
115
116 WHEN AMS_Utility_PVT.resource_locked THEN
117 x_return_status := FND_API.g_ret_sts_error;
118 AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
119
120 WHEN FND_API.G_EXC_ERROR THEN
121 ROLLBACK TO CREATE_Ps_Strats_PUB;
122 x_return_status := FND_API.G_RET_STS_ERROR;
123 -- Standard call to get message count and if count=1, get the message
124 FND_MSG_PUB.Count_And_Get (
125 p_encoded => FND_API.G_FALSE,
126 p_count => x_msg_count,
127 p_data => x_msg_data
128 );
129
130 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
131 ROLLBACK TO CREATE_Ps_Strats_PUB;
132 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
133 -- Standard call to get message count and if count=1, get the message
134 FND_MSG_PUB.Count_And_Get (
135 p_encoded => FND_API.G_FALSE,
136 p_count => x_msg_count,
137 p_data => x_msg_data
138 );
139
140 WHEN OTHERS THEN
141 ROLLBACK TO CREATE_Ps_Strats_PUB;
142 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
143 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
144 THEN
145 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
146 END IF;
147 -- Standard call to get message count and if count=1, get the message
148 FND_MSG_PUB.Count_And_Get (
149 p_encoded => FND_API.G_FALSE,
150 p_count => x_msg_count,
151 p_data => x_msg_data
152 );
153 End Create_Ps_Strats;
154
155
156 PROCEDURE Update_Ps_Strats(
157 p_api_version_number IN NUMBER,
158 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
159 p_commit IN VARCHAR2 := FND_API.G_FALSE,
160
161 x_return_status OUT NOCOPY VARCHAR2,
162 x_msg_count OUT NOCOPY NUMBER,
163 x_msg_data OUT NOCOPY VARCHAR2,
164
165 p_ps_strats_rec IN ps_strats_rec_type,
166 x_object_version_number OUT NOCOPY NUMBER
167 )
168
169 IS
170 L_API_NAME CONSTANT VARCHAR2(30) := 'Update_Ps_Strats';
171 L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
172 l_object_version_number NUMBER;
173 l_pvt_ps_strats_rec AMS_Ps_Strats_PVT.ps_strats_rec_type;
174 BEGIN
175 -- Standard Start of API savepoint
176 SAVEPOINT UPDATE_Ps_Strats_PUB;
177
178 -- Standard call to check for call compatibility.
179 IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
180 p_api_version_number,
181 l_api_name,
182 G_PKG_NAME)
183 THEN
184 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
185 END IF;
186
187 -- Initialize message list if p_init_msg_list is set to TRUE.
188 IF FND_API.to_Boolean( p_init_msg_list )
189 THEN
190 FND_MSG_PUB.initialize;
191 END IF;
192
193 -- Debug Message
194 IF (AMS_DEBUG_HIGH_ON) THEN
195
196 AMS_UTILITY_PVT.debug_message('Public API: ' || l_api_name || 'start');
197 END IF;
198
199
200 -- Initialize API return status to SUCCESS
201 x_return_status := FND_API.G_RET_STS_SUCCESS;
202
203 --
204 -- API body
205 --
206 AMS_Ps_Strats_PVT.Update_Ps_Strats(
207 p_api_version_number => 1.0,
208 p_init_msg_list => FND_API.G_FALSE,
209 p_commit => p_commit,
210 p_validation_level => FND_API.G_VALID_LEVEL_FULL,
211 x_return_status => x_return_status,
212 x_msg_count => x_msg_count,
213 x_msg_data => x_msg_data,
214 p_ps_strats_rec => l_pvt_ps_strats_rec,
215 x_object_version_number => l_object_version_number );
216
217
218 -- Check return status from the above procedure call
219 IF x_return_status = FND_API.G_RET_STS_ERROR then
220 RAISE FND_API.G_EXC_ERROR;
221 elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
222 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
223 END IF;
224 --
225 -- End of API body
226 --
227
228 -- Standard check for p_commit
229 IF FND_API.to_Boolean( p_commit )
230 THEN
231 COMMIT WORK;
232 END IF;
233
234
235 -- Debug Message
236 IF (AMS_DEBUG_HIGH_ON) THEN
237
238 AMS_UTILITY_PVT.debug_message('Public API: ' || l_api_name || 'end');
239 END IF;
240
241 -- Standard call to get message count and if count is 1, get message info.
242 FND_MSG_PUB.Count_And_Get
243 (p_count => x_msg_count,
244 p_data => x_msg_data
245 );
246 EXCEPTION
247
248 WHEN AMS_Utility_PVT.resource_locked THEN
249 x_return_status := FND_API.g_ret_sts_error;
250 AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
251
252 WHEN FND_API.G_EXC_ERROR THEN
253 ROLLBACK TO UPDATE_Ps_Strats_PUB;
254 x_return_status := FND_API.G_RET_STS_ERROR;
255 -- Standard call to get message count and if count=1, get the message
256 FND_MSG_PUB.Count_And_Get (
257 p_encoded => FND_API.G_FALSE,
258 p_count => x_msg_count,
259 p_data => x_msg_data
260 );
261
262 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
263 ROLLBACK TO UPDATE_Ps_Strats_PUB;
264 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
265 -- Standard call to get message count and if count=1, get the message
266 FND_MSG_PUB.Count_And_Get (
267 p_encoded => FND_API.G_FALSE,
268 p_count => x_msg_count,
269 p_data => x_msg_data
270 );
271
272 WHEN OTHERS THEN
273 ROLLBACK TO UPDATE_Ps_Strats_PUB;
274 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
275 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
276 THEN
277 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
278 END IF;
279 -- Standard call to get message count and if count=1, get the message
280 FND_MSG_PUB.Count_And_Get (
281 p_encoded => FND_API.G_FALSE,
282 p_count => x_msg_count,
283 p_data => x_msg_data
284 );
285 End Update_Ps_Strats;
286
287
288 PROCEDURE Delete_Ps_Strats(
289 p_api_version_number IN NUMBER,
290 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
291 p_commit IN VARCHAR2 := FND_API.G_FALSE,
292 x_return_status OUT NOCOPY VARCHAR2,
293 x_msg_count OUT NOCOPY NUMBER,
294 x_msg_data OUT NOCOPY VARCHAR2,
295 p_strategy_id IN NUMBER,
296 p_object_version_number IN NUMBER
297 )
298
299 IS
300 L_API_NAME CONSTANT VARCHAR2(30) := 'Delete_Ps_Strats';
301 L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
302 l_STRATEGY_ID NUMBER := p_STRATEGY_ID;
303 l_object_version_number NUMBER := p_object_version_number;
304 l_pvt_ps_strats_rec AMS_Ps_Strats_PVT.ps_strats_rec_type;
305 BEGIN
306 -- Standard Start of API savepoint
307 SAVEPOINT DELETE_Ps_Strats_PUB;
308
309 -- Standard call to check for call compatibility.
310 IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
311 p_api_version_number,
312 l_api_name,
313 G_PKG_NAME)
314 THEN
315 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
316 END IF;
317
318 -- Initialize message list if p_init_msg_list is set to TRUE.
319 IF FND_API.to_Boolean( p_init_msg_list )
320 THEN
321 FND_MSG_PUB.initialize;
322 END IF;
323
324 -- Debug Message
325 IF (AMS_DEBUG_HIGH_ON) THEN
326
327 AMS_UTILITY_PVT.debug_message('Public API: ' || l_api_name || 'start');
328 END IF;
329
330
331 -- Initialize API return status to SUCCESS
332 x_return_status := FND_API.G_RET_STS_SUCCESS;
333
334 --
335 -- API body
336 --
337 AMS_Ps_Strats_PVT.Delete_Ps_Strats(
338 p_api_version_number => 1.0,
339 p_init_msg_list => FND_API.G_FALSE,
340 p_commit => p_commit,
341 p_validation_level => FND_API.G_VALID_LEVEL_FULL,
342 x_return_status => x_return_status,
343 x_msg_count => x_msg_count,
344 x_msg_data => x_msg_data,
345 p_strategy_id => l_strategy_id,
346 p_object_version_number => l_object_version_number );
347
348
349 -- Check return status from the above procedure call
350 IF x_return_status = FND_API.G_RET_STS_ERROR then
351 RAISE FND_API.G_EXC_ERROR;
352 elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
353 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
354 END IF;
355 --
356 -- End of API body
357 --
358
359 -- Standard check for p_commit
360 IF FND_API.to_Boolean( p_commit )
361 THEN
362 COMMIT WORK;
363 END IF;
364
365
366 -- Debug Message
367 IF (AMS_DEBUG_HIGH_ON) THEN
368
369 AMS_UTILITY_PVT.debug_message('Public API: ' || l_api_name || 'end');
370 END IF;
371
372 -- Standard call to get message count and if count is 1, get message info.
373 FND_MSG_PUB.Count_And_Get
374 (p_count => x_msg_count,
375 p_data => x_msg_data
376 );
377 EXCEPTION
378
379 WHEN AMS_Utility_PVT.resource_locked THEN
380 x_return_status := FND_API.g_ret_sts_error;
381 AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
382
383 WHEN FND_API.G_EXC_ERROR THEN
384 ROLLBACK TO DELETE_Ps_Strats_PUB;
385 x_return_status := FND_API.G_RET_STS_ERROR;
386 -- Standard call to get message count and if count=1, get the message
387 FND_MSG_PUB.Count_And_Get (
388 p_encoded => FND_API.G_FALSE,
389 p_count => x_msg_count,
390 p_data => x_msg_data
391 );
392
393 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
394 ROLLBACK TO DELETE_Ps_Strats_PUB;
395 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
396 -- Standard call to get message count and if count=1, get the message
397 FND_MSG_PUB.Count_And_Get (
398 p_encoded => FND_API.G_FALSE,
399 p_count => x_msg_count,
400 p_data => x_msg_data
401 );
402
403 WHEN OTHERS THEN
404 ROLLBACK TO DELETE_Ps_Strats_PUB;
405 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
406 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
407 THEN
408 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
409 END IF;
410 -- Standard call to get message count and if count=1, get the message
411 FND_MSG_PUB.Count_And_Get (
412 p_encoded => FND_API.G_FALSE,
413 p_count => x_msg_count,
414 p_data => x_msg_data
415 );
416 End Delete_Ps_Strats;
417
418
419 PROCEDURE Lock_Ps_Strats(
420 p_api_version_number IN NUMBER,
421 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
422 x_return_status OUT NOCOPY VARCHAR2,
423 x_msg_count OUT NOCOPY NUMBER,
424 x_msg_data OUT NOCOPY VARCHAR2,
425
426 p_strategy_id IN NUMBER,
427 p_object_version IN NUMBER
428 )
429
430 IS
431 L_API_NAME CONSTANT VARCHAR2(30) := 'Lock_Ps_Strats';
432 L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
433 l_pvt_ps_strats_rec AMS_Ps_Strats_PVT.ps_strats_rec_type;
434 BEGIN
435
436 -- Standard call to check for call compatibility.
437 IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
438 p_api_version_number,
439 l_api_name,
440 G_PKG_NAME)
441 THEN
442 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
443 END IF;
444
445 -- Initialize message list if p_init_msg_list is set to TRUE.
446 IF FND_API.to_Boolean( p_init_msg_list )
447 THEN
448 FND_MSG_PUB.initialize;
449 END IF;
450
451 -- Debug Message
452 IF (AMS_DEBUG_HIGH_ON) THEN
453
454 AMS_UTILITY_PVT.debug_message('Public API: ' || l_api_name || 'start');
455 END IF;
456
457
458 -- Initialize API return status to SUCCESS
459 x_return_status := FND_API.G_RET_STS_SUCCESS;
460
461 --
462 -- API body
463 --
464 -- Calling Private package: Create_Ps_Strats
465 -- Hint: Primary key needs to be returned
466 AMS_Ps_Strats_PVT.Lock_Ps_Strats(
467 p_api_version_number => 1.0,
468 p_init_msg_list => FND_API.G_FALSE,
469 x_return_status => x_return_status,
470 x_msg_count => x_msg_count,
471 x_msg_data => x_msg_data,
472 p_strategy_id => p_strategy_id,
473 p_object_version => p_object_version);
474
475
476 -- Check return status from the above procedure call
477 IF x_return_status = FND_API.G_RET_STS_ERROR then
478 RAISE FND_API.G_EXC_ERROR;
479 elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
480 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
481 END IF;
482 --
483 -- End of API body.
484 --
485
486 -- Debug Message
487 IF (AMS_DEBUG_HIGH_ON) THEN
488
489 AMS_UTILITY_PVT.debug_message('Public API: ' || l_api_name || 'end');
490 END IF;
491
492 EXCEPTION
493
494 WHEN AMS_Utility_PVT.resource_locked THEN
495 x_return_status := FND_API.g_ret_sts_error;
496 AMS_Utility_PVT.Error_Message(p_message_name => 'AMS_API_RESOURCE_LOCKED');
497
498 WHEN FND_API.G_EXC_ERROR THEN
499 ROLLBACK TO LOCK_Ps_Strats_PUB;
500 x_return_status := FND_API.G_RET_STS_ERROR;
501 -- Standard call to get message count and if count=1, get the message
502 FND_MSG_PUB.Count_And_Get (
503 p_encoded => FND_API.G_FALSE,
504 p_count => x_msg_count,
505 p_data => x_msg_data
506 );
507
508 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
509 ROLLBACK TO LOCK_Ps_Strats_PUB;
510 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
511 -- Standard call to get message count and if count=1, get the message
512 FND_MSG_PUB.Count_And_Get (
513 p_encoded => FND_API.G_FALSE,
514 p_count => x_msg_count,
515 p_data => x_msg_data
516 );
517
518 WHEN OTHERS THEN
519 ROLLBACK TO LOCK_Ps_Strats_PUB;
520 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
521 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
522 THEN
523 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
524 END IF;
525 -- Standard call to get message count and if count=1, get the message
526 FND_MSG_PUB.Count_And_Get (
527 p_encoded => FND_API.G_FALSE,
528 p_count => x_msg_count,
529 p_data => x_msg_data
530 );
531 End Lock_Ps_Strats;
532
533
534 END AMS_Ps_Strats_PUB;