57 lines
1.4 KiB
Transact-SQL
57 lines
1.4 KiB
Transact-SQL
---------------------------------------------
|
|
-- VIEW dati riassuntivi livello Doc
|
|
---------------------------------------------
|
|
|
|
CREATE OR ALTER VIEW [dbo].[v_DocsData]
|
|
AS
|
|
|
|
WITH cteOrd AS
|
|
(
|
|
SELECT o.DocId
|
|
,COUNT(DISTINCT o.OrdId) AS Qty
|
|
,SUM(ISNULL(r.FinalPrice,0)) AS PriceOrdSum
|
|
FROM Orders o
|
|
LEFT OUTER JOIN dbo.OrderRes AS r ON o.OrdId = r.OrdId
|
|
GROUP BY o.DocId
|
|
)
|
|
,cteRes AS
|
|
(
|
|
SELECT DocId
|
|
,SUM(ISNULL(r.FinalPrice,0)) AS PriceDocSum
|
|
FROM Resources r
|
|
GROUP BY r.DocId
|
|
)
|
|
,cteBill AS
|
|
(
|
|
SELECT o.DocId
|
|
,SUM(ISNULL(f.Amount,0)) AS AmountSum
|
|
,SUM(ISNULL(f.Paid,0)) AS PaidSum
|
|
FROM Orders o
|
|
LEFT OUTER JOIN dbo.AccMov AS f ON o.OrdId = f.OrdId
|
|
WHERE f.IdxBillExt > 0
|
|
GROUP BY o.DocId
|
|
)
|
|
|
|
SELECT d.*
|
|
,n.BasketId
|
|
,bk.CodBasket
|
|
,bk.Descript as DescBasket
|
|
,c.RagSoc
|
|
,n.CodNegotiation
|
|
,n.Descript AS NegotDescript
|
|
,ISNULL(o.Qty,0) AS OrdQty
|
|
,CAST(ISNULL(r.PriceDocSum,0) AS decimal(18,6)) AS Importo
|
|
,CAST(ISNULL(b.AmountSum,0) AS decimal(18,6)) AS Fatturato
|
|
,CAST(ISNULL(b.PaidSum,0) AS decimal(18,6)) AS Incassato
|
|
FROM dbo.Docs AS d
|
|
INNER JOIN Negotiations AS n ON n.NegotiationId = d.NegotiationId
|
|
INNER JOIN Baskets AS bk ON n.BasketId = bk.BasketId
|
|
INNER JOIN Customers AS c ON n.CustomerId = c.CustomerId
|
|
LEFT OUTER JOIN cteOrd AS o ON d.DocId = o.DocId
|
|
LEFT OUTER JOIN cteRes AS r ON d.DocId = r.DocId
|
|
LEFT OUTER JOIN cteBill AS b ON d.DocId = b.DocId
|
|
|
|
GO
|
|
|
|
|