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.
83 lines
13 KiB
83 lines
13 KiB
USE [Vertragsverwaltung_20160404]
|
|
GO
|
|
/****** Object: StoredProcedure [dbo].[sp_rpt_Applikationsliste_Team] Script Date: 02.12.2016 09:08:53 ******/
|
|
DROP PROCEDURE [dbo].[sp_rpt_Applikationsliste_Team]
|
|
GO
|
|
/****** Object: StoredProcedure [dbo].[sp_rpt_Applikationsliste_Team] 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_Applikationsliste_Team]
|
|
@sqlwhere varchar(1024)
|
|
AS
|
|
BEGIN
|
|
declare @xsql varchar(2024)
|
|
--set @xsql='SELECT DISTINCT'
|
|
--set @xsql=@xsql+' dbo.Applikation.Bezeichnung AS Applikation, dbo.Person.Name, dbo.Person.Vorname, SUBSTRING(dbo.Person.Telefon,'
|
|
--set @xsql=@xsql+' LEN(dbo.Person.Telefon) - 4, 5) AS telefon, dbo.Person.EMail, dbo.Kontakttyp.Bezeichnung AS Kontakttyp, dbo.Kontakttyp.KontakttypNr,'
|
|
--set @xsql=@xsql+' dbo.ApplikationKategorie.Bezeichnung AS Kategorie, dbo.GremiumGruppierung.Gruppierungsbegriff AS Verantwortung,'
|
|
--set @xsql=@xsql+' GremiumGruppierung_1.Gruppierungsbegriff AS Marktbereich, dbo.GremiumBereich.Bereich, GremiumBereich_1.Kurzbezeichnung AS RFCBoard'
|
|
--set @xsql=@xsql+' FROM dbo.ApplikationKontakt INNER JOIN'
|
|
--set @xsql=@xsql+' dbo.Kontakttyp ON dbo.ApplikationKontakt.KontakttypNr = dbo.Kontakttyp.KontakttypNr INNER JOIN'
|
|
--set @xsql=@xsql+' dbo.Person ON dbo.ApplikationKontakt.PersonNr = dbo.Person.PersonNr INNER JOIN'
|
|
--set @xsql=@xsql+' dbo.Applikation ON dbo.ApplikationKontakt.Applikationnr = dbo.Applikation.ApplikationNr INNER JOIN'
|
|
--set @xsql=@xsql+' dbo.ApplikationKategorie ON dbo.Applikation.ApplikationKategorieNr = dbo.ApplikationKategorie.ApplikationKategorieNr INNER JOIN'
|
|
--set @xsql=@xsql+' dbo.GremiumGruppierung ON dbo.Applikation.ApplikationVerantwortungNr = dbo.GremiumGruppierung.GremiumGruppierungNr INNER JOIN'
|
|
--set @xsql=@xsql+' dbo.GremiumGruppierung GremiumGruppierung_1 ON dbo.Applikation.Marktbereichnr = GremiumGruppierung_1.GremiumGruppierungNr INNER JOIN'
|
|
--set @xsql=@xsql+' dbo.GremiumBereich GremiumBereich_1 ON dbo.Applikation.RfcBoardNr = GremiumBereich_1.GremiumBereichNr LEFT OUTER JOIN'
|
|
--set @xsql=@xsql+' dbo.GremiumBereich ON dbo.Applikation.ApplikationTeamnr = dbo.GremiumBereich.GremiumBereichNr'
|
|
--set @xsql=@xsql+' WHERE (dbo.Applikation.Aktiv = 1) AND (dbo.Person.Aktiv = 1) AND (dbo.ApplikationKontakt.Aktiv = 1) AND (dbo.Kontakttyp.KontakttypNr = 1 OR'
|
|
--set @xsql=@xsql+' dbo.Kontakttyp.KontakttypNr = 2) AND (dbo.GremiumGruppierung.GremiumNr = 3) AND (GremiumGruppierung_1.GremiumNr = 4) AND'
|
|
--set @xsql=@xsql+' (dbo.GremiumBereich.GremiumGruppierungNr = 3) AND (GremiumBereich_1.GremiumGruppierungNr = 1)'
|
|
|
|
set @xsql='SELECT DISTINCT'
|
|
set @xsql=@xsql+' dbo.Applikation.Bezeichnung AS Applikation, dbo.Person.Name, dbo.Person.Vorname, SUBSTRING(dbo.Person.Telefon,'
|
|
set @xsql=@xsql+' LEN(dbo.Person.Telefon) - 4, 5) AS telefon, dbo.Person.EMail, dbo.Kontakttyp.Bezeichnung AS Kontakttyp, dbo.Kontakttyp.KontakttypNr,'
|
|
set @xsql=@xsql+' dbo.ApplikationKategorie.Bezeichnung AS Kategorie, dbo.GremiumGruppierung.Gruppierungsbegriff AS Verantwortung,'
|
|
set @xsql=@xsql+' dbo.GremiumBereich.Bereich, GremiumBereich_1.Kurzbezeichnung AS RFCBoard'
|
|
set @xsql=@xsql+' FROM dbo.ApplikationKontakt INNER JOIN'
|
|
set @xsql=@xsql+' dbo.Kontakttyp ON dbo.ApplikationKontakt.KontakttypNr = dbo.Kontakttyp.KontakttypNr INNER JOIN'
|
|
set @xsql=@xsql+' dbo.Person ON dbo.ApplikationKontakt.PersonNr = dbo.Person.PersonNr INNER JOIN'
|
|
set @xsql=@xsql+' dbo.Applikation ON dbo.ApplikationKontakt.Applikationnr = dbo.Applikation.ApplikationNr INNER JOIN'
|
|
set @xsql=@xsql+' dbo.ApplikationKategorie ON dbo.Applikation.ApplikationKategorieNr = dbo.ApplikationKategorie.ApplikationKategorieNr INNER JOIN'
|
|
set @xsql=@xsql+' dbo.GremiumGruppierung ON dbo.Applikation.ApplikationVerantwortungNr = dbo.GremiumGruppierung.GremiumGruppierungNr INNER JOIN'
|
|
set @xsql=@xsql+' dbo.GremiumBereich GremiumBereich_1 ON dbo.Applikation.RfcBoardNr = GremiumBereich_1.GremiumBereichNr LEFT OUTER JOIN'
|
|
set @xsql=@xsql+' dbo.GremiumBereich ON dbo.Applikation.ApplikationTeamnr = dbo.GremiumBereich.GremiumBereichNr'
|
|
set @xsql=@xsql+' WHERE (dbo.Applikation.Aktiv = 1) AND (dbo.Person.Aktiv = 1) AND (dbo.ApplikationKontakt.Aktiv = 1) AND (dbo.Kontakttyp.KontakttypNr = 1 OR'
|
|
set @xsql=@xsql+' dbo.Kontakttyp.KontakttypNr = 2) AND (dbo.GremiumGruppierung.GremiumNr = 3) AND '
|
|
set @xsql=@xsql+' (dbo.GremiumBereich.GremiumGruppierungNr = 3) AND (GremiumBereich_1.GremiumGruppierungNr = 1)'
|
|
|
|
set @xsql='SELECT DISTINCT '
|
|
set @xsql=@xsql+' dbo.Applikation.Bezeichnung AS Applikation, dbo.Person.Name, dbo.Person.Vorname, SUBSTRING(dbo.Person.Telefon, LEN(dbo.Person.Telefon) - 4, 5) AS telefon, '
|
|
set @xsql=@xsql+' dbo.Person.EMail, dbo.Kontakttyp.Bezeichnung AS Kontakttyp, dbo.Kontakttyp.KontakttypNr, dbo.ApplikationKategorie.Bezeichnung AS Kategorie, '
|
|
set @xsql=@xsql+' dbo.GremiumBereich.Bereich AS Team, GremiumBereich_1.Kurzbezeichnung AS RFCBoard'
|
|
set @xsql=@xsql+' FROM dbo.ApplikationKontakt INNER JOIN'
|
|
set @xsql=@xsql+' dbo.Kontakttyp ON dbo.ApplikationKontakt.KontakttypNr = dbo.Kontakttyp.KontakttypNr INNER JOIN'
|
|
set @xsql=@xsql+' dbo.Person ON dbo.ApplikationKontakt.PersonNr = dbo.Person.PersonNr INNER JOIN'
|
|
set @xsql=@xsql+' dbo.Applikation ON dbo.ApplikationKontakt.Applikationnr = dbo.Applikation.ApplikationNr INNER JOIN'
|
|
set @xsql=@xsql+' dbo.ApplikationKategorie ON dbo.Applikation.ApplikationKategorieNr = dbo.ApplikationKategorie.ApplikationKategorieNr INNER JOIN'
|
|
set @xsql=@xsql+' dbo.GremiumBereich AS GremiumBereich_1 ON dbo.Applikation.RfcBoardNr = GremiumBereich_1.GremiumBereichNr LEFT OUTER JOIN'
|
|
set @xsql=@xsql+' dbo.GremiumBereich ON dbo.Applikation.ApplikationTeamnr = dbo.GremiumBereich.GremiumBereichNr'
|
|
set @xsql=@xsql+' WHERE (dbo.Applikation.Aktiv = 1) AND (dbo.Person.Aktiv = 1) AND (dbo.ApplikationKontakt.Aktiv = 1) AND (dbo.Kontakttyp.KontakttypNr = 1 OR'
|
|
set @xsql=@xsql+' dbo.Kontakttyp.KontakttypNr = 2) AND (dbo.GremiumBereich.GremiumGruppierungNr = 3) AND (GremiumBereich_1.GremiumGruppierungNr = 1)'
|
|
|
|
|
|
|
|
|
|
if @sqlwhere <> '' begin
|
|
set @xsql = @xsql + ' and (' + @sqlwhere + ')'
|
|
end
|
|
set @xsql=@xsql+' ORDER BY Applikation, dbo.Kontakttyp.KontakttypNr'
|
|
|
|
exec(@xsql)
|
|
|
|
end
|
|
GO
|