SELECT L.QTY_GROUP, L.OLD_CODE, L.PRODUCT_DESC, B.BALE GOVT_BALES, B.MT GOVT_MT, B.AMOUNT GOVT_AMOUNT, C.BALE LOCAL_BALES, C.MT LOCAL_MT, C.AMOUNT LOCAL_AMOUNT, D.BALE CONS_BALES, D.MT CONS_MT, D.AMOUNT CONS_AMOUNT, E.BALE EXP_BALES, E.MT EXP_MT, E.AMOUNT EXP_AMOUNT, F.BALE GHU_BALES, F.MT GHU_MT, F.AMOUNT GHU_AMOUNT, G.BALE HJM_BALES, G.MT HJM_MT, G.AMOUNT HJM_AMOUNT, H.BALE IJM_BALES, H.MT IJM_MT, H.AMOUNT IJM_AMOUNT, I.BALE GJM_BALES, I.MT GJM_MT, I.AMOUNT GJM_AMOUNT, J.BALE BAR_BALES, J.MT BAR_MT, J.AMOUNT BAR_AMOUNT, K.BALE TOTAL_BALES, K.MT TOTAL_MT, K.AMOUNT TOTAL_AMOUNT FROM ( SELECT DISTINCT B.PRODUCT_CODE FROM SALES.SALES_EXCISE_INV_MASTER A, SALES.SALES_EXCISE_INV_QUALITY B WHERE A.INV_CODE = B.INV_CODE AND A.COMP_CODE = B.COMP_CODE AND A.INV_DATE BETWEEN :FDATE AND :TDATE AND A.COMP_CODE = :COMP_CODE ) A, ( SELECT B.PRODUCT_CODE, SUM(CASE WHEN DESPATCH_QUANTITY_UNIT = 'BALE' THEN B.DESPATCH_QUANTITY ELSE 0 END) BALE, SUM(B.GROSS_WT) MT, SUM(B.AMOUNT) AMOUNT FROM SALES.SALES_EXCISE_INV_MASTER A, SALES.SALES_EXCISE_INV_QUALITY B WHERE A.INV_CODE = B.INV_CODE AND A.COMP_CODE = B.COMP_CODE AND A.INV_DATE BETWEEN :FDATE AND :TDATE AND A.COMP_CODE = :COMP_CODE AND A.SALE_TYPE_CODE = 4 GROUP BY B.PRODUCT_CODE ) B, ( SELECT B.PRODUCT_CODE, SUM(CASE WHEN DESPATCH_QUANTITY_UNIT = 'BALE' THEN B.DESPATCH_QUANTITY ELSE 0 END) BALE, SUM(B.GROSS_WT) MT, SUM(B.AMOUNT) AMOUNT FROM SALES.SALES_EXCISE_INV_MASTER A, SALES.SALES_EXCISE_INV_QUALITY B WHERE A.INV_CODE = B.INV_CODE AND A.COMP_CODE = B.COMP_CODE AND A.INV_DATE BETWEEN :FDATE AND :TDATE AND A.COMP_CODE = :COMP_CODE AND A.SALE_TYPE_CODE = 1 GROUP BY B.PRODUCT_CODE ) C, ( SELECT B.PRODUCT_CODE, SUM(CASE WHEN DESPATCH_QUANTITY_UNIT = 'BALE' THEN B.DESPATCH_QUANTITY ELSE 0 END) BALE, SUM(B.GROSS_WT) MT, SUM(B.AMOUNT) AMOUNT FROM SALES.SALES_EXCISE_INV_MASTER A, SALES.SALES_EXCISE_INV_QUALITY B WHERE A.INV_CODE = B.INV_CODE AND A.COMP_CODE = B.COMP_CODE AND A.INV_DATE BETWEEN :FDATE AND :TDATE AND A.COMP_CODE = :COMP_CODE AND A.SALE_TYPE_CODE = 2 GROUP BY B.PRODUCT_CODE ) D, ( SELECT B.PRODUCT_CODE, SUM(CASE WHEN DESPATCH_QUANTITY_UNIT = 'BALE' THEN B.DESPATCH_QUANTITY ELSE 0 END) BALE, SUM(B.GROSS_WT) MT, SUM(B.AMOUNT) AMOUNT FROM SALES.SALES_EXCISE_INV_MASTER A, SALES.SALES_EXCISE_INV_QUALITY B WHERE A.INV_CODE = B.INV_CODE AND A.COMP_CODE = B.COMP_CODE AND A.INV_DATE BETWEEN :FDATE AND :TDATE AND A.COMP_CODE = :COMP_CODE AND A.SALE_TYPE_CODE = 3 GROUP BY B.PRODUCT_CODE ) E, ( SELECT B.PRODUCT_CODE, SUM(CASE WHEN DESPATCH_QUANTITY_UNIT = 'BALE' THEN B.DESPATCH_QUANTITY ELSE 0 END) BALE, SUM(B.GROSS_WT) MT, SUM(B.AMOUNT) AMOUNT FROM SALES.SALES_EXCISE_INV_MASTER A, SALES.SALES_EXCISE_INV_QUALITY B WHERE A.INV_CODE = B.INV_CODE AND A.COMP_CODE = B.COMP_CODE AND A.INV_DATE BETWEEN :FDATE AND :TDATE AND A.COMP_CODE = :COMP_CODE AND A.SALE_TYPE_CODE = 5 AND A.BUYER_CODE = 43 GROUP BY B.PRODUCT_CODE ) F, ( SELECT B.PRODUCT_CODE, SUM(CASE WHEN DESPATCH_QUANTITY_UNIT = 'BALE' THEN B.DESPATCH_QUANTITY ELSE 0 END) BALE, SUM(B.GROSS_WT) MT, SUM(B.AMOUNT) AMOUNT FROM SALES.SALES_EXCISE_INV_MASTER A, SALES.SALES_EXCISE_INV_QUALITY B WHERE A.INV_CODE = B.INV_CODE AND A.COMP_CODE = B.COMP_CODE AND A.INV_DATE BETWEEN :FDATE AND :TDATE AND A.COMP_CODE = :COMP_CODE AND A.SALE_TYPE_CODE = 5 AND A.BUYER_CODE = 56 GROUP BY B.PRODUCT_CODE ) G, ( SELECT B.PRODUCT_CODE, SUM(CASE WHEN DESPATCH_QUANTITY_UNIT = 'BALE' THEN B.DESPATCH_QUANTITY ELSE 0 END) BALE, SUM(B.GROSS_WT) MT, SUM(B.AMOUNT) AMOUNT FROM SALES.SALES_EXCISE_INV_MASTER A, SALES.SALES_EXCISE_INV_QUALITY B WHERE A.INV_CODE = B.INV_CODE AND A.COMP_CODE = B.COMP_CODE AND A.INV_DATE BETWEEN :FDATE AND :TDATE AND A.COMP_CODE = :COMP_CODE AND A.SALE_TYPE_CODE = 5 AND A.BUYER_CODE = 42 GROUP BY B.PRODUCT_CODE ) H, ( SELECT B.PRODUCT_CODE, SUM(CASE WHEN DESPATCH_QUANTITY_UNIT = 'BALE' THEN B.DESPATCH_QUANTITY ELSE 0 END) BALE, SUM(B.GROSS_WT) MT, SUM(B.AMOUNT) AMOUNT FROM SALES.SALES_EXCISE_INV_MASTER A, SALES.SALES_EXCISE_INV_QUALITY B WHERE A.INV_CODE = B.INV_CODE AND A.COMP_CODE = B.COMP_CODE AND A.INV_DATE BETWEEN :FDATE AND :TDATE AND A.COMP_CODE = :COMP_CODE AND A.SALE_TYPE_CODE = 5 AND A.BUYER_CODE = 372 GROUP BY B.PRODUCT_CODE ) I, ( SELECT B.PRODUCT_CODE, SUM(CASE WHEN DESPATCH_QUANTITY_UNIT = 'BALE' THEN B.DESPATCH_QUANTITY ELSE 0 END) BALE, SUM(B.GROSS_WT) MT, SUM(B.AMOUNT) AMOUNT FROM SALES.SALES_EXCISE_INV_MASTER A, SALES.SALES_EXCISE_INV_QUALITY B WHERE A.INV_CODE = B.INV_CODE AND A.COMP_CODE = B.COMP_CODE AND A.INV_DATE BETWEEN :FDATE AND :TDATE AND A.COMP_CODE = :COMP_CODE AND A.SALE_TYPE_CODE = 5 AND A.BUYER_CODE = 923 GROUP BY B.PRODUCT_CODE ) J, ( SELECT B.PRODUCT_CODE, SUM(CASE WHEN DESPATCH_QUANTITY_UNIT = 'BALE' THEN B.DESPATCH_QUANTITY ELSE 0 END) BALE, SUM(B.GROSS_WT) MT, SUM(B.AMOUNT) AMOUNT FROM SALES.SALES_EXCISE_INV_MASTER A, SALES.SALES_EXCISE_INV_QUALITY B WHERE A.INV_CODE = B.INV_CODE AND A.COMP_CODE = B.COMP_CODE AND A.INV_DATE BETWEEN :FDATE AND :TDATE AND A.COMP_CODE = :COMP_CODE GROUP BY B.PRODUCT_CODE ) K, ( SELECT X.PRODUCT_CODE, X.OLD_CODE, X.PRODUCT_DESC, Y.QTY_GROUP FROM MREL.MREL_PRODUCT_MASTER X, MREL.MREL_QUALITY_MAST Y WHERE X.QTY_CODE = Y.QTY_CODE ) L WHERE A.PRODUCT_CODE = B.PRODUCT_CODE(+) AND A.PRODUCT_CODE = C.PRODUCT_CODE(+) AND A.PRODUCT_CODE = D.PRODUCT_CODE(+) AND A.PRODUCT_CODE = E.PRODUCT_CODE(+) AND A.PRODUCT_CODE = F.PRODUCT_CODE(+) AND A.PRODUCT_CODE = G.PRODUCT_CODE(+) AND A.PRODUCT_CODE = H.PRODUCT_CODE(+) AND A.PRODUCT_CODE = I.PRODUCT_CODE(+) AND A.PRODUCT_CODE = J.PRODUCT_CODE(+) AND A.PRODUCT_CODE = K.PRODUCT_CODE(+) AND A.PRODUCT_CODE = L.PRODUCT_CODE ORDER BY 1,2