SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF OBJECT_ID('[dbo].[sp_GetFaliujsagBejegyzesek]') IS NOT NULL BEGIN DROP PROCEDURE [dbo].[sp_GetFaliujsagBejegyzesek] END GO -- ============================================= -- Author: Kelemen Attila -- Create date: 2016. 03. 06. -- Description: Felhasználóhoz tartozó faliújságbejegyzések és tanévrendje események lekérdezése -- ============================================= CREATE PROCEDURE [dbo].[sp_GetFaliujsagBejegyzesek] @userID int, @date DateTime AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; select T_FALIUJSAGBEJEGYZES.ID, T_FALIUJSAGBEJEGYZES.C_ERVENYESSEGKEZDETE Erv_kezd, T_FALIUJSAGBEJEGYZES.C_CIM Cim, T_FALIUJSAGBEJEGYZES.C_BEJEGYZES Szoveg, T_FELHASZNALO.C_NYOMTATASINEV Bejegyzo, T_FELHASZNALO.C_PROFILKEP ProfilKep, Statusz.StatuszID Munkakor from T_FALIUJSAGBEJEGYZES inner join T_FELHASZNALO ON T_FALIUJSAGBEJEGYZES.C_BEJEGYZOID = T_FELHASZNALO.ID left join (select C_ALKALMAZOTTID userID, max(T_MUNKAUGYIADATOK.C_MUNKAKORTIPUSA) StatuszID from T_MUNKAUGYIADATOK WHERE T_MUNKAUGYIADATOK.TOROLT='F' Group by C_ALKALMAZOTTID) Statusz on Statusz.userID = T_FELHASZNALO.ID left join T_CIMZETT_FALIUJSAGBEJEGYZES on T_FALIUJSAGBEJEGYZES.ID=T_CIMZETT_FALIUJSAGBEJEGYZES.C_FALIUJSAGBEJEGYZESID WHERE (T_FALIUJSAGBEJEGYZES.C_GLOBALIS='T' OR T_CIMZETT_FALIUJSAGBEJEGYZES.C_CIMZETTID = @userID) AND T_FALIUJSAGBEJEGYZES.C_ERVENYESSEGKEZDETE <= @date AND (T_FALIUJSAGBEJEGYZES.C_ERVENYESSEGVEGE IS NULL OR T_FALIUJSAGBEJEGYZES.C_ERVENYESSEGVEGE >= @date) AND T_FALIUJSAGBEJEGYZES.TOROLT='F' UNION SELECT T_FALIUJSAGBEJEGYZES.ID, T_FALIUJSAGBEJEGYZES.C_ERVENYESSEGKEZDETE Erv_kezd, T_FALIUJSAGBEJEGYZES.C_CIM Cim, T_FALIUJSAGBEJEGYZES.C_BEJEGYZES Szoveg, T_FELHASZNALO.C_NYOMTATASINEV Bejegyzo, T_FELHASZNALO.C_PROFILKEP ProfilKep, Statusz.StatuszID Munkakor FROM T_FALIUJSAGBEJEGYZES inner join T_FELHASZNALO ON T_FALIUJSAGBEJEGYZES.C_BEJEGYZOID = T_FELHASZNALO.ID left join (select C_ALKALMAZOTTID userID, max(T_MUNKAUGYIADATOK.C_MUNKAKORTIPUSA) StatuszID from T_MUNKAUGYIADATOK WHERE T_MUNKAUGYIADATOK.TOROLT='F' Group by C_ALKALMAZOTTID) Statusz on Statusz.userID = T_FELHASZNALO.ID WHERE EXISTS (select 1 from T_TANULOCSOPORT inner join T_OSZTALYCSOPORT_FALIUJSAGBEJE on T_TANULOCSOPORT.C_OSZTALYCSOPORTID = T_OSZTALYCSOPORT_FALIUJSAGBEJE.C_OSZTALYCSOPORTID where T_TANULOCSOPORT.TOROLT ='F' AND T_TANULOCSOPORT.C_TANULOID = @userID AND T_TANULOCSOPORT.C_BELEPESDATUM < GETDATE() AND (T_TANULOCSOPORT.C_KILEPESDATUM IS NULL OR T_TANULOCSOPORT.C_KILEPESDATUM >= GETDATE()) AND T_OSZTALYCSOPORT_FALIUJSAGBEJE.C_FALIUJSAGBEJEGYZESID = T_FALIUJSAGBEJEGYZES.ID ) AND T_FALIUJSAGBEJEGYZES.C_ERVENYESSEGKEZDETE <= @date AND (T_FALIUJSAGBEJEGYZES.C_ERVENYESSEGVEGE IS NULL OR T_FALIUJSAGBEJEGYZES.C_ERVENYESSEGVEGE >= @date) AND T_FALIUJSAGBEJEGYZES.TOROLT='F' ORDER BY Erv_kezd DESC END