IF OBJECT_ID('fnGetDokumentumTanuloOrGondviseloCim') IS NOT NULL BEGIN DROP FUNCTION fnGetDokumentumTanuloOrGondviseloCim END GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE FUNCTION fnGetDokumentumTanuloOrGondviseloCim (@TanuloOrGondviselo BIT, @pTanevId INT, @pOsztalyId INT) RETURNS @result TABLE ( TanuloId INT, Cim NVARCHAR(MAX), CimTipusa INT, GondviseloId INT ) AS BEGIN IF @TanuloOrGondviselo = 0 BEGIN INSERT INTO @result(TanuloId, Cim, CimTipusa, GondviseloId) SELECT DISTINCT TanuloId AS TanuloId ,cim.C_IRANYITOSZAM + ' ' + cim.C_VAROS + ', ' + cim.C_KOZTERULET + ' ' + kozterulet.C_NAME + ' ' + cim.C_HAZSZAM AS Cim ,cim.C_CIMTIPUSA AS CimTipusa ,cim.C_GONDVISELOID AS GondviseloId FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') tanulo CROSS APPLY (SELECT TOP 1 WITH TIES c.C_IRANYITOSZAM, c.C_VAROS, c.C_KOZTERULET, c.C_HAZSZAM, c.C_KOZTERULETJELLEGE, c.C_CIMTIPUSA, c.C_GONDVISELOID FROM T_CIM_OSSZES c WHERE c.C_FELHASZNALOID = tanulo.TanuloId AND c.C_TANEVID = @pTanevId AND c.TOROLT = 'F' AND c.C_GONDVISELOID IS NULL ORDER BY C_ALAPERTELMEZETT DESC ) cim INNER JOIN T_DICTIONARYITEMBASE_OSSZES kozterulet ON kozterulet.Id = cim.C_KOZTERULETJELLEGE AND kozterulet.C_TANEVID = @pTanevId END ELSE IF @TanuloOrGondviselo = 1 BEGIN INSERT INTO @result(TanuloId, Cim, CimTipusa, GondviseloId) SELECT DISTINCT Gondviselo.TanuloId AS TanuloId ,cim.C_IRANYITOSZAM + ' ' + cim.C_VAROS + ', ' + cim.C_KOZTERULET + ' ' + kozterulet.C_NAME + ' ' + cim.C_HAZSZAM AS Cim ,cim.C_CIMTIPUSA AS CimTipusa ,Gondviselo.GondviseloId AS GondviseloId FROM fnGetDokumentumGondviselok (@pOsztalyId, @pTanevId, 'F', 'T') Gondviselo CROSS APPLY (SELECT TOP 1 WITH TIES c.C_IRANYITOSZAM, c.C_VAROS, c.C_KOZTERULET, c.C_HAZSZAM, c.C_KOZTERULETJELLEGE, c.C_CIMTIPUSA, c.C_GONDVISELOID FROM T_CIM_OSSZES c WHERE c.C_GONDVISELOID = Gondviselo.GondviseloId AND c.C_TANEVID = @pTanevId AND c.TOROLT = 'F' AND c.C_GONDVISELOID IS NOT NULL ORDER BY C_ALAPERTELMEZETT DESC ) cim INNER JOIN T_DICTIONARYITEMBASE_OSSZES kozterulet ON kozterulet.Id = cim.C_KOZTERULETJELLEGE AND kozterulet.C_TANEVID = @pTanevId END RETURN END