DBA Data[Home] [Help]

PACKAGE BODY: APPS.INV_MWB_QUERY_MANAGER

Source


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