Query to fetch items filtered by subsidiary

 The following code can be used to retrieve item details from an account, filtered by a specific subsidiary.

                    SELECT
                        item.displayname,
                        item.id,
                        aggregateItemLocation.location,
                        location.name AS location_name,
                        item.class,
                        item.subsidiary AS class_name,
                        aggregateItemLocation.currentstandardcost,
                        item.custitem_au_item_weight,
                        item.custitem_au_item_stock_pack_size,
                        aggregateItemLocation.quantityonhand,
                        aggregateItemLocation.preferredstocklevel,
                        aggregateItemLocation.reorderpoint,
                        CASE 
                            WHEN aggregateItemLocation.location = 18 THEN item.custitem_au_melb_bin_1
                            WHEN aggregateItemLocation.location = 20 THEN item.custitem_au_syd_bin_1
                            WHEN aggregateItemLocation.location = 31 THEN item.custitem_au_perth_bin_1
                            WHEN aggregateItemLocation.location = 50 THEN item.custitem_au_brs_bin_1
                            ELSE ''
                        END AS bin_number
                    FROM 
                        item
                    LEFT JOIN
                        classification ON classification.id = item.class
                    LEFT JOIN
                        aggregateItemLocation ON aggregateItemLocation.item = item.id
                    LEFT JOIN
                        location ON location.id = aggregateItemLocation.location

                    LEFT JOIN (
                        SELECT 
                        itemSubsidiaryMap.item AS item, 
                        Subsidiary.ID AS id_crit
                        FROM 
                        itemSubsidiaryMap
                        INNER JOIN Subsidiary ON itemSubsidiaryMap.subsidiary = Subsidiary.ID
                    ) itemSubsidiaryMap_SUB 
                        ON item.ID = itemSubsidiaryMap_SUB.item
                    
                    WHERE
                        item.itemtype IN ('Assembly', 'InvtPart', 'Group', 'NonInvtPart', 'Kit', 'Service')
                        AND itemSubsidiaryMap_SUB.id_crit IN(7)

          

Leave a comment

Your email address will not be published. Required fields are marked *