USE [Vertragsverwaltung_20160404] GO /****** Object: StoredProcedure [dbo].[sp_get_Aktivitaetliste] Script Date: 02.12.2016 09:08:53 ******/ DROP PROCEDURE [dbo].[sp_get_Aktivitaetliste] GO /****** Object: StoredProcedure [dbo].[sp_get_Aktivitaetliste] Script Date: 02.12.2016 09:08:55 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO --------------------------------------------------------------------------------- -- Stored procedure that will select all rows from the table 'Aktivitaet' -- Returns: @iErrorCode int --------------------------------------------------------------------------------- CREATE PROCEDURE [dbo].[sp_get_Aktivitaetliste] @mitarbeiternr int, @aktivitaetstatusnr int AS SET NOCOUNT ON if @aktivitaetstatusnr < 1 begin SELECT dbo.Aktivitaet.AktivitaetNr, dbo.Aktivitaet.Ereignisnr, dbo.Aktivitaet.AktivitaetStatusNr, dbo.AktivitaetStatus.Bezeichnung, dbo.Aktivitaet.Periodizitaetnr, dbo.Periodizitaet.Bezeichnung AS Periodizitaet, dbo.Vertragselement.Vertragselementnr, dbo.Vertragselement.Bezeichnung AS Vertragselement, dbo.Aktivitaet.Ausgeloest_am, dbo.Aktivitaet.Ereignis, dbo.Aktivitaet.Kostenart, dbo.Aktivitaet.Betrag, dbo.Aktivitaet.Termin, dbo.Aktivitaet.Beschreibung, dbo.Aktivitaet.Bemerkung, dbo.Aktivitaet.Securitylevelnr, dbo.Aktivitaet.Aktiv, dbo.Aktivitaet.Erstellt_am, dbo.Aktivitaet.Mutiert_am, dbo.Aktivitaet.Mutierer, dbo.aktivitaet.kuendigungsfrist FROM dbo.Aktivitaet INNER JOIN dbo.AktivitaetStatus ON dbo.Aktivitaet.AktivitaetStatusNr = dbo.AktivitaetStatus.AktivitaetStatusNr INNER JOIN dbo.Periodizitaet ON dbo.Aktivitaet.Periodizitaetnr = dbo.Periodizitaet.PeriodizitaetNr INNER JOIN dbo.Vertragsereignis ON dbo.Aktivitaet.Ereignisnr = dbo.Vertragsereignis.EreignisNr INNER JOIN dbo.Vertragselement ON dbo.Vertragsereignis.Vertragselementnr = dbo.Vertragselement.Vertragselementnr where dbo.aktivitaet.SecurityLevelnrin (select SecurityLevelNr from dbo.Get_SecurityLevelTab(@mitarbeiternr)) ORDER BY termin Desc end else begin SELECT dbo.Aktivitaet.AktivitaetNr, dbo.Aktivitaet.Ereignisnr, dbo.Aktivitaet.AktivitaetStatusNr, dbo.AktivitaetStatus.Bezeichnung, dbo.Aktivitaet.Periodizitaetnr, dbo.Periodizitaet.Bezeichnung AS Periodizitaet, dbo.Vertragselement.Vertragselementnr, dbo.Vertragselement.Bezeichnung AS Vertragselement, dbo.Aktivitaet.Ausgeloest_am, dbo.Aktivitaet.Ereignis, dbo.Aktivitaet.Kostenart, dbo.Aktivitaet.Betrag, dbo.Aktivitaet.Termin, dbo.Aktivitaet.Beschreibung, dbo.Aktivitaet.Bemerkung, dbo.Aktivitaet.Securitylevelnr, dbo.Aktivitaet.Aktiv, dbo.Aktivitaet.Erstellt_am, dbo.Aktivitaet.Mutiert_am, dbo.Aktivitaet.Mutierer, dbo.aktivitaet.kuendigungsfrist FROM dbo.Aktivitaet INNER JOIN dbo.AktivitaetStatus ON dbo.Aktivitaet.AktivitaetStatusNr = dbo.AktivitaetStatus.AktivitaetStatusNr INNER JOIN dbo.Periodizitaet ON dbo.Aktivitaet.Periodizitaetnr = dbo.Periodizitaet.PeriodizitaetNr INNER JOIN dbo.Vertragsereignis ON dbo.Aktivitaet.Ereignisnr = dbo.Vertragsereignis.EreignisNr INNER JOIN dbo.Vertragselement ON dbo.Vertragsereignis.Vertragselementnr = dbo.Vertragselement.Vertragselementnr where dbo.aktivitaet.SecurityLevelnrin (select SecurityLevelNr from dbo.Get_SecurityLevelTab(@mitarbeiternr)) and dbo.aktivitaet.aktivitaetstatusnr=@aktivitaetstatusnr union all SELECT TOP (100) PERCENT dbo.Aktivitaet.AktivitaetNr, dbo.Aktivitaet.Ereignisnr, dbo.Aktivitaet.AktivitaetStatusNr, dbo.AktivitaetStatus.Bezeichnung, dbo.Aktivitaet.Periodizitaetnr, dbo.Periodizitaet.Bezeichnung AS Periodizitaet, Vertragselement.Vertragselementnr, Vertragselement.Bezeichnung AS Vertragselement, dbo.Aktivitaet.Ausgeloest_am, dbo.Aktivitaet.Ereignis, dbo.Aktivitaet.Kostenart, dbo.Aktivitaet.Betrag, dbo.Aktivitaet.Termin, dbo.Aktivitaet.Beschreibung, dbo.Aktivitaet.Bemerkung, dbo.Aktivitaet.Securitylevelnr, dbo.Aktivitaet.Aktiv, dbo.Aktivitaet.Erstellt_am, dbo.Aktivitaet.Mutiert_am, dbo.Aktivitaet.Mutierer, dbo.Aktivitaet.Kuendigungsfrist FROM dbo.Vertragselement AS Vertragselement INNER JOIN dbo.Aktivitaet INNER JOIN dbo.AktivitaetStatus ON dbo.Aktivitaet.AktivitaetStatusNr = dbo.AktivitaetStatus.AktivitaetStatusNr INNER JOIN dbo.Periodizitaet ON dbo.Aktivitaet.Periodizitaetnr = dbo.Periodizitaet.PeriodizitaetNr ON Vertragselement.Vertragselementnr = dbo.Aktivitaet.Vertragselementnr where dbo.aktivitaet.SecurityLevelnrin (select SecurityLevelNr from dbo.Get_SecurityLevelTab(@mitarbeiternr)) and dbo.aktivitaet.aktivitaetstatusnr=@aktivitaetstatusnr ORDER BY termin Desc end GO