-- dopln z dokladu posledni sarzi na stav skladu SET NOCOUNT ON DECLARE @idPZ INT, @idSS INT, @idKZ INT, @sarze NVARCHAR(100), @paletList NVARCHAR(100) MERGE dbo._hdc_PZ_PuvodniVC AS T USING dbo.TabPohybyZbozi AS S ON (S.ID=T.IDPohybZbozi) WHEN MATCHED THEN UPDATE SET T.IDZboSklad=S.IDZboSklad; DECLARE c CURSOR LOCAL FAST_FORWARD FOR SELECT IDPohybZbozi, IDZboSklad, Sarze, PaletovyList FROM dbo._hdc_PZ_PuvodniVC WHERE IDPohybZbozi IN (SELECT ID FROM dbo.TabPohybyZbozi WHERE IDDoklad=29) OPEN c WHILE (1=1) BEGIN FETCH NEXT FROM c INTO @idPZ, @idSS, @sarze, @paletList IF (@@FETCH_STATUS<>0) BREAK IF (@idSS IS NULL) SET @idSS = (SELECT IDZboSklad FROM dbo.TabPohybyZbozi WHERE ID=@idPZ) IF (@idSS IS NOT NULL) SET @idKZ = (SELECT IDKmenZbozi FROM dbo.TabStavSkladu WHERE ID=@idSS) SET @idSS = (SELECT ID FROM dbo.TabStavSkladu WHERE IDKmenZbozi=@idKZ AND IDSklad=N'211') IF NOT EXISTS (SELECT 1 FROM dbo.TabStavSkladu_EXT WHERE ID=@idSS) INSERT dbo.TabStavSkladu_EXT (ID) VALUES (@idSS) UPDATE dbo.TabStavSkladu_EXT SET _Prevod_PosledniSarze=@sarze WHERE ID=@idSS END CLOSE c DEALLOCATE c