銷售開票單SQL新

SELECT a.Dates,a.OnTime,a.BillNo,a.BillCode,a.ClientId,b.BusinessCode,b.BusinessName,e.Contact,c.DEPARTMENT,d.STAFFNAME,f.STAFFNAME AS CaozyName
      ,CASE WHEN a.kk_kplx = 1 THEN '器械' ELSE '非器械' END kk_kplx,a.kk_islc
      ,CASE WHEN a.kk_ddlx = 0 THEN '正常出庫' ELSE '空進空出' END kk_ddlx
      ,g.DICTLIST AS Delivery
      ,a1.Amount,a1.Tax,a1.TaxAmount
      ,a.IsEnd,a.IsDone,a.BillState
      ,a.Remark
      ,CASE WHEN ISNULL(a2.Num,0) = 0 THEN 'N' ELSE 'Y' END IsFree
FROM SALENOTESMT AS a
     INNER JOIN (SELECT EntId,BillNo,SUM(Amount) AS Amount,SUM(Tax) AS Tax,SUM(TaxAmount) AS TaxAmount FROM SALENOTESDT GROUP BY EntId,BillNo) AS a1 ON a.EntId = a1.EntId AND a.BillNo = a1.BillNo
     LEFT  JOIN (SELECT bb.EntId,bb.ReBillNo,COUNT(*) AS Num 
                 FROM FREENOTEMT AS aa
                      INNER JOIN FREENOTEDT AS bb ON aa.EntId = bb.EntId AND aa.BillNo = bb.BillNo
                 WHERE aa.RuleId='64ac4zeu9cbqimuc'
                 GROUP BY bb.EntId,bb.ReBillNo
                 ) AS a2 ON a.EntId = a2.EntId AND a.BillNo = a2.ReBillNo
     INNER JOIN BUSINESSDOC AS b ON a.EntId = b.EntId AND a.ClientId = b.BusinessId
     INNER JOIN DEPTDOC AS c ON a.EntId = c.ENTID AND a.DeptId = c.DEPTID
     INNER JOIN STAFFDOC AS d ON a.EntId = d.ENTID AND a.SaleManId = d.STAFFID
     INNER JOIN CONTACTDOC AS e ON a.EntId = e.EntId AND a.OppContId = e.ContactId
     INNER JOIN STAFFDOC AS f ON a.EntId = f.ENTID AND a.caozy = f.STAFFID
     INNER JOIN DICTDOC AS g ON g.FDNAME ='Delivery' AND a.Delivery = g.DICTVALUE
WHERE a.RuleId ='67b55qi64q7dzsq2'

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章