Files
SHERPA/SHERPA.BBM.CORE/SqlScripts/VIEW/v_TrendData.sql
T
Samuele Locatelli f48a622696 refresh views
2024-02-13 10:31:39 +01:00

51 lines
1.4 KiB
Transact-SQL

---------------------------------------------
-- VIEW dati riassuntivi livello Trend
---------------------------------------------
CREATE OR ALTER VIEW [dbo].[v_TrendData]
AS
WITH cteTratt AS
(
SELECT doc.Anno as YearRef
,MONTH(doc.DataIns) AS MonthRef
,CAST(SUM(res.FinalPrice) AS DECIMAL(18,6)) AS Trattato
FROM Docs doc
INNER JOIN Resources res ON doc.DocId=res.DocId
WHERE doc.IsActive = 1 AND doc.IsDraft=0
GROUP BY doc.Anno, MONTH(doc.DataIns)
),
cteOrd AS
(
SELECT o.YearRef
,MONTH(o.DateIns) AS MonthRef
,CAST(SUM(ISNULL(r.FinalPrice,0)) AS DECIMAL(18,6)) AS Ordinato
FROM Orders o
LEFT OUTER JOIN dbo.OrderRes AS r ON o.OrdId = r.OrdId
GROUP BY o.YearRef, MONTH(o.DateIns)
),
cteFatt AS
(
SELECT b.YearRef
,MONTH(b.DateIns) AS MonthRef
,CAST(SUM(ISNULL(f.Amount,0)) AS DECIMAL(18,6)) AS Fatturato
,CAST(SUM(ISNULL(f.Paid,0)) AS DECIMAL(18,6)) AS Incassato
FROM BillingExt b
LEFT OUTER JOIN dbo.AccMov AS f ON b.IdxBillExt = f.IdxBillExt
GROUP BY b.YearRef, MONTH(b.DateIns)
)
SELECT t.YearRef
, t.MonthRef
, ISNULL(t.Trattato,0) AS Trattato
, ISNULL(o.Ordinato,0) AS Ordinato
, ISNULL(f.Fatturato,0) AS Fatturato
, ISNULL(f.Incassato,0) AS Incassato
FROM cteTratt t
LEFT OUTER JOIN cteOrd o ON t.YearRef = o.YearRef AND t.MonthRef = o.MonthRef
LEFT OUTER JOIN cteFatt f ON t.YearRef = f.YearRef AND t.MonthRef = f.MonthRef
--ORDER BY YearRef, MonthRef
GO