/****** Object: StoredProcedure [dbo].[szamla_tetel_beir_szl] Script Date: 2021. 09. 28. 9:45:38 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO create PROCEDURE [dbo].[szamla_tetel_beir_szl] AS begin SET XACT_ABORT ON SET NOCOUNT ON SET TRANSACTION ISOLATION LEVEL SERIALIZABLE declare @tranznev varchar(50) declare @tet int declare @maxtet int declare @szla bizonylat_szam declare @tszla bizonylat_szam declare @szlev bizonylat_szam set @tranznev = 't_szla_tet_ujx' begin transaction @tranznev DECLARE cszla CURSOR for SELECT szamla_sz FROM vevo_oszla_bizszam group by szamla_sz order by szamla_sz open cszla fetch next from cszla into @szla while (@@FETCH_STATUS <> -1) begin IF (@@FETCH_STATUS <> -2) BEGIN set @tet=0 DECLARE cszla1 CURSOR for SELECT storno_szamla_sz, szlevsz FROM vevo_oszla_bizszam where szamla_sz=@szla order by szlevsz open cszla1 fetch next from cszla1 into @tszla, @szlev while (@@FETCH_STATUS <> -1) begin IF (@@FETCH_STATUS <> -2) BEGIN select @maxtet=max(tetel) from vevo_szlet where bizszam=@szlev update vevo_szlat set szlev_szam=@szlev, szlev_tetel_szam=tetel - @tet where bizszam=@szla and tetel>@tet and tetel<=@tet + @maxtet update vevo_szlat set szlev_szam=@szlev, szlev_tetel_szam=tetel - @tet where bizszam=@tszla and tetel>@tet and tetel<=@tet + @maxtet set @tet=@tet + @maxtet END fetch next from cszla1 into @tszla, @szlev end close cszla1 deallocate cszla1 END fetch next from cszla into @szla end close cszla deallocate cszla commit transaction @tranznev SET TRANSACTION ISOLATION LEVEL READ COMMITTED end insert into verzio values('upg','Ver. 2.74', dbo.mygetdatetime()) go