DBA Data[Home] [Help]

PACKAGE BODY: APPS.GMI_MOVE_ORDER_HEADER_PVT

Source


1 PACKAGE BODY GMI_Move_Order_HEADER_PVT AS
2 /*  $Header: GMIVMOHB.pls 115.12 2003/04/22 14:04:38 hwahdani ship $ */
3 G_PKG_NAME  CONSTANT  VARCHAR2(30):='GMI_MOVE_ORDER_HEADER_PVT';
4 /*  Api start of comments
5  +=========================================================================+
6  |                Copyright (c) 2000 Oracle Corporation                    |
7  |                        TVP, Reading, England                            |
8  |                         All rights reserved                             |
9  +=========================================================================+
10  | FILENAME                                                                |
11  |    GMIVMOHB.pls                                                         |
12  |                                                                         |
13  | DESCRIPTION                                                             |
14  |     This package contains Private Routines relating to GMI              |
15  |     Move Order Header.                                                  |
16  |                                                                         |
17  | - Process_Move_Order_Header                                             |
18  |                                                                         |
19  |                                                                         |
20  | HISTORY                                                                 |
21  |     03-MAY-2000  Hverddin        Created                                |
22  |   			   									           |
23  +=========================================================================+
24   API Name  : GMI_Move_Order_HEADER_PVT
25   Type      : Global
26  -
27   Pre-reqs  : N/A
28   Parameters: Per function
29 
30   Current Vers  : 1.0
31 */
32 
33 -- HW OPM changes for NOCOPY
34 -- add NOCOPY to x_mo_hdr_rec
35 PROCEDURE Process_Move_Order_Header
36  (
37    p_api_version_number          IN  NUMBER
38  , p_init_msg_lst                IN  VARCHAR2 DEFAULT fnd_api.g_false
39  , p_validation_flag             IN  NUMBER   DEFAULT FND_API.G_VALID_LEVEL_FULL
40  , p_commit                      IN  VARCHAR2 DEFAULT FND_API.G_FALSE
41  , p_mo_hdr_rec                  IN  GMI_Move_Order_Global.MO_HDR_REC
42  , x_mo_hdr_rec                  OUT NOCOPY GMI_Move_Order_Global.MO_HDR_REC
43  , x_return_status               OUT NOCOPY VARCHAR2
44  , x_msg_count                   OUT NOCOPY NUMBER
45  , x_msg_data                    OUT NOCOPY VARCHAR2
46  )
47  IS
48  l_api_name           CONSTANT VARCHAR2 (30) := 'PROCESS_MOVE_ORDER_HEADER';
49  l_api_version_number CONSTANT NUMBER        := 1.0;
50  l_msg_count          NUMBER  :=0;
51  l_msg_data           VARCHAR2(2000);
52  l_return_status      VARCHAR2(1):=FND_API.G_RET_STS_SUCCESS;
53  l_mo_hdr_rec         GMI_MOVE_ORDER_GLOBAL.mo_hdr_rec:= p_mo_hdr_rec;
54 
55 
56  BEGIN
57 
58  gmi_reservation_util.println('In move order pvt');
59 gmi_reservation_util.println('value of p_mo_hdr_rec.organization_id: '||p_mo_hdr_rec.organization_id);
60 gmi_reservation_util.println('Value of p_mo_hdr_rec.operation is '||p_mo_hdr_rec.request_number);
61  /*  Standard Start OF API savepoint */
62     SAVEPOINT move_order_header;
63 
64    /*  DBMS_OUTPUT.PUT_LINE('IN MOVE ORDER HDR'); */
65 
66    /*  Standard call to check for call compatibility. */
67 
68    IF NOT FND_API.Compatible_API_CALL ( l_api_version_number
69 							   , p_api_version_number
70                                       , l_api_name
71 							   , G_PKG_NAME
72 							   )
73      THEN
74      RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
75    END IF;
76 
77 /* Initialize message list if p_int_msg_lst is set TRUE. */
78 																   IF FND_API.to_boolean(p_init_msg_lst)
79      THEN
80      FND_MSG_PUB.Initialize;
81    END IF;
82 /*  Initialize API return status to sucess */
83 
84   x_return_status := FND_API.G_RET_STS_SUCCESS;
85 
86   WSH_Util_Core.PrintLn('Move_Order_Header PVT => '||p_mo_hdr_rec.operation);
87 
88 
89   IF check_required( p_mo_hdr_rec => l_mo_hdr_rec) THEN
90 	FND_MESSAGE.SET_NAME('GMI','Required Values Missing');
91      RAISE FND_API.G_EXC_ERROR;
92   END IF;
93 
94 
95   WSH_Util_Core.PrintLn('Move_Order_Header PVT => '||p_mo_hdr_rec.operation);
96 
97   IF l_mo_hdr_rec.operation = INV_GLOBALS.G_OPR_DELETE THEN
98 	/*  physically delete this row */
99 	/*   */
100   WSH_Util_Core.PrintLn('Calling Delete Row');
101      GMI_Move_Order_Header_Util.delete_Row( l_mo_hdr_rec.header_id);
102 
103   ELSE
104 
105   WSH_Util_Core.PrintLn('Calling Insert / Update Row');
106 
107 	/*  Set Generic defaults */
108      l_mo_hdr_rec.last_update_date   := SYSDATE;
109      l_mo_hdr_rec.last_updated_by    := FND_GLOBAL.USER_ID;
110      l_mo_hdr_rec.last_update_login  := FND_GLOBAL.USER_ID;
111 
112      IF l_mo_hdr_rec.operation = INV_GLOBALS.G_OPR_UPDATE THEN
113   WSH_Util_Core.PrintLn('Calling Update Row');
114     gmi_reservation_util.PrintLn('Calling Update Row in move_order hdr pvt');
115         GMI_Move_Order_Header_Util.update_Row( l_mo_hdr_rec);
116 
117 	ELSE /*  IF l_mo_hdr_rec.operation = INV_GLOBALS.G_OPR_CREATE THEN */
118 	   /*  Set create defaults */
119 
120 
121         l_mo_hdr_rec.creation_date   := SYSDATE;
122         l_mo_hdr_rec.created_by      := FND_GLOBAL.USER_ID;
123 
124 	   /*  Get New Header Id Via Sequence */
125            -- BEGIN Bug 2628244 - Use of sequence MTL_TXN_REQUEST_HEADERS_S
126            -- instead of gmi_mo_header_id_s
127            -- select gmi_mo_header_id_s.nextval
128            select MTL_TXN_REQUEST_HEADERS_S.nextval
129            -- END Bug 2628244
130 	   INTO   l_mo_hdr_rec.header_id
131 	   FROM   DUAL;
132 
133 
134   WSH_Util_Core.PrintLn('Seq Header id => '||l_mo_hdr_rec.header_id);
135   WSH_Util_Core.PrintLn('Calling Insert Row');
136   WSH_Util_Core.PrintLn('Batch Number => ' || l_mo_hdr_rec.request_number);
137 gmi_reservation_util.println('Going to insert row in move_order_hdr_pvt');
138 gmi_reservation_util.println('value of l_mo_hdr_rec.organization_id: '||l_mo_hdr_rec.organization_id);
139 gmi_reservation_util.println('Value of l_mo_hdr_rec.operation is '||l_mo_hdr_rec.request_number);
140         GMI_Move_Order_Header_Util.Insert_Row( l_mo_hdr_rec);
141 
142      END IF;
143   END IF;
144 
145   WSH_Util_Core.PrintLn('Ham Out Of Here No Action');
146   gmi_reservation_util.PrintLn('Ham Out Of Here No Action');
147 
148      x_mo_hdr_rec := l_mo_hdr_rec;
149   WSH_Util_Core.PrintLn('Seq Header id => '||x_mo_hdr_rec.header_id);
150 
151 /*    FND_MESSAGE.Set_Name('GMI','Entering_GMI_Create_Move_Order_Header'); */
152 /*    FND_MSG_PUB.Add; */
153    /* RAISE FND_API.G_EXC_ERROR; */
154 
155 EXCEPTION
156    WHEN fnd_api.g_exc_error THEN
157       x_return_status := fnd_api.g_ret_sts_error;
158 
159       /*   Get message count and data */
160       FND_MSG_PUB.count_and_get
161        (   p_count  => x_msg_count
162          , p_data  => x_msg_data
163        );
164 
165    WHEN OTHERS THEN
166       x_return_status := fnd_api.g_ret_sts_error;
167 
168 	 FND_MSG_PUB.Add_Exc_Msg (  G_PKG_NAME
169 					      , l_api_name
170 	      				);
171 
172 
173       /*   Get message count and data */
174       FND_MSG_PUB.count_and_get
175        (   p_count  => x_msg_count
176          , p_data  => x_msg_data
177        );
178 
179 
180 
181 END Process_Move_Order_Header;
182 
183 FUNCTION check_required
184  (
185   p_mo_hdr_rec        IN  GMI_MOVE_ORDER_GLOBAL.mo_hdr_rec
186  )
187  RETURN BOOLEAN
188  IS
189 BEGIN
190 
191  IF ( p_mo_hdr_rec.operation = INV_GLOBALS.G_OPR_CREATE)  THEN
192 
193     IF  p_mo_hdr_rec.REQUEST_NUMBER    is NULL OR
194         p_mo_hdr_rec.organization_id   is NULL THEN
195 
196 	   RETURN TRUE;
197 
198 	ELSE
199 	   RETURN FALSE;
200 
201      END IF;
202 
203 
204  ELSIF ( p_mo_hdr_rec.operation = INV_GLOBALS.G_OPR_UPDATE)  THEN
205 
206     IF  p_mo_hdr_rec.header_id          is NULL OR
207         p_mo_hdr_rec.REQUEST_NUMBER     is NULL OR
208         p_mo_hdr_rec.organization_id    is NULL THEN
209 
210 	   RETURN TRUE;
211 
212 	ELSE
213 	   RETURN FALSE;
214 
215      END IF;
216 
217   /*  This should Catch DELETE, LOCK_ROW and QUERY */
218   /*  Which all need a HEADER ID. */
219   ELSE
220 
221     IF  p_mo_hdr_rec.header_id        is NULL THEN
222 	   RETURN TRUE;
223     ELSE
224 	   RETURN FALSE;
225     END IF;
226 
227  END IF;
228 
229  RETURN TRUE;
230 
231 
232  EXCEPTION
233 																 WHEN OTHERS THEN
234 	 FND_MESSAGE.SET_NAME('GMI','UNEXPECTED ERROR CHECK MISSING');
235       RETURN TRUE;
236 
237 END CHECK_REQUIRED;
238 
239 
240 END GMI_Move_Order_HEADER_PVT;