تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
الارصدة الافتتاحية والارصدة الحالية لميزان المراجعة
#8
هي الكود عن طريق ألاداة وكل شي تمام وجاهزة هيك بتكون 
كود :
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) ;

كيف يعني الحسابات الختامية ؟
الرد }}}
تم الشكر بواسطة:


الردود في هذا الموضوع
RE: الارصدة الافتتاحية والارصدة الحالية لميزان المراجعة - بواسطة spoony - 15-02-18, 12:06 AM


التنقل السريع :


يقوم بقرائة الموضوع: