📄 Tam SQL Kodu (Referans)
Analiz eklerken buradan kod parçalarını kopyalayabilirsiniz
CREATE PROCEDURE [dbo].[SP_KOD_GUNCELLE]
@FilterCodeList NVARCHAR(2000), -- Virgülle ayrilmis ESKI kod listesi
@NewCodeList NVARCHAR(2000) -- Virgülle ayrilmis YENI kod listesi
AS
BEGIN
SET NOCOUNT ON;
DECLARE @TempTable TABLE (OldCode NVARCHAR(255), NewCode NVARCHAR(255));
DECLARE @OldCode NVARCHAR(255);
DECLARE @NewCode NVARCHAR(255);
DECLARE @Delimiter CHAR(1) = ',';
DECLARE @StartOld INT = 1, @EndOld INT;
DECLARE @StartNew INT = 1, @EndNew INT;
SET @FilterCodeList = @FilterCodeList + @Delimiter;
SET @NewCodeList = @NewCodeList + @Delimiter;
SET @EndOld = CHARINDEX(@Delimiter, @FilterCodeList, @StartOld);
SET @EndNew = CHARINDEX(@Delimiter, @NewCodeList, @StartNew);
-- Eski ve yeni kodlari eslestirerek tabloya ekleme
WHILE @EndOld > 0 AND @EndNew > 0
BEGIN
SET @OldCode = LTRIM(RTRIM(SUBSTRING(@FilterCodeList, @StartOld, @EndOld - @StartOld)));
SET @NewCode = LTRIM(RTRIM(SUBSTRING(@NewCodeList, @StartNew, @EndNew - @StartNew)));
IF @OldCode <> '' AND @NewCode <> ''
BEGIN
INSERT INTO @TempTable (OldCode, NewCode) VALUES (@OldCode, @NewCode);
END
SET @StartOld = @EndOld + 1;
SET @StartNew = @EndNew + 1;
SET @EndOld = CHARINDEX(@Delimiter, @FilterCodeList, @StartOld);
SET @EndNew = CHARINDEX(@Delimiter, @NewCodeList, @StartNew);
END;
-- 1) PRODUCERCODE'ü güncelleme (önce bos olanlari güncelleyelim)
UPDATE LG_011_ITEMS
SET PRODUCERCODE = T.OldCode
FROM LG_011_ITEMS I
INNER JOIN @TempTable T ON I.CODE = T.OldCode
WHERE (I.PRODUCERCODE IS NULL OR I.PRODUCERCODE = '');
-- 2) PRODUCERCODE'ü ekleme (dolu olanlar için)
UPDATE LG_011_ITEMS
SET PRODUCERCODE = I.PRODUCERCODE + '/' + T.OldCode
FROM LG_011_ITEMS I
INNER JOIN @TempTable T ON I.CODE = T.OldCode
WHERE I.PRODUCERCODE IS NOT NULL AND I.PRODUCERCODE <> '';
-- 3) CODE'u yeni kod ile güncelleme
UPDATE LG_011_ITEMS
SET CODE = T.NewCode
FROM LG_011_ITEMS I
INNER JOIN @TempTable T ON I.CODE = T.OldCode;
END;
➕ Yeni Kod Analizi Ekle
📋 Mevcut Analizler (0)
Henüz kod analizi eklenmemiş.
Yukarıdaki formu kullanarak ilk analizi ekleyin.