Prvni verze
This commit is contained in:
116
_sql/ep_Vyroba_VyrobaMimoPlan.sql
Normal file
116
_sql/ep_Vyroba_VyrobaMimoPlan.sql
Normal file
@ -0,0 +1,116 @@
|
||||
-- dbo.ep_Vyroba_VyrobaMimoPlan
|
||||
CREATE PROCEDURE dbo.ep_Vyroba_VyrobaMimoPlan
|
||||
@IDKmen INT=NULL,
|
||||
@IDStroj INT=NULL,
|
||||
@IDZamest INT=NULL
|
||||
AS
|
||||
|
||||
-- !! proceduru neupravujte, bude stejne pregenerovana pri startu pluginu PluginHDCRTN !!
|
||||
|
||||
SET NOCOUNT ON
|
||||
|
||||
IF ((@IDKmen IS NULL) OR (@IDStroj IS NULL)) AND OBJECT_ID(N'tempdb..#TabVyrobaMimoPlan', N'U') IS NULL
|
||||
RETURN
|
||||
|
||||
|
||||
DECLARE
|
||||
@errMsg NVARCHAR(500),
|
||||
@tranPred INT
|
||||
|
||||
DECLARE
|
||||
@idEvROp INT,
|
||||
@uroven INT,
|
||||
@maxUroven INT,
|
||||
@iChyba INT,
|
||||
@mamPolotovar BIT,
|
||||
@idPlan INT,
|
||||
@IDPracoviste INT,
|
||||
@idVPr INT,
|
||||
@prpD INT,
|
||||
@szKmen NVARCHAR(3),
|
||||
@prpA NCHAR(1)=N'A',
|
||||
@mn NUMERIC(19,6),
|
||||
@mj NVARCHAR(10),
|
||||
@szVyr NVARCHAR(3),
|
||||
@rcVyr NVARCHAR(30)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
IF (@IDKmen IS NULL)
|
||||
DECLARE v CURSOR LOCAL FOR
|
||||
SELECT IDKmen, IDStroj, IDZamest FROM #TabVyrobaMimoPlan ORDER BY ID
|
||||
ELSE
|
||||
DECLARE v CURSOR LOCAL FOR
|
||||
SELECT @IDKmen, @IDStroj, @IDZamest
|
||||
OPEN v
|
||||
WHILE (1=1)
|
||||
BEGIN
|
||||
FETCH NEXT FROM v INTO @IDKmen, @IDStroj, @IDZamest
|
||||
IF (@@FETCH_STATUS<>0) BREAK
|
||||
|
||||
IF (@IDZamest IS NULL)
|
||||
SELECT TOP(1) ID FROM dbo.TabCisZam
|
||||
SELECT @szVyr=SkupZbo, @rcVyr=RegCis, @mj=MJEvidence FROM dbo.TabKmenZbozi WHERE ID=@IDKmen
|
||||
SET @mn = ISNULL( (SELECT PocetHlavni FROM dbo.TabMJZbozi WHERE IDKmenZbozi=@IDKmen AND KodMJ1=N'KA' AND KodMJ2='Pal'), 1)
|
||||
IF (@mn=0)
|
||||
SET @mn = 1
|
||||
SELECT @IDPracoviste=IDPrac FROM dbo.TabCisStroju WHERE ID=@IDStroj
|
||||
|
||||
EXEC @idPlan=dbo.hp_NewVyrobniPlan @IDDilce=@IDKmen, @mnozstvi=@mn, @Poznamka=N'V<EFBFBD>roba mimo pl<70>n', @ZdrojPozadavku=0
|
||||
IF (@idPlan>0)
|
||||
BEGIN
|
||||
UPDATE dbo.TabPlan SET Datum=dbo.hf_TruncDate(GETDATE()) WHERE ID=@idPlan
|
||||
|
||||
IF OBJECT_ID(N'tempdb..#TabPomSeznamVyrPlanuProZaplanovani', N'U') IS NULL
|
||||
CREATE TABLE #TabPomSeznamVyrPlanuProZaplanovani (ID INT NOT NULL)
|
||||
IF OBJECT_ID(N'tempdb..#TabGenVyrPrikazy', N'U') IS NULL
|
||||
CREATE TABLE #TabGenVyrPrikazy (ID INT NOT NULL, UrovenVnoreni INT NULL)
|
||||
INSERT #TabPomSeznamVyrPlanuProZaplanovani (ID) SELECT @idPlan
|
||||
EXEC dbo.hp_VyrPlan_ZaplanujSeznam @GenPlanovaneVyroby=0
|
||||
|
||||
IF EXISTS (SELECT 1 FROM #TabGenVyrPrikazy)
|
||||
BEGIN
|
||||
UPDATE t SET t.UrovenVnoreni=s.UrovenVnoreni FROM #TabGenVyrPrikazy t, dbo.TabPrikaz s WHERE s.ID=t.ID
|
||||
SET @maxUroven=(SELECT MAX(UrovenVnoreni) FROM #TabGenVyrPrikazy)
|
||||
|
||||
DECLARE c CURSOR LOCAL FOR
|
||||
SELECT ID, UrovenVnoreni FROM #TabGenVyrPrikazy
|
||||
OPEN c
|
||||
WHILE (1=1)
|
||||
BEGIN
|
||||
FETCH NEXT FROM c INTO @idVPr, @uroven
|
||||
IF (@@FETCH_STATUS<>0) BREAK
|
||||
|
||||
SELECT @idKmen=p.IDTabKmen, @szKmen=k.SkupZbo FROM dbo.TabPrikaz p INNER JOIN dbo.TabKmenZbozi k ON (k.ID=p.IDTabKmen) WHERE p.ID=@idVPr
|
||||
SET @mamPolotovar=0
|
||||
|
||||
IF EXISTS (SELECT 1 FROM dbo.TabPrKVazby v INNER JOIN dbo.TabKmenZbozi n ON (v.nizsi=n.ID)
|
||||
WHERE v.IDOdchylkyDo IS NULL AND v.IDPrikaz=@idVPr AND n.SkupZbo LIKE N'7%' AND n.SkupZbo<>N'701')
|
||||
SET @mamPolotovar=1
|
||||
|
||||
IF (@szKmen NOT IN (N'701')) AND (@mamPolotovar=0)
|
||||
UPDATE dbo.TabPrPostup SET pracoviste=@IDPracoviste, IDStroje=@IDStroj WHERE IDOdchylkyDo IS NULL AND Nazev LIKE N'Pe<EFBFBD>e%' AND IDPrikaz=@idVPr
|
||||
|
||||
EXEC @iChyba=dbo.hp_ZadaniPrikazuDoVyroby @IDPrikaz=@idVPr, @OnlyPredzpracovani=0
|
||||
/*
|
||||
IF (@iChyba=0) AND (@szKmen NOT IN (N'701'))
|
||||
BEGIN
|
||||
EXEC @idEvROp=dbo.ep_Vyroba_InsertEvidRozpracOper @IDZamestnance=@idZamest, @IDPracoviste=@IDPracoviste, @IDStroje=@IDStroj
|
||||
IF (@idEvROp>0)
|
||||
BEGIN
|
||||
SELECT TOP(1) @prpD=Doklad, @prpA=Alt FROM dbo.TabPrPostup WHERE IDOdchylkyDo IS NULL AND IDPrikaz=@idVPr
|
||||
EXEC dbo.ep_Vyroba_InsertEvidRozpracOperPol @IdEvidRozpOper=@idEvROp, @IdPrikaz=@idVPr, @doklPrPost=@prpD, @altPrPost=@prpA
|
||||
END
|
||||
END
|
||||
*/
|
||||
END
|
||||
CLOSE c
|
||||
DEALLOCATE c
|
||||
END
|
||||
END
|
||||
|
||||
END
|
||||
CLOSE v
|
||||
DEALLOCATE v
|
||||
Reference in New Issue
Block a user