DBA Data[Home] [Help]

PACKAGE BODY: APPS.AMS_PS_POSTING_PUB

Source


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