cast(a.Yards * c.rate  as decimal(19,3))

解决方案 »

  1.   

    select a.BarCode,a.WorkSheet,a.BobbinsNO,a.SO, a.POS, a.MatType,a.LOT_NO,a.ProdSpec,a.PLANT,a.BF,a.GRADE,a.LINE,a.MF, a.userid,a.reqid,a.DMP,a.ProductMF,a.PackType,a.NetWT,a.GrossWT,a.Yards,a.NumOfBobbins,a.ProductDate,a.LableDate,a.LastModify,a.StockPosition,a.StateCode,a.OrderNo, a.LOC,a.SGRADE, a.PC,a.StateSpec,a.Width,'' as bff, 
      case when a.MatType in ('t','w' ,'d') then ISNULL(b.VRKME,'KG')end as VRKME,
      case when a.MatType in ('t','w' ,'d') AND c.Type='L' then cast(a.Yards * c.rate  as decimal(19,3))       when a.MatType in ('t','w' ,'d') AND c.Type='W'then a.NetWT * c.rate
           when a.MatType IN ('S','H') then null
           else a.NetWT                   
           end as  New
    from vStockOnSelectDetial as a  
         LEFT JOIN PP_ProductOrderMain as b on  a.OrderNo=b.OrderNo 
         LEFT JOIN SAPUnits as c on b.VRKME=c.Units