SQL-Sum Over Partition By Issue
You can use a CASE expression inside SUM():

SELECT  
    l.whse, l.partid, i.descr, l.qty,

    CASE WHEN f.Netflag = 0 THEN 'NONUsable' ELSE 'Usable' END 
        AS UsableStatus,
    SUM(CASE WHEN f.Netflag = 0 THEN l.qty ELSE 0 END) 
      OVER (PARTITION BY l.partid) AS TotalNonUsable,
    SUM(CASE WHEN f.Netflag = 0 THEN 0 ELSE l.qty END) 
      OVER (PARTITION BY l.partid) AS TotalUsable
FROM
    location l 
  JOIN inventory AS i ON l.partid = i.partid
  JOIN loctable AS f ON l.whse = f.whse ;


By the way, I don't see why you need DISTINCT in the query.