Anlage des Repos
This commit is contained in:
@@ -0,0 +1,166 @@
|
||||
USE [CWLDATEN_MEDP]
|
||||
GO
|
||||
|
||||
/****** Object: StoredProcedure [dbo].[UPDATE_ARTICLE_PSEUDO_SERIALNUMBER] Script Date: 14.06.2023 09:05:23 ******/
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
-- UPDATE_ARTICLE_PSEUDO_SERIALNUMBER
|
||||
-- =================================================================
|
||||
-- Ersetzt die Pseudo-Seriennummer durch die konkrete Seriennummer
|
||||
-- Betroffen sind neben der Artikeltabelle (t024) folgende Tabellen
|
||||
-- - Artikelmatch (t027)
|
||||
-- - Statistik (t039)
|
||||
-- - Lagerbuchungsjournal (t083)
|
||||
--
|
||||
-- Returns: BOOLEAN
|
||||
-- =================================================================
|
||||
-- Copyright (c) 2023 by Digital Data GmbH
|
||||
--
|
||||
-- Digital Data GmbH • Ludwig-Rinn-Strasse 16 • D-35452 Heuchelheim
|
||||
-- Tel.: 0641/202360 • E-Mail: info-flow@digitaldata.works
|
||||
-- =================================================================
|
||||
-- Creation Date / Author: 31.05.2023 / JJ / MP
|
||||
-- Version Date / Editor: 01.06.2023 / JJ / MP
|
||||
-- Version Number: 4.0.0.0
|
||||
-- =================================================================
|
||||
-- History:
|
||||
-- 14.06.2023 / JJ / MP - Seriennummern in t027, t039, t083 updaten
|
||||
-- 31.05.2023 / JJ / MP - Erste Version
|
||||
CREATE OR ALTER PROCEDURE [dbo].[UPDATE_ARTICLE_PSEUDO_SERIALNUMBER]
|
||||
-- Add the parameters for the stored procedure here
|
||||
@AUFTRAGSNR NVARCHAR(100),
|
||||
@COMPUTERNAME NVARCHAR(100),
|
||||
@STATUS NVARCHAR(20),
|
||||
@MESOCOMP NVARCHAR(4),
|
||||
@MESOYEAR NVARCHAR(4)
|
||||
AS
|
||||
BEGIN
|
||||
BEGIN TRY
|
||||
BEGIN TRANSACTION
|
||||
DECLARE @ARTIKELNR NVARCHAR(30)
|
||||
DECLARE @PSEUDOSN NVARCHAR(255)
|
||||
DECLARE @REALSN NVARCHAR(255)
|
||||
DECLARE @TEMPSN NVARCHAR(255)
|
||||
--PRINT 'END DECLARE'
|
||||
|
||||
DECLARE tableCursor CURSOR FOR
|
||||
SELECT [ArtikelNr], [PseudoSN], [RealSN]
|
||||
FROM TBDD_PACKTISCH_HISTORY
|
||||
WHERE
|
||||
AuftragsNr = @AUFTRAGSNR AND
|
||||
Rechnername = @COMPUTERNAME AND
|
||||
mesocomp = @MESOCOMP AND
|
||||
mesoyear = @MESOYEAR AND
|
||||
RealSN IS NOT NULL AND
|
||||
[Status] = @STATUS
|
||||
--PRINT 'END DECLARE CURSOR'
|
||||
|
||||
OPEN tableCursor
|
||||
FETCH next FROM tableCursor INTO @ARTIKELNR, @PSEUDOSN, @REALSN
|
||||
|
||||
--PRINT 'END OPEN CURSOR'
|
||||
|
||||
WHILE @@fetch_status=0
|
||||
BEGIN
|
||||
IF @STATUS = 'Replaced'
|
||||
BEGIN
|
||||
SET @TEMPSN = @PSEUDOSN
|
||||
SET @PSEUDOSN = @REALSN
|
||||
SET @REALSN = @TEMPSN
|
||||
END
|
||||
|
||||
--PRINT 'PSEUDOSN' + @PSEUDOSN
|
||||
--PRINT 'REALSN' + @REALSN
|
||||
|
||||
|
||||
|
||||
IF EXISTS(SELECT 1 FROM T024 WHERE c011 = @ARTIKELNR AND C068 = @PSEUDOSN AND MESOCOMP = @MESOCOMP AND MESOYEAR = @MESOYEAR)
|
||||
BEGIN
|
||||
--PRINT 'UPDATE t024'
|
||||
UPDATE T024 SET C068 = @REALSN WHERE c011 = @ARTIKELNR AND C068 = @PSEUDOSN AND MESOCOMP = @MESOCOMP AND MESOYEAR = @MESOYEAR
|
||||
--PRINT 'END UPDATE t024'
|
||||
END
|
||||
|
||||
IF EXISTS(SELECT 1 FROM T027 WHERE c011 = @ARTIKELNR AND C068 = @PSEUDOSN AND MESOCOMP = @MESOCOMP AND MESOYEAR = @MESOYEAR)
|
||||
BEGIN
|
||||
--PRINT 'UPDATE t027'
|
||||
UPDATE T027 SET C068 = @REALSN, C200 = @REALSN WHERE c011 = @ARTIKELNR AND C068 = @PSEUDOSN AND MESOCOMP = @MESOCOMP AND MESOYEAR = @MESOYEAR
|
||||
--PRINT 'END UPDATE t027'
|
||||
END
|
||||
|
||||
IF EXISTS(SELECT 1 FROM T039 WHERE c048 = @ARTIKELNR AND C019 = @PSEUDOSN AND MESOCOMP = @MESOCOMP AND MESOYEAR = @MESOYEAR)
|
||||
BEGIN
|
||||
--PRINT 'UPDATE t039'
|
||||
UPDATE T039 SET C019 = @REALSN WHERE c048 = @ARTIKELNR AND C019 = @PSEUDOSN AND MESOCOMP = @MESOCOMP AND MESOYEAR = @MESOYEAR
|
||||
--PRINT 'END UPDATE t039'
|
||||
END
|
||||
|
||||
IF EXISTS(SELECT 1 FROM T083 WHERE c036 = @ARTIKELNR AND C018 = @PSEUDOSN AND MESOCOMP = @MESOCOMP AND MESOYEAR = @MESOYEAR)
|
||||
BEGIN
|
||||
--PRINT 'UPDATE t083'
|
||||
UPDATE T083 SET C018 = @REALSN WHERE c036 = @ARTIKELNR AND C018 = @PSEUDOSN AND MESOCOMP = @MESOCOMP AND MESOYEAR = @MESOYEAR
|
||||
--PRINT 'END UPDATE t083'
|
||||
END
|
||||
|
||||
-- move to next record
|
||||
FETCH next FROM tableCursor INTO @ARTIKELNR, @PSEUDOSN, @REALSN
|
||||
END
|
||||
|
||||
CLOSE tableCursor
|
||||
DEALLOCATE tableCursor
|
||||
|
||||
IF @STATUS = 'Scanned'
|
||||
BEGIN
|
||||
--PRINT 'UPDATE TBDD_PACKTISCH_HISTORY'
|
||||
UPDATE TBDD_PACKTISCH_HISTORY
|
||||
SET [Status] = 'Replaced', [GeaendertWann] = GETDATE()
|
||||
WHERE
|
||||
AuftragsNr = @AUFTRAGSNR AND
|
||||
Rechnername = @COMPUTERNAME AND
|
||||
[Status] = 'Scanned' AND
|
||||
mesocomp = @MESOCOMP AND
|
||||
mesoyear = @MESOYEAR
|
||||
--PRINT 'END UPDATE TBDD_PACKTISCH_HISTORY'
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
--PRINT 'UPDATE TBDD_PACKTISCH_HISTORY'
|
||||
UPDATE TBDD_PACKTISCH_HISTORY
|
||||
SET [Status] = 'Scanned', [GeaendertWann] = GETDATE()
|
||||
WHERE
|
||||
AuftragsNr = @AUFTRAGSNR AND
|
||||
Rechnername = @COMPUTERNAME AND
|
||||
[Status] = 'Replaced' AND
|
||||
mesocomp = @MESOCOMP AND
|
||||
mesoyear = @MESOYEAR
|
||||
--PRINT 'END UPDATE TBDD_PACKTISCH_HISTORY'
|
||||
END
|
||||
|
||||
COMMIT TRANSACTION
|
||||
END TRY
|
||||
|
||||
BEGIN CATCH
|
||||
CLOSE tableCursor
|
||||
DEALLOCATE tableCursor
|
||||
|
||||
ROLLBACK TRANSACTION
|
||||
|
||||
--PRINT 'UPDATE TBDD_PACKTISCH_HISTORY ERROR'
|
||||
UPDATE TBDD_PACKTISCH_HISTORY
|
||||
SET [Status] = 'Error', [GeaendertWann] = GETDATE()
|
||||
WHERE
|
||||
AuftragsNr = @AUFTRAGSNR AND
|
||||
Rechnername = @COMPUTERNAME AND
|
||||
[Status] = @STATUS AND
|
||||
mesocomp = @MESOCOMP AND
|
||||
mesoyear = @MESOYEAR
|
||||
--PRINT 'END UPDATE TBDD_PACKTISCH_HISTORY ERROR'
|
||||
END CATCH
|
||||
END
|
||||
GO
|
||||
|
||||
|
||||
Reference in New Issue
Block a user