لسلام عليكم ورحمة الله وبركاتة انا عندى مشكلة في [جملة سيكول بحيث يعمل تجميع تراكمي sum over من عمود لعمود واحد ونعمل validation لعمود بحيث يعمل limited معين لحد 50000 او 5000 او اي رقم ويقوم بعمل sum over من اول وجديد لحد ما يوصل لحد المسموح بي تاني
ومرفق معايا شكل صورة جريد اراجوا الرد وجزاك الله كل خير
عمل ودي جلة سيكول
SELECT TOP (100) PERCENT T1.ID, T1.CarID, SUBSTRING(CONVERT(VARCHAR(10), T1.DataCar, 102), 1, 10) AS DataCar, dbo.TCarInfor.BoarderNo,
dbo.LTCarModels.ModelName, dbo.TCarInfor.ModelYear, dbo.TCarInfor.MotorNO, dbo.TCarInfor.CC, T1.SpaceLimit,
(SELECT SUM(SpaceLimit) AS Spcaelimit
FROM dbo.TCarRecord AS T2
WHERE (ID <= T1.ID) AND (CarID = T1.CarID)) AS RunningTotal, CASE WHEN
(SELECT SUM(SpaceLimit) AS Spcaelimit
FROM dbo.TCarRecord AS T2
WHERE (ID <= T1.ID) AND (CarID = T1.CarID)) <= 50000 THEN
(SELECT SUM(SpaceLimit) AS Spcaelimit
FROM dbo.TCarRecord AS T2
WHERE (ID <= T1.ID) AND (CarID = T1.CarID)) WHEN
(SELECT SUM(SpaceLimit) AS Spcaelimit
FROM dbo.TCarRecord AS T2
WHERE (ID <= T1.ID) AND (CarID = T1.CarID)) = 50000 THEN
(SELECT SUM(SpaceLimit) AS Spcaelimit
FROM dbo.TCarRecord AS T2
WHERE (ID <= T1.ID) AND (CarID = T1.CarID)) ELSE abs
(((SELECT SUM(SpaceLimit) AS Spcaelimit
FROM dbo.TCarRecord AS T2
WHERE (ID <= T1.ID) AND (CarID = T1.CarID)) - 50000)) END AS MoadelElkaotsh, dbo.get_moadel_elkaotsh_5000(400) AS newfunc,
(SELECT SUM(SpaceLimit) AS Spcaelimit
FROM dbo.TCarRecord AS T2
WHERE (ID <= T1.ID) AND (CarID = T1.CarID)) AS tof,
(SELECT SUM(SpaceLimit) AS Spcaelimit1
FROM dbo.TCarRecord AS T3
WHERE (ID <= T2.ID) AND (CarID = T2.CarID)) AS RunningTotal2, SUM(T1.SpaceLimit) OVER (PARTITION BY T1.ID, t1.CarID) AS MoadelElkaotsh1,
(SELECT SUM(SpaceLimit) AS Spcaelimit1
FROM dbo.TCarRecord AS T3
WHERE (ID <= T1.ID) AND (CarID = T1.CarID)) AS tof2, dbo.TCarInfor.ChasseNo, dbo.TCarInfor.CylinderNum, T1.ID AS Expr1, T1.StayNo, T1.RetuernNo,
T1.TotalLienseVal, T1.FuelCost, dbo.LTFuelTypes.FuelTypeName, T1.TotalFuel, T1.AmraCostVal, T1.OilCoast, dbo.TCarInfor.FuelID, dbo.TCarInfor.CarBrandID,
T1.RateBatter, dbo.TCarInfor.CartID
FROM dbo.TCarInfor INNER JOIN
dbo.TCarRecord AS T1 INNER JOIN
dbo.TCarRecord AS T2 ON T1.ID = T2.ID AND T1.CarID = T2.CarID ON dbo.TCarInfor.CartID = T1.CarID INNER JOIN
dbo.LTFuelTypes ON dbo.TCarInfor.FuelID = dbo.LTFuelTypes.FuelTypeID INNER JOIN
dbo.LTCarModels ON dbo.TCarInfor.CarBrandID = dbo.LTCarModels.ID
ORDER BY T1.CarID, T1.ID