1812: , p_item_to IN VARCHAR2
1813: , x_item_cursor IN OUT NOCOPY VARCHAR2
1814: )
1815: IS
1816: l_flexfield_rec FND_FLEX_KEY_API.flexfield_type;
1817: l_structure_rec FND_FLEX_KEY_API.structure_type;
1818: l_segment_rec FND_FLEX_KEY_API.segment_type;
1819: l_segment_tbl FND_FLEX_KEY_API.segment_list;
1820: l_segment_number NUMBER;
1813: , x_item_cursor IN OUT NOCOPY VARCHAR2
1814: )
1815: IS
1816: l_flexfield_rec FND_FLEX_KEY_API.flexfield_type;
1817: l_structure_rec FND_FLEX_KEY_API.structure_type;
1818: l_segment_rec FND_FLEX_KEY_API.segment_type;
1819: l_segment_tbl FND_FLEX_KEY_API.segment_list;
1820: l_segment_number NUMBER;
1821: l_mstk_segs VARCHAR2(850);
1814: )
1815: IS
1816: l_flexfield_rec FND_FLEX_KEY_API.flexfield_type;
1817: l_structure_rec FND_FLEX_KEY_API.structure_type;
1818: l_segment_rec FND_FLEX_KEY_API.segment_type;
1819: l_segment_tbl FND_FLEX_KEY_API.segment_list;
1820: l_segment_number NUMBER;
1821: l_mstk_segs VARCHAR2(850);
1822: l_mcat_segs VARCHAR2(850);
1815: IS
1816: l_flexfield_rec FND_FLEX_KEY_API.flexfield_type;
1817: l_structure_rec FND_FLEX_KEY_API.structure_type;
1818: l_segment_rec FND_FLEX_KEY_API.segment_type;
1819: l_segment_tbl FND_FLEX_KEY_API.segment_list;
1820: l_segment_number NUMBER;
1821: l_mstk_segs VARCHAR2(850);
1822: l_mcat_segs VARCHAR2(850);
1823: l_mcat_f VARCHAR2(2000);
1830: BEGIN
1831:
1832: l_module := g_log_head||l_api_name||'.'||'000'||'.';
1833:
1834: FND_FLEX_KEY_API.set_session_mode('customer_data');
1835:
1836: -- retrieve system item concatenated flexfield
1837: l_mstk_segs := '';
1838: l_flexfield_rec := FND_FLEX_KEY_API.find_flexfield('INV', 'MSTK');
1834: FND_FLEX_KEY_API.set_session_mode('customer_data');
1835:
1836: -- retrieve system item concatenated flexfield
1837: l_mstk_segs := '';
1838: l_flexfield_rec := FND_FLEX_KEY_API.find_flexfield('INV', 'MSTK');
1839: l_structure_rec := FND_FLEX_KEY_API.find_structure(l_flexfield_rec, 101);
1840: FND_FLEX_KEY_API.get_segments
1841: ( flexfield => l_flexfield_rec
1842: , structure => l_structure_rec
1835:
1836: -- retrieve system item concatenated flexfield
1837: l_mstk_segs := '';
1838: l_flexfield_rec := FND_FLEX_KEY_API.find_flexfield('INV', 'MSTK');
1839: l_structure_rec := FND_FLEX_KEY_API.find_structure(l_flexfield_rec, 101);
1840: FND_FLEX_KEY_API.get_segments
1841: ( flexfield => l_flexfield_rec
1842: , structure => l_structure_rec
1843: , nsegments => l_segment_number
1836: -- retrieve system item concatenated flexfield
1837: l_mstk_segs := '';
1838: l_flexfield_rec := FND_FLEX_KEY_API.find_flexfield('INV', 'MSTK');
1839: l_structure_rec := FND_FLEX_KEY_API.find_structure(l_flexfield_rec, 101);
1840: FND_FLEX_KEY_API.get_segments
1841: ( flexfield => l_flexfield_rec
1842: , structure => l_structure_rec
1843: , nsegments => l_segment_number
1844: , segments => l_segment_tbl
1843: , nsegments => l_segment_number
1844: , segments => l_segment_tbl
1845: );
1846: FOR l_idx IN 1..l_segment_number LOOP
1847: l_segment_rec := FND_FLEX_KEY_API.find_segment
1848: ( l_flexfield_rec
1849: , l_structure_rec
1850: , l_segment_tbl(l_idx)
1851: );
1862:
1863:
1864: -- retrieve item category concatenated flexfield
1865: l_mcat_segs := '';
1866: l_flexfield_rec := FND_FLEX_KEY_API.find_flexfield('INV', 'MCAT');
1867: l_structure_rec := FND_FLEX_KEY_API.find_structure
1868: ( l_flexfield_rec
1869: , p_cat_structure_id
1870: );
1863:
1864: -- retrieve item category concatenated flexfield
1865: l_mcat_segs := '';
1866: l_flexfield_rec := FND_FLEX_KEY_API.find_flexfield('INV', 'MCAT');
1867: l_structure_rec := FND_FLEX_KEY_API.find_structure
1868: ( l_flexfield_rec
1869: , p_cat_structure_id
1870: );
1871: FND_FLEX_KEY_API.get_segments
1867: l_structure_rec := FND_FLEX_KEY_API.find_structure
1868: ( l_flexfield_rec
1869: , p_cat_structure_id
1870: );
1871: FND_FLEX_KEY_API.get_segments
1872: ( flexfield => l_flexfield_rec
1873: , structure => l_structure_rec
1874: , nsegments => l_segment_number
1875: , segments => l_segment_tbl
1874: , nsegments => l_segment_number
1875: , segments => l_segment_tbl
1876: );
1877: FOR l_idx IN 1..l_segment_number LOOP
1878: l_segment_rec := FND_FLEX_KEY_API.find_segment
1879: ( l_flexfield_rec
1880: , l_structure_rec
1881: , l_segment_tbl(l_idx)
1882: );