DBA Data[Home] [Help]

PACKAGE BODY: APPS.GMI_PICK_WAVE_CONFIRM_PUB

Source


1 PACKAGE BODY GMI_PICK_WAVE_CONFIRM_PUB AS
2 /*  $Header: GMIPPWCB.pls 115.15 2003/04/22 13:14:30 hwahdani ship $
3  +=========================================================================+
4  |                Copyright (c) 2000 Oracle Corporation                    |
5  |                        TVP, Reading, England                            |
6  |                         All rights reserved                             |
7  +=========================================================================+
8  | FILENAME                                                                |
9  |    GMIPPWCB.pls                                                         |
10  |                                                                         |
11  | DESCRIPTION                                                             |
12  |     This package contains public procedures relating to GMI             |
13  |     Pick Wave Confirmation.                                            |
14  |                                                                         |
15  |                                                                         |
16  | HISTORY                                                                 |
17  |     03-MAY-2000  hverddin        Created                                |
18  |     02-AUG-2000  jdiiorio        Commented out dbms_output.             |
19  |     14-Sep-2000  odaboval        Removed dummy calls.                   |
20  |                                                                         |
21  |     HW BUG#:2296620 Added a new parameter to PICK_CONFIRM called        |
22  |                     p_manual_pick for ship sets functionality           |
23  |                                                                         |
24  |                                                                         |
25  +=========================================================================+
26   API Name  : GMI_PICK_WAVE_CONFIRM_PUB
27   Type      : Global
28  -
29   Pre-reqs  : N/A
30   Parameters: Per function
31 
32   Current Vers  : 1.0
33 */
34 /* Global variables  */
35 G_PKG_NAME  CONSTANT  VARCHAR2(30):='GMI_PICK_WAVE_CONFIRM_PUB';
36 -- HW OPM changes for NOCOPY
37 -- Added NOCOPY to x_mo_line_tbl
38 PROCEDURE PICK_CONFIRM
39   (
40      p_api_version_number    IN  NUMBER
41    , p_init_msg_lst          IN  VARCHAR2 DEFAULT fnd_api.g_false
42    , p_validation_flag       IN  NUMBER   DEFAULT FND_API.G_VALID_LEVEL_FULL
43    , p_commit                IN  VARCHAR2 DEFAULT FND_API.G_FALSE
44    , p_mo_LINE_tbl           IN  GMI_Move_Order_GLOBAL.mo_line_tbl
45    , x_mo_LINE_tbl           OUT  NOCOPY GMI_Move_Order_GLOBAL.mo_line_tbl
46    , x_return_status         OUT  NOCOPY VARCHAR2
47    , x_msg_count             OUT  NOCOPY NUMBER
48    , x_msg_data              OUT  NOCOPY VARCHAR2
49    , p_manual_pick           IN VARCHAR2 DEFAULT NULL
50   )
51  IS
52  l_api_name           CONSTANT VARCHAR2 (30) := 'PICK_CONFIRM';
53  l_api_version_number CONSTANT NUMBER        := 1.0;
54 
55  l_msg_count          NUMBER  :=0;
56  l_msg_data           VARCHAR2(2000);
57  l_return_status      VARCHAR2(1):=FND_API.G_RET_STS_SUCCESS;
58  l_mo_line_rec       GMI_MOVE_ORDER_GLOBAL.mo_line_rec;
59  l_mo_line_tbl       GMI_MOVE_ORDER_GLOBAL.mo_line_tbl;
60 -- HW OPM changes for NOCOPY
61  ll_mo_line_tbl       GMI_MOVE_ORDER_GLOBAL.mo_line_tbl;
62 
63 -- HW BUG#:2296620
64 l_manual_pick VARCHAR2(1);
65 l_warning EXCEPTION;
66 
67 
68  BEGIN
69    GMI_Reservation_Util.PrintLn('IN MOVE ORDER line');
70 /* ************ DO I NEED SAVE POINT FOR PUBLIC DECLARATION *******   */
71 /*  Standard call to check for call compatibility.   */
72 
73    IF NOT FND_API.Compatible_API_CALL ( l_api_version_number
74         				 , p_api_version_number
75                                          , l_api_name
76 				         , G_PKG_NAME
77 				       )
78      THEN
79      RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
80    END IF;
81 
82   GMI_Reservation_Util.PrintLn('After Check Version');
83 /* Initialize message list if p_int_msg_lst is set TRUE.   */
84    IF FND_API.to_boolean(p_init_msg_lst)
85      THEN
86      FND_MSG_PUB.Initialize;
87    END IF;
88 
89   GMI_Reservation_Util.PrintLn('After Init Messages');
90 
91 /*  Initialize API return status to sucess    */
92 
93   x_return_status := FND_API.G_RET_STS_SUCCESS;
94 
95 /*  Check That we have at least one Move Order Line Rec   */
96   GMI_Reservation_Util.PrintLn('mo_line_tbl.COUNT='||p_mo_line_tbl.count);
97 
98   IF ( p_mo_line_tbl.count = 0 )  THEN
99      FND_MESSAGE.SET_NAME('INV', 'INV_NO_LINES_TO_PICK_CONFIRM');
100      FND_MSG_PUB.add;
101 	raise FND_API.G_EXC_ERROR;
102   END IF;
103 
104 /*  Convert Missing To NULL;   */
105   GMI_Reservation_Util.PrintLn('Call Convert Missing To Null');
106 
107   FOR I in 1..p_mo_line_tbl.COUNT LOOP
108 
109     l_mo_line_rec := p_mo_line_tbl(I);
110 
111     GMI_Reservation_Util.PrintLn('_Move_Order_line => '||l_mo_line_rec.operation);
112 -- HW BUG#:2643440 No need to call Convert_Miss_To_Null since the
113 -- records is set to NULL already
114     l_mo_line_rec := GMI_MOVE_ORDER_line_UTIL.Convert_Miss_To_Null
115 	     		 ( p_mo_line_rec => l_mo_line_rec);
116 
117 
118     l_mo_line_tbl(I) := l_mo_line_rec;
119 
120 -- HW BUG#:2296620
121    l_manual_pick := p_manual_pick;
122   END LOOP;
123 
124   GMI_Reservation_Util.PrintLn('CAlling Move order Lines PVT');
125   GMI_RESERVATION_UTIL.println('Value of p_manual_pick is '|| l_manual_pick);
126  -- HW BUG#:2296620 add p_manual_pick parameter
127  -- HW OPM changes for NOCOPY
128  -- Use ll_mo_line_tbl for x_mo_LINE_tbl
129   GMI_PICK_WAVE_CONFIRM_PVT.PICK_CONFIRM
130   (
131      p_api_version_number  => l_api_version_number
132    , p_init_msg_lst        => p_init_msg_lst
133    , p_validation_flag     => p_validation_flag
134    , p_commit              => p_commit
135    , p_mo_LINE_tbl         => l_mo_line_tbl
136    , x_mo_LINE_tbl         => ll_mo_line_tbl
137    , x_return_status       => l_return_status
138    , x_msg_count           => l_msg_count
139    , x_msg_data            => l_msg_data
140    , p_manual_pick         => l_manual_pick
141   );
142 
143 /*  Return Output Variables   */
144  IF (l_return_status <> FND_API.G_RET_STS_SUCCESS AND
145      l_return_status <> 'X')  THEN
146    IF ( l_return_status = 'W' )THEN  -- HW BUG#:2296620
147     RAISE l_warning;
148    ElSE
149      FND_MESSAGE.SET_NAME('GMI','GMI_ERROR');
150      FND_MESSAGE.SET_TOKEN('BY_PROC','GMI_PICK_WAVE_CONFIRM_PVT.PICK_CONFIRM');
151      FND_MESSAGE.SET_TOKEN('WHERE',G_PKG_NAME||'.'||l_api_name);
152 
153      FND_MSG_PUB.Add;
154      RAISE FND_API.G_EXC_ERROR;
155     END IF;
156    END IF;
157 
158 -- HW OPM changes for NOCOPY
159 -- Use ll_mo_line_tbl for x_mo_LINE_tbl
160 
161   x_mo_line_tbl := ll_mo_line_tbl;
162   GMI_Reservation_Util.PrintLn('Count MOL table => ' || x_mo_line_tbl.count);
163 
164 
165 EXCEPTION
166    WHEN FND_API.G_EXC_ERROR THEN
167       x_return_status := FND_API.G_RET_STS_ERROR;
168 
169 /*   Get message count and data   */
170       FND_MSG_PUB.count_and_get
171        (   p_count  => x_msg_count
172          , p_data  => x_msg_data
173        );
174 -- HW BUG#:2296620 added a new exception
175    WHEN l_warning THEN
176     x_return_status := WSH_UTIL_CORE.G_RET_STS_WARNING;
177 
178    WHEN OTHERS THEN
179       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
180 
181       FND_MSG_PUB.Add_Exc_Msg (  G_PKG_NAME
182                                , l_api_name
183                               );
184 
185 
186 /*   Get message count and data    */
187       FND_MSG_PUB.count_and_get
188        (   p_count  => x_msg_count
189          , p_data  => x_msg_data
190        );
191 
192 
193 END PICK_CONFIRM;
194 
195 END GMI_PICK_WAVE_CONFIRM_PUB;