102 lines
3.4 KiB
Transact-SQL
102 lines
3.4 KiB
Transact-SQL
-- dbo.ep_Vyroba_PrijemNestandard
|
||
CREATE PROCEDURE dbo.ep_Vyroba_PrijemNestandard
|
||
AS
|
||
|
||
-- !! proceduru neupravujte, bude stejne pregenerovana pri startu pluginu PluginHDCRTN !!
|
||
|
||
SET NOCOUNT ON
|
||
|
||
IF OBJECT_ID(N'tempdb..#TabPrijemNestandard', N'U') IS NULL
|
||
RETURN
|
||
|
||
|
||
|
||
DECLARE
|
||
@sklad NVARCHAR(30)=N'211',
|
||
@radaPrijem NVARCHAR(3)='270',
|
||
@vstC TINYINT,
|
||
@dpz TINYINT=0,
|
||
@jednM INT,
|
||
@dzMena NVARCHAR(3),
|
||
@dzKurz NUMERIC(19,6),
|
||
@dzKurzE NUMERIC(19,6),
|
||
@idDZ INT,
|
||
@idPZ INT,
|
||
@idStav INT,
|
||
@mjEvid NVARCHAR(10),
|
||
@mnoz NUMERIC(19,6),
|
||
@mnozKS NUMERIC(19,6),
|
||
@ksVKA NUMERIC(19,6),
|
||
@idVCK INT,
|
||
@idVCS INT,
|
||
@idVCP INT
|
||
|
||
DECLARE
|
||
@idKmen INT,
|
||
@pocetKA SMALLINT,
|
||
@paletList NVARCHAR(50),
|
||
@sarze NVARCHAR(50),
|
||
@datVyroby DATETIME,
|
||
@datExpirace DATETIME,
|
||
@smena TINYINT,
|
||
@idStroj INT
|
||
|
||
|
||
|
||
|
||
SELECT TOP(1) @idKmen=IDKmen,
|
||
@mnoz=MnozstviKg,
|
||
@paletList=PaletovyList,
|
||
@sarze=Sarze,
|
||
@datVyroby=DatumVyroby,
|
||
@datExpirace=DatumExpirace,
|
||
@smena=Smena,
|
||
@idStroj=IDStroje
|
||
FROM #TabPrijemNestandard
|
||
|
||
|
||
IF (@idKmen IS NULL) OR (@mnoz<=0)
|
||
RETURN
|
||
|
||
|
||
SET @paletList = ISNULL(@paletList, N'')
|
||
SET @sarze = ISNULL(@sarze, N'')
|
||
|
||
|
||
SELECT @mjEvid=MJEvidence FROM dbo.TabKmenZbozi WHERE ID=@idKmen
|
||
SET @ksVKA = 1
|
||
IF (@mjEvid=N'KA')
|
||
SET @ksVKA = ISNULL( (SELECT PocetOdvozene FROM dbo.TabMJZbozi WHERE KodMJ1=N'KA' AND KodMJ2=N'Ks' AND IDKmenZbozi=@idKmen), 0)
|
||
|
||
|
||
SET @idStav = (SELECT ID FROM dbo.TabStavSkladu WHERE IDSklad=@sklad AND IDKmenZbozi=@idKmen)
|
||
IF (@idStav IS NULL)
|
||
EXEC dbo.hp_InsertStavSkladu @IDKmen=@idKmen, @IDSklad=@sklad, @IDZboSklad=@idStav OUT
|
||
|
||
IF (@idStav IS NOT NULL)
|
||
BEGIN
|
||
EXEC dbo.hp_InsertHlavickyOZ @ident=@idDZ OUT, @Sklad=@sklad, @DruhPohybu=@dpz, @RadaDokladu=@radaPrijem, @CisloOrg=0
|
||
SELECT @dzMena=Mena, @dzKurz=Kurz, @dzKurzE=KurzEuro, @jednM=JednotkaMeny, @vstC=VstupniCena FROM dbo.TabDokladyZbozi WHERE ID=@idDZ
|
||
IF (@idDZ IS NOT NULL)
|
||
BEGIN
|
||
-- SET @mnoz = @pocetKA
|
||
EXEC dbo.hp_InsertPolozkyOZ @ident=@idPZ OUT, @IDDoklad=@idDZ, @DruhPohybu=@dpz, @CisloOrg=0, @IDZboSklad=@idStav, @Mena=@dzMena, @Kurz=@dzKurz,
|
||
@JednotkaMeny=@jednM, @KurzEuro=@dzKurzE, @SazbaSD=NULL, @SazbaDPH=NULL, @ZakazanoDPH=0, @VstupniCena=@vstC, @Mnozstvi=@mnoz
|
||
IF (@idPZ IS NOT NULL) AND (@sarze<>N'')
|
||
BEGIN
|
||
UPDATE dbo.TabPohybyZbozi SET Poznamka=N'P<EFBFBD><EFBFBD>jem nestandard' WHERE ID=@idPZ
|
||
SET @idVCK = (SELECT ID FROM dbo.TabVyrCK WHERE IDKmenZbozi=@idKmen AND Nazev1=@paletList)
|
||
IF (@idVCK IS NULL)
|
||
EXEC dbo.hp_OZInsertVyrCK @IDVyrCK=@idVCK OUT, @IDKmenZbozi=@idKmen, @Nazev1=@paletList, @Selectem=0, @DatVyroby=@datVyroby, @DatExpirace=@datExpirace, @Poznamka=N'Nestandard'
|
||
SET @idVCS = (SELECT ID FROM dbo.TabVyrCS WHERE IDVyrCK=@idVCK AND IDStavSkladu=@idStav AND Nazev1=@paletList)
|
||
IF (@idVCS IS NULL)
|
||
EXEC dbo.hp_OZInsertVyrCS @IDVyrCS=@idVCS OUT, @IDVyrCK=@idVCK, @IDZboSklad=@idStav
|
||
INSERT dbo.TabVyrCP (IDPolozkaDokladu, IDVyrCis, Nazev, Mnozstvi, DatExpirace) SELECT @idPZ, @idVCS, @sarze, @mnoz, @datExpirace
|
||
|
||
IF NOT EXISTS(SELECT 1 FROM dbo._TabVyroba_Palety WHERE Typ=5 AND CisloPalety=@paletList AND Sarze=@sarze)
|
||
INSERT dbo._TabVyroba_Palety (Typ, CisloPalety, Sarze, DatZahajeni, DatUkonceni, Mnozstvi, MnozstviKA, IDKmen)
|
||
SELECT 5, @paletList, @sarze, GETDATE(), GETDATE(), @pocetKA*@ksVKA, @pocetKA, @idKmen
|
||
END
|
||
END
|
||
END
|