1446: , p_lot_ctl IN NUMBER
1447: , x_range_sql OUT NOCOPY VARCHAR2
1448: )
1449: IS
1450: l_flexfield_rec FND_FLEX_KEY_API.flexfield_type;
1451: l_structure_rec FND_FLEX_KEY_API.structure_type;
1452: l_segment_rec FND_FLEX_KEY_API.segment_type;
1453: l_segment_tbl FND_FLEX_KEY_API.segment_list;
1454: l_segment_number NUMBER;
1447: , x_range_sql OUT NOCOPY VARCHAR2
1448: )
1449: IS
1450: l_flexfield_rec FND_FLEX_KEY_API.flexfield_type;
1451: l_structure_rec FND_FLEX_KEY_API.structure_type;
1452: l_segment_rec FND_FLEX_KEY_API.segment_type;
1453: l_segment_tbl FND_FLEX_KEY_API.segment_list;
1454: l_segment_number NUMBER;
1455: l_mstk_segs VARCHAR2(850);
1448: )
1449: IS
1450: l_flexfield_rec FND_FLEX_KEY_API.flexfield_type;
1451: l_structure_rec FND_FLEX_KEY_API.structure_type;
1452: l_segment_rec FND_FLEX_KEY_API.segment_type;
1453: l_segment_tbl FND_FLEX_KEY_API.segment_list;
1454: l_segment_number NUMBER;
1455: l_mstk_segs VARCHAR2(850);
1456: l_mcat_segs VARCHAR2(850);
1449: IS
1450: l_flexfield_rec FND_FLEX_KEY_API.flexfield_type;
1451: l_structure_rec FND_FLEX_KEY_API.structure_type;
1452: l_segment_rec FND_FLEX_KEY_API.segment_type;
1453: l_segment_tbl FND_FLEX_KEY_API.segment_list;
1454: l_segment_number NUMBER;
1455: l_mstk_segs VARCHAR2(850);
1456: l_mcat_segs VARCHAR2(850);
1457: --l_mcat_w VARCHAR2(2000);
1459: l_range_sql VARCHAr2(2000);
1460: lx_range_sql VARCHAR2(4000) := '1=1';
1461: BEGIN
1462:
1463: FND_FLEX_KEY_API.set_session_mode('customer_data');
1464:
1465: -- retrieve system item concatenated flexfield
1466: l_mstk_segs := '';
1467: l_flexfield_rec := FND_FLEX_KEY_API.find_flexfield('INV', 'MSTK');
1463: FND_FLEX_KEY_API.set_session_mode('customer_data');
1464:
1465: -- retrieve system item concatenated flexfield
1466: l_mstk_segs := '';
1467: l_flexfield_rec := FND_FLEX_KEY_API.find_flexfield('INV', 'MSTK');
1468: l_structure_rec := FND_FLEX_KEY_API.find_structure(l_flexfield_rec, 101);
1469: FND_FLEX_KEY_API.get_segments
1470: ( flexfield => l_flexfield_rec
1471: , structure => l_structure_rec
1464:
1465: -- retrieve system item concatenated flexfield
1466: l_mstk_segs := '';
1467: l_flexfield_rec := FND_FLEX_KEY_API.find_flexfield('INV', 'MSTK');
1468: l_structure_rec := FND_FLEX_KEY_API.find_structure(l_flexfield_rec, 101);
1469: FND_FLEX_KEY_API.get_segments
1470: ( flexfield => l_flexfield_rec
1471: , structure => l_structure_rec
1472: , nsegments => l_segment_number
1465: -- retrieve system item concatenated flexfield
1466: l_mstk_segs := '';
1467: l_flexfield_rec := FND_FLEX_KEY_API.find_flexfield('INV', 'MSTK');
1468: l_structure_rec := FND_FLEX_KEY_API.find_structure(l_flexfield_rec, 101);
1469: FND_FLEX_KEY_API.get_segments
1470: ( flexfield => l_flexfield_rec
1471: , structure => l_structure_rec
1472: , nsegments => l_segment_number
1473: , segments => l_segment_tbl
1472: , nsegments => l_segment_number
1473: , segments => l_segment_tbl
1474: );
1475: FOR l_idx IN 1..l_segment_number LOOP
1476: l_segment_rec := FND_FLEX_KEY_API.find_segment
1477: ( l_flexfield_rec
1478: , l_structure_rec
1479: , l_segment_tbl(l_idx)
1480: );
1485: END LOOP;
1486:
1487: -- retrieve item category concatenated flexfield
1488: l_mcat_segs := '';
1489: l_flexfield_rec := FND_FLEX_KEY_API.find_flexfield('INV', 'MCAT');
1490: l_structure_rec := FND_FLEX_KEY_API.find_structure
1491: ( l_flexfield_rec
1492: , p_cat_structure_id
1493: );
1486:
1487: -- retrieve item category concatenated flexfield
1488: l_mcat_segs := '';
1489: l_flexfield_rec := FND_FLEX_KEY_API.find_flexfield('INV', 'MCAT');
1490: l_structure_rec := FND_FLEX_KEY_API.find_structure
1491: ( l_flexfield_rec
1492: , p_cat_structure_id
1493: );
1494: FND_FLEX_KEY_API.get_segments
1490: l_structure_rec := FND_FLEX_KEY_API.find_structure
1491: ( l_flexfield_rec
1492: , p_cat_structure_id
1493: );
1494: FND_FLEX_KEY_API.get_segments
1495: ( flexfield => l_flexfield_rec
1496: , structure => l_structure_rec
1497: , nsegments => l_segment_number
1498: , segments => l_segment_tbl
1497: , nsegments => l_segment_number
1498: , segments => l_segment_tbl
1499: );
1500: FOR l_idx IN 1..l_segment_number LOOP
1501: l_segment_rec := FND_FLEX_KEY_API.find_segment
1502: ( l_flexfield_rec
1503: , l_structure_rec
1504: , l_segment_tbl(l_idx)
1505: );
1570: PROCEDURE Build_Item_Cat_Select(p_Cat_structure_id IN NUMBER
1571: ,x_item_select OUT NOCOPY VARCHAR2
1572: ,x_cat_Select OUT NOCOPY VARCHAR2
1573: ) IS
1574: l_flexfield_rec FND_FLEX_KEY_API.flexfield_type;
1575: l_structure_rec FND_FLEX_KEY_API.structure_type;
1576: l_segment_rec FND_FLEX_KEY_API.segment_type;
1577: l_segment_tbl FND_FLEX_KEY_API.segment_list;
1578: l_segment_number NUMBER;
1571: ,x_item_select OUT NOCOPY VARCHAR2
1572: ,x_cat_Select OUT NOCOPY VARCHAR2
1573: ) IS
1574: l_flexfield_rec FND_FLEX_KEY_API.flexfield_type;
1575: l_structure_rec FND_FLEX_KEY_API.structure_type;
1576: l_segment_rec FND_FLEX_KEY_API.segment_type;
1577: l_segment_tbl FND_FLEX_KEY_API.segment_list;
1578: l_segment_number NUMBER;
1579: l_mstk_segs VARCHAR2(850);
1572: ,x_cat_Select OUT NOCOPY VARCHAR2
1573: ) IS
1574: l_flexfield_rec FND_FLEX_KEY_API.flexfield_type;
1575: l_structure_rec FND_FLEX_KEY_API.structure_type;
1576: l_segment_rec FND_FLEX_KEY_API.segment_type;
1577: l_segment_tbl FND_FLEX_KEY_API.segment_list;
1578: l_segment_number NUMBER;
1579: l_mstk_segs VARCHAR2(850);
1580: l_mcat_segs VARCHAR2(850);
1573: ) IS
1574: l_flexfield_rec FND_FLEX_KEY_API.flexfield_type;
1575: l_structure_rec FND_FLEX_KEY_API.structure_type;
1576: l_segment_rec FND_FLEX_KEY_API.segment_type;
1577: l_segment_tbl FND_FLEX_KEY_API.segment_list;
1578: l_segment_number NUMBER;
1579: l_mstk_segs VARCHAR2(850);
1580: l_mcat_segs VARCHAR2(850);
1581: BEGIN
1578: l_segment_number NUMBER;
1579: l_mstk_segs VARCHAR2(850);
1580: l_mcat_segs VARCHAR2(850);
1581: BEGIN
1582: FND_FLEX_KEY_API.set_session_mode('customer_data');
1583:
1584: -- retrieve system item concatenated flexfield
1585: l_mstk_segs := '';
1586: l_flexfield_rec := FND_FLEX_KEY_API.find_flexfield('INV', 'MSTK');
1582: FND_FLEX_KEY_API.set_session_mode('customer_data');
1583:
1584: -- retrieve system item concatenated flexfield
1585: l_mstk_segs := '';
1586: l_flexfield_rec := FND_FLEX_KEY_API.find_flexfield('INV', 'MSTK');
1587: l_structure_rec := FND_FLEX_KEY_API.find_structure(l_flexfield_rec, 101);
1588: FND_FLEX_KEY_API.get_segments
1589: ( flexfield => l_flexfield_rec
1590: , structure => l_structure_rec
1583:
1584: -- retrieve system item concatenated flexfield
1585: l_mstk_segs := '';
1586: l_flexfield_rec := FND_FLEX_KEY_API.find_flexfield('INV', 'MSTK');
1587: l_structure_rec := FND_FLEX_KEY_API.find_structure(l_flexfield_rec, 101);
1588: FND_FLEX_KEY_API.get_segments
1589: ( flexfield => l_flexfield_rec
1590: , structure => l_structure_rec
1591: , nsegments => l_segment_number
1584: -- retrieve system item concatenated flexfield
1585: l_mstk_segs := '';
1586: l_flexfield_rec := FND_FLEX_KEY_API.find_flexfield('INV', 'MSTK');
1587: l_structure_rec := FND_FLEX_KEY_API.find_structure(l_flexfield_rec, 101);
1588: FND_FLEX_KEY_API.get_segments
1589: ( flexfield => l_flexfield_rec
1590: , structure => l_structure_rec
1591: , nsegments => l_segment_number
1592: , segments => l_segment_tbl
1591: , nsegments => l_segment_number
1592: , segments => l_segment_tbl
1593: );
1594: FOR l_idx IN 1..l_segment_number LOOP
1595: l_segment_rec := FND_FLEX_KEY_API.find_segment
1596: ( l_flexfield_rec
1597: , l_structure_rec
1598: , l_segment_tbl(l_idx)
1599: );
1604: END LOOP;
1605:
1606: -- retrieve item category concatenated flexfield
1607: l_mcat_segs := '';
1608: l_flexfield_rec := FND_FLEX_KEY_API.find_flexfield('INV', 'MCAT');
1609: l_structure_rec := FND_FLEX_KEY_API.find_structure
1610: ( l_flexfield_rec
1611: , p_cat_structure_id
1612: );
1605:
1606: -- retrieve item category concatenated flexfield
1607: l_mcat_segs := '';
1608: l_flexfield_rec := FND_FLEX_KEY_API.find_flexfield('INV', 'MCAT');
1609: l_structure_rec := FND_FLEX_KEY_API.find_structure
1610: ( l_flexfield_rec
1611: , p_cat_structure_id
1612: );
1613: FND_FLEX_KEY_API.get_segments
1609: l_structure_rec := FND_FLEX_KEY_API.find_structure
1610: ( l_flexfield_rec
1611: , p_cat_structure_id
1612: );
1613: FND_FLEX_KEY_API.get_segments
1614: ( flexfield => l_flexfield_rec
1615: , structure => l_structure_rec
1616: , nsegments => l_segment_number
1617: , segments => l_segment_tbl
1616: , nsegments => l_segment_number
1617: , segments => l_segment_tbl
1618: );
1619: FOR l_idx IN 1..l_segment_number LOOP
1620: l_segment_rec := FND_FLEX_KEY_API.find_segment
1621: ( l_flexfield_rec
1622: , l_structure_rec
1623: , l_segment_tbl(l_idx)
1624: );