Uprava CreateWaitableTimer pri uzavreni timeru (Rootvin)
This commit is contained in:
@@ -83,7 +83,7 @@ WHILE (1=1)
|
||||
-- smaz pomocnou tabulku
|
||||
DELETE FROM #TabJSONData
|
||||
INSERT #TabJSONData (doc) SELECT @jsonString
|
||||
SELECT TOP(1) @akce = JSON_VALUE(doc, '$.action'), @akceSource = JSON_VALUE(doc, '$.source'), @datumText = JSON_VALUE(doc, '$.actionAt') FROM #TabJSONData
|
||||
SELECT TOP(1) @akce = JSON_VALUE(doc, '$.akce'), @akceSource = JSON_VALUE(doc, '$.source'), @datumText = JSON_VALUE(doc, '$.data.created') FROM #TabJSONData
|
||||
|
||||
SET @akce = ISNULL(@akce, N'')
|
||||
SET @akceSource = ISNULL(@akceSource, N'')
|
||||
|
||||
@@ -65,11 +65,9 @@ SET @uziv = 0
|
||||
IF (@sklMatHlavni IS NULL)
|
||||
SELECT @sklMatHlavni=Cislo FROM dbo.TabStrom WHERE Nazev=N'Hlavní sklad - Materiál' AND CisloStr LIKE N'3%'
|
||||
IF (@sklTechnolog IS NULL)
|
||||
SELECT @sklTechnolog=Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'Technolog%NEÚÈ%' AND Nazev NOT LIKE N'%polotov%' AND CisloStr LIKE N'2%'
|
||||
IF (@sklTechnolog IS NULL)
|
||||
SELECT @sklTechnolog=Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'Technolog%sklad%výdej%' AND CisloStr LIKE N'2%'
|
||||
SELECT @sklTechnolog=Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'Technolog%NEÚÈ%' AND Nazev NOT LIKE N'%polotov%' AND Nazev NOT LIKE N'%HV%' AND CisloStr LIKE N'2%'
|
||||
IF (@sklTechnologPolo IS NULL)
|
||||
SELECT @sklTechnologPolo=Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'Technolog%NEÚÈ%pol%' AND CisloStr LIKE N'2%'
|
||||
SELECT @sklTechnologPolo=Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'Technolog%NEÚÈ%' AND (Nazev LIKE N'%polotov%' OR Nazev LIKE N'%HV%') AND CisloStr LIKE N'2%'
|
||||
IF (@sklPekarna IS NULL)
|
||||
SELECT @sklPekarna=Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'Výroba - Pekárna' AND CisloStr LIKE N'2%'
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
-- dbo.ep_Vyroba_GenObjednavkuMatDoVyrobyNew
|
||||
CREATE PROCEDURE dbo.ep_Vyroba_GenObjednavkuMatDoVyrobyNew
|
||||
@zaPocetDnu SMALLINT=5,
|
||||
@errMsg NVARCHAR(500)=N'' OUT
|
||||
AS
|
||||
|
||||
@@ -52,6 +53,7 @@ DECLARE
|
||||
@sklMatHlavni NVARCHAR(30), -- 311
|
||||
@sklPekarna NVARCHAR(30), -- 211
|
||||
@sklTechnolog NVARCHAR(30), -- 261
|
||||
@sklTechnologHV NVARCHAR(30), -- 262
|
||||
@skladFin NVARCHAR(30), -- 312
|
||||
@mnoz NUMERIC(19,6),
|
||||
@mnozVydano NUMERIC(19,6),
|
||||
@@ -69,7 +71,9 @@ IF OBJECT_ID(N'tempdb..#VyrobaGenObjednavkuMatDoVyrobyNew', N'U') IS NOT NULL
|
||||
IF (@sklMatHlavni IS NULL)
|
||||
SELECT TOP(1) @sklMatHlavni=Cislo FROM dbo.TabStrom WHERE Nazev=N'Hlavní sklad - Materiál' AND CisloStr LIKE N'3%'
|
||||
IF (@sklTechnolog IS NULL)
|
||||
SELECT TOP(1) @sklTechnolog=Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'Technolog%NEÚÈ%' AND Nazev NOT LIKE N'%polotov%' AND CisloStr LIKE N'2%'
|
||||
SELECT TOP(1) @sklTechnolog=Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'Technolog%NEÚÈ%' AND Nazev NOT LIKE N'%polotov%' AND Nazev NOT LIKE N'%HV%' AND CisloStr LIKE N'2%'
|
||||
IF (@sklTechnologHV IS NULL)
|
||||
SELECT TOP(1) @sklTechnologHV=Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'Technolog%NEÚÈ%' AND (Nazev LIKE N'%polotov%' OR Nazev LIKE N'%HV%') AND CisloStr LIKE N'2%'
|
||||
IF (@sklPekarna IS NULL)
|
||||
SELECT TOP(1) @sklPekarna=Cislo FROM dbo.TabStrom WHERE Nazev LIKE N'Výroba - Pekárna' AND CisloStr LIKE N'2%'
|
||||
|
||||
@@ -98,13 +102,13 @@ DELETE FROM dbo._TabVyroba_Objednavky_Pol WHERE IDPohybOZ NOT IN (SELECT ID FROM
|
||||
SET @genDokladMat=0
|
||||
IF EXISTS (SELECT 1 FROM dbo._TabVyroba_Objednavky o WHERE o.Splneno=0 AND o.OdmitnutoSkladem=0 AND o.NocniObjednavka=0 AND o.Storno=0 AND o.Vratka=0
|
||||
AND o.JeMaterial=1 AND o.Blokovano=0 AND (o.Mnozstvi-ISNULL( (SELECT SUM(Mnozstvi) FROM dbo._TabVyroba_Objednavky_Pol WHERE IDHlava=o.ID), 0))>0
|
||||
AND DATEDIFF(day, o.DatPorizeni, GETDATE())<6
|
||||
AND DATEDIFF(day, o.DatPorizeni, GETDATE())<=@zaPocetDnu
|
||||
)
|
||||
BEGIN
|
||||
SET @genDokladMat=1
|
||||
SET @datumDokladuMat = (SELECT MIN(o.DatPorizeni) FROM dbo._TabVyroba_Objednavky o WHERE o.Splneno=0 AND o.OdmitnutoSkladem=0 AND o.NocniObjednavka=0 AND o.Storno=0 AND o.Vratka=0
|
||||
AND o.JeMaterial=1 AND o.Blokovano=0 AND (o.Mnozstvi-ISNULL( (SELECT SUM(Mnozstvi) FROM dbo._TabVyroba_Objednavky_Pol WHERE IDHlava=o.ID), 0))>0
|
||||
AND DATEDIFF(day, o.DatPorizeni, GETDATE())<6
|
||||
AND DATEDIFF(day, o.DatPorizeni, GETDATE())<=@zaPocetDnu
|
||||
)
|
||||
END
|
||||
SET @datumDokladuMat = ISNULL(@datumDokladuMat, GETDATE())
|
||||
@@ -114,13 +118,13 @@ SET @datumDokladuMat = ISNULL(@datumDokladuMat, GETDATE())
|
||||
SET @genDokladFin=0
|
||||
IF EXISTS (SELECT 1 FROM dbo._TabVyroba_Objednavky o WHERE o.Splneno=0 AND o.OdmitnutoSkladem=0 AND o.NocniObjednavka=0 AND o.Storno=0 AND o.Vratka=0
|
||||
AND o.JeMaterial=0 AND o.Blokovano=0 AND (o.Mnozstvi-ISNULL( (SELECT SUM(Mnozstvi) FROM dbo._TabVyroba_Objednavky_Pol WHERE IDHlava=o.ID), 0))>0
|
||||
AND DATEDIFF(day, o.DatPorizeni, GETDATE())<6
|
||||
AND DATEDIFF(day, o.DatPorizeni, GETDATE())<=@zaPocetDnu
|
||||
)
|
||||
BEGIN
|
||||
SET @genDokladFin=1
|
||||
SET @datumDokladuFin = (SELECT MIN(o.DatPorizeni) FROM dbo._TabVyroba_Objednavky o WHERE o.Splneno=0 AND o.OdmitnutoSkladem=0 AND o.NocniObjednavka=0 AND o.Storno=0 AND o.Vratka=0
|
||||
AND o.JeMaterial=0 AND o.Blokovano=0 AND (o.Mnozstvi-ISNULL( (SELECT SUM(Mnozstvi) FROM dbo._TabVyroba_Objednavky_Pol WHERE IDHlava=o.ID), 0))>0
|
||||
AND DATEDIFF(day, o.DatPorizeni, GETDATE())<6
|
||||
AND DATEDIFF(day, o.DatPorizeni, GETDATE())<=@zaPocetDnu
|
||||
)
|
||||
END
|
||||
SET @datumDokladuFin = ISNULL(@datumDokladuFin, GETDATE())
|
||||
@@ -142,7 +146,7 @@ IF (@genDokladMat=1) OR (@genDokladFin=1)
|
||||
AND Vratka=0
|
||||
AND Blokovano=0
|
||||
AND IDPhIdent2 IS NOT NULL
|
||||
AND DATEDIFF(day, DatPorizeni, GETDATE())<6
|
||||
AND DATEDIFF(day, DatPorizeni, GETDATE())<=@zaPocetDnu
|
||||
GROUP BY JeMaterial
|
||||
OPEN m
|
||||
WHILE (1=1)
|
||||
@@ -216,7 +220,7 @@ IF (@genDokladMat=1) OR (@genDokladFin=1)
|
||||
AND Blokovano=0
|
||||
AND IDPhIdent2 IS NOT NULL
|
||||
AND JeMaterial=@material
|
||||
AND DATEDIFF(day, DatPorizeni, GETDATE())<6
|
||||
AND DATEDIFF(day, DatPorizeni, GETDATE())<=@zaPocetDnu
|
||||
ORDER BY DatPorizeni
|
||||
OPEN c
|
||||
WHILE (1=1)
|
||||
@@ -300,6 +304,10 @@ IF (@genDokladMat=1) OR (@genDokladFin=1)
|
||||
END -- @idZboSklad IS NOT NULL
|
||||
END -- @mnoz>0
|
||||
|
||||
UPDATE dbo._TabVyroba_Objednavky SET DatZpracovani=GETDATE() WHERE ID=@idObj
|
||||
UPDATE dbo._TabVyroba_Objednavky SET PocetPohybuOZ=ISNULL( (SELECT COUNT(ID) FROM dbo.TabPohybyZbozi_EXT WHERE _Vyroba_IDObjednavkaMat=@idObj), 0)
|
||||
WHERE ID=@idObj
|
||||
|
||||
END
|
||||
CLOSE c
|
||||
DEALLOCATE c
|
||||
@@ -339,7 +347,7 @@ WHILE (1=1)
|
||||
SET @mnozVydano = ISNULL( (SELECT SUM(op.Mnozstvi) FROM dbo._TabVyroba_Objednavky_Pol op WITH(NOLOCK) JOIN dbo.TabPohybyZbozi p WITH(NOLOCK) ON (p.ID=op.IDPohybOZ)
|
||||
WHERE op.IDHlava=@idObj AND p.SkutecneDatReal IS NOT NULL), 0)
|
||||
IF (@mnoz=@mnozVydano)
|
||||
UPDATE dbo._TabVyroba_Objednavky SET Splneno=1 WHERE ID=@idObj
|
||||
UPDATE dbo._TabVyroba_Objednavky SET Splneno=1, DatZpracovani=GETDATE() WHERE ID=@idObj
|
||||
|
||||
END
|
||||
CLOSE c
|
||||
|
||||
@@ -19,23 +19,24 @@
|
||||
destructor THeoRTNZapisObjMatThread.Destroy;
|
||||
begin
|
||||
{$IFDEF DEBUG}
|
||||
Write('Ukoncuji thread RTN Zapis objednavka materialu do ExpPr...');
|
||||
Write ('Ukoncuji thread RTN Zapis objednavka materialu do ExpPr...');
|
||||
{$ENDIF}
|
||||
try
|
||||
if (FTimer<>0) then
|
||||
CloseHandle (FTimer);
|
||||
FTermEvent.Free;
|
||||
if (FTimer<>0) then
|
||||
if WaitForSingleObject(FTimer, 0) <> WAIT_FAILED then
|
||||
CloseHandle (FTimer);
|
||||
FTermEvent.Free;
|
||||
finally
|
||||
end;
|
||||
FRunning := false;
|
||||
FMainService := nil;
|
||||
FDataMod := nil;
|
||||
Terminate;
|
||||
FLock.Free;
|
||||
inherited;
|
||||
FRunning := false;
|
||||
FMainService := nil;
|
||||
FDataMod := nil;
|
||||
Terminate;
|
||||
FLock.Free;
|
||||
inherited;
|
||||
{$IFDEF DEBUG}
|
||||
WriteLn('OK');
|
||||
WriteLn ('OK');
|
||||
{$ENDIF}
|
||||
end;
|
||||
end;
|
||||
|
||||
|
||||
@@ -182,8 +183,8 @@
|
||||
begin
|
||||
inProg:= true;
|
||||
|
||||
lSQL:= 'DECLARE @errMsg NVARCHAR(500)=N''''' + CRLF +'IF OBJECT_ID(N''dbo.ep_Vyroba_GenObjednavkuMatDoVyrobyNew'', N''P'') IS NOT NULL' + CRLF
|
||||
+ ' EXEC dbo.ep_Vyroba_GenObjednavkuMatDoVyrobyNew @errMsg OUT' + CRLF + 'SELECT @errMsg AS ErrMsg';
|
||||
lSQL:= 'DECLARE @eMsg NVARCHAR(500)=N''''' + CRLF +'IF OBJECT_ID(N''dbo.ep_Vyroba_GenObjednavkuMatDoVyrobyNew'', N''P'') IS NOT NULL' + CRLF
|
||||
+ ' EXEC dbo.ep_Vyroba_GenObjednavkuMatDoVyrobyNew @zaPocetDnu=5, @errMsg=@eMsg OUT' + CRLF + 'SELECT @eMsg AS ErrMsg';
|
||||
|
||||
lQry.Open(lSQL);
|
||||
if (lQry.RecordCount>0) then
|
||||
|
||||
@@ -44,6 +44,7 @@
|
||||
arrDefs.Add('ep_V03');
|
||||
// arrDefs.Add('');
|
||||
|
||||
// arrDefs.Add('ep_HDCDZApi_ZpracujPrijataData');
|
||||
|
||||
// objednavky pres Gatema SDServer
|
||||
// arrDefs.Add('bp_Gatema_SDGenDokZbo1');
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user