;WITH CTE AS (
SELECT DISTINCT
TSP.SN,TSP.partnum,TSP.partdesc,TSP.partmodel,TSP.stockin,TSP.dateofstockin,
SUM(TSP.stockin)OVER(PARTITION BY TSP.partnum ORDER BY (SELECT 1))AS
FinalTotalStockIN,
TOC.outstock,TOC.outstockdate, TOC.outstockcaseid_billnum, TOC.remarks,
SUM(TOC.outstock)OVER(PARTITION BY TOC.partnum ORDER BY (SELECT 1)) AS
FinalTotalStockOut
FROM
DBName1.dbo.Tbl_SpareParts AS TSP
INNER JOIN DBName2.dbo.Tbl_OutCaseID TOC
ON (TSP.Partnum = TOC.Partnum)
)
SELECT SN,Partnum,PartModel,StockIn,DateofStockIn,FinalTotalStockIN,Outstock,
OutStockDate,OutStockCaseid_billnum,Remarks,FinalTotalStockOut,
CASE
WHEN SIGN((FinalTotalStockIN - FinalTotalStockOut))=1
THEN
(FinalTotalStockIN - FinalTotalStockOut)
ELSE
0 END as Balance
FROM CTE