BEGIN;

--SELECT dsm, director, quota_rep_descr, billto_group, shipto_group, sum(value_usd ), count(*) from rlarp.osm_pool where order_season = 2021 group by dsm, director, quota_rep_descr, billto_group, shipto_group;

UPDATE
    rlarp.osm_pool o
SET
    chan =  CASE SUBSTRING(b.bvclas,2,3) 
                --if the bill to class is ditsributor, then it's either warehouse or drop
                WHEN 'DIS' THEN
                    --if the ship-to is a different name than the bill-to then it's drop, otherwise it's warehouse
                    CASE SUBSTRING(s.bvclas,2,3)
                        WHEN 'DIS' THEN 'WHS'
                        ELSE 'DRP'
                    END
                    --CASE WHEN RTRIM(SUBSTRING(LTRIM(SC.BVADR7)||SC.BVNAME,1,30)) = RTRIM(SUBSTRING(LTRIM(BC.BVADR7)||BC.BVNAME,1,30)) THEN 'DIS' ELSE 'DRP' END
                --everything else does not involve a distributor and is considered direct
                ELSE 'DIR'
            END,
    chansub =   CASE SUBSTRING(b.bvclas,2,3) 
                    WHEN 'DIS' THEN
                        --if the ship-to is a different name than the bill-to then it's drop, otherwise it's warehouse
                        CASE SUBSTRING(s.bvclas,2,3)
                            WHEN 'DIS' THEN 'WHS'
                            ELSE CASE SUBSTRING(s.bvclas,1,1) WHEN 'R' THEN 'RDP' ELSE 'DRP' END
                        END
                    WHEN 'MAS' THEN 'RMN'
                    WHEN 'NAT' THEN 'RMN'
                    ELSE CASE SUBSTRING(s.bvclas,1,1) WHEN 'R' THEN 'RDI' ELSE 'DIR' END
                END,
    dsm = 
        ------------quota rep column--------------
         CASE WHEN COALESCE(substring(ming_descr,1,3),'') = 'B52' THEN 'PW' ELSE
            --if the gl expense code is 1RE use the retail rep assigned to the bill-to customer if available
            CASE WHEN COALESCE(o.segm,'') = 'Retail' AND  COALESCE((SELECT currep FROM lgpgm.usrcust where cucust = b.bvcust),'') <> '' 
                THEN 
                    (SELECT currep FROM lgpgm.usrcust where cucust = b.bvcust)
                --default logic
                ELSE 
                    CASE SUBSTR(b.bvclas,2,3)
                        WHEN 'DIS' THEN s.bvsalm
                        ELSE b.bvsalm
                    END
            END
        END,
    billto_group = CASE b.bvadr6 WHEN '' THEN b.bvname ELSE b.bvadr6 END,
    shipto_group = CASE s.bvadr6 WHEN '' THEN s.bvname ELSE s.bvadr6 END
FROM
    lgdat.cust b,
    lgdat.cust s
WHERE
    b.bvcust = rtrim(substring(o.bill_cust_descr,1,8))
    AND s.bvcust = rtrim(substring(o.ship_cust_descr,1,8));
--BEGIN;
    
UPDATE
    rlarp.osm_pool o
SET
    quota_rep_descr = c.a30
    ,director = COALESCE(Q.DIR,'Other')
FROM
    lgdat.code c
    ,rlarp.qrh q
WHERE
    LTRIM(RTRIM(c.a9)) = o.dsm
    and c.a2 = 'MM'
    AND q.qr = LTRIM(RTRIM(c.a9));
    
<<<<<<< HEAD
    
COMMIT;
=======
COMMIT;  
--ROLLBACK;
>>>>>>> dev
