DBA Data[Home] [Help]

PACKAGE BODY: APPS.AS_BUSINESS_EVENT_PUB

Source


1 PACKAGE BODY AS_BUSINESS_EVENT_PUB as
2 /* $Header: asxpbevb.pls 120.1 2005/06/14 01:30:44 appldev  $ */
3 --
4 -- NAME
5 -- AS_BUSINESS_EVENT_PUB
6 --
7 -- HISTORY
8 --   9/24/03            SUMAHALI        CREATED
9 --
10 --
11 
12 G_PKG_NAME      CONSTANT VARCHAR2(30):='AS_BUSINESS_EVENT_PUB';
13 G_FILE_NAME     CONSTANT VARCHAR2(12):='asxpbevb.pls';
14 
15 -- Start of Comments
16 --
17 --      API name        : Before_Oppty_Update
18 --      Type            : Public
19 --      Function        : When called before Opportunity header update, takes
20 --                        snapshot of Opp header and returns an event key in
21 --                        x_event_key which is to be passed, when raising a
22 --                        business event after the update is over using the
23 --                        Update_oppty_post_event procedure. If lead_id is
24 --                        NULL then a new Event key is returned without taking
25 --                        a snapshot. This can be used before creating a new
26 --                        opportunity since no lead_id is available.
27 --
28 --      Pre-reqs        : Existing lead_id or NULL value.
29 --
30 --      Paramaeters     :
31 --      IN              :
32 --          p_api_version_number    IN  NUMBER
33 --          p_init_msg_list         IN  VARCHAR2
34 --          p_commit                IN  VARCHAR2
35 --          p_validation_level      IN  NUMBER
36 --          p_lead_id               IN NUMBER
37 --      OUT             :
38 --          x_return_status         OUT NOCOPY     VARCHAR2(1)
39 --          x_msg_count             OUT NOCOPY     NUMBER
40 --          x_msg_data              OUT NOCOPY     VARCHAR2(2000)
41 --          x_event_key             OUT NOCOPY VARCHAR2
42 --
43 --
44 --      Version :       Current version 2.0
45 --                      Initial version 2.0
46 --
47 --      Notes:
48 --
49 --
50 -- End of Comments
51 
52 
53 PROCEDURE Before_Oppty_Update(
54     p_api_version_number        IN  NUMBER,
55     p_init_msg_list             IN  VARCHAR2 DEFAULT FND_API.G_FALSE,
56     p_commit                    IN  VARCHAR2 DEFAULT FND_API.G_FALSE,
57     p_validation_level          IN  NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
58     p_lead_id                   IN NUMBER,
59     x_return_status             OUT NOCOPY VARCHAR2,
60     x_msg_count                 OUT NOCOPY NUMBER,
61     x_msg_data                  OUT NOCOPY VARCHAR2,
62     x_event_key                 OUT NOCOPY VARCHAR2
63 ) IS
64 
65 l_api_name              CONSTANT VARCHAR2(30) := 'Before_Oppty_Update';
66 l_api_version_number    CONSTANT NUMBER       := 2.0;
67 l_debug                 BOOLEAN := FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW);
68 l_module CONSTANT VARCHAR2(255) := 'as.plsql.bevpb.Before_Oppty_Update';
69 
70 BEGIN
71     -- Standard Start of API savepoint
72     SAVEPOINT BEFORE_OPPTY_UPDATE_PUB;
73     -- Standard call to check for call compatibility.
74     IF NOT FND_API.Compatible_API_Call( l_api_version_number,
75                                         p_api_version_number,
76                                         l_api_name,
77                                         G_PKG_NAME)
78     THEN
79         RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
80     END IF;
81 
82     -- Initialize message list if p_init_msg_list is set to TRUE.
83     IF FND_API.to_Boolean( p_init_msg_list )
84     THEN
85         FND_MSG_PUB.initialize;
86     END IF;
87 
88     -- Debug Message
89     IF l_debug THEN
90         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
91                         'Public API: ' || l_api_name || 'start');
92         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
93                         'Start time: ' || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
94     END IF;
95 
96     -- Initialize API return status to SUCCESS
97     x_return_status := FND_API.G_RET_STS_SUCCESS;
98 
99     --
100     -- API body
101     --
102 
103     IF l_debug THEN
104         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
105                         'Public API: Calling AS_BUSINESS_EVENT_PVT.Before_Oppty_Update');
106     END IF;
107 
108     AS_BUSINESS_EVENT_PVT.Before_Oppty_Update
109     (
110         p_lead_id       => p_lead_id,
111         x_event_key     => x_event_key
112     );
113 
114     IF x_return_status = FND_API.G_RET_STS_ERROR then
115         raise FND_API.G_EXC_ERROR;
116     ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
117         raise FND_API.G_EXC_UNEXPECTED_ERROR;
118     END IF;
119 
120     --
121     -- End of API body.
122     --
123 
124     IF FND_API.to_Boolean( p_commit )
125     THEN
126         COMMIT WORK;
127     END IF;
128 
129 
130     -- Debug Message
131     IF l_debug THEN
132         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
133                         'Public API: ' || l_api_name || 'end');
134 
135         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'End time:'
136                         || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
137     END IF;
138 
139 
140     FND_MSG_PUB.Count_And_Get
141     (  p_count          =>   x_msg_count,
142        p_data           =>   x_msg_data
143     );
144 
145     EXCEPTION
146         WHEN FND_API.G_EXC_ERROR THEN
147             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
148                  P_MODULE => l_module
149                 ,P_API_NAME => L_API_NAME
150                 ,P_PKG_NAME => G_PKG_NAME
151                 ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
152                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
153                 ,X_MSG_COUNT => X_MSG_COUNT
154                 ,X_MSG_DATA => X_MSG_DATA
155                 ,X_RETURN_STATUS => X_RETURN_STATUS);
156 
157         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
158             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
159                  P_MODULE => l_module
160                 ,P_API_NAME => L_API_NAME
161                 ,P_PKG_NAME => G_PKG_NAME
162                 ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR
163                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
164                 ,X_MSG_COUNT => X_MSG_COUNT
165                 ,X_MSG_DATA => X_MSG_DATA
166                 ,X_RETURN_STATUS => X_RETURN_STATUS);
167 
168         WHEN OTHERS THEN
169             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
170                  P_MODULE => l_module
171                 ,P_API_NAME => L_API_NAME
172                 ,P_PKG_NAME => G_PKG_NAME
173                 ,P_EXCEPTION_LEVEL => AS_UTILITY_PVT.G_EXC_OTHERS
174                 ,P_SQLCODE => SQLCODE
175                 ,P_SQLERRM => SQLERRM
176                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
177                 ,X_MSG_COUNT => X_MSG_COUNT
178                 ,X_MSG_DATA => X_MSG_DATA
179                 ,X_RETURN_STATUS => X_RETURN_STATUS);
180 
181 End Before_Oppty_Update;
182 
183 -- Start of Comments
184 --
185 --      API name        : Update_oppty_post_event
186 --      Type            : Public
187 --      Function        : Raises a business event for Opportunity header update.
188 --                        The Procedure Before_Oppty_Update should have been
189 --                        called and the same event key must be passed.
190 --
191 --      Pre-reqs        : Existing lead_id and x_event_key from
192 --                        Before_Oppty_Update call.
193 --
194 --      Paramaeters     :
195 --      IN              :
196 --          p_api_version_number    IN  NUMBER
197 --          p_init_msg_list         IN  VARCHAR2
198 --          p_commit                IN  VARCHAR2
199 --          p_validation_level      IN  NUMBER
200 --          p_event_key             IN  VARCHAR2
201 --          p_lead_id               IN  NUMBER
202 --      OUT             :
203 --          x_return_status         OUT NOCOPY     VARCHAR2(1)
204 --          x_msg_count             OUT NOCOPY     NUMBER
205 --          x_msg_data              OUT NOCOPY     VARCHAR2(2000)
206 --
207 --
208 --      Version :       Current version 2.0
209 --                      Initial version 2.0
210 --
211 --      Notes:
212 --
213 --
214 -- End of Comments
215 
216 PROCEDURE Update_oppty_post_event(
217     p_api_version_number        IN  NUMBER,
218     p_init_msg_list             IN  VARCHAR2 DEFAULT FND_API.G_FALSE,
219     p_commit                    IN  VARCHAR2 DEFAULT FND_API.G_FALSE,
220     p_validation_level          IN  NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
221     p_lead_id                   IN NUMBER,
222     p_event_key                 IN VARCHAR2,
223     x_return_status             OUT NOCOPY VARCHAR2,
224     x_msg_count                 OUT NOCOPY NUMBER,
225     x_msg_data                  OUT NOCOPY VARCHAR2
226 ) IS
227 
228 l_api_name              CONSTANT VARCHAR2(30) := 'Update_oppty_post_event';
229 l_api_version_number    CONSTANT NUMBER       := 2.0;
230 l_debug                 BOOLEAN := FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW);
231 l_module CONSTANT VARCHAR2(255) := 'as.plsql.bevpb.Update_oppty_post_event';
232 
233 BEGIN
234     -- Standard Start of API savepoint
235     SAVEPOINT UPDATE_OPPTY_POST_EVENT_PUB;
236     -- Standard call to check for call compatibility.
237     IF NOT FND_API.Compatible_API_Call( l_api_version_number,
238                                         p_api_version_number,
239                                         l_api_name,
240                                         G_PKG_NAME)
241     THEN
242         RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
243     END IF;
244 
245     -- Initialize message list if p_init_msg_list is set to TRUE.
246     IF FND_API.to_Boolean( p_init_msg_list )
247     THEN
248         FND_MSG_PUB.initialize;
249     END IF;
250 
251     -- Debug Message
252     IF l_debug THEN
253         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
254                         'Public API: ' || l_api_name || 'start');
255         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
256                         'Start time: ' || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
257     END IF;
258 
259     -- Initialize API return status to SUCCESS
260     x_return_status := FND_API.G_RET_STS_SUCCESS;
261 
262     --
263     -- API body
264     --
265 
266     IF l_debug THEN
267         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
268                         'Public API: Calling AS_BUSINESS_EVENT_PVT.Update_oppty_post_event');
269     END IF;
270 
271     AS_BUSINESS_EVENT_PVT.Update_oppty_post_event
272     (
273         p_lead_id       => p_lead_id,
274         p_event_key     => p_event_key
275     );
276 
277     IF x_return_status = FND_API.G_RET_STS_ERROR then
278         raise FND_API.G_EXC_ERROR;
279     ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
280         raise FND_API.G_EXC_UNEXPECTED_ERROR;
281     END IF;
282 
283     --
284     -- End of API body.
285     --
286 
287     IF FND_API.to_Boolean( p_commit )
288     THEN
289         COMMIT WORK;
290     END IF;
291 
292 
293     -- Debug Message
294     IF l_debug THEN
295         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
296                         'Public API: ' || l_api_name || 'end');
297 
298         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'End time:'
299                         || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
300     END IF;
301 
302 
303     FND_MSG_PUB.Count_And_Get
304     (  p_count          =>   x_msg_count,
305        p_data           =>   x_msg_data
306     );
307 
308     EXCEPTION
309         WHEN FND_API.G_EXC_ERROR THEN
310             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
311                  P_MODULE => l_module
312                 ,P_API_NAME => L_API_NAME
313                 ,P_PKG_NAME => G_PKG_NAME
314                 ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
315                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
316                 ,X_MSG_COUNT => X_MSG_COUNT
317                 ,X_MSG_DATA => X_MSG_DATA
318                 ,X_RETURN_STATUS => X_RETURN_STATUS);
319 
320         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
321             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
322                  P_MODULE => l_module
323                 ,P_API_NAME => L_API_NAME
324                 ,P_PKG_NAME => G_PKG_NAME
325                 ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR
326                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
327                 ,X_MSG_COUNT => X_MSG_COUNT
328                 ,X_MSG_DATA => X_MSG_DATA
329                 ,X_RETURN_STATUS => X_RETURN_STATUS);
330 
331         WHEN OTHERS THEN
332             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
333                  P_MODULE => l_module
337                 ,P_SQLCODE => SQLCODE
334                 ,P_API_NAME => L_API_NAME
335                 ,P_PKG_NAME => G_PKG_NAME
336                 ,P_EXCEPTION_LEVEL => AS_UTILITY_PVT.G_EXC_OTHERS
338                 ,P_SQLERRM => SQLERRM
339                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
340                 ,X_MSG_COUNT => X_MSG_COUNT
341                 ,X_MSG_DATA => X_MSG_DATA
342                 ,X_RETURN_STATUS => X_RETURN_STATUS);
343 
344 End Update_oppty_post_event;
345 
346 -- Start of Comments
347 --
348 --      API name        : Before_Opp_Lines_Update
349 --      Type            : Public
350 --      Function        : When called before Opportunity line update, takes
351 --                        snapshot of Opp lines and returns an event key in
352 --                        x_event_key which is to be passed, when raising a
353 --                        business event after the update is over using the
354 --                        Upd_Opp_Lines_post_event procedure. If lead_id is
355 --                        NULL then a new Event key is returned without taking
356 --                        a snapshot. This can be used before creating a new
357 --                        opportunity since no lead_id is available.
358 --
359 --      Pre-reqs        : Existing lead_id or NULL value.
360 --
361 --      Paramaeters     :
362 --      IN              :
363 --          p_api_version_number    IN  NUMBER
364 --          p_init_msg_list         IN  VARCHAR2
365 --          p_commit                IN  VARCHAR2
366 --          p_validation_level      IN  NUMBER
367 --          p_lead_id               IN NUMBER
368 --      OUT             :
369 --          x_return_status         OUT NOCOPY     VARCHAR2(1)
370 --          x_msg_count             OUT NOCOPY     NUMBER
371 --          x_msg_data              OUT NOCOPY     VARCHAR2(2000)
372 --          x_event_key             OUT NOCOPY VARCHAR2
373 --
374 --
375 --      Version :       Current version 2.0
376 --                      Initial version 2.0
377 --
378 --      Notes:
379 --
380 --
381 -- End of Comments
382 
383 
384 PROCEDURE Before_Opp_Lines_Update(
385     p_api_version_number        IN  NUMBER,
386     p_init_msg_list             IN  VARCHAR2 DEFAULT FND_API.G_FALSE,
387     p_commit                    IN  VARCHAR2 DEFAULT FND_API.G_FALSE,
388     p_validation_level          IN  NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
389     p_lead_id                   IN NUMBER,
390     x_return_status             OUT NOCOPY VARCHAR2,
391     x_msg_count                 OUT NOCOPY NUMBER,
392     x_msg_data                  OUT NOCOPY VARCHAR2,
393     x_event_key                 OUT NOCOPY VARCHAR2
394 ) IS
395 
396 l_api_name              CONSTANT VARCHAR2(30) := 'Before_Opp_Lines_Update';
397 l_api_version_number    CONSTANT NUMBER       := 2.0;
398 l_debug                 BOOLEAN := FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW);
399 l_module CONSTANT VARCHAR2(255) := 'as.plsql.bevpb.Before_Opp_Lines_Update';
400 
401 BEGIN
402     -- Standard Start of API savepoint
403     SAVEPOINT BEFORE_OPP_LINES_UPDATE_PUB;
404     -- Standard call to check for call compatibility.
405     IF NOT FND_API.Compatible_API_Call( l_api_version_number,
406                                         p_api_version_number,
407                                         l_api_name,
408                                         G_PKG_NAME)
409     THEN
410         RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
411     END IF;
412 
413     -- Initialize message list if p_init_msg_list is set to TRUE.
414     IF FND_API.to_Boolean( p_init_msg_list )
415     THEN
416         FND_MSG_PUB.initialize;
417     END IF;
418 
419     -- Debug Message
420     IF l_debug THEN
421         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
422                         'Public API: ' || l_api_name || 'start');
423         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
424                         'Start time: ' || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
425     END IF;
426 
427     -- Initialize API return status to SUCCESS
428     x_return_status := FND_API.G_RET_STS_SUCCESS;
429 
430     --
431     -- API body
432     --
433 
434     IF l_debug THEN
435         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
436                         'Public API: Calling AS_BUSINESS_EVENT_PVT.Before_Opp_Lines_Update');
437     END IF;
438 
439     AS_BUSINESS_EVENT_PVT.Before_Opp_Lines_Update
440     (
441         p_lead_id       => p_lead_id,
442         x_event_key     => x_event_key
443     );
444 
445     IF x_return_status = FND_API.G_RET_STS_ERROR then
446         raise FND_API.G_EXC_ERROR;
447     ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
448         raise FND_API.G_EXC_UNEXPECTED_ERROR;
449     END IF;
450 
451     --
452     -- End of API body.
453     --
454 
455     IF FND_API.to_Boolean( p_commit )
456     THEN
457         COMMIT WORK;
458     END IF;
459 
460 
461     -- Debug Message
462     IF l_debug THEN
463         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
467                         || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
464                         'Public API: ' || l_api_name || 'end');
465 
466         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'End time:'
468     END IF;
469 
470 
471     FND_MSG_PUB.Count_And_Get
472     (  p_count          =>   x_msg_count,
473        p_data           =>   x_msg_data
474     );
475 
476     EXCEPTION
477         WHEN FND_API.G_EXC_ERROR THEN
478             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
479                  P_MODULE => l_module
480                 ,P_API_NAME => L_API_NAME
481                 ,P_PKG_NAME => G_PKG_NAME
482                 ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
483                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
484                 ,X_MSG_COUNT => X_MSG_COUNT
485                 ,X_MSG_DATA => X_MSG_DATA
486                 ,X_RETURN_STATUS => X_RETURN_STATUS);
487 
488         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
489             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
490                  P_MODULE => l_module
491                 ,P_API_NAME => L_API_NAME
492                 ,P_PKG_NAME => G_PKG_NAME
493                 ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR
494                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
495                 ,X_MSG_COUNT => X_MSG_COUNT
496                 ,X_MSG_DATA => X_MSG_DATA
497                 ,X_RETURN_STATUS => X_RETURN_STATUS);
498 
499         WHEN OTHERS THEN
500             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
501                  P_MODULE => l_module
502                 ,P_API_NAME => L_API_NAME
503                 ,P_PKG_NAME => G_PKG_NAME
504                 ,P_EXCEPTION_LEVEL => AS_UTILITY_PVT.G_EXC_OTHERS
505                 ,P_SQLCODE => SQLCODE
506                 ,P_SQLERRM => SQLERRM
507                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
508                 ,X_MSG_COUNT => X_MSG_COUNT
509                 ,X_MSG_DATA => X_MSG_DATA
510                 ,X_RETURN_STATUS => X_RETURN_STATUS);
511 
512 End Before_Opp_Lines_Update;
513 
514 -- Start of Comments
515 --
516 --      API name        : Upd_Opp_Lines_post_event
517 --      Type            : Public
518 --      Function        : Raises a business event for Opportunity line update.
519 --                        The Procedure Before_Opp_Lines_Update should have been
520 --                        called and the same event key must be passed.
521 --
522 --      Pre-reqs        : Existing lead_id and x_event_key from
523 --                        Before_Opp_Lines_Update call.
524 --
525 --      Paramaeters     :
526 --      IN              :
527 --          p_api_version_number    IN  NUMBER
528 --          p_init_msg_list         IN  VARCHAR2
529 --          p_commit                IN  VARCHAR2
530 --          p_validation_level      IN  NUMBER
531 --          p_event_key             IN  VARCHAR2
532 --          p_lead_id               IN  NUMBER
533 --      OUT             :
534 --          x_return_status         OUT NOCOPY     VARCHAR2(1)
535 --          x_msg_count             OUT NOCOPY     NUMBER
536 --          x_msg_data              OUT NOCOPY     VARCHAR2(2000)
537 --
538 --
539 --      Version :       Current version 2.0
540 --                      Initial version 2.0
541 --
542 --      Notes:
543 --
544 --
545 -- End of Comments
546 
547 PROCEDURE Upd_Opp_Lines_post_event(
548     p_api_version_number        IN  NUMBER,
549     p_init_msg_list             IN  VARCHAR2 DEFAULT FND_API.G_FALSE,
550     p_commit                    IN  VARCHAR2 DEFAULT FND_API.G_FALSE,
551     p_validation_level          IN  NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
552     p_lead_id                   IN NUMBER,
553     p_event_key                 IN VARCHAR2,
554     x_return_status             OUT NOCOPY VARCHAR2,
555     x_msg_count                 OUT NOCOPY NUMBER,
556     x_msg_data                  OUT NOCOPY VARCHAR2
557 ) IS
558 
559 l_api_name              CONSTANT VARCHAR2(30) := 'Upd_Opp_Lines_post_event';
560 l_api_version_number    CONSTANT NUMBER       := 2.0;
561 l_debug                 BOOLEAN := FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW);
562 l_module CONSTANT VARCHAR2(255) := 'as.plsql.bevpb.Upd_Opp_Lines_post_event';
563 
564 BEGIN
565     -- Standard Start of API savepoint
566     SAVEPOINT UPD_OPP_LINES_POST_EVENT_PUB;
567     -- Standard call to check for call compatibility.
568     IF NOT FND_API.Compatible_API_Call( l_api_version_number,
569                                         p_api_version_number,
570                                         l_api_name,
571                                         G_PKG_NAME)
572     THEN
573         RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
574     END IF;
575 
576     -- Initialize message list if p_init_msg_list is set to TRUE.
577     IF FND_API.to_Boolean( p_init_msg_list )
578     THEN
579         FND_MSG_PUB.initialize;
580     END IF;
581 
582     -- Debug Message
583     IF l_debug THEN
584         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
585                         'Public API: ' || l_api_name || 'start');
586         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
590     -- Initialize API return status to SUCCESS
587                         'Start time: ' || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
588     END IF;
589 
591     x_return_status := FND_API.G_RET_STS_SUCCESS;
592 
593     --
594     -- API body
595     --
596 
597     IF l_debug THEN
598         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
599                         'Public API: Calling AS_BUSINESS_EVENT_PVT.Upd_Opp_Lines_post_event');
600     END IF;
601 
602     AS_BUSINESS_EVENT_PVT.Upd_Opp_Lines_post_event
603     (
604         p_lead_id       => p_lead_id,
605         p_event_key     => p_event_key
606     );
607 
608     IF x_return_status = FND_API.G_RET_STS_ERROR then
609         raise FND_API.G_EXC_ERROR;
610     ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
611         raise FND_API.G_EXC_UNEXPECTED_ERROR;
612     END IF;
613 
614     --
615     -- End of API body.
616     --
617 
618     IF FND_API.to_Boolean( p_commit )
619     THEN
620         COMMIT WORK;
621     END IF;
622 
623 
624     -- Debug Message
625     IF l_debug THEN
626         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
627                         'Public API: ' || l_api_name || 'end');
628 
629         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'End time:'
630                         || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
631     END IF;
632 
633 
634     FND_MSG_PUB.Count_And_Get
635     (  p_count          =>   x_msg_count,
636        p_data           =>   x_msg_data
637     );
638 
639     EXCEPTION
640         WHEN FND_API.G_EXC_ERROR THEN
641             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
642                  P_MODULE => l_module
643                 ,P_API_NAME => L_API_NAME
644                 ,P_PKG_NAME => G_PKG_NAME
645                 ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
646                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
647                 ,X_MSG_COUNT => X_MSG_COUNT
648                 ,X_MSG_DATA => X_MSG_DATA
649                 ,X_RETURN_STATUS => X_RETURN_STATUS);
650 
651         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
652             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
653                  P_MODULE => l_module
654                 ,P_API_NAME => L_API_NAME
655                 ,P_PKG_NAME => G_PKG_NAME
656                 ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR
657                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
658                 ,X_MSG_COUNT => X_MSG_COUNT
659                 ,X_MSG_DATA => X_MSG_DATA
660                 ,X_RETURN_STATUS => X_RETURN_STATUS);
661 
662         WHEN OTHERS THEN
663             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
664                  P_MODULE => l_module
665                 ,P_API_NAME => L_API_NAME
666                 ,P_PKG_NAME => G_PKG_NAME
667                 ,P_EXCEPTION_LEVEL => AS_UTILITY_PVT.G_EXC_OTHERS
668                 ,P_SQLCODE => SQLCODE
669                 ,P_SQLERRM => SQLERRM
670                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
671                 ,X_MSG_COUNT => X_MSG_COUNT
672                 ,X_MSG_DATA => X_MSG_DATA
673                 ,X_RETURN_STATUS => X_RETURN_STATUS);
674 
675 End Upd_Opp_Lines_post_event;
676 
677 -- Start of Comments
678 --
679 --      API name        : Before_Opp_STeam_Update
680 --      Type            : Public
681 --      Function        : When called before Opportunity sales team update, takes
682 --                        snapshot of Opp sales team and returns an event key in
683 --                        x_event_key which is to be passed, when raising a
684 --                        business event after the update is over using the
685 --                        Upd_Opp_STeam_post_event procedure. If lead_id is
686 --                        NULL then a new Event key is returned without taking
687 --                        a snapshot. This can be used before creating a new
688 --                        opportunity since no lead_id is available.
689 --
690 --      Pre-reqs        : Existing lead_id or NULL value.
691 --
692 --      Paramaeters     :
693 --      IN              :
694 --          p_api_version_number    IN  NUMBER
695 --          p_init_msg_list         IN  VARCHAR2
696 --          p_commit                IN  VARCHAR2
697 --          p_validation_level      IN  NUMBER
698 --          p_lead_id               IN NUMBER
699 --      OUT             :
700 --          x_return_status         OUT NOCOPY     VARCHAR2(1)
701 --          x_msg_count             OUT NOCOPY     NUMBER
702 --          x_msg_data              OUT NOCOPY     VARCHAR2(2000)
703 --          x_event_key             OUT NOCOPY VARCHAR2
704 --
705 --
706 --      Version :       Current version 2.0
707 --                      Initial version 2.0
708 --
709 --      Notes:
710 --
711 --
712 -- End of Comments
713 
714 
715 PROCEDURE Before_Opp_STeam_Update(
716     p_api_version_number        IN  NUMBER,
717     p_init_msg_list             IN  VARCHAR2 DEFAULT FND_API.G_FALSE,
718     p_commit                    IN  VARCHAR2 DEFAULT FND_API.G_FALSE,
722     x_msg_count                 OUT NOCOPY NUMBER,
719     p_validation_level          IN  NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
720     p_lead_id                   IN NUMBER,
721     x_return_status             OUT NOCOPY VARCHAR2,
723     x_msg_data                  OUT NOCOPY VARCHAR2,
724     x_event_key                 OUT NOCOPY VARCHAR2
725 ) IS
726 
727 l_api_name              CONSTANT VARCHAR2(30) := 'Before_Opp_STeam_Update';
728 l_api_version_number    CONSTANT NUMBER       := 2.0;
729 l_debug                 BOOLEAN := FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW);
730 l_module CONSTANT VARCHAR2(255) := 'as.plsql.bevpb.Before_Opp_STeam_Update';
731 
732 BEGIN
733     -- Standard Start of API savepoint
734     SAVEPOINT BEFORE_OPP_STEAM_UPDATE_PUB;
735     -- Standard call to check for call compatibility.
736     IF NOT FND_API.Compatible_API_Call( l_api_version_number,
737                                         p_api_version_number,
738                                         l_api_name,
739                                         G_PKG_NAME)
740     THEN
741         RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
742     END IF;
743 
744     -- Initialize message list if p_init_msg_list is set to TRUE.
745     IF FND_API.to_Boolean( p_init_msg_list )
746     THEN
747         FND_MSG_PUB.initialize;
748     END IF;
749 
750     -- Debug Message
751     IF l_debug THEN
752         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
753                         'Public API: ' || l_api_name || 'start');
754         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
755                         'Start time: ' || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
756     END IF;
757 
758     -- Initialize API return status to SUCCESS
759     x_return_status := FND_API.G_RET_STS_SUCCESS;
760 
761     --
762     -- API body
763     --
764 
765     IF l_debug THEN
766         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
767                         'Public API: Calling AS_BUSINESS_EVENT_PVT.Before_Opp_STeam_Update');
768     END IF;
769 
770     AS_BUSINESS_EVENT_PVT.Before_Opp_STeam_Update
771     (
772         p_lead_id       => p_lead_id,
773         x_event_key     => x_event_key
774     );
775 
776     IF x_return_status = FND_API.G_RET_STS_ERROR then
777         raise FND_API.G_EXC_ERROR;
778     ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
779         raise FND_API.G_EXC_UNEXPECTED_ERROR;
780     END IF;
781 
782     --
783     -- End of API body.
784     --
785 
786     IF FND_API.to_Boolean( p_commit )
787     THEN
788         COMMIT WORK;
789     END IF;
790 
791 
792     -- Debug Message
793     IF l_debug THEN
794         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
795                         'Public API: ' || l_api_name || 'end');
796 
797         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'End time:'
798                         || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
799     END IF;
800 
801 
802     FND_MSG_PUB.Count_And_Get
803     (  p_count          =>   x_msg_count,
804        p_data           =>   x_msg_data
805     );
806 
807     EXCEPTION
808         WHEN FND_API.G_EXC_ERROR THEN
809             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
810                  P_MODULE => l_module
811                 ,P_API_NAME => L_API_NAME
812                 ,P_PKG_NAME => G_PKG_NAME
813                 ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
814                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
815                 ,X_MSG_COUNT => X_MSG_COUNT
816                 ,X_MSG_DATA => X_MSG_DATA
817                 ,X_RETURN_STATUS => X_RETURN_STATUS);
818 
819         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
820             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
821                  P_MODULE => l_module
822                 ,P_API_NAME => L_API_NAME
823                 ,P_PKG_NAME => G_PKG_NAME
824                 ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR
825                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
826                 ,X_MSG_COUNT => X_MSG_COUNT
827                 ,X_MSG_DATA => X_MSG_DATA
828                 ,X_RETURN_STATUS => X_RETURN_STATUS);
829 
830         WHEN OTHERS THEN
831             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
832                  P_MODULE => l_module
833                 ,P_API_NAME => L_API_NAME
834                 ,P_PKG_NAME => G_PKG_NAME
835                 ,P_EXCEPTION_LEVEL => AS_UTILITY_PVT.G_EXC_OTHERS
836                 ,P_SQLCODE => SQLCODE
837                 ,P_SQLERRM => SQLERRM
838                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
839                 ,X_MSG_COUNT => X_MSG_COUNT
840                 ,X_MSG_DATA => X_MSG_DATA
841                 ,X_RETURN_STATUS => X_RETURN_STATUS);
842 
843 End Before_Opp_STeam_Update;
844 
845 -- Start of Comments
846 --
847 --      API name        : Upd_Opp_STeam_post_event
848 --      Type            : Public
849 --      Function        : Raises a business event for Opportunity sales team
850 --                        update. The Procedure Before_Opp_STeam_Update should
854 --                        Before_Opp_STeam_Update call.
851 --                        have been called and the same event key must be passed.
852 --
853 --      Pre-reqs        : Existing lead_id and x_event_key from
855 --
856 --      Paramaeters     :
857 --      IN              :
858 --          p_api_version_number    IN  NUMBER
859 --          p_init_msg_list         IN  VARCHAR2
860 --          p_commit                IN  VARCHAR2
861 --          p_validation_level      IN  NUMBER
862 --          p_event_key             IN  VARCHAR2
863 --          p_lead_id               IN  NUMBER
864 --      OUT             :
865 --          x_return_status         OUT NOCOPY     VARCHAR2(1)
866 --          x_msg_count             OUT NOCOPY     NUMBER
867 --          x_msg_data              OUT NOCOPY     VARCHAR2(2000)
868 --
869 --
870 --      Version :       Current version 2.0
871 --                      Initial version 2.0
872 --
873 --      Notes:
874 --
875 --
876 -- End of Comments
877 
878 PROCEDURE Upd_Opp_STeam_post_event(
879     p_api_version_number        IN  NUMBER,
880     p_init_msg_list             IN  VARCHAR2 DEFAULT FND_API.G_FALSE,
881     p_commit                    IN  VARCHAR2 DEFAULT FND_API.G_FALSE,
882     p_validation_level          IN  NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
883     p_lead_id                   IN NUMBER,
884     p_event_key                 IN VARCHAR2,
885     x_return_status             OUT NOCOPY VARCHAR2,
886     x_msg_count                 OUT NOCOPY NUMBER,
887     x_msg_data                  OUT NOCOPY VARCHAR2
888 ) IS
889 
890 l_api_name              CONSTANT VARCHAR2(30) := 'Upd_Opp_STeam_post_event';
891 l_api_version_number    CONSTANT NUMBER       := 2.0;
892 l_debug                 BOOLEAN := FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW);
893 l_module CONSTANT VARCHAR2(255) := 'as.plsql.bevpb.Upd_Opp_STeam_post_event';
894 
895 BEGIN
896     -- Standard Start of API savepoint
897     SAVEPOINT UPD_OPP_STEAM_POST_EVENT_PUB;
898     -- Standard call to check for call compatibility.
899     IF NOT FND_API.Compatible_API_Call( l_api_version_number,
900                                         p_api_version_number,
901                                         l_api_name,
902                                         G_PKG_NAME)
903     THEN
904         RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
905     END IF;
906 
907     -- Initialize message list if p_init_msg_list is set to TRUE.
908     IF FND_API.to_Boolean( p_init_msg_list )
909     THEN
910         FND_MSG_PUB.initialize;
911     END IF;
912 
913     -- Debug Message
914     IF l_debug THEN
915         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
916                         'Public API: ' || l_api_name || 'start');
917         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
918                         'Start time: ' || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
919     END IF;
920 
921     -- Initialize API return status to SUCCESS
922     x_return_status := FND_API.G_RET_STS_SUCCESS;
923 
924     --
925     -- API body
926     --
927 
928     IF l_debug THEN
929         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
930                         'Public API: Calling AS_BUSINESS_EVENT_PVT.Upd_Opp_STeam_post_event');
931     END IF;
932 
933     AS_BUSINESS_EVENT_PVT.Upd_Opp_STeam_post_event
934     (
935         p_lead_id       => p_lead_id,
936         p_event_key     => p_event_key
937     );
938 
939     IF x_return_status = FND_API.G_RET_STS_ERROR then
940         raise FND_API.G_EXC_ERROR;
941     ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
942         raise FND_API.G_EXC_UNEXPECTED_ERROR;
943     END IF;
944 
945     --
946     -- End of API body.
947     --
948 
949     IF FND_API.to_Boolean( p_commit )
950     THEN
951         COMMIT WORK;
952     END IF;
953 
954 
955     -- Debug Message
956     IF l_debug THEN
957         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
958                         'Public API: ' || l_api_name || 'end');
959 
960         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'End time:'
964 
961                         || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
962     END IF;
963 
965     FND_MSG_PUB.Count_And_Get
966     (  p_count          =>   x_msg_count,
967        p_data           =>   x_msg_data
968     );
969 
970     EXCEPTION
971         WHEN FND_API.G_EXC_ERROR THEN
972             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
973                  P_MODULE => l_module
974                 ,P_API_NAME => L_API_NAME
975                 ,P_PKG_NAME => G_PKG_NAME
976                 ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
977                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
978                 ,X_MSG_COUNT => X_MSG_COUNT
979                 ,X_MSG_DATA => X_MSG_DATA
980                 ,X_RETURN_STATUS => X_RETURN_STATUS);
981 
982         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
983             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
984                  P_MODULE => l_module
985                 ,P_API_NAME => L_API_NAME
986                 ,P_PKG_NAME => G_PKG_NAME
987                 ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR
988                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
989                 ,X_MSG_COUNT => X_MSG_COUNT
990                 ,X_MSG_DATA => X_MSG_DATA
991                 ,X_RETURN_STATUS => X_RETURN_STATUS);
992 
993         WHEN OTHERS THEN
994             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
995                  P_MODULE => l_module
996                 ,P_API_NAME => L_API_NAME
997                 ,P_PKG_NAME => G_PKG_NAME
998                 ,P_EXCEPTION_LEVEL => AS_UTILITY_PVT.G_EXC_OTHERS
999                 ,P_SQLCODE => SQLCODE
1000                 ,P_SQLERRM => SQLERRM
1001                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
1002                 ,X_MSG_COUNT => X_MSG_COUNT
1003                 ,X_MSG_DATA => X_MSG_DATA
1004                 ,X_RETURN_STATUS => X_RETURN_STATUS);
1005 
1006 End Upd_Opp_STeam_post_event;
1007 
1008 -- Start of Comments
1009 --
1010 --      API name        : Before_Cust_STeam_Update
1011 --      Type            : Public
1012 --      Function        : When called before Customer sales team update, takes
1013 --                        snapshot of Cust sales team and returns an event key in
1014 --                        x_event_key which is to be passed, when raising a
1015 --                        business event after the update is over using the
1016 --                        Upd_Cust_STeam_post_event procedure. If cust_id is
1017 --                        NULL then a new Event key is returned without taking
1018 --                        a snapshot. This can be used before creating a new
1019 --                        customer since no cust_id is available.
1020 --
1021 --      Pre-reqs        : Existing cust_id or NULL value.
1022 --
1023 --      Paramaeters     :
1024 --      IN              :
1025 --          p_api_version_number    IN  NUMBER
1026 --          p_init_msg_list         IN  VARCHAR2
1027 --          p_commit                IN  VARCHAR2
1028 --          p_validation_level      IN  NUMBER
1029 --          p_cust_id               IN NUMBER
1030 --      OUT             :
1031 --          x_return_status         OUT NOCOPY     VARCHAR2(1)
1032 --          x_msg_count             OUT NOCOPY     NUMBER
1033 --          x_msg_data              OUT NOCOPY     VARCHAR2(2000)
1034 --          x_event_key             OUT NOCOPY VARCHAR2
1035 --
1036 --
1037 --      Version :       Current version 2.0
1038 --                      Initial version 2.0
1039 --
1040 --      Notes:
1041 --
1042 --
1043 -- End of Comments
1044 
1045 
1046 PROCEDURE Before_Cust_STeam_Update(
1047     p_api_version_number        IN  NUMBER,
1048     p_init_msg_list             IN  VARCHAR2 DEFAULT FND_API.G_FALSE,
1049     p_commit                    IN  VARCHAR2 DEFAULT FND_API.G_FALSE,
1050     p_validation_level          IN  NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
1051     p_cust_id                   IN NUMBER,
1052     x_return_status             OUT NOCOPY VARCHAR2,
1053     x_msg_count                 OUT NOCOPY NUMBER,
1054     x_msg_data                  OUT NOCOPY VARCHAR2,
1055     x_event_key                 OUT NOCOPY VARCHAR2
1056 ) IS
1057 
1058 l_api_name              CONSTANT VARCHAR2(30) := 'Before_Cust_STeam_Update';
1059 l_api_version_number    CONSTANT NUMBER       := 2.0;
1060 l_debug                 BOOLEAN := FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW);
1061 l_module CONSTANT VARCHAR2(255) := 'as.plsql.bevpb.Before_Cust_STeam_Update';
1062 
1063 BEGIN
1064     -- Standard Start of API savepoint
1065     SAVEPOINT BEFORE_CUST_STEAM_UPDATE_PUB;
1066     -- Standard call to check for call compatibility.
1070                                         G_PKG_NAME)
1067     IF NOT FND_API.Compatible_API_Call( l_api_version_number,
1068                                         p_api_version_number,
1069                                         l_api_name,
1071     THEN
1072         RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1073     END IF;
1074 
1075     -- Initialize message list if p_init_msg_list is set to TRUE.
1076     IF FND_API.to_Boolean( p_init_msg_list )
1077     THEN
1078         FND_MSG_PUB.initialize;
1079     END IF;
1080 
1081     -- Debug Message
1082     IF l_debug THEN
1083         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
1084                         'Public API: ' || l_api_name || 'start');
1085         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
1086                         'Start time: ' || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
1087     END IF;
1088 
1089     -- Initialize API return status to SUCCESS
1090     x_return_status := FND_API.G_RET_STS_SUCCESS;
1091 
1092     --
1093     -- API body
1094     --
1095 
1096     IF l_debug THEN
1097         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
1098                         'Public API: Calling AS_BUSINESS_EVENT_PVT.Before_Cust_STeam_Update');
1099     END IF;
1100 
1101     AS_BUSINESS_EVENT_PVT.Before_Cust_STeam_Update
1102     (
1103         p_cust_id       => p_cust_id,
1104         x_event_key     => x_event_key
1105     );
1106 
1107     IF x_return_status = FND_API.G_RET_STS_ERROR then
1108         raise FND_API.G_EXC_ERROR;
1109     ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1110         raise FND_API.G_EXC_UNEXPECTED_ERROR;
1111     END IF;
1112 
1113     --
1114     -- End of API body.
1115     --
1116 
1117     IF FND_API.to_Boolean( p_commit )
1118     THEN
1119         COMMIT WORK;
1120     END IF;
1121 
1122 
1123     -- Debug Message
1124     IF l_debug THEN
1125         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
1126                         'Public API: ' || l_api_name || 'end');
1127 
1128         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'End time:'
1129                         || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
1130     END IF;
1131 
1132 
1133     FND_MSG_PUB.Count_And_Get
1134     (  p_count          =>   x_msg_count,
1135        p_data           =>   x_msg_data
1136     );
1137 
1138     EXCEPTION
1139         WHEN FND_API.G_EXC_ERROR THEN
1140             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
1141                  P_MODULE => l_module
1142                 ,P_API_NAME => L_API_NAME
1143                 ,P_PKG_NAME => G_PKG_NAME
1144                 ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
1145                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
1146                 ,X_MSG_COUNT => X_MSG_COUNT
1147                 ,X_MSG_DATA => X_MSG_DATA
1148                 ,X_RETURN_STATUS => X_RETURN_STATUS);
1149 
1150         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1151             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
1152                  P_MODULE => l_module
1153                 ,P_API_NAME => L_API_NAME
1154                 ,P_PKG_NAME => G_PKG_NAME
1155                 ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR
1156                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
1157                 ,X_MSG_COUNT => X_MSG_COUNT
1158                 ,X_MSG_DATA => X_MSG_DATA
1159                 ,X_RETURN_STATUS => X_RETURN_STATUS);
1160 
1161         WHEN OTHERS THEN
1162             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
1163                  P_MODULE => l_module
1164                 ,P_API_NAME => L_API_NAME
1165                 ,P_PKG_NAME => G_PKG_NAME
1166                 ,P_EXCEPTION_LEVEL => AS_UTILITY_PVT.G_EXC_OTHERS
1167                 ,P_SQLCODE => SQLCODE
1168                 ,P_SQLERRM => SQLERRM
1169                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
1170                 ,X_MSG_COUNT => X_MSG_COUNT
1171                 ,X_MSG_DATA => X_MSG_DATA
1172                 ,X_RETURN_STATUS => X_RETURN_STATUS);
1173 
1174 End Before_Cust_STeam_Update;
1175 
1176 -- Start of Comments
1177 --
1178 --      API name        : Upd_Cust_STeam_post_event
1179 --      Type            : Public
1180 --      Function        : Raises a business event for Customer sales team
1181 --                        update. The Procedure Before_Cust_STeam_Update should
1182 --                        have been called and the same event key must be passed.
1183 --
1184 --      Pre-reqs        : Existing cust_id and x_event_key from
1185 --                        Before_Cust_STeam_Update call.
1186 --
1187 --      Paramaeters     :
1188 --      IN              :
1189 --          p_api_version_number    IN  NUMBER
1190 --          p_init_msg_list         IN  VARCHAR2
1191 --          p_commit                IN  VARCHAR2
1192 --          p_validation_level      IN  NUMBER
1193 --          p_event_key             IN  VARCHAR2
1194 --          p_cust_id               IN  NUMBER
1195 --      OUT             :
1196 --          x_return_status         OUT NOCOPY     VARCHAR2(1)
1197 --          x_msg_count             OUT NOCOPY     NUMBER
1198 --          x_msg_data              OUT NOCOPY     VARCHAR2(2000)
1199 --
1200 --
1201 --      Version :       Current version 2.0
1205 --
1202 --                      Initial version 2.0
1203 --
1204 --      Notes:
1206 --
1207 -- End of Comments
1208 
1209 PROCEDURE Upd_Cust_STeam_post_event(
1210     p_api_version_number        IN  NUMBER,
1211     p_init_msg_list             IN  VARCHAR2 DEFAULT FND_API.G_FALSE,
1212     p_commit                    IN  VARCHAR2 DEFAULT FND_API.G_FALSE,
1213     p_validation_level          IN  NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
1214     p_cust_id                   IN NUMBER,
1215     p_event_key                 IN VARCHAR2,
1216     x_return_status             OUT NOCOPY VARCHAR2,
1217     x_msg_count                 OUT NOCOPY NUMBER,
1218     x_msg_data                  OUT NOCOPY VARCHAR2
1219 ) IS
1220 
1224 l_module CONSTANT VARCHAR2(255) := 'as.plsql.bevpb.Upd_Cust_STeam_post_event';
1221 l_api_name              CONSTANT VARCHAR2(30) := 'Upd_Cust_STeam_post_event';
1222 l_api_version_number    CONSTANT NUMBER       := 2.0;
1223 l_debug                 BOOLEAN := FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW);
1225 
1226 BEGIN
1227     -- Standard Start of API savepoint
1228     SAVEPOINT UPD_CUST_STEAM_POST_EVENT_PUB;
1229     -- Standard call to check for call compatibility.
1230     IF NOT FND_API.Compatible_API_Call( l_api_version_number,
1231                                         p_api_version_number,
1232                                         l_api_name,
1233                                         G_PKG_NAME)
1234     THEN
1235         RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1236     END IF;
1237 
1238     -- Initialize message list if p_init_msg_list is set to TRUE.
1239     IF FND_API.to_Boolean( p_init_msg_list )
1240     THEN
1241         FND_MSG_PUB.initialize;
1242     END IF;
1243 
1244     -- Debug Message
1245     IF l_debug THEN
1246         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
1247                         'Public API: ' || l_api_name || 'start');
1248         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
1249                         'Start time: ' || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
1250     END IF;
1251 
1252     -- Initialize API return status to SUCCESS
1253     x_return_status := FND_API.G_RET_STS_SUCCESS;
1254 
1255     --
1256     -- API body
1257     --
1258 
1259     IF l_debug THEN
1260         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
1261                         'Public API: Calling AS_BUSINESS_EVENT_PVT.Upd_Cust_STeam_post_event');
1262     END IF;
1263 
1264     AS_BUSINESS_EVENT_PVT.Upd_Cust_STeam_post_event
1265     (
1266         p_cust_id       => p_cust_id,
1267         p_event_key     => p_event_key
1268     );
1269 
1270     IF x_return_status = FND_API.G_RET_STS_ERROR then
1271         raise FND_API.G_EXC_ERROR;
1272     ELSIF x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
1273         raise FND_API.G_EXC_UNEXPECTED_ERROR;
1274     END IF;
1275 
1276     --
1277     -- End of API body.
1278     --
1279 
1280     IF FND_API.to_Boolean( p_commit )
1281     THEN
1282         COMMIT WORK;
1283     END IF;
1284 
1285 
1286     -- Debug Message
1287     IF l_debug THEN
1288         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,
1289                         'Public API: ' || l_api_name || 'end');
1290 
1291         AS_UTILITY_PVT.Debug_Message(l_module, FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'End time:'
1292                         || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
1293     END IF;
1294 
1295 
1296     FND_MSG_PUB.Count_And_Get
1297     (  p_count          =>   x_msg_count,
1298        p_data           =>   x_msg_data
1299     );
1300 
1301     EXCEPTION
1302         WHEN FND_API.G_EXC_ERROR THEN
1303             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
1304                  P_MODULE => l_module
1305                 ,P_API_NAME => L_API_NAME
1306                 ,P_PKG_NAME => G_PKG_NAME
1307                 ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
1308                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
1309                 ,X_MSG_COUNT => X_MSG_COUNT
1310                 ,X_MSG_DATA => X_MSG_DATA
1311                 ,X_RETURN_STATUS => X_RETURN_STATUS);
1312 
1313         WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1314             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
1315                  P_MODULE => l_module
1316                 ,P_API_NAME => L_API_NAME
1317                 ,P_PKG_NAME => G_PKG_NAME
1318                 ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR
1319                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
1320                 ,X_MSG_COUNT => X_MSG_COUNT
1321                 ,X_MSG_DATA => X_MSG_DATA
1322                 ,X_RETURN_STATUS => X_RETURN_STATUS);
1323 
1324         WHEN OTHERS THEN
1325             AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
1326                  P_MODULE => l_module
1327                 ,P_API_NAME => L_API_NAME
1328                 ,P_PKG_NAME => G_PKG_NAME
1329                 ,P_EXCEPTION_LEVEL => AS_UTILITY_PVT.G_EXC_OTHERS
1330                 ,P_SQLCODE => SQLCODE
1331                 ,P_SQLERRM => SQLERRM
1332                 ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
1333                 ,X_MSG_COUNT => X_MSG_COUNT
1334                 ,X_MSG_DATA => X_MSG_DATA
1335                 ,X_RETURN_STATUS => X_RETURN_STATUS);
1336 
1337 End Upd_Cust_STeam_post_event;
1338 
1339 END AS_BUSINESS_EVENT_PUB;