هي الكود عن طريق ألاداة وكل شي تمام وجاهزة هيك بتكون
كيف يعني الحسابات الختامية ؟
كود :
DECLARE @SEARSH_BD decimal(18,3)
SET @SEARSH_BD=(SELECT ISNULL( SUM(DEBIT) ,0) FROM dbo.DAY1 INNER JOIN dbo.DAY2 ON dbo.DAY1.GUID = dbo.DAY2.PAENT_GUID WHERE (DAY2.ACCOUNT_GUID = @GUID) AND (DAY1.DATE < CONVERT(DATE, @B_DATE, 102)))
DECLARE @SEARSH_BC decimal(18,3)
SET @SEARSH_BC=(SELECT ISNULL( SUM(CREDIT) ,0) FROM dbo.DAY1 INNER JOIN dbo.DAY2 ON dbo.DAY1.GUID = dbo.DAY2.PAENT_GUID WHERE (DAY2.ACCOUNT_GUID = @GUID) AND (DAY1.DATE < CONVERT(DATE, @B_DATE, 102)))
DECLARE @SEARSH_D decimal(18,3)
SET @SEARSH_D=(SELECT ISNULL( SUM(DEBIT) ,0) FROM dbo.DAY1 INNER JOIN dbo.DAY2 ON dbo.DAY1.GUID = dbo.DAY2.PAENT_GUID WHERE (day2.ACCOUNT_GUID = @GUID) AND (day1.DATE BETWEEN CONVERT(DATE, @B_DATE, 102) AND CONVERT(DATE, @E_DATE, 102)))
DECLARE @SEARSH_C decimal(18,3)
SET @SEARSH_C=(SELECT ISNULL( SUM(CREDIT) ,0) FROM dbo.DAY1 INNER JOIN dbo.DAY2 ON dbo.DAY1.GUID = dbo.DAY2.PAENT_GUID WHERE (day2.ACCOUNT_GUID = @GUID) AND (day1.DATE BETWEEN CONVERT(DATE, @B_DATE, 102) AND CONVERT(DATE, @E_DATE, 102)))
delete from ggg
insert into ggg select @GUID from ACCOUNT where GUID = @GUID
declare @result1 bit
set @result1 = (SELECT CAST(CASE WHEN EXISTS(select ParentGUID from ACCOUNT where GUID in (select GUID from ggg) and ParentGUID not in (select GUID from ggg)) THEN 1 ELSE 0 END AS BIT ))
print @result1
while(@result1 = 1)
begin
insert into ggg select ParentGUID from ACCOUNT where GUID in (select GUID from ggg) and ParentGUID not in (select guid from ggg)
set @result1 = (SELECT CAST(CASE WHEN EXISTS(select ParentGUID from ACCOUNT where GUID in (select GUID from ggg) and ParentGUID not in (select GUID from ggg)) THEN 1 ELSE 0 END AS BIT ))
IF @result1 = 0
BREAK;
end
if @SEARSH_Bd > @SEARSH_Bc
update MIZAN set BD=@SEARSH_BD-@SEARSH_BC, BC=0,D=D+@SEARSH_D,C=C+@SEARSH_C ,TD=TD+@SEARSH_BD + @SEARSH_D,TC=TC+@SEARSH_BC + @SEARSH_C where GUID in (select GUID from ggg) ;
if @SEARSH_Bd < @SEARSH_Bc
update MIZAN set BD=0, BC=@SEARSH_BC-@SEARSH_BD,D=D+@SEARSH_D,C=C+@SEARSH_C ,TD=TD+@SEARSH_BD + @SEARSH_D,TC=TC+@SEARSH_BC + @SEARSH_C where GUID in (select GUID from ggg) ;كيف يعني الحسابات الختامية ؟

