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.
128 lines
9.0 KiB
128 lines
9.0 KiB
USE [Vertragsverwaltung_20160404]
|
|
GO
|
|
/****** Object: StoredProcedure [dbo].[sp_rpt_ITKoordinatoren] Script Date: 02.12.2016 09:08:53 ******/
|
|
DROP PROCEDURE [dbo].[sp_rpt_ITKoordinatoren]
|
|
GO
|
|
/****** Object: StoredProcedure [dbo].[sp_rpt_ITKoordinatoren] Script Date: 02.12.2016 09:08:55 ******/
|
|
SET ANSI_NULLS ON
|
|
GO
|
|
SET QUOTED_IDENTIFIER OFF
|
|
GO
|
|
|
|
-- =============================================
|
|
-- Author: <Author,,Name>
|
|
-- Create date: <Create Date,,>
|
|
-- Description: <Description,,>
|
|
-- =============================================
|
|
CREATE PROCEDURE [dbo].[sp_rpt_ITKoordinatoren]
|
|
@sqlwhere varchar(1024)
|
|
AS
|
|
BEGIN
|
|
CREATE TABLE #tmpd(
|
|
[Reihenfolge] [int] null,
|
|
[Gruppierungsbegriff] [varchar](50) NULL,
|
|
[Bereich] [varchar](50) NULL,
|
|
[Sortierung] [int] NULL,
|
|
[ITK] [varchar](50) NULL,
|
|
[ITK_Tel] [varchar](50) NULL,
|
|
[ITK_Mail] [varchar](50) NULL,
|
|
[ITK1] [varchar](50) NULL,
|
|
[ITK1_Tel] [varchar](50) NULL,
|
|
[ITK1_Mail] [varchar](50) NULL,
|
|
[ITK2] [varchar](50) NULL,
|
|
[ITK2_Tel] [varchar](50) NULL,
|
|
[ITK2_Mail] [varchar](50) NULL
|
|
) ON [DEFAULT]
|
|
SET NOCOUNT ON;
|
|
|
|
declare @gnr int
|
|
declare @gbeg varchar(50)
|
|
declare @r int
|
|
declare @bnr int
|
|
declare @bbe varchar (50)
|
|
declare @bs int
|
|
declare @bcnt int
|
|
declare @itk varchar(50)
|
|
declare @itk_tel varchar(50)
|
|
declare @itk_mail varchar(50)
|
|
declare @itk1 varchar(50)
|
|
declare @itk1_tel varchar(50)
|
|
declare @itk1_mail varchar(50)
|
|
declare @itk2 varchar(50)
|
|
declare @itk2_tel varchar(50)
|
|
declare @itk2_mail varchar(50)
|
|
|
|
|
|
declare xc cursor for
|
|
SELECT dbo.GremiumGruppierung.GremiumGruppierungnr ,dbo.GremiumGruppierung.Gruppierungsbegriff, dbo.GremiumGruppierung.Reihenfolge
|
|
FROM dbo.Gremium INNER JOIN
|
|
dbo.GremiumGruppierung ON dbo.Gremium.GremiumNr = dbo.GremiumGruppierung.GremiumNr
|
|
WHERE (dbo.GremiumGruppierung.Aktiv = 1) AND (dbo.Gremium.Aktiv = 1) AND (dbo.Gremium.GremiumNr = 2)
|
|
ORDER BY dbo.GremiumGruppierung.Reihenfolge
|
|
open xc
|
|
fetch next from xc into @gnr, @gbeg, @r
|
|
while @@fetch_status=0 begin
|
|
|
|
set @bcnt=0
|
|
declare x1 cursor for
|
|
select gremiumbereichnr, bereich, sortierung from gremiumbereich where gremiumgruppierungnr=@gnr and aktiv=1
|
|
open x1
|
|
fetch next from x1 into @bnr, @bbe, @bs
|
|
while @@fetch_status=0 begin
|
|
set @bcnt=@bcnt+1
|
|
--IT-Koordinator
|
|
SELECT @itk=dbo.Person.Name + ' ' + dbo.Person.Vorname, @itk_tel=dbo.Person.Telefon,@itk_mail=dbo.Person.email
|
|
FROM dbo.GremiumPerson INNER JOIN dbo.Person ON dbo.GremiumPerson.PersonNr = dbo.Person.PersonNr
|
|
WHERE dbo.GremiumPerson.GremiumBereichNr = @bnr AND dbo.GremiumPerson.RolleNr = 9 and dbo.gremiumperson.aktiv=1
|
|
if @@rowcount=0 begin
|
|
set @itk=''
|
|
set @itk_tel=''
|
|
set @itk_mail=''
|
|
end
|
|
--STV1
|
|
SELECT @itk1=dbo.Person.Name + ' ' + dbo.Person.Vorname, @itk1_tel=dbo.Person.Telefon,@itk1_mail=dbo.Person.email
|
|
FROM dbo.GremiumPerson INNER JOIN dbo.Person ON dbo.GremiumPerson.PersonNr = dbo.Person.PersonNr
|
|
WHERE dbo.GremiumPerson.GremiumBereichNr = @bnr AND dbo.GremiumPerson.RolleNr = 10 and dbo.gremiumperson.aktiv=1
|
|
if @@rowcount=0 begin
|
|
set @itk1=''
|
|
set @itk1_tel=''
|
|
set @itk1_mail=''
|
|
end
|
|
|
|
--STV2
|
|
SELECT @itk2=dbo.Person.Name + ' ' + dbo.Person.Vorname, @itk2_tel=dbo.Person.Telefon,@itk2_mail=dbo.Person.email
|
|
FROM dbo.GremiumPerson INNER JOIN dbo.Person ON dbo.GremiumPerson.PersonNr = dbo.Person.PersonNr
|
|
WHERE dbo.GremiumPerson.GremiumBereichNr = @bnr AND dbo.GremiumPerson.RolleNr = 11 and dbo.gremiumperson.aktiv=1
|
|
if @@rowcount=0 begin
|
|
set @itk2=''
|
|
set @itk2_tel=''
|
|
set @itk2_mail=''
|
|
end
|
|
|
|
insert #tmpd(reihenfolge, gruppierungsbegriff, bereich, sortierung,itk, itk_tel, itk_mail, itk1, itk1_tel, itk1_mail, itk2, itk2_tel, itk2_mail)
|
|
values (@r, @gbeg, @bbe, @bs, @itk, @itk_tel, @itk_mail, @itk1, @itk1_tel, @itk1_mail, @itk2, @itk2_tel, @itk2_mail)
|
|
|
|
fetch next from x1 into @bnr, @bbe, @bs
|
|
end
|
|
close x1
|
|
deallocate x1
|
|
if @bcnt=0 begin
|
|
insert #tmpd(reihenfolge, gruppierungsbegriff, bereich, sortierung,itk, itk_tel, itk_mail, itk1, itk1_tel, itk1_mail, itk2, itk2_tel, itk2_mail)
|
|
values (@r, @gbeg, '',0,'','','','','','','','','')
|
|
end
|
|
|
|
|
|
fetch next from xc into @gnr, @gbeg, @r
|
|
end
|
|
close xc
|
|
deallocate xc
|
|
|
|
|
|
select * from #tmpd order by reihenfolge, sortierung
|
|
drop table #tmpd
|
|
END
|
|
|
|
|
|
|
|
GO
|