[Home] [Help]
PACKAGE BODY: APPS.INV_MWB_QUERY_MANAGER
Source
1 PACKAGE BODY INV_MWB_QUERY_MANAGER AS
2 /* $Header: INVMWQMB.pls 120.97.12020000.7 2013/01/14 02:52:24 xzhixong ship $ */
3
4 TYPE DateBindRec IS RECORD(bind_name VARCHAR2(50), bind_value DATE);
5 TYPE VarcharBindRec IS RECORD(bind_name VARCHAR2(50), bind_value VARCHAR2(255));
6 TYPE NumberBindRec IS RECORD(bind_name VARCHAR2(50), bind_value NUMBER);
7
8 TYPE DateBindRecTab IS TABLE OF DateBindRec INDEX BY PLS_INTEGER;
9 TYPE VarcharBindRecTab IS TABLE OF VarcharBindRec INDEX BY PLS_INTEGER;
10 TYPE NumberBindRecTab IS TABLE OF NumberBindRec INDEX BY PLS_INTEGER;
11
12 g_date_bind_tab DateBindRecTab;
13 g_number_bind_tab NumberBindRecTab;
14 g_varchar_bind_tab VarcharBindRecTab;
15
16 g_date_bind_index PLS_INTEGER;
17 g_varchar_bind_index PLS_INTEGER;
18 g_number_bind_index PLS_INTEGER;
19
20 g_pkg_name CONSTANT VARCHAR2(30) := 'INV_MWB_QUERY_MANAGER';
21
22 g_initialize BOOLEAN;
23
24 g_onhand_where_index PLS_INTEGER;
25 g_onhand_from_index PLS_INTEGER;
26 g_onhand_group_index PLS_INTEGER;
27
28 g_onhand_1_where_index PLS_INTEGER;
29 g_onhand_1_from_index PLS_INTEGER;
30 g_onhand_1_group_index PLS_INTEGER;
31
32 g_inbound_where_index PLS_INTEGER;
33 g_inbound_from_index PLS_INTEGER;
34 g_inbound_group_index PLS_INTEGER;
35
36 g_inbound_1_where_index PLS_INTEGER;
37 g_inbound_1_from_index PLS_INTEGER;
38 g_inbound_1_group_index PLS_INTEGER;
39
40 g_receiving_1_where_index PLS_INTEGER;
41 g_receiving_1_from_index PLS_INTEGER;
42 g_receiving_1_group_index PLS_INTEGER;
43
44 g_receiving_where_index PLS_INTEGER;
45 g_receiving_from_index PLS_INTEGER;
46 g_receiving_group_index PLS_INTEGER;
47
48 FUNCTION build_query RETURN VARCHAR2;
49 PROCEDURE bind_query(p_cursor_handle IN NUMBER);
50
51 FUNCTION build_onhand_query RETURN VARCHAR2;
52 FUNCTION build_inbound_query RETURN VARCHAR2;
53 FUNCTION build_receiving_query RETURN VARCHAR2;
54 PROCEDURE build_onhand_qf_where;
55 PROCEDURE post_query;
56
57 PROCEDURE add_bind_variable(p_bind_name VARCHAR2, p_bind_value DATE) IS
58 l_date_bind_rec DateBindRec;
59 l_procedure_name VARCHAR2(30);
60 BEGIN
61 IF g_date_bind_index IS NULL THEN
62 g_date_bind_index := 1;
63 END IF;
64 l_date_bind_rec.bind_name := p_bind_name;
65 l_date_bind_rec.bind_value := p_bind_value;
66 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, ' Bind Variable : '||p_bind_name||' Bind Value : '||to_char(p_bind_value));
67 g_date_bind_tab(g_date_bind_index) := l_date_bind_rec;
68 g_date_bind_index := g_date_bind_index + 1;
69 END add_bind_variable;
70
71 PROCEDURE add_bind_variable(p_bind_name VARCHAR2, p_bind_value NUMBER) IS
72 l_number_bind_rec NumberBindRec;
73 l_procedure_name VARCHAR2(30);
74 BEGIN
75 IF g_number_bind_index IS NULL THEN
76 g_number_bind_index := 1;
77 END IF;
78 l_number_bind_rec.bind_name := p_bind_name;
79 l_number_bind_rec.bind_value := p_bind_value;
80 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, ' Bind Variable : '||p_bind_name||' Bind Value : '||p_bind_value);
81 g_number_bind_tab(g_number_bind_index) := l_number_bind_rec;
82 g_number_bind_index := g_number_bind_index + 1;
83 END add_bind_variable;
84
85 PROCEDURE add_bind_variable(p_bind_name VARCHAR2, p_bind_value VARCHAR2) IS
86 l_varchar_bind_rec VarcharBindRec;
87 l_procedure_name VARCHAR2(30);
88 BEGIN
89 IF g_varchar_bind_index IS NULL THEN
90 g_varchar_bind_index := 1;
91 END IF;
92 l_varchar_bind_rec.bind_name := p_bind_name;
93 l_varchar_bind_rec.bind_value := p_bind_value;
94 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, ' Bind Variable : '||p_bind_name||' Bind Value : '||p_bind_value);
95 g_varchar_bind_tab(g_varchar_bind_index) := l_varchar_bind_rec;
96 g_varchar_bind_index := g_varchar_bind_index + 1;
97 END add_bind_variable;
98
99 FUNCTION build_insert(p_columns IN SelectColumnTabType) RETURN VARCHAR2 IS
100 l_insert_str inv_mwb_globals.long_str;
101 l_temp inv_mwb_globals.short_str;
102 l_pos NUMBER;
103 l_procedure_name VARCHAR2(30);
104 BEGIN
105
106 l_procedure_name := 'BUILD_INSERT';
107 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'Entered');
108 l_insert_str := 'INSERT INTO mtl_mwb_gtmp (';
109 -- inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, l_insert_str);
110 l_pos := p_columns.FIRST;
111 WHILE l_pos IS NOT NULL LOOP
112 IF l_pos = p_columns.FIRST THEN
113 l_temp := p_columns(l_pos).column_name;
114 ELSE
115 l_temp := ' , '||p_columns(l_pos).column_name;
116 END IF;
117 -- inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, l_temp);
118 l_insert_str := l_insert_str||l_temp;
119 l_pos := p_columns.NEXT(l_pos);
120 END LOOP;
121
122 l_insert_str := l_insert_str || ' ) ';
123 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, ' ) ');
124
125 RETURN l_insert_str;
126
127 END build_insert;
128
129 FUNCTION build_query(
130 p_select_columns IN SelectColumnTabType
131 ,p_from_clause IN SQLClauseTabType
132 ,p_where_clause IN SQLClauseTabType
133 ,p_group_clause IN SQLClauseTabType
134 ) RETURN VARCHAR2 IS
135 l_query_str inv_mwb_globals.very_long_str;
136 l_procedure_name VARCHAR2(30);
137 i PLS_INTEGER;
138 j PLS_INTEGER;
139 l_temp inv_mwb_globals.short_str;
140 l_default_status_id NUMBER; -- Onhand Material Status Support
141 l_if_msn Number :=0; --Bug 7611434
142
143 BEGIN
144
145 l_procedure_name := 'BUILD_QUERY';
146 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'Entered');
147
148 IF p_select_columns.COUNT > 0 THEN
149
150 i := p_select_columns.FIRST;
151 WHILE i IS NOT NULL LOOP
152
153 IF i = p_select_columns.FIRST THEN
154 l_query_str := 'SELECT ';
155 l_temp := p_select_columns(i).column_value||' '||p_select_columns(i).column_name;
156 ELSE
157 l_temp := ' , '||p_select_columns(i).column_value||' '||p_select_columns(i).column_name;
158 END IF;
159 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, l_temp);
160 l_query_str := l_query_str || l_temp;
161
162 i := p_select_columns.NEXT(i);
163 END LOOP;
164
165 END IF;
166
167 IF p_from_clause.COUNT > 0 THEN
168
169 j := p_from_clause.FIRST;
170 WHILE j IS NOT NULL LOOP
171 IF j = p_from_clause.FIRST THEN
172 l_query_str := l_query_str||' FROM ';
173 l_temp := p_from_clause(j);
174 ELSE
175 l_temp := ' , '||p_from_clause(j);
176 END IF;
177 l_query_str := l_query_str || l_temp;
178 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, l_temp);
179 j := p_from_clause.NEXT(j);
180 END LOOP;
181
182 END IF;
183
184 IF p_where_clause.COUNT > 0 THEN
185
186 j := p_where_clause.FIRST;
187 WHILE j IS NOT NULL LOOP
188 IF j = p_where_clause.FIRST THEN
189 l_query_str := l_query_str||' WHERE 1 = 1 ';
190 END IF;
191 l_temp := ' AND ' || p_where_clause(j);
192 l_query_str := l_query_str || l_temp;
193 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, l_temp);
194 j := p_where_clause.NEXT(j);
195 END LOOP;
196
197 END IF;
198
199 IF p_group_clause.COUNT > 0 THEN
200
201 j := p_group_clause.FIRST;
202 WHILE j IS NOT NULL LOOP
203 IF j = p_group_clause.FIRST THEN
204 l_query_str := l_query_str||' GROUP BY ';
205 l_temp := p_group_clause(j);
206 ELSE
207 l_temp := ' , '|| p_group_clause(j);
208 END IF;
209 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, l_temp);
210 l_query_str := l_query_str || l_temp;
211 j := p_group_clause.NEXT(j);
212 END LOOP;
213
214 END IF;
215
216 --IF inv_mwb_globals.g_tree_node_type = 'APPTREE_OBJECT_TRUNK' THEN
217 --Modified above IF ... THEN for bug 7611434
218 IF inv_mwb_globals.g_tree_node_type IN ('APPTREE_OBJECT_TRUNK','LOC','SUB','MATLOC','ORG') THEN
219 IF inv_mwb_globals.g_chk_onhand = 1
220 AND NVL(inv_mwb_globals.g_chk_receiving,0) = 0
221 AND NVL(inv_mwb_globals.g_chk_inbound,0) = 0 THEN
222
223 IF inv_mwb_globals.g_qty_from IS NOT NULL
224 OR inv_mwb_globals.g_qty_to IS NOT NULL THEN
225
226 l_query_str := l_query_str || ' HAVING 1 = 1 ';
227
228 -- IF inv_mwb_globals.g_view_by <> 'LPN' THEN
229 IF inv_mwb_globals.g_serial_from IS NULL
230 AND inv_mwb_globals.g_serial_to IS NULL
231 AND inv_mwb_globals.g_view_by <> 'SERIAL' THEN
232
233 --Bug 7611434 Begin
234 begin
235 Select instr(upper(l_query_str),'MTL_SERIAL_NUMBERS',1)
236 into l_if_msn
237 from dual;
238 exception
239 when others then
240 l_if_msn := 0;
241 end;
242 --Bug 7611434 End
243
244 if l_if_msn = 0 THEN --Added by Bug 7611434
245
246 IF NVL(inv_mwb_globals.g_qty_from,-100) = NVL(inv_mwb_globals.g_qty_to,-200) THEN
247 l_query_str := l_query_str || ' AND SUM (MOQD.PRIMARY_TRANSACTION_QUANTITY) = :onhand_qty';
248 END IF;
249 IF inv_mwb_globals.g_qty_from IS NOT NULL THEN
250 l_query_str := l_query_str || ' AND SUM (MOQD.PRIMARY_TRANSACTION_QUANTITY) >= :onhand_from_qty';
251 END IF;
252 IF inv_mwb_globals.g_qty_to IS NOT NULL THEN
253 l_query_str := l_query_str || ' AND SUM (MOQD.PRIMARY_TRANSACTION_QUANTITY) <= :onhand_to_qty';
254 END IF;
255
256 --Added by Bug 7611434 BEGIN
257 else
258
259 IF NVL(inv_mwb_globals.g_qty_from,-100) = NVL(inv_mwb_globals.g_qty_to,-200) THEN
260 l_query_str := l_query_str || ' AND count(1) = :onhand_qty';
261 END IF;
262 IF inv_mwb_globals.g_qty_from IS NOT NULL THEN
263 l_query_str := l_query_str || ' AND count(1) >= :onhand_from_qty';
264 END IF;
265 IF inv_mwb_globals.g_qty_to IS NOT NULL THEN
266 l_query_str := l_query_str || ' AND count(1) <= :onhand_to_qty';
267 END IF;
268
269 end if;
270 --Added by Bug 7611434 END
271
272
273 ELSIF inv_mwb_globals.g_serial_from IS NOT NULL
274 OR inv_mwb_globals.g_serial_to IS NOT NULL
275 OR inv_mwb_globals.g_view_by = 'SERIAL' THEN
276 IF NVL(inv_mwb_globals.g_qty_from,-100) = NVL(inv_mwb_globals.g_qty_to,-200) THEN
277 l_query_str := l_query_str || ' AND count(1) = :onhand_qty';
278 END IF;
279 IF inv_mwb_globals.g_qty_from IS NOT NULL THEN
280 l_query_str := l_query_str || ' AND count(1) >= :onhand_from_qty ';
281 END IF;
282 IF inv_mwb_globals.g_qty_to IS NOT NULL THEN
283 l_query_str := l_query_str || ' AND count(1) <= :onhand_to_qty ';
284 END IF;
285 END IF;
286 /* ELSIF inv_mwb_globals.g_view_by = 'LPN' THEN
287 IF NVL(inv_mwb_globals.g_qty_from,-100) = NVL(inv_mwb_globals.g_qty_to,-200) THEN
288 l_query_str := l_query_str || ' AND SUM(wlc.primary_quantity) = :onhand_qty';
289 END IF;
290 IF inv_mwb_globals.g_qty_from IS NOT NULL THEN
291 l_query_str := l_query_str || ' AND SUM(wlc.primary_quantity) >= :onhand_from_qty ';
292 END IF;
293 IF inv_mwb_globals.g_qty_to IS NOT NULL THEN
294 l_query_str := l_query_str || ' AND SUM(wlc.primary_quantity) <= :onhand_to_qty ';
295 END IF;
296 END IF;
297 */
298 IF NVL(inv_mwb_globals.g_qty_from,-100) = NVL(inv_mwb_globals.g_qty_to,-200) THEN
299 add_bind_variable('onhand_qty',inv_mwb_globals.g_qty_from);
300 END IF;
301 IF inv_mwb_globals.g_qty_from IS NOT NULL THEN
302 add_bind_variable('onhand_from_qty',inv_mwb_globals.g_qty_from);
303 END IF;
304 IF inv_mwb_globals.g_qty_to IS NOT NULL THEN
305 add_bind_variable('onhand_to_qty',inv_mwb_globals.g_qty_to);
306 END IF;
307
308 END IF;
309
310 END IF; -- Onhand quantity queries
311
312 IF inv_mwb_globals.g_chk_inbound = 1
313 AND NVL(inv_mwb_globals.g_chk_receiving,0) = 0
314 AND NVL(inv_mwb_globals.g_chk_onhand,0) = 0 THEN
315
316 IF inv_mwb_globals.g_qty_from IS NOT NULL
317 OR inv_mwb_globals.g_qty_to IS NOT NULL THEN
318 l_query_str := l_query_str || ' HAVING 1 = 1 ';
319 IF NVL(inv_mwb_globals.g_qty_from,-100) = NVL(inv_mwb_globals.g_qty_to,-200) THEN
320 l_query_str := l_query_str || ' AND SUM(ms.to_org_primary_quantity) = :inbound_qty';
321 add_bind_variable('inbound_qty',inv_mwb_globals.g_qty_from);
322 END IF;
323 IF inv_mwb_globals.g_qty_from IS NOT NULL THEN
324 l_query_str := l_query_str || ' AND SUM(ms.to_org_primary_quantity) >= :inbound_qty_from';
325 add_bind_variable('inbound_qty_from',inv_mwb_globals.g_qty_from);
326 END IF;
327 IF inv_mwb_globals.g_qty_to IS NOT NULL THEN
328 l_query_str := l_query_str || ' AND SUM(ms.to_org_primary_quantity) <= :inbound_qty_to';
329 add_bind_variable('inbound_qty_to',inv_mwb_globals.g_qty_to);
330 END IF;
331 END IF;
332 END IF; -- Inbound quantity queries
333
334 IF inv_mwb_globals.g_chk_receiving = 1
335 AND NVL(inv_mwb_globals.g_chk_onhand,0) = 0
336 AND NVL(inv_mwb_globals.g_chk_inbound,0) = 0 THEN
337
338 IF inv_mwb_globals.g_qty_from IS NOT NULL
339 OR inv_mwb_globals.g_qty_to IS NOT NULL THEN
340 l_query_str := l_query_str || ' HAVING 1 = 1';
341
342 -- IF inv_mwb_globals.g_view_by = 'LOCATION' THEN
343 IF NVL(inv_mwb_globals.g_qty_from,-100) = NVL(inv_mwb_globals.g_qty_to,-200) THEN
344 l_query_str := l_query_str || ' AND SUM(rs.to_org_primary_quantity) = :receiving_qty ';
345 END IF;
346 IF inv_mwb_globals.g_qty_from IS NOT NULL THEN
347 l_query_str := l_query_str || ' AND SUM(rs.to_org_primary_quantity) >= :receiving_from_qty ';
348 END IF;
349 IF inv_mwb_globals.g_qty_to IS NOT NULL THEN
350 l_query_str := l_query_str || ' AND SUM(rs.to_org_primary_quantity) <= :receiving_to_qty ';
351 END IF;
352 /* ELSIF inv_mwb_globals.g_view_by = 'LPN' THEN
353 IF NVL(inv_mwb_globals.g_qty_from,-100) = NVL(inv_mwb_globals.g_qty_to,-200) THEN
354 l_query_str := l_query_str || ' AND SUM(wlc.primary_quantity) = :receiving_qty';
355 END IF;
356 IF inv_mwb_globals.g_qty_from IS NOT NULL THEN
357 l_query_str := l_query_str || ' AND SUM(wlc.primary_quantity) >= :receiving_from_qty';
358 END IF;
359 IF inv_mwb_globals.g_qty_to IS NOT NULL THEN
360 l_query_str := l_query_str || ' AND SUM(wlc.primary_quantity) <= :receiving_to_qty';
361 END IF;
362 END IF;
363 */
364
365 IF NVL(inv_mwb_globals.g_qty_from,-100) = NVL(inv_mwb_globals.g_qty_to,-200) THEN
366 add_bind_variable('receiving_qty',inv_mwb_globals.g_qty_from);
367 END IF;
368 IF inv_mwb_globals.g_qty_from IS NOT NULL THEN
369 add_bind_variable('receiving_from_qty',inv_mwb_globals.g_qty_from);
370 END IF;
371 IF inv_mwb_globals.g_qty_to IS NOT NULL THEN
372 add_bind_variable('receiving_to_qty',inv_mwb_globals.g_qty_to);
373 END IF;
374 END IF;
375 END IF; -- Receiving quantities query
376 END IF; /* inv_mwb_globals.g_tree_node_type = 'APPTREE_OBJECT_TRUNK' */
377
378 -- Onhand Material Status Support
379 if(inv_mwb_globals.g_view_by = 'STATUS' AND inv_mwb_globals.g_tree_node_type = 'ONHAND_FOLDER') then
380 l_query_str := l_query_str || ' ORDER BY moqd.organization_id, moqd.inventory_item_id, moqd.revision, moqd.subinventory_code, moqd.locator_id, moqd.lot_number ';
381 end if;
382
383 RETURN l_query_str;
384 END build_query;
385
386
387 PROCEDURE execute_query IS
388
389 TYPE TempRecCurTyp IS REF CURSOR;
390
391 l_query_str inv_mwb_globals.very_long_str;
392 l_cursor_handle NUMBER;
393 l_rows_affected NUMBER;
394
395 l_procedure_name VARCHAR2(30);
396 BEGIN
397
398 l_procedure_name := 'EXECUTE_QUERY';
399 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'Entered');
400
401 l_query_str := build_query;
402
403 inv_mwb_globals.g_last_query := l_query_str;
404
405 /* delete from rtest1;
406 insert into rtest1 values(l_query_str);
407 commit;
408 */
409
410 l_cursor_handle := dbms_sql.open_cursor;
411 dbms_sql.parse(l_cursor_handle, l_query_str, dbms_sql.native);
412 bind_query(l_cursor_handle);
413
414 l_rows_affected := dbms_sql.execute(l_cursor_handle);
415 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'Rows created' ||l_rows_affected);
416 dbms_sql.close_cursor(l_cursor_handle);
417 post_query; -- Updates id to names.
418
419 END execute_query;
420
421 FUNCTION build_query RETURN VARCHAR2 IS
422 l_query_str inv_mwb_globals.very_long_str;
423 l_procedure_name VARCHAR2(30);
424 l_rev_control NUMBER; -- Bug 6060233
425 l_lot_control NUMBER; -- Bug 6060233
426 l_serial_control NUMBER; -- Bug 6060233
427 l_lot_controlled NUMBER := 0; -- Onhand Material Status Support
428 l_serial_controlled NUMBER := 0; -- Onhand Material Status Support
429 l_default_status_id NUMBER; -- Onhand Material Status Support
430 BEGIN
431
432 l_procedure_name := 'BUILD_QUERY';
433 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'Entered');
434
435 IF (( NVL(inv_mwb_globals.g_chk_onhand, 0) = 1 AND
436 NVL(inv_mwb_globals.g_chk_inbound, 0) = 0 AND
437 NVL(inv_mwb_globals.g_chk_receiving, 0) = 0 ) OR
438 NVL(inv_mwb_globals.g_tree_mat_loc_id, 0) = 1) OR
439 (inv_mwb_globals.g_chk_onhand = 0 AND
440 inv_mwb_globals.g_chk_receiving = 0 AND
441 inv_mwb_globals.g_chk_inbound = 0 AND
442 inv_mwb_globals.g_view_by = 'LPN') THEN
443
444
445 l_query_str := build_insert(g_onhand_select);
446 l_query_str := l_query_str || build_query(
447 g_onhand_select,
448 g_onhand_from,
449 g_onhand_where,
450 g_onhand_group
451 );
452
453
454
455
456 -- Bug 6060233
457 IF (inv_mwb_globals.g_status_id IS NOT NULL) THEN
458
459 IF (inv_mwb_globals.g_view_by = 'LOCATION') THEN
460
461 initialize_onhand_query;
462 l_query_str := l_query_str || ' UNION ';
463
464 CASE inv_mwb_globals.g_tree_node_type
465
466 WHEN 'APPTREE_OBJECT_TRUNK' THEN
467
468 INV_MWB_LOCATION_TREE.make_common_query_onhand('MOQD');
469
470 IF inv_mwb_globals.g_detailed = 1 THEN
471 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.SUBINVENTORY_CODE).column_value :=
472 'moqd.subinventory_code';
473 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LOCATOR_ID).column_value :=
474 'moqd.locator_id';
475 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.REVISION).column_value :=
476 'moqd.revision';
477
478 inv_mwb_query_manager.add_group_clause('moqd.subinventory_code', 'ONHAND');
479 inv_mwb_query_manager.add_group_clause('moqd.locator_id', 'ONHAND');
480 inv_mwb_query_manager.add_group_clause('moqd.revision', 'ONHAND');
481 END IF;
482
483 add_qf_where_onhand('ONHAND');
484
485 WHEN 'ORG' THEN
486
487 INV_MWB_LOCATION_TREE.make_common_query_onhand('MOQD');
488
489 inv_mwb_query_manager.add_where_clause('moqd.organization_id = :onh_tree_organization_id', 'ONHAND');
490 inv_mwb_query_manager.add_bind_variable('onh_tree_organization_id', inv_mwb_globals.g_tree_organization_id);
491 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.SUBINVENTORY_CODE).column_value :=
492 'moqd.subinventory_code';
493 inv_mwb_query_manager.add_group_clause('moqd.subinventory_code', 'ONHAND');
494
495 add_qf_where_onhand('ONHAND');
496
497 WHEN 'MATLOC' THEN
498
499 INV_MWB_LOCATION_TREE.make_common_query_onhand('MOQD');
500 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.SUBINVENTORY_CODE).column_value :=
501 'moqd.subinventory_code';
502 inv_mwb_query_manager.add_group_clause('moqd.subinventory_code', 'ONHAND');
503 inv_mwb_query_manager.add_where_clause('moqd.organization_id = :onh_tree_organization_id', 'ONHAND');
504 inv_mwb_query_manager.add_bind_variable('onh_tree_organization_id', inv_mwb_globals.g_tree_organization_id);
505 add_qf_where_onhand('ONHAND');
506
507 WHEN 'SUB' THEN
508
509 INV_MWB_LOCATION_TREE.make_common_query_onhand('MOQD');
510
511 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.SUBINVENTORY_CODE).column_value :=
512 'moqd.subinventory_code';
513 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LOCATOR_ID).column_value :=
514 'moqd.locator_id';
515
516 inv_mwb_query_manager.add_group_clause('moqd.subinventory_code', 'ONHAND');
517 inv_mwb_query_manager.add_group_clause('moqd.locator_id', 'ONHAND');
518
519 inv_mwb_query_manager.add_where_clause('moqd.organization_id = :onh_tree_organization_id', 'ONHAND');
520 inv_mwb_query_manager.add_where_clause('moqd.subinventory_code = :onh_tree_subinventory_code', 'ONHAND');
521
522 inv_mwb_query_manager.add_bind_variable('onh_tree_organization_id', inv_mwb_globals.g_tree_organization_id);
523 inv_mwb_query_manager.add_bind_variable('onh_tree_subinventory_code', inv_mwb_globals.g_tree_subinventory_code);
524
525 add_qf_where_onhand('ONHAND');
526
527 WHEN 'LOC' THEN
528 INV_MWB_LOCATION_TREE.make_common_query_onhand('MOQD');
529
530 inv_mwb_query_manager.add_where_clause('moqd.organization_id = :onh_tree_organization_id', 'ONHAND');
531 inv_mwb_query_manager.add_where_clause('moqd.subinventory_code = :onh_tree_subinventory_code', 'ONHAND');
532 inv_mwb_query_manager.add_where_clause('moqd.locator_id = :onh_tree_loc_id', 'ONHAND');
533
534 inv_mwb_query_manager.add_bind_variable('onh_tree_organization_id', inv_mwb_globals.g_tree_organization_id);
535 inv_mwb_query_manager.add_bind_variable('onh_tree_subinventory_code', inv_mwb_globals.g_tree_subinventory_code);
536 inv_mwb_query_manager.add_bind_variable('onh_tree_loc_id', inv_mwb_globals.g_tree_loc_id);
537
538 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.SUBINVENTORY_CODE).column_value :=
539 'moqd.subinventory_code';
540 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LOCATOR_ID).column_value :=
541 'moqd.locator_id';
542 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LPN_ID).column_value :=
543 'moqd.lpn_id';
544 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.CG_ID).column_value :=
545 'moqd.cost_group_id';
546
547 inv_mwb_query_manager.add_group_clause('moqd.subinventory_code', 'ONHAND');
548 inv_mwb_query_manager.add_group_clause('moqd.locator_id', 'ONHAND');
549 inv_mwb_query_manager.add_group_clause('moqd.lpn_id', 'ONHAND');
550 inv_mwb_query_manager.add_group_clause('moqd.cost_group_id', 'ONHAND');
551
552 add_qf_where_onhand('ONHAND');
553
554 WHEN 'ITEM' THEN
555 SELECT revision_qty_control_code,
556 lot_control_code,
557 serial_number_control_code
558 INTO l_rev_control,
559 l_lot_control,
560 l_serial_control
561 FROM mtl_system_items
562 WHERE inventory_item_id = inv_mwb_globals.g_tree_item_id
563 AND organization_id = inv_mwb_globals.g_tree_organization_id;
564
565 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.CG_ID).column_value :=
566 'moqd.cost_group_id';
567 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.SUBINVENTORY_CODE).column_value :=
568 'moqd.subinventory_code';
569 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LOCATOR_ID).column_value :=
570 'moqd.locator_id';
571 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LPN_ID).column_value :=
572 'moqd.lpn_id';
573
574 inv_mwb_query_manager.add_group_clause('moqd.subinventory_code', 'ONHAND');
575 inv_mwb_query_manager.add_group_clause('moqd.locator_id', 'ONHAND');
576 inv_mwb_query_manager.add_group_clause('moqd.lpn_id', 'ONHAND');
577 inv_mwb_query_manager.add_group_clause('moqd.cost_group_id', 'ONHAND');
578
579 -- Onhand Material Status Support
580 -- For serial controlled items, the status_id will be populated in post_query of IMVMWQMB.
581 if (inv_cache.set_org_rec(inv_mwb_globals.g_tree_organization_id)) then
582 l_default_status_id := inv_cache.org_rec.default_status_id;
583 end if;
584
585 if inv_cache.set_item_rec(inv_mwb_globals.g_tree_organization_id, inv_mwb_globals.g_tree_item_id) then
586 if (inv_cache.item_rec.serial_number_control_code in (2,5)) then
587 l_serial_controlled := 1; -- Item is serial controlled
588 end if;
589
590 if (inv_cache.item_rec.lot_control_code <> 1) then
591 l_lot_controlled := 1; -- Item is lot controlled
592 end if;
593 end if;
594
595 if (l_default_status_id is not null and l_serial_controlled = 0 and l_lot_controlled = 0) then
596 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.STATUS_ID).column_value :=
597 'moqd.status_id';
598 inv_mwb_query_manager.add_group_clause('moqd.status_id', 'ONHAND');
599 end if;
600 -- End Onhand Material Status Support
601
602 IF inv_mwb_globals.g_tree_parent_lpn_id IS NOT NULL THEN
603 inv_mwb_query_manager.add_where_clause(
604 'moqd.lpn_id = :onh_tree_lpn_id' ,
605 'ONHAND'
606 );
607 ELSE
608 inv_mwb_query_manager.add_where_clause(
609 'moqd.lpn_id IS NULL' ,
610 'ONHAND'
611 );
612 END IF;
613
614 IF inv_mwb_globals.g_tree_loc_id IS NOT NULL THEN
615 inv_mwb_query_manager.add_where_clause(
616 'moqd.locator_id = :onh_tree_loc_id' ,
617 'ONHAND'
618 );
619 ELSE
620 inv_mwb_query_manager.add_where_clause(
621 'moqd.locator_id IS NULL' ,
622 'ONHAND'
623 );
624 END IF;
625
626 IF inv_mwb_globals.g_tree_subinventory_code IS NOT NULL THEN
627 inv_mwb_query_manager.add_where_clause(
628 'moqd.subinventory_code = :onh_tree_sub_code' ,
629 'ONHAND'
630 );
631 END IF;
632
633 IF inv_mwb_globals.g_tree_parent_lpn_id IS NOT NULL THEN
634 inv_mwb_query_manager.add_bind_variable(
635 'onh_tree_lpn_id',
636 inv_mwb_globals.g_tree_parent_lpn_id
637 );
638 END IF;
639
640 IF inv_mwb_globals.g_tree_loc_id IS NOT NULL THEN
641 inv_mwb_query_manager.add_bind_variable(
642 'onh_tree_loc_id',
643 inv_mwb_globals.g_tree_loc_id
644 );
645 END IF;
646
647 IF inv_mwb_globals.g_tree_subinventory_code IS NOT NULL THEN
648 inv_mwb_query_manager.add_bind_variable(
649 'onh_tree_sub_code',
650 inv_mwb_globals.g_tree_subinventory_code
651 );
652 END IF;
653
654 INV_MWB_LOCATION_TREE.make_common_query_onhand('MOQD');
655 inv_mwb_query_manager.add_where_clause(
656 'moqd.inventory_item_id = :onh_tree_inventory_item_id' ,
657 'ONHAND'
658 );
659 inv_mwb_query_manager.add_where_clause(
660 'moqd.organization_id = :onh_tree_organization_id' ,
661 'ONHAND'
662 );
663
664 IF l_rev_control = 2 THEN
665 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.revision).column_value :=
666 'moqd.revision';
667 inv_mwb_query_manager.add_group_clause('moqd.revision', 'ONHAND');
668 END IF;
669
670 IF NVL(l_rev_control, 1) = 1 AND l_lot_control = 2 THEN
671 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LOT).column_value :=
672 'moqd.lot_number';
673 inv_mwb_query_manager.add_group_clause('moqd.lot_number', 'ONHAND');
674 END IF;
675 add_qf_where_onhand('ONHAND');
676 inv_mwb_query_manager.add_bind_variable(
677 'onh_tree_organization_id',
678 inv_mwb_globals.g_tree_organization_id
679 );
680 inv_mwb_query_manager.add_bind_variable(
681 'onh_tree_inventory_item_id',
682 inv_mwb_globals.g_tree_item_id
683 );
684
685 WHEN 'REV' THEN
686
687 INV_MWB_LOCATION_TREE.make_common_query_onhand('MOQD');
688 add_qf_where_onhand('ONHAND');
689
690 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.SUBINVENTORY_CODE).column_value :=
691 'moqd.subinventory_code';
692 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LOCATOR_ID).column_value :=
693 'moqd.locator_id';
694 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LOT).column_value :=
695 'moqd.lot_number';
696 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.CG_ID).column_value :=
697 'moqd.cost_group_id';
698 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LPN_ID).column_value :=
699 'moqd.lpn_id';
700 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.REVISION).column_value :=
701 'moqd.revision';
702
703 inv_mwb_query_manager.add_group_clause('moqd.subinventory_code', 'ONHAND');
704 inv_mwb_query_manager.add_group_clause('moqd.locator_id', 'ONHAND');
705 inv_mwb_query_manager.add_group_clause('moqd.lot_number', 'ONHAND');
706 inv_mwb_query_manager.add_group_clause('moqd.cost_group_id', 'ONHAND');
707 inv_mwb_query_manager.add_group_clause('moqd.lpn_id', 'ONHAND');
708 inv_mwb_query_manager.add_group_clause('moqd.revision', 'ONHAND');
709
710 -- Onhand Material Status Support
711 -- For serial controlled items, the status_id will be populated in post_query of IMVMWQMB.
712 if (inv_cache.set_org_rec(inv_mwb_globals.g_tree_organization_id)) then
713 l_default_status_id := inv_cache.org_rec.default_status_id;
714 end if;
715
716 if inv_cache.set_item_rec(inv_mwb_globals.g_tree_organization_id, inv_mwb_globals.g_tree_item_id) then
717 if (inv_cache.item_rec.serial_number_control_code in (2,5)) then
718 l_serial_controlled := 1; -- Item is serial controlled
719 end if;
720
721 if (inv_cache.item_rec.lot_control_code <> 1) then
722 l_lot_controlled := 1; -- Item is lot controlled
723 end if;
724 end if;
725
726 if (l_default_status_id is not null and l_serial_controlled = 0 and l_lot_controlled = 0) then
727 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.STATUS_ID).column_value :=
728 'moqd.status_id';
729 inv_mwb_query_manager.add_group_clause('moqd.status_id', 'ONHAND');
730 end if;
731 -- End Onhand Material Status Support
732
733 IF inv_mwb_globals.g_tree_parent_lpn_id IS NOT NULL THEN
734 inv_mwb_query_manager.add_where_clause('moqd.lpn_id = :onh_tree_plpn_id', 'ONHAND');
735 inv_mwb_query_manager.add_bind_variable('onh_tree_plpn_id', inv_mwb_globals.g_tree_parent_lpn_id);
736 ELSE
737 inv_mwb_query_manager.add_where_clause('moqd.lpn_id IS NULL', 'ONHAND');
738 END IF;
739
740 IF inv_mwb_globals.g_tree_loc_id IS NOT NULL THEN
741 inv_mwb_query_manager.add_where_clause('moqd.locator_id = :onh_tree_loc_id', 'ONHAND');
742 inv_mwb_query_manager.add_bind_variable('onh_tree_loc_id', inv_mwb_globals.g_tree_loc_id);
743 ELSE
744 inv_mwb_query_manager.add_where_clause('moqd.locator_id IS NULL', 'ONHAND');
745 END IF;
746
747 inv_mwb_query_manager.add_where_clause('moqd.organization_id = :onh_tree_organization_id' ,'ONHAND');
748 inv_mwb_query_manager.add_where_clause('moqd.subinventory_code = :onh_tree_subinventory_code', 'ONHAND');
749 inv_mwb_query_manager.add_where_clause('moqd.inventory_item_id = :onh_tree_item_id' ,'ONHAND');
750 inv_mwb_query_manager.add_where_clause('moqd.revision = :onh_tree_revision' ,'ONHAND');
751
752 inv_mwb_query_manager.add_bind_variable('onh_tree_organization_id', inv_mwb_globals.g_tree_organization_id);
753 inv_mwb_query_manager.add_bind_variable('onh_tree_subinventory_code', inv_mwb_globals.g_tree_subinventory_code);
754 inv_mwb_query_manager.add_bind_variable('onh_tree_item_id', inv_mwb_globals.g_tree_item_id);
755 inv_mwb_query_manager.add_bind_variable('onh_tree_revision', inv_mwb_globals.g_tree_rev);
756
757
758 WHEN 'LPN' THEN
759
760 INV_MWB_LOCATION_TREE.make_common_query_onhand('MOQD');
761 inv_mwb_query_manager.add_where_clause('moqd.organization_id = :onh_tree_organization_id', 'ONHAND');
762 inv_mwb_query_manager.add_where_clause('moqd.subinventory_code = :onh_tree_subinventory_code', 'ONHAND');
763 inv_mwb_query_manager.add_where_clause('moqd.locator_id = :onh_tree_loc_id', 'ONHAND');
764 inv_mwb_query_manager.add_where_clause('moqd.lpn_id = :onh_tree_plpn_id', 'ONHAND');
765
766 inv_mwb_query_manager.add_bind_variable('onh_tree_organization_id', inv_mwb_globals.g_tree_organization_id);
767 inv_mwb_query_manager.add_bind_variable('onh_tree_subinventory_code', inv_mwb_globals.g_tree_subinventory_code);
768 inv_mwb_query_manager.add_bind_variable('onh_tree_loc_id', inv_mwb_globals.g_tree_loc_id);
769 inv_mwb_query_manager.add_bind_variable('onh_tree_plpn_id', inv_mwb_globals.g_tree_parent_lpn_id);
770 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.SUBINVENTORY_CODE).column_value :=
771 'moqd.subinventory_code';
772 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LOCATOR_ID).column_value :=
773 'moqd.locator_id';
774 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LPN_ID).column_value :=
775 'moqd.lpn_id';
776 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.CG_ID).column_value :=
777 'moqd.cost_group_id';
778
779 inv_mwb_query_manager.add_group_clause('moqd.subinventory_code', 'ONHAND');
780 inv_mwb_query_manager.add_group_clause('moqd.locator_id', 'ONHAND');
781 inv_mwb_query_manager.add_group_clause('moqd.lpn_id', 'ONHAND');
782 inv_mwb_query_manager.add_group_clause('moqd.cost_group_id', 'ONHAND');
783
784 add_qf_where_onhand('ONHAND');
785
786 WHEN 'LOT' THEN
787
788 INV_MWB_LOCATION_TREE.make_common_query_onhand('MOQD');
789 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.REVISION).column_value :=
790 'moqd.revision';
791 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.SUBINVENTORY_CODE).column_value :=
792 'moqd.subinventory_code';
793 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LOCATOR_ID).column_value :=
794 'moqd.locator_id';
795 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LPN_ID).column_value :=
796 'moqd.lpn_id';
797 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.CG_ID).column_value :=
798 'moqd.cost_group_id';
799 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LOT).column_value :=
800 'moqd.lot_number';
801
802 inv_mwb_query_manager.add_group_clause('moqd.revision', 'ONHAND');
803 inv_mwb_query_manager.add_group_clause('moqd.subinventory_code', 'ONHAND');
804 inv_mwb_query_manager.add_group_clause('moqd.locator_id', 'ONHAND');
805 inv_mwb_query_manager.add_group_clause('moqd.lpn_id', 'ONHAND');
806 inv_mwb_query_manager.add_group_clause('moqd.cost_group_id', 'ONHAND');
807 inv_mwb_query_manager.add_group_clause('moqd.lot_number', 'ONHAND');
808
809 -- Onhand Material Status Support
810 -- For serial controlled items, the status_id will be populated in post_query of IMVMWQMB.
811 if (inv_cache.set_org_rec(inv_mwb_globals.g_tree_organization_id)) then
812 l_default_status_id := inv_cache.org_rec.default_status_id;
813 end if;
814
815 if inv_cache.set_item_rec(inv_mwb_globals.g_tree_organization_id, inv_mwb_globals.g_tree_item_id) then
816 if (inv_cache.item_rec.serial_number_control_code in (2,5)) then
817 l_serial_controlled := 1; -- Item is serial controlled
818 end if;
819 end if;
820
821 if (l_default_status_id is not null and l_serial_controlled = 0) then
822 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.STATUS_ID).column_value :=
823 'moqd.status_id';
824 inv_mwb_query_manager.add_group_clause('moqd.status_id', 'ONHAND');
825 end if;
826 -- End Onhand Material Status Support
827
828 IF inv_mwb_globals.g_tree_rev IS NOT NULL THEN
829 inv_mwb_query_manager.add_where_clause('moqd.revision = :onh_tree_revision' ,'ONHAND');
830 inv_mwb_query_manager.add_bind_variable('onh_tree_revision', inv_mwb_globals.g_tree_rev);
831 END IF;
832
833 IF inv_mwb_globals.g_tree_parent_lpn_id IS NOT NULL THEN
834 inv_mwb_query_manager.add_where_clause('moqd.lpn_id = :onh_tree_plpn_id', 'ONHAND');
835 inv_mwb_query_manager.add_bind_variable('onh_tree_plpn_id', inv_mwb_globals.g_tree_parent_lpn_id);
836 ELSE
837 inv_mwb_query_manager.add_where_clause('moqd.lpn_id IS NULL', 'ONHAND');
838 END IF;
839
840 IF inv_mwb_globals.g_tree_loc_id IS NOT NULL THEN
841 inv_mwb_query_manager.add_where_clause('moqd.locator_id = :onh_tree_loc_id', 'ONHAND');
842 inv_mwb_query_manager.add_bind_variable('onh_tree_loc_id', inv_mwb_globals.g_tree_loc_id);
843 ELSE
844 inv_mwb_query_manager.add_where_clause('moqd.locator_id IS NULL', 'ONHAND');
845 END IF;
846
847 inv_mwb_query_manager.add_where_clause('moqd.organization_id = :onh_tree_organization_id' ,'ONHAND');
848 inv_mwb_query_manager.add_where_clause('moqd.subinventory_code = :onh_tree_subinventory_code', 'ONHAND');
849 inv_mwb_query_manager.add_where_clause('moqd.inventory_item_id = :onh_tree_inventory_item_id' ,'ONHAND');
850 inv_mwb_query_manager.add_where_clause('moqd.lot_number = :onh_tree_lot_num' ,'ONHAND');
851
852 inv_mwb_query_manager.add_bind_variable('onh_tree_organization_id', inv_mwb_globals.g_tree_organization_id);
853 inv_mwb_query_manager.add_bind_variable('onh_tree_subinventory_code', inv_mwb_globals.g_tree_subinventory_code);
854 inv_mwb_query_manager.add_bind_variable('onh_tree_inventory_item_id', inv_mwb_globals.g_tree_item_id);
855 inv_mwb_query_manager.add_bind_variable('onh_tree_lot_num', inv_mwb_globals.g_tree_node_value);
856
857 add_qf_where_onhand('ONHAND');
858
859 WHEN 'SERIAL' THEN
860 -- Dummy code
861 INV_MWB_LOCATION_TREE.make_common_query_onhand('MOQD');
862 inv_mwb_query_manager.add_where_clause('moqd.inventory_item_id = :onh_tree_inventory_item_id' ,'ONHAND'); --Bug 7611434 click tree serial node will not show all items/qty
863 add_qf_where_onhand('ONHAND');
864 END CASE;
865
866 l_query_str := l_query_str || build_query(
867 g_onhand_select,
868 g_onhand_from,
869 g_onhand_where,
870 g_onhand_group
871 );
872
873 ELSIF (inv_mwb_globals.g_view_by = 'ITEM') THEN
874
875 initialize_onhand_query;
876 l_query_str := l_query_str || ' UNION ';
877
878 CASE inv_mwb_globals.g_tree_node_type
879
880 WHEN 'APPTREE_OBJECT_TRUNK' THEN
881
882 INV_MWB_ITEM_TREE.make_common_queries('MOQD');
883 add_qf_where_onhand('ONHAND');
884
885 WHEN 'ORG' THEN
886
887 INV_MWB_ITEM_TREE.make_common_queries('MOQD');
888
889 SELECT revision_qty_control_code,
890 lot_control_code,
891 serial_number_control_code
892 INTO l_rev_control,
893 l_lot_control,
894 l_serial_control
895 FROM mtl_system_items
896 WHERE inventory_item_id = inv_mwb_globals.g_tree_item_id
897 AND organization_id = inv_mwb_globals.g_tree_organization_id;
898
899 IF inv_mwb_globals.g_chk_onhand = 1 THEN
900 inv_mwb_query_manager.add_where_clause(
901 'moqd.inventory_item_id = :onh_tree_inventory_item_id' ,
902 'ONHAND'
903 );
904 inv_mwb_query_manager.add_where_clause(
905 'moqd.organization_id = :onh_tree_organization_id' ,
906 'ONHAND'
907 );
908 IF l_rev_control = 2 THEN
909 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.revision).column_value :=
910 'moqd.revision';
911 inv_mwb_query_manager.add_group_clause('moqd.revision', 'ONHAND');
912 END IF;
913 IF NVL(l_rev_control, 1) = 1 AND l_lot_control = 2 THEN
914 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LOT).column_value :=
915 'moqd.lot_number';
916 inv_mwb_query_manager.add_group_clause('moqd.lot_number', 'ONHAND');
917 END IF;
918
919 inv_mwb_query_manager.add_bind_variable(
920 'onh_tree_organization_id',
921 inv_mwb_globals.g_tree_organization_id
922 );
923 inv_mwb_query_manager.add_bind_variable(
924 'onh_tree_inventory_item_id',
925 inv_mwb_globals.g_tree_item_id
926 );
927 END IF; -- onhand check
928
929 add_qf_where_onhand('ONHAND');
930
931 WHEN 'ITEM' THEN
932
933 INV_MWB_ITEM_TREE.make_common_queries('MOQD');
934 inv_mwb_query_manager.add_where_clause(
935 'moqd.inventory_item_id = :onh_tree_inventory_item_id' ,
936 'ONHAND'
937 );
938 inv_mwb_query_manager.add_bind_variable(
939 'onh_tree_inventory_item_id',
940 inv_mwb_globals.g_tree_item_id
941 );
942 add_qf_where_onhand('ONHAND');
943
944 WHEN 'REV' THEN
945
946 SELECT lot_control_code,
947 serial_number_control_code
948 INTO l_lot_control,
949 l_serial_control
950 FROM mtl_system_items
951 WHERE inventory_item_id = inv_mwb_globals.g_tree_item_id
952 AND organization_id = inv_mwb_globals.g_tree_organization_id;
953
954 INV_MWB_ITEM_TREE.make_common_queries('MOQD');
955
956 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.revision).column_value :=
957 'moqd.revision';
958 inv_mwb_query_manager.add_group_clause('moqd.revision', 'ONHAND');
959 inv_mwb_query_manager.add_where_clause('moqd.inventory_item_id = :onh_tree_inventory_item_id' ,'ONHAND');
960 inv_mwb_query_manager.add_where_clause('moqd.organization_id = :onh_tree_organization_id' ,'ONHAND');
961 inv_mwb_query_manager.add_where_clause('moqd.revision = :onh_tree_revision' ,'ONHAND');
962 IF l_lot_control = 2 THEN
963 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LOT).column_value :=
964 'moqd.lot_number';
965 inv_mwb_query_manager.add_group_clause('moqd.lot_number', 'ONHAND');
966 END IF;
967
968 inv_mwb_query_manager.add_bind_variable(
969 'onh_tree_organization_id',
970 inv_mwb_globals.g_tree_organization_id
971 );
972 inv_mwb_query_manager.add_bind_variable(
973 'onh_tree_inventory_item_id',
974 inv_mwb_globals.g_tree_item_id
975 );
976 inv_mwb_query_manager.add_bind_variable(
977 'onh_tree_revision',
978 inv_mwb_globals.g_tree_rev
979 );
980 add_qf_where_onhand('ONHAND');
981
982
983 WHEN 'LOT' THEN
984
985 SELECT revision_qty_control_code,
986 serial_number_control_code
987 INTO l_rev_control,
988 l_serial_control
989 FROM mtl_system_items
990 WHERE organization_id = inv_mwb_globals.g_tree_organization_id
991 AND inventory_item_id = inv_mwb_globals.g_tree_item_id;
992
993 INV_MWB_ITEM_TREE.make_common_queries('MOQD');
994
995 IF l_rev_control = 2 THEN
996 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.revision).column_value :=
997 'moqd.revision';
998 inv_mwb_query_manager.add_where_clause('moqd.revision = :onh_tree_revision' ,'ONHAND');
999 inv_mwb_query_manager.add_group_clause('moqd.revision','ONHAND');
1000 END IF;
1001 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LOT).column_value :=
1002 'moqd.lot_number';
1003 inv_mwb_query_manager.add_group_clause('moqd.lot_number','ONHAND');
1004
1005 inv_mwb_query_manager.add_where_clause('moqd.inventory_item_id = :onh_tree_inventory_item_id' ,'ONHAND');
1006 inv_mwb_query_manager.add_where_clause('moqd.organization_id = :onh_tree_organization_id' ,'ONHAND');
1007 inv_mwb_query_manager.add_where_clause('moqd.lot_number = :onh_tree_lot_number' ,'ONHAND');
1008
1009 inv_mwb_query_manager.add_bind_variable('onh_tree_organization_id', inv_mwb_globals.g_tree_organization_id);
1010 inv_mwb_query_manager.add_bind_variable('onh_tree_inventory_item_id', inv_mwb_globals.g_tree_item_id);
1011 inv_mwb_query_manager.add_bind_variable('onh_tree_lot_number', inv_mwb_globals.g_tree_lot_number);
1012 IF l_rev_control = 2 THEN
1013 inv_mwb_query_manager.add_bind_variable('onh_tree_revision', inv_mwb_globals.g_tree_rev);
1014 END IF;
1015
1016 add_qf_where_onhand('ONHAND');
1017 WHEN 'SERIAL' THEN
1018 -- Dummy code
1019 INV_MWB_ITEM_TREE.make_common_queries('MOQD');
1020 add_qf_where_onhand('ONHAND');
1021 END CASE;
1022
1023 l_query_str := l_query_str || build_query(
1024 g_onhand_select,
1025 g_onhand_from,
1026 g_onhand_where,
1027 g_onhand_group
1028 );
1029
1030
1031
1032
1033 ELSIF (inv_mwb_globals.g_view_by = 'COST_GROUP') THEN
1034
1035 initialize_onhand_query;
1036 l_query_str := l_query_str || ' UNION ';
1037
1038 CASE inv_mwb_globals.g_tree_node_type
1039
1040 WHEN 'APPTREE_OBJECT_TRUNK' THEN
1041
1042 INV_MWB_COST_GROUP_TREE.make_common_queries('MOQD');
1043 add_qf_where_onhand('ONHAND');
1044
1045 WHEN 'COST_GROUP' THEN
1046
1047 INV_MWB_COST_GROUP_TREE.make_common_queries('MOQD');
1048
1049 inv_mwb_query_manager.add_where_clause('moqd.cost_group_id = :onh_tree_cost_group_id' ,'ONHAND');
1050 inv_mwb_query_manager.add_bind_variable('onh_tree_cost_group_id', inv_mwb_globals.g_tree_cg_id);
1051
1052 add_qf_where_onhand('ONHAND');
1053
1054 WHEN 'ORG' THEN
1055
1056 INV_MWB_COST_GROUP_TREE.make_common_queries('MOQD');
1057
1058 inv_mwb_query_manager.add_where_clause('moqd.cost_group_id = :onh_tree_cost_group_id' ,'ONHAND');
1059 inv_mwb_query_manager.add_where_clause('moqd.organization_id = :onh_tree_organization_id' ,'ONHAND');
1060 inv_mwb_query_manager.add_bind_variable('onh_tree_cost_group_id', inv_mwb_globals.g_tree_cg_id);
1061 inv_mwb_query_manager.add_bind_variable('onh_tree_organization_id', inv_mwb_globals.g_tree_organization_id);
1062
1063 add_qf_where_onhand('ONHAND');
1064
1065 WHEN 'ITEM' THEN
1066
1067 INV_MWB_COST_GROUP_TREE.make_common_queries('MOQD');
1068
1069 inv_mwb_query_manager.add_where_clause('moqd.cost_group_id = :onh_tree_cost_group_id' ,'ONHAND');
1070 inv_mwb_query_manager.add_where_clause('moqd.organization_id = :onh_tree_organization_id' ,'ONHAND');
1071 inv_mwb_query_manager.add_where_clause('moqd.inventory_item_id = :onh_tree_inventory_item_id' ,'ONHAND');
1072 inv_mwb_query_manager.add_bind_variable('onh_tree_cost_group_id', inv_mwb_globals.g_tree_cg_id);
1073 inv_mwb_query_manager.add_bind_variable('onh_tree_organization_id', inv_mwb_globals.g_tree_organization_id);
1074 inv_mwb_query_manager.add_bind_variable('onh_tree_inventory_item_id', inv_mwb_globals.g_tree_item_id);
1075
1076 add_qf_where_onhand('ONHAND');
1077
1078 WHEN 'SERIAL' THEN
1079 -- Dummy code
1080 INV_MWB_COST_GROUP_TREE.make_common_queries('MOQD');
1081 add_qf_where_onhand('ONHAND');
1082 END CASE;
1083
1084 l_query_str := l_query_str || build_query(
1085 g_onhand_select,
1086 g_onhand_from,
1087 g_onhand_where,
1088 g_onhand_group
1089 );
1090
1091
1092
1093
1094 ELSIF (inv_mwb_globals.g_view_by = 'LOT') THEN
1095
1096 initialize_onhand_query;
1097 l_query_str := l_query_str || ' UNION ';
1098
1099 CASE inv_mwb_globals.g_tree_node_type
1100
1101 WHEN 'APPTREE_OBJECT_TRUNK' THEN
1102
1103 INV_MWB_LOT_TREE.make_common_queries('MOQD');
1104 add_qf_where_onhand('ONHAND');
1105
1106 WHEN 'ORG' THEN
1107
1108 INV_MWB_LOT_TREE.make_common_queries('MOQD');
1109
1110 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LOT).column_value :=
1111 'moqd.lot_number';
1112 inv_mwb_query_manager.add_where_clause(
1113 'moqd.organization_id = :onh_tree_organization_id' ,
1114 'ONHAND'
1115 );
1116 inv_mwb_query_manager.add_group_clause(
1117 'moqd.lot_number' ,
1118 'ONHAND'
1119 );
1120 inv_mwb_query_manager.add_bind_variable(
1121 'onh_tree_organization_id',
1122 inv_mwb_globals.g_tree_organization_id
1123 );
1124
1125 add_qf_where_onhand('ONHAND');
1126
1127 WHEN 'ITEM' THEN
1128
1129 SELECT revision_qty_control_code,
1130 serial_number_control_code
1131 INTO l_rev_control,
1132 l_serial_control
1133 FROM mtl_system_items
1134 WHERE organization_id = inv_mwb_globals.g_tree_organization_id
1135 AND inventory_item_id = inv_mwb_globals.g_tree_item_id;
1136
1137 INV_MWB_LOT_TREE.make_common_queries('MOQD');
1138
1139 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LOT).column_value :=
1140 'moqd.lot_number';
1141 IF l_rev_control = 2 THEN
1142 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.revision).column_value :=
1143 'moqd.revision';
1144 inv_mwb_query_manager.add_group_clause(
1145 'moqd.revision' ,
1146 'ONHAND'
1147 );
1148 END IF;
1149 inv_mwb_query_manager.add_where_clause(
1150 'moqd.organization_id = :onh_tree_organization_id' ,
1151 'ONHAND'
1152 );
1153 inv_mwb_query_manager.add_where_clause(
1154 'moqd.lot_number = :onh_tree_lot_number' ,
1155 'ONHAND'
1156 );
1157 inv_mwb_query_manager.add_where_clause(
1158 'moqd.inventory_item_id = :onh_tree_inventory_item_id' ,
1159 'ONHAND'
1160 );
1161 inv_mwb_query_manager.add_group_clause(
1162 'moqd.lot_number' ,
1163 'ONHAND'
1164 );
1165 inv_mwb_query_manager.add_bind_variable(
1166 'onh_tree_organization_id',
1167 inv_mwb_globals.g_tree_organization_id
1168 );
1169 inv_mwb_query_manager.add_bind_variable(
1170 'onh_tree_lot_number',
1171 inv_mwb_globals.g_tree_lot_number
1172 );
1173 inv_mwb_query_manager.add_bind_variable(
1174 'onh_tree_inventory_item_id',
1175 inv_mwb_globals.g_tree_item_id
1176 );
1177
1178 add_qf_where_onhand('ONHAND');
1179
1180 WHEN 'REV' THEN
1181
1182 null;
1183
1184 WHEN 'LOT' THEN
1185
1186 INV_MWB_LOT_TREE.make_common_queries('MOQD');
1187
1188 inv_mwb_query_manager.g_onhand_select(inv_mwb_query_manager.LOT).column_value :=
1189 'moqd.lot_number';
1190 inv_mwb_query_manager.add_where_clause(
1191 'moqd.organization_id = :onh_tree_organization_id' ,
1192 'ONHAND'
1193 );
1194 inv_mwb_query_manager.add_where_clause(
1195 'moqd.lot_number = :onh_tree_lot_number' ,
1196 'ONHAND'
1197 );
1198 inv_mwb_query_manager.add_group_clause(
1199 'moqd.lot_number' ,
1200 'ONHAND'
1201 );
1202 inv_mwb_query_manager.add_bind_variable(
1203 'onh_tree_organization_id',
1204 inv_mwb_globals.g_tree_organization_id
1205 );
1206 inv_mwb_query_manager.add_bind_variable(
1207 'onh_tree_lot_number',
1208 inv_mwb_globals.g_tree_lot_number
1209 );
1210
1211 add_qf_where_onhand('ONHAND');
1212
1213 WHEN 'SERIAL' THEN
1214 -- Dummy code
1215 INV_MWB_LOT_TREE.make_common_queries('MOQD');
1216 add_qf_where_onhand('ONHAND');
1217 END CASE;
1218
1219 l_query_str := l_query_str || build_query(
1220 g_onhand_select,
1221 g_onhand_from,
1222 g_onhand_where,
1223 g_onhand_group
1224 );
1225
1226
1227 END IF;
1228 END IF; -- Status ID not null
1229 --End bug 6060233
1230
1231
1232
1233 IF inv_mwb_globals.g_is_nested_lpn = 'YES'
1234 AND inv_mwb_globals.g_tree_node_type = 'LPN' THEN
1235
1236 l_query_str := l_query_str || ' UNION ';
1237 l_query_str := l_query_str || build_query(
1238 g_onhand_1_select,
1239 g_onhand_1_from,
1240 g_onhand_1_where,
1241 g_onhand_1_group
1242 );
1243 END IF;
1244
1245
1246 ELSIF ( NVL(inv_mwb_globals.g_chk_onhand, 0) = 0 AND
1247 NVL(inv_mwb_globals.g_chk_inbound, 0) = 1 AND
1248 NVL(inv_mwb_globals.g_chk_receiving, 0) = 0 ) OR
1249 NVL(inv_mwb_globals.g_tree_mat_loc_id, 0) = 3 THEN
1250
1251 l_query_str := build_insert(g_inbound_select);
1252 l_query_str := l_query_str || build_query(
1253 g_inbound_select,
1254 g_inbound_from,
1255 g_inbound_where,
1256 g_inbound_group
1257 );
1258
1259 IF inv_mwb_globals.g_is_nested_lpn = 'YES'
1260 AND inv_mwb_globals.g_tree_node_type = 'LPN' THEN
1261
1262 l_query_str := l_query_str || ' UNION ';
1263 l_query_str := l_query_str || build_query(
1264 g_inbound_1_select,
1265 g_inbound_1_from,
1266 g_inbound_1_where,
1267 g_inbound_1_group
1268 );
1269 END IF;
1270
1271
1272 ELSIF ( NVL(inv_mwb_globals.g_chk_onhand, 0) = 0 AND
1273 NVL(inv_mwb_globals.g_chk_inbound, 0) = 0 AND
1274 NVL(inv_mwb_globals.g_chk_receiving, 0) = 1 ) OR
1275 NVL(inv_mwb_globals.g_tree_mat_loc_id, 0) = 2 THEN
1276
1277 l_query_str := build_insert(g_receiving_select);
1278 l_query_str := l_query_str || build_query(
1279 g_receiving_select,
1280 g_receiving_from,
1281 g_receiving_where,
1282 g_receiving_group
1283 );
1284
1285 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, inv_mwb_globals.g_is_nested_lpn || ' -- '||inv_mwb_globals.g_tree_node_type);
1286 IF inv_mwb_globals.g_is_nested_lpn = 'YES'
1287 AND inv_mwb_globals.g_tree_node_type = 'LPN' THEN
1288
1289 l_query_str := l_query_str || ' UNION ';
1290 l_query_str := l_query_str || build_query(
1291 g_receiving_1_select,
1292 g_receiving_1_from,
1293 g_receiving_1_where,
1294 g_receiving_1_group
1295 );
1296 END IF;
1297
1298
1299 ELSIF inv_mwb_globals.g_tree_mat_loc_id IS NULL THEN
1300
1301 l_query_str := build_insert(g_union_select);
1302 l_query_str := l_query_str || build_query(
1303 g_union_select,
1304 g_null_clause,
1305 g_null_clause,
1306 g_null_clause
1307 );
1308 l_query_str := l_query_str||' FROM ( ';
1309
1310 IF NVL(inv_mwb_globals.g_chk_onhand, 0) = 1 THEN
1311
1312 l_query_str := l_query_str || build_query(
1313 g_onhand_select,
1314 g_onhand_from,
1315 g_onhand_where,
1316 g_onhand_group
1317 );
1318 l_query_str := l_query_str ||' UNION ';
1319
1320 END IF;
1321
1322 IF NVL(inv_mwb_globals.g_chk_inbound, 0) = 1 THEN
1323
1324 l_query_str := l_query_str || build_query(
1325 g_inbound_select,
1326 g_inbound_from,
1327 g_inbound_where,
1328 g_inbound_group
1329 );
1330
1331 IF NVL(inv_mwb_globals.g_chk_receiving, 0) = 1 THEN
1332 l_query_str := l_query_str ||' UNION ';
1333 END IF;
1334
1335 END IF;
1336
1337 IF NVL(inv_mwb_globals.g_chk_receiving, 0) = 1 THEN
1338
1339 l_query_str := l_query_str || build_query(
1340 g_receiving_select,
1341 g_receiving_from,
1342 g_receiving_where,
1343 g_receiving_group
1344 );
1345
1346 END IF;
1347
1348 l_query_str := l_query_str||' ) ';
1349 l_query_str := l_query_str||build_query(
1350 g_null_select,
1351 g_null_clause,
1352 g_null_clause,
1353 g_union_group
1354 );
1355
1356 END IF;
1357 RETURN l_query_str;
1358 END build_query;
1359
1360 PROCEDURE post_query IS
1361
1362
1363 CURSOR C1 IS
1364 SELECT ROWID
1365 ,MATURITY_DATE
1366 ,HOLD_DATE
1367 ,SUPPLIER_LOT
1368 ,PARENT_LOT
1369 ,DOCUMENT_TYPE
1370 ,DOCUMENT_TYPE_ID
1371 ,DOCUMENT_NUMBER
1372 ,DOCUMENT_LINE_NUMBER
1373 ,RELEASE_NUMBER
1374 ,PO_RELEASE_ID
1375 ,RELEASE_LINE_NUMBER
1376 ,SHIPMENT_NUMBER
1377 ,SHIPMENT_HEADER_ID_INTERORG
1378 ,ASN
1379 ,SHIPMENT_HEADER_ID_ASN
1380 ,TRADING_PARTNER
1381 ,VENDOR_ID
1382 ,TRADING_PARTNER_SITE
1383 ,VENDOR_SITE_ID
1384 ,FROM_ORG
1385 ,FROM_ORG_ID
1386 ,TO_ORG
1387 ,TO_ORG_ID
1388 ,EXPECTED_RECEIPT_DATE
1389 ,SHIPPED_DATE
1390 ,OWNING_ORG
1391 ,OWNING_ORG_ID
1392 ,REQ_HEADER_ID
1393 ,OE_HEADER_ID
1394 ,PO_HEADER_ID
1395 ,ORIGINATION_DATE
1396 ,ACTION_CODE
1397 ,ACTION_DATE
1398 ,RETEST_DATE
1399 ,LOT
1400 ,SERIAL
1401 ,UNIT_NUMBER
1402 ,LOT_EXPIRY_DATE
1403 ,ORIGINATION_TYPE
1404 ,ORGANIZATION_CODE
1405 ,ORG_ID
1406 ,ITEM
1407 ,ITEM_DESCRIPTION
1408 ,ITEM_ID
1409 ,REVISION
1410 ,PRIMARY_UOM_CODE
1411 ,ONHAND
1412 ,RECEIVING
1413 ,INBOUND
1414 ,UNPACKED
1415 ,PACKED
1416 ,SECONDARY_UOM_CODE
1417 ,SECONDARY_ONHAND
1418 ,SECONDARY_RECEIVING
1419 ,SECONDARY_INBOUND
1420 ,SECONDARY_UNPACKED
1421 ,SECONDARY_PACKED
1422 ,SUBINVENTORY_CODE
1423 ,LOCATOR
1424 ,LOCATOR_ID
1425 ,LPN
1426 ,LPN_ID
1427 ,COST_GROUP
1428 ,CG_ID
1429 ,GRADE_CODE
1430 ,LOADED
1431 ,PLANNING_PARTY
1432 ,PLANNING_PARTY_ID
1433 ,OWNING_PARTY
1434 ,OWNING_PARTY_ID
1435 ,OWNING_ORGANIZATION_ID
1436 ,PLANNING_ORGANIZATION_ID
1437 ,PLANNING_TP_TYPE
1438 ,OWNING_TP_TYPE
1439 ,PROJECT_ID
1440 ,TASK_ID
1441 ,STATUS_ID -- Onhand Material Status Support
1442 FROM MTL_MWB_GTMP;
1443
1444 TYPE lookup_meaning_table IS TABLE OF mfg_lookups.meaning%TYPE
1445 INDEX BY BINARY_INTEGER;
1446
1447 document_type_meaning lookup_meaning_table;
1448 lpn_context_meaning lookup_meaning_table;
1449 l_procedure_name VARCHAR2(30);
1450 l_mtl_location VARCHAR2(100);
1451 l_shipment_num VARCHAR2(30);
1452 l_shipped_date DATE;
1453 l_from_org VARCHAR2(30);
1454 l_to_org VARCHAR2(30);
1455 l_from_org_code VARCHAR2(30); -- Bug 11716231
1456 l_to_org_code VARCHAR2(30); -- Bug 11716231
1457 l_lpn_context_id NUMBER;
1458 l_vendor_id NUMBER;
1459 l_vendor_site_id NUMBER;
1460 l_task_id NUMBER;
1461 l_project_id NUMBER;
1462 l_origination_type NUMBER;
1463 l_tracking_qty_ind VARCHAR2(30) ;
1464 -- Bug 6993717 : Increased the variable length to 1000
1465 l_item_name VARCHAR2(1000); -- Bug 6350236
1466 l_status_name VARCHAR2(80); -- Onhand Material Status Support
1467 l_serial_controlled NUMBER := 0; -- Onhand Material Status Support
1468 l_default_status_id NUMBER; -- Onhand Material Status Support
1469
1470 --Bug 6834805, cached variables
1471 g_org_id NUMBER;
1472 g_org VARCHAR2(3);
1473 g_own_org_id NUMBER;
1474 g_sub VARCHAR2(10);
1475 g_cg_id NUMBER;
1476 g_cg VARCHAR2(100);
1477 g_item_id NUMBER;
1478 g_loc_id NUMBER;
1479 g_loc VARCHAR2(200);
1480 -- Bug 11768098 : Increased the variable length to 80
1481 g_lot VARCHAR2(80);
1482 g_org_id_trak_qty NUMBER;
1483 g_item_id_trak_qty NUMBER;
1484
1485 --bug12950736 on material workbench to display the loaded qty
1486 packed_loaded_qty NUMBER;
1487 unpacked_loaded_qty NUMBER;
1488
1489 --Bug 13606923
1490 l_serial_loaded NUMBER := 0;
1491
1492 BEGIN
1493 l_procedure_name := 'POST_QUERY';
1494 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'Entered');
1495
1496 IF inv_mwb_globals.g_tree_mat_loc_id = 3 THEN
1497 SELECT meaning BULK COLLECT
1498 INTO document_type_meaning
1499 FROM mfg_lookups
1500 WHERE lookup_type = 'MTL_DOCUMENT_TYPES'
1501 ORDER BY lookup_code;
1502 END IF;
1503
1504
1505 SELECT meaning BULK COLLECT
1506 INTO lpn_context_meaning
1507 FROM mfg_lookups
1508 WHERE lookup_type = 'WMS_LPN_CONTEXT';
1509
1510 FOR rec IN C1 LOOP
1511
1512 ---------------- Update organization code ----------------------------
1513
1514 IF inv_mwb_globals.g_organization_code IS NOT NULL
1515 AND inv_mwb_globals.g_organization_id IS NOT NULL THEN
1516 --Bug 6834805
1517 if (nvl(g_org,'@@@@') <> inv_mwb_globals.g_organization_code) then
1518 UPDATE MTL_MWB_GTMP
1519 SET organization_code = inv_mwb_globals.g_organization_code;
1520
1521 g_org := inv_mwb_globals.g_organization_code;
1522 end if;
1523 ELSE
1524 IF rec.org_id IS NOT NULL THEN
1525 --Bug 6834805
1526 if (nvl(g_org_id,-9999) <> rec.org_id) then
1527 SELECT organization_code
1528 INTO l_to_org
1529 FROM mtl_parameters
1530 WHERE organization_id = rec.org_id;
1531
1532 UPDATE MTL_MWB_GTMP
1533 SET organization_code = l_to_org
1534 , to_org = l_to_org
1535 WHERE org_id = rec.org_id;
1536
1537 --g_org_id := rec.org_id;
1538 end if;
1539 END IF;
1540 END IF;
1541
1542 IF inv_mwb_globals.g_subinventory_code IS NOT NULL THEN
1543 --Bug 6834805
1544 if (nvl(g_sub,'@@@@') <> inv_mwb_globals.g_subinventory_code) then
1545 UPDATE MTL_MWB_GTMP
1546 SET SUBINVENTORY_CODE = inv_mwb_globals.g_subinventory_code;
1547
1548 g_sub := inv_mwb_globals.g_subinventory_code;
1549 end if;
1550 END IF;
1551
1552 IF rec.owning_org_id IS NOT NULL THEN
1553 --Bug 6834805
1554 if (nvl(g_own_org_id,-9999) <> rec.owning_org_id) then
1555 UPDATE MTL_MWB_GTMP
1556 SET owning_org = (SELECT organization_code
1557 FROM mtl_parameters
1558 WHERE organization_id = rec.owning_org_id)
1559 WHERE owning_org_id = rec.owning_org_id;
1560
1561 g_own_org_id := rec.owning_org_id;
1562 end if;
1563 END IF;
1564
1565 /* Bug 11716231. Updating from org id and to org id */
1566 IF rec.from_org_id IS NOT NULL THEN
1567 --from org
1568 SELECT organization_code
1569 INTO l_from_org_code
1570 FROM mtl_parameters
1571 WHERE organization_id = rec.from_org_id;
1572
1573 UPDATE MTL_MWB_GTMP
1574 SET from_org = l_from_org_code
1575 WHERE from_org_id = rec.from_org_id;
1576 END IF;
1577 --to org
1578 IF rec.to_org_id IS NOT NULL THEN
1579 SELECT organization_code
1580 INTO l_to_org_code
1581 FROM mtl_parameters
1582 WHERE organization_id = rec.to_org_id;
1583
1584 UPDATE MTL_MWB_GTMP
1585 SET to_org = l_to_org_code
1586 WHERE to_org_id = rec.to_org_id;
1587 END IF;
1588 /* End of Bug 11716231. */
1589
1590 ----------------- Update LPN ------------------------------------------
1591
1592 IF rec.lpn_id IS NOT NULL THEN
1593 BEGIN
1594 UPDATE MTL_MWB_GTMP
1595 SET lpn = (SELECT license_plate_number
1596 FROM wms_license_plate_numbers
1597 WHERE lpn_id = rec.lpn_id)
1598 WHERE lpn_id = rec.lpn_id;
1599
1600 UPDATE MTL_MWB_GTMP
1601 SET loaded = (SELECT 1
1602 FROM mtl_material_transactions_temp mmtt, wms_dispatched_tasks wdt
1603 WHERE wdt.status = 4
1604 AND wdt.task_type <> 2
1605 AND wdt.transaction_temp_id = mmtt.transaction_temp_id
1606 AND (mmtt.content_lpn_id = rec.lpn_id
1607 OR mmtt.lpn_id = rec.lpn_id)
1608 AND rownum<2) -- Added for bug#13575081
1609 WHERE lpn_id = rec.lpn_id;
1610
1611 EXCEPTION
1612 WHEN TOO_MANY_ROWS THEN
1613 UPDATE MTL_MWB_GTMP
1614 SET LOADED = 1
1615 WHERE lpn_id = rec.lpn_id;
1616 END;
1617 END IF;
1618
1619 --------------- Update Cost Group -------------------------------------
1620
1621 IF inv_mwb_globals.g_cost_group IS NOT NULL
1622 AND inv_mwb_globals.g_cost_group_id IS NOT NULL THEN
1623 --Bug 6834805
1624 if (nvl(g_cg,'@@@@') <> inv_mwb_globals.g_cost_group) then
1625 UPDATE MTL_MWB_GTMP
1626 SET cost_group = inv_mwb_globals.g_cost_group;
1627
1628 g_cg := inv_mwb_globals.g_cost_group;
1629 end if;
1630 ELSE
1631 IF rec.cg_id IS NOT NULL THEN
1632 --Bug 6834805
1633 if (nvl(g_cg_id,-9999) <> rec.cg_id) then
1634 UPDATE MTL_MWB_GTMP
1635 SET cost_group = (SELECT distinct cost_group
1636 FROM cst_cost_groups
1637 WHERE cost_group_id = rec.cg_id)
1638 WHERE cg_id = rec.cg_id;
1639
1640 g_cg_id := rec.cg_id;
1641 end if;
1642 END IF;
1643 END IF;
1644
1645 ----------------- Update Item ------------------------------------------
1646
1647 IF rec.item_id IS NOT NULL THEN
1648 l_item_name := inv_mwb_tree1.GET_ITEM(rec.item_id, rec.org_id); -- Bug 6350236
1649 --Bug 6834805
1650 -- Fix for Bug#8687440. Added secondary uom code in following update statement.
1651 if (nvl(g_item_id,-9999) <> rec.item_id
1652 or nvl(g_org_id,-9999) <> rec.org_id) then --Bug 12633111
1653
1654 UPDATE MTL_MWB_GTMP
1655 SET (
1656 ITEM
1657 , ITEM_DESCRIPTION
1658 , PRIMARY_UOM_CODE
1659 , SECONDARY_UOM_CODE
1660 ) = (
1661 SELECT
1662 l_item_name -- Bug 6350236
1663 , DESCRIPTION
1664 , PRIMARY_UOM_CODE
1665 , SECONDARY_UOM_CODE
1666 FROM mtl_system_items_vl --Bug 7691371
1667 WHERE inventory_item_id = rec.item_id
1668 AND organization_id = rec.org_id)
1669 WHERE item_id = rec.item_id
1670 AND org_id = rec.org_id; --Bug 12633111
1671
1672 --g_item_id := rec.item_id;
1673 end if;
1674 END IF;
1675
1676 ---------------- Update Locator ---------------------------------------
1677
1678 IF inv_mwb_globals.g_locator_name IS NOT NULL
1679 AND inv_mwb_globals.g_locator_id IS NOT NULL THEN
1680 --Bug 6834805
1681 if (nvl(g_loc, '@@@@') <> inv_mwb_globals.g_locator_name) then
1682 UPDATE MTL_MWB_GTMP
1683 SET locator = substr(inv_mwb_globals.g_locator_name, 1, 100),--Bug6595049: truncating the locator to 100 chars
1684 locator_id = inv_mwb_globals.g_locator_id; -- Bug 7408480
1685
1686 g_loc := inv_mwb_globals.g_locator_name;
1687 end if;
1688 ELSE
1689 IF rec.locator_id IS NOT NULL THEN
1690 --Bug 6834805
1691 if (nvl(g_loc_id, -9999) <> rec.locator_id) then
1692
1693 IF inv_mwb_globals.g_is_projects_enabled_org = 0 THEN
1694 UPDATE MTL_MWB_GTMP
1695 SET locator = substr((SELECT concatenated_segments
1696 FROM mtl_item_locations_kfv
1697 WHERE inventory_location_id = rec.locator_id and ORGANIZATION_ID = rec.org_id), 1, 100) -- Bug 6595049: truncating the locator to 100 chars. + Bug 15847437: Add ORGANIZATION_ID into where clause
1698 WHERE locator_id = rec.locator_id;
1699 ELSE
1700 l_project_id := NULL;
1701 l_task_id := NULL;
1702 /* Bug # 9288054 : Added extra condition in where clause "locator IS NULL" in below update
1703 to improve the performance. We should be upldating only those records
1704 which were not already updated for locator field. FP of bug 9209775 */
1705
1706 UPDATE MTL_MWB_GTMP
1707 SET LOCATOR = substr(INV_PROJECT.GET_LOCATOR(REC.LOCATOR_ID, REC.ORG_ID), 1, 100) -- Bug 6595049: truncating the locator to 100 chars
1708 WHERE locator IS NULL AND
1709 locator_id = rec.locator_id;
1710
1711 SELECT project_id
1712 , task_id
1713 INTO l_project_id
1714 , l_task_id
1715 FROM mtl_item_locations_kfv
1716 WHERE inventory_location_id = rec.locator_id
1717 AND organization_id = rec.org_id;
1718
1719 --BUG 8266074--
1720 --Earlier the project and task id's were never updated in the table MTL_MWB_GTMP
1721 --where as the project number was updated before.
1722 --BUG 8266074--
1723
1724 --START BUG 8266074--
1725 /* Added project_name in following update statements for bug 13465952 */
1726 IF inv_mwb_globals.g_project_number IS NOT NULL THEN
1727 UPDATE MTL_MWB_GTMP
1728 SET project_number = inv_mwb_globals.g_project_number
1729 , (project_id, project_name)= (SELECT project_id, project_name
1730 FROM pjm_projects_all_ou_v --Bug 14751814,also display closed project
1731 WHERE project_number = inv_mwb_globals.g_project_number);
1732
1733 ELSE
1734 IF l_project_id IS NOT NULL THEN
1735 UPDATE MTL_MWB_GTMP
1736 SET (project_number, project_name) = (SELECT project_number, project_name
1737 FROM pjm_projects_all_ou_v --Bug 14751814,also display closed project
1738 WHERE project_id = l_project_id) ,
1739 project_id = l_project_id
1740 WHERE locator_id = rec.locator_id;
1741 END IF;
1742 END IF;
1743
1744 IF inv_mwb_globals.g_task_number IS NOT NULL THEN
1745
1746 UPDATE MTL_MWB_GTMP
1747 SET task_number = inv_mwb_globals.g_task_number,
1748 task_id = (SELECT task_id
1749 FROM pjm_tasks_v
1750 WHERE task_number = inv_mwb_globals.g_task_number
1751 AND project_number = inv_mwb_globals.g_project_number);
1752 ELSE
1753 -- BUG 8266074 Replacing rec.task_id by l_task_id --
1754 IF l_task_id IS NOT NULL THEN
1755 UPDATE MTL_MWB_GTMP
1756 SET task_number = (SELECT task_number
1757 FROM pjm_tasks_v
1758 WHERE task_id = l_task_id) ,
1759 task_id = l_task_id
1760 WHERE locator_id = rec.locator_id;
1761 --END BUG 8266074--
1762 END IF;
1763 END IF;
1764 END IF;
1765 g_loc_id := rec.locator_id;
1766 end if;
1767 END IF;
1768 END IF;
1769 ----------------------------------------------------------------------
1770
1771 IF rec.po_header_id IS NOT NULL THEN
1772
1773 IF rec.shipment_header_id_asn IS NOT NULL THEN -- ASN
1774
1775 l_mtl_location := document_type_meaning(4);
1776 SELECT shipment_num, shipped_date
1777 INTO l_shipment_num, l_shipped_date
1778 FROM rcv_shipment_headers rsh
1779 WHERE rsh.shipment_header_id = rec.shipment_header_id_asn;
1780
1781 UPDATE mtl_mwb_gtmp
1782 SET document_number = l_shipment_num
1783 , shipped_date = l_shipped_date
1784 , document_type = l_mtl_location
1785 , document_type_id = 4
1786 WHERE shipment_header_id_asn = rec.shipment_header_id_asn;
1787
1788 IF rec.document_line_number IS NOT NULL THEN
1789 UPDATE mtl_mwb_gtmp
1790 SET document_line_number = (SELECT line_num
1791 FROM rcv_shipment_lines rsl
1792 WHERE rsl.shipment_line_id = rec.document_line_number)
1793 WHERE shipment_header_id_asn = rec.shipment_header_id_asn
1794 AND document_line_number = rec.document_line_number;
1795 END IF;
1796 ELSE -- PO
1797 l_mtl_location := document_type_meaning(1);
1798 UPDATE mtl_mwb_gtmp
1799 SET document_number = (SELECT segment1
1800 FROM po_headers_trx_v pha -- CLM project, bug 9403291
1801 WHERE pha.po_header_id = rec.po_header_id)
1802 , document_type = l_mtl_location
1803 , document_type_id = 1
1804 WHERE po_header_id = rec.po_header_id;
1805
1806 IF rec.document_line_number IS NOT NULL THEN
1807 UPDATE mtl_mwb_gtmp
1808 SET document_line_number = (SELECT to_char(line_num)
1809 FROM po_lines_trx_v pla -- CLM project, bug 9403291
1810 WHERE pla.po_line_id = rec.document_line_number)
1811 WHERE po_header_id = rec.po_header_id
1812 AND document_line_number = rec.document_line_number;
1813 END IF;
1814 END IF;
1815 ELSIF rec.req_header_id IS NOT NULL THEN -- Req
1816 l_mtl_location := document_type_meaning(2);
1817 UPDATE mtl_mwb_gtmp
1818 SET document_number = (SELECT segment1
1819 FROM po_req_headers_trx_v prha -- CLM project, bug 9403291
1820 WHERE prha.requisition_header_id = rec.req_header_id)
1821 , document_type = l_mtl_location
1822 , document_type_id = 2
1823 WHERE req_header_id = rec.req_header_id;
1824
1825 IF rec.document_line_number IS NOT NULL THEN
1826 UPDATE mtl_mwb_gtmp
1827 SET document_line_number = (SELECT line_num
1828 FROM po_req_lines_trx_v prla -- CLM project, bug 9403291
1829 WHERE prla.requisition_line_id = rec.document_line_number)
1830 WHERE req_header_id = rec.req_header_id
1831 AND document_line_number = rec.document_line_number;
1832 END IF;
1833 ELSIF rec.shipment_header_id_asn IS NOT NULL THEN -- Interorg
1834 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, rec.shipment_header_id_asn);
1835 l_mtl_location := document_type_meaning(3);
1836 UPDATE mtl_mwb_gtmp
1837 SET document_number = (SELECT shipment_num
1838 FROM rcv_shipment_headers rsh
1839 WHERE rsh.shipment_header_id = rec.shipment_header_id_asn)
1840 , document_type = l_mtl_location
1841 , document_type_id = 3
1842 WHERE shipment_header_id_asn = rec.shipment_header_id_asn;
1843
1844 IF rec.document_line_number IS NOT NULL THEN
1845 UPDATE mtl_mwb_gtmp
1846 SET document_line_number = (SELECT line_num
1847 FROM rcv_shipment_lines rsl
1848 WHERE rsl.shipment_line_id = rec.document_line_number)
1849 WHERE shipment_header_id_asn = rec.shipment_header_id_asn
1850 AND document_line_number = rec.document_line_number;
1851 END IF;
1852 END IF;
1853
1854 --------------- Update Trading Partner and Trading Partner Site ----------------
1855
1856 l_vendor_id := rec.vendor_id;
1857 l_vendor_site_id := rec.vendor_site_id;
1858
1859 IF rec.po_header_id IS NOT NULL THEN
1860 SELECT vendor_id
1861 , vendor_site_id
1862 INTO l_vendor_id
1863 , l_vendor_site_id
1864 FROM po_headers_all
1865 WHERE po_header_id = rec.po_header_id;
1866
1867 UPDATE mtl_mwb_gtmp
1868 SET vendor_id = l_vendor_id
1869 , vendor_site_id = l_vendor_site_id
1870 WHERE po_header_id = rec.po_header_id;
1871 END IF;
1872
1873 IF rec.vendor_id IS NOT NULL
1874 OR l_vendor_id IS NOT NULL THEN
1875 UPDATE mtl_mwb_gtmp
1876 SET trading_partner = (SELECT vendor_name
1877 FROM po_vendors
1878 WHERE vendor_id = l_vendor_id)
1879 WHERE vendor_id = l_vendor_id;
1880
1881 IF rec.vendor_site_id IS NOT NULL
1882 OR l_vendor_site_id IS NOT NULL THEN
1883 UPDATE mtl_mwb_gtmp
1884 SET trading_partner_site = (SELECT vendor_site_code
1885 FROM po_vendor_sites_all
1886 WHERE vendor_site_id = l_vendor_site_id)
1887 WHERE vendor_id = l_vendor_id
1888 AND vendor_site_id = l_vendor_site_id;
1889 END IF;
1890 END IF;
1891
1892
1893
1894 -------------------- Update LPN context ----------------------------------------
1895
1896 IF rec.lpn_id IS NOT NULL THEN
1897
1898 /* IF (inv_mwb_globals.g_chk_receiving = 1 AND
1899 inv_mwb_globals.g_chk_inbound = 0 AND
1900 inv_mwb_globals.g_chk_onhand = 0
1901 ) OR inv_mwb_globals.g_tree_mat_loc_id = 2 THEN
1902
1903 UPDATE mtl_mwb_gtmp
1904 SET LPN_CONTEXT = lpn_context_meaning(3)
1905 WHERE lpn_id = rec.lpn_id;
1906 ELSE
1907 */
1908
1909 SELECT lpn_context
1910 INTO l_lpn_context_id
1911 FROM wms_license_plate_numbers
1912 WHERE lpn_id = rec.lpn_id;
1913
1914 UPDATE mtl_mwb_gtmp
1915 SET LPN_CONTEXT = (SELECT meaning
1916 FROM mfg_lookups
1917 WHERE lookup_type = 'WMS_LPN_CONTEXT'
1918 AND lookup_code = l_lpn_context_id)
1919 WHERE lpn_id = rec.lpn_id;
1920 END IF;
1921 -- END IF;
1922
1923 IF inv_mwb_globals.g_tree_doc_type_id = 4 THEN
1924 UPDATE mtl_mwb_gtmp
1925 SET document_type = document_type_meaning(4)
1926 , document_type_id = 4
1927 WHERE shipment_header_id_asn = rec.shipment_header_id_asn;
1928 END IF;
1929
1930 IF rec.planning_tp_type = 1
1931 AND rec.planning_organization_id IS NOT NULL THEN
1932 IF inv_mwb_globals.g_planning_party IS NOT NULL THEN
1933 UPDATE mtl_mwb_gtmp
1934 SET planning_party = inv_mwb_globals.g_planning_party;
1935 ELSE
1936 UPDATE mtl_mwb_gtmp
1937 SET planning_party = (SELECT vendor_name || '-' || vendor_site_code
1938 FROM po_vendor_sites_all ps, po_vendors pv
1939 WHERE pv.vendor_id = ps.vendor_id
1940 AND ps.vendor_site_id = rec.planning_organization_id)
1941 WHERE planning_organization_id = rec.planning_organization_id;
1942 END IF;
1943 END IF;
1944
1945 IF rec.owning_tp_type = 1
1946 AND rec.owning_organization_id IS NOT NULL THEN
1947
1948 IF inv_mwb_globals.g_owning_party IS NOT NULL THEN
1949 UPDATE mtl_mwb_gtmp
1950 SET owning_party = inv_mwb_globals.g_owning_party;
1951 ELSE
1952 UPDATE mtl_mwb_gtmp
1953 SET owning_party = (SELECT vendor_name || '-' || vendor_site_code
1954 FROM po_vendor_sites_all ps, po_vendors pv
1955 WHERE pv.vendor_id = ps.vendor_id
1956 AND ps.vendor_site_id = rec.owning_organization_id)
1957 WHERE owning_organization_id = rec.owning_organization_id;
1958 END IF;
1959 END IF;
1960
1961 --------------------------------------------------------------------------------
1962 -- Update lot information ------------------------------------------------------
1963
1964 IF rec.lot IS NOT NULL THEN
1965
1966 --Bug 6834805
1967 if ( (nvl(g_lot, '@@@@') <> rec.lot)
1968 or (nvl(g_item_id,-9999) <> nvl(rec.item_id, -9999))
1969 or (nvl(g_org_id,-9999) <> nvl(rec.org_id, -9999))
1970 ) then
1971 /* Bug 8396954. adding outerjoin condition for mfg_lookups table to get the records
1972 even if the origination_type in mtl_lot_numbers is null */
1973 UPDATE MTL_MWB_GTMP
1974 SET (
1975 ORIGINATION_TYPE
1976 , ORIGINATION_DATE
1977 , ACTION_DATE
1978 , ACTION_CODE
1979 , RETEST_DATE
1980 , PARENT_LOT
1981 , MATURITY_DATE
1982 , HOLD_DATE
1983 , SUPPLIER_LOT
1984 , LOT_EXPIRY_DATE
1985 ) = (
1986 SELECT
1987 mfg.meaning /* Bug 5417041 */
1988 , mln.origination_date
1989 , mln.expiration_action_date
1990 , mln.expiration_action_code
1991 , mln.retest_date
1992 , mln.parent_lot_number
1993 , mln.maturity_date
1994 , mln.hold_date
1995 , mln.supplier_lot_number
1996 , mln.expiration_date
1997 FROM
1998 mtl_lot_numbers mln
1999 , mfg_lookups mfg
2000 WHERE lot_number = rec.lot
2001 AND mln.inventory_item_id = rec.item_id
2002 AND mln.organization_id = rec.org_id
2003 AND mfg.lookup_type(+) = 'MTL_LOT_ORIGINATION_TYPE'
2004 AND mfg.lookup_code(+) = mln.origination_type)
2005 WHERE item_id = rec.item_id
2006 AND lot = rec.lot;
2007 /* End of Bug 8396954 */
2008
2009 -------------------------------------------------------
2010 -- Grade code and lot expiry information --------------
2011 UPDATE MTL_MWB_GTMP
2012 SET (
2013 GRADE_CODE
2014 , LOT_EXPIRY_DATE
2015 ) = (
2016 SELECT grade_code
2017 , expiration_date
2018 FROM mtl_lot_numbers
2019 WHERE lot_number = rec.lot
2020 AND inventory_item_id = rec.item_id
2021 AND organization_id = rec.org_id
2022 )
2023 WHERE LOT = rec.lot and ITEM_ID = rec.item_id;--Bug 9252616
2024
2025 --g_lot := rec.lot;
2026 --g_item_id := rec.item_id;
2027 --g_org_id := rec.org_id;
2028 end if;
2029 END IF;
2030
2031 IF rec.org_id IS NOT NULL
2032 AND rec.item_id IS NOT NULL THEN
2033 --Bug 6834805
2034 if (nvl(g_org_id_trak_qty, -9999) <> rec.org_id
2035 or nvl(g_item_id_trak_qty, -9999) <> rec.item_id) then
2036
2037 SELECT tracking_quantity_ind
2038 INTO l_tracking_qty_ind
2039 FROM mtl_system_items
2040 WHERE organization_id = rec.org_id
2041 AND inventory_item_id = rec.item_id;
2042
2043 IF nvl(l_tracking_qty_ind, '@@@@') <> 'PS' THEN
2044 UPDATE mtl_mwb_gtmp
2045 SET SECONDARY_ONHAND = NULL
2046 , SECONDARY_UNPACKED = NULL
2047 , SECONDARY_PACKED = NULL
2048 , SECONDARY_UOM_CODE = NULL
2049 WHERE org_id = rec.org_id
2050 AND item_id = rec.item_id;
2051 END IF ;
2052
2053 g_org_id_trak_qty := rec.org_id;
2054 g_item_id_trak_qty := rec.item_id;
2055 end if;
2056 END IF;
2057
2058 ----------------------------------------------------------------------------------------------
2059
2060 IF inv_mwb_globals.g_lot_from = inv_mwb_globals.g_lot_to THEN
2061 UPDATE MTL_MWB_GTMP
2062 SET LOT = inv_mwb_globals.g_lot_from;
2063 END IF;
2064
2065 IF inv_mwb_globals.g_serial_from = inv_mwb_globals.g_serial_to THEN
2066 UPDATE MTL_MWB_GTMP
2067 SET SERIAL = inv_mwb_globals.g_serial_from;
2068 END IF;
2069
2070 -- Onhand Material Status Support
2071 ----------------- Update Status ------------------------------------------
2072
2073 if (inv_cache.set_org_rec(inv_mwb_globals.g_tree_organization_id)) then
2074 l_default_status_id := inv_cache.org_rec.default_status_id;
2075 end if;
2076
2077 IF l_default_status_id is NOT NULL THEN
2078 -- Populating the status column for serial controlled items
2079 IF rec.org_id IS NOT NULL
2080 AND rec.item_id IS NOT NULL
2081 AND rec.SERIAL IS NOT NULL THEN
2082
2083 select status_id
2084 into rec.status_id
2085 from mtl_serial_numbers
2086 where inventory_item_id = rec.item_id
2087 and serial_number = rec.SERIAL;
2088
2089 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'serial status_id '||rec.status_id);
2090
2091 UPDATE MTL_MWB_GTMP
2092 SET status_id = rec.status_id
2093 WHERE item_id = rec.item_id
2094 and serial = rec.SERIAL;
2095
2096 END IF;
2097
2098 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'rec.status_id '||rec.status_id);
2099
2100 IF rec.status_id IS NOT NULL THEN
2101 SELECT status_code
2102 INTO l_status_name
2103 FROM mtl_material_statuses_vl
2104 WHERE status_id = rec.status_id;
2105
2106 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'status code '||l_status_name);
2107
2108 UPDATE MTL_MWB_GTMP
2109 SET status = l_status_name
2110 WHERE status_id = rec.status_id;
2111 END IF;
2112 END IF;
2113
2114 g_lot := rec.lot;
2115 g_item_id := rec.item_id;
2116 g_org_id := rec.org_id;
2117 ----------------- End Update Status ------------------------------------------
2118
2119 --bug12950736
2120 ----------------- Update Onhand ------------------------------------------
2121
2122 IF (NVL(inv_mwb_globals.g_tree_organization_id, inv_mwb_globals.g_organization_id) IS NOT NULL) THEN
2123 SELECT DECODE(wms_enabled_flag, 'Y', 1, 0)
2124 INTO inv_mwb_globals.g_wms_enabled_flag
2125 FROM mtl_parameters
2126 WHERE organization_id = NVL(inv_mwb_globals.g_tree_organization_id, inv_mwb_globals.g_organization_id);
2127 END IF;
2128
2129 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'wms_enabled_flag '||inv_mwb_globals.g_wms_enabled_flag);
2130 IF inv_mwb_globals.g_wms_enabled_flag = 1 THEN
2131 /*bug13456933,the Query Find Parameters,
2132 if not null,added as the condition,
2133 for lpn parameters,added the table wms_license_plate_numbers */
2134 IF inv_mwb_globals.g_lpn_from_id IS NOT NULL
2135 OR inv_mwb_globals.g_lpn_to_id IS NOT NULL THEN
2136 select nvl(sum(wlqv.quantity),0)
2137 into packed_loaded_qty
2138 from WMS_LOADED_QUANTITIES_V wlqv,wms_license_plate_numbers wlpn
2139 where wlqv.inventory_item_id = rec.item_id
2140 and wlqv.organization_id = rec.org_id
2141 and wlqv.containerized_flag = 1
2142 and (rec.subinventory_code is null or wlqv.subinventory_code = rec.subinventory_code)
2143 and (wlqv.subinventory_code = nvl(inv_mwb_globals.g_subinventory_code,wlqv.subinventory_code))
2144 and (rec.lot is null or wlqv.lot_number = rec.lot)
2145 and (nvl(wlqv.lot_number,'X@@X') >= nvl(inv_mwb_globals.g_lot_from,nvl(wlqv.lot_number,'X@@X')))
2146 and (nvl(wlqv.lot_number,'X@@X') <= nvl(inv_mwb_globals.g_lot_to,nvl(wlqv.lot_number,'X@@X')))
2147 and (rec.locator_id is null or wlqv.locator_id = rec.locator_id)
2148 and (nvl(wlqv.locator_id,-1) = nvl(inv_mwb_globals.g_locator_id,nvl(wlqv.locator_id,-1)))
2149 and (rec.revision is null or wlqv.revision = rec.revision)
2150 and (nvl(wlqv.revision,'X@@X') = nvl(inv_mwb_globals.g_revision,nvl(wlqv.revision,'X@@X')))
2151 and (rec.lpn_id is null or nvl(wlqv.content_lpn_id,wlqv.lpn_id) = rec.lpn_id)--bug13478665,content_lpn not lpn populated for the partial lpn picked
2152 and wlqv.lpn_id = wlpn.lpn_id
2153 and wlpn.license_plate_number >= nvl(inv_mwb_globals.g_lpn_from,wlpn.license_plate_number)
2154 and wlpn.license_plate_number <= nvl(inv_mwb_globals.g_lpn_to,wlpn.license_plate_number);
2155
2156 select nvl(sum(wlqv.quantity),0)
2157 into unpacked_loaded_qty
2158 from WMS_LOADED_QUANTITIES_V wlqv,wms_license_plate_numbers wlpn
2159 where wlqv.inventory_item_id = rec.item_id
2160 and wlqv.organization_id = rec.org_id
2161 and wlqv.containerized_flag = 2
2162 and (rec.subinventory_code is null or wlqv.subinventory_code = rec.subinventory_code)
2163 and (wlqv.subinventory_code = nvl(inv_mwb_globals.g_subinventory_code,wlqv.subinventory_code))
2164 and (rec.lot is null or wlqv.lot_number = rec.lot)
2165 and (nvl(wlqv.lot_number,'X@@X') >= nvl(inv_mwb_globals.g_lot_from,nvl(wlqv.lot_number,'X@@X')))
2166 and (nvl(wlqv.lot_number,'X@@X') <= nvl(inv_mwb_globals.g_lot_to,nvl(wlqv.lot_number,'X@@X')))
2167 and (rec.locator_id is null or wlqv.locator_id = rec.locator_id)
2168 and (nvl(wlqv.locator_id,-1) = nvl(inv_mwb_globals.g_locator_id,nvl(wlqv.locator_id,-1)))
2169 and (rec.revision is null or wlqv.revision = rec.revision)
2170 and (nvl(wlqv.revision,'X@@X') = nvl(inv_mwb_globals.g_revision,nvl(wlqv.revision,'X@@X')))
2171 and (rec.lpn_id is null or nvl(wlqv.content_lpn_id,wlqv.lpn_id) = rec.lpn_id)--bug13478665,content_lpn not lpn populated for the partial lpn picked
2172 and wlqv.lpn_id = wlpn.lpn_id
2173 and wlpn.license_plate_number >= nvl(inv_mwb_globals.g_lpn_from,wlpn.license_plate_number)
2174 and wlpn.license_plate_number <= nvl(inv_mwb_globals.g_lpn_to,wlpn.license_plate_number);
2175
2176 ELSE
2177 select nvl(sum(quantity),0)
2178 into packed_loaded_qty
2179 from WMS_LOADED_QUANTITIES_V
2180 where inventory_item_id = rec.item_id
2181 and organization_id = rec.org_id
2182 and containerized_flag = 1
2183 and (rec.subinventory_code is null or subinventory_code = rec.subinventory_code)
2184 and (subinventory_code = nvl(inv_mwb_globals.g_subinventory_code,subinventory_code))
2185 and (rec.lot is null or lot_number = rec.lot)
2186 and (nvl(lot_number,'X@@X') >= nvl(inv_mwb_globals.g_lot_from,nvl(lot_number,'X@@X')))
2187 and (nvl(lot_number,'X@@X') <= nvl(inv_mwb_globals.g_lot_to,nvl(lot_number,'X@@X')))
2188 and (rec.locator_id is null or locator_id = rec.locator_id)
2189 and (nvl(locator_id,-1) = nvl(inv_mwb_globals.g_locator_id,nvl(locator_id,-1)))
2190 and (rec.revision is null or revision = rec.revision)
2191 and (nvl(revision,'X@@X') = nvl(inv_mwb_globals.g_revision,nvl(revision,'X@@X')))
2192 and (rec.lpn_id is null or nvl(content_lpn_id,lpn_id) = rec.lpn_id);--bug13478665,content_lpn not lpn populated for the partial lpn picked
2193
2194 select nvl(sum(quantity),0)
2195 into unpacked_loaded_qty
2196 from WMS_LOADED_QUANTITIES_V
2197 where inventory_item_id = rec.item_id
2198 and organization_id = rec.org_id
2199 and containerized_flag = 2
2200 and (rec.subinventory_code is null or subinventory_code = rec.subinventory_code)
2201 and (subinventory_code = nvl(inv_mwb_globals.g_subinventory_code,subinventory_code))
2202 and (rec.lot is null or lot_number = rec.lot)
2203 and (nvl(lot_number,'X@@X') >= nvl(inv_mwb_globals.g_lot_from,nvl(lot_number,'X@@X')))
2204 and (nvl(lot_number,'X@@X') <= nvl(inv_mwb_globals.g_lot_to,nvl(lot_number,'X@@X')))
2205 and (rec.locator_id is null or locator_id = rec.locator_id)
2206 and (nvl(locator_id,-1) = nvl(inv_mwb_globals.g_locator_id,nvl(locator_id,-1)))
2207 and (rec.revision is null or revision = rec.revision)
2208 and (nvl(revision,'X@@X') = nvl(inv_mwb_globals.g_revision,nvl(revision,'X@@X')))
2209 and (rec.lpn_id is null or nvl(content_lpn_id,lpn_id) = rec.lpn_id);--bug13478665,content_lpn not lpn populated for the partial lpn picked
2210
2211 END IF;
2212
2213 --Bug 13606923
2214 if (rec.serial is not null) then
2215 begin
2216 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'serial '||rec.serial);
2217
2218 select 1 into l_serial_loaded
2219 from dual
2220 where exists (select 1 from WMS_LOADED_QUANTITIES_V wlqv, mtl_serial_numbers_temp msnt
2221 where wlqv.transaction_temp_id IS NOT NULL
2222 and wlqv.transaction_temp_id = msnt.transaction_temp_id
2223 and wlqv.inventory_item_id = rec.item_id
2224 and rec.serial between msnt.fm_serial_number and msnt.to_serial_number
2225 union
2226 select 1 from WMS_LOADED_QUANTITIES_V wlqv, mtl_serial_numbers_temp msnt
2227 where wlqv.serial_transaction_temp_id IS NOT NULL
2228 and wlqv.serial_transaction_temp_id = msnt.transaction_temp_id
2229 and wlqv.inventory_item_id = rec.item_id
2230 and rec.serial between msnt.fm_serial_number and msnt.to_serial_number);
2231
2232 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'serial is loaded, l_serial_loaded '||l_serial_loaded);
2233
2234 exception
2235 when others then
2236 l_serial_loaded := 0;
2237 end;
2238 end if;
2239
2240 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'packed_loaded_qty '||packed_loaded_qty);
2241 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'unpacked_loaded_qty '||unpacked_loaded_qty);
2242 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'rowid '||rec.rowid);
2243 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'onhand '||rec.onhand);
2244 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'unpacked '||rec.unpacked);
2245 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'packed '||rec.packed);
2246 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'serial '||rec.serial);
2247 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'l_serial_loaded '||l_serial_loaded);
2248
2249 if (rec.packed = 0 or rec.packed is null) then
2250 packed_loaded_qty := 0;
2251 end if;
2252
2253 if (rec.unpacked = 0 or rec.unpacked is null) then
2254 unpacked_loaded_qty := 0;
2255 end if;
2256
2257 --Bug 13606923
2258 if (rec.lpn_id is not null) then
2259 if(rec.serial is not null and l_serial_loaded = 1) then
2260
2261 update mtl_mwb_gtmp
2262 set onhand = (onhand - onhand),
2263 unpacked = (unpacked - unpacked),
2264 packed = (packed - packed),
2265 loaded_quantity = 0
2266 where rowid = rec.rowid;
2267 elsif (rec.serial is null) then
2268 update mtl_mwb_gtmp
2269 set onhand = (onhand - packed_loaded_qty - unpacked_loaded_qty),
2270 unpacked = (unpacked - unpacked_loaded_qty),
2271 packed = (packed - packed_loaded_qty),
2272 loaded_quantity = 0
2273 where rowid = rec.rowid;
2274 end if;
2275 else
2276 if(rec.serial is not null and l_serial_loaded = 1) then
2277 update mtl_mwb_gtmp
2278 set loaded_quantity = 1
2279 where rowid = rec.rowid;
2280 elsif (rec.serial is null) then
2281 update mtl_mwb_gtmp
2282 set loaded_quantity = (packed_loaded_qty + unpacked_loaded_qty)
2283 where rowid = rec.rowid;
2284 end if;
2285 end if;
2286 ELSE -- non-wms enabled org
2287 update mtl_mwb_gtmp
2288 set loaded_quantity = 0
2289 where rowid = rec.rowid;
2290
2291 END IF;
2292
2293 ----------------- End Update Onhand ------------------------------------------
2294
2295 END LOOP;
2296 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'exited post query');
2297
2298 EXCEPTION
2299 WHEN OTHERS THEN
2300 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, ' SQLERRM : ' ||SQLERRM);
2301 END post_query;
2302
2303 PROCEDURE bind_query(p_cursor_handle IN NUMBER) IS
2304 j PLS_INTEGER;
2305 l_procedure_name VARCHAR2(30);
2306 BEGIN
2307 l_procedure_name := 'BIND_QUERY';
2308 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'Entered');
2309 IF g_date_bind_tab.COUNT > 0 THEN
2310
2311 j := g_date_bind_tab.FIRST;
2312 WHILE j IS NOT NULL LOOP
2313 dbms_sql.bind_variable(
2314 p_cursor_handle,
2315 g_date_bind_tab(j).bind_name,
2316 g_date_bind_tab(j).bind_value
2317 );
2318 inv_mwb_globals.print_msg(
2319 g_pkg_name,
2320 l_procedure_name,
2321 g_date_bind_tab(j).bind_name || ' => '|| g_date_bind_tab(j).bind_value
2322 );
2323 j := g_date_bind_tab.NEXT(j);
2324 END LOOP;
2325
2326 END IF;
2327
2328 IF g_number_bind_tab.COUNT > 0 THEN
2329
2330 j := g_number_bind_tab.FIRST;
2331 WHILE j IS NOT NULL LOOP
2332 dbms_sql.bind_variable(
2333 p_cursor_handle,
2334 g_number_bind_tab(j).bind_name,
2335 g_number_bind_tab(j).bind_value
2336 );
2337 inv_mwb_globals.print_msg(
2338 g_pkg_name,
2339 l_procedure_name,
2340 g_number_bind_tab(j).bind_name || ' => '|| g_number_bind_tab(j).bind_value
2341 );
2342 j := g_number_bind_tab.NEXT(j);
2343 END LOOP;
2344
2345 END IF;
2346
2347 IF g_varchar_bind_tab.COUNT > 0 THEN
2348
2349 j := g_varchar_bind_tab.FIRST;
2350 WHILE j IS NOT NULL LOOP
2351 dbms_sql.bind_variable(
2352 p_cursor_handle,
2353 g_varchar_bind_tab(j).bind_name,
2354 g_varchar_bind_tab(j).bind_value
2355 );
2356 inv_mwb_globals.print_msg(
2357 g_pkg_name,
2358 l_procedure_name,
2359 g_varchar_bind_tab(j).bind_name || ' => '|| g_varchar_bind_tab(j).bind_value
2360 );
2361 j := g_varchar_bind_tab.NEXT(j);
2362 END LOOP;
2363
2364 END IF;
2365 END bind_query;
2366
2367 PROCEDURE add_from_clause(p_from_clause IN VARCHAR2, p_target IN VARCHAR2) IS
2368 BEGIN
2369 CASE p_target
2370 WHEN 'ONHAND' THEN
2371 g_onhand_from(g_onhand_from_index) := p_from_clause;
2372 g_onhand_from_index := g_onhand_from_index + 1;
2373 WHEN 'INBOUND' THEN
2374 g_inbound_from(g_inbound_from_index) := p_from_clause;
2375 g_inbound_from_index := g_inbound_from_index + 1;
2376 WHEN 'RECEIVING' THEN
2377 g_receiving_from(g_receiving_from_index) := p_from_clause;
2378 g_receiving_from_index := g_receiving_from_index + 1;
2379 WHEN 'ONHAND_1' THEN
2380 g_onhand_1_from(g_onhand_1_from_index) := p_from_clause;
2381 g_onhand_1_from_index := g_onhand_1_from_index + 1;
2382 WHEN 'INBOUND_1' THEN
2383 g_inbound_1_from(g_inbound_1_from_index) := p_from_clause;
2384 g_inbound_1_from_index := g_inbound_1_from_index + 1;
2385 WHEN 'RECEIVING_1' THEN
2386 g_receiving_1_from(g_receiving_1_from_index) := p_from_clause;
2387 g_receiving_1_from_index := g_receiving_1_from_index + 1;
2388 END CASE;
2389 END add_from_clause;
2390
2391 PROCEDURE add_where_clause(p_where_clause IN VARCHAR2, p_target IN VARCHAR2) IS
2392 BEGIN
2393 CASE p_target
2394 WHEN 'ONHAND' THEN
2395 g_onhand_where(g_onhand_where_index) := p_where_clause;
2396 g_onhand_where_index := g_onhand_where_index + 1;
2397 WHEN 'INBOUND' THEN
2398 g_inbound_where(g_inbound_where_index) := p_where_clause;
2399 g_inbound_where_index := g_inbound_where_index + 1;
2400 WHEN 'RECEIVING' THEN
2401 g_receiving_where(g_receiving_where_index) := p_where_clause;
2402 g_receiving_where_index := g_receiving_where_index + 1;
2403 WHEN 'ONHAND_1' THEN
2404 g_onhand_1_where(g_onhand_1_where_index) := p_where_clause;
2405 g_onhand_1_where_index := g_onhand_1_where_index + 1;
2406 WHEN 'INBOUND_1' THEN
2407 g_inbound_1_where(g_inbound_1_where_index) := p_where_clause;
2408 g_inbound_1_where_index := g_inbound_1_where_index + 1;
2409 WHEN 'RECEIVING_1' THEN
2410 g_receiving_1_where(g_receiving_1_where_index) := p_where_clause;
2411 g_receiving_1_where_index := g_receiving_1_where_index + 1;
2412 END CASE;
2413 END add_where_clause;
2414
2415 PROCEDURE add_group_clause(p_group_clause IN VARCHAR2, p_target IN VARCHAR2) IS
2416 BEGIN
2417 CASE p_target
2418 WHEN 'ONHAND' THEN
2419 g_onhand_group(g_onhand_group_index) := p_group_clause;
2420 g_onhand_group_index := g_onhand_group_index + 1;
2421 WHEN 'INBOUND' THEN
2422 g_inbound_group(g_inbound_group_index) := p_group_clause;
2423 g_inbound_group_index := g_inbound_group_index + 1;
2424 WHEN 'RECEIVING' THEN
2425 g_receiving_group(g_receiving_group_index) := p_group_clause;
2426 g_receiving_group_index := g_receiving_group_index + 1;
2427 WHEN 'ONHAND_1' THEN
2428 g_onhand_1_group(g_onhand_1_group_index) := p_group_clause;
2429 g_onhand_1_group_index := g_onhand_1_group_index + 1;
2430 WHEN 'INBOUND_1' THEN
2431 g_inbound_1_group(g_inbound_1_group_index) := p_group_clause;
2432 g_inbound_1_group_index := g_inbound_1_group_index + 1;
2433 WHEN 'RECEIVING_1' THEN
2434 g_receiving_1_group(g_receiving_1_group_index) := p_group_clause;
2435 g_receiving_1_group_index := g_receiving_1_group_index + 1;
2436 END CASE;
2437 END add_group_clause;
2438
2439 FUNCTION build_attribute_qf_onhand(p_entity IN VARCHAR2) RETURN VARCHAR2 IS
2440 v_flexfield fnd_dflex.dflex_r;
2441 v_flexinfo fnd_dflex.dflex_dr;
2442 v_contexts fnd_dflex.contexts_dr;
2443 v_segments fnd_dflex.segments_dr;
2444
2445 l_application_short_name VARCHAR2(10);
2446 l_flex_name VARCHAR2(30);
2447 l_delimiter VARCHAR2(100);
2448 l_where VARCHAR2(500);
2449 l_context_name VARCHAR2(50);
2450 l_pos NUMBER;
2451 l_alias VARCHAR2(10);
2452 l_bind_variable VARCHAR2(30);
2453
2454 BEGIN
2455 l_application_short_name := 'INV';
2456 l_where := ' ';
2457
2458 CASE p_entity
2459 WHEN 'LOT' THEN
2460 l_flex_name := 'Lot Attributes';
2461 l_alias := 'mln1';
2462 l_context_name := 'Computer';
2463 l_bind_variable := ':onh_lot_attribute';
2464
2465 WHEN 'SERIAL' THEN
2466 l_flex_name := 'Serial Attributes';
2467 l_alias := 'msn';
2468 l_context_name := 'Computer';
2469 l_bind_variable := ':onh_serial_attribute';
2470
2471 END CASE;
2472
2473 fnd_dflex.get_flexfield(l_application_short_name, l_flex_name, v_flexfield, v_flexinfo);
2474 l_delimiter := v_flexinfo.segment_delimeter;
2475
2476 fnd_dflex.get_contexts(v_flexfield, v_contexts);
2477 FOR i IN 1..v_contexts.ncontexts LOOP
2478 IF UPPER(v_contexts.context_code(i)) = UPPER(l_context_name) THEN
2479 fnd_dflex.get_segments(
2480 fnd_dflex.make_context(
2481 v_flexfield,
2482 v_contexts.context_code(i)
2483 ),
2484 v_segments,
2485 TRUE
2486 );
2487
2488 l_pos := v_segments.application_column_name.FIRST;
2489 WHILE l_pos IS NOT NULL LOOP
2490 IF l_pos = v_segments.application_column_name.LAST THEN
2491 l_where := l_where||l_alias||'.'||v_segments.application_column_name(l_pos);
2492 ELSE
2493 l_where := l_where||l_alias||'.'||v_segments.application_column_name(l_pos)||'||'||''''||l_delimiter||''''||'||';
2494 END IF;
2495 l_pos := v_segments.application_column_name.NEXT(l_pos);
2496 END LOOP;
2497 l_where := l_where||' = '||l_bind_variable;
2498
2499 END IF;
2500 END LOOP;
2501
2502 RETURN l_where;
2503
2504 END build_attribute_qf_onhand;
2505
2506 PROCEDURE add_qf_where_onhand(p_flag VARCHAR2) IS
2507 l_procedure_name VARCHAR2(30);
2508 l_default_status_id NUMBER; -- Onhand Material Status Support
2509 BEGIN
2510 l_procedure_name := 'ADD_QF_WHERE_ONHAND';
2511 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'Entered');
2512
2513 -- Onhand Material Status Support
2514 if (inv_mwb_globals.g_organization_id is not null) then
2515 if (inv_cache.set_org_rec(inv_mwb_globals.g_organization_id)) then
2516 l_default_status_id := inv_cache.org_rec.default_status_id;
2517 end if;
2518 elsif (inv_mwb_globals.g_tree_organization_id is not null) then
2519 if (inv_cache.set_org_rec(inv_mwb_globals.g_tree_organization_id)) then
2520 l_default_status_id := inv_cache.org_rec.default_status_id;
2521 end if;
2522 end if;
2523
2524 CASE p_flag
2525 WHEN 'ONHAND' THEN
2526 /* Bug 8225619. Adding ELSE CONDITION code such that right side grid
2527 retrieves the organizations which are relevant to particular
2528 responsibility id and responisibility application id */
2529 IF inv_mwb_globals.g_organization_id IS NOT NULL THEN
2530 add_where_clause('moqd.organization_id = :onh_organization_id', 'ONHAND');
2531 add_bind_variable('onh_organization_id', inv_mwb_globals.g_organization_id);
2532 ELSE
2533 add_where_clause(' EXISTS ( SELECT 1 FROM org_access_view oav WHERE oav.organization_id = moqd.organization_id AND oav.responsibility_id = :responsibility_id AND oav.resp_application_id = :resp_application_id ) ', 'ONHAND');
2534 add_bind_variable('responsibility_id', inv_mwb_globals.g_responsibility_id);
2535 add_bind_variable('resp_application_id', inv_mwb_globals.g_resp_application_id);
2536 END IF;
2537 /* End of Bug 8225619*/
2538
2539 IF inv_mwb_globals.g_subinventory_code IS NOT NULL THEN
2540 add_where_clause('moqd.subinventory_code = :onh_subinventory_code', 'ONHAND');
2541 add_bind_variable('onh_subinventory_code', inv_mwb_globals.g_subinventory_code);
2542 END IF;
2543
2544 IF inv_mwb_globals.g_locator_id IS NOT NULL THEN
2545 add_where_clause('moqd.locator_id = :onh_locator_id', 'ONHAND');
2546 add_bind_variable('onh_locator_id', inv_mwb_globals.g_locator_id);
2547 END IF;
2548
2549 -- ER(9158529 client)
2550 IF inv_mwb_globals.g_client_code IS NOT NULL THEN
2551 add_where_clause('moqd.inventory_item_id in (select DISTINCT inventory_item_id from mtl_system_items_b where wms_deploy.get_client_code(inventory_item_id) = :onh_client_code) ', 'ONHAND');
2552 add_bind_variable('onh_client_code', inv_mwb_globals.g_client_code);
2553 END IF;
2554 -- ER(9158529 client)
2555
2556 IF inv_mwb_globals.g_inventory_item_id IS NOT NULL THEN
2557 add_where_clause('moqd.inventory_item_id = :onh_inventory_item_id', 'ONHAND');
2558 add_bind_variable('onh_inventory_item_id', inv_mwb_globals.g_inventory_item_id);
2559 END IF;
2560
2561 --Bug 14548684 add view mtl_system_items_vl to support multi-language
2562 IF inv_mwb_globals.g_inventory_item_id IS NULL
2563 AND inv_mwb_globals.g_item_description IS NOT NULL THEN
2564 inv_mwb_query_manager.add_from_clause('mtl_system_items_kfv msik', 'ONHAND');
2565 inv_mwb_query_manager.add_from_clause('mtl_system_items_vl msiv', 'ONHAND');
2566 add_where_clause('moqd.inventory_item_id = msik.inventory_item_id', 'ONHAND');
2567 add_where_clause('moqd.organization_id = msik.organization_id', 'ONHAND');
2568 add_where_clause('msik.inventory_item_id = msiv.inventory_item_id', 'ONHAND');
2569 add_where_clause('msik.organization_id = msiv.organization_id', 'ONHAND');
2570 add_where_clause('upper(msiv.description) like upper(:onh_item_description)', 'ONHAND');--Bug 14177143
2571 add_bind_variable('onh_item_description', inv_mwb_globals.g_item_description);
2572 END IF;
2573
2574 IF inv_mwb_globals.g_revision IS NOT NULL THEN
2575 add_where_clause('moqd.revision = :onh_revision', 'ONHAND');
2576 add_bind_variable('onh_revision', inv_mwb_globals.g_revision);
2577 END IF;
2578
2579 IF inv_mwb_globals.g_cost_group_id IS NOT NULL THEN
2580 add_where_clause('moqd.cost_group_id = :onh_cost_group_id', 'ONHAND');
2581 add_bind_variable('onh_cost_group_id', inv_mwb_globals.g_cost_group_id);
2582 END IF;
2583
2584 -- ER(9158529)
2585 IF inv_mwb_globals.g_category_set_id IS NOT NULL THEN
2586 add_where_clause('moqd.inventory_item_id in '
2587 || ' (select DISTINCT inventory_item_id from mtl_item_categories '
2588 || ' where organization_id = :onh_organization_id '
2589 || ' and category_set_id = :onh_category_set_id '
2590 || ' and category_id = nvl(:onh_category_id, category_id)) ', 'ONHAND');
2591 add_bind_variable('onh_organization_id', inv_mwb_globals.g_organization_id);
2592 add_bind_variable('onh_category_set_id', inv_mwb_globals.g_category_set_id);
2593 add_bind_variable('onh_category_id', inv_mwb_globals.g_category_id);
2594 END IF;
2595 -- ER(9158529)
2596
2597 IF inv_mwb_globals.g_project_id IS NOT NULL THEN
2598 add_where_clause('moqd.project_id = :onh_project_id', 'ONHAND');
2599 add_bind_variable('onh_project_id', inv_mwb_globals.g_project_id);
2600 END IF;
2601
2602 IF inv_mwb_globals.g_task_id IS NOT NULL THEN
2603 add_where_clause('moqd.task_id = :onh_task_id', 'ONHAND');
2604 add_bind_variable('onh_task_id', inv_mwb_globals.g_task_id);
2605 END IF;
2606
2607 IF inv_mwb_globals.g_lpn_from_id IS NOT NULL
2608 OR inv_mwb_globals.g_lpn_to_id IS NOT NULL THEN
2609 inv_mwb_query_manager.add_from_clause(' wms_license_plate_numbers wlpn ','ONHAND');
2610 add_where_clause('wlpn.lpn_context IN (1,9,11)', 'ONHAND');
2611 add_where_clause('moqd.lpn_id = wlpn.lpn_id', 'ONHAND');
2612 END IF;
2613
2614 IF inv_mwb_globals.g_tree_parent_lpn_id IS NULL THEN
2615 IF (inv_mwb_globals.g_lpn_from_id IS NOT NULL AND
2616 inv_mwb_globals.g_lpn_to_id IS NOT NULL AND
2617 inv_mwb_globals.g_lpn_from_id = inv_mwb_globals.g_lpn_to_id) THEN
2618 add_where_clause('moqd.lpn_id = :onh_lpn_from_id', 'ONHAND');
2619 add_bind_variable('onh_lpn_from_id', inv_mwb_globals.g_lpn_from_id);
2620
2621 END IF;
2622
2623 IF (inv_mwb_globals.g_lpn_from_id IS NOT NULL AND
2624 inv_mwb_globals.g_lpn_from_id <> NVL(inv_mwb_globals.g_lpn_to_id, -1) ) THEN
2625 add_where_clause('wlpn.license_plate_number >= :onh_lpn_from', 'ONHAND');
2626 add_bind_variable('onh_lpn_from', inv_mwb_globals.g_lpn_from);
2627 END IF;
2628
2629 IF (inv_mwb_globals.g_lpn_to_id IS NOT NULL AND
2630 inv_mwb_globals.g_lpn_to_id <> NVL(inv_mwb_globals.g_lpn_from_id, -1) ) THEN
2631 add_where_clause('wlpn.license_plate_number <= :onh_lpn_to', 'ONHAND');
2632 add_bind_variable('onh_lpn_to', inv_mwb_globals.g_lpn_to);
2633 END IF;
2634 END IF;
2635
2636 IF inv_mwb_globals.g_owning_qry_mode = 2 THEN
2637 add_where_clause('moqd.owning_tp_type = 1', 'ONHAND');
2638 ELSIF inv_mwb_globals.g_owning_qry_mode = 3 THEN
2639 add_where_clause('moqd.owning_tp_type = 1', 'ONHAND');
2640 IF inv_mwb_globals.g_owning_org IS NOT NULL THEN
2641 add_where_clause('moqd.owning_organization_id = :onh_owning_org_id', 'ONHAND');
2642 add_bind_variable('onh_owning_org_id', inv_mwb_globals.g_owning_org);
2643 END IF;
2644 END IF;
2645
2646 IF inv_mwb_globals.g_planning_query_mode = 2 THEN
2647 add_where_clause('moqd.planning_tp_type = 1', 'ONHAND');
2648 ELSIF inv_mwb_globals.g_planning_query_mode = 3 THEN
2649 add_where_clause('moqd.planning_tp_type = 1', 'ONHAND');
2650 IF inv_mwb_globals.g_planning_org IS NOT NULL THEN
2651 add_where_clause('moqd.planning_organization_id = :onh_planning_org_id', 'ONHAND');
2652 add_bind_variable('onh_planning_org_id', inv_mwb_globals.g_planning_org);
2653 END IF;
2654 END IF;
2655
2656 IF (inv_mwb_globals.g_lot_from IS NOT NULL AND
2657 inv_mwb_globals.g_lot_to IS NOT NULL AND
2658 inv_mwb_globals.g_lot_from = inv_mwb_globals.g_lot_to) THEN
2659 add_where_clause('moqd.lot_number = :onh_lot_from', 'ONHAND');
2660 add_bind_variable('onh_lot_from', inv_mwb_globals.g_lot_from);
2661 END IF;
2662
2663 IF (inv_mwb_globals.g_lot_from IS NOT NULL AND
2664 inv_mwb_globals.g_lot_from <> NVL(inv_mwb_globals.g_lot_to, -1) ) THEN
2665 add_where_clause('moqd.lot_number >= :onh_lot_from', 'ONHAND');
2666 add_bind_variable('onh_lot_from', inv_mwb_globals.g_lot_from);
2667 END IF;
2668
2669 IF (inv_mwb_globals.g_lot_to IS NOT NULL AND
2670 inv_mwb_globals.g_lot_to <> NVL(inv_mwb_globals.g_lot_from, -1) ) THEN
2671 add_where_clause('moqd.lot_number <= :onh_lot_to', 'ONHAND');
2672 add_bind_variable('onh_lot_to', inv_mwb_globals.g_lot_to);
2673 END IF;
2674
2675 /* Bug 8396954, Adding below if condition for checking supplier_lot_number condition */
2676 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL OR
2677 inv_mwb_globals.g_supplier_lot_to IS NOT NULL ) THEN
2678 inv_mwb_query_manager.add_from_clause('mtl_lot_numbers mln3', 'ONHAND');
2679 add_where_clause('moqd.lot_number = mln3.lot_number', 'ONHAND');
2680 add_where_clause('moqd.inventory_item_id = mln3.inventory_item_id', 'ONHAND'); -- Bug 9927569
2681 add_where_clause('moqd.organization_id = mln3.organization_id', 'ONHAND'); -- Bug 9927569
2682
2683
2684 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL AND
2685 inv_mwb_globals.g_supplier_lot_to IS NOT NULL AND
2686 inv_mwb_globals.g_supplier_lot_from = inv_mwb_globals.g_supplier_lot_to) THEN
2687 add_where_clause('mln3.supplier_lot_number = :onh_supplier_lot_from', 'ONHAND');
2688 add_bind_variable('onh_supplier_lot_from', inv_mwb_globals.g_supplier_lot_from);
2689 END IF;
2690
2691 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL AND
2692 inv_mwb_globals.g_supplier_lot_from <> NVL(inv_mwb_globals.g_supplier_lot_to, -1) ) THEN
2693 add_where_clause('mln3.supplier_lot_number >= :onh_supplier_lot_from', 'ONHAND');
2694 add_bind_variable('onh_supplier_lot_from', inv_mwb_globals.g_supplier_lot_from);
2695 END IF;
2696
2697 IF (inv_mwb_globals.g_supplier_lot_to IS NOT NULL AND
2698 inv_mwb_globals.g_supplier_lot_to <> NVL(inv_mwb_globals.g_supplier_lot_from, -1) ) THEN
2699 add_where_clause('mln3.supplier_lot_number <= :onh_supplier_lot_to', 'ONHAND');
2700 add_bind_variable('onh_supplier_lot_to', inv_mwb_globals.g_supplier_lot_to);
2701 END IF;
2702 END IF;
2703 /* End of Bug 8396954 */
2704 --KMOTUPAL ME # 3922793
2705 IF (inv_mwb_globals.g_expired_lots = 'Y') THEN
2706 add_from_clause('mtl_lot_numbers mln2', 'ONHAND');
2707 add_where_clause('moqd.lot_number = mln2.lot_number', 'ONHAND');
2708 add_where_clause('moqd.inventory_item_id = mln2.inventory_item_id', 'ONHAND');
2709 add_where_clause('moqd.organization_id = mln2.organization_id', 'ONHAND');
2710 add_where_clause('mln2.expiration_date <= :expiration_date', 'ONHAND');
2711 add_bind_variable('expiration_date', inv_mwb_globals.g_expiration_date);
2712 END IF;
2713 --KMOTUPAL ME # 3922793
2714
2715 --BUG 7556505
2716 IF (inv_mwb_globals.g_parent_lot IS NOT NULL) THEN
2717 IF (inv_mwb_globals.g_expired_lots <> 'Y') THEN
2718 add_from_clause('mtl_lot_numbers mln2', 'ONHAND');
2719 add_where_clause('moqd.lot_number = mln2.lot_number', 'ONHAND');
2720 add_where_clause('moqd.inventory_item_id = mln2.inventory_item_id', 'ONHAND'); -- Bug 9927569
2721 add_where_clause('moqd.organization_id = mln2.organization_id', 'ONHAND'); -- Bug 9927569
2722 END IF;
2723 add_where_clause('mln2.parent_lot_number = :parent_lot_number', 'ONHAND');
2724 add_bind_variable('parent_lot_number', inv_mwb_globals.g_parent_lot);
2725 END IF;
2726 --BUG 7556505
2727
2728 --bug # 6633612
2729 IF (inv_mwb_globals.g_shipment_header_id is not null) THEN
2730 add_from_clause('rcv_transactions rt', 'ONHAND');
2731 add_from_clause('mtl_material_transactions mmt', 'ONHAND');
2732 add_where_clause('rt.shipment_header_id = :shipment_header_id', 'ONHAND');
2733 add_where_clause('rt.transaction_id = mmt.rcv_transaction_id', 'ONHAND');
2734 add_where_clause('rt.organization_id = mmt.organization_id', 'ONHAND');
2735 add_where_clause('rt.transaction_type = ''DELIVER''', 'ONHAND');
2736 add_where_clause('rt.destination_type_code = ''INVENTORY''', 'ONHAND');
2737 add_where_clause('mmt.transaction_id = moqd.create_transaction_id', 'ONHAND');
2738 add_where_clause('mmt.organization_id = moqd.organization_id', 'ONHAND');
2739 add_bind_variable('shipment_header_id', inv_mwb_globals.g_shipment_header_id);
2740 END IF;
2741 --bug # 6633612
2742
2743 IF (inv_mwb_globals.g_grade_from_code IS NOT NULL) OR
2744 (inv_mwb_globals.g_lot_context IS NOT NULL) THEN
2745 add_from_clause('mtl_lot_numbers mln1', 'ONHAND');
2746 add_where_clause('moqd.lot_number = mln1.lot_number', 'ONHAND');
2747 add_where_clause('moqd.inventory_item_id = mln1.inventory_item_id', 'ONHAND');
2748 add_where_clause('moqd.organization_id = mln1.organization_id', 'ONHAND');
2749
2750 IF (inv_mwb_globals.g_grade_from_code IS NOT NULL) THEN
2751 add_where_clause('mln1.grade_code = :onh_grade_from_code', 'ONHAND');
2752 add_bind_variable('onh_grade_from_code', inv_mwb_globals.g_grade_from_code);
2753 END IF;
2754
2755 IF (inv_mwb_globals.g_lot_context IS NOT NULL) THEN
2756 add_where_clause('mln1.lot_attribute_category = :onh_lot_context', 'ONHAND');
2757 add_bind_variable('onh_lot_context', inv_mwb_globals.g_lot_context);
2758 END IF;
2759
2760 END IF; -- grade or lot context or lot attributes
2761
2762 IF (inv_mwb_globals.g_lot_attr_query IS NOT NULL) THEN -- Bug 7566588 Changes Start
2763 add_from_clause('mtl_lot_numbers mln', 'ONHAND');
2764 add_where_clause('moqd.lot_number = mln.lot_number', 'ONHAND');
2765 add_where_clause('moqd.inventory_item_id = mln.inventory_item_id', 'ONHAND');
2766 add_where_clause('moqd.organization_id = mln.organization_id', 'ONHAND');
2767 add_where_clause(inv_mwb_globals.g_lot_attr_query, 'ONHAND');
2768 END IF; -- Bug 7566588 Changes End
2769
2770 IF (inv_mwb_globals.g_planning_org IS NOT NULL) THEN
2771 add_where_clause('moqd.planning_organization_id = :onh_planning_org', 'ONHAND');
2772 add_bind_variable('onh_planning_org', inv_mwb_globals.g_planning_org);
2773 END IF;
2774
2775 IF (inv_mwb_globals.g_owning_org IS NOT NULL) THEN
2776 add_where_clause('moqd.owning_organization_id = :onh_owning_org', 'ONHAND');
2777 add_bind_variable('onh_owning_org', inv_mwb_globals.g_owning_org);
2778 END IF;
2779
2780 -- Onhand Material Status Support
2781
2782 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'add_qf_onhand defaultstatusid:'|| l_default_status_id);
2783 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'view by :'||inv_mwb_globals.g_view_by );
2784
2785 if inv_mwb_globals.g_status_id is not null then
2786 if l_default_status_id is not null then
2787 IF inv_mwb_globals.g_view_by <> 'STATUS' THEN
2788
2789 inv_mwb_query_manager.add_from_clause('mtl_system_items msit', 'ONHAND');
2790 inv_mwb_query_manager.add_where_clause('moqd.organization_id = msit.organization_id', 'ONHAND');
2791 inv_mwb_query_manager.add_where_clause('moqd.inventory_item_id = msit.inventory_item_id', 'ONHAND');
2792 inv_mwb_query_manager.add_where_clause('msit.serial_number_control_code IN (1, 6)', 'ONHAND');
2793
2794 add_where_clause('moqd.status_id = :onh_status_id', 'ONHAND');
2795 add_bind_variable('onh_status_id', inv_mwb_globals.g_status_id);
2796 end if;
2797 else
2798 -- Bug 6060233
2799 IF inv_mwb_globals.g_view_by <> 'STATUS' THEN
2800
2801 inv_mwb_query_manager.add_from_clause('mtl_system_items msit', 'ONHAND');
2802 inv_mwb_query_manager.add_from_clause('mtl_item_locations_kfv mil', 'ONHAND');
2803 inv_mwb_query_manager.add_from_clause('mtl_lot_numbers mln', 'ONHAND');
2804 inv_mwb_query_manager.add_from_clause('mtl_secondary_inventories msi', 'ONHAND');
2805 inv_mwb_query_manager.add_where_clause('moqd.organization_id = msit.organization_id', 'ONHAND');
2806 inv_mwb_query_manager.add_where_clause('moqd.inventory_item_id = msit.inventory_item_id', 'ONHAND');
2807 inv_mwb_query_manager.add_where_clause('moqd.organization_id = mil.organization_id(+)', 'ONHAND');
2808 inv_mwb_query_manager.add_where_clause('moqd.locator_id = mil.inventory_location_id(+)', 'ONHAND');
2809 inv_mwb_query_manager.add_where_clause('moqd.organization_id = mln.organization_id(+)', 'ONHAND');
2810 inv_mwb_query_manager.add_where_clause('moqd.inventory_item_id = mln.inventory_item_id(+)', 'ONHAND');
2811 inv_mwb_query_manager.add_where_clause('moqd.lot_number = mln.lot_number(+)', 'ONHAND');
2812 inv_mwb_query_manager.add_where_clause('moqd.organization_id = msi.organization_id', 'ONHAND');
2813 inv_mwb_query_manager.add_where_clause('moqd.subinventory_code = msi.secondary_inventory_name', 'ONHAND');
2814 inv_mwb_query_manager.add_where_clause('(msi.subinventory_type = 1 OR msi.subinventory_type IS NULL)', 'ONHAND');
2815 inv_mwb_query_manager.add_where_clause('msit.serial_number_control_code IN (1, 6)', 'ONHAND');
2816
2817 inv_mwb_query_manager.add_where_clause('(msi.status_id = :msi_status_id' ||
2818 ' OR mil.status_id = :mil_status_id' ||
2819 ' OR mln.status_id = :mln_status_id)', 'ONHAND');
2820
2821 inv_mwb_query_manager.add_bind_variable('msi_status_id', inv_mwb_globals.g_status_id);
2822 inv_mwb_query_manager.add_bind_variable('mil_status_id', inv_mwb_globals.g_status_id);
2823 inv_mwb_query_manager.add_bind_variable('mln_status_id', inv_mwb_globals.g_status_id);
2824 END IF;
2825 -- End Bug 6060233
2826 end if;
2827 end if;
2828 -- End Onhand Material Status Support
2829
2830
2831 WHEN 'ONHAND_MSN' THEN
2832
2833 IF inv_mwb_globals.g_status_id IS NOT NULL THEN
2834 if l_default_status_id is null then -- Onhand Material Status Support
2835 inv_mwb_query_manager.add_from_clause('mtl_item_locations_kfv mil', 'ONHAND');
2836 inv_mwb_query_manager.add_from_clause('mtl_lot_numbers mln', 'ONHAND');
2837 inv_mwb_query_manager.add_from_clause('mtl_secondary_inventories msi', 'ONHAND');
2838 inv_mwb_query_manager.add_where_clause('msn.current_organization_id = mil.organization_id(+)', 'ONHAND');
2839 inv_mwb_query_manager.add_where_clause('msn.current_locator_id = mil.inventory_location_id(+)', 'ONHAND');
2840 inv_mwb_query_manager.add_where_clause('msn.current_organization_id = mln.organization_id(+)', 'ONHAND');
2841 inv_mwb_query_manager.add_where_clause('msn.inventory_item_id = mln.inventory_item_id(+)', 'ONHAND');
2842 inv_mwb_query_manager.add_where_clause('msn.lot_number = mln.lot_number(+)', 'ONHAND');
2843 inv_mwb_query_manager.add_where_clause('msn.current_organization_id = msi.organization_id', 'ONHAND');
2844 inv_mwb_query_manager.add_where_clause('msn.current_subinventory_code = msi.secondary_inventory_name', 'ONHAND');
2845 inv_mwb_query_manager.add_where_clause('NVL (msn.organization_type, 2) = 2', 'ONHAND');
2846 inv_mwb_query_manager.add_where_clause('(msi.subinventory_type = 1 OR msi.subinventory_type IS NULL)', 'ONHAND');
2847
2848 IF inv_mwb_globals.g_view_by <> 'STATUS' THEN
2849
2850 -- Bug 6060233
2851 inv_mwb_query_manager.add_where_clause('(msi.status_id = :msi_status_id' ||
2852 ' OR mil.status_id = :mil_status_id' ||
2853 ' OR mln.status_id = :mln_status_id' ||
2854 ' OR msn.status_id = :msn_status_id)', 'ONHAND');
2855
2856 /*
2857 inv_mwb_query_manager.add_where_clause('msi.status_id = :msi_status_id', 'ONHAND');
2858 inv_mwb_query_manager.add_where_clause('mil.status_id = :mil_status_id', 'ONHAND');
2859 inv_mwb_query_manager.add_where_clause('mln.status_id = :mln_status_id', 'ONHAND');
2860 inv_mwb_query_manager.add_where_clause('msn.status_id = :msn_status_id', 'ONHAND');
2861 */
2862 -- End Bug 6060233
2863
2864 inv_mwb_query_manager.add_bind_variable('msi_status_id', inv_mwb_globals.g_status_id);
2865 inv_mwb_query_manager.add_bind_variable('mil_status_id', inv_mwb_globals.g_status_id);
2866 inv_mwb_query_manager.add_bind_variable('mln_status_id', inv_mwb_globals.g_status_id);
2867 inv_mwb_query_manager.add_bind_variable('msn_status_id', inv_mwb_globals.g_status_id);
2868 END IF;
2869 else -- Onhand Material Status Support
2870 inv_mwb_query_manager.add_where_clause('NVL (msn.organization_type, 2) = 2', 'ONHAND');
2871 IF inv_mwb_globals.g_view_by <> 'STATUS' THEN
2872 inv_mwb_query_manager.add_where_clause('msn.status_id = :msn_status_id','ONHAND');
2873 inv_mwb_query_manager.add_bind_variable('msn_status_id', inv_mwb_globals.g_status_id);
2874 END IF;
2875 end if;
2876 END IF;
2877
2878 /* Bug 8225619. Adding ELSE CONDITION code such that right side grid
2879 retrieves the organizations which are relevant to particular
2880 responsibility id and responisibility application id */
2881 IF inv_mwb_globals.g_organization_id IS NOT NULL THEN
2882 add_where_clause('msn.current_organization_id = :onh_organization_id', 'ONHAND');
2883 add_bind_variable('onh_organization_id', inv_mwb_globals.g_organization_id);
2884 ELSE
2885 add_where_clause(' EXISTS ( SELECT 1 FROM org_access_view oav WHERE oav.organization_id = msn.current_organization_id AND oav.responsibility_id = :responsibility_id AND oav.resp_application_id = :resp_application_id ) ', 'ONHAND');
2886 add_bind_variable('responsibility_id', inv_mwb_globals.g_responsibility_id);
2887 add_bind_variable('resp_application_id', inv_mwb_globals.g_resp_application_id);
2888 END IF;
2889 /* End of Bug 8225619. */
2890
2891 IF inv_mwb_globals.g_subinventory_code IS NOT NULL THEN
2892 add_where_clause('msn.current_subinventory_code = :onh_subinventory_code', 'ONHAND');
2893 add_bind_variable('onh_subinventory_code', inv_mwb_globals.g_subinventory_code);
2894 END IF;
2895
2896 IF inv_mwb_globals.g_locator_id IS NOT NULL THEN
2897 add_where_clause('msn.current_locator_id = :onh_locator_id', 'ONHAND');
2898 add_bind_variable('onh_locator_id', inv_mwb_globals.g_locator_id);
2899 END IF;
2900
2901 -- ER(9158529 client)
2902 IF inv_mwb_globals.g_client_code IS NOT NULL THEN
2903 add_where_clause('msn.inventory_item_id in (select DISTINCT inventory_item_id from mtl_system_items_b where wms_deploy.get_client_code(inventory_item_id) = :onh_client_code) ', 'ONHAND');
2904 add_bind_variable('onh_client_code', inv_mwb_globals.g_client_code);
2905 END IF;
2906 -- ER(9158529 client)
2907
2908 IF inv_mwb_globals.g_inventory_item_id IS NOT NULL THEN
2909 add_where_clause('msn.inventory_item_id = :onh_inventory_item_id', 'ONHAND');
2910 add_bind_variable('onh_inventory_item_id', inv_mwb_globals.g_inventory_item_id);
2911 END IF;
2912
2913 IF inv_mwb_globals.g_revision IS NOT NULL THEN
2914 add_where_clause('msn.revision = :onh_revision', 'ONHAND');
2915 add_bind_variable('onh_revision', inv_mwb_globals.g_revision);
2916 END IF;
2917
2918 IF inv_mwb_globals.g_cost_group_id IS NOT NULL THEN
2919 add_where_clause('msn.cost_group_id = :onh_cost_group_id', 'ONHAND');
2920 add_bind_variable('onh_cost_group_id', inv_mwb_globals.g_cost_group_id);
2921 END IF;
2922
2923 -- ER(9158529)
2924 IF inv_mwb_globals.g_category_set_id IS NOT NULL THEN
2925 add_where_clause('msn.inventory_item_id in '
2926 || ' (select DISTINCT inventory_item_id from mtl_item_categories '
2927 || ' where organization_id = :onh_organization_id '
2928 || ' and category_set_id = :onh_category_set_id '
2929 || ' and category_id = nvl(:onh_category_id, category_id)) ', 'ONHAND');
2930 add_bind_variable('onh_organization_id', inv_mwb_globals.g_organization_id);
2931 add_bind_variable('onh_category_set_id', inv_mwb_globals.g_category_set_id);
2932 add_bind_variable('onh_category_id', inv_mwb_globals.g_category_id);
2933 END IF;
2934 -- ER(9158529)
2935
2936 /*
2937
2938 BUG 8266074
2939 MSN does not have project and task still we are using the same ,
2940 saw this while testing bug 8208141 hence commenting the same
2941
2942 IF inv_mwb_globals.g_project_id IS NOT NULL THEN
2943 add_where_clause('msn.project_id = :onh_project_id', 'ONHAND');
2944 add_bind_variable('onh_project_id', inv_mwb_globals.g_project_id);
2945 END IF;
2946
2947 IF inv_mwb_globals.g_task_id IS NOT NULL THEN
2948 add_where_clause('msn.task_id = :onh_task_id', 'ONHAND');
2949 add_bind_variable('onh_task_id', inv_mwb_globals.g_task_id);
2950 END IF;
2951
2952 */
2953
2954 IF inv_mwb_globals.g_lpn_from_id IS NOT NULL
2955 OR inv_mwb_globals.g_lpn_to_id IS NOT NULL THEN
2956 inv_mwb_query_manager.add_from_clause(' wms_license_plate_numbers wlpn ','ONHAND');
2957 add_where_clause('msn.lpn_id = wlpn.lpn_id', 'ONHAND');
2958 add_where_clause('wlpn.lpn_context IN (1,9,11)', 'ONHAND');
2959 END IF;
2960
2961 IF inv_mwb_globals.g_tree_parent_lpn_id IS NULL THEN
2962 IF (inv_mwb_globals.g_lpn_from_id IS NOT NULL AND
2963 inv_mwb_globals.g_lpn_to_id IS NOT NULL AND
2964 inv_mwb_globals.g_lpn_from_id = inv_mwb_globals.g_lpn_to_id) THEN
2965 add_where_clause('msn.lpn_id = :onh_lpn_from_id', 'ONHAND');
2966 add_bind_variable('onh_lpn_from_id', inv_mwb_globals.g_lpn_from_id);
2967 END IF;
2968
2969 IF (inv_mwb_globals.g_lpn_from_id IS NOT NULL AND
2970 inv_mwb_globals.g_lpn_from_id <> NVL(inv_mwb_globals.g_lpn_to_id, -1) ) THEN
2971 add_where_clause('wlpn.license_plate_number >= :onh_lpn_from', 'ONHAND');
2972 add_bind_variable('onh_lpn_from', inv_mwb_globals.g_lpn_from);
2973 END IF;
2974
2975 IF (inv_mwb_globals.g_lpn_to_id IS NOT NULL AND
2976 inv_mwb_globals.g_lpn_to_id <> NVL(inv_mwb_globals.g_lpn_from_id, -1) ) THEN
2977 add_where_clause('wlpn.license_plate_number <= :onh_lpn_to', 'ONHAND');
2978 add_bind_variable('onh_lpn_to', inv_mwb_globals.g_lpn_to);
2979 END IF;
2980 END IF;
2981
2982 IF (inv_mwb_globals.g_lot_from IS NOT NULL AND
2983 inv_mwb_globals.g_lot_to IS NOT NULL AND
2984 inv_mwb_globals.g_lot_from = inv_mwb_globals.g_lot_to) THEN
2985 add_where_clause('msn.lot_number = :onh_lot_from', 'ONHAND');
2986 add_bind_variable('onh_lot_from', inv_mwb_globals.g_lot_from);
2987 END IF;
2988
2989 IF (inv_mwb_globals.g_lot_from IS NOT NULL AND
2990 inv_mwb_globals.g_lot_from <> NVL(inv_mwb_globals.g_lot_to, -1) ) THEN
2991 add_where_clause('msn.lot_number >= :onh_lot_from', 'ONHAND');
2992 add_bind_variable('onh_lot_from', inv_mwb_globals.g_lot_from);
2993 END IF;
2994
2995 IF (inv_mwb_globals.g_lot_to IS NOT NULL AND
2996 inv_mwb_globals.g_lot_to <> NVL(inv_mwb_globals.g_lot_from, -1) ) THEN
2997 add_where_clause('msn.lot_number <= :onh_lot_to', 'ONHAND');
2998 add_bind_variable('onh_lot_to', inv_mwb_globals.g_lot_to);
2999 END IF;
3000
3001 /* Bug 8396954, Adding below if condition for checking supplier_lot_number condition */
3002 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL OR
3003 inv_mwb_globals.g_supplier_lot_to IS NOT NULL ) THEN
3004 add_from_clause('mtl_lot_numbers mln3', 'ONHAND');
3005 add_where_clause('msn.lot_number = mln3.lot_number', 'ONHAND');
3006 add_where_clause('msn.inventory_item_id = mln3.inventory_item_id', 'ONHAND'); -- Bug 9927569
3007 add_where_clause('msn.current_organization_id = mln3.organization_id', 'ONHAND'); -- Bug 9927569
3008
3009 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL AND
3010 inv_mwb_globals.g_supplier_lot_to IS NOT NULL AND
3011 inv_mwb_globals.g_supplier_lot_from = inv_mwb_globals.g_supplier_lot_to) THEN
3012 add_where_clause('mln3.supplier_lot_number = :onh_supplier_lot_from', 'ONHAND');
3013 add_bind_variable('onh_supplier_lot_from', inv_mwb_globals.g_supplier_lot_from);
3014 END IF;
3015
3016 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL AND
3017 inv_mwb_globals.g_supplier_lot_from <> NVL(inv_mwb_globals.g_supplier_lot_to, -1) ) THEN
3018 add_where_clause('mln3.supplier_lot_number >= :onh_supplier_lot_from', 'ONHAND');
3019 add_bind_variable('onh_supplier_lot_from', inv_mwb_globals.g_supplier_lot_from);
3020 END IF;
3021
3022 IF (inv_mwb_globals.g_supplier_lot_to IS NOT NULL AND
3023 inv_mwb_globals.g_supplier_lot_to <> NVL(inv_mwb_globals.g_supplier_lot_from, -1) ) THEN
3024 add_where_clause('mln3.supplier_lot_number <= :onh_supplier_lot_to', 'ONHAND');
3025 add_bind_variable('onh_supplier_lot_to', inv_mwb_globals.g_supplier_lot_to);
3026 END IF;
3027 END IF ;
3028 /* End of Bug 8396954 */
3029 --KMOTUPAL ME # 3922793
3030 IF (inv_mwb_globals.g_expired_lots = 'Y') THEN
3031 add_from_clause('mtl_lot_numbers mln2', 'ONHAND');
3032 add_where_clause('msn.lot_number = mln2.lot_number', 'ONHAND');
3033 add_where_clause('msn.inventory_item_id = mln2.inventory_item_id', 'ONHAND');
3034 add_where_clause('msn.organization_id = mln2.organization_id', 'ONHAND');
3035 add_where_clause('mln2.expiration_date <= :expiration_date', 'ONHAND');
3036 add_bind_variable('expiration_date', inv_mwb_globals.g_expiration_date);
3037 END IF;
3038 --KMOTUPAL ME # 3922793
3039
3040 --BUG 7556505
3041 IF (inv_mwb_globals.g_parent_lot IS NOT NULL) THEN
3042 IF (inv_mwb_globals.g_expired_lots <> 'Y') THEN
3043 add_from_clause('mtl_lot_numbers mln2', 'ONHAND');
3044 add_where_clause('msn.lot_number = mln2.lot_number', 'ONHAND'); -- 9927659
3045 add_where_clause('msn.inventory_item_id = mln2.inventory_item_id', 'ONHAND'); -- 9927569
3046 add_where_clause('msn.current_organization_id = mln2.organization_id', 'ONHAND'); -- 9927569
3047 END IF;
3048 add_where_clause('mln2.parent_lot_number = :parent_lot_number', 'ONHAND');
3049 add_bind_variable('parent_lot_number', inv_mwb_globals.g_parent_lot);
3050 END IF;
3051
3052 --BUG 7556505
3053
3054 --bug # 6633612
3055 IF (inv_mwb_globals.g_shipment_header_id is not null) THEN
3056 add_from_clause('rcv_transactions rt', 'ONHAND');
3057 add_from_clause('mtl_material_transactions mmt', 'ONHAND');
3058 add_where_clause('rt.shipment_header_id = :shipment_header_id', 'ONHAND');
3059 add_where_clause('rt.transaction_id = mmt.rcv_transaction_id', 'ONHAND');
3060 add_where_clause('rt.organization_id = mmt.organization_id', 'ONHAND');
3061 add_where_clause('rt.transaction_type = ''DELIVER''', 'ONHAND');
3062 add_where_clause('rt.destination_type_code = ''INVENTORY''', 'ONHAND');
3063 add_where_clause('mmt.transaction_id = msn.last_transaction_id', 'ONHAND');
3064 add_where_clause('mmt.organization_id = msn.current_organization_id', 'ONHAND');
3065 add_bind_variable('shipment_header_id', inv_mwb_globals.g_shipment_header_id);
3066 END IF;
3067 --bug # 6633612
3068
3069 IF (inv_mwb_globals.g_serial_from IS NOT NULL AND
3070 inv_mwb_globals.g_serial_to IS NOT NULL AND
3071 inv_mwb_globals.g_serial_from = inv_mwb_globals.g_serial_to) THEN
3072 add_where_clause('msn.serial_number = :onh_serial_from', 'ONHAND');
3073 add_bind_variable('onh_serial_from', inv_mwb_globals.g_serial_from);
3074 END IF;
3075
3076 IF (inv_mwb_globals.g_serial_from IS NOT NULL AND
3077 inv_mwb_globals.g_serial_from <> NVL(inv_mwb_globals.g_serial_to, -1) ) THEN
3078 add_where_clause('msn.serial_number >= :onh_serial_from', 'ONHAND');
3079 add_bind_variable('onh_serial_from', inv_mwb_globals.g_serial_from);
3080 END IF;
3081
3082 IF (inv_mwb_globals.g_serial_to IS NOT NULL AND
3083 inv_mwb_globals.g_serial_to <> NVL(inv_mwb_globals.g_serial_from, -1) ) THEN
3084 add_where_clause('msn.serial_number <= :onh_serial_to', 'ONHAND');
3085 add_bind_variable('onh_serial_to', inv_mwb_globals.g_serial_to);
3086 END IF;
3087
3088 IF (inv_mwb_globals.g_serial_attr_query IS NOT NULL) THEN -- Bug 6429880 Changes starting
3089 add_where_clause(inv_mwb_globals.g_serial_attr_query, 'ONHAND');
3090 END IF; -- Bug 6429880 Changes ending
3091
3092 /* Bug 9486070. Added code for unit number field */
3093 IF (inv_mwb_globals.g_unit_number IS NOT NULL) THEN
3094 add_where_clause('msn.end_item_unit_number = :onh_unit_number', 'ONHAND');
3095 add_bind_variable('onh_unit_number', inv_mwb_globals.g_unit_number);
3096 END IF;
3097 /* End of Bug 9486070 */
3098
3099 IF (inv_mwb_globals.g_grade_from_code IS NOT NULL
3100 OR inv_mwb_globals.g_lot_context IS NOT NULL
3101 OR inv_mwb_globals.g_lot_attr_query IS NOT NULL) -- Bug 7566588
3102 AND inv_mwb_globals.g_status_id IS NULL THEN
3103 add_from_clause('mtl_lot_numbers mln', 'ONHAND');
3104 add_where_clause('msn.lot_number = mln.lot_number', 'ONHAND');
3105 add_where_clause('msn.inventory_item_id = mln.inventory_item_id', 'ONHAND');
3106 add_where_clause('msn.current_organization_id = mln.organization_id', 'ONHAND'); -- Bug 7566588
3107 END IF;
3108
3109 IF (inv_mwb_globals.g_grade_from_code IS NOT NULL) THEN
3110 add_where_clause('mln.grade_code = :onh_grade_from_code', 'ONHAND');
3111 add_bind_variable('onh_grade_from_code', inv_mwb_globals.g_grade_from_code);
3112 END IF;
3113
3114 IF (inv_mwb_globals.g_lot_context IS NOT NULL) THEN
3115 add_where_clause('mln.lot_attribute_category = :onh_lot_context', 'ONHAND');
3116 add_bind_variable('onh_lot_context', inv_mwb_globals.g_lot_context);
3117 END IF;
3118
3119 IF (inv_mwb_globals.g_lot_attr_query IS NOT NULL) THEN -- Bug 7566588 Changes Start
3120 add_where_clause(inv_mwb_globals.g_lot_attr_query, 'ONHAND');
3121 END IF; -- Bug 7566588 Changes End
3122
3123 IF inv_mwb_globals.g_owning_qry_mode = 2 THEN
3124 add_where_clause('msn.owning_tp_type = 1', 'ONHAND');
3125 ELSIF inv_mwb_globals.g_owning_qry_mode = 3 THEN
3126 add_where_clause('msn.owning_tp_type = 1', 'ONHAND');
3127 IF inv_mwb_globals.g_owning_org IS NOT NULL THEN
3128 add_where_clause('msn.owning_organization_id = :onh_owning_org_id', 'ONHAND');
3129 add_bind_variable('onh_owning_org_id', inv_mwb_globals.g_owning_org);
3130 END IF;
3131 END IF;
3132
3133 IF inv_mwb_globals.g_planning_query_mode = 2 THEN
3134 add_where_clause('msn.planning_tp_type = 1', 'ONHAND');
3135 ELSIF inv_mwb_globals.g_planning_query_mode = 3 THEN
3136 add_where_clause('msn.planning_tp_type = 1', 'ONHAND');
3137 IF inv_mwb_globals.g_planning_org IS NOT NULL THEN
3138 add_where_clause('msn.planning_organization_id = :onh_planning_org_id', 'ONHAND');
3139 add_bind_variable('onh_planning_org_id', inv_mwb_globals.g_planning_org);
3140 END IF;
3141 END IF;
3142
3143 END CASE;
3144
3145 END add_qf_where_onhand;
3146
3147 PROCEDURE add_qf_where_lpn_node(p_mat_loc IN VARCHAR2) IS
3148 query_str VARCHAR2(1000);
3149 flag_rcv BOOLEAN;
3150 flag_onh BOOLEAN;
3151 l_procedure_name VARCHAR2(30);
3152 l_serial_control NUMBER;
3153 BEGIN
3154 l_procedure_name := 'ADD_QF_WHERE_LPN_NODE';
3155 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'Entered with location : ' || p_mat_loc);
3156
3157 flag_rcv := FALSE;
3158 flag_onh := FALSE;
3159
3160 IF inv_mwb_globals.g_tree_item_id IS NOT NULL THEN
3161 SELECT serial_number_control_code
3162 INTO l_serial_control
3163 FROM mtl_system_items
3164 WHERE inventory_item_id = inv_mwb_globals.g_tree_item_id
3165 AND organization_id = inv_mwb_globals.g_tree_organization_id;
3166 END IF;
3167
3168 IF inv_mwb_globals.g_chk_onhand = 0 AND
3169 inv_mwb_globals.g_chk_receiving = 0 AND
3170 inv_mwb_globals.g_chk_inbound = 0 THEN
3171 null;
3172 ELSE
3173 IF inv_mwb_globals.g_tree_node_type = 'APPTREE_OBJECT_TRUNK'
3174 OR inv_mwb_globals.g_tree_node_type = 'ORG' THEN
3175
3176 query_str := ' wlpn.lpn_context IN ( ';
3177 IF inv_mwb_globals.g_chk_onhand = 1 THEN
3178 query_str := query_str || '1,9,11';
3179 flag_onh := TRUE;
3180 END IF;
3181
3182 IF inv_mwb_globals.g_chk_receiving = 1 THEN
3183 IF flag_onh THEN
3184 query_str := query_str || ',';
3185 END IF;
3186 query_str := query_str || '3';
3187 END IF;
3188
3189 IF inv_mwb_globals.g_chk_inbound = 1 THEN
3190 IF flag_onh or flag_rcv THEN
3191 query_str := query_str || ',';
3192 END IF;
3193 query_str := query_str || '6,7';
3194 END IF;
3195 query_str := query_str || ' ) ';
3196 add_where_clause(query_str, p_mat_loc);
3197 ELSE
3198 CASE inv_mwb_globals.g_tree_mat_loc_id
3199 WHEN 1 THEN
3200 add_where_clause('wlpn.lpn_context IN (1,9,11)', p_mat_loc);
3201 WHEN 2 THEN
3202 add_where_clause('wlpn.lpn_context = 3', p_mat_loc);
3203 WHEN 3 THEN
3204 add_where_clause('wlpn.lpn_context IN (6,7) ', p_mat_loc);
3205 END CASE;
3206 END IF;
3207 END IF;
3208 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'Adding tables to the query : ' || p_mat_loc);
3209 inv_mwb_query_manager.add_from_clause(' wms_license_plate_numbers wlpn ' , p_mat_loc);
3210 inv_mwb_query_manager.add_from_clause(' wms_lpn_contents wlc ', p_mat_loc);
3211 add_where_clause(' wlc.parent_lpn_id = wlpn.lpn_id ', p_mat_loc);
3212
3213 IF inv_mwb_globals.g_serial_from IS NOT NULL
3214 OR inv_mwb_globals.g_serial_to IS NOT NULL
3215 OR inv_mwb_globals.g_tree_serial_number IS NOT NULL
3216 OR l_serial_control IN (2, 5) THEN
3217 inv_mwb_query_manager.add_from_clause(' mtl_serial_numbers msn ',p_mat_loc);
3218 add_where_clause('msn.lpn_id = wlpn.lpn_id', p_mat_loc);
3219 add_where_clause('msn.current_organization_id = wlc.organization_id', p_mat_loc);
3220 add_where_clause('msn.inventory_item_id = wlc.inventory_item_id', p_mat_loc);
3221
3222 IF inv_mwb_globals.g_chk_onhand = 0 AND
3223 inv_mwb_globals.g_chk_receiving = 0 AND
3224 inv_mwb_globals.g_chk_inbound = 0 THEN
3225 null;
3226 ELSE
3227 query_str := 'msn.current_status = ';
3228 IF inv_mwb_globals.g_chk_onhand = 1 THEN
3229 query_str := query_str || '3';
3230 flag_onh := TRUE;
3231 END IF;
3232
3233 IF inv_mwb_globals.g_chk_inbound = 1
3234 OR inv_mwb_globals.g_chk_receiving = 1 THEN
3235 IF flag_onh or flag_rcv THEN
3236 query_str := query_str || ',';
3237 END IF;
3238 query_str := query_str || '5';
3239 END IF;
3240 add_where_clause(query_str, p_mat_loc);
3241 END IF;
3242 END IF;
3243
3244 IF inv_mwb_globals.g_project_id IS NOT NULL
3245 OR inv_mwb_globals.g_task_id IS NOT NULL THEN
3246 inv_mwb_query_manager.add_from_clause(' mtl_item_locations mil ',p_mat_loc);
3247 add_where_clause('msn.lpn_id = wlpn.lpn_id', p_mat_loc);
3248 add_where_clause('mil.organization_id = wlc.organization_id', p_mat_loc);
3249 add_where_clause('wlpn.locator = mil.inventory_location_id', p_mat_loc);
3250 END IF;
3251
3252 IF inv_mwb_globals.g_project_id IS NOT NULL THEN
3253 add_where_clause('mil.project_id = :project_id', p_mat_loc);
3254 add_bind_variable('project_id', inv_mwb_globals.g_project_id);
3255 END IF;
3256
3257 IF inv_mwb_globals.g_task_id IS NOT NULL THEN
3258 add_where_clause('mil.task_id = :task_id', p_mat_loc);
3259 add_bind_variable('task_id', inv_mwb_globals.g_task_id);
3260 END IF;
3261
3262 IF inv_mwb_globals.g_organization_id IS NOT NULL THEN
3263 add_where_clause('wlpn.organization_id = :to_organization_id', p_mat_loc);
3264 add_bind_variable('to_organization_id', inv_mwb_globals.g_organization_id);
3265 END IF;
3266
3267 IF inv_mwb_globals.g_subinventory_code IS NOT NULL THEN
3268 add_where_clause('wlpn.subinventory_code = :to_subinventory_code', p_mat_loc);
3269 add_bind_variable('to_subinventory_code', inv_mwb_globals.g_subinventory_code);
3270 END IF;
3271
3272 IF inv_mwb_globals.g_locator_id IS NOT NULL THEN
3273 add_where_clause('wlpn.locator_id = :to_locator_id', p_mat_loc);
3274 add_bind_variable('to_locator_id', inv_mwb_globals.g_locator_id);
3275 END IF;
3276
3277 -- ER(9158529 client)
3278 IF inv_mwb_globals.g_client_code IS NOT NULL THEN
3279 add_where_clause('wlc.inventory_item_id in (select DISTINCT inventory_item_id from mtl_system_items_b where wms_deploy.get_client_code(inventory_item_id) = :client_code) ', p_mat_loc);
3280 add_bind_variable('client_code', inv_mwb_globals.g_client_code);
3281 END IF;
3282 -- ER(9158529 client)
3283
3284 IF inv_mwb_globals.g_inventory_item_id IS NOT NULL THEN
3285 add_where_clause('wlc.inventory_item_id = :inventory_item_id', p_mat_loc);
3286 add_bind_variable('inventory_item_id', inv_mwb_globals.g_inventory_item_id);
3287 END IF;
3288
3289 IF inv_mwb_globals.g_revision IS NOT NULL THEN
3290 add_where_clause('wlpn.revision = :revision', p_mat_loc);
3291 add_bind_variable('revision', inv_mwb_globals.g_revision);
3292 END IF;
3293
3294 IF inv_mwb_globals.g_cost_group_id IS NOT NULL THEN
3295 add_where_clause('wlpn.cost_group_id = :cost_group_id', 'INBOUND');
3296 add_bind_variable('cost_group_id', inv_mwb_globals.g_cost_group_id);
3297 END IF;
3298
3299 -- ER(9158529)
3300 IF inv_mwb_globals.g_category_set_id IS NOT NULL THEN
3301 add_where_clause('wlc.inventory_item_id in '
3302 || ' (select DISTINCT inventory_item_id from mtl_item_categories '
3303 || ' where organization_id = :to_organization_id '
3304 || ' and category_set_id = :category_set_id '
3305 || ' and category_id = nvl(:category_id, category_id))', p_mat_loc);
3306 add_bind_variable('to_organization_id', inv_mwb_globals.g_organization_id);
3307 add_bind_variable('category_set_id', inv_mwb_globals.g_category_set_id);
3308 add_bind_variable('category_id', inv_mwb_globals.g_category_id);
3309 END IF;
3310 -- ER(9158529)
3311
3312 IF (inv_mwb_globals.g_lpn_from_id IS NOT NULL AND
3313 inv_mwb_globals.g_lpn_to_id IS NOT NULL AND
3314 inv_mwb_globals.g_lpn_from_id = inv_mwb_globals.g_lpn_to_id) THEN
3315 add_where_clause('wlpn.lpn_id = :onh_lpn_from_id', p_mat_loc);
3316 add_bind_variable('onh_lpn_from_id', inv_mwb_globals.g_lpn_from_id);
3317 END IF;
3318
3319 IF (inv_mwb_globals.g_lpn_from_id IS NOT NULL AND
3320 inv_mwb_globals.g_lpn_from_id <> NVL(inv_mwb_globals.g_lpn_to_id, -1) ) THEN
3321 add_where_clause('wlpn.license_plate_number >= :onh_lpn_from', p_mat_loc);
3322 add_bind_variable('onh_lpn_from', inv_mwb_globals.g_lpn_from);
3323 END IF;
3324
3325 IF (inv_mwb_globals.g_lpn_to_id IS NOT NULL AND
3326 inv_mwb_globals.g_lpn_to_id <> NVL(inv_mwb_globals.g_lpn_from_id, -1) ) THEN
3327 add_where_clause('wlpn.license_plate_number <= :onh_lpn_to', p_mat_loc);
3328 add_bind_variable('onh_lpn_to', inv_mwb_globals.g_lpn_to);
3329 END IF;
3330
3331 /*
3332
3333 IF (inv_mwb_globals.g_lpn_from IS NOT NULL AND
3334 inv_mwb_globals.g_lpn_to IS NOT NULL AND
3335 inv_mwb_globals.g_lpn_from = inv_mwb_globals.g_lpn_to) THEN
3336 add_where_clause('wlpn.lpn_id = :lpn_from_id', p_mat_loc);
3337 add_bind_variable('lpn_from_id', inv_mwb_globals.g_lpn_from_id);
3338 END IF;
3339
3340 IF (inv_mwb_globals.g_lpn_from_id IS NOT NULL AND
3341 inv_mwb_globals.g_lpn_from_id <> NVL(inv_mwb_globals.g_lpn_to_id, -1) ) THEN
3342 add_where_clause('wlpn.lpn_id >= :lpn_from_id', p_mat_loc);
3343 add_bind_variable('lpn_from_id', inv_mwb_globals.g_lpn_from_id);
3344 END IF;
3345
3346 IF (inv_mwb_globals.g_lpn_to_id IS NOT NULL AND
3347 inv_mwb_globals.g_lpn_to_id <> NVL(inv_mwb_globals.g_lpn_from_id, -1) ) THEN
3348 add_where_clause('wlpn.lpn_id <= :lpn_to_id', p_mat_loc);
3349 add_bind_variable('lpn_to_id', inv_mwb_globals.g_lpn_to_id);
3350 END IF;
3351 */
3352
3353 IF (inv_mwb_globals.g_lot_from IS NOT NULL AND
3354 inv_mwb_globals.g_lot_to IS NOT NULL AND
3355 inv_mwb_globals.g_lot_from = inv_mwb_globals.g_lot_to) THEN
3356 add_where_clause('wlc.lot_number = :lot_from', p_mat_loc);
3357 add_bind_variable('lot_from', inv_mwb_globals.g_lot_from);
3358 END IF;
3359
3360 IF (inv_mwb_globals.g_lot_from IS NOT NULL AND
3361 inv_mwb_globals.g_lot_from <> NVL(inv_mwb_globals.g_lot_to, -1) ) THEN
3362 add_where_clause('wlc.lot_number >= :lot_from', p_mat_loc);
3363 add_bind_variable('lot_from', inv_mwb_globals.g_lot_from);
3364 END IF;
3365
3366 IF (inv_mwb_globals.g_lot_to IS NOT NULL AND
3367 inv_mwb_globals.g_lot_to <> NVL(inv_mwb_globals.g_lot_from, -1) ) THEN
3368 add_where_clause('wlc.lot_number <= :lot_to', p_mat_loc);
3369 add_bind_variable('lot_to', inv_mwb_globals.g_lot_to);
3370 END IF;
3371
3372 /* Bug 8396954, Adding below if condition for checking supplier_lot_number condition */
3373 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL OR
3374 inv_mwb_globals.g_supplier_lot_to IS NOT NULL ) THEN
3375 inv_mwb_query_manager.add_from_clause('mtl_lot_numbers mln3', p_mat_loc);
3376 add_where_clause('wlc.lot_number = mln3.lot_number',p_mat_loc);
3377 add_where_clause('wlc.inventory_item_id = mln3.inventory_item_id', p_mat_loc); -- Bug 9927569
3378 add_where_clause('wlc.organization_id = mln3.organization_id', p_mat_loc); -- Bug 9927569
3379
3380 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL AND
3381 inv_mwb_globals.g_supplier_lot_to IS NOT NULL AND
3382 inv_mwb_globals.g_supplier_lot_from = inv_mwb_globals.g_supplier_lot_to) THEN
3383 add_where_clause('mln3.supplier_lot_number = :supplier_lot_from', p_mat_loc);
3384 add_bind_variable('supplier_lot_from', inv_mwb_globals.g_supplier_lot_from);
3385 END IF;
3386
3387 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL AND
3388 inv_mwb_globals.g_supplier_lot_from <> NVL(inv_mwb_globals.g_supplier_lot_to, -1) ) THEN
3389 add_where_clause('mln3.supplier_lot_number >= :supplier_lot_from', p_mat_loc);
3390 add_bind_variable('supplier_lot_from', inv_mwb_globals.g_supplier_lot_from);
3391 END IF;
3392
3393 IF (inv_mwb_globals.g_supplier_lot_to IS NOT NULL AND
3394 inv_mwb_globals.g_supplier_lot_to <> NVL(inv_mwb_globals.g_supplier_lot_from, -1) ) THEN
3395 add_where_clause('mln3.supplier_lot_number <= :supplier_lot_to', p_mat_loc);
3396 add_bind_variable('supplier_lot_to', inv_mwb_globals.g_supplier_lot_to);
3397 END IF;
3398 END IF;
3399 /* End of Bug 8396954 */
3400
3401 IF (inv_mwb_globals.g_serial_from IS NOT NULL AND
3402 inv_mwb_globals.g_serial_to IS NOT NULL AND
3403 inv_mwb_globals.g_serial_from = inv_mwb_globals.g_serial_to) THEN
3404 add_where_clause('msn.serial_number = :serial_from', p_mat_loc);
3405 add_bind_variable('serial_from', inv_mwb_globals.g_serial_from);
3406 END IF;
3407
3408 IF (inv_mwb_globals.g_serial_from IS NOT NULL AND
3409 inv_mwb_globals.g_serial_from <> NVL(inv_mwb_globals.g_serial_to, -1) ) THEN
3410 add_where_clause('msn.serial_number >= :serial_from', p_mat_loc);
3411 add_bind_variable('serial_from', inv_mwb_globals.g_serial_from);
3412 END IF;
3413
3414 IF (inv_mwb_globals.g_serial_to IS NOT NULL AND
3415 inv_mwb_globals.g_serial_to <> NVL(inv_mwb_globals.g_serial_from, -1) ) THEN
3416 add_where_clause('msn.serial_number <= :serial_to', p_mat_loc);
3417 add_bind_variable('serial_to', inv_mwb_globals.g_serial_to);
3418 END IF;
3419
3420 /* Bug 5448079 */
3421 /*IF (inv_mwb_globals.g_qty_from IS NOT NULL AND
3422 inv_mwb_globals.g_qty_to IS NOT NULL AND
3423 inv_mwb_globals.g_qty_from = inv_mwb_globals.g_qty_to) THEN
3424 add_where_clause('wlc.quantity = :qty_from', p_mat_loc);
3425 add_bind_variable('qty_from', inv_mwb_globals.g_qty_from);
3426 END IF;
3427
3428 IF (inv_mwb_globals.g_qty_from IS NOT NULL AND
3429 inv_mwb_globals.g_qty_from <> NVL(inv_mwb_globals.g_qty_to, -1) ) THEN
3430 add_where_clause('wlc.quantity >= :qty_from', p_mat_loc);
3431 add_bind_variable('qty_from', inv_mwb_globals.g_qty_from);
3432 END IF;
3433
3434 IF (inv_mwb_globals.g_qty_to IS NOT NULL AND
3435 inv_mwb_globals.g_qty_to <> NVL(inv_mwb_globals.g_qty_from, -1) ) THEN
3436 add_where_clause('wlc.quantity <= :qty_to', p_mat_loc);
3437 add_bind_variable('qty_to', inv_mwb_globals.g_qty_to);
3438 END IF; */
3439 /* End of Bug 5448079 */
3440 END add_qf_where_lpn_node;
3441
3442
3443 PROCEDURE add_qf_where_receiving(p_flag VARCHAR2) IS
3444 l_procedure_name VARCHAR2(30);
3445 l_serial_control NUMBER;
3446 l_lot_control NUMBER;
3447 BEGIN
3448 l_procedure_name := 'ADD_QF_WHERE_RECEIVING';
3449 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'Entered');
3450
3451 BEGIN
3452 SELECT lot_control_code,
3453 serial_number_control_code
3454 INTO l_lot_control,
3455 l_serial_control
3456 FROM mtl_system_items
3457 WHERE inventory_item_id = inv_mwb_globals.g_tree_item_id
3458 AND organization_id = inv_mwb_globals.g_tree_organization_id;
3459 EXCEPTION
3460 WHEN NO_DATA_FOUND THEN
3461 NULL;
3462 END;
3463
3464 IF p_flag = 'TREE_LPN' THEN
3465 null;
3466 ELSIF p_flag = 'RECEIVING' THEN
3467 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'Addding table');
3468 inv_mwb_query_manager.add_from_clause(' rcv_supply rs ','RECEIVING');
3469 IF (inv_mwb_globals.g_lot_from IS NOT NULL
3470 OR inv_mwb_globals.g_lot_to IS NOT NULL)
3471 OR l_lot_control = 2 THEN
3472 inv_mwb_query_manager.add_from_clause('rcv_lots_supply rls','RECEIVING');
3473 add_where_clause('rls.shipment_line_id(+) = rs.shipment_line_id', 'RECEIVING');
3474
3475 -- 9720688 start
3476 -- Following condition is added to avoid considering same
3477 -- receive transaction mutiple times while displaying results for an over
3478 -- receipt in the material workbench form
3479 add_where_clause('rls.transaction_id(+) = rs.rcv_transaction_id', 'RECEIVING');
3480 -- 9720688 end
3481
3482 IF inv_mwb_globals.g_tree_lot_number IS NULL THEN
3483
3484 IF (inv_mwb_globals.g_lot_from IS NOT NULL AND
3485 inv_mwb_globals.g_lot_to IS NOT NULL AND
3486 inv_mwb_globals.g_lot_from = inv_mwb_globals.g_lot_to) THEN
3487 -- Bug 9865190 Start
3488 IF inv_mwb_globals.g_wms_enabled_flag = 1 THEN
3489 inv_mwb_query_manager.g_receiving_select(inv_mwb_query_manager.RECEIVING).column_value :=
3490 'SUM(rls.primary_quantity)';
3491 inv_mwb_query_manager.add_where_clause('rls.supply_type_code = ''RECEIVING''', 'RECEIVING');
3492 inv_mwb_query_manager.g_receiving_select(inv_mwb_query_manager.UNPACKED).column_value :=
3493 'SUM(DECODE (rs.lpn_id, null, rls.primary_quantity, 0))';
3494 inv_mwb_query_manager.g_receiving_select(inv_mwb_query_manager.PACKED).column_value :=
3495 'SUM(DECODE (rs.lpn_id, null, 0, rls.primary_quantity))';
3496 inv_mwb_query_manager.g_receiving_select(inv_mwb_query_manager.SECONDARY_RECEIVING).column_value :=
3497 'SUM(rls.secondary_quantity)'; -- 8687440
3498 inv_mwb_query_manager.g_receiving_select(inv_mwb_query_manager.SECONDARY_UNPACKED).column_value :=
3499 'SUM(DECODE (rs.lpn_id, null, rls.secondary_quantity, 0))'; -- 8687440
3500 inv_mwb_query_manager.g_receiving_select(inv_mwb_query_manager.SECONDARY_PACKED).column_value :=
3501 'SUM(DECODE (rs.lpn_id, null, 0, rls.secondary_quantity))'; -- 8687440
3502 END IF;
3503 -- Bug 9865190 End
3504 add_where_clause('rls.lot_num = :rcv_lot_from', 'RECEIVING');
3505 add_bind_variable('rcv_lot_from', inv_mwb_globals.g_lot_from);
3506 END IF;
3507
3508 IF (inv_mwb_globals.g_lot_from IS NOT NULL AND
3509 inv_mwb_globals.g_lot_from <> NVL(inv_mwb_globals.g_lot_to, -1) ) THEN
3510 -- Bug 9865190 Start
3511 IF inv_mwb_globals.g_wms_enabled_flag = 1 THEN
3512 inv_mwb_query_manager.g_receiving_select(inv_mwb_query_manager.RECEIVING).column_value :=
3513 'SUM(rls.primary_quantity)';
3514 inv_mwb_query_manager.add_where_clause('rls.supply_type_code = ''RECEIVING''', 'RECEIVING');
3515 inv_mwb_query_manager.g_receiving_select(inv_mwb_query_manager.UNPACKED).column_value :=
3516 'SUM(DECODE (rs.lpn_id, null, rls.primary_quantity, 0))';
3517 inv_mwb_query_manager.g_receiving_select(inv_mwb_query_manager.PACKED).column_value :=
3518 'SUM(DECODE (rs.lpn_id, null, 0, rls.primary_quantity))';
3519 END IF;
3520 -- Bug 9865190 End
3521 add_where_clause('rls.lot_num >= :rcv_lot_from', 'RECEIVING');
3522 add_bind_variable('rcv_lot_from', inv_mwb_globals.g_lot_from);
3523 END IF;
3524
3525 IF (inv_mwb_globals.g_lot_to IS NOT NULL AND
3526 inv_mwb_globals.g_lot_to <> NVL(inv_mwb_globals.g_lot_from, -1) ) THEN
3527 -- Bug 9865190 Start
3528 IF inv_mwb_globals.g_wms_enabled_flag = 1 THEN
3529 inv_mwb_query_manager.g_receiving_select(inv_mwb_query_manager.RECEIVING).column_value :=
3530 'SUM(rls.primary_quantity)';
3531 inv_mwb_query_manager.add_where_clause('rls.supply_type_code = ''RECEIVING''', 'RECEIVING');
3532 inv_mwb_query_manager.g_receiving_select(inv_mwb_query_manager.UNPACKED).column_value :=
3533 'SUM(DECODE (rs.lpn_id, null, rls.primary_quantity, 0))';
3534 inv_mwb_query_manager.g_receiving_select(inv_mwb_query_manager.PACKED).column_value :=
3535 'SUM(DECODE (rs.lpn_id, null, 0, rls.primary_quantity))';
3536 END IF;
3537 -- Bug 9865190 End
3538 add_where_clause('rls.lot_num <= :rcv_lot_to', 'RECEIVING');
3539 add_bind_variable('rcv_lot_to', inv_mwb_globals.g_lot_to);
3540 END IF;
3541 END IF;
3542 END IF;
3543
3544 /* Bug 8396954, Adding below if condition for checking supplier_lot_number condition */
3545 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL OR
3546 inv_mwb_globals.g_supplier_lot_to IS NOT NULL ) THEN
3547 inv_mwb_query_manager.add_from_clause('mtl_lot_numbers mln3', 'RECEIVING');
3548 inv_mwb_query_manager.add_from_clause('rcv_lots_supply rls1','RECEIVING');
3549 add_where_clause('rls1.shipment_line_id(+) = rs.shipment_line_id', 'RECEIVING');
3550 add_where_clause('mln3.lot_number = rls1.lot_num', 'RECEIVING');
3551 add_where_clause('rs.item_id = mln3.inventory_item_id', 'RECEIVING'); -- Bug 9927569
3552 add_where_clause('rs.to_organization_id = mln3.organization_id', 'RECEIVING'); -- Bug 9927569
3553
3554
3555 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL AND
3556 inv_mwb_globals.g_supplier_lot_to IS NOT NULL AND
3557 inv_mwb_globals.g_supplier_lot_from = inv_mwb_globals.g_supplier_lot_to) THEN
3558 add_where_clause('mln3.supplier_lot_number = :rcv_supplier_lot_from', 'RECEIVING');
3559 add_bind_variable('rcv_supplier_lot_from', inv_mwb_globals.g_supplier_lot_from);
3560 END IF;
3561
3562 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL AND
3563 inv_mwb_globals.g_supplier_lot_from <> NVL(inv_mwb_globals.g_supplier_lot_to, -1) ) THEN
3564 add_where_clause('mln3.supplier_lot_number >= :rcv_supplier_lot_from', 'RECEIVING');
3565 add_bind_variable('rcv_supplier_lot_from', inv_mwb_globals.g_supplier_lot_from);
3566 END IF;
3567
3568 IF (inv_mwb_globals.g_supplier_lot_to IS NOT NULL AND
3569 inv_mwb_globals.g_supplier_lot_to <> NVL(inv_mwb_globals.g_supplier_lot_from, -1) ) THEN
3570 add_where_clause('mln3.supplier_lot_number <= :rcv_supplier_lot_to', 'RECEIVING');
3571 add_bind_variable('rcv_supplier_lot_to', inv_mwb_globals.g_supplier_lot_to);
3572 END IF;
3573 END IF ;
3574 /* End of Bug 8396954 */
3575
3576 /* Bug 8225619. Adding ELSE CONDITION code such that right side grid
3577 retrieves the organizations which are relevant to particular
3578 responsibility id and responisibility application id */
3579 IF inv_mwb_globals.g_organization_id IS NOT NULL THEN
3580 add_where_clause('rs.to_organization_id = :rcv_to_organization_id', 'RECEIVING');
3581 add_bind_variable('rcv_to_organization_id', inv_mwb_globals.g_organization_id);
3582 ELSE
3583 add_where_clause(' EXISTS ( SELECT 1 FROM org_access_view oav WHERE oav.organization_id = rs.to_organization_id AND oav.responsibility_id = :responsibility_id AND oav.resp_application_id = :resp_application_id ) ', 'RECEIVING');
3584 add_bind_variable('responsibility_id', inv_mwb_globals.g_responsibility_id);
3585 add_bind_variable('resp_application_id', inv_mwb_globals.g_resp_application_id);
3586 END IF;
3587 /* End of Bug 8225619*/
3588
3589 IF inv_mwb_globals.g_subinventory_code IS NOT NULL THEN
3590 add_where_clause('rs.to_subinventory = :rcv_to_subinventory_code', 'RECEIVING');
3591 add_bind_variable('rcv_to_subinventory_code', inv_mwb_globals.g_subinventory_code);
3592 END IF;
3593
3594 IF inv_mwb_globals.g_locator_id IS NOT NULL THEN
3595 add_where_clause('rs.to_locator_id = :rcv_to_locator_id', 'RECEIVING');
3596 add_bind_variable('rcv_to_locator_id', inv_mwb_globals.g_locator_id);
3597 END IF;
3598
3599 -- ER(9158529 client)
3600 IF inv_mwb_globals.g_client_code IS NOT NULL THEN
3601 add_where_clause('rs.item_id in (select DISTINCT inventory_item_id from mtl_system_items_b where wms_deploy.get_client_code(inventory_item_id) = :rcv_client_code) ', 'RECEIVING');
3602 add_bind_variable('rcv_client_code', inv_mwb_globals.g_client_code);
3603 END IF;
3604 -- ER(9158529 client)
3605
3606 IF inv_mwb_globals.g_inventory_item_id IS NOT NULL THEN
3607 add_where_clause('rs.item_id = :rcv_item_id', 'RECEIVING');
3608 add_bind_variable('rcv_item_id', inv_mwb_globals.g_inventory_item_id);
3609 END IF;
3610
3611 --Bug 14548684 add view mtl_system_items_vl to support multi-language
3612 IF inv_mwb_globals.g_inventory_item_id IS NULL
3613 AND inv_mwb_globals.g_item_description IS NOT NULL THEN
3614 inv_mwb_query_manager.add_from_clause('mtl_system_items_b msib','RECEIVING');
3615 inv_mwb_query_manager.add_from_clause('mtl_system_items_vl msiv', 'RECEIVING');
3616 add_where_clause('msib.inventory_item_id = rs.item_id', 'RECEIVING');
3617 add_where_clause('msib.organization_id = rs.to_organization_id', 'RECEIVING');
3618 add_where_clause('msib.inventory_item_id = msiv.inventory_item_id', 'RECEIVING');
3619 add_where_clause('msib.organization_id = msiv.organization_id', 'RECEIVING');
3620 add_where_clause('upper(msiv.description) LIKE upper(:rcv_item_description)', 'RECEIVING');--Bug 14177143
3621 add_bind_variable('rcv_item_description', inv_mwb_globals.g_item_description);
3622 END IF;
3623
3624 IF inv_mwb_globals.g_revision IS NOT NULL THEN
3625 add_where_clause('rs.item_revision = :rcv_item_revision', 'RECEIVING');
3626 add_bind_variable('rcv_item_revision', inv_mwb_globals.g_revision);
3627 END IF;
3628
3629 -- ER(9158529)
3630 IF inv_mwb_globals.g_category_set_id IS NOT NULL THEN
3631 add_where_clause('rs.item_id in '
3632 || ' (select DISTINCT inventory_item_id from mtl_item_categories '
3633 || ' where organization_id = :rcv_to_organization_id '
3634 || ' and category_set_id = :rcv_category_set_id '
3635 || ' and category_id = nvl(:rcv_category_id, category_id))', 'RECEIVING');
3636 add_bind_variable('rcv_to_organization_id', inv_mwb_globals.g_organization_id);
3637 add_bind_variable('rcv_category_set_id', inv_mwb_globals.g_category_set_id);
3638 add_bind_variable('rcv_category_id', inv_mwb_globals.g_category_id);
3639 END IF;
3640 -- ER(9158529)
3641
3642 IF inv_mwb_globals.g_lpn_from_id IS NOT NULL
3643 OR inv_mwb_globals.g_lpn_to_id IS NOT NULL THEN
3644 inv_mwb_query_manager.add_from_clause(' wms_license_plate_numbers wlpn ','RECEIVING');
3645 add_where_clause('rs.lpn_id = wlpn.lpn_id', 'RECEIVING');
3646 END IF;
3647
3648 IF (inv_mwb_globals.g_lpn_from_id IS NOT NULL AND
3649 inv_mwb_globals.g_lpn_to_id IS NOT NULL AND
3650 inv_mwb_globals.g_lpn_from_id = inv_mwb_globals.g_lpn_to_id) THEN
3651 add_where_clause('rs.lpn_id = :rcv_lpn_from_id', 'RECEIVING');
3652 add_bind_variable('rcv_lpn_from_id', inv_mwb_globals.g_lpn_from_id);
3653 END IF;
3654
3655 IF (inv_mwb_globals.g_lpn_from_id IS NOT NULL AND
3656 inv_mwb_globals.g_lpn_from_id <> NVL(inv_mwb_globals.g_lpn_to_id, -1) ) THEN
3657 add_where_clause('wlpn.license_plate_number >= :rcv_lpn_from', 'RECEIVING');
3658 add_bind_variable('rcv_lpn_from', inv_mwb_globals.g_lpn_from);
3659 END IF;
3660
3661 IF (inv_mwb_globals.g_lpn_to_id IS NOT NULL AND
3662 inv_mwb_globals.g_lpn_to_id <> NVL(inv_mwb_globals.g_lpn_from_id, -1) ) THEN
3663 add_where_clause('wlpn.license_plate_number <= :rcv_lpn_to', 'RECEIVING');
3664 add_bind_variable('rcv_lpn_to', inv_mwb_globals.g_lpn_to);
3665 END IF;
3666
3667 ELSIF p_flag = 'MSN_RECEIVING' THEN
3668
3669 inv_mwb_query_manager.add_from_clause(' mtl_serial_numbers msn ','RECEIVING');
3670 add_where_clause('msn.current_status = 7', 'RECEIVING');
3671
3672 /* Bug 8225619. Adding ELSE CONDITION code such that right side grid
3673 retrieves the organizations which are relevant to particular
3674 responsibility id and responisibility application id */
3675 IF inv_mwb_globals.g_organization_id IS NOT NULL THEN
3676 add_where_clause('msn.current_organization_id = :rcv_to_organization_id', 'RECEIVING');
3677 add_bind_variable('rcv_to_organization_id', inv_mwb_globals.g_organization_id);
3678 ELSE
3679 add_where_clause(' EXISTS ( SELECT 1 FROM org_access_view oav WHERE oav.organization_id = msn.current_organization_id AND oav.responsibility_id = :responsibility_id AND oav.resp_application_id = :resp_application_id ) ', 'RECEIVING');
3680 add_bind_variable('responsibility_id', inv_mwb_globals.g_responsibility_id);
3681 add_bind_variable('resp_application_id', inv_mwb_globals.g_resp_application_id);
3682 END IF;
3683 /* End of Bug 8225619*/
3684
3685 IF inv_mwb_globals.g_subinventory_code IS NOT NULL THEN
3686 add_where_clause('msn.current_subinventory_code = :rcv_to_subinventory_code', 'RECEIVING');
3687 add_bind_variable('rcv_to_subinventory_code', inv_mwb_globals.g_subinventory_code);
3688 END IF;
3689
3690 IF inv_mwb_globals.g_locator_id IS NOT NULL THEN
3691 add_where_clause('msn.current_locator_id = :rcv_to_locator_id', 'RECEIVING');
3692 add_bind_variable('rcv_to_locator_id', inv_mwb_globals.g_locator_id);
3693 END IF;
3694
3695 -- ER(9158529 client)
3696 IF inv_mwb_globals.g_client_code IS NOT NULL THEN
3697 add_where_clause('msn.inventory_item_id in (select DISTINCT inventory_item_id from mtl_system_items_b where wms_deploy.get_client_code(inventory_item_id) = :rcv_client_code) ', 'RECEIVING');
3698 add_bind_variable('rcv_client_code', inv_mwb_globals.g_client_code);
3699 END IF;
3700 -- ER(9158529 client)
3701
3702 IF inv_mwb_globals.g_inventory_item_id IS NOT NULL THEN
3703 add_where_clause('msn.inventory_item_id = :rcv_item_id', 'RECEIVING');
3704 add_bind_variable('rcv_item_id', inv_mwb_globals.g_inventory_item_id);
3705 END IF;
3706
3707 --Bug 14548684 add view mtl_system_items_vl to support multi-language
3708 IF inv_mwb_globals.g_inventory_item_id IS NULL
3709 AND inv_mwb_globals.g_item_description IS NOT NULL THEN
3710 inv_mwb_query_manager.add_from_clause('mtl_system_items_kfv msik','RECEIVING');
3711 inv_mwb_query_manager.add_from_clause('mtl_system_items_vl msiv', 'RECEIVING');
3712 add_where_clause('msik.inventory_item_id = msn.inventory_item_id', 'RECEIVING');
3713 add_where_clause('msik.organization_id = msn.current_organization_id', 'RECEIVING');
3714 add_where_clause('msik.inventory_item_id = msiv.inventory_item_id', 'RECEIVING');
3715 add_where_clause('msik.organization_id = msiv.organization_id', 'RECEIVING');
3716 add_where_clause('upper(msiv.description) LIKE upper('':rcv_item_description'')', 'RECEIVING');--Bug 14177143
3717 add_bind_variable('rcv_item_description', inv_mwb_globals.g_item_description);
3718 END IF;
3719
3720 IF inv_mwb_globals.g_revision IS NOT NULL THEN
3721 add_where_clause('msn.revision = :rcv_item_revision', 'RECEIVING');
3722 add_bind_variable('rcv_item_revision', inv_mwb_globals.g_revision);
3723 END IF;
3724
3725 -- ER(9158529)
3726 IF inv_mwb_globals.g_category_set_id IS NOT NULL THEN
3727 add_where_clause('msn.inventory_item_id in '
3728 || ' (select DISTINCT inventory_item_id from mtl_item_categories '
3729 || ' where organization_id = :rcv_to_organization_id '
3730 || ' and category_set_id = :rcv_category_set_id '
3731 || ' and category_id = nvl(:rcv_category_id, category_id))', 'RECEIVING');
3732 add_bind_variable('rcv_to_organization_id', inv_mwb_globals.g_organization_id);
3733 add_bind_variable('rcv_category_set_id', inv_mwb_globals.g_category_set_id);
3734 add_bind_variable('rcv_category_id', inv_mwb_globals.g_category_id);
3735 END IF;
3736 -- ER(9158529)
3737
3738 IF inv_mwb_globals.g_lpn_from_id IS NOT NULL
3739 OR inv_mwb_globals.g_lpn_to_id IS NOT NULL THEN
3740 inv_mwb_query_manager.add_from_clause(' wms_license_plate_numbers wlpn ','RECEIVING');
3741 add_where_clause('msn.lpn_id = wlpn.lpn_id', 'RECEIVING');
3742 END IF;
3743
3744 IF (inv_mwb_globals.g_lpn_from_id IS NOT NULL AND
3745 inv_mwb_globals.g_lpn_to_id IS NOT NULL AND
3746 inv_mwb_globals.g_lpn_from_id = inv_mwb_globals.g_lpn_to_id) THEN
3747 add_where_clause('msn.lpn_id = :rcv_lpn_from_id', 'RECEIVING');
3748 add_bind_variable('rcv_lpn_from_id', inv_mwb_globals.g_lpn_from_id);
3749 END IF;
3750
3751 IF (inv_mwb_globals.g_lpn_from_id IS NOT NULL AND
3752 inv_mwb_globals.g_lpn_from_id <> NVL(inv_mwb_globals.g_lpn_to_id, -1) ) THEN
3753 add_where_clause('wlpn.license_plate_number >= :rcv_lpn_from', 'RECEIVING');
3754 add_bind_variable('rcv_lpn_from', inv_mwb_globals.g_lpn_from);
3755 END IF;
3756
3757 IF (inv_mwb_globals.g_lpn_to_id IS NOT NULL AND
3758 inv_mwb_globals.g_lpn_to_id <> NVL(inv_mwb_globals.g_lpn_from_id, -1) ) THEN
3759 add_where_clause('wlpn.license_plate_number <= :rcv_lpn_to', 'RECEIVING');
3760 add_bind_variable('rcv_lpn_to', inv_mwb_globals.g_lpn_to);
3761 END IF;
3762
3763 IF (inv_mwb_globals.g_serial_from IS NOT NULL AND
3764 inv_mwb_globals.g_serial_to IS NOT NULL AND
3765 inv_mwb_globals.g_serial_from = inv_mwb_globals.g_serial_to) THEN
3766 add_where_clause('msn.serial_number = :rcv_serial_from', 'RECEIVING');
3767 add_bind_variable('rcv_serial_from', inv_mwb_globals.g_serial_from);
3768 END IF;
3769
3770 IF (inv_mwb_globals.g_serial_from IS NOT NULL AND
3771 inv_mwb_globals.g_serial_from <> NVL(inv_mwb_globals.g_serial_to, -1) ) THEN
3772 add_where_clause('msn.serial_number >= :rcv_serial_from', 'RECEIVING');
3773 add_bind_variable('rcv_serial_from', inv_mwb_globals.g_serial_from);
3774 END IF;
3775
3776 IF (inv_mwb_globals.g_serial_to IS NOT NULL AND
3777 inv_mwb_globals.g_serial_to <> NVL(inv_mwb_globals.g_serial_from, -1) ) THEN
3778 add_where_clause('msn.serial_num <= :rcv_serial_to', 'RECEIVING');
3779 add_bind_variable('rcv_serial_to', inv_mwb_globals.g_serial_to);
3780 END IF;
3781
3782 IF (inv_mwb_globals.g_lot_from IS NOT NULL AND
3783 inv_mwb_globals.g_lot_to IS NOT NULL AND
3784 inv_mwb_globals.g_lot_from = inv_mwb_globals.g_lot_to) THEN
3785 add_where_clause('msn.lot_number = :rcv_lot_from', 'RECEIVING');
3786 add_bind_variable('rcv_lot_from', inv_mwb_globals.g_lot_from);
3787 END IF;
3788
3789 IF (inv_mwb_globals.g_lot_from IS NOT NULL AND
3790 inv_mwb_globals.g_lot_from <> NVL(inv_mwb_globals.g_lot_to, -1) ) THEN
3791 add_where_clause('msn.lot_number >= :rcv_lot_from', 'RECEIVING');
3792 add_bind_variable('rcv_lot_from', inv_mwb_globals.g_lot_from);
3793 END IF;
3794
3795 IF (inv_mwb_globals.g_lot_to IS NOT NULL AND
3796 inv_mwb_globals.g_lot_to <> NVL(inv_mwb_globals.g_lot_from, -1) ) THEN
3797 add_where_clause('msn.lot_number <= :rcv_lot_to', 'RECEIVING');
3798 add_bind_variable('rcv_lot_to', inv_mwb_globals.g_lot_to);
3799 END IF;
3800
3801 /* Bug 8396954, Adding below if condition for checking supplier_lot_number condition */
3802 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL OR
3803 inv_mwb_globals.g_supplier_lot_to IS NOT NULL ) THEN
3804 inv_mwb_query_manager.add_from_clause('mtl_lot_numbers mln3', 'RECEIVING');
3805 add_where_clause('msn.lot_number =mln3.lot_number', 'RECEIVING');
3806 add_where_clause('msn.inventory_item_id = mln3.inventory_item_id', 'RECEIVING'); -- Bug 9927569
3807 add_where_clause('msn.current_organization_id = mln3.organization_id', 'RECEIVING'); -- Bug 9927569
3808
3809 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL AND
3810 inv_mwb_globals.g_supplier_lot_to IS NOT NULL AND
3811 inv_mwb_globals.g_supplier_lot_from = inv_mwb_globals.g_supplier_lot_to) THEN
3812 add_where_clause('mln3.supplier_lot_number = :rcv_supplier_lot_from', 'RECEIVING');
3813 add_bind_variable('rcv_supplier_lot_from', inv_mwb_globals.g_supplier_lot_from);
3814 END IF;
3815
3816 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL AND
3817 inv_mwb_globals.g_supplier_lot_from <> NVL(inv_mwb_globals.g_supplier_lot_to, -1) ) THEN
3818 add_where_clause('mln3.supplier_lot_number >= :rcv_supplier_lot_from', 'RECEIVING');
3819 add_bind_variable('rcv_supplier_lot_from', inv_mwb_globals.g_supplier_lot_from);
3820 END IF;
3821
3822 IF (inv_mwb_globals.g_supplier_lot_to IS NOT NULL AND
3823 inv_mwb_globals.g_supplier_lot_to <> NVL(inv_mwb_globals.g_supplier_lot_from, -1) ) THEN
3824 add_where_clause('mln3.supplier_lot_number <= :rcv_supplier_lot_to', 'RECEIVING');
3825 add_bind_variable('rcv_supplier_lot_to', inv_mwb_globals.g_supplier_lot_to);
3826 END IF;
3827 END IF;
3828 /* End of Bug 8396954 */
3829
3830 ELSIF p_flag = 'MSN' THEN
3831
3832 inv_mwb_query_manager.add_from_clause(' rcv_supply rs ','RECEIVING');
3833 inv_mwb_query_manager.add_from_clause('rcv_serials_supply rss','RECEIVING');
3834 add_where_clause('rs.shipment_line_id = rss.shipment_line_id (+) ', 'RECEIVING');
3835
3836 /* Bug 8225619. Adding ELSE CONDITION code such that right side grid
3837 retrieves the organizations which are relevant to particular
3838 responsibility id and responisibility application id */
3839 IF inv_mwb_globals.g_organization_id IS NOT NULL THEN
3840 add_where_clause('rs.to_organization_id = :rcv_to_organization_id', 'RECEIVING');
3841 add_bind_variable('rcv_to_organization_id', inv_mwb_globals.g_organization_id);
3842 ELSE
3843 add_where_clause(' EXISTS ( SELECT 1 FROM org_access_view oav WHERE oav.organization_id = rs.to_organization_id AND oav.responsibility_id = :responsibility_id AND oav.resp_application_id = :resp_application_id ) ', 'RECEIVING');
3844 add_bind_variable('responsibility_id', inv_mwb_globals.g_responsibility_id);
3845 add_bind_variable('resp_application_id', inv_mwb_globals.g_resp_application_id);
3846 END IF;
3847 /* End of Bug 8225619*/
3848
3849 IF inv_mwb_globals.g_subinventory_code IS NOT NULL THEN
3850 add_where_clause('rs.to_subinventory = :rcv_to_subinventory_code', 'RECEIVING');
3851 add_bind_variable('rcv_to_subinventory_code', inv_mwb_globals.g_subinventory_code);
3852 END IF;
3853
3854 IF inv_mwb_globals.g_locator_id IS NOT NULL THEN
3855 add_where_clause('rs.to_locator_id = :rcv_to_locator_id', 'RECEIVING');
3856 add_bind_variable('rcv_to_locator_id', inv_mwb_globals.g_locator_id);
3857 END IF;
3858
3859 -- ER(9158529 client)
3860 IF inv_mwb_globals.g_client_code IS NOT NULL THEN
3861 add_where_clause('rs.item_id in (select DISTINCT inventory_item_id from mtl_system_items_b where wms_deploy.get_client_code(inventory_item_id) = :rcv_client_code) ', 'RECEIVING');
3862 add_bind_variable('rcv_client_code', inv_mwb_globals.g_client_code);
3863 END IF;
3864 -- ER(9158529 client)
3865
3866 IF inv_mwb_globals.g_inventory_item_id IS NOT NULL THEN
3867 add_where_clause('rs.item_id = :rcv_item_id', 'RECEIVING');
3868 add_bind_variable('rcv_item_id', inv_mwb_globals.g_inventory_item_id);
3869 END IF;
3870
3871 IF inv_mwb_globals.g_inventory_item_id IS NULL
3872 AND inv_mwb_globals.g_item_description IS NOT NULL THEN
3873 inv_mwb_query_manager.add_from_clause('mtl_system_items_b msib','RECEIVING');
3874 add_where_clause('msib.inventory_item_id = rs.item_id', 'RECEIVING');
3875 add_where_clause('msib.organization_id = rs.to_organization_id', 'RECEIVING');
3876 add_where_clause('upper(msib.description) LIKE upper(:rcv_item_description)', 'RECEIVING');
3877 add_bind_variable('rcv_item_description', inv_mwb_globals.g_item_description);
3878 END IF;
3879
3880 IF inv_mwb_globals.g_revision IS NOT NULL THEN
3881 add_where_clause('rs.item_revision = :rcv_item_revision', 'RECEIVING');
3882 add_bind_variable('rcv_item_revision', inv_mwb_globals.g_revision);
3883 END IF;
3884
3885 -- ER(9158529)
3886 IF inv_mwb_globals.g_category_set_id IS NOT NULL THEN
3887 add_where_clause('rs.item_id in '
3888 || ' (select DISTINCT inventory_item_id from mtl_item_categories '
3889 || ' where organization_id = :rcv_to_organization_id '
3890 || ' and category_set_id = :rcv_category_set_id '
3891 || ' and category_id = nvl(:rcv_category_id, category_id))', 'RECEIVING');
3892 add_bind_variable('rcv_to_organization_id', inv_mwb_globals.g_organization_id);
3893 add_bind_variable('rcv_category_set_id', inv_mwb_globals.g_category_set_id);
3894 add_bind_variable('rcv_category_id', inv_mwb_globals.g_category_id);
3895 END IF;
3896 -- ER(9158529)
3897
3898 IF inv_mwb_globals.g_lpn_from_id IS NOT NULL
3899 OR inv_mwb_globals.g_lpn_to_id IS NOT NULL THEN
3900 inv_mwb_query_manager.add_from_clause(' wms_license_plate_numbers wlpn ','RECEIVING');
3901 add_where_clause('rs.lpn_id = wlpn.lpn_id', 'RECEIVING');
3902 END IF;
3903
3904 IF (inv_mwb_globals.g_lpn_from_id IS NOT NULL AND
3905 inv_mwb_globals.g_lpn_to_id IS NOT NULL AND
3906 inv_mwb_globals.g_lpn_from_id = inv_mwb_globals.g_lpn_to_id) THEN
3907 add_where_clause('rs.lpn_id = :rcv_lpn_from_id', 'RECEIVING');
3908 add_bind_variable('rcv_lpn_from_id', inv_mwb_globals.g_lpn_from_id);
3909 END IF;
3910
3911 IF (inv_mwb_globals.g_lpn_from_id IS NOT NULL AND
3912 inv_mwb_globals.g_lpn_from_id <> NVL(inv_mwb_globals.g_lpn_to_id, -1) ) THEN
3913 add_where_clause('wlpn.license_plate_number >= :rcv_lpn_from', 'RECEIVING');
3914 add_bind_variable('rcv_lpn_from', inv_mwb_globals.g_lpn_from);
3915 END IF;
3916
3917 IF (inv_mwb_globals.g_lpn_to_id IS NOT NULL AND
3918 inv_mwb_globals.g_lpn_to_id <> NVL(inv_mwb_globals.g_lpn_from_id, -1) ) THEN
3919 add_where_clause('wlpn.license_plate_number <= :rcv_lpn_to', 'RECEIVING');
3920 add_bind_variable('rcv_lpn_to', inv_mwb_globals.g_lpn_to);
3921 END IF;
3922
3923 IF (inv_mwb_globals.g_serial_from IS NOT NULL AND
3924 inv_mwb_globals.g_serial_to IS NOT NULL AND
3925 inv_mwb_globals.g_serial_from = inv_mwb_globals.g_serial_to) THEN
3926 add_where_clause('rss.serial_num = :rcv_serial_from', 'RECEIVING');
3927 add_bind_variable('rcv_serial_from', inv_mwb_globals.g_serial_from);
3928 END IF;
3929
3930 IF (inv_mwb_globals.g_serial_from IS NOT NULL AND
3931 inv_mwb_globals.g_serial_from <> NVL(inv_mwb_globals.g_serial_to, -1) ) THEN
3932 add_where_clause('rss.serial_num >= :rcv_serial_from', 'RECEIVING');
3933 add_bind_variable('rcv_serial_from', inv_mwb_globals.g_serial_from);
3934 END IF;
3935
3936 IF (inv_mwb_globals.g_serial_to IS NOT NULL AND
3937 inv_mwb_globals.g_serial_to <> NVL(inv_mwb_globals.g_serial_from, -1) ) THEN
3938 add_where_clause('rss.serial_num <= :rcv_serial_to', 'RECEIVING');
3939 add_bind_variable('rcv_serial_to', inv_mwb_globals.g_serial_to);
3940 END IF;
3941
3942 IF (inv_mwb_globals.g_lot_from IS NOT NULL AND
3943 inv_mwb_globals.g_lot_to IS NOT NULL AND
3944 inv_mwb_globals.g_lot_from = inv_mwb_globals.g_lot_to) THEN
3945 add_where_clause('rss.lot_num = :rcv_lot_from', 'RECEIVING');
3946 add_bind_variable('rcv_lot_from', inv_mwb_globals.g_lot_from);
3947 END IF;
3948
3949 IF (inv_mwb_globals.g_lot_from IS NOT NULL AND
3950 inv_mwb_globals.g_lot_from <> NVL(inv_mwb_globals.g_lot_to, -1) ) THEN
3951 add_where_clause('rss.lot_num >= :rcv_lot_from', 'RECEIVING');
3952 add_bind_variable('rcv_lot_from', inv_mwb_globals.g_lot_from);
3953 END IF;
3954
3955 IF (inv_mwb_globals.g_lot_to IS NOT NULL AND
3956 inv_mwb_globals.g_lot_to <> NVL(inv_mwb_globals.g_lot_from, -1) ) THEN
3957 add_where_clause('rss.lot_num <= :rcv_lot_to', 'RECEIVING');
3958 add_bind_variable('rcv_lot_to', inv_mwb_globals.g_lot_to);
3959 END IF;
3960
3961 /* Bug 8396954, Adding below if condition for checking supplier_lot_number condition */
3962 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL OR
3963 inv_mwb_globals.g_supplier_lot_to IS NOT NULL ) THEN
3964 inv_mwb_query_manager.add_from_clause('mtl_lot_numbers mln3', 'RECEIVING');
3965 add_where_clause('mln3.lot_number = rss.lot_num', 'RECEIVING');
3966 add_where_clause('rs.item_id = mln3.inventory_item_id', 'RECEIVING'); -- Bug 9927569
3967 add_where_clause('rs.to_organization_id = mln3.organization_id', 'RECEIVING'); -- Bug 9927569
3968
3969 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL AND
3970 inv_mwb_globals.g_supplier_lot_to IS NOT NULL AND
3971 inv_mwb_globals.g_supplier_lot_from = inv_mwb_globals.g_supplier_lot_to) THEN
3972 add_where_clause('mln3.supplier_lot_number = :rcv_supplier_lot_from', 'RECEIVING');
3973 add_bind_variable('rcv_supplier_lot_from', inv_mwb_globals.g_supplier_lot_from);
3974 END IF;
3975 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL AND
3976 inv_mwb_globals.g_supplier_lot_from <> NVL(inv_mwb_globals.g_supplier_lot_to, -1) ) THEN
3977 add_where_clause('mln3.supplier_lot_number >= :rcv_supplier_lot_from', 'RECEIVING');
3978 add_bind_variable('rcv_supplier_lot_from', inv_mwb_globals.g_supplier_lot_from);
3979 END IF;
3980
3981 IF (inv_mwb_globals.g_supplier_lot_to IS NOT NULL AND
3982 inv_mwb_globals.g_supplier_lot_to <> NVL(inv_mwb_globals.g_supplier_lot_from, -1) ) THEN
3983 add_where_clause('mln3.supplier_lot_number <= :rcv_supplier_lot_to', 'RECEIVING');
3984 add_bind_variable('rcv_supplier_lot_to', inv_mwb_globals.g_supplier_lot_to);
3985 END IF;
3986 END IF ;
3987 /* End of Bug 8396954 */
3988
3989 END IF;
3990 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'exited');
3991 END add_qf_where_receiving;
3992
3993 PROCEDURE add_qf_where_inbound(p_flag VARCHAR2) IS
3994 l_procedure_name VARCHAR2(30);
3995 l_rev_control NUMBER;
3996 l_lot_control NUMBER;
3997 l_serial_control NUMBER;
3998 BEGIN
3999 l_procedure_name := 'ADD_QF_WHERE_INBOUND';
4000 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'Entered');
4001
4002 IF inv_mwb_globals.g_tree_item_id IS NOT NULL
4003 AND inv_mwb_globals.g_tree_organization_id IS NOT NULL THEN
4004
4005 SELECT revision_qty_control_code,
4006 lot_control_code,
4007 serial_number_control_code
4008 INTO l_rev_control,
4009 l_lot_control,
4010 l_serial_control
4011 FROM mtl_system_items
4012 WHERE inventory_item_id = inv_mwb_globals.g_tree_item_id
4013 AND organization_id = inv_mwb_globals.g_tree_organization_id;
4014
4015 END IF;
4016
4017 inv_mwb_query_manager.add_from_clause(' mtl_supply ms ','INBOUND');
4018 inv_mwb_query_manager.add_where_clause('ms.supply_type_code <> ''RECEIVING''','INBOUND');
4019 inv_mwb_query_manager.add_where_clause('ms.destination_type_code = ''INVENTORY''','INBOUND');
4020
4021
4022 --15991963
4023 IF inv_mwb_globals.g_include_po_without_asn = 0 THEN
4024 inv_mwb_query_manager.add_where_clause(' ms.supply_type_code = ''SHIPMENT''','INBOUND');
4025 END IF;
4026
4027
4028
4029 IF inv_mwb_globals.g_po_header_id IS NOT NULL
4030 OR inv_mwb_globals.g_vendor_id IS NOT NULL
4031 OR inv_mwb_globals.g_shipment_header_id_asn IS NOT NULL
4032 OR inv_mwb_globals.g_vendor_item IS NOT NULL THEN
4033
4034 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'Supplier tab');
4035
4036 inv_mwb_query_manager.add_from_clause('po_headers_trx_v pha','INBOUND'); -- CLM project, bug 9403291
4037 inv_mwb_query_manager.add_where_clause(' pha.po_header_id = ms.po_header_id ','INBOUND');
4038 inv_mwb_query_manager.add_where_clause('pha.authorization_status = ''APPROVED''', 'INBOUND');
4039
4040 /* IF inv_mwb_globals.g_include_po_without_asn = 1 THEN
4041 inv_mwb_query_manager.add_where_clause(' ms.supply_type_code IN (''PO'',''SHIPMENT'')','INBOUND');
4042 ELSIF inv_mwb_globals.g_include_po_without_asn = 0 THEN
4043 inv_mwb_query_manager.add_where_clause(' ms.supply_type_code = ''SHIPMENT''','INBOUND');
4044 -- inv_mwb_query_manager.add_where_clause(' ms.shipment_header_id IS NULL','INBOUND');
4045 END IF;
4046 */
4047
4048 IF inv_mwb_globals.g_vendor_id IS NOT NULL THEN
4049 add_where_clause('pha.vendor_id = :inb_vendor_id', 'INBOUND');
4050 add_bind_variable('inb_vendor_id', inv_mwb_globals.g_vendor_id);
4051 IF inv_mwb_globals.g_vendor_site_id IS NOT NULL THEN
4052 add_where_clause('pha.vendor_site_id = :inb_vendor_site_id', 'INBOUND');
4053 add_bind_variable('inb_vendor_site_id', inv_mwb_globals.g_vendor_site_id);
4054 END IF;
4055 END IF;
4056
4057 IF inv_mwb_globals.g_vendor_item IS NOT NULL THEN
4058 inv_mwb_query_manager.add_from_clause('po_lines_trx_v pla ','INBOUND'); -- CLM project, bug 9403291
4059 inv_mwb_query_manager.add_where_clause('ms.po_line_id = pla.po_line_id', 'INBOUND');
4060 inv_mwb_query_manager.add_where_clause('pla.vendor_product_num = :inb_vendor_item', 'INBOUND');
4061 add_bind_variable('inb_vendor_item', inv_mwb_globals.g_vendor_item);
4062 END IF;
4063
4064 IF inv_mwb_globals.g_po_header_id IS NOT NULL THEN
4065 inv_mwb_query_manager.add_where_clause(' ms.po_header_id = :inb_po_header_id ','INBOUND');
4066 inv_mwb_query_manager.add_where_clause(' ms.supply_type_code = ''PO'' ','INBOUND');
4067 add_bind_variable('inb_po_header_id', inv_mwb_globals.g_po_header_id);
4068 END IF;
4069
4070 IF inv_mwb_globals.g_po_release_id IS NOT NULL THEN
4071 add_where_clause('ms.po_release_id = :inb_po_release_id', 'INBOUND');
4072 add_bind_variable('inb_po_release_id', inv_mwb_globals.g_po_release_id);
4073 END IF;
4074
4075 IF inv_mwb_globals.g_shipment_header_id_asn IS NOT NULL
4076 OR inv_mwb_globals.g_tree_doc_type_id IN (3,4) THEN
4077 inv_mwb_query_manager.add_from_clause(' rcv_shipment_headers rsh ','INBOUND');
4078 add_where_clause('rsh.shipment_header_id(+) = ms.shipment_header_id', 'INBOUND');
4079 END IF;
4080
4081 IF inv_mwb_globals.g_shipment_header_id_asn IS NOT NULL THEN
4082 inv_mwb_query_manager.add_where_clause(' rsh.shipment_header_id = :inb_shipment_header_id_asn ','INBOUND');
4083 add_bind_variable('inb_shipment_header_id_asn', inv_mwb_globals.g_shipment_header_id_asn);
4084 END IF;
4085
4086 IF inv_mwb_globals.g_tree_parent_lpn_id IS NOT NULL
4087 OR inv_mwb_globals.g_tree_doc_type_id IN (3,4) THEN
4088 inv_mwb_query_manager.add_from_clause(' rcv_shipment_lines rsl ','INBOUND');
4089 add_where_clause('rsl.shipment_line_id = ms.shipment_line_id', 'INBOUND');
4090 END IF;
4091
4092 IF inv_mwb_globals.g_tree_parent_lpn_id IS NOT NULL THEN
4093 inv_mwb_query_manager.add_where_clause(' rsl.asn_lpn_id = :inb_asn_lpn_id ','INBOUND');
4094 add_bind_variable('inb_asn_lpn_id', inv_mwb_globals.g_tree_parent_lpn_id);
4095 END IF;
4096
4097 IF inv_mwb_globals.g_organization_id IS NOT NULL THEN
4098 add_where_clause('ms.to_organization_id = :inb_to_organization_id', 'INBOUND');
4099 add_bind_variable('inb_to_organization_id', inv_mwb_globals.g_organization_id);
4100 END IF;
4101
4102 -- ER(9158529 client)
4103 IF inv_mwb_globals.g_client_code IS NOT NULL THEN
4104 add_where_clause('ms.item_id in (select DISTINCT inventory_item_id from mtl_system_items_b where wms_deploy.get_client_code(inventory_item_id) = :inb_client_code) ', 'INBOUND');
4105 add_bind_variable('inb_client_code', inv_mwb_globals.g_client_code);
4106 END IF;
4107 -- ER(9158529 client)
4108
4109 IF inv_mwb_globals.g_inventory_item_id IS NOT NULL THEN
4110 add_where_clause('ms.item_id = :inb_item_id', 'INBOUND');
4111 add_bind_variable('inb_item_id', inv_mwb_globals.g_inventory_item_id);
4112 END IF;
4113
4114 IF inv_mwb_globals.g_cost_group_id IS NOT NULL THEN
4115 add_where_clause('ms.cost_group_id = :inb_cost_group_id', 'INBOUND');
4116 add_bind_variable('inb_cost_group_id', inv_mwb_globals.g_cost_group_id);
4117 END IF;
4118
4119 -- ER(9158529)
4120 IF inv_mwb_globals.g_category_set_id IS NOT NULL THEN
4121 add_where_clause('ms.item_id in '
4122 || ' (select DISTINCT inventory_item_id from mtl_item_categories '
4123 || ' where organization_id = :inb_to_organization_id '
4124 || ' and category_set_id = :inb_category_set_id '
4125 || ' and category_id = nvl(:inb_category_id, category_id))', 'INBOUND');
4126 add_bind_variable('inb_to_organization_id', inv_mwb_globals.g_organization_id);
4127 add_bind_variable('inb_category_set_id', inv_mwb_globals.g_category_set_id);
4128 add_bind_variable('inb_category_id', inv_mwb_globals.g_category_id);
4129 END IF;
4130 -- ER(9158529)
4131
4132 IF (inv_mwb_globals.g_expected_from_date IS NOT NULL AND
4133 inv_mwb_globals.g_expected_to_date IS NOT NULL AND
4134 inv_mwb_globals.g_expected_from_date = inv_mwb_globals.g_expected_to_date) THEN
4135 add_where_clause('ms.expected_delivery_date = :inb_expected_from_date', 'INBOUND');
4136 add_bind_variable('inb_expected_from_date', inv_mwb_globals.g_expected_from_date);
4137 END IF;
4138
4139 IF inv_mwb_globals.g_expected_from_date IS NOT NULL THEN
4140 add_where_clause('ms.expected_delivery_date >= :inb_expected_from_date', 'INBOUND');
4141 add_bind_variable('inb_expected_from_date', inv_mwb_globals.g_expected_from_date);
4142 END IF;
4143
4144 IF inv_mwb_globals.g_expected_to_date IS NOT NULL THEN
4145 add_where_clause('ms.expected_delivery_date <= :inb_expected_to_date', 'INBOUND');
4146 add_bind_variable('inb_expected_to_date', inv_mwb_globals.g_expected_to_date);
4147 END IF;
4148
4149 --Bug 14548684 add view mtl_system_items_vl to support multi-language
4150 IF inv_mwb_globals.g_inventory_item_id IS NULL
4151 AND inv_mwb_globals.g_item_description IS NOT NULL THEN
4152 add_from_clause(' mtl_system_items_kfv msik ','INBOUND');
4153 add_from_clause('mtl_system_items_vl msiv', 'INBOUND');
4154 add_where_clause(' ms.item_id = msik.inventory_item_id ', 'INBOUND');
4155 add_where_clause(' ms.to_organization_id = msik.organization_id ', 'INBOUND');
4156 add_where_clause('msik.inventory_item_id = msiv.inventory_item_id', 'INBOUND');
4157 add_where_clause('msik.organization_id = msiv.organization_id', 'INBOUND');
4158 add_where_clause(' upper(msiv.description) like upper(:inb_item_description) ', 'INBOUND');--Bug 14177143
4159 add_bind_variable('inb_item_description', inv_mwb_globals.g_item_description);
4160 END IF;
4161
4162
4163 IF (inv_mwb_globals.g_lot_from IS NOT NULL
4164 OR inv_mwb_globals.g_lot_to IS NOT NULL)
4165 OR (inv_mwb_globals.g_tree_item_id IS NOT NULL
4166 AND l_lot_control = 2) THEN
4167 inv_mwb_query_manager.add_from_clause(' rcv_lots_supply rls ','INBOUND');
4168 add_where_clause('rls.shipment_line_id(+) = ms.shipment_line_id ', 'INBOUND');
4169 END IF;
4170
4171 IF (inv_mwb_globals.g_lot_from IS NOT NULL AND
4172 inv_mwb_globals.g_lot_to IS NOT NULL AND
4173 inv_mwb_globals.g_lot_from = inv_mwb_globals.g_lot_to) THEN
4174 add_where_clause('rls.lot_num = :inb_lot_from', 'INBOUND');
4175 add_bind_variable('inb_lot_from', inv_mwb_globals.g_lot_from);
4176 END IF;
4177
4178 IF (inv_mwb_globals.g_lot_from IS NOT NULL AND
4179 inv_mwb_globals.g_lot_from <> NVL(inv_mwb_globals.g_lot_to, -1) ) THEN
4180 add_where_clause('rls.lot_num >= :inb_lot_from', 'INBOUND');
4181 add_bind_variable('inb_lot_from', inv_mwb_globals.g_lot_from);
4182 END IF;
4183
4184 IF (inv_mwb_globals.g_lot_to IS NOT NULL AND
4185 inv_mwb_globals.g_lot_to <> NVL(inv_mwb_globals.g_lot_from, -1) ) THEN
4186 add_where_clause('rls.lot_num <= :inb_lot_to', 'INBOUND');
4187 add_bind_variable('inb_lot_to', inv_mwb_globals.g_lot_to);
4188 END IF;
4189
4190 /* Bug 8396954, Adding below if condition for checking supplier_lot_number condition */
4191 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL OR
4192 inv_mwb_globals.g_supplier_lot_to IS NOT NULL ) THEN
4193 inv_mwb_query_manager.add_from_clause('mtl_lot_numbers mln3', 'INBOUND');
4194 IF NOT ((inv_mwb_globals.g_lot_from IS NOT NULL
4195 OR inv_mwb_globals.g_lot_to IS NOT NULL)
4196 OR (inv_mwb_globals.g_tree_item_id IS NOT NULL
4197 AND l_lot_control = 2)) THEN
4198 inv_mwb_query_manager.add_from_clause(' rcv_lots_supply rls ','INBOUND');
4199 add_where_clause('rls.shipment_line_id(+) = ms.shipment_line_id ', 'INBOUND');
4200 END IF;
4201 add_where_clause('mln3.lot_number = rls.lot_num', 'INBOUND');
4202 add_where_clause('ms.item_id = mln3.inventory_item_id', 'INBOUND'); -- Bug 9927569
4203 add_where_clause('ms.to_organization_id = mln3.organization_id', 'INBOUND'); -- Bug 9927569
4204
4205 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL AND
4206 inv_mwb_globals.g_supplier_lot_to IS NOT NULL AND
4207 inv_mwb_globals.g_supplier_lot_from = inv_mwb_globals.g_supplier_lot_to) THEN
4208 add_where_clause('mln3.supplier_lot_number = :inb_supplier_lot_from', 'INBOUND');
4209 add_bind_variable('inb_supplier_lot_from', inv_mwb_globals.g_supplier_lot_from);
4210 END IF;
4211
4212 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL AND
4213 inv_mwb_globals.g_supplier_lot_from <> NVL(inv_mwb_globals.g_supplier_lot_to, -1) ) THEN
4214 add_where_clause('mln3.supplier_lot_number >= :inb_supplier_lot_from', 'INBOUND');
4215 add_bind_variable('inb_supplier_lot_from', inv_mwb_globals.g_supplier_lot_from);
4216 END IF;
4217
4218 IF (inv_mwb_globals.g_supplier_lot_to IS NOT NULL AND
4219 inv_mwb_globals.g_supplier_lot_to <> NVL(inv_mwb_globals.g_supplier_lot_from, -1) ) THEN
4220 add_where_clause('mln3.supplier_lot_number <= :inb_supplier_lot_to', 'INBOUND');
4221 add_bind_variable('inb_supplier_lot_to', inv_mwb_globals.g_supplier_lot_to);
4222 END IF;
4223 END IF ;
4224 /* End of Bug 8396954 */
4225
4226 IF (inv_mwb_globals.g_serial_from IS NOT NULL
4227 OR inv_mwb_globals.g_serial_to IS NOT NULL)
4228 OR (inv_mwb_globals.g_tree_item_id IS NOT NULL
4229 AND l_serial_control = 2) THEN
4230 inv_mwb_query_manager.add_from_clause(' rcv_serials_supply rss ','INBOUND');
4231 add_where_clause('rss.shipment_line_id(+) = ms.shipment_line_id ', 'INBOUND');
4232 END IF;
4233
4234 IF (inv_mwb_globals.g_serial_from IS NOT NULL AND
4235 inv_mwb_globals.g_serial_to IS NOT NULL AND
4236 inv_mwb_globals.g_serial_from = inv_mwb_globals.g_serial_to) THEN
4237 add_where_clause('rss.serial_num = :inb_serial_from', 'INBOUND');
4238 add_bind_variable('inb_serial_from', inv_mwb_globals.g_serial_from);
4239 END IF;
4240
4241 IF (inv_mwb_globals.g_serial_from IS NOT NULL AND
4242 inv_mwb_globals.g_serial_from <> NVL(inv_mwb_globals.g_serial_to, -1) ) THEN
4243 add_where_clause('rss.serial_num >= :inb_serial_from', 'INBOUND');
4244 add_bind_variable('inb_serial_from', inv_mwb_globals.g_serial_from);
4245 END IF;
4246
4247 IF (inv_mwb_globals.g_serial_to IS NOT NULL AND
4248 inv_mwb_globals.g_serial_to <> NVL(inv_mwb_globals.g_serial_from, -1) ) THEN
4249 add_where_clause('rss.serial_num <= :inb_serial_to', 'INBOUND');
4250 add_bind_variable('inb_serial_to', inv_mwb_globals.g_serial_to);
4251 END IF;
4252
4253 ELSIF inv_mwb_globals.g_source_org_id IS NOT NULL
4254 OR inv_mwb_globals.g_req_header_id IS NOT NULL
4255 OR inv_mwb_globals.g_internal_order_id IS NOT NULL
4256 OR inv_mwb_globals.g_shipment_header_id_interorg IS NOT NULL THEN
4257
4258 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'Interorg tab');
4259
4260 inv_mwb_query_manager.add_from_clause(' rcv_shipment_headers rsh ','INBOUND');
4261 inv_mwb_query_manager.add_from_clause(' rcv_shipment_lines rsl ','INBOUND');
4262
4263 inv_mwb_query_manager.add_where_clause(' rsh.shipment_header_id(+) = ms.shipment_header_id ', 'INBOUND');
4264 inv_mwb_query_manager.add_where_clause(' rsl.shipment_line_id(+) = ms.shipment_line_id ', 'INBOUND');
4265 inv_mwb_query_manager.add_where_clause(' ms.supply_type_code IN (''REQ'',''SHIPMENT'') ', 'INBOUND');
4266 inv_mwb_query_manager.add_where_clause(' rsh.asn_type IS NULL ', 'INBOUND');
4267
4268
4269 IF inv_mwb_globals.g_shipment_header_id_interorg IS NOT NULL THEN
4270 add_where_clause(' rsh.shipment_header_id = :inb_shipment_header_id ', 'INBOUND');
4271 add_where_clause(' ms.supply_type_code = ''SHIPMENT'' ', 'INBOUND');
4272 add_bind_variable('inb_shipment_header_id', inv_mwb_globals.g_shipment_header_id_interorg);
4273 ELSIF inv_mwb_globals.g_req_header_id IS NOT NULL THEN
4274 inv_mwb_query_manager.add_where_clause(' ms.req_header_id = :inb_req_header_id ', 'INBOUND');
4275 add_bind_variable('inb_req_header_id', inv_mwb_globals.g_req_header_id);
4276 END IF;
4277
4278 IF inv_mwb_globals.g_source_org_id IS NOT NULL THEN
4279 inv_mwb_query_manager.add_where_clause(' ms.from_organization_id = :inb_from_organization_id ', 'INBOUND');
4280 add_bind_variable('inb_from_organization_id', inv_mwb_globals.g_source_org_id);
4281 END IF;
4282
4283 IF inv_mwb_globals.g_organization_id IS NOT NULL THEN
4284 add_where_clause('ms.to_organization_id = :inb_to_organization_id', 'INBOUND');
4285 add_bind_variable('inb_to_organization_id', inv_mwb_globals.g_organization_id);
4286 END IF;
4287
4288 -- ER(9158529 client)
4289 IF inv_mwb_globals.g_client_code IS NOT NULL THEN
4290 add_where_clause('ms.item_id in (select DISTINCT inventory_item_id from mtl_system_items_b where wms_deploy.get_client_code(inventory_item_id) = :inb_client_code) ', 'INBOUND');
4291 add_bind_variable('inb_client_code', inv_mwb_globals.g_client_code);
4292 END IF;
4293 -- ER(9158529 client)
4294
4295 IF inv_mwb_globals.g_inventory_item_id IS NOT NULL THEN
4296 add_where_clause('ms.item_id = :inb_item_id', 'INBOUND');
4297 add_bind_variable('inb_item_id', inv_mwb_globals.g_inventory_item_id);
4298 END IF;
4299
4300 IF inv_mwb_globals.g_revision IS NOT NULL THEN
4301 add_where_clause('ms.item_revision = :inb_item_revision', 'INBOUND');
4302 add_bind_variable('inb_item_revision', inv_mwb_globals.g_revision);
4303 END IF;
4304
4305 IF inv_mwb_globals.g_cost_group_id IS NOT NULL THEN
4306 add_where_clause('ms.cost_group_id = :inb_cost_group_id', 'INBOUND');
4307 add_bind_variable('inb_cost_group_id', inv_mwb_globals.g_cost_group_id);
4308 END IF;
4309
4310 -- ER(9158529)
4311 IF inv_mwb_globals.g_category_set_id IS NOT NULL THEN
4312 add_where_clause('ms.item_id in '
4313 || ' (select DISTINCT inventory_item_id from mtl_item_categories '
4314 || ' where organization_id = :inb_to_organization_id '
4315 || ' and category_set_id = :inb_category_set_id '
4316 || ' and category_id = nvl(:inb_category_id, category_id))', 'INBOUND');
4317 add_bind_variable('inb_to_organization_id', inv_mwb_globals.g_organization_id);
4318 add_bind_variable('inb_category_set_id', inv_mwb_globals.g_category_set_id);
4319 add_bind_variable('inb_category_id', inv_mwb_globals.g_category_id);
4320 END IF;
4321 -- ER(9158529)
4322
4323 IF (inv_mwb_globals.g_expected_from_date IS NOT NULL AND
4324 inv_mwb_globals.g_expected_to_date IS NOT NULL AND
4325 inv_mwb_globals.g_expected_from_date = inv_mwb_globals.g_expected_to_date) THEN
4326 add_where_clause('ms.expected_delivery_date = :inb_expected_from_date', 'INBOUND');
4327 add_bind_variable('inb_expected_from_date', inv_mwb_globals.g_expected_from_date);
4328 END IF;
4329
4330 IF inv_mwb_globals.g_expected_from_date IS NOT NULL THEN
4331 add_where_clause('ms.expected_delivery_date >= :inb_expected_from_date', 'INBOUND');
4332 add_bind_variable('inb_expected_from_date', inv_mwb_globals.g_expected_from_date);
4333 END IF;
4334
4335 IF inv_mwb_globals.g_expected_to_date IS NOT NULL THEN
4336 add_where_clause('ms.expected_delivery_date <= :inb_expected_to_date', 'INBOUND');
4337 add_bind_variable('inb_expected_to_date', inv_mwb_globals.g_expected_to_date);
4338 END IF;
4339
4340 IF inv_mwb_globals.g_lpn_from_id IS NOT NULL
4341 OR inv_mwb_globals.g_lpn_to_id IS NOT NULL THEN
4342 inv_mwb_query_manager.add_from_clause(' wms_license_plate_numbers wlpn ','INBOUND');
4343 add_where_clause('rsl.asn_lpn_id = wlpn.lpn_id', 'INBOUND');
4344 END IF;
4345
4346 IF (inv_mwb_globals.g_lpn_from_id IS NOT NULL AND
4347 inv_mwb_globals.g_lpn_to_id IS NOT NULL AND
4348 inv_mwb_globals.g_lpn_from_id = inv_mwb_globals.g_lpn_to_id) THEN
4349 add_where_clause('rsl.asn_lpn_id = :inb_lpn_from_id', 'INBOUND');
4350 add_bind_variable('inb_lpn_from_id', inv_mwb_globals.g_lpn_from_id);
4351 END IF;
4352
4353 IF (inv_mwb_globals.g_lpn_from_id IS NOT NULL AND
4354 inv_mwb_globals.g_lpn_from_id <> NVL(inv_mwb_globals.g_lpn_to_id, -1) ) THEN
4355 add_where_clause('wlpn.license_plate_number >= :inb_lpn_from', 'INBOUND');
4356 add_bind_variable('inb_lpn_from', inv_mwb_globals.g_lpn_from);
4357 END IF;
4358
4359 IF (inv_mwb_globals.g_lpn_to_id IS NOT NULL AND
4360 inv_mwb_globals.g_lpn_to_id <> NVL(inv_mwb_globals.g_lpn_from_id, -1) ) THEN
4361 add_where_clause('wlpn.license_plate_number <= :inb_lpn_to', 'INBOUND');
4362 add_bind_variable('inb_lpn_to', inv_mwb_globals.g_lpn_to);
4363 END IF;
4364
4365
4366
4367 IF (inv_mwb_globals.g_lot_from IS NOT NULL
4368 OR inv_mwb_globals.g_lot_to IS NOT NULL)
4369 OR (inv_mwb_globals.g_tree_item_id IS NOT NULL
4370 AND l_lot_control = 2) THEN
4371 inv_mwb_query_manager.add_from_clause(' rcv_lots_supply rls ','INBOUND');
4372 add_where_clause('rls.shipment_line_id(+) = ms.shipment_line_id ', 'INBOUND');
4373 END IF;
4374
4375 IF (inv_mwb_globals.g_lot_from IS NOT NULL AND
4376 inv_mwb_globals.g_lot_to IS NOT NULL AND
4377 inv_mwb_globals.g_lot_from = inv_mwb_globals.g_lot_to) THEN
4378 add_where_clause('rls.lot_num = :inb_lot_from', 'INBOUND');
4379 add_bind_variable('inb_lot_from', inv_mwb_globals.g_lot_from);
4380 END IF;
4381
4382 IF (inv_mwb_globals.g_lot_from IS NOT NULL AND
4383 inv_mwb_globals.g_lot_from <> NVL(inv_mwb_globals.g_lot_to, -1) ) THEN
4384 add_where_clause('rls.lot_num >= :inb_lot_from', 'INBOUND');
4385 add_bind_variable('inb_lot_from', inv_mwb_globals.g_lot_from);
4386 END IF;
4387
4388 IF (inv_mwb_globals.g_lot_to IS NOT NULL AND
4389 inv_mwb_globals.g_lot_to <> NVL(inv_mwb_globals.g_lot_from, -1) ) THEN
4390 add_where_clause('rls.lot_num <= :inb_lot_to', 'INBOUND');
4391 add_bind_variable('inb_lot_to', inv_mwb_globals.g_lot_to);
4392 END IF;
4393
4394 /* Bug 8396954, Adding below if condition for checking supplier_lot_number condition */
4395 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL OR
4396 inv_mwb_globals.g_supplier_lot_to IS NOT NULL ) THEN
4397 inv_mwb_query_manager.add_from_clause('mtl_lot_numbers mln3', 'INBOUND');
4398 IF NOT ((inv_mwb_globals.g_lot_from IS NOT NULL
4399 OR inv_mwb_globals.g_lot_to IS NOT NULL)
4400 OR (inv_mwb_globals.g_tree_item_id IS NOT NULL
4401 AND l_lot_control = 2)) THEN
4402 inv_mwb_query_manager.add_from_clause(' rcv_lots_supply rls ','INBOUND');
4403 add_where_clause('rls.shipment_line_id(+) = ms.shipment_line_id ', 'INBOUND');
4404 END IF;
4405 add_where_clause('mln3.lot_number = rls.lot_num', 'INBOUND');
4406 add_where_clause('ms.item_id = mln3.inventory_item_id', 'INBOUND'); -- Bug 9927569
4407 add_where_clause('ms.to_organization_id = mln3.organization_id', 'INBOUND'); -- Bug 9927569
4408
4409 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL AND
4410 inv_mwb_globals.g_supplier_lot_to IS NOT NULL AND
4411 inv_mwb_globals.g_supplier_lot_from = inv_mwb_globals.g_supplier_lot_to) THEN
4412 add_where_clause('mln3.supplier_lot_number = :inb_supplier_lot_from', 'INBOUND');
4413 add_bind_variable('inb_supplier_lot_from', inv_mwb_globals.g_supplier_lot_from);
4414 END IF;
4415
4416 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL AND
4417 inv_mwb_globals.g_supplier_lot_from <> NVL(inv_mwb_globals.g_supplier_lot_to, -1) ) THEN
4418 add_where_clause('mln3.supplier_lot_number >= :inb_supplier_lot_from', 'INBOUND');
4419 add_bind_variable('inb_supplier_lot_from', inv_mwb_globals.g_supplier_lot_from);
4420 END IF;
4421
4422 IF (inv_mwb_globals.g_supplier_lot_to IS NOT NULL AND
4423 inv_mwb_globals.g_supplier_lot_to <> NVL(inv_mwb_globals.g_supplier_lot_from, -1) ) THEN
4424 add_where_clause('mln3.supplier_lot_number <= :inb_supplier_lot_to', 'INBOUND');
4425 add_bind_variable('inb_supplier_lot_to', inv_mwb_globals.g_supplier_lot_to);
4426 END IF;
4427 END IF ;
4428 /* End of Bug 8396954 */
4429
4430 IF (inv_mwb_globals.g_serial_from IS NOT NULL
4431 OR inv_mwb_globals.g_serial_to IS NOT NULL)
4432 OR (inv_mwb_globals.g_tree_item_id IS NOT NULL
4433 AND l_serial_control =2) THEN
4434 inv_mwb_query_manager.add_from_clause(' rcv_serials_supply rss ','INBOUND');
4435 add_where_clause('rss.shipment_line_id = ms.shipment_line_id ', 'INBOUND');
4436 END IF;
4437
4438 IF (inv_mwb_globals.g_serial_from IS NOT NULL AND
4439 inv_mwb_globals.g_serial_to IS NOT NULL AND
4440 inv_mwb_globals.g_serial_from = inv_mwb_globals.g_serial_to) THEN
4441 add_where_clause('rss.serial_num = :inb_serial_from', 'INBOUND');
4442 add_bind_variable('inb_serial_from', inv_mwb_globals.g_serial_from);
4443 END IF;
4444
4445 IF (inv_mwb_globals.g_serial_from IS NOT NULL AND
4446 inv_mwb_globals.g_serial_from <> NVL(inv_mwb_globals.g_serial_to, -1) ) THEN
4447 add_where_clause('rss.serial_num >= :inb_serial_from', 'INBOUND');
4448 add_bind_variable('inb_serial_from', inv_mwb_globals.g_serial_from);
4449 END IF;
4450
4451 IF (inv_mwb_globals.g_serial_to IS NOT NULL AND
4452 inv_mwb_globals.g_serial_to <> NVL(inv_mwb_globals.g_serial_from, -1) ) THEN
4453 add_where_clause('rss.serial_num <= :inb_serial_to', 'INBOUND');
4454 add_bind_variable('inb_serial_to', inv_mwb_globals.g_serial_to);
4455 END IF;
4456
4457 --Bug 14548684 add view mtl_system_items_vl to support multi-language
4458 IF inv_mwb_globals.g_inventory_item_id IS NULL
4459 AND inv_mwb_globals.g_item_description IS NOT NULL THEN
4460 add_from_clause(' mtl_system_items_kfv msik ','INBOUND');
4461 add_from_clause('mtl_system_items_vl msiv', 'INBOUND');
4462 add_where_clause(' ms.item_id = msik.inventory_item_id ', 'INBOUND');
4463 add_where_clause(' ms.to_organization_id = msik.organization_id ', 'INBOUND');
4464 add_where_clause('msik.inventory_item_id = msiv.inventory_item_id', 'INBOUND');
4465 add_where_clause('msik.organization_id = msiv.organization_id', 'INBOUND');
4466 add_where_clause(' upper(msiv.description) like upper(:inb_item_description) ', 'INBOUND');--Bug 14177143
4467 add_bind_variable('inb_item_description', inv_mwb_globals.g_item_description);
4468 END IF;
4469
4470 ELSE -- If interorg and supplier tab null
4471
4472 inv_mwb_query_manager.add_from_clause('rcv_shipment_headers rsh ','INBOUND');
4473 inv_mwb_query_manager.add_from_clause('rcv_shipment_lines rsl ','INBOUND');
4474 inv_mwb_query_manager.add_where_clause('rsh.shipment_header_id(+) = ms.shipment_header_id ', 'INBOUND');
4475 inv_mwb_query_manager.add_where_clause('rsl.shipment_line_id(+) = ms.shipment_line_id', 'INBOUND');
4476
4477 IF inv_mwb_globals.g_organization_id IS NOT NULL THEN
4478 add_where_clause('ms.to_organization_id = :inb_to_organization_id', 'INBOUND');
4479 add_bind_variable('inb_to_organization_id', inv_mwb_globals.g_organization_id);
4480 END IF;
4481
4482 -- ER(9158529 client)
4483 IF inv_mwb_globals.g_client_code IS NOT NULL THEN
4484 add_where_clause('ms.item_id in (select DISTINCT inventory_item_id from mtl_system_items_b where wms_deploy.get_client_code(inventory_item_id) = :inb_client_code) ', 'INBOUND');
4485 add_bind_variable('inb_client_code', inv_mwb_globals.g_client_code);
4486 END IF;
4487 -- ER(9158529 client)
4488
4489 IF inv_mwb_globals.g_inventory_item_id IS NOT NULL THEN
4490 add_where_clause('ms.item_id = :inb_item_id', 'INBOUND');
4491 add_bind_variable('inb_item_id', inv_mwb_globals.g_inventory_item_id);
4492 END IF;
4493
4494 IF inv_mwb_globals.g_revision IS NOT NULL THEN
4495 add_where_clause('ms.item_revision = :inb_item_revision', 'INBOUND');
4496 add_bind_variable('inb_item_revision', inv_mwb_globals.g_revision);
4497 END IF;
4498
4499 IF inv_mwb_globals.g_cost_group_id IS NOT NULL THEN
4500 add_where_clause('ms.cost_group_id = :inb_cost_group_id', 'INBOUND');
4501 add_bind_variable('inb_cost_group_id', inv_mwb_globals.g_cost_group_id);
4502 END IF;
4503
4504 -- ER(9158529)
4505 IF inv_mwb_globals.g_category_set_id IS NOT NULL THEN
4506 add_where_clause('ms.item_id in '
4507 || ' (select DISTINCT inventory_item_id from mtl_item_categories '
4508 || ' where organization_id = :inb_to_organization_id '
4509 || ' and category_set_id = :inb_category_set_id '
4510 || ' and category_id = nvl(:inb_category_id, category_id))', 'INBOUND');
4511 add_bind_variable('inb_to_organization_id', inv_mwb_globals.g_organization_id);
4512 add_bind_variable('inb_category_set_id', inv_mwb_globals.g_category_set_id);
4513 add_bind_variable('inb_category_id', inv_mwb_globals.g_category_id);
4514 END IF;
4515 -- ER(9158529)
4516
4517 IF inv_mwb_globals.g_lpn_from_id IS NOT NULL
4518 OR inv_mwb_globals.g_lpn_to_id IS NOT NULL THEN
4519 inv_mwb_query_manager.add_from_clause(' wms_license_plate_numbers wlpn ','INBOUND');
4520 add_where_clause('rsl.asn_lpn_id = wlpn.lpn_id', 'INBOUND');
4521 END IF;
4522
4523 IF (inv_mwb_globals.g_lpn_from_id IS NOT NULL AND
4524 inv_mwb_globals.g_lpn_to_id IS NOT NULL AND
4525 inv_mwb_globals.g_lpn_from_id = inv_mwb_globals.g_lpn_to_id) THEN
4526 add_where_clause('rsl.asn_lpn_id = :inb_lpn_from_id', 'INBOUND');
4527 add_bind_variable('inb_lpn_from_id', inv_mwb_globals.g_lpn_from_id);
4528 END IF;
4529
4530 IF (inv_mwb_globals.g_lpn_from_id IS NOT NULL AND
4531 inv_mwb_globals.g_lpn_from_id <> NVL(inv_mwb_globals.g_lpn_to_id, -1) ) THEN
4532 add_where_clause('wlpn.license_plate_number >= :inb_lpn_from', 'INBOUND');
4533 add_bind_variable('inb_lpn_from', inv_mwb_globals.g_lpn_from);
4534 END IF;
4535
4536 IF (inv_mwb_globals.g_lpn_to_id IS NOT NULL AND
4537 inv_mwb_globals.g_lpn_to_id <> NVL(inv_mwb_globals.g_lpn_from_id, -1) ) THEN
4538 add_where_clause('wlpn.license_plate_number <= :inb_lpn_to', 'INBOUND');
4539 add_bind_variable('inb_lpn_to', inv_mwb_globals.g_lpn_to);
4540 END IF;
4541
4542 IF inv_mwb_globals.g_lot_from IS NOT NULL
4543 OR inv_mwb_globals.g_lot_to IS NOT NULL
4544 OR (inv_mwb_globals.g_tree_item_id IS NOT NULL
4545 AND l_lot_control = 2)
4546 OR inv_mwb_globals.g_tree_lot_number IS NOT NULL THEN
4547 add_from_clause(' rcv_lots_supply rls ','INBOUND');
4548 add_where_clause('rls.shipment_line_id(+) = ms.shipment_line_id ', 'INBOUND');
4549 END IF;
4550
4551 IF inv_mwb_globals.g_lot_from IS NOT NULL
4552 AND inv_mwb_globals.g_lot_to IS NOT NULL
4553 AND inv_mwb_globals.g_lot_from = inv_mwb_globals.g_lot_to THEN
4554 add_where_clause('rls.lot_num = :inb_lot_from', 'INBOUND');
4555 add_bind_variable('inb_lot_from', inv_mwb_globals.g_lot_from);
4556 END IF;
4557
4558 IF (inv_mwb_globals.g_lot_from IS NOT NULL AND
4559 inv_mwb_globals.g_lot_from <> NVL(inv_mwb_globals.g_lot_to, -1) ) THEN
4560 add_where_clause('rls.lot_num >= :inb_lot_from', 'INBOUND');
4561 add_bind_variable('inb_lot_from', inv_mwb_globals.g_lot_from);
4562 END IF;
4563
4564 IF (inv_mwb_globals.g_lot_to IS NOT NULL AND
4565 inv_mwb_globals.g_lot_to <> NVL(inv_mwb_globals.g_lot_from, -1) ) THEN
4566 add_where_clause('rls.lot_num <= :inb_lot_to', 'INBOUND');
4567 add_bind_variable('inb_lot_to', inv_mwb_globals.g_lot_to);
4568 END IF;
4569
4570 /* Bug 8396954, Adding below if condition for checking supplier_lot_number condition */
4571 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL OR
4572 inv_mwb_globals.g_supplier_lot_to IS NOT NULL ) THEN
4573 inv_mwb_query_manager.add_from_clause('mtl_lot_numbers mln3', 'INBOUND');
4574 IF NOT (inv_mwb_globals.g_lot_from IS NOT NULL
4575 OR inv_mwb_globals.g_lot_to IS NOT NULL
4576 OR (inv_mwb_globals.g_tree_item_id IS NOT NULL
4577 AND l_lot_control = 2)
4578 OR inv_mwb_globals.g_tree_lot_number IS NOT NULL) THEN
4579 inv_mwb_query_manager.add_from_clause(' rcv_lots_supply rls ','INBOUND');
4580 add_where_clause('rls.shipment_line_id(+) = ms.shipment_line_id ', 'INBOUND');
4581 END IF;
4582 add_where_clause('mln3.lot_number = rls.lot_num', 'INBOUND');
4583 add_where_clause('ms.item_id = mln3.inventory_item_id', 'INBOUND'); -- Bug 9927569
4584 add_where_clause('ms.to_organization_id = mln3.organization_id', 'INBOUND'); -- Bug 9927569
4585
4586 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL AND
4587 inv_mwb_globals.g_supplier_lot_to IS NOT NULL AND
4588 inv_mwb_globals.g_supplier_lot_from = inv_mwb_globals.g_supplier_lot_to) THEN
4589 add_where_clause('mln3.supplier_lot_number = :inb_supplier_lot_from', 'INBOUND');
4590 add_bind_variable('inb_supplier_lot_from', inv_mwb_globals.g_supplier_lot_from);
4591 END IF;
4592
4593 IF (inv_mwb_globals.g_supplier_lot_from IS NOT NULL AND
4594 inv_mwb_globals.g_supplier_lot_from <> NVL(inv_mwb_globals.g_supplier_lot_to, -1) ) THEN
4595 add_where_clause('mln3.supplier_lot_number >= :inb_supplier_lot_from', 'INBOUND');
4596 add_bind_variable('inb_supplier_lot_from', inv_mwb_globals.g_supplier_lot_from);
4597 END IF;
4598
4599 IF (inv_mwb_globals.g_supplier_lot_to IS NOT NULL AND
4600 inv_mwb_globals.g_supplier_lot_to <> NVL(inv_mwb_globals.g_supplier_lot_from, -1) ) THEN
4601 add_where_clause('mln3.supplier_lot_number <= :inb_supplier_lot_to', 'INBOUND');
4602 add_bind_variable('inb_supplier_lot_to', inv_mwb_globals.g_supplier_lot_to);
4603 END IF;
4604 END IF ;
4605 /* End of Bug 8396954 */
4606
4607 IF inv_mwb_globals.g_serial_from IS NOT NULL
4608 OR inv_mwb_globals.g_serial_to IS NOT NULL
4609 OR (inv_mwb_globals.g_tree_item_id IS NOT NULL
4610 AND l_serial_control = 2)
4611 OR inv_mwb_globals.g_tree_serial_number IS NOT NULL THEN
4612 inv_mwb_query_manager.add_from_clause('rcv_serials_supply rss','INBOUND');
4613 add_where_clause('rss.shipment_line_id(+) = ms.shipment_line_id', 'INBOUND');
4614 END IF;
4615
4616 -- for bug 8420783
4617 -- for bug 8414727
4618 IF (inv_mwb_globals.g_lot_from IS NOT NULL
4619 OR inv_mwb_globals.g_lot_to IS NOT NULL)
4620 AND (inv_mwb_globals.g_tree_item_id IS NOT NULL
4621 -- here only for serial control code 2, because for serial control code 2, the query sql will join the rcv_serials_supply
4622 -- so need to add lot number condition to where_clause.
4623 AND l_serial_control =2) THEN
4624 add_where_clause('rss.lot_num = rls.lot_num ', 'INBOUND');
4625 END IF;
4626 -- end of bug 8414727
4627 -- end of bug 8420783
4628
4629 IF (inv_mwb_globals.g_serial_from IS NOT NULL AND
4630 inv_mwb_globals.g_serial_to IS NOT NULL AND
4631 inv_mwb_globals.g_serial_from = inv_mwb_globals.g_serial_to) THEN
4632 add_where_clause('rss.serial_num = :inb_serial_from', 'INBOUND');
4633 add_bind_variable('inb_serial_from', inv_mwb_globals.g_serial_from);
4634 END IF;
4635
4636 IF (inv_mwb_globals.g_serial_from IS NOT NULL AND
4637 inv_mwb_globals.g_serial_from <> NVL(inv_mwb_globals.g_serial_to, -1) ) THEN
4638 add_where_clause('rss.serial_num >= :inb_serial_from', 'INBOUND');
4639 add_bind_variable('inb_serial_from', inv_mwb_globals.g_serial_from);
4640 END IF;
4641
4642 IF (inv_mwb_globals.g_serial_to IS NOT NULL AND
4643 inv_mwb_globals.g_serial_to <> NVL(inv_mwb_globals.g_serial_from, -1) ) THEN
4644 add_where_clause('rss.serial_num <= :inb_serial_to', 'INBOUND');
4645 add_bind_variable('inb_serial_to', inv_mwb_globals.g_serial_to);
4646 END IF;
4647
4648 --Bug 14548684 add view mtl_system_items_vl to support multi-language
4649 IF inv_mwb_globals.g_inventory_item_id IS NULL
4650 AND inv_mwb_globals.g_item_description IS NOT NULL THEN
4651 add_from_clause(' mtl_system_items_kfv msik ','INBOUND');
4652 add_from_clause('mtl_system_items_vl msiv', 'INBOUND');
4653 add_where_clause(' ms.item_id = msik.inventory_item_id ', 'INBOUND');
4654 add_where_clause(' ms.to_organization_id = msik.organization_id ', 'INBOUND');
4655 add_where_clause('msik.inventory_item_id = msiv.inventory_item_id', 'INBOUND');
4656 add_where_clause('msik.organization_id = msiv.organization_id', 'INBOUND');
4657 add_where_clause(' upper(msiv.description) like upper(:inb_item_description) ', 'INBOUND');--Bug 14177143
4658 add_bind_variable('inb_item_description', inv_mwb_globals.g_item_description);
4659 END IF;
4660 END IF;
4661
4662 add_where_clause(' ms.supply_type_code NOT IN (''RECEIVING'') ', 'INBOUND');
4663
4664 IF inv_mwb_globals.g_organization_id IS NOT NULL THEN
4665 add_where_clause('ms.to_organization_id = :inb_to_organization_id', 'INBOUND');
4666 add_bind_variable('inb_to_organization_id', inv_mwb_globals.g_organization_id);
4667 END IF;
4668
4669 IF (inv_mwb_globals.g_expected_from_date IS NOT NULL AND
4670 inv_mwb_globals.g_expected_to_date IS NOT NULL AND
4671 inv_mwb_globals.g_expected_from_date = inv_mwb_globals.g_expected_to_date) THEN
4672 add_where_clause('ms.expected_delivery_date = :inb_expected_from_date', 'INBOUND');
4673 add_bind_variable('inb_expected_from_date', inv_mwb_globals.g_expected_from_date);
4674 END IF;
4675
4676 IF inv_mwb_globals.g_expected_from_date IS NOT NULL THEN
4677 add_where_clause('ms.expected_delivery_date >= :inb_expected_from_date', 'INBOUND');
4678 add_bind_variable('inb_expected_from_date', inv_mwb_globals.g_expected_from_date);
4679 END IF;
4680
4681 IF inv_mwb_globals.g_expected_to_date IS NOT NULL THEN
4682 add_where_clause('ms.expected_delivery_date <= :inb_expected_to_date', 'INBOUND');
4683 add_bind_variable('inb_expected_to_date', inv_mwb_globals.g_expected_to_date);
4684 END IF;
4685
4686 END add_qf_where_inbound;
4687
4688
4689 FUNCTION build_onhand_query RETURN VARCHAR2 IS
4690
4691 l_onhand_exclusive BOOLEAN;
4692 l_query_str inv_mwb_globals.very_long_str;
4693 l_procedure_name VARCHAR2(30);
4694
4695 BEGIN
4696
4697 l_procedure_name := 'BUILD_ONHAND_QUERY';
4698 inv_mwb_globals.print_msg(g_pkg_name, l_procedure_name, 'Entered');
4699
4700 IF ( NVL(inv_mwb_globals.g_chk_onhand, 0) = 1 AND
4701 NVL(inv_mwb_globals.g_chk_inbound, 0) = 0 AND
4702 NVL(inv_mwb_globals.g_chk_receiving, 0) = 0 ) THEN
4703
4704 l_onhand_exclusive := TRUE;
4705
4706 ELSE
4707
4708 l_onhand_exclusive := FALSE;
4709
4710 END IF;
4711
4712 l_query_str := build_query(
4713 g_onhand_select,
4714 g_onhand_from,
4715 g_onhand_where,
4716 g_onhand_group
4717 );
4718
4719 RETURN l_query_str;
4720
4721 END build_onhand_query;
4722
4723 FUNCTION build_inbound_query RETURN VARCHAR2 IS
4724
4725 l_query_str inv_mwb_globals.very_long_str;
4726 l_procedure_name VARCHAR2(30);
4727
4728 BEGIN
4729
4730 l_procedure_name := 'BUILD_INBOUND_QUERY';
4731 l_query_str := ' ';
4732
4733 RETURN l_query_str;
4734
4735 END build_inbound_query;
4736
4737 FUNCTION build_receiving_query RETURN VARCHAR2 IS
4738
4739 l_query_str inv_mwb_globals.very_long_str;
4740 l_procedure_name VARCHAR2(30);
4741
4742 BEGIN
4743
4744 l_procedure_name := 'BUILD_RECEIVING_QUERY';
4745 l_query_str := ' ';
4746
4747 RETURN l_query_str;
4748
4749 END build_receiving_query;
4750
4751 PROCEDURE build_onhand_qf_where IS
4752 BEGIN
4753 g_onhand_where(10) := 'moqd.organization_id = :onh_organization_id';
4754 END build_onhand_qf_where;
4755
4756
4757 PROCEDURE initialize_onhand_query IS
4758 l_procedure_name VARCHAR2(30);
4759 l_temp_rec SelectColumnRecType;
4760 BEGIN
4761
4762 l_procedure_name := 'INITIALIZE_ONHAND_QUERY';
4763
4764 g_onhand_select.DELETE;
4765 g_onhand_where.DELETE;
4766 g_onhand_from.DELETE;
4767 g_onhand_group.DELETE;
4768
4769 g_onhand_where_index := 1;
4770 g_onhand_from_index := 1;
4771 g_onhand_group_index := 1;
4772
4773 l_temp_rec.column_name := 'PO_RELEASE_ID';
4774 l_temp_rec.column_value := 'NULL';
4775 g_onhand_select(PO_RELEASE_ID) := l_temp_rec;
4776
4777 l_temp_rec.column_name := 'RELEASE_LINE_NUMBER';
4778 l_temp_rec.column_value := 'NULL';
4779 g_onhand_select(RELEASE_LINE_NUMBER) := l_temp_rec;
4780
4781 l_temp_rec.column_name := 'SHIPMENT_NUMBER';
4782 l_temp_rec.column_value := 'NULL';
4783 g_onhand_select(SHIPMENT_NUMBER) := l_temp_rec;
4784
4785 l_temp_rec.column_name := 'SHIPMENT_HEADER_ID_INTERORG';
4786 l_temp_rec.column_value := 'NULL';
4787 g_onhand_select(SHIPMENT_HEADER_ID_INTERORG) := l_temp_rec;
4788
4789 l_temp_rec.column_name := 'ASN';
4790 l_temp_rec.column_value := 'NULL';
4791 g_onhand_select(ASN) := l_temp_rec;
4792
4793 l_temp_rec.column_name := 'SHIPMENT_HEADER_ID_ASN';
4794 l_temp_rec.column_value := 'NULL';
4795 g_onhand_select(SHIPMENT_HEADER_ID_ASN) := l_temp_rec;
4796
4797 l_temp_rec.column_name := 'TRADING_PARTNER';
4798 l_temp_rec.column_value := 'NULL';
4799 g_onhand_select(TRADING_PARTNER) := l_temp_rec;
4800
4801 l_temp_rec.column_name := 'VENDOR_ID';
4802 l_temp_rec.column_value := 'NULL';
4803 g_onhand_select(VENDOR_ID) := l_temp_rec;
4804
4805 l_temp_rec.column_name := 'TRADING_PARTNER_SITE';
4806 l_temp_rec.column_value := 'NULL';
4807 g_onhand_select(TRADING_PARTNER_SITE) := l_temp_rec;
4808
4809 l_temp_rec.column_name := 'VENDOR_SITE_ID';
4810 l_temp_rec.column_value := 'NULL';
4811 g_onhand_select(VENDOR_SITE_ID) := l_temp_rec;
4812
4813 l_temp_rec.column_name := 'FROM_ORG';
4814 l_temp_rec.column_value := 'NULL';
4815 g_onhand_select(FROM_ORG) := l_temp_rec;
4816
4817 l_temp_rec.column_name := 'FROM_ORG_ID';
4818 l_temp_rec.column_value := 'NULL';
4819 g_onhand_select(FROM_ORG_ID) := l_temp_rec;
4820
4821 l_temp_rec.column_name := 'TO_ORG';
4822 l_temp_rec.column_value := 'NULL';
4823 g_onhand_select(TO_ORG) := l_temp_rec;
4824
4825 l_temp_rec.column_name := 'TO_ORG_ID';
4826 l_temp_rec.column_value := 'NULL';
4827 g_onhand_select(TO_ORG_ID) := l_temp_rec;
4828
4829 l_temp_rec.column_name := 'EXPECTED_RECEIPT_DATE';
4830 l_temp_rec.column_value := 'NULL';
4831 g_onhand_select(EXPECTED_RECEIPT_DATE) := l_temp_rec;
4832
4833 l_temp_rec.column_name := 'SHIPPED_DATE';
4834 l_temp_rec.column_value := 'NULL';
4835 g_onhand_select(SHIPPED_DATE) := l_temp_rec;
4836
4837 l_temp_rec.column_name := 'OWNING_ORG';
4838 l_temp_rec.column_value := 'NULL';
4839 g_onhand_select(OWNING_ORG) := l_temp_rec;
4840
4841 l_temp_rec.column_name := 'OWNING_ORG_ID';
4842 l_temp_rec.column_value := 'NULL';
4843 g_onhand_select(OWNING_ORG_ID) := l_temp_rec;
4844
4845 l_temp_rec.column_name := 'REQ_HEADER_ID';
4846 l_temp_rec.column_value := 'NULL';
4847 g_onhand_select(REQ_HEADER_ID) := l_temp_rec;
4848
4849 l_temp_rec.column_name := 'OE_HEADER_ID';
4850 l_temp_rec.column_value := 'NULL';
4851 g_onhand_select(OE_HEADER_ID) := l_temp_rec;
4852
4853 l_temp_rec.column_name := 'PO_HEADER_ID';
4854 l_temp_rec.column_value := 'NULL';
4855 g_onhand_select(PO_HEADER_ID) := l_temp_rec;
4856
4857 l_temp_rec.column_name := 'MATURITY_DATE';
4858 l_temp_rec.column_value := 'NULL';
4859 g_onhand_select(MATURITY_DATE) := l_temp_rec;
4860
4861 l_temp_rec.column_name := 'HOLD_DATE';
4862 l_temp_rec.column_value := 'NULL';
4863 g_onhand_select(HOLD_DATE) := l_temp_rec;
4864
4865 l_temp_rec.column_name := 'SUPPLIER_LOT';
4866 l_temp_rec.column_value := 'NULL';
4867 g_onhand_select(SUPPLIER_LOT) := l_temp_rec;
4868
4869 l_temp_rec.column_name := 'PARENT_LOT';
4870 l_temp_rec.column_value := 'NULL';
4871 g_onhand_select(PARENT_LOT) := l_temp_rec;
4872
4873 l_temp_rec.column_name := 'DOCUMENT_TYPE';
4874 l_temp_rec.column_value := 'NULL';
4875 g_onhand_select(DOCUMENT_TYPE) := l_temp_rec;
4876
4877 l_temp_rec.column_name := 'DOCUMENT_TYPE_ID';
4878 l_temp_rec.column_value := 'NULL';
4879 g_onhand_select(DOCUMENT_TYPE_ID) := l_temp_rec;
4880
4881 l_temp_rec.column_name := 'DOCUMENT_NUMBER';
4882 l_temp_rec.column_value := 'NULL';
4883 g_onhand_select(DOCUMENT_NUMBER) := l_temp_rec;
4884
4885 l_temp_rec.column_name := 'DOCUMENT_LINE_NUMBER';
4886 l_temp_rec.column_value := 'NULL';
4887 g_onhand_select(DOCUMENT_LINE_NUMBER) := l_temp_rec;
4888
4889 l_temp_rec.column_name := 'RELEASE_NUMBER';
4890 l_temp_rec.column_value := 'NULL';
4891 g_onhand_select(RELEASE_NUMBER) := l_temp_rec;
4892
4893 l_temp_rec.column_name := 'ORIGINATION_TYPE';
4894 l_temp_rec.column_value := 'NULL';
4895 g_onhand_select(ORIGINATION_TYPE) := l_temp_rec;
4896
4897 l_temp_rec.column_name := 'ORIGINATION_DATE';
4898 l_temp_rec.column_value := 'NULL';
4899 g_onhand_select(ORIGINATION_DATE) := l_temp_rec;
4900
4901 l_temp_rec.column_name := 'ACTION_CODE';
4902 l_temp_rec.column_value := 'NULL';
4903 g_onhand_select(ACTION_CODE) := l_temp_rec;
4904
4905 l_temp_rec.column_name := 'ACTION_DATE';
4906 l_temp_rec.column_value := 'NULL';
4907 g_onhand_select(ACTION_DATE) := l_temp_rec;
4908
4909 l_temp_rec.column_name := 'RETEST_DATE';
4910 l_temp_rec.column_value := 'NULL';
4911 g_onhand_select(RETEST_DATE) := l_temp_rec;
4912
4913 l_temp_rec.column_name := 'SECONDARY_UNPACKED';
4914 l_temp_rec.column_value := 'NULL';
4915 g_onhand_select(SECONDARY_UNPACKED) := l_temp_rec;
4916
4917 l_temp_rec.column_name := 'SECONDARY_PACKED';
4918 l_temp_rec.column_value := 'NULL';
4919 g_onhand_select(SECONDARY_PACKED) := l_temp_rec;
4920
4921 l_temp_rec.column_name := 'SUBINVENTORY_CODE';
4922 l_temp_rec.column_value := 'NULL';
4923 g_onhand_select(SUBINVENTORY_CODE) := l_temp_rec;
4924
4925 l_temp_rec.column_name := 'LOCATOR';
4926 l_temp_rec.column_value := 'NULL';
4927 g_onhand_select(LOCATOR) := l_temp_rec;
4928
4929 l_temp_rec.column_name := 'LOCATOR_ID';
4930 l_temp_rec.column_value := 'NULL';
4931 g_onhand_select(LOCATOR_ID) := l_temp_rec;
4932
4933 l_temp_rec.column_name := 'LPN';
4934 l_temp_rec.column_value := 'NULL';
4935 g_onhand_select(LPN) := l_temp_rec;
4936
4937 l_temp_rec.column_name := 'LPN_ID';
4938 l_temp_rec.column_value := 'NULL';
4939 g_onhand_select(LPN_ID) := l_temp_rec;
4940
4941 l_temp_rec.column_name := 'COST_GROUP';
4942 l_temp_rec.column_value := 'NULL';
4943 g_onhand_select(COST_GROUP) := l_temp_rec;
4944
4945 l_temp_rec.column_name := 'GRADE_CODE';
4946 l_temp_rec.column_value := 'NULL';
4947 g_onhand_select(GRADE_CODE) := l_temp_rec;
4948
4949 l_temp_rec.column_name := 'CG_ID';
4950 l_temp_rec.column_value := 'NULL';
4951 g_onhand_select(CG_ID) := l_temp_rec;
4952
4953 l_temp_rec.column_name := 'LOADED';
4954 l_temp_rec.column_value := 'NULL';
4955 g_onhand_select(LOADED) := l_temp_rec;
4956
4957 l_temp_rec.column_name := 'PLANNING_PARTY';
4958 l_temp_rec.column_value := 'NULL';
4959 g_onhand_select(PLANNING_PARTY) := l_temp_rec;
4960
4961 l_temp_rec.column_name := 'PLANNING_PARTY_ID';
4962 l_temp_rec.column_value := 'NULL';
4963 g_onhand_select(PLANNING_PARTY_ID) := l_temp_rec;
4964
4965 l_temp_rec.column_name := 'OWNING_PARTY';
4966 l_temp_rec.column_value := 'NULL';
4967 g_onhand_select(OWNING_PARTY) := l_temp_rec;
4968
4969 l_temp_rec.column_name := 'OWNING_PARTY_ID';
4970 l_temp_rec.column_value := 'NULL';
4971 g_onhand_select(OWNING_PARTY_ID) := l_temp_rec;
4972
4973 l_temp_rec.column_name := 'LOT';
4974 l_temp_rec.column_value := 'NULL';
4975 g_onhand_select(LOT) := l_temp_rec;
4976
4977
4978 l_temp_rec.column_name := 'SERIAL';
4979 l_temp_rec.column_value := 'NULL';
4980 g_onhand_select(SERIAL) := l_temp_rec;
4981
4982 l_temp_rec.column_name := 'UNIT_NUMBER';
4983 l_temp_rec.column_value := 'NULL';
4984 g_onhand_select(UNIT_NUMBER) := l_temp_rec;
4985
4986 l_temp_rec.column_name := 'LOT_EXPIRY_DATE';
4987 l_temp_rec.column_value := 'NULL';
4988 g_onhand_select(LOT_EXPIRY_DATE) := l_temp_rec;
4989
4990 l_temp_rec.column_name := 'ORGANIZATION_CODE';
4991 l_temp_rec.column_value := 'NULL';
4992 g_onhand_select(ORGANIZATION_CODE) := l_temp_rec;
4993
4994 l_temp_rec.column_name := 'ORG_ID';
4995 l_temp_rec.column_value := 'NULL';
4996 g_onhand_select(ORG_ID) := l_temp_rec;
4997
4998 l_temp_rec.column_name := 'ITEM';
4999 l_temp_rec.column_value := 'NULL';
5000 g_onhand_select(ITEM) := l_temp_rec;
5001
5002 l_temp_rec.column_name := 'ITEM_DESCRIPTION';
5003 l_temp_rec.column_value := 'NULL';
5004 g_onhand_select(ITEM_DESCRIPTION) := l_temp_rec;
5005
5006 l_temp_rec.column_name := 'ITEM_ID';
5007 l_temp_rec.column_value := 'NULL';
5008 g_onhand_select(ITEM_ID) := l_temp_rec;
5009
5010 l_temp_rec.column_name := 'REVISION';
5011 l_temp_rec.column_value := 'NULL';
5012 g_onhand_select(REVISION) := l_temp_rec;
5013
5014 l_temp_rec.column_name := 'PRIMARY_UOM_CODE';
5015 l_temp_rec.column_value := 'NULL';
5016 g_onhand_select(PRIMARY_UOM_CODE) := l_temp_rec;
5017
5018 l_temp_rec.column_name := 'ONHAND';
5019 l_temp_rec.column_value := 'NULL';
5020 g_onhand_select(ONHAND) := l_temp_rec;
5021
5022 l_temp_rec.column_name := 'RECEIVING';
5023 l_temp_rec.column_value := 'NULL';
5024 g_onhand_select(RECEIVING) := l_temp_rec;
5025
5026 l_temp_rec.column_name := 'INBOUND';
5027 l_temp_rec.column_value := 'NULL';
5028 g_onhand_select(INBOUND) := l_temp_rec;
5029
5030 l_temp_rec.column_name := 'UNPACKED';
5031 l_temp_rec.column_value := 'NULL';
5032 g_onhand_select(UNPACKED) := l_temp_rec;
5033
5034 l_temp_rec.column_name := 'PACKED';
5035 l_temp_rec.column_value := 'NULL';
5036 g_onhand_select(PACKED) := l_temp_rec;
5037
5038 l_temp_rec.column_name := 'SECONDARY_UOM_CODE';
5039 l_temp_rec.column_value := 'NULL';
5040 g_onhand_select(SECONDARY_UOM_CODE) := l_temp_rec;
5041
5042 l_temp_rec.column_name := 'SECONDARY_ONHAND';
5043 l_temp_rec.column_value := 'NULL';
5044 g_onhand_select(SECONDARY_ONHAND) := l_temp_rec;
5045
5046 l_temp_rec.column_name := 'SECONDARY_RECEIVING';
5047 l_temp_rec.column_value := 'NULL';
5048 g_onhand_select(SECONDARY_RECEIVING) := l_temp_rec;
5049
5050 l_temp_rec.column_name := 'SECONDARY_INBOUND';
5051 l_temp_rec.column_value := 'NULL';
5052 g_onhand_select(SECONDARY_INBOUND) := l_temp_rec;
5053
5054 l_temp_rec.column_name := 'OWNING_ORGANIZATION_ID';
5055 l_temp_rec.column_value := 'NULL';
5056 g_onhand_select(OWNING_ORGANIZATION_ID) := l_temp_rec;
5057
5058 l_temp_rec.column_name := 'PLANNING_ORGANIZATION_ID';
5059 l_temp_rec.column_value := 'NULL';
5060 g_onhand_select(PLANNING_ORGANIZATION_ID) := l_temp_rec;
5061
5062 l_temp_rec.column_name := 'OWNING_TP_TYPE';
5063 l_temp_rec.column_value := 'NULL';
5064 g_onhand_select(OWNING_TP_TYPE) := l_temp_rec;
5065
5066 l_temp_rec.column_name := 'PLANNING_TP_TYPE';
5067 l_temp_rec.column_value := 'NULL';
5068 g_onhand_select(PLANNING_TP_TYPE) := l_temp_rec;
5069
5070 -- Onhand Material Status support
5071 l_temp_rec.column_name := 'STATUS';
5072 l_temp_rec.column_value := 'NULL';
5073 g_onhand_select(STATUS) := l_temp_rec;
5074
5075 l_temp_rec.column_name := 'STATUS_ID';
5076 l_temp_rec.column_value := 'NULL';
5077 g_onhand_select(STATUS_ID) := l_temp_rec;
5078
5079
5080 END initialize_onhand_query;
5081
5082 PROCEDURE initialize_onhand_1_query IS
5083 l_procedure_name VARCHAR2(30);
5084 l_temp_rec SelectColumnRecType;
5085 BEGIN
5086
5087 l_procedure_name := 'INITIALIZE_onhand_1_QUERY';
5088
5089 g_onhand_1_select.DELETE;
5090 g_onhand_1_where.DELETE;
5091 g_onhand_1_from.DELETE;
5092 g_onhand_1_group.DELETE;
5093
5094 g_onhand_1_where_index := 1;
5095 g_onhand_1_from_index := 1;
5096 g_onhand_1_group_index := 1;
5097
5098 l_temp_rec.column_name := 'PO_RELEASE_ID';
5099 l_temp_rec.column_value := 'NULL';
5100 g_onhand_1_select(PO_RELEASE_ID) := l_temp_rec;
5101
5102 l_temp_rec.column_name := 'RELEASE_LINE_NUMBER';
5103 l_temp_rec.column_value := 'NULL';
5104 g_onhand_1_select(RELEASE_LINE_NUMBER) := l_temp_rec;
5105
5106 l_temp_rec.column_name := 'SHIPMENT_NUMBER';
5107 l_temp_rec.column_value := 'NULL';
5108 g_onhand_1_select(SHIPMENT_NUMBER) := l_temp_rec;
5109
5110 l_temp_rec.column_name := 'SHIPMENT_HEADER_ID_INTERORG';
5111 l_temp_rec.column_value := 'NULL';
5112 g_onhand_1_select(SHIPMENT_HEADER_ID_INTERORG) := l_temp_rec;
5113
5114 l_temp_rec.column_name := 'ASN';
5115 l_temp_rec.column_value := 'NULL';
5116 g_onhand_1_select(ASN) := l_temp_rec;
5117
5118 l_temp_rec.column_name := 'SHIPMENT_HEADER_ID_ASN';
5119 l_temp_rec.column_value := 'NULL';
5120 g_onhand_1_select(SHIPMENT_HEADER_ID_ASN) := l_temp_rec;
5121
5122 l_temp_rec.column_name := 'TRADING_PARTNER';
5123 l_temp_rec.column_value := 'NULL';
5124 g_onhand_1_select(TRADING_PARTNER) := l_temp_rec;
5125
5126 l_temp_rec.column_name := 'VENDOR_ID';
5127 l_temp_rec.column_value := 'NULL';
5128 g_onhand_1_select(VENDOR_ID) := l_temp_rec;
5129
5130 l_temp_rec.column_name := 'TRADING_PARTNER_SITE';
5131 l_temp_rec.column_value := 'NULL';
5132 g_onhand_1_select(TRADING_PARTNER_SITE) := l_temp_rec;
5133
5134 l_temp_rec.column_name := 'VENDOR_SITE_ID';
5135 l_temp_rec.column_value := 'NULL';
5136 g_onhand_1_select(VENDOR_SITE_ID) := l_temp_rec;
5137
5138 l_temp_rec.column_name := 'FROM_ORG';
5139 l_temp_rec.column_value := 'NULL';
5140 g_onhand_1_select(FROM_ORG) := l_temp_rec;
5141
5142 l_temp_rec.column_name := 'FROM_ORG_ID';
5143 l_temp_rec.column_value := 'NULL';
5144 g_onhand_1_select(FROM_ORG_ID) := l_temp_rec;
5145
5146 l_temp_rec.column_name := 'TO_ORG';
5147 l_temp_rec.column_value := 'NULL';
5148 g_onhand_1_select(TO_ORG) := l_temp_rec;
5149
5150 l_temp_rec.column_name := 'TO_ORG_ID';
5151 l_temp_rec.column_value := 'NULL';
5152 g_onhand_1_select(TO_ORG_ID) := l_temp_rec;
5153
5154 l_temp_rec.column_name := 'EXPECTED_RECEIPT_DATE';
5155 l_temp_rec.column_value := 'NULL';
5156 g_onhand_1_select(EXPECTED_RECEIPT_DATE) := l_temp_rec;
5157
5158 l_temp_rec.column_name := 'SHIPPED_DATE';
5159 l_temp_rec.column_value := 'NULL';
5160 g_onhand_1_select(SHIPPED_DATE) := l_temp_rec;
5161
5162 l_temp_rec.column_name := 'OWNING_ORG';
5163 l_temp_rec.column_value := 'NULL';
5164 g_onhand_1_select(OWNING_ORG) := l_temp_rec;
5165
5166 l_temp_rec.column_name := 'OWNING_ORG_ID';
5167 l_temp_rec.column_value := 'NULL';
5168 g_onhand_1_select(OWNING_ORG_ID) := l_temp_rec;
5169
5170 l_temp_rec.column_name := 'REQ_HEADER_ID';
5171 l_temp_rec.column_value := 'NULL';
5172 g_onhand_1_select(REQ_HEADER_ID) := l_temp_rec;
5173
5174 l_temp_rec.column_name := 'OE_HEADER_ID';
5175 l_temp_rec.column_value := 'NULL';
5176 g_onhand_1_select(OE_HEADER_ID) := l_temp_rec;
5177
5178 l_temp_rec.column_name := 'PO_HEADER_ID';
5179 l_temp_rec.column_value := 'NULL';
5180 g_onhand_1_select(PO_HEADER_ID) := l_temp_rec;
5181
5182 l_temp_rec.column_name := 'MATURITY_DATE';
5183 l_temp_rec.column_value := 'NULL';
5184 g_onhand_1_select(MATURITY_DATE) := l_temp_rec;
5185
5186 l_temp_rec.column_name := 'HOLD_DATE';
5187 l_temp_rec.column_value := 'NULL';
5188 g_onhand_1_select(HOLD_DATE) := l_temp_rec;
5189
5190 l_temp_rec.column_name := 'SUPPLIER_LOT';
5191 l_temp_rec.column_value := 'NULL';
5192 g_onhand_1_select(SUPPLIER_LOT) := l_temp_rec;
5193
5194 l_temp_rec.column_name := 'PARENT_LOT';
5195 l_temp_rec.column_value := 'NULL';
5196 g_onhand_1_select(PARENT_LOT) := l_temp_rec;
5197
5198 l_temp_rec.column_name := 'DOCUMENT_TYPE';
5199 l_temp_rec.column_value := 'NULL';
5200 g_onhand_1_select(DOCUMENT_TYPE) := l_temp_rec;
5201
5202 l_temp_rec.column_name := 'DOCUMENT_TYPE_ID';
5203 l_temp_rec.column_value := 'NULL';
5204 g_onhand_1_select(DOCUMENT_TYPE_ID) := l_temp_rec;
5205
5206 l_temp_rec.column_name := 'DOCUMENT_NUMBER';
5207 l_temp_rec.column_value := 'NULL';
5208 g_onhand_1_select(DOCUMENT_NUMBER) := l_temp_rec;
5209
5210 l_temp_rec.column_name := 'DOCUMENT_LINE_NUMBER';
5211 l_temp_rec.column_value := 'NULL';
5212 g_onhand_1_select(DOCUMENT_LINE_NUMBER) := l_temp_rec;
5213
5214 l_temp_rec.column_name := 'RELEASE_NUMBER';
5215 l_temp_rec.column_value := 'NULL';
5216 g_onhand_1_select(RELEASE_NUMBER) := l_temp_rec;
5217
5218 l_temp_rec.column_name := 'ORIGINATION_TYPE';
5219 l_temp_rec.column_value := 'NULL';
5220 g_onhand_1_select(ORIGINATION_TYPE) := l_temp_rec;
5221
5222 l_temp_rec.column_name := 'ORIGINATION_DATE';
5223 l_temp_rec.column_value := 'NULL';
5224 g_onhand_1_select(ORIGINATION_DATE) := l_temp_rec;
5225
5226 l_temp_rec.column_name := 'ACTION_CODE';
5227 l_temp_rec.column_value := 'NULL';
5228 g_onhand_1_select(ACTION_CODE) := l_temp_rec;
5229
5230 l_temp_rec.column_name := 'ACTION_DATE';
5231 l_temp_rec.column_value := 'NULL';
5232 g_onhand_1_select(ACTION_DATE) := l_temp_rec;
5233
5234 l_temp_rec.column_name := 'RETEST_DATE';
5235 l_temp_rec.column_value := 'NULL';
5236 g_onhand_1_select(RETEST_DATE) := l_temp_rec;
5237
5238 l_temp_rec.column_name := 'SECONDARY_UNPACKED';
5239 l_temp_rec.column_value := 'NULL';
5240 g_onhand_1_select(SECONDARY_UNPACKED) := l_temp_rec;
5241
5242 l_temp_rec.column_name := 'SECONDARY_PACKED';
5243 l_temp_rec.column_value := 'NULL';
5244 g_onhand_1_select(SECONDARY_PACKED) := l_temp_rec;
5245
5246 l_temp_rec.column_name := 'SUBINVENTORY_CODE';
5247 l_temp_rec.column_value := 'NULL';
5248 g_onhand_1_select(SUBINVENTORY_CODE) := l_temp_rec;
5249
5250 l_temp_rec.column_name := 'LOCATOR';
5251 l_temp_rec.column_value := 'NULL';
5252 g_onhand_1_select(LOCATOR) := l_temp_rec;
5253
5254 l_temp_rec.column_name := 'LOCATOR_ID';
5255 l_temp_rec.column_value := 'NULL';
5256 g_onhand_1_select(LOCATOR_ID) := l_temp_rec;
5257
5258 l_temp_rec.column_name := 'LPN';
5259 l_temp_rec.column_value := 'NULL';
5260 g_onhand_1_select(LPN) := l_temp_rec;
5261
5262 l_temp_rec.column_name := 'LPN_ID';
5263 l_temp_rec.column_value := 'NULL';
5264 g_onhand_1_select(LPN_ID) := l_temp_rec;
5265
5266 l_temp_rec.column_name := 'COST_GROUP';
5267 l_temp_rec.column_value := 'NULL';
5268 g_onhand_1_select(COST_GROUP) := l_temp_rec;
5269
5270 l_temp_rec.column_name := 'GRADE_CODE';
5271 l_temp_rec.column_value := 'NULL';
5272 g_onhand_1_select(GRADE_CODE) := l_temp_rec;
5273
5274 l_temp_rec.column_name := 'CG_ID';
5275 l_temp_rec.column_value := 'NULL';
5276 g_onhand_1_select(CG_ID) := l_temp_rec;
5277
5278 l_temp_rec.column_name := 'LOADED';
5279 l_temp_rec.column_value := 'NULL';
5280 g_onhand_1_select(LOADED) := l_temp_rec;
5281
5282 l_temp_rec.column_name := 'PLANNING_PARTY';
5283 l_temp_rec.column_value := 'NULL';
5284 g_onhand_1_select(PLANNING_PARTY) := l_temp_rec;
5285
5286 l_temp_rec.column_name := 'PLANNING_PARTY_ID';
5287 l_temp_rec.column_value := 'NULL';
5288 g_onhand_1_select(PLANNING_PARTY_ID) := l_temp_rec;
5289
5290 l_temp_rec.column_name := 'OWNING_PARTY';
5291 l_temp_rec.column_value := 'NULL';
5292 g_onhand_1_select(OWNING_PARTY) := l_temp_rec;
5293
5294 l_temp_rec.column_name := 'OWNING_PARTY_ID';
5295 l_temp_rec.column_value := 'NULL';
5296 g_onhand_1_select(OWNING_PARTY_ID) := l_temp_rec;
5297
5298 l_temp_rec.column_name := 'LOT';
5299 l_temp_rec.column_value := 'NULL';
5300 g_onhand_1_select(LOT) := l_temp_rec;
5301
5302
5303 l_temp_rec.column_name := 'SERIAL';
5304 l_temp_rec.column_value := 'NULL';
5305 g_onhand_1_select(SERIAL) := l_temp_rec;
5306
5307 l_temp_rec.column_name := 'UNIT_NUMBER';
5308 l_temp_rec.column_value := 'NULL';
5309 g_onhand_1_select(UNIT_NUMBER) := l_temp_rec;
5310
5311 l_temp_rec.column_name := 'LOT_EXPIRY_DATE';
5312 l_temp_rec.column_value := 'NULL';
5313 g_onhand_1_select(LOT_EXPIRY_DATE) := l_temp_rec;
5314
5315 l_temp_rec.column_name := 'ORGANIZATION_CODE';
5316 l_temp_rec.column_value := 'NULL';
5317 g_onhand_1_select(ORGANIZATION_CODE) := l_temp_rec;
5318
5319 l_temp_rec.column_name := 'ORG_ID';
5320 l_temp_rec.column_value := 'NULL';
5321 g_onhand_1_select(ORG_ID) := l_temp_rec;
5322
5323 l_temp_rec.column_name := 'ITEM';
5324 l_temp_rec.column_value := 'NULL';
5325 g_onhand_1_select(ITEM) := l_temp_rec;
5326
5327 l_temp_rec.column_name := 'ITEM_DESCRIPTION';
5328 l_temp_rec.column_value := 'NULL';
5329 g_onhand_1_select(ITEM_DESCRIPTION) := l_temp_rec;
5330
5331 l_temp_rec.column_name := 'ITEM_ID';
5332 l_temp_rec.column_value := 'NULL';
5333 g_onhand_1_select(ITEM_ID) := l_temp_rec;
5334
5335 l_temp_rec.column_name := 'REVISION';
5336 l_temp_rec.column_value := 'NULL';
5337 g_onhand_1_select(REVISION) := l_temp_rec;
5338
5339 l_temp_rec.column_name := 'PRIMARY_UOM_CODE';
5340 l_temp_rec.column_value := 'NULL';
5341 g_onhand_1_select(PRIMARY_UOM_CODE) := l_temp_rec;
5342
5343 l_temp_rec.column_name := 'ONHAND';
5344 l_temp_rec.column_value := 'NULL';
5345 g_onhand_1_select(ONHAND) := l_temp_rec;
5346
5347 l_temp_rec.column_name := 'RECEIVING';
5348 l_temp_rec.column_value := 'NULL';
5349 g_onhand_1_select(RECEIVING) := l_temp_rec;
5350
5351 l_temp_rec.column_name := 'INBOUND';
5352 l_temp_rec.column_value := 'NULL';
5353 g_onhand_1_select(INBOUND) := l_temp_rec;
5354
5355 l_temp_rec.column_name := 'UNPACKED';
5356 l_temp_rec.column_value := 'NULL';
5357 g_onhand_1_select(UNPACKED) := l_temp_rec;
5358
5359 l_temp_rec.column_name := 'PACKED';
5360 l_temp_rec.column_value := 'NULL';
5361 g_onhand_1_select(PACKED) := l_temp_rec;
5362
5363 l_temp_rec.column_name := 'SECONDARY_UOM_CODE';
5364 l_temp_rec.column_value := 'NULL';
5365 g_onhand_1_select(SECONDARY_UOM_CODE) := l_temp_rec;
5366
5367 l_temp_rec.column_name := 'SECONDARY_ONHAND';
5368 l_temp_rec.column_value := 'NULL';
5369 g_onhand_1_select(SECONDARY_ONHAND) := l_temp_rec;
5370
5371 l_temp_rec.column_name := 'SECONDARY_RECEIVING';
5372 l_temp_rec.column_value := 'NULL';
5373 g_onhand_1_select(SECONDARY_RECEIVING) := l_temp_rec;
5374
5375 l_temp_rec.column_name := 'SECONDARY_INBOUND';
5376 l_temp_rec.column_value := 'NULL';
5377 g_onhand_1_select(SECONDARY_INBOUND) := l_temp_rec;
5378
5379 l_temp_rec.column_name := 'OWNING_ORGANIZATION_ID';
5380 l_temp_rec.column_value := 'NULL';
5381 g_onhand_1_select(OWNING_ORGANIZATION_ID) := l_temp_rec;
5382
5383 l_temp_rec.column_name := 'PLANNING_ORGANIZATION_ID';
5384 l_temp_rec.column_value := 'NULL';
5385 g_onhand_1_select(PLANNING_ORGANIZATION_ID) := l_temp_rec;
5386
5387 l_temp_rec.column_name := 'OWNING_TP_TYPE';
5388 l_temp_rec.column_value := 'NULL';
5389 g_onhand_1_select(OWNING_TP_TYPE) := l_temp_rec;
5390
5391 l_temp_rec.column_name := 'PLANNING_TP_TYPE';
5392 l_temp_rec.column_value := 'NULL';
5393 g_onhand_1_select(PLANNING_TP_TYPE) := l_temp_rec;
5394
5395 -- Onhand Material Status support
5396 l_temp_rec.column_name := 'STATUS';
5397 l_temp_rec.column_value := 'NULL';
5398 g_onhand_1_select(STATUS) := l_temp_rec;
5399
5400 l_temp_rec.column_name := 'STATUS_ID';
5401 l_temp_rec.column_value := 'NULL';
5402 g_onhand_1_select(STATUS_ID) := l_temp_rec;
5403
5404
5405 END initialize_onhand_1_query;
5406
5407
5408 PROCEDURE initialize_inbound_query IS
5409 l_procedure_name VARCHAR2(30);
5410 l_temp_rec SelectColumnRecType;
5411 BEGIN
5412
5413 l_procedure_name := 'INBOUND_INBOUND_QUERY';
5414
5415 g_inbound_select.DELETE;
5416 g_inbound_from.DELETE;
5417 g_inbound_where.DELETE;
5418 g_inbound_group.DELETE;
5419
5420 g_inbound_where_index := 1;
5421 g_inbound_from_index := 1;
5422 g_inbound_group_index := 1;
5423
5424 l_temp_rec.column_name := 'PO_RELEASE_ID';
5425 l_temp_rec.column_value := 'NULL';
5426 g_inbound_select(PO_RELEASE_ID) := l_temp_rec;
5427
5428 l_temp_rec.column_name := 'RELEASE_LINE_NUMBER';
5429 l_temp_rec.column_value := 'NULL';
5430 g_inbound_select(RELEASE_LINE_NUMBER) := l_temp_rec;
5431
5432 l_temp_rec.column_name := 'SHIPMENT_NUMBER';
5433 l_temp_rec.column_value := 'NULL';
5434 g_inbound_select(SHIPMENT_NUMBER) := l_temp_rec;
5435
5436 l_temp_rec.column_name := 'SHIPMENT_HEADER_ID_INTERORG';
5437 l_temp_rec.column_value := 'NULL';
5438 g_inbound_select(SHIPMENT_HEADER_ID_INTERORG) := l_temp_rec;
5439
5440 l_temp_rec.column_name := 'ASN';
5441 l_temp_rec.column_value := 'NULL';
5442 g_inbound_select(ASN) := l_temp_rec;
5443
5444 l_temp_rec.column_name := 'SHIPMENT_HEADER_ID_ASN';
5445 l_temp_rec.column_value := 'NULL';
5446 g_inbound_select(SHIPMENT_HEADER_ID_ASN) := l_temp_rec;
5447
5448 l_temp_rec.column_name := 'TRADING_PARTNER';
5449 l_temp_rec.column_value := 'NULL';
5450 g_inbound_select(TRADING_PARTNER) := l_temp_rec;
5451
5452 l_temp_rec.column_name := 'VENDOR_ID';
5453 l_temp_rec.column_value := 'NULL';
5454 g_inbound_select(VENDOR_ID) := l_temp_rec;
5455
5456 l_temp_rec.column_name := 'TRADING_PARTNER_SITE';
5457 l_temp_rec.column_value := 'NULL';
5458 g_inbound_select(TRADING_PARTNER_SITE) := l_temp_rec;
5459
5460 l_temp_rec.column_name := 'VENDOR_SITE_ID';
5461 l_temp_rec.column_value := 'NULL';
5462 g_inbound_select(VENDOR_SITE_ID) := l_temp_rec;
5463
5464 l_temp_rec.column_name := 'FROM_ORG';
5465 l_temp_rec.column_value := 'NULL';
5466 g_inbound_select(FROM_ORG) := l_temp_rec;
5467
5468 l_temp_rec.column_name := 'FROM_ORG_ID';
5469 l_temp_rec.column_value := 'NULL';
5470 g_inbound_select(FROM_ORG_ID) := l_temp_rec;
5471
5472 l_temp_rec.column_name := 'TO_ORG';
5473 l_temp_rec.column_value := 'NULL';
5474 g_inbound_select(TO_ORG) := l_temp_rec;
5475
5476 l_temp_rec.column_name := 'TO_ORG_ID';
5477 l_temp_rec.column_value := 'NULL';
5478 g_inbound_select(TO_ORG_ID) := l_temp_rec;
5479
5480 l_temp_rec.column_name := 'EXPECTED_RECEIPT_DATE';
5481 l_temp_rec.column_value := 'NULL';
5482 g_inbound_select(EXPECTED_RECEIPT_DATE) := l_temp_rec;
5483
5484 l_temp_rec.column_name := 'SHIPPED_DATE';
5485 l_temp_rec.column_value := 'NULL';
5486 g_inbound_select(SHIPPED_DATE) := l_temp_rec;
5487
5488 l_temp_rec.column_name := 'OWNING_ORG';
5489 l_temp_rec.column_value := 'NULL';
5490 g_inbound_select(OWNING_ORG) := l_temp_rec;
5491
5492 l_temp_rec.column_name := 'OWNING_ORG_ID';
5493 l_temp_rec.column_value := 'NULL';
5494 g_inbound_select(OWNING_ORG_ID) := l_temp_rec;
5495
5496 l_temp_rec.column_name := 'REQ_HEADER_ID';
5497 l_temp_rec.column_value := 'NULL';
5498 g_inbound_select(REQ_HEADER_ID) := l_temp_rec;
5499
5500 l_temp_rec.column_name := 'OE_HEADER_ID';
5501 l_temp_rec.column_value := 'NULL';
5502 g_inbound_select(OE_HEADER_ID) := l_temp_rec;
5503
5504 l_temp_rec.column_name := 'PO_HEADER_ID';
5505 l_temp_rec.column_value := 'NULL';
5506 g_inbound_select(PO_HEADER_ID) := l_temp_rec;
5507
5508 l_temp_rec.column_name := 'MATURITY_DATE';
5509 l_temp_rec.column_value := 'NULL';
5510 g_inbound_select(MATURITY_DATE) := l_temp_rec;
5511
5512 l_temp_rec.column_name := 'HOLD_DATE';
5513 l_temp_rec.column_value := 'NULL';
5514 g_inbound_select(HOLD_DATE) := l_temp_rec;
5515
5516 l_temp_rec.column_name := 'SUPPLIER_LOT';
5517 l_temp_rec.column_value := 'NULL';
5518 g_inbound_select(SUPPLIER_LOT) := l_temp_rec;
5519
5520 l_temp_rec.column_name := 'PARENT_LOT';
5521 l_temp_rec.column_value := 'NULL';
5522 g_inbound_select(PARENT_LOT) := l_temp_rec;
5523
5524 l_temp_rec.column_name := 'DOCUMENT_TYPE';
5525 l_temp_rec.column_value := 'NULL';
5526 g_inbound_select(DOCUMENT_TYPE) := l_temp_rec;
5527
5528 l_temp_rec.column_name := 'DOCUMENT_TYPE_ID';
5529 l_temp_rec.column_value := 'NULL';
5530 g_inbound_select(DOCUMENT_TYPE_ID) := l_temp_rec;
5531
5532 l_temp_rec.column_name := 'DOCUMENT_NUMBER';
5533 l_temp_rec.column_value := 'NULL';
5534 g_inbound_select(DOCUMENT_NUMBER) := l_temp_rec;
5535
5536 l_temp_rec.column_name := 'DOCUMENT_LINE_NUMBER';
5537 l_temp_rec.column_value := 'NULL';
5538 g_inbound_select(DOCUMENT_LINE_NUMBER) := l_temp_rec;
5539
5540 l_temp_rec.column_name := 'RELEASE_NUMBER';
5541 l_temp_rec.column_value := 'NULL';
5542 g_inbound_select(RELEASE_NUMBER) := l_temp_rec;
5543
5544 l_temp_rec.column_name := 'ORIGINATION_TYPE';
5545 l_temp_rec.column_value := 'NULL';
5546 g_inbound_select(ORIGINATION_TYPE) := l_temp_rec;
5547
5548 l_temp_rec.column_name := 'ORIGINATION_DATE';
5549 l_temp_rec.column_value := 'NULL';
5550 g_inbound_select(ORIGINATION_DATE) := l_temp_rec;
5551
5552 l_temp_rec.column_name := 'ACTION_CODE';
5553 l_temp_rec.column_value := 'NULL';
5554 g_inbound_select(ACTION_CODE) := l_temp_rec;
5555
5556 l_temp_rec.column_name := 'ACTION_DATE';
5557 l_temp_rec.column_value := 'NULL';
5558 g_inbound_select(ACTION_DATE) := l_temp_rec;
5559
5560 l_temp_rec.column_name := 'RETEST_DATE';
5561 l_temp_rec.column_value := 'NULL';
5562 g_inbound_select(RETEST_DATE) := l_temp_rec;
5563
5564 l_temp_rec.column_name := 'SECONDARY_UNPACKED';
5565 l_temp_rec.column_value := 'NULL';
5566 g_inbound_select(SECONDARY_UNPACKED) := l_temp_rec;
5567
5568 l_temp_rec.column_name := 'SECONDARY_PACKED';
5569 l_temp_rec.column_value := 'NULL';
5570 g_inbound_select(SECONDARY_PACKED) := l_temp_rec;
5571
5572 l_temp_rec.column_name := 'SUBINVENTORY_CODE';
5573 l_temp_rec.column_value := 'NULL';
5574 g_inbound_select(SUBINVENTORY_CODE) := l_temp_rec;
5575
5576 l_temp_rec.column_name := 'LOCATOR';
5577 l_temp_rec.column_value := 'NULL';
5578 g_inbound_select(LOCATOR) := l_temp_rec;
5579
5580 l_temp_rec.column_name := 'LOCATOR_ID';
5581 l_temp_rec.column_value := 'NULL';
5582 g_inbound_select(LOCATOR_ID) := l_temp_rec;
5583
5584 l_temp_rec.column_name := 'LPN';
5585 l_temp_rec.column_value := 'NULL';
5586 g_inbound_select(LPN) := l_temp_rec;
5587
5588 l_temp_rec.column_name := 'LPN_ID';
5589 l_temp_rec.column_value := 'NULL';
5590 g_inbound_select(LPN_ID) := l_temp_rec;
5591
5592 l_temp_rec.column_name := 'COST_GROUP';
5593 l_temp_rec.column_value := 'NULL';
5594 g_inbound_select(COST_GROUP) := l_temp_rec;
5595
5596 l_temp_rec.column_name := 'GRADE_CODE';
5597 l_temp_rec.column_value := 'NULL';
5598 g_inbound_select(GRADE_CODE) := l_temp_rec;
5599
5600 l_temp_rec.column_name := 'CG_ID';
5601 l_temp_rec.column_value := 'NULL';
5602 g_inbound_select(CG_ID) := l_temp_rec;
5603
5604 l_temp_rec.column_name := 'LOADED';
5605 l_temp_rec.column_value := 'NULL';
5606 g_inbound_select(LOADED) := l_temp_rec;
5607
5608 l_temp_rec.column_name := 'PLANNING_PARTY';
5609 l_temp_rec.column_value := 'NULL';
5610 g_inbound_select(PLANNING_PARTY) := l_temp_rec;
5611
5612 l_temp_rec.column_name := 'PLANNING_PARTY_ID';
5613 l_temp_rec.column_value := 'NULL';
5614 g_inbound_select(PLANNING_PARTY_ID) := l_temp_rec;
5615
5616 l_temp_rec.column_name := 'OWNING_PARTY';
5617 l_temp_rec.column_value := 'NULL';
5618 g_inbound_select(OWNING_PARTY) := l_temp_rec;
5619
5620 l_temp_rec.column_name := 'OWNING_PARTY_ID';
5621 l_temp_rec.column_value := 'NULL';
5622 g_inbound_select(OWNING_PARTY_ID) := l_temp_rec;
5623
5624 l_temp_rec.column_name := 'LOT';
5625 l_temp_rec.column_value := 'NULL';
5626 g_inbound_select(LOT) := l_temp_rec;
5627
5628
5629 l_temp_rec.column_name := 'SERIAL';
5630 l_temp_rec.column_value := 'NULL';
5631 g_inbound_select(SERIAL) := l_temp_rec;
5632
5633 l_temp_rec.column_name := 'UNIT_NUMBER';
5634 l_temp_rec.column_value := 'NULL';
5635 g_inbound_select(UNIT_NUMBER) := l_temp_rec;
5636
5637 l_temp_rec.column_name := 'LOT_EXPIRY_DATE';
5638 l_temp_rec.column_value := 'NULL';
5639 g_inbound_select(LOT_EXPIRY_DATE) := l_temp_rec;
5640
5641 l_temp_rec.column_name := 'ORGANIZATION_CODE';
5642 l_temp_rec.column_value := 'NULL';
5643 g_inbound_select(ORGANIZATION_CODE) := l_temp_rec;
5644
5645 l_temp_rec.column_name := 'ORG_ID';
5646 l_temp_rec.column_value := 'NULL';
5647 g_inbound_select(ORG_ID) := l_temp_rec;
5648
5649 l_temp_rec.column_name := 'ITEM';
5650 l_temp_rec.column_value := 'NULL';
5651 g_inbound_select(ITEM) := l_temp_rec;
5652
5653 l_temp_rec.column_name := 'ITEM_DESCRIPTION';
5654 l_temp_rec.column_value := 'NULL';
5655 g_inbound_select(ITEM_DESCRIPTION) := l_temp_rec;
5656
5657 l_temp_rec.column_name := 'ITEM_ID';
5658 l_temp_rec.column_value := 'NULL';
5659 g_inbound_select(ITEM_ID) := l_temp_rec;
5660
5661 l_temp_rec.column_name := 'REVISION';
5662 l_temp_rec.column_value := 'NULL';
5663 g_inbound_select(REVISION) := l_temp_rec;
5664
5665 l_temp_rec.column_name := 'PRIMARY_UOM_CODE';
5666 l_temp_rec.column_value := 'NULL';
5667 g_inbound_select(PRIMARY_UOM_CODE) := l_temp_rec;
5668
5669 l_temp_rec.column_name := 'ONHAND';
5670 l_temp_rec.column_value := 'NULL';
5671 g_inbound_select(ONHAND) := l_temp_rec;
5672
5673 l_temp_rec.column_name := 'RECEIVING';
5674 l_temp_rec.column_value := 'NULL';
5675 g_inbound_select(RECEIVING) := l_temp_rec;
5676
5677 l_temp_rec.column_name := 'INBOUND';
5678 l_temp_rec.column_value := 'NULL';
5679 g_inbound_select(INBOUND) := l_temp_rec;
5680
5681 l_temp_rec.column_name := 'UNPACKED';
5682 l_temp_rec.column_value := 'NULL';
5683 g_inbound_select(UNPACKED) := l_temp_rec;
5684
5685 l_temp_rec.column_name := 'PACKED';
5686 l_temp_rec.column_value := 'NULL';
5687 g_inbound_select(PACKED) := l_temp_rec;
5688
5689 l_temp_rec.column_name := 'SECONDARY_UOM_CODE';
5690 l_temp_rec.column_value := 'NULL';
5691 g_inbound_select(SECONDARY_UOM_CODE) := l_temp_rec;
5692
5693 l_temp_rec.column_name := 'SECONDARY_ONHAND';
5694 l_temp_rec.column_value := 'NULL';
5695 g_inbound_select(SECONDARY_ONHAND) := l_temp_rec;
5696
5697 l_temp_rec.column_name := 'SECONDARY_RECEIVING';
5698 l_temp_rec.column_value := 'NULL';
5699 g_inbound_select(SECONDARY_RECEIVING) := l_temp_rec;
5700
5701 l_temp_rec.column_name := 'SECONDARY_INBOUND';
5702 l_temp_rec.column_value := 'NULL';
5703 g_inbound_select(SECONDARY_INBOUND) := l_temp_rec;
5704
5705 l_temp_rec.column_name := 'OWNING_ORGANIZATION_ID';
5706 l_temp_rec.column_value := 'NULL';
5707 g_inbound_select(OWNING_ORGANIZATION_ID) := l_temp_rec;
5708
5709 l_temp_rec.column_name := 'PLANNING_ORGANIZATION_ID';
5710 l_temp_rec.column_value := 'NULL';
5711 g_inbound_select(PLANNING_ORGANIZATION_ID) := l_temp_rec;
5712
5713 l_temp_rec.column_name := 'OWNING_TP_TYPE';
5714 l_temp_rec.column_value := 'NULL';
5715 g_inbound_select(OWNING_TP_TYPE) := l_temp_rec;
5716
5717 l_temp_rec.column_name := 'PLANNING_TP_TYPE';
5718 l_temp_rec.column_value := 'NULL';
5719 g_inbound_select(PLANNING_TP_TYPE) := l_temp_rec;
5720
5721 -- Bug 6843313 Onhand Material Status support
5722 l_temp_rec.column_name := 'STATUS';
5723 l_temp_rec.column_value := 'NULL';
5724 g_inbound_select(STATUS) := l_temp_rec;
5725
5726 l_temp_rec.column_name := 'STATUS_ID';
5727 l_temp_rec.column_value := 'NULL';
5728 g_inbound_select(STATUS_ID) := l_temp_rec;
5729
5730 END initialize_inbound_query;
5731
5732 PROCEDURE initialize_inbound_1_query IS
5733 l_procedure_name VARCHAR2(30);
5734 l_temp_rec SelectColumnRecType;
5735 BEGIN
5736
5737 l_procedure_name := 'INBOUND_inbound_1_QUERY';
5738
5739 g_inbound_1_select.DELETE;
5740 g_inbound_1_from.DELETE;
5741 g_inbound_1_where.DELETE;
5742 g_inbound_1_group.DELETE;
5743
5744 g_inbound_1_where_index := 1;
5745 g_inbound_1_from_index := 1;
5746 g_inbound_1_group_index := 1;
5747
5748 l_temp_rec.column_name := 'PO_RELEASE_ID';
5749 l_temp_rec.column_value := 'NULL';
5750 g_inbound_1_select(PO_RELEASE_ID) := l_temp_rec;
5751
5752 l_temp_rec.column_name := 'RELEASE_LINE_NUMBER';
5753 l_temp_rec.column_value := 'NULL';
5754 g_inbound_1_select(RELEASE_LINE_NUMBER) := l_temp_rec;
5755
5756 l_temp_rec.column_name := 'SHIPMENT_NUMBER';
5757 l_temp_rec.column_value := 'NULL';
5758 g_inbound_1_select(SHIPMENT_NUMBER) := l_temp_rec;
5759
5760 l_temp_rec.column_name := 'SHIPMENT_HEADER_ID_INTERORG';
5761 l_temp_rec.column_value := 'NULL';
5762 g_inbound_1_select(SHIPMENT_HEADER_ID_INTERORG) := l_temp_rec;
5763
5764 l_temp_rec.column_name := 'ASN';
5765 l_temp_rec.column_value := 'NULL';
5766 g_inbound_1_select(ASN) := l_temp_rec;
5767
5768 l_temp_rec.column_name := 'SHIPMENT_HEADER_ID_ASN';
5769 l_temp_rec.column_value := 'NULL';
5770 g_inbound_1_select(SHIPMENT_HEADER_ID_ASN) := l_temp_rec;
5771
5772 l_temp_rec.column_name := 'TRADING_PARTNER';
5773 l_temp_rec.column_value := 'NULL';
5774 g_inbound_1_select(TRADING_PARTNER) := l_temp_rec;
5775
5776 l_temp_rec.column_name := 'VENDOR_ID';
5777 l_temp_rec.column_value := 'NULL';
5778 g_inbound_1_select(VENDOR_ID) := l_temp_rec;
5779
5780 l_temp_rec.column_name := 'TRADING_PARTNER_SITE';
5781 l_temp_rec.column_value := 'NULL';
5782 g_inbound_1_select(TRADING_PARTNER_SITE) := l_temp_rec;
5783
5784 l_temp_rec.column_name := 'VENDOR_SITE_ID';
5785 l_temp_rec.column_value := 'NULL';
5786 g_inbound_1_select(VENDOR_SITE_ID) := l_temp_rec;
5787
5788 l_temp_rec.column_name := 'FROM_ORG';
5789 l_temp_rec.column_value := 'NULL';
5790 g_inbound_1_select(FROM_ORG) := l_temp_rec;
5791
5792 l_temp_rec.column_name := 'FROM_ORG_ID';
5793 l_temp_rec.column_value := 'NULL';
5794 g_inbound_1_select(FROM_ORG_ID) := l_temp_rec;
5795
5796 l_temp_rec.column_name := 'TO_ORG';
5797 l_temp_rec.column_value := 'NULL';
5798 g_inbound_1_select(TO_ORG) := l_temp_rec;
5799
5800 l_temp_rec.column_name := 'TO_ORG_ID';
5801 l_temp_rec.column_value := 'NULL';
5802 g_inbound_1_select(TO_ORG_ID) := l_temp_rec;
5803
5804 l_temp_rec.column_name := 'EXPECTED_RECEIPT_DATE';
5805 l_temp_rec.column_value := 'NULL';
5806 g_inbound_1_select(EXPECTED_RECEIPT_DATE) := l_temp_rec;
5807
5808 l_temp_rec.column_name := 'SHIPPED_DATE';
5809 l_temp_rec.column_value := 'NULL';
5810 g_inbound_1_select(SHIPPED_DATE) := l_temp_rec;
5811
5812 l_temp_rec.column_name := 'OWNING_ORG';
5813 l_temp_rec.column_value := 'NULL';
5814 g_inbound_1_select(OWNING_ORG) := l_temp_rec;
5815
5816 l_temp_rec.column_name := 'OWNING_ORG_ID';
5817 l_temp_rec.column_value := 'NULL';
5818 g_inbound_1_select(OWNING_ORG_ID) := l_temp_rec;
5819
5820 l_temp_rec.column_name := 'REQ_HEADER_ID';
5821 l_temp_rec.column_value := 'NULL';
5822 g_inbound_1_select(REQ_HEADER_ID) := l_temp_rec;
5823
5824 l_temp_rec.column_name := 'OE_HEADER_ID';
5825 l_temp_rec.column_value := 'NULL';
5826 g_inbound_1_select(OE_HEADER_ID) := l_temp_rec;
5827
5828 l_temp_rec.column_name := 'PO_HEADER_ID';
5829 l_temp_rec.column_value := 'NULL';
5830 g_inbound_1_select(PO_HEADER_ID) := l_temp_rec;
5831
5832 l_temp_rec.column_name := 'MATURITY_DATE';
5833 l_temp_rec.column_value := 'NULL';
5834 g_inbound_1_select(MATURITY_DATE) := l_temp_rec;
5835
5836 l_temp_rec.column_name := 'HOLD_DATE';
5837 l_temp_rec.column_value := 'NULL';
5838 g_inbound_1_select(HOLD_DATE) := l_temp_rec;
5839
5840 l_temp_rec.column_name := 'SUPPLIER_LOT';
5841 l_temp_rec.column_value := 'NULL';
5842 g_inbound_1_select(SUPPLIER_LOT) := l_temp_rec;
5843
5844 l_temp_rec.column_name := 'PARENT_LOT';
5845 l_temp_rec.column_value := 'NULL';
5846 g_inbound_1_select(PARENT_LOT) := l_temp_rec;
5847
5848 l_temp_rec.column_name := 'DOCUMENT_TYPE';
5849 l_temp_rec.column_value := 'NULL';
5850 g_inbound_1_select(DOCUMENT_TYPE) := l_temp_rec;
5851
5852 l_temp_rec.column_name := 'DOCUMENT_TYPE_ID';
5853 l_temp_rec.column_value := 'NULL';
5854 g_inbound_1_select(DOCUMENT_TYPE_ID) := l_temp_rec;
5855
5856 l_temp_rec.column_name := 'DOCUMENT_NUMBER';
5857 l_temp_rec.column_value := 'NULL';
5858 g_inbound_1_select(DOCUMENT_NUMBER) := l_temp_rec;
5859
5860 l_temp_rec.column_name := 'DOCUMENT_LINE_NUMBER';
5861 l_temp_rec.column_value := 'NULL';
5862 g_inbound_1_select(DOCUMENT_LINE_NUMBER) := l_temp_rec;
5863
5864 l_temp_rec.column_name := 'RELEASE_NUMBER';
5865 l_temp_rec.column_value := 'NULL';
5866 g_inbound_1_select(RELEASE_NUMBER) := l_temp_rec;
5867
5868 l_temp_rec.column_name := 'ORIGINATION_TYPE';
5869 l_temp_rec.column_value := 'NULL';
5870 g_inbound_1_select(ORIGINATION_TYPE) := l_temp_rec;
5871
5872 l_temp_rec.column_name := 'ORIGINATION_DATE';
5873 l_temp_rec.column_value := 'NULL';
5874 g_inbound_1_select(ORIGINATION_DATE) := l_temp_rec;
5875
5876 l_temp_rec.column_name := 'ACTION_CODE';
5877 l_temp_rec.column_value := 'NULL';
5878 g_inbound_1_select(ACTION_CODE) := l_temp_rec;
5879
5880 l_temp_rec.column_name := 'ACTION_DATE';
5881 l_temp_rec.column_value := 'NULL';
5882 g_inbound_1_select(ACTION_DATE) := l_temp_rec;
5883
5884 l_temp_rec.column_name := 'RETEST_DATE';
5885 l_temp_rec.column_value := 'NULL';
5886 g_inbound_1_select(RETEST_DATE) := l_temp_rec;
5887
5888 l_temp_rec.column_name := 'SECONDARY_UNPACKED';
5889 l_temp_rec.column_value := 'NULL';
5890 g_inbound_1_select(SECONDARY_UNPACKED) := l_temp_rec;
5891
5892 l_temp_rec.column_name := 'SECONDARY_PACKED';
5893 l_temp_rec.column_value := 'NULL';
5894 g_inbound_1_select(SECONDARY_PACKED) := l_temp_rec;
5895
5896 l_temp_rec.column_name := 'SUBINVENTORY_CODE';
5897 l_temp_rec.column_value := 'NULL';
5898 g_inbound_1_select(SUBINVENTORY_CODE) := l_temp_rec;
5899
5900 l_temp_rec.column_name := 'LOCATOR';
5901 l_temp_rec.column_value := 'NULL';
5902 g_inbound_1_select(LOCATOR) := l_temp_rec;
5903
5904 l_temp_rec.column_name := 'LOCATOR_ID';
5905 l_temp_rec.column_value := 'NULL';
5906 g_inbound_1_select(LOCATOR_ID) := l_temp_rec;
5907
5908 l_temp_rec.column_name := 'LPN';
5909 l_temp_rec.column_value := 'NULL';
5910 g_inbound_1_select(LPN) := l_temp_rec;
5911
5912 l_temp_rec.column_name := 'LPN_ID';
5913 l_temp_rec.column_value := 'NULL';
5914 g_inbound_1_select(LPN_ID) := l_temp_rec;
5915
5916 l_temp_rec.column_name := 'COST_GROUP';
5917 l_temp_rec.column_value := 'NULL';
5918 g_inbound_1_select(COST_GROUP) := l_temp_rec;
5919
5920 l_temp_rec.column_name := 'GRADE_CODE';
5921 l_temp_rec.column_value := 'NULL';
5922 g_inbound_1_select(GRADE_CODE) := l_temp_rec;
5923
5924 l_temp_rec.column_name := 'CG_ID';
5925 l_temp_rec.column_value := 'NULL';
5926 g_inbound_1_select(CG_ID) := l_temp_rec;
5927
5928 l_temp_rec.column_name := 'LOADED';
5929 l_temp_rec.column_value := 'NULL';
5930 g_inbound_1_select(LOADED) := l_temp_rec;
5931
5932 l_temp_rec.column_name := 'PLANNING_PARTY';
5933 l_temp_rec.column_value := 'NULL';
5934 g_inbound_1_select(PLANNING_PARTY) := l_temp_rec;
5935
5936 l_temp_rec.column_name := 'PLANNING_PARTY_ID';
5937 l_temp_rec.column_value := 'NULL';
5938 g_inbound_1_select(PLANNING_PARTY_ID) := l_temp_rec;
5939
5940 l_temp_rec.column_name := 'OWNING_PARTY';
5941 l_temp_rec.column_value := 'NULL';
5942 g_inbound_1_select(OWNING_PARTY) := l_temp_rec;
5943
5944 l_temp_rec.column_name := 'OWNING_PARTY_ID';
5945 l_temp_rec.column_value := 'NULL';
5946 g_inbound_1_select(OWNING_PARTY_ID) := l_temp_rec;
5947
5948 l_temp_rec.column_name := 'LOT';
5949 l_temp_rec.column_value := 'NULL';
5950 g_inbound_1_select(LOT) := l_temp_rec;
5951
5952
5953 l_temp_rec.column_name := 'SERIAL';
5954 l_temp_rec.column_value := 'NULL';
5955 g_inbound_1_select(SERIAL) := l_temp_rec;
5956
5957 l_temp_rec.column_name := 'UNIT_NUMBER';
5958 l_temp_rec.column_value := 'NULL';
5959 g_inbound_1_select(UNIT_NUMBER) := l_temp_rec;
5960
5961 l_temp_rec.column_name := 'LOT_EXPIRY_DATE';
5962 l_temp_rec.column_value := 'NULL';
5963 g_inbound_1_select(LOT_EXPIRY_DATE) := l_temp_rec;
5964
5965 l_temp_rec.column_name := 'ORGANIZATION_CODE';
5966 l_temp_rec.column_value := 'NULL';
5967 g_inbound_1_select(ORGANIZATION_CODE) := l_temp_rec;
5968
5969 l_temp_rec.column_name := 'ORG_ID';
5970 l_temp_rec.column_value := 'NULL';
5971 g_inbound_1_select(ORG_ID) := l_temp_rec;
5972
5973 l_temp_rec.column_name := 'ITEM';
5974 l_temp_rec.column_value := 'NULL';
5975 g_inbound_1_select(ITEM) := l_temp_rec;
5976
5977 l_temp_rec.column_name := 'ITEM_DESCRIPTION';
5978 l_temp_rec.column_value := 'NULL';
5979 g_inbound_1_select(ITEM_DESCRIPTION) := l_temp_rec;
5980
5981 l_temp_rec.column_name := 'ITEM_ID';
5982 l_temp_rec.column_value := 'NULL';
5983 g_inbound_1_select(ITEM_ID) := l_temp_rec;
5984
5985 l_temp_rec.column_name := 'REVISION';
5986 l_temp_rec.column_value := 'NULL';
5987 g_inbound_1_select(REVISION) := l_temp_rec;
5988
5989 l_temp_rec.column_name := 'PRIMARY_UOM_CODE';
5990 l_temp_rec.column_value := 'NULL';
5991 g_inbound_1_select(PRIMARY_UOM_CODE) := l_temp_rec;
5992
5993 l_temp_rec.column_name := 'ONHAND';
5994 l_temp_rec.column_value := 'NULL';
5995 g_inbound_1_select(ONHAND) := l_temp_rec;
5996
5997 l_temp_rec.column_name := 'RECEIVING';
5998 l_temp_rec.column_value := 'NULL';
5999 g_inbound_1_select(RECEIVING) := l_temp_rec;
6000
6001 l_temp_rec.column_name := 'INBOUND';
6002 l_temp_rec.column_value := 'NULL';
6003 g_inbound_1_select(INBOUND) := l_temp_rec;
6004
6005 l_temp_rec.column_name := 'UNPACKED';
6006 l_temp_rec.column_value := 'NULL';
6007 g_inbound_1_select(UNPACKED) := l_temp_rec;
6008
6009 l_temp_rec.column_name := 'PACKED';
6010 l_temp_rec.column_value := 'NULL';
6011 g_inbound_1_select(PACKED) := l_temp_rec;
6012
6013 l_temp_rec.column_name := 'SECONDARY_UOM_CODE';
6014 l_temp_rec.column_value := 'NULL';
6015 g_inbound_1_select(SECONDARY_UOM_CODE) := l_temp_rec;
6016
6017 l_temp_rec.column_name := 'SECONDARY_ONHAND';
6018 l_temp_rec.column_value := 'NULL';
6019 g_inbound_1_select(SECONDARY_ONHAND) := l_temp_rec;
6020
6021 l_temp_rec.column_name := 'SECONDARY_RECEIVING';
6022 l_temp_rec.column_value := 'NULL';
6023 g_inbound_1_select(SECONDARY_RECEIVING) := l_temp_rec;
6024
6025 l_temp_rec.column_name := 'SECONDARY_INBOUND';
6026 l_temp_rec.column_value := 'NULL';
6027 g_inbound_1_select(SECONDARY_INBOUND) := l_temp_rec;
6028
6029 l_temp_rec.column_name := 'OWNING_ORGANIZATION_ID';
6030 l_temp_rec.column_value := 'NULL';
6031 g_inbound_1_select(OWNING_ORGANIZATION_ID) := l_temp_rec;
6032
6033 l_temp_rec.column_name := 'PLANNING_ORGANIZATION_ID';
6034 l_temp_rec.column_value := 'NULL';
6035 g_inbound_1_select(PLANNING_ORGANIZATION_ID) := l_temp_rec;
6036
6037 l_temp_rec.column_name := 'OWNING_TP_TYPE';
6038 l_temp_rec.column_value := 'NULL';
6039 g_inbound_1_select(OWNING_TP_TYPE) := l_temp_rec;
6040
6041 l_temp_rec.column_name := 'PLANNING_TP_TYPE';
6042 l_temp_rec.column_value := 'NULL';
6043 g_inbound_1_select(PLANNING_TP_TYPE) := l_temp_rec;
6044
6045 -- Bug 6843313 Onhand Material Status support
6046 l_temp_rec.column_name := 'STATUS';
6047 l_temp_rec.column_value := 'NULL';
6048 g_inbound_1_select(STATUS) := l_temp_rec;
6049
6050 l_temp_rec.column_name := 'STATUS_ID';
6051 l_temp_rec.column_value := 'NULL';
6052 g_inbound_1_select(STATUS_ID) := l_temp_rec;
6053
6054 END initialize_inbound_1_query;
6055
6056 PROCEDURE initialize_receiving_query IS
6057 l_procedure_name VARCHAR2(30);
6058 l_temp_rec SelectColumnRecType;
6059 BEGIN
6060
6061 l_procedure_name := 'INBOUND_RECEIVING_QUERY';
6062
6063 g_receiving_select.DELETE;
6064 g_receiving_from.DELETE;
6065 g_receiving_where.DELETE;
6066 g_receiving_group.DELETE;
6067
6068 g_receiving_from_index := 1;
6069 g_receiving_where_index := 1;
6070 g_receiving_group_index := 1;
6071
6072 l_temp_rec.column_name := 'PO_RELEASE_ID';
6073 l_temp_rec.column_value := 'NULL';
6074 g_receiving_select(PO_RELEASE_ID) := l_temp_rec;
6075
6076 l_temp_rec.column_name := 'RELEASE_LINE_NUMBER';
6077 l_temp_rec.column_value := 'NULL';
6078 g_receiving_select(RELEASE_LINE_NUMBER) := l_temp_rec;
6079
6080 l_temp_rec.column_name := 'SHIPMENT_NUMBER';
6081 l_temp_rec.column_value := 'NULL';
6082 g_receiving_select(SHIPMENT_NUMBER) := l_temp_rec;
6083
6084 l_temp_rec.column_name := 'SHIPMENT_HEADER_ID_INTERORG';
6085 l_temp_rec.column_value := 'NULL';
6086 g_receiving_select(SHIPMENT_HEADER_ID_INTERORG) := l_temp_rec;
6087
6088 l_temp_rec.column_name := 'ASN';
6089 l_temp_rec.column_value := 'NULL';
6090 g_receiving_select(ASN) := l_temp_rec;
6091
6092 l_temp_rec.column_name := 'SHIPMENT_HEADER_ID_ASN';
6093 l_temp_rec.column_value := 'NULL';
6094 g_receiving_select(SHIPMENT_HEADER_ID_ASN) := l_temp_rec;
6095
6096 l_temp_rec.column_name := 'TRADING_PARTNER';
6097 l_temp_rec.column_value := 'NULL';
6098 g_receiving_select(TRADING_PARTNER) := l_temp_rec;
6099
6100 l_temp_rec.column_name := 'VENDOR_ID';
6101 l_temp_rec.column_value := 'NULL';
6102 g_receiving_select(VENDOR_ID) := l_temp_rec;
6103
6104 l_temp_rec.column_name := 'TRADING_PARTNER_SITE';
6105 l_temp_rec.column_value := 'NULL';
6106 g_receiving_select(TRADING_PARTNER_SITE) := l_temp_rec;
6107
6108 l_temp_rec.column_name := 'VENDOR_SITE_ID';
6109 l_temp_rec.column_value := 'NULL';
6110 g_receiving_select(VENDOR_SITE_ID) := l_temp_rec;
6111
6112 l_temp_rec.column_name := 'FROM_ORG';
6113 l_temp_rec.column_value := 'NULL';
6114 g_receiving_select(FROM_ORG) := l_temp_rec;
6115
6116 l_temp_rec.column_name := 'FROM_ORG_ID';
6117 l_temp_rec.column_value := 'NULL';
6118 g_receiving_select(FROM_ORG_ID) := l_temp_rec;
6119
6120 l_temp_rec.column_name := 'TO_ORG';
6121 l_temp_rec.column_value := 'NULL';
6122 g_receiving_select(TO_ORG) := l_temp_rec;
6123
6124 l_temp_rec.column_name := 'TO_ORG_ID';
6125 l_temp_rec.column_value := 'NULL';
6126 g_receiving_select(TO_ORG_ID) := l_temp_rec;
6127
6128 l_temp_rec.column_name := 'EXPECTED_RECEIPT_DATE';
6129 l_temp_rec.column_value := 'NULL';
6130 g_receiving_select(EXPECTED_RECEIPT_DATE) := l_temp_rec;
6131
6132 l_temp_rec.column_name := 'SHIPPED_DATE';
6133 l_temp_rec.column_value := 'NULL';
6134 g_receiving_select(SHIPPED_DATE) := l_temp_rec;
6135
6136 l_temp_rec.column_name := 'OWNING_ORG';
6137 l_temp_rec.column_value := 'NULL';
6138 g_receiving_select(OWNING_ORG) := l_temp_rec;
6139
6140 l_temp_rec.column_name := 'OWNING_ORG_ID';
6141 l_temp_rec.column_value := 'NULL';
6142 g_receiving_select(OWNING_ORG_ID) := l_temp_rec;
6143
6144 l_temp_rec.column_name := 'REQ_HEADER_ID';
6145 l_temp_rec.column_value := 'NULL';
6146 g_receiving_select(REQ_HEADER_ID) := l_temp_rec;
6147
6148 l_temp_rec.column_name := 'OE_HEADER_ID';
6149 l_temp_rec.column_value := 'NULL';
6150 g_receiving_select(OE_HEADER_ID) := l_temp_rec;
6151
6152 l_temp_rec.column_name := 'PO_HEADER_ID';
6153 l_temp_rec.column_value := 'NULL';
6154 g_receiving_select(PO_HEADER_ID) := l_temp_rec;
6155
6156 l_temp_rec.column_name := 'MATURITY_DATE';
6157 l_temp_rec.column_value := 'NULL';
6158 g_receiving_select(MATURITY_DATE) := l_temp_rec;
6159
6160 l_temp_rec.column_name := 'HOLD_DATE';
6161 l_temp_rec.column_value := 'NULL';
6162 g_receiving_select(HOLD_DATE) := l_temp_rec;
6163
6164 l_temp_rec.column_name := 'SUPPLIER_LOT';
6165 l_temp_rec.column_value := 'NULL';
6166 g_receiving_select(SUPPLIER_LOT) := l_temp_rec;
6167
6168 l_temp_rec.column_name := 'PARENT_LOT';
6169 l_temp_rec.column_value := 'NULL';
6170 g_receiving_select(PARENT_LOT) := l_temp_rec;
6171
6172 l_temp_rec.column_name := 'DOCUMENT_TYPE';
6173 l_temp_rec.column_value := 'NULL';
6174 g_receiving_select(DOCUMENT_TYPE) := l_temp_rec;
6175
6176 l_temp_rec.column_name := 'DOCUMENT_TYPE_ID';
6177 l_temp_rec.column_value := 'NULL';
6178 g_receiving_select(DOCUMENT_TYPE_ID) := l_temp_rec;
6179
6180 l_temp_rec.column_name := 'DOCUMENT_NUMBER';
6181 l_temp_rec.column_value := 'NULL';
6182 g_receiving_select(DOCUMENT_NUMBER) := l_temp_rec;
6183
6184 l_temp_rec.column_name := 'DOCUMENT_LINE_NUMBER';
6185 l_temp_rec.column_value := 'NULL';
6186 g_receiving_select(DOCUMENT_LINE_NUMBER) := l_temp_rec;
6187
6188 l_temp_rec.column_name := 'RELEASE_NUMBER';
6189 l_temp_rec.column_value := 'NULL';
6190 g_receiving_select(RELEASE_NUMBER) := l_temp_rec;
6191
6192 l_temp_rec.column_name := 'ORIGINATION_TYPE';
6193 l_temp_rec.column_value := 'NULL';
6194 g_receiving_select(ORIGINATION_TYPE) := l_temp_rec;
6195
6196 l_temp_rec.column_name := 'ORIGINATION_DATE';
6197 l_temp_rec.column_value := 'NULL';
6198 g_receiving_select(ORIGINATION_DATE) := l_temp_rec;
6199
6200 l_temp_rec.column_name := 'ACTION_CODE';
6201 l_temp_rec.column_value := 'NULL';
6202 g_receiving_select(ACTION_CODE) := l_temp_rec;
6203
6204 l_temp_rec.column_name := 'ACTION_DATE';
6205 l_temp_rec.column_value := 'NULL';
6206 g_receiving_select(ACTION_DATE) := l_temp_rec;
6207
6208 l_temp_rec.column_name := 'RETEST_DATE';
6209 l_temp_rec.column_value := 'NULL';
6210 g_receiving_select(RETEST_DATE) := l_temp_rec;
6211
6212 l_temp_rec.column_name := 'SECONDARY_UNPACKED';
6213 l_temp_rec.column_value := 'NULL';
6214 g_receiving_select(SECONDARY_UNPACKED) := l_temp_rec;
6215
6216 l_temp_rec.column_name := 'SECONDARY_PACKED';
6217 l_temp_rec.column_value := 'NULL';
6218 g_receiving_select(SECONDARY_PACKED) := l_temp_rec;
6219
6220 l_temp_rec.column_name := 'SUBINVENTORY_CODE';
6221 l_temp_rec.column_value := 'NULL';
6222 g_receiving_select(SUBINVENTORY_CODE) := l_temp_rec;
6223
6224 l_temp_rec.column_name := 'LOCATOR';
6225 l_temp_rec.column_value := 'NULL';
6226 g_receiving_select(LOCATOR) := l_temp_rec;
6227
6228 l_temp_rec.column_name := 'LOCATOR_ID';
6229 l_temp_rec.column_value := 'NULL';
6230 g_receiving_select(LOCATOR_ID) := l_temp_rec;
6231
6232 l_temp_rec.column_name := 'LPN';
6233 l_temp_rec.column_value := 'NULL';
6234 g_receiving_select(LPN) := l_temp_rec;
6235
6236 l_temp_rec.column_name := 'LPN_ID';
6237 l_temp_rec.column_value := 'NULL';
6238 g_receiving_select(LPN_ID) := l_temp_rec;
6239
6240 l_temp_rec.column_name := 'COST_GROUP';
6241 l_temp_rec.column_value := 'NULL';
6242 g_receiving_select(COST_GROUP) := l_temp_rec;
6243
6244 l_temp_rec.column_name := 'GRADE_CODE';
6245 l_temp_rec.column_value := 'NULL';
6246 g_receiving_select(GRADE_CODE) := l_temp_rec;
6247
6248 l_temp_rec.column_name := 'CG_ID';
6249 l_temp_rec.column_value := 'NULL';
6250 g_receiving_select(CG_ID) := l_temp_rec;
6251
6252 l_temp_rec.column_name := 'LOADED';
6253 l_temp_rec.column_value := 'NULL';
6254 g_receiving_select(LOADED) := l_temp_rec;
6255
6256 l_temp_rec.column_name := 'PLANNING_PARTY';
6257 l_temp_rec.column_value := 'NULL';
6258 g_receiving_select(PLANNING_PARTY) := l_temp_rec;
6259
6260 l_temp_rec.column_name := 'PLANNING_PARTY_ID';
6261 l_temp_rec.column_value := 'NULL';
6262 g_receiving_select(PLANNING_PARTY_ID) := l_temp_rec;
6263
6264 l_temp_rec.column_name := 'OWNING_PARTY';
6265 l_temp_rec.column_value := 'NULL';
6266 g_receiving_select(OWNING_PARTY) := l_temp_rec;
6267
6268 l_temp_rec.column_name := 'OWNING_PARTY_ID';
6269 l_temp_rec.column_value := 'NULL';
6270 g_receiving_select(OWNING_PARTY_ID) := l_temp_rec;
6271
6272 l_temp_rec.column_name := 'LOT';
6273 l_temp_rec.column_value := 'NULL';
6274 g_receiving_select(LOT) := l_temp_rec;
6275
6276
6277 l_temp_rec.column_name := 'SERIAL';
6278 l_temp_rec.column_value := 'NULL';
6279 g_receiving_select(SERIAL) := l_temp_rec;
6280
6281 l_temp_rec.column_name := 'UNIT_NUMBER';
6282 l_temp_rec.column_value := 'NULL';
6283 g_receiving_select(UNIT_NUMBER) := l_temp_rec;
6284
6285 l_temp_rec.column_name := 'LOT_EXPIRY_DATE';
6286 l_temp_rec.column_value := 'NULL';
6287 g_receiving_select(LOT_EXPIRY_DATE) := l_temp_rec;
6288
6289 l_temp_rec.column_name := 'ORGANIZATION_CODE';
6290 l_temp_rec.column_value := 'NULL';
6291 g_receiving_select(ORGANIZATION_CODE) := l_temp_rec;
6292
6293 l_temp_rec.column_name := 'ORG_ID';
6294 l_temp_rec.column_value := 'NULL';
6295 g_receiving_select(ORG_ID) := l_temp_rec;
6296
6297 l_temp_rec.column_name := 'ITEM';
6298 l_temp_rec.column_value := 'NULL';
6299 g_receiving_select(ITEM) := l_temp_rec;
6300
6301 l_temp_rec.column_name := 'ITEM_DESCRIPTION';
6302 l_temp_rec.column_value := 'NULL';
6303 g_receiving_select(ITEM_DESCRIPTION) := l_temp_rec;
6304
6305 l_temp_rec.column_name := 'ITEM_ID';
6306 l_temp_rec.column_value := 'NULL';
6307 g_receiving_select(ITEM_ID) := l_temp_rec;
6308
6309 l_temp_rec.column_name := 'REVISION';
6310 l_temp_rec.column_value := 'NULL';
6311 g_receiving_select(REVISION) := l_temp_rec;
6312
6313 l_temp_rec.column_name := 'PRIMARY_UOM_CODE';
6314 l_temp_rec.column_value := 'NULL';
6315 g_receiving_select(PRIMARY_UOM_CODE) := l_temp_rec;
6316
6317 l_temp_rec.column_name := 'ONHAND';
6318 l_temp_rec.column_value := 'NULL';
6319 g_receiving_select(ONHAND) := l_temp_rec;
6320
6321 l_temp_rec.column_name := 'RECEIVING';
6322 l_temp_rec.column_value := 'NULL';
6323 g_receiving_select(RECEIVING) := l_temp_rec;
6324
6325 l_temp_rec.column_name := 'INBOUND';
6326 l_temp_rec.column_value := 'NULL';
6327 g_receiving_select(INBOUND) := l_temp_rec;
6328
6329 l_temp_rec.column_name := 'UNPACKED';
6330 l_temp_rec.column_value := 'NULL';
6331 g_receiving_select(UNPACKED) := l_temp_rec;
6332
6333 l_temp_rec.column_name := 'PACKED';
6334 l_temp_rec.column_value := 'NULL';
6335 g_receiving_select(PACKED) := l_temp_rec;
6336
6337 l_temp_rec.column_name := 'SECONDARY_UOM_CODE';
6338 l_temp_rec.column_value := 'NULL';
6339 g_receiving_select(SECONDARY_UOM_CODE) := l_temp_rec;
6340
6341 l_temp_rec.column_name := 'SECONDARY_ONHAND';
6342 l_temp_rec.column_value := 'NULL';
6343 g_receiving_select(SECONDARY_ONHAND) := l_temp_rec;
6344
6345 l_temp_rec.column_name := 'SECONDARY_RECEIVING';
6346 l_temp_rec.column_value := 'NULL';
6347 g_receiving_select(SECONDARY_RECEIVING) := l_temp_rec;
6348
6349 l_temp_rec.column_name := 'SECONDARY_INBOUND';
6350 l_temp_rec.column_value := 'NULL';
6351 g_receiving_select(SECONDARY_INBOUND) := l_temp_rec;
6352
6353 l_temp_rec.column_name := 'OWNING_ORGANIZATION_ID';
6354 l_temp_rec.column_value := 'NULL';
6355 g_receiving_select(OWNING_ORGANIZATION_ID) := l_temp_rec;
6356
6357 l_temp_rec.column_name := 'PLANNING_ORGANIZATION_ID';
6358 l_temp_rec.column_value := 'NULL';
6359 g_receiving_select(PLANNING_ORGANIZATION_ID) := l_temp_rec;
6360
6361 l_temp_rec.column_name := 'OWNING_TP_TYPE';
6362 l_temp_rec.column_value := 'NULL';
6363 g_receiving_select(OWNING_TP_TYPE) := l_temp_rec;
6364
6365 l_temp_rec.column_name := 'PLANNING_TP_TYPE';
6366 l_temp_rec.column_value := 'NULL';
6367 g_receiving_select(PLANNING_TP_TYPE) := l_temp_rec;
6368
6369 -- Bug 6843313 Onhand Material Status support
6370 l_temp_rec.column_name := 'STATUS';
6371 l_temp_rec.column_value := 'NULL';
6372 g_receiving_select(STATUS) := l_temp_rec;
6373
6374 l_temp_rec.column_name := 'STATUS_ID';
6375 l_temp_rec.column_value := 'NULL';
6376 g_receiving_select(STATUS_ID) := l_temp_rec;
6377
6378 END initialize_receiving_query;
6379
6380 PROCEDURE initialize_receiving_1_query IS
6381 l_procedure_name VARCHAR2(30);
6382 l_temp_rec SelectColumnRecType;
6383 BEGIN
6384
6385 l_procedure_name := 'INBOUND_receiving_1_QUERY';
6386
6387 g_receiving_1_select.DELETE;
6388 g_receiving_1_from.DELETE;
6389 g_receiving_1_where.DELETE;
6390 g_receiving_1_group.DELETE;
6391
6392 g_receiving_1_from_index := 1;
6393 g_receiving_1_where_index := 1;
6394 g_receiving_1_group_index := 1;
6395
6396 l_temp_rec.column_name := 'PO_RELEASE_ID';
6397 l_temp_rec.column_value := 'NULL';
6398 g_receiving_1_select(PO_RELEASE_ID) := l_temp_rec;
6399
6400 l_temp_rec.column_name := 'RELEASE_LINE_NUMBER';
6401 l_temp_rec.column_value := 'NULL';
6402 g_receiving_1_select(RELEASE_LINE_NUMBER) := l_temp_rec;
6403
6404 l_temp_rec.column_name := 'SHIPMENT_NUMBER';
6405 l_temp_rec.column_value := 'NULL';
6406 g_receiving_1_select(SHIPMENT_NUMBER) := l_temp_rec;
6407
6408 l_temp_rec.column_name := 'SHIPMENT_HEADER_ID_INTERORG';
6409 l_temp_rec.column_value := 'NULL';
6410 g_receiving_1_select(SHIPMENT_HEADER_ID_INTERORG) := l_temp_rec;
6411
6412 l_temp_rec.column_name := 'ASN';
6413 l_temp_rec.column_value := 'NULL';
6414 g_receiving_1_select(ASN) := l_temp_rec;
6415
6416 l_temp_rec.column_name := 'SHIPMENT_HEADER_ID_ASN';
6417 l_temp_rec.column_value := 'NULL';
6418 g_receiving_1_select(SHIPMENT_HEADER_ID_ASN) := l_temp_rec;
6419
6420 l_temp_rec.column_name := 'TRADING_PARTNER';
6421 l_temp_rec.column_value := 'NULL';
6422 g_receiving_1_select(TRADING_PARTNER) := l_temp_rec;
6423
6424 l_temp_rec.column_name := 'VENDOR_ID';
6425 l_temp_rec.column_value := 'NULL';
6426 g_receiving_1_select(VENDOR_ID) := l_temp_rec;
6427
6428 l_temp_rec.column_name := 'TRADING_PARTNER_SITE';
6429 l_temp_rec.column_value := 'NULL';
6430 g_receiving_1_select(TRADING_PARTNER_SITE) := l_temp_rec;
6431
6432 l_temp_rec.column_name := 'VENDOR_SITE_ID';
6433 l_temp_rec.column_value := 'NULL';
6434 g_receiving_1_select(VENDOR_SITE_ID) := l_temp_rec;
6435
6436 l_temp_rec.column_name := 'FROM_ORG';
6437 l_temp_rec.column_value := 'NULL';
6438 g_receiving_1_select(FROM_ORG) := l_temp_rec;
6439
6440 l_temp_rec.column_name := 'FROM_ORG_ID';
6441 l_temp_rec.column_value := 'NULL';
6442 g_receiving_1_select(FROM_ORG_ID) := l_temp_rec;
6443
6444 l_temp_rec.column_name := 'TO_ORG';
6445 l_temp_rec.column_value := 'NULL';
6446 g_receiving_1_select(TO_ORG) := l_temp_rec;
6447
6448 l_temp_rec.column_name := 'TO_ORG_ID';
6449 l_temp_rec.column_value := 'NULL';
6450 g_receiving_1_select(TO_ORG_ID) := l_temp_rec;
6451
6452 l_temp_rec.column_name := 'EXPECTED_RECEIPT_DATE';
6453 l_temp_rec.column_value := 'NULL';
6454 g_receiving_1_select(EXPECTED_RECEIPT_DATE) := l_temp_rec;
6455
6456 l_temp_rec.column_name := 'SHIPPED_DATE';
6457 l_temp_rec.column_value := 'NULL';
6458 g_receiving_1_select(SHIPPED_DATE) := l_temp_rec;
6459
6460 l_temp_rec.column_name := 'OWNING_ORG';
6461 l_temp_rec.column_value := 'NULL';
6462 g_receiving_1_select(OWNING_ORG) := l_temp_rec;
6463
6464 l_temp_rec.column_name := 'OWNING_ORG_ID';
6465 l_temp_rec.column_value := 'NULL';
6466 g_receiving_1_select(OWNING_ORG_ID) := l_temp_rec;
6467
6468 l_temp_rec.column_name := 'REQ_HEADER_ID';
6469 l_temp_rec.column_value := 'NULL';
6470 g_receiving_1_select(REQ_HEADER_ID) := l_temp_rec;
6471
6472 l_temp_rec.column_name := 'OE_HEADER_ID';
6473 l_temp_rec.column_value := 'NULL';
6474 g_receiving_1_select(OE_HEADER_ID) := l_temp_rec;
6475
6476 l_temp_rec.column_name := 'PO_HEADER_ID';
6477 l_temp_rec.column_value := 'NULL';
6478 g_receiving_1_select(PO_HEADER_ID) := l_temp_rec;
6479
6480 l_temp_rec.column_name := 'MATURITY_DATE';
6481 l_temp_rec.column_value := 'NULL';
6482 g_receiving_1_select(MATURITY_DATE) := l_temp_rec;
6483
6484 l_temp_rec.column_name := 'HOLD_DATE';
6485 l_temp_rec.column_value := 'NULL';
6486 g_receiving_1_select(HOLD_DATE) := l_temp_rec;
6487
6488 l_temp_rec.column_name := 'SUPPLIER_LOT';
6489 l_temp_rec.column_value := 'NULL';
6490 g_receiving_1_select(SUPPLIER_LOT) := l_temp_rec;
6491
6492 l_temp_rec.column_name := 'PARENT_LOT';
6493 l_temp_rec.column_value := 'NULL';
6494 g_receiving_1_select(PARENT_LOT) := l_temp_rec;
6495
6496 l_temp_rec.column_name := 'DOCUMENT_TYPE';
6497 l_temp_rec.column_value := 'NULL';
6498 g_receiving_1_select(DOCUMENT_TYPE) := l_temp_rec;
6499
6500 l_temp_rec.column_name := 'DOCUMENT_TYPE_ID';
6501 l_temp_rec.column_value := 'NULL';
6502 g_receiving_1_select(DOCUMENT_TYPE_ID) := l_temp_rec;
6503
6504 l_temp_rec.column_name := 'DOCUMENT_NUMBER';
6505 l_temp_rec.column_value := 'NULL';
6506 g_receiving_1_select(DOCUMENT_NUMBER) := l_temp_rec;
6507
6508 l_temp_rec.column_name := 'DOCUMENT_LINE_NUMBER';
6509 l_temp_rec.column_value := 'NULL';
6510 g_receiving_1_select(DOCUMENT_LINE_NUMBER) := l_temp_rec;
6511
6512 l_temp_rec.column_name := 'RELEASE_NUMBER';
6513 l_temp_rec.column_value := 'NULL';
6514 g_receiving_1_select(RELEASE_NUMBER) := l_temp_rec;
6515
6516 l_temp_rec.column_name := 'ORIGINATION_TYPE';
6517 l_temp_rec.column_value := 'NULL';
6518 g_receiving_1_select(ORIGINATION_TYPE) := l_temp_rec;
6519
6520 l_temp_rec.column_name := 'ORIGINATION_DATE';
6521 l_temp_rec.column_value := 'NULL';
6522 g_receiving_1_select(ORIGINATION_DATE) := l_temp_rec;
6523
6524 l_temp_rec.column_name := 'ACTION_CODE';
6525 l_temp_rec.column_value := 'NULL';
6526 g_receiving_1_select(ACTION_CODE) := l_temp_rec;
6527
6528 l_temp_rec.column_name := 'ACTION_DATE';
6529 l_temp_rec.column_value := 'NULL';
6530 g_receiving_1_select(ACTION_DATE) := l_temp_rec;
6531
6532 l_temp_rec.column_name := 'RETEST_DATE';
6533 l_temp_rec.column_value := 'NULL';
6534 g_receiving_1_select(RETEST_DATE) := l_temp_rec;
6535
6536 l_temp_rec.column_name := 'SECONDARY_UNPACKED';
6537 l_temp_rec.column_value := 'NULL';
6538 g_receiving_1_select(SECONDARY_UNPACKED) := l_temp_rec;
6539
6540 l_temp_rec.column_name := 'SECONDARY_PACKED';
6541 l_temp_rec.column_value := 'NULL';
6542 g_receiving_1_select(SECONDARY_PACKED) := l_temp_rec;
6543
6544 l_temp_rec.column_name := 'SUBINVENTORY_CODE';
6545 l_temp_rec.column_value := 'NULL';
6546 g_receiving_1_select(SUBINVENTORY_CODE) := l_temp_rec;
6547
6548 l_temp_rec.column_name := 'LOCATOR';
6549 l_temp_rec.column_value := 'NULL';
6550 g_receiving_1_select(LOCATOR) := l_temp_rec;
6551
6552 l_temp_rec.column_name := 'LOCATOR_ID';
6553 l_temp_rec.column_value := 'NULL';
6554 g_receiving_1_select(LOCATOR_ID) := l_temp_rec;
6555
6556 l_temp_rec.column_name := 'LPN';
6557 l_temp_rec.column_value := 'NULL';
6558 g_receiving_1_select(LPN) := l_temp_rec;
6559
6560 l_temp_rec.column_name := 'LPN_ID';
6561 l_temp_rec.column_value := 'NULL';
6562 g_receiving_1_select(LPN_ID) := l_temp_rec;
6563
6564 l_temp_rec.column_name := 'COST_GROUP';
6565 l_temp_rec.column_value := 'NULL';
6566 g_receiving_1_select(COST_GROUP) := l_temp_rec;
6567
6568 l_temp_rec.column_name := 'GRADE_CODE';
6569 l_temp_rec.column_value := 'NULL';
6570 g_receiving_1_select(GRADE_CODE) := l_temp_rec;
6571
6572 l_temp_rec.column_name := 'CG_ID';
6573 l_temp_rec.column_value := 'NULL';
6574 g_receiving_1_select(CG_ID) := l_temp_rec;
6575
6576 l_temp_rec.column_name := 'LOADED';
6577 l_temp_rec.column_value := 'NULL';
6578 g_receiving_1_select(LOADED) := l_temp_rec;
6579
6580 l_temp_rec.column_name := 'PLANNING_PARTY';
6581 l_temp_rec.column_value := 'NULL';
6582 g_receiving_1_select(PLANNING_PARTY) := l_temp_rec;
6583
6584 l_temp_rec.column_name := 'PLANNING_PARTY_ID';
6585 l_temp_rec.column_value := 'NULL';
6586 g_receiving_1_select(PLANNING_PARTY_ID) := l_temp_rec;
6587
6588 l_temp_rec.column_name := 'OWNING_PARTY';
6589 l_temp_rec.column_value := 'NULL';
6590 g_receiving_1_select(OWNING_PARTY) := l_temp_rec;
6591
6592 l_temp_rec.column_name := 'OWNING_PARTY_ID';
6593 l_temp_rec.column_value := 'NULL';
6594 g_receiving_1_select(OWNING_PARTY_ID) := l_temp_rec;
6595
6596 l_temp_rec.column_name := 'LOT';
6597 l_temp_rec.column_value := 'NULL';
6598 g_receiving_1_select(LOT) := l_temp_rec;
6599
6600
6601 l_temp_rec.column_name := 'SERIAL';
6602 l_temp_rec.column_value := 'NULL';
6603 g_receiving_1_select(SERIAL) := l_temp_rec;
6604
6605 l_temp_rec.column_name := 'UNIT_NUMBER';
6606 l_temp_rec.column_value := 'NULL';
6607 g_receiving_1_select(UNIT_NUMBER) := l_temp_rec;
6608
6609 l_temp_rec.column_name := 'LOT_EXPIRY_DATE';
6610 l_temp_rec.column_value := 'NULL';
6611 g_receiving_1_select(LOT_EXPIRY_DATE) := l_temp_rec;
6612
6613 l_temp_rec.column_name := 'ORGANIZATION_CODE';
6614 l_temp_rec.column_value := 'NULL';
6615 g_receiving_1_select(ORGANIZATION_CODE) := l_temp_rec;
6616
6617 l_temp_rec.column_name := 'ORG_ID';
6618 l_temp_rec.column_value := 'NULL';
6619 g_receiving_1_select(ORG_ID) := l_temp_rec;
6620
6621 l_temp_rec.column_name := 'ITEM';
6622 l_temp_rec.column_value := 'NULL';
6623 g_receiving_1_select(ITEM) := l_temp_rec;
6624
6625 l_temp_rec.column_name := 'ITEM_DESCRIPTION';
6626 l_temp_rec.column_value := 'NULL';
6627 g_receiving_1_select(ITEM_DESCRIPTION) := l_temp_rec;
6628
6629 l_temp_rec.column_name := 'ITEM_ID';
6630 l_temp_rec.column_value := 'NULL';
6631 g_receiving_1_select(ITEM_ID) := l_temp_rec;
6632
6633 l_temp_rec.column_name := 'REVISION';
6634 l_temp_rec.column_value := 'NULL';
6635 g_receiving_1_select(REVISION) := l_temp_rec;
6636
6637 l_temp_rec.column_name := 'PRIMARY_UOM_CODE';
6638 l_temp_rec.column_value := 'NULL';
6639 g_receiving_1_select(PRIMARY_UOM_CODE) := l_temp_rec;
6640
6641 l_temp_rec.column_name := 'ONHAND';
6642 l_temp_rec.column_value := 'NULL';
6643 g_receiving_1_select(ONHAND) := l_temp_rec;
6644
6645 l_temp_rec.column_name := 'RECEIVING';
6646 l_temp_rec.column_value := 'NULL';
6647 g_receiving_1_select(RECEIVING) := l_temp_rec;
6648
6649 l_temp_rec.column_name := 'INBOUND';
6650 l_temp_rec.column_value := 'NULL';
6651 g_receiving_1_select(INBOUND) := l_temp_rec;
6652
6653 l_temp_rec.column_name := 'UNPACKED';
6654 l_temp_rec.column_value := 'NULL';
6655 g_receiving_1_select(UNPACKED) := l_temp_rec;
6656
6657 l_temp_rec.column_name := 'PACKED';
6658 l_temp_rec.column_value := 'NULL';
6659 g_receiving_1_select(PACKED) := l_temp_rec;
6660
6661 l_temp_rec.column_name := 'SECONDARY_UOM_CODE';
6662 l_temp_rec.column_value := 'NULL';
6663 g_receiving_1_select(SECONDARY_UOM_CODE) := l_temp_rec;
6664
6665 l_temp_rec.column_name := 'SECONDARY_ONHAND';
6666 l_temp_rec.column_value := 'NULL';
6667 g_receiving_1_select(SECONDARY_ONHAND) := l_temp_rec;
6668
6669 l_temp_rec.column_name := 'SECONDARY_RECEIVING';
6670 l_temp_rec.column_value := 'NULL';
6671 g_receiving_1_select(SECONDARY_RECEIVING) := l_temp_rec;
6672
6673 l_temp_rec.column_name := 'SECONDARY_INBOUND';
6674 l_temp_rec.column_value := 'NULL';
6675 g_receiving_1_select(SECONDARY_INBOUND) := l_temp_rec;
6676
6677 l_temp_rec.column_name := 'OWNING_ORGANIZATION_ID';
6678 l_temp_rec.column_value := 'NULL';
6679 g_receiving_1_select(OWNING_ORGANIZATION_ID) := l_temp_rec;
6680
6681 l_temp_rec.column_name := 'PLANNING_ORGANIZATION_ID';
6682 l_temp_rec.column_value := 'NULL';
6683 g_receiving_1_select(PLANNING_ORGANIZATION_ID) := l_temp_rec;
6684
6685 l_temp_rec.column_name := 'OWNING_TP_TYPE';
6686 l_temp_rec.column_value := 'NULL';
6687 g_receiving_1_select(OWNING_TP_TYPE) := l_temp_rec;
6688
6689 l_temp_rec.column_name := 'PLANNING_TP_TYPE';
6690 l_temp_rec.column_value := 'NULL';
6691 g_receiving_1_select(PLANNING_TP_TYPE) := l_temp_rec;
6692
6693 -- Bug 6843313 Onhand Material Status support
6694 l_temp_rec.column_name := 'STATUS';
6695 l_temp_rec.column_value := 'NULL';
6696 g_receiving_1_select(STATUS) := l_temp_rec;
6697
6698 l_temp_rec.column_name := 'STATUS_ID';
6699 l_temp_rec.column_value := 'NULL';
6700 g_receiving_1_select(STATUS_ID) := l_temp_rec;
6701
6702 END initialize_receiving_1_query;
6703
6704 PROCEDURE initialize_union_query IS
6705 l_procedure_name VARCHAR2(30);
6706 l_temp_rec SelectColumnRecType;
6707 BEGIN
6708
6709 l_procedure_name := 'INTIALIZE_COMBINED_QUERY';
6710
6711 g_date_bind_tab.DELETE;
6712 g_number_bind_tab.DELETE;
6713 g_varchar_bind_tab.DELETE;
6714
6715 g_union_select.DELETE;
6716 g_union_group.DELETE;
6717
6718 l_temp_rec.column_name := 'PO_RELEASE_ID';
6719 l_temp_rec.column_value := 'PO_RELEASE_ID';
6720 g_union_select(PO_RELEASE_ID) := l_temp_rec;
6721
6722 l_temp_rec.column_name := 'RELEASE_LINE_NUMBER';
6723 l_temp_rec.column_value := 'RELEASE_LINE_NUMBER';
6724 g_union_select(RELEASE_LINE_NUMBER) := l_temp_rec;
6725
6726 l_temp_rec.column_name := 'SHIPMENT_NUMBER';
6727 l_temp_rec.column_value := 'SHIPMENT_NUMBER';
6728 g_union_select(SHIPMENT_NUMBER) := l_temp_rec;
6729
6730 l_temp_rec.column_name := 'SHIPMENT_HEADER_ID_INTERORG';
6731 l_temp_rec.column_value := 'SHIPMENT_HEADER_ID_INTERORG';
6732 g_union_select(SHIPMENT_HEADER_ID_INTERORG) := l_temp_rec;
6733
6734 l_temp_rec.column_name := 'ASN';
6735 l_temp_rec.column_value := 'ASN';
6736 g_union_select(ASN) := l_temp_rec;
6737
6738 l_temp_rec.column_name := 'SHIPMENT_HEADER_ID_ASN';
6739 l_temp_rec.column_value := 'SHIPMENT_HEADER_ID_ASN';
6740 g_union_select(SHIPMENT_HEADER_ID_ASN) := l_temp_rec;
6741
6742 l_temp_rec.column_name := 'TRADING_PARTNER';
6743 l_temp_rec.column_value := 'TRADING_PARTNER';
6744 g_union_select(TRADING_PARTNER) := l_temp_rec;
6745
6746 l_temp_rec.column_name := 'VENDOR_ID';
6747 l_temp_rec.column_value := 'VENDOR_ID';
6748 g_union_select(VENDOR_ID) := l_temp_rec;
6749
6750 l_temp_rec.column_name := 'TRADING_PARTNER_SITE';
6751 l_temp_rec.column_value := 'TRADING_PARTNER_SITE';
6752 g_union_select(TRADING_PARTNER_SITE) := l_temp_rec;
6753
6754 l_temp_rec.column_name := 'VENDOR_SITE_ID';
6755 l_temp_rec.column_value := 'VENDOR_SITE_ID';
6756 g_union_select(VENDOR_SITE_ID) := l_temp_rec;
6757
6758 l_temp_rec.column_name := 'FROM_ORG';
6759 l_temp_rec.column_value := 'FROM_ORG';
6760 g_union_select(FROM_ORG) := l_temp_rec;
6761
6762 l_temp_rec.column_name := 'FROM_ORG_ID';
6763 l_temp_rec.column_value := 'FROM_ORG_ID';
6764 g_union_select(FROM_ORG_ID) := l_temp_rec;
6765
6766 l_temp_rec.column_name := 'TO_ORG';
6767 l_temp_rec.column_value := 'TO_ORG';
6768 g_union_select(TO_ORG) := l_temp_rec;
6769
6770 l_temp_rec.column_name := 'TO_ORG_ID';
6771 l_temp_rec.column_value := 'TO_ORG_ID';
6772 g_union_select(TO_ORG_ID) := l_temp_rec;
6773
6774 l_temp_rec.column_name := 'EXPECTED_RECEIPT_DATE';
6775 l_temp_rec.column_value := 'EXPECTED_RECEIPT_DATE';
6776 g_union_select(EXPECTED_RECEIPT_DATE) := l_temp_rec;
6777
6778 l_temp_rec.column_name := 'SHIPPED_DATE';
6779 l_temp_rec.column_value := 'SHIPPED_DATE';
6780 g_union_select(SHIPPED_DATE) := l_temp_rec;
6781
6782 l_temp_rec.column_name := 'OWNING_ORG';
6783 l_temp_rec.column_value := 'OWNING_ORG';
6784 g_union_select(OWNING_ORG) := l_temp_rec;
6785
6786 l_temp_rec.column_name := 'OWNING_ORG_ID';
6787 l_temp_rec.column_value := 'OWNING_ORG_ID';
6788 g_union_select(OWNING_ORG_ID) := l_temp_rec;
6789
6790 l_temp_rec.column_name := 'REQ_HEADER_ID';
6791 l_temp_rec.column_value := 'REQ_HEADER_ID';
6792 g_union_select(REQ_HEADER_ID) := l_temp_rec;
6793
6794 l_temp_rec.column_name := 'OE_HEADER_ID';
6795 l_temp_rec.column_value := 'OE_HEADER_ID';
6796 g_union_select(OE_HEADER_ID) := l_temp_rec;
6797
6798 l_temp_rec.column_name := 'PO_HEADER_ID';
6799 l_temp_rec.column_value := 'PO_HEADER_ID';
6800 g_union_select(PO_HEADER_ID) := l_temp_rec;
6801
6802 l_temp_rec.column_name := 'MATURITY_DATE';
6803 l_temp_rec.column_value := 'MATURITY_DATE';
6804 g_union_select(MATURITY_DATE) := l_temp_rec;
6805
6806 l_temp_rec.column_name := 'HOLD_DATE';
6807 l_temp_rec.column_value := 'HOLD_DATE';
6808 g_union_select(HOLD_DATE) := l_temp_rec;
6809
6810 l_temp_rec.column_name := 'SUPPLIER_LOT';
6811 l_temp_rec.column_value := 'SUPPLIER_LOT';
6812 g_union_select(SUPPLIER_LOT) := l_temp_rec;
6813
6814 l_temp_rec.column_name := 'PARENT_LOT';
6815 l_temp_rec.column_value := 'PARENT_LOT';
6816 g_union_select(PARENT_LOT) := l_temp_rec;
6817
6818 l_temp_rec.column_name := 'DOCUMENT_TYPE';
6819 l_temp_rec.column_value := 'DOCUMENT_TYPE';
6820 g_union_select(DOCUMENT_TYPE) := l_temp_rec;
6821
6822 l_temp_rec.column_name := 'DOCUMENT_TYPE_ID';
6823 l_temp_rec.column_value := 'DOCUMENT_TYPE_ID';
6824 g_union_select(DOCUMENT_TYPE_ID) := l_temp_rec;
6825
6826 l_temp_rec.column_name := 'DOCUMENT_NUMBER';
6827 l_temp_rec.column_value := 'DOCUMENT_NUMBER';
6828 g_union_select(DOCUMENT_NUMBER) := l_temp_rec;
6829
6830 l_temp_rec.column_name := 'DOCUMENT_LINE_NUMBER';
6831 l_temp_rec.column_value := 'DOCUMENT_LINE_NUMBER';
6832 g_union_select(DOCUMENT_LINE_NUMBER) := l_temp_rec;
6833
6834 l_temp_rec.column_name := 'RELEASE_NUMBER';
6835 l_temp_rec.column_value := 'RELEASE_NUMBER';
6836 g_union_select(RELEASE_NUMBER) := l_temp_rec;
6837
6838 l_temp_rec.column_name := 'ORIGINATION_TYPE';
6839 l_temp_rec.column_value := 'ORIGINATION_TYPE';
6840 g_union_select(ORIGINATION_TYPE) := l_temp_rec;
6841
6842 l_temp_rec.column_name := 'ORIGINATION_DATE';
6843 l_temp_rec.column_value := 'ORIGINATION_DATE';
6844 g_union_select(ORIGINATION_DATE) := l_temp_rec;
6845
6846 l_temp_rec.column_name := 'ACTION_CODE';
6847 l_temp_rec.column_value := 'ACTION_CODE';
6848 g_union_select(ACTION_CODE) := l_temp_rec;
6849
6850 l_temp_rec.column_name := 'ACTION_DATE';
6851 l_temp_rec.column_value := 'ACTION_DATE';
6852 g_union_select(ACTION_DATE) := l_temp_rec;
6853
6854 l_temp_rec.column_name := 'RETEST_DATE';
6855 l_temp_rec.column_value := 'RETEST_DATE';
6856 g_union_select(RETEST_DATE) := l_temp_rec;
6857
6858 l_temp_rec.column_name := 'SECONDARY_UNPACKED';
6859 l_temp_rec.column_value := 'SUM(SECONDARY_UNPACKED)';
6860 g_union_select(SECONDARY_UNPACKED) := l_temp_rec;
6861
6862 l_temp_rec.column_name := 'SECONDARY_PACKED';
6863 l_temp_rec.column_value := 'SUM(SECONDARY_PACKED)';
6864 g_union_select(SECONDARY_PACKED) := l_temp_rec;
6865
6866 l_temp_rec.column_name := 'SUBINVENTORY_CODE';
6867 l_temp_rec.column_value := 'SUBINVENTORY_CODE';
6868 g_union_select(SUBINVENTORY_CODE) := l_temp_rec;
6869
6870 l_temp_rec.column_name := 'LOCATOR';
6871 l_temp_rec.column_value := 'LOCATOR';
6872 g_union_select(LOCATOR) := l_temp_rec;
6873
6874 l_temp_rec.column_name := 'LOCATOR_ID';
6875 l_temp_rec.column_value := 'LOCATOR_ID';
6876 g_union_select(LOCATOR_ID) := l_temp_rec;
6877
6878 l_temp_rec.column_name := 'LPN';
6879 l_temp_rec.column_value := 'LPN';
6880 g_union_select(LPN) := l_temp_rec;
6881
6882 l_temp_rec.column_name := 'LPN_ID';
6883 l_temp_rec.column_value := 'LPN_ID';
6884 g_union_select(LPN_ID) := l_temp_rec;
6885
6886 l_temp_rec.column_name := 'COST_GROUP';
6887 l_temp_rec.column_value := 'COST_GROUP';
6888 g_union_select(COST_GROUP) := l_temp_rec;
6889
6890 l_temp_rec.column_name := 'CG_ID';
6891 l_temp_rec.column_value := 'CG_ID';
6892 g_union_select(CG_ID) := l_temp_rec;
6893
6894 l_temp_rec.column_name := 'LOADED';
6895 l_temp_rec.column_value := 'LOADED';
6896 g_union_select(LOADED) := l_temp_rec;
6897
6898 l_temp_rec.column_name := 'PLANNING_PARTY';
6899 l_temp_rec.column_value := 'PLANNING_PARTY';
6900 g_union_select(PLANNING_PARTY) := l_temp_rec;
6901
6902 l_temp_rec.column_name := 'PLANNING_PARTY_ID';
6903 l_temp_rec.column_value := 'PLANNING_PARTY_ID';
6904 g_union_select(PLANNING_PARTY_ID) := l_temp_rec;
6905
6906 l_temp_rec.column_name := 'OWNING_PARTY';
6907 l_temp_rec.column_value := 'OWNING_PARTY';
6908 g_union_select(OWNING_PARTY) := l_temp_rec;
6909
6910 l_temp_rec.column_name := 'OWNING_PARTY_ID';
6911 l_temp_rec.column_value := 'OWNING_PARTY_ID';
6912 g_union_select(OWNING_PARTY_ID) := l_temp_rec;
6913
6914 l_temp_rec.column_name := 'LOT';
6915 l_temp_rec.column_value := 'LOT';
6916 g_union_select(LOT) := l_temp_rec;
6917
6918
6919 l_temp_rec.column_name := 'SERIAL';
6920 l_temp_rec.column_value := 'SERIAL';
6921 g_union_select(SERIAL) := l_temp_rec;
6922
6923 l_temp_rec.column_name := 'UNIT_NUMBER';
6924 l_temp_rec.column_value := 'UNIT_NUMBER';
6925 g_union_select(UNIT_NUMBER) := l_temp_rec;
6926
6927 l_temp_rec.column_name := 'LOT_EXPIRY_DATE';
6928 l_temp_rec.column_value := 'LOT_EXPIRY_DATE';
6929 g_union_select(LOT_EXPIRY_DATE) := l_temp_rec;
6930
6931 l_temp_rec.column_name := 'ORGANIZATION_CODE';
6932 l_temp_rec.column_value := 'ORGANIZATION_CODE';
6933 g_union_select(ORGANIZATION_CODE) := l_temp_rec;
6934
6935 l_temp_rec.column_name := 'ORG_ID';
6936 l_temp_rec.column_value := 'ORG_ID';
6937 g_union_select(ORG_ID) := l_temp_rec;
6938
6939 l_temp_rec.column_name := 'ITEM';
6940 l_temp_rec.column_value := 'ITEM';
6941 g_union_select(ITEM) := l_temp_rec;
6942
6943 l_temp_rec.column_name := 'ITEM_DESCRIPTION';
6944 l_temp_rec.column_value := 'ITEM_DESCRIPTION';
6945 g_union_select(ITEM_DESCRIPTION) := l_temp_rec;
6946
6947 l_temp_rec.column_name := 'ITEM_ID';
6948 l_temp_rec.column_value := 'ITEM_ID';
6949 g_union_select(ITEM_ID) := l_temp_rec;
6950
6951 l_temp_rec.column_name := 'REVISION';
6952 l_temp_rec.column_value := 'REVISION';
6953 g_union_select(REVISION) := l_temp_rec;
6954
6955 l_temp_rec.column_name := 'PRIMARY_UOM_CODE';
6956 l_temp_rec.column_value := 'PRIMARY_UOM_CODE';
6957 g_union_select(PRIMARY_UOM_CODE) := l_temp_rec;
6958
6959 l_temp_rec.column_name := 'ONHAND';
6960 l_temp_rec.column_value := 'SUM(ONHAND)';
6961 g_union_select(ONHAND) := l_temp_rec;
6962
6963 l_temp_rec.column_name := 'RECEIVING';
6964 l_temp_rec.column_value := 'SUM(RECEIVING)';
6965 g_union_select(RECEIVING) := l_temp_rec;
6966
6967 l_temp_rec.column_name := 'INBOUND';
6968 l_temp_rec.column_value := 'SUM(INBOUND)';
6969 g_union_select(INBOUND) := l_temp_rec;
6970
6971 l_temp_rec.column_name := 'UNPACKED';
6972 l_temp_rec.column_value := 'SUM(UNPACKED)';
6973 g_union_select(UNPACKED) := l_temp_rec;
6974
6975 l_temp_rec.column_name := 'PACKED';
6976 l_temp_rec.column_value := 'SUM(PACKED)';
6977 g_union_select(PACKED) := l_temp_rec;
6978
6979 l_temp_rec.column_name := 'SECONDARY_UOM_CODE';
6980 l_temp_rec.column_value := 'SECONDARY_UOM_CODE';
6981 g_union_select(SECONDARY_UOM_CODE) := l_temp_rec;
6982
6983 l_temp_rec.column_name := 'SECONDARY_ONHAND';
6984 l_temp_rec.column_value := 'SUM(SECONDARY_ONHAND)';
6985 g_union_select(SECONDARY_ONHAND) := l_temp_rec;
6986
6987 l_temp_rec.column_name := 'SECONDARY_RECEIVING';
6988 l_temp_rec.column_value := 'SUM(SECONDARY_RECEIVING)';
6989 g_union_select(SECONDARY_RECEIVING) := l_temp_rec;
6990
6991 l_temp_rec.column_name := 'SECONDARY_INBOUND';
6992 l_temp_rec.column_value := 'SUM(SECONDARY_INBOUND)';
6993 g_union_select(SECONDARY_INBOUND) := l_temp_rec;
6994
6995 l_temp_rec.column_name := 'OWNING_ORGANIZATION_ID';
6996 l_temp_rec.column_value := 'NULL';
6997 g_union_select(OWNING_ORGANIZATION_ID) := l_temp_rec;
6998
6999 l_temp_rec.column_name := 'PLANNING_ORGANIZATION_ID';
7000 l_temp_rec.column_value := 'NULL';
7001 g_union_select(PLANNING_ORGANIZATION_ID) := l_temp_rec;
7002
7003 l_temp_rec.column_name := 'OWNING_TP_TYPE';
7004 l_temp_rec.column_value := 'NULL';
7005 g_union_select(OWNING_TP_TYPE) := l_temp_rec;
7006
7007 l_temp_rec.column_name := 'PLANNING_TP_TYPE';
7008 l_temp_rec.column_value := 'NULL';
7009 g_union_select(PLANNING_TP_TYPE) := l_temp_rec;
7010
7011 -- Onhand Material Status support
7012 l_temp_rec.column_name := 'STATUS';
7013 l_temp_rec.column_value := 'STATUS';
7014 g_union_select(STATUS) := l_temp_rec;
7015
7016 l_temp_rec.column_name := 'STATUS_ID';
7017 l_temp_rec.column_value := 'STATUS_ID';
7018 g_union_select(STATUS_ID) := l_temp_rec;
7019 -- End Onhand Material Status Support
7020
7021 g_union_group(PO_RELEASE_ID) := 'PO_RELEASE_ID';
7022 g_union_group(RELEASE_LINE_NUMBER) := 'RELEASE_LINE_NUMBER';
7023 g_union_group(SHIPMENT_NUMBER) := 'SHIPMENT_NUMBER';
7024 g_union_group(SHIPMENT_HEADER_ID_INTERORG) := 'SHIPMENT_HEADER_ID_INTERORG';
7025 g_union_group(ASN) := 'ASN';
7026 g_union_group(SHIPMENT_HEADER_ID_ASN) := 'SHIPMENT_HEADER_ID_ASN';
7027 g_union_group(TRADING_PARTNER) := 'TRADING_PARTNER';
7028 g_union_group(VENDOR_ID) := 'VENDOR_ID';
7029 g_union_group(TRADING_PARTNER_SITE) := 'TRADING_PARTNER_SITE';
7030 g_union_group(VENDOR_SITE_ID) := 'VENDOR_SITE_ID';
7031 g_union_group(FROM_ORG) := 'FROM_ORG';
7032 g_union_group(FROM_ORG_ID) := 'FROM_ORG_ID';
7033 g_union_group(TO_ORG) := 'TO_ORG';
7034 g_union_group(TO_ORG_ID) := 'TO_ORG_ID';
7035 g_union_group(EXPECTED_RECEIPT_DATE) := 'EXPECTED_RECEIPT_DATE';
7036 g_union_group(SHIPPED_DATE) := 'SHIPPED_DATE';
7037 g_union_group(OWNING_ORG) := 'OWNING_ORG';
7038 g_union_group(OWNING_ORG_ID) := 'OWNING_ORG_ID';
7039 g_union_group(REQ_HEADER_ID) := 'REQ_HEADER_ID';
7040 g_union_group(OE_HEADER_ID) := 'OE_HEADER_ID';
7041 g_union_group(PO_HEADER_ID) := 'PO_HEADER_ID';
7042 g_union_group(MATURITY_DATE) := 'MATURITY_DATE';
7043 g_union_group(HOLD_DATE) := 'HOLD_DATE';
7044 g_union_group(SUPPLIER_LOT) := 'SUPPLIER_LOT';
7045 g_union_group(PARENT_LOT) := 'PARENT_LOT';
7046 g_union_group(DOCUMENT_TYPE) := 'DOCUMENT_TYPE';
7047 g_union_group(DOCUMENT_TYPE_ID) := 'DOCUMENT_TYPE_ID';
7048 g_union_group(DOCUMENT_NUMBER) := 'DOCUMENT_NUMBER';
7049 g_union_group(DOCUMENT_LINE_NUMBER) := 'DOCUMENT_LINE_NUMBER';
7050 g_union_group(RELEASE_NUMBER) := 'RELEASE_NUMBER';
7051 g_union_group(ORIGINATION_TYPE) := 'ORIGINATION_TYPE';
7052 g_union_group(ORIGINATION_DATE) := 'ORIGINATION_DATE';
7053 g_union_group(ACTION_CODE) := 'ACTION_CODE';
7054 g_union_group(ACTION_DATE) := 'ACTION_DATE';
7055 g_union_group(RETEST_DATE) := 'RETEST_DATE';
7056 g_union_group(SUBINVENTORY_CODE) := 'SUBINVENTORY_CODE';
7057 g_union_group(LOCATOR) := 'LOCATOR';
7058 g_union_group(LOCATOR_ID) := 'LOCATOR_ID';
7059 g_union_group(LPN) := 'LPN';
7060 g_union_group(LPN_ID) := 'LPN_ID';
7061 g_union_group(COST_GROUP) := 'COST_GROUP';
7062 g_union_group(CG_ID) := 'CG_ID';
7063 g_union_group(LOADED) := 'LOADED';
7064 g_union_group(PLANNING_PARTY) := 'PLANNING_PARTY';
7065 g_union_group(PLANNING_PARTY_ID) := 'PLANNING_PARTY_ID';
7066 g_union_group(OWNING_PARTY) := 'OWNING_PARTY';
7067 g_union_group(OWNING_PARTY_ID) := 'OWNING_PARTY_ID';
7068 g_union_group(LOT) := 'LOT';
7069 g_union_group(SERIAL) := 'SERIAL';
7070 g_union_group(UNIT_NUMBER) := 'UNIT_NUMBER';
7071 g_union_group(LOT_EXPIRY_DATE) := 'LOT_EXPIRY_DATE';
7072 g_union_group(ORGANIZATION_CODE) := 'ORGANIZATION_CODE';
7073 g_union_group(ORG_ID) := 'ORG_ID';
7074 g_union_group(ITEM) := 'ITEM';
7075 g_union_group(ITEM_DESCRIPTION) := 'ITEM_DESCRIPTION';
7076 g_union_group(ITEM_ID) := 'ITEM_ID';
7077 g_union_group(REVISION) := 'REVISION';
7078 g_union_group(PRIMARY_UOM_CODE) := 'PRIMARY_UOM_CODE';
7079 g_union_group(SECONDARY_UOM_CODE) := 'SECONDARY_UOM_CODE';
7080 g_union_group(OWNING_ORGANIZATION_ID) := 'OWNING_ORGANIZATION_ID';
7081 g_union_group(PLANNING_ORGANIZATION_ID) := 'PLANNING_ORGANIZATION_ID';
7082 g_union_group(OWNING_TP_TYPE) := 'OWNING_TP_TYPE';
7083 g_union_group(PLANNING_TP_TYPE) := 'PLANNING_TP_TYPE';
7084
7085 -- Onhand Material Status support
7086 g_union_group(STATUS) := 'STATUS';
7087 g_union_group(STATUS_ID) := 'STATUS_ID';
7088
7089
7090 END initialize_union_query;
7091
7092 PROCEDURE make_nested_lpn_onhand_query IS
7093 l_procedure_name VARCHAR2(30);
7094 l_count NUMBER;
7095 BEGIN
7096 l_procedure_name := 'MAKE_NESTED_LPN_QUERY';
7097
7098 SELECT count(*)
7099 INTO l_count
7100 FROM wms_license_plate_numbers wlpn
7101 WHERE wlpn.parent_lpn_id = inv_mwb_globals.g_tree_parent_lpn_id
7102 AND wlpn.organization_id = inv_mwb_globals.g_tree_organization_id;
7103
7104 IF l_count > 0 THEN
7105 inv_mwb_globals.g_is_nested_lpn := 'YES';
7106 ELSE
7107 inv_mwb_globals.g_is_nested_lpn := 'NO';
7108 RETURN;
7109 END IF;
7110
7111 add_from_clause('wms_license_plate_numbers wlpn', 'ONHAND_1');
7112 g_onhand_1_select(inv_mwb_query_manager.SUBINVENTORY_CODE).column_value :=
7113 'wlpn.subinventory_code';
7114 g_onhand_1_select(inv_mwb_query_manager.LOCATOR_ID).column_value :=
7115 'wlpn.locator_id';
7116 g_onhand_1_select(inv_mwb_query_manager.LPN).column_value :=
7117 'wlpn.license_plate_number';
7118 g_onhand_1_select(inv_mwb_query_manager.ORG_ID).column_value :=
7119 'wlpn.organization_id';
7120 g_onhand_1_select(inv_mwb_query_manager.LPN_ID).column_value :=
7121 'wlpn.lpn_id'; -- 12984304
7122
7123 add_group_clause('wlpn.organization_id', 'ONHAND_1');
7124 add_group_clause('wlpn.subinventory_code', 'ONHAND_1');
7125 add_group_clause('wlpn.locator_id', 'ONHAND_1');
7126 add_group_clause('wlpn.license_plate_number', 'ONHAND_1');
7127 add_group_clause('wlpn.lpn_id', 'ONHAND_1');--12984304
7128
7129 add_where_clause('wlpn.parent_lpn_id = :onh_tree_plpn_id', 'ONHAND_1');
7130 add_bind_variable('onh_tree_plpn_id', inv_mwb_globals.g_tree_parent_lpn_id);
7131
7132 END make_nested_lpn_onhand_query;
7133
7134 PROCEDURE make_nested_lpn_rcv_query IS
7135 l_procedure_name VARCHAR2(30);
7136 l_count NUMBER;
7137 BEGIN
7138 l_procedure_name := 'MAKE_NESTED_LPN_RCV_QUERY';
7139
7140 SELECT count(*)
7141 INTO l_count
7142 FROM wms_license_plate_numbers wlpn
7143 WHERE wlpn.parent_lpn_id = inv_mwb_globals.g_tree_parent_lpn_id
7144 AND wlpn.organization_id = inv_mwb_globals.g_tree_organization_id;
7145
7146 IF l_count > 0 THEN
7147 inv_mwb_globals.g_is_nested_lpn := 'YES';
7148 ELSE
7149 inv_mwb_globals.g_is_nested_lpn := 'NO';
7150 RETURN;
7151 END IF;
7152
7153 inv_mwb_query_manager.add_from_clause('wms_license_plate_numbers wlpn', 'RECEIVING_1');
7154 g_receiving_1_select(inv_mwb_query_manager.SUBINVENTORY_CODE).column_value :=
7155 'wlpn.subinventory_code';
7156 g_receiving_1_select(inv_mwb_query_manager.LOCATOR_ID).column_value :=
7157 'wlpn.locator_id';
7158 g_receiving_1_select(inv_mwb_query_manager.LPN).column_value :=
7159 'wlpn.license_plate_number';
7160 g_receiving_1_select(inv_mwb_query_manager.ORG_ID).column_value :=
7161 'wlpn.organization_id';
7162
7163 add_group_clause('wlpn.organization_id', 'RECEIVING_1');
7164 add_group_clause('wlpn.subinventory_code', 'RECEIVING_1');
7165 add_group_clause('wlpn.locator_id', 'RECEIVING_1');
7166 add_group_clause('wlpn.license_plate_number', 'RECEIVING_1');
7167
7168 add_where_clause('wlpn.parent_lpn_id = :onh_tree_plpn_id', 'RECEIVING_1');
7169 add_bind_variable('onh_tree_plpn_id', inv_mwb_globals.g_tree_parent_lpn_id);
7170
7171 END make_nested_lpn_rcv_query;
7172
7173 PROCEDURE make_nested_lpn_inbound_query IS
7174 l_procedure_name VARCHAR2(30);
7175 l_count NUMBER;
7176 BEGIN
7177 l_procedure_name := 'MAKE_NESTED_LPN_INBOUND_QUERY';
7178
7179 SELECT count(*)
7180 INTO l_count
7181 FROM wms_license_plate_numbers wlpn
7182 WHERE wlpn.parent_lpn_id = inv_mwb_globals.g_tree_parent_lpn_id
7183 AND wlpn.organization_id = inv_mwb_globals.g_tree_organization_id;
7184
7185 IF l_count > 0 THEN
7186 inv_mwb_globals.g_is_nested_lpn := 'YES';
7187 ELSE
7188 inv_mwb_globals.g_is_nested_lpn := 'NO';
7189 RETURN;
7190 END IF;
7191
7192 add_from_clause('wms_license_plate_numbers wlpn', 'INBOUND_1');
7193
7194 g_inbound_1_select(inv_mwb_query_manager.SUBINVENTORY_CODE).column_value :=
7195 'wlpn.subinventory_code';
7196 g_inbound_1_select(inv_mwb_query_manager.LOCATOR_ID).column_value :=
7197 'wlpn.locator_id';
7198 g_inbound_1_select(inv_mwb_query_manager.LPN).column_value :=
7199 'wlpn.license_plate_number';
7200 g_inbound_1_select(inv_mwb_query_manager.ORG_ID).column_value :=
7201 'wlpn.organization_id';
7202
7203 add_group_clause('wlpn.organization_id', 'INBOUND_1');
7204 add_group_clause('wlpn.subinventory_code', 'INBOUND_1');
7205 add_group_clause('wlpn.locator_id', 'INBOUND_1');
7206 add_group_clause('wlpn.license_plate_number', 'INBOUND_1');
7207
7208 add_where_clause('wlpn.parent_lpn_id = :onh_tree_plpn_id', 'INBOUND_1');
7209 add_bind_variable('onh_tree_plpn_id', inv_mwb_globals.g_tree_parent_lpn_id);
7210
7211 END make_nested_lpn_inbound_query;
7212
7213 END INV_MWB_QUERY_MANAGER;