You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
68 lines
3.7 KiB
68 lines
3.7 KiB
USE [Vertragsverwaltung_20160404]
|
|
GO
|
|
/****** Object: StoredProcedure [dbo].[sp_lc_get_kopien] Script Date: 02.12.2016 09:08:53 ******/
|
|
DROP PROCEDURE [dbo].[sp_lc_get_kopien]
|
|
GO
|
|
/****** Object: StoredProcedure [dbo].[sp_lc_get_kopien] Script Date: 02.12.2016 09:08:55 ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER ON
|
|
GO
|
|
|
|
-- =============================================
|
|
-- Author: <Author,,Name>
|
|
-- Create date: <Create Date,,>
|
|
-- Description: <Description,,>
|
|
-- =============================================
|
|
CREATE PROCEDURE [dbo].[sp_lc_get_kopien]
|
|
@original INT,
|
|
@fnkt INT = 0,
|
|
@result INT=0 output
|
|
AS
|
|
BEGIN
|
|
DECLARE @t1 TABLE(copykey INT, parentnr int, bezeichnung VARCHAR(1024))
|
|
DECLARE @bez VARCHAR(255)
|
|
|
|
SELECT @bez=bezeichnung FROM dbo.LC_Produkt WHERE LC_ProduktNr=@original
|
|
INSERT @t1 SELECT lc_produkt_copynr, lc_produkt_parentnr, @bez FROM dbo.LC_Produkt_Copy WHERE aktiv=1 AND lc_produktnr=@original
|
|
|
|
declare @lcnr int
|
|
DECLARE @pnr INT
|
|
DECLARE @p1 INT
|
|
DECLARE @b1 VARCHAR(255)
|
|
DECLARE @i int
|
|
DECLARE xc CURSOR FOR
|
|
SELECT * FROM @t1
|
|
OPEN xc
|
|
FETCH NEXT FROM xc into @lcnr, @pnr, @bez
|
|
WHILE @@fetch_status=0 BEGIN
|
|
SET @i=1
|
|
SET @p1=@pnr
|
|
WHILE @i=1 BEGIN
|
|
SELECT @b1=bezeichnung,@p1=lc_produktnr_parent FROM lc_produkt WHERE lc_produktnr=@p1
|
|
IF @@rowcount=0 BEGIN
|
|
SET @i=0
|
|
END ELSE BEGIN
|
|
SET @bez=@b1+' / ' + @bez
|
|
END
|
|
END
|
|
UPDATE @t1 SET bezeichnung=@bez WHERE copykey=@lcnr
|
|
|
|
|
|
FETCH NEXT FROM xc into @lcnr, @pnr, @bez
|
|
END
|
|
CLOSE xc
|
|
DEALLOCATE xc
|
|
|
|
IF @fnkt=1 BEGIN
|
|
SELECT @result=COUNT(*) FROM @t1
|
|
END ELSE begin
|
|
SELECT copykey, parentnr, bezeichnung as Element FROM @t1
|
|
END
|
|
|
|
|
|
END
|
|
|
|
|
|
GO
|