[Home] [Help]
PACKAGE BODY: APPS.GMI_SUMM_INV_DB_PVT
Source
1 PACKAGE BODY GMI_SUMM_INV_DB_PVT AS
2 /* $Header: GMIVSUMB.pls 115.8 2002/04/10 09:14:43 pkm ship $ */
3 /* +=========================================================================+
4 | Copyright (c) 2000 Oracle Corporation |
5 | TVP, Reading, England |
6 | All rights reserved |
7 +=========================================================================+
8 | FILENAME |
9 | GMIVSUMB.pls |
10 | |
11 | DESCRIPTION |
12 | This package contains private definitions For DML Actions |
13 | For IC_SUMM_INV |
14 | |
15 | HISTORY |
16 | 12-JAN-2000 H.Verdding |
17 | 07-MAR-2001 Jalaj Srivastava
18 | Bug 1662876
19 | 08-JAN-2002 Joe DiIorio 11.5.1I BUG#2043337
20 | Make all qty 2 fields get added with zero when null.
21 +=========================================================================+
22 API Name : GMI_SUMM_INV_DB_PVT
23 Type : Public
24 Function : This package contains private procedures used to create
25 IC_SUMM_INV transactions
26 Pre-reqs : N/A
27 Parameters: Per function
28
29 Current Vers : 1.0
30
31 Previous Vers : 1.0
32
33 Initial Vers : 1.0
34 Notes
35
36
37 Body end of comments
38 */
39 /* Global variables */
40 G_PKG_NAME CONSTANT VARCHAR2(30):='GMI_SUMM_INV_DB_PVT';
41 /* Api start of comments */
42
43 FUNCTION UPDATE_IC_SUMM_INV
44 (
45 p_summ_inv IN IC_SUMM_INV%ROWTYPE
46 )
47 RETURN BOOLEAN
48 IS
49
50 err_num NUMBER;
51 err_msg VARCHAR2(100);
52
53 BEGIN
54
55 IF ( p_summ_inv.qc_grade is NULL) THEN
56
57 --Jalaj Srivastava Bug 1662876
58 --nvl is required with qty2 since for pending txns qty2 is null
59 UPDATE IC_SUMM_INV
60 SET
61 onhand_qty = onhand_qty + p_summ_inv.onhand_qty,
62 onhand_qty2 = onhand_qty2 + NVL(p_summ_inv.onhand_qty2,0),
63 onhand_prod_qty = onhand_prod_qty + p_summ_inv.onhand_prod_qty,
64 onhand_prod_qty2 = NVL(onhand_prod_qty2,0) +
65 NVL(p_summ_inv.onhand_prod_qty2,0),
66 onhand_order_qty = onhand_order_qty + p_summ_inv.onhand_order_qty,
67 onhand_order_qty2 = NVL(onhand_order_qty2,0) +
68 NVL(p_summ_inv.onhand_order_qty2,0),
69 onhand_ship_qty = onhand_ship_qty + p_summ_inv.onhand_ship_qty,
70 onhand_ship_qty2 = NVL(onhand_ship_qty2,0) +
71 NVL(p_summ_inv.onhand_ship_qty2,0),
72 onpurch_qty = onpurch_qty + p_summ_inv.onpurch_qty,
73 onpurch_qty2 = NVL(onpurch_qty2,0) +
74 NVL(p_summ_inv.onpurch_qty2,0),
75 onprod_qty = onprod_qty + p_summ_inv.onprod_qty,
76 onprod_qty2 = NVL(onprod_qty2,0) +
77 NVL(p_summ_inv.onprod_qty2,0),
78 committedsales_qty = committedsales_qty + p_summ_inv.committedsales_qty,
79 committedsales_qty2 = NVL(committedsales_qty2,0) +
80 NVL(p_summ_inv.committedsales_qty2,0),
81 committedprod_qty = committedprod_qty + p_summ_inv.committedprod_qty,
82 committedprod_qty2 = NVL(committedprod_qty2,0) +
83 NVL(p_summ_inv.committedprod_qty2,0),
84 intransit_qty = intransit_qty + p_summ_inv.intransit_qty,
85 intransit_qty2 = NVL(intransit_qty2,0) +
86 NVL(p_summ_inv.intransit_qty2,0),
87 last_updated_by = p_summ_inv.last_updated_by,
88 created_by = p_summ_inv.created_by,
89 last_update_date = p_summ_inv.last_update_date,
90 creation_date = p_summ_inv.creation_date
91 WHERE item_id = p_summ_inv.item_id
92 AND whse_code = p_summ_inv.whse_code
93 AND qc_grade IS NULL;
94
95 ELSE
96
97 UPDATE IC_SUMM_INV
98 SET
99 onhand_qty = onhand_qty + p_summ_inv.onhand_qty,
100 onhand_qty2 = onhand_qty2 + NVL(p_summ_inv.onhand_qty2,0),
101 onhand_prod_qty = onhand_prod_qty + p_summ_inv.onhand_prod_qty,
102 onhand_prod_qty2 = NVL(onhand_prod_qty2,0) +
103 NVL(p_summ_inv.onhand_prod_qty2,0),
104 onhand_order_qty = onhand_order_qty + p_summ_inv.onhand_order_qty,
105 onhand_order_qty2 = NVL(onhand_order_qty2,0) +
106 NVL(p_summ_inv.onhand_order_qty2,0),
107 onhand_ship_qty = onhand_ship_qty + p_summ_inv.onhand_ship_qty,
108 onhand_ship_qty2 = NVL(onhand_ship_qty2,0) +
109 NVL(p_summ_inv.onhand_ship_qty2,0),
110 onpurch_qty = onpurch_qty + p_summ_inv.onpurch_qty,
111 onpurch_qty2 = NVL(onpurch_qty2,0) +
112 NVL(p_summ_inv.onpurch_qty2,0),
113 onprod_qty = onprod_qty + p_summ_inv.onprod_qty,
114 onprod_qty2 = NVL(onprod_qty2,0) +
115 NVL(p_summ_inv.onprod_qty2,0),
116 committedsales_qty = committedsales_qty + p_summ_inv.committedsales_qty,
117 committedsales_qty2 = NVL(committedsales_qty2,0) +
118 NVL(p_summ_inv.committedsales_qty2,0),
119 committedprod_qty = committedprod_qty + p_summ_inv.committedprod_qty,
120 committedprod_qty2 = NVL(committedprod_qty2,0) +
121 NVL(p_summ_inv.committedprod_qty2,0),
122 intransit_qty = intransit_qty + p_summ_inv.intransit_qty,
123 intransit_qty2 = NVL(intransit_qty2,0) +
124 NVL(p_summ_inv.intransit_qty2,0),
125 last_updated_by = p_summ_inv.last_updated_by,
126 created_by = p_summ_inv.created_by,
127 last_update_date = p_summ_inv.last_update_date,
128 creation_date = p_summ_inv.creation_date
129 WHERE item_id = p_summ_inv.item_id
130 AND whse_code = p_summ_inv.whse_code
131 AND qc_grade = p_summ_inv.qc_grade;
132
133 END IF;
134
135 IF SQL%ROWCOUNT =0 THEN
136 RETURN FALSE;
137 END IF;
138
139 RETURN TRUE;
140
141 EXCEPTION
142 WHEN NO_DATA_FOUND THEN
143 RETURN FALSE;
144 WHEN OTHERS THEN
145 /* err_num :=SQLCODE; */
146 /* err_msg :=SUBSTR(SQLERRM,1 ,100);*/
147 FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME
148 , 'update_ic_summ_inv'
149 );
150 RETURN FALSE;
151
152 END UPDATE_IC_SUMM_INV;
153
154 FUNCTION INSERT_IC_SUMM_INV
155 (
156 p_summ_inv IN IC_SUMM_INV%ROWTYPE
157 )
158 RETURN BOOLEAN
159 IS
160 err_num NUMBER;
161 err_msg VARCHAR2(100);
162 l_summ_inv_id NUMBER;
163
164 BEGIN
165
166 /* GET Sequence Number For SUMM_INV_ID*/
167
168 SELECT GEM5_SUMM_INV_ID_S.nextval
169 INTO l_summ_inv_id
170 FROM dual;
171
172
173 INSERT INTO IC_SUMM_INV
174 (
175 summ_inv_id,
176 item_id,
177 whse_code,
178 qc_grade,
179 onhand_qty,
180 onhand_qty2,
181 onhand_prod_qty,
182 onhand_prod_qty2,
183 onhand_order_qty,
184 onhand_order_qty2,
185 onhand_ship_qty,
186 onhand_ship_qty2,
187 onpurch_qty,
188 onpurch_qty2,
189 onprod_qty,
190 onprod_qty2,
191 committedsales_qty,
192 committedsales_qty2,
193 committedprod_qty,
194 committedprod_qty2,
195 intransit_qty,
196 intransit_qty2,
197 last_updated_by,
198 created_by,
199 last_update_date,
200 creation_date
201 )
202 VALUES
203 (
204 l_summ_inv_id,
205 p_summ_inv.item_id,
206 p_summ_inv.whse_code,
207 p_summ_inv.qc_grade,
208 p_summ_inv.onhand_qty,
209 nvl(p_summ_inv.onhand_qty2,0),
210 p_summ_inv.onhand_prod_qty,
211 nvl(p_summ_inv.onhand_prod_qty2,0),
212 p_summ_inv.onhand_order_qty,
213 nvl(p_summ_inv.onhand_order_qty2,0),
214 p_summ_inv.onhand_ship_qty,
215 nvl(p_summ_inv.onhand_ship_qty2,0),
216 p_summ_inv.onpurch_qty,
217 nvl(p_summ_inv.onpurch_qty2,0),
218 p_summ_inv.onprod_qty,
219 nvl(p_summ_inv.onprod_qty2,0),
220 p_summ_inv.committedsales_qty,
221 nvl(p_summ_inv.committedsales_qty2,0),
222 p_summ_inv.committedprod_qty,
223 nvl(p_summ_inv.committedprod_qty2,0),
224 p_summ_inv.intransit_qty,
225 nvl(p_summ_inv.intransit_qty2,0),
226 p_summ_inv.last_updated_by,
227 p_summ_inv.created_by,
228 p_summ_inv.last_update_date,
229 p_summ_inv.creation_date
230 );
231
232 RETURN TRUE;
233
234 EXCEPTION
235 WHEN OTHERS THEN
236 /* err_num :=SQLCODE;*/
237 /* err_msg :=SUBSTR(SQLERRM,1 ,100);*/
238 FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME
239 , 'insert_ic_summ_inv'
240 );
241 RETURN FALSE;
242
243
244 END INSERT_IC_SUMM_INV;
245
246 FUNCTION GET_LOT_ATTRIBUTES
247 (
248 p_lot_status IN VARCHAR2,
249 x_lots_sts OUT IC_LOTS_STS%ROWTYPE
250 )
251 RETURN BOOLEAN
252 IS
253 /* err_num NUMBER;*/
254 /* err_msg VARCHAR2(100);*/
255
256 CURSOR Get_Lot_status(v_lot_status IN VARCHAR2)
257 IS
258 SELECT *
259 FROM IC_LOTS_STS
260 WHERE UPPER(lot_status) = UPPER(v_lot_status)
261 AND DELETE_MARK <> 1;
262
263
264 BEGIN
265
266 OPEN get_lot_status(p_lot_status);
267 FETCH get_lot_status into x_lots_sts;
268
269 IF (get_lot_status%NOTFOUND) THEN
270 RAISE NO_DATA_FOUND;
271 END IF;
272
273
274 RETURN TRUE;
275
276 EXCEPTION
277
278 WHEN NO_DATA_FOUND THEN
279 RETURN FALSE;
280
281 WHEN OTHERS THEN
282 /* err_num :=SQLCODE;*/
283 /* err_msg :=SUBSTR(SQLERRM,1 ,100);*/
284 FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME
285 , 'insert_ic_summ_inv'
286 );
287 RETURN FALSE;
288
289 END GET_LOT_ATTRIBUTES;
290
291
292 END GMI_SUMM_INV_DB_PVT;