


-- 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

