{"database": "fishbowl_archive", "table": "dataexport", "rows": [[28, "SELECT\r\n    l1.finished_good,\r\n    l1.finished_good_description,\r\n    l1.component_part_number,\r\n    l1.component_description,\r\n    l1.component_uom,\r\n    l1.qty_per_unit,\r\n    l1.make_buy,\r\n    l1.qty_on_hand,\r\n    l1.qty_on_order,\r\n    'Level 1' AS bom_level\r\nFROM (\r\n    SELECT\r\n        b.num                                           AS finished_good,\r\n        p_fg.description                                AS finished_good_description,\r\n        p_comp.num                                      AS component_part_number,\r\n        p_comp.description                              AS component_description,\r\n        u_part.name                                     AS component_uom,\r\n        CASE\r\n            WHEN bi.uomId = p_comp.uomId THEN bi.quantity\r\n            ELSE bi.quantity * (\r\n                SELECT uc.multiply / uc.factor\r\n                FROM uomconversion uc\r\n                WHERE uc.fromUomId = bi.uomId\r\n                  AND uc.toUomId = p_comp.uomId\r\n                LIMIT 1\r\n            )\r\n        END                                             AS qty_per_unit,\r\n        JSON_UNQUOTE(JSON_EXTRACT(p_comp.customFields, '$.\\\"42\\\".value')) AS make_buy,\r\n        MAX(qt.QTYONHAND)                               AS qty_on_hand,\r\n        MAX(qt.QTYONORDER)                              AS qty_on_order\r\n    FROM bom b\r\n    JOIN part p_fg          ON p_fg.num = b.num\r\n    JOIN bomitem bi          ON bi.bomid = b.id\r\n    JOIN part p_comp        ON p_comp.id = bi.partid\r\n    JOIN parttype pt         ON pt.id = p_comp.typeid\r\n    JOIN uom u_part         ON u_part.id = p_comp.uomId\r\n    LEFT JOIN qtyinventorytotals qt ON qt.PARTID = p_comp.id\r\n    WHERE b.num IN ('06330','04777','06463','06464','06465','06476','05899',\r\n        '06495','05828','05790','16645','06470','16646','06426','06355',\r\n        '06414','03606','03612','03611','03839','01195','06062','AB1069',\r\n        '06483','06490','06480','05930','04220','06251','04535','06500',\r\n        '06446','05931','00826','AB1331','AB2357','AB1089','AB1170','05929',\r\n        '00513','AB1194','AB2335','06218','06509','AB1151','00290','06167',\r\n        '01181','AB1135','06204','AB1077','06347','00514','AB1125','AB1136',\r\n        '06506','AB1808','AB1583','AB1757','00172','AB1398','AB1327','06473',\r\n        '05825','00836','03991','04235','04233','04232','04890','00846',\r\n        '06040','00011','01038','02417','05935','04562','00499','AB1977',\r\n        'AB1003','06494','AB1045','AB1579','AB1306','AB1412','AB1673',\r\n        'AB1161','AB1232','02416','AB1008','AB1131','AB1153','AB1216',\r\n        'AB1191','AB1409','00632','01106','AB1833','AB1367','AB1617',\r\n        'AB1152','AB1148','06261','06519','06520','01180','AB1234','AB1142',\r\n        '06429','AB1438','03987','AB1009','AB1875','AB1192','AB1710',\r\n        '06139','00505','AB1714','AB1629','AB1094','04529','00009','AB1129',\r\n        '06514','06515','06516','06517','00137','AB1415','AB1193','AB1972',\r\n        'AB1119','AB1123','AB1573','05934','04460','00963','AB1292','AB1445',\r\n        '00291','06166','06169','06168','06014','06522','06521','AB1205',\r\n        'AB1414','AB2375','02830','06435','AB1149','AB1266','AB1122','00509',\r\n        '00157','AB1527','AB2230','00496','04528','00502','AB1206','AB1697',\r\n        'AB1018','06508','00503','02414','00292','AB1240','AB1485','AB1482',\r\n        '03605','AB2098','AB1218','AB1021','00617','AB1672','AB1172',\r\n        'AB1144','AB1007')\r\n      AND p_comp.activeFlag = 1\r\n      AND pt.id NOT IN (20, 21, 22, 60)\r\n      AND p_comp.num != b.num\r\n      AND NOT EXISTS (\r\n          SELECT 1 FROM bom b_sub WHERE b_sub.num = p_comp.num\r\n      )\r\n    GROUP BY\r\n        b.num, p_fg.description, p_comp.num, p_comp.description,\r\n        p_comp.uomId, u_part.name, bi.uomId, bi.quantity, p_comp.customFields\r\n) l1\r\n\r\nUNION ALL\r\n\r\nSELECT\r\n    l2.finished_good,\r\n    l2.finished_good_description,\r\n    l2.component_part_number,\r\n    l2.component_description,\r\n    l2.component_uom,\r\n    l2.qty_per_unit,\r\n    l2.make_buy,\r\n    l2.qty_on_hand,\r\n    l2.qty_on_order,\r\n    'Level 2' AS bom_level\r\nFROM (\r\n    SELECT\r\n        b1.num                                          AS finished_good,\r\n        p_fg.description                                AS finished_good_description,\r\n        p_comp2.num                                     AS component_part_number,\r\n        p_comp2.description                             AS component_description,\r\n        u_part2.name                                    AS component_uom,\r\n        CASE\r\n            WHEN bi1.uomId = p_comp1.uomId THEN bi1.quantity\r\n            ELSE bi1.quantity * (\r\n                SELECT uc.multiply / uc.factor\r\n                FROM uomconversion uc\r\n                WHERE uc.fromUomId = bi1.uomId\r\n                  AND uc.toUomId = p_comp1.uomId\r\n                LIMIT 1\r\n            )\r\n        END *\r\n        CASE\r\n            WHEN bi2.uomId = p_comp2.uomId THEN bi2.quantity\r\n            ELSE bi2.quantity * (\r\n                SELECT uc.multiply / uc.factor\r\n                FROM uomconversion uc\r\n                WHERE uc.fromUomId = bi2.uomId\r\n                  AND uc.toUomId = p_comp2.uomId\r\n                LIMIT 1\r\n            )\r\n        END                                             AS qty_per_unit,\r\n        JSON_UNQUOTE(JSON_EXTRACT(p_comp2.customFields, '$.\\\"42\\\".value')) AS make_buy,\r\n        MAX(qt2.QTYONHAND)                              AS qty_on_hand,\r\n        MAX(qt2.QTYONORDER)                             AS qty_on_order\r\n    FROM bom b1\r\n    JOIN part p_fg              ON p_fg.num = b1.num\r\n    JOIN bomitem bi1             ON bi1.bomid = b1.id\r\n    JOIN part p_comp1           ON p_comp1.id = bi1.partid\r\n    JOIN parttype pt1            ON pt1.id = p_comp1.typeid\r\n    JOIN bom b2                 ON b2.num = p_comp1.num\r\n    JOIN bomitem bi2             ON bi2.bomid = b2.id\r\n    JOIN part p_comp2           ON p_comp2.id = bi2.partid\r\n    JOIN parttype pt2            ON pt2.id = p_comp2.typeid\r\n    JOIN uom u_part2            ON u_part2.id = p_comp2.uomId\r\n    LEFT JOIN qtyinventorytotals qt2 ON qt2.PARTID = p_comp2.id\r\n    WHERE b1.num IN ('06330','04777','06463','06464','06465','06476','05899',\r\n        '06495','05828','05790','16645','06470','16646','06426','06355',\r\n        '06414','03606','03612','03611','03839','01195','06062','AB1069',\r\n        '06483','06490','06480','05930','04220','06251','04535','06500',\r\n        '06446','05931','00826','AB1331','AB2357','AB1089','AB1170','05929',\r\n        '00513','AB1194','AB2335','06218','06509','AB1151','00290','06167',\r\n        '01181','AB1135','06204','AB1077','06347','00514','AB1125','AB1136',\r\n        '06506','AB1808','AB1583','AB1757','00172','AB1398','AB1327','06473',\r\n        '05825','00836','03991','04235','04233','04232','04890','00846',\r\n        '06040','00011','01038','02417','05935','04562','00499','AB1977',\r\n        'AB1003','06494','AB1045','AB1579','AB1306','AB1412','AB1673',\r\n        'AB1161','AB1232','02416','AB1008','AB1131','AB1153','AB1216',\r\n        'AB1191','AB1409','00632','01106','AB1833','AB1367','AB1617',\r\n        'AB1152','AB1148','06261','06519','06520','01180','AB1234','AB1142',\r\n        '06429','AB1438','03987','AB1009','AB1875','AB1192','AB1710',\r\n        '06139','00505','AB1714','AB1629','AB1094','04529','00009','AB1129',\r\n        '06514','06515','06516','06517','00137','AB1415','AB1193','AB1972',\r\n        'AB1119','AB1123','AB1573','05934','04460','00963','AB1292','AB1445',\r\n        '00291','06166','06169','06168','06014','06522','06521','AB1205',\r\n        'AB1414','AB2375','02830','06435','AB1149','AB1266','AB1122','00509',\r\n        '00157','AB1527','AB2230','00496','04528','00502','AB1206','AB1697',\r\n        'AB1018','06508','00503','02414','00292','AB1240','AB1485','AB1482',\r\n        '03605','AB2098','AB1218','AB1021','00617','AB1672','AB1172',\r\n        'AB1144','AB1007')\r\n      AND p_comp1.activeFlag = 1\r\n      AND p_comp2.activeFlag = 1\r\n      AND pt1.id NOT IN (20, 21, 22, 60)\r\n      AND pt2.id NOT IN (20, 21, 22, 60)\r\n      AND p_comp1.num != b1.num\r\n      AND p_comp2.num != b2.num\r\n      AND p_comp2.num != b1.num\r\n    GROUP BY\r\n        b1.num, p_fg.description, p_comp2.num, p_comp2.description,\r\n        p_comp2.uomId, u_part2.name, bi1.uomId, bi1.quantity,\r\n        bi2.uomId, bi2.quantity, p_comp2.customFields\r\n) l2\r\n\r\nORDER BY finished_good, bom_level, component_part_number;", "2026-04-20 14:32:06.897000", "2026-04-20 14:32:06.897000", "Change assembly numbers whereever b.num in is used to get data", 51, "Part_Data_Based_On_Assemblies"]], "columns": ["id", "dataQuery", "dateCreated", "dateLastModified", "description", "lastChangedUserId", "name"], "primary_keys": ["id"], "primary_key_values": ["28"], "units": {}, "query_ms": 1.5601850464008749}