DROP PROCEDURE IF EXISTS uspGetKiirtHelyettesitesek GO CREATE PROCEDURE uspGetKiirtHelyettesitesek @pIntezmenyId int ,@pTanevId int ,@pTanarId int ,@pDarab int AS BEGIN SET NOCOUNT ON; DECLARE @pIdoszakKezdete datetime ,@pIdoszakVege datetime SELECT @pIdoszakKezdete = (CASE WHEN tanev.C_AKTIV = 'T' THEN GETDATE() ELSE tanev.C_KEZDONAP END) ,@pIdoszakVege = tanev.C_UTOLSOTANITASINAP FROM T_TANEV_OSSZES tanev WHERE tanev.TOROLT = 'F' AND tanev.ID = @pTanevId AND tanev.C_INTEZMENYID = @pIntezmenyId CREATE TABLE #OrarendiOrak ( Id int ,OraKezdete datetime ,OraVege datetime ,Oraszam int ,TargyNev nvarchar (300) ,CsengetesiRendID int ,OsztalyNev nvarchar (255) ,OraTipus nvarchar (200) ,HelyettesitoTanarID int ) INSERT INTO #OrarendiOrak ( Id ,OraKezdete ,OraVege ,Oraszam ,TargyNev ,CsengetesiRendID ,OsztalyNev ,OraTipus ,HelyettesitoTanarID ) EXEC sp_GetOrarend @pIntezmenyId = @pIntezmenyId ,@pTanevId = @pTanevId ,@pIdoszakKezdete = @pIdoszakKezdete ,@pIdoszakVege = @pIdoszakVege ,@pTanarId = @pTanarId ,@pIsHelyettesitesNelkul = 0 ,@pOsztalyCsoportId = NULL ,@pTanuloId = NULL ,@pTantargyId = NULL ,@pTeremId = NULL ,@pCsakOrarendiOrak = 0 ,@pIsNapirend = NULL ,@pOszlopok = N'Id,OraKezdete,OraVege,Oraszam,TargyNev,CsengetesiRendID,OsztalyNev,OraTipus,HelyettesitoTanarID' SELECT TOP (@pDarab) orak.Id AS Id ,orak.OraKezdete AS Datum ,IIF(orak.CsengetesiRendID IS NOT NULL, orak.Oraszam, N'-') AS Oraszam ,orak.OsztalyNev AS OsztalyCsoport ,orak.TargyNev AS Tantargy FROM #OrarendiOrak orak WHERE orak.OraTipus = N'OrarendiOra' AND orak.OraKezdete <= @pIdoszakVege AND orak.OraVege >= @pIdoszakKezdete AND orak.HelyettesitoTanarID = @pTanarId ORDER BY orak.OraKezdete ASC END GO