DROP PROCEDURE IF EXISTS uspGetOsztalyTanuloinakSzamaKepzesiJellemzokSzerint GO CREATE PROCEDURE uspGetOsztalyTanuloinakSzamaKepzesiJellemzokSzerint @pTanevId int ,@pIntezmenyId int ,@pOsztalyId int ,@pIsAktivTanev bit AS BEGIN SET NOCOUNT ON; DECLARE @ujSzkt int ,@okj int ,@nkt int ,@ures int ,@reszszakma int SET @reszszakma = (SELECT --RESZSZAKMA COUNT(tta.ID) FROM T_TANULOCSOPORT_OSSZES tcs INNER JOIN T_TANULOTANUGYIADATOK_OSSZES tta ON tta.C_TANULOCSOPORTID = tcs.ID AND tta.TOROLT = 'F' WHERE tcs.C_OSZTALYCSOPORTID = @pOsztalyId AND (@pIsAktivTanev = 0 OR tcs.C_BELEPESDATUM <= GETDATE()) AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > GETDATE()) AND (COALESCE (tta.C_AGAZATRESZSZAKMATIPUSID, tta.C_SZAKMARESZSZAKMATIPUSID, tta.C_RESZSZAKMATIPUSID) IS NOT NULL AND (tta.C_AGAZATRESZSZAKMATIPUSID <> 8832 OR tta.C_SZAKMARESZSZAKMATIPUSID <> 8850 OR tta.C_RESZSZAKMATIPUSID <> 8895) ) /*Ha bármelyik nem null vagy nem Na*/ AND tcs.TOROLT = 'F' AND tcs.C_TANEVID = @pTanevId AND tcs.C_INTEZMENYID = @pIntezmenyId) SET @ujSzkt = (SELECT --UJSZKT COUNT(tta.ID) FROM T_TANULOCSOPORT_OSSZES tcs INNER JOIN T_TANULOTANUGYIADATOK_OSSZES tta ON tta.C_TANULOCSOPORTID = tcs.ID AND tta.TOROLT = 'F' WHERE tcs.C_OSZTALYCSOPORTID = @pOsztalyId AND (@pIsAktivTanev = 0 OR tcs.C_BELEPESDATUM <= GETDATE()) AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > GETDATE()) AND (COALESCE (tta.C_AGAZATUJSZKTTIPUSID, tta.C_SZAKMATIPUSID, tta.C_SZAKMAIRANYTIPUSID) IS NOT NULL AND (tta.C_AGAZATUJSZKTTIPUSID <> 7920 OR tta.C_SZAKMATIPUSID <> 7946 OR tta.C_SZAKMAIRANYTIPUSID <> 8122) ) /*Ha bármelyik nem null vagy nem Na*/ AND tcs.TOROLT = 'F' AND tcs.C_TANEVID = @pTanevId AND tcs.C_INTEZMENYID = @pIntezmenyId) SET @okj = (SELECT --OKJ COUNT(tta.ID) FROM T_TANULOCSOPORT_OSSZES tcs INNER JOIN T_TANULOTANUGYIADATOK_OSSZES tta ON tta.C_TANULOCSOPORTID = tcs.ID AND tta.TOROLT = 'F' WHERE tcs.C_OSZTALYCSOPORTID = @pOsztalyId AND (@pIsAktivTanev = 0 OR tcs.C_BELEPESDATUM <= GETDATE()) AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > GETDATE()) AND (COALESCE (tta.C_SZAKMACSOPORTID,tta.C_AGAZATID, tta.C_SZAKKEPESITESID, tta.C_RESZSZAKKEPESITESID) IS NOT NULL AND (tta.C_SZAKMACSOPORTID <> 6084 OR tta.C_AGAZATID <> 5484 OR tta.C_SZAKKEPESITESID <> 5527 OR tta.C_RESZSZAKKEPESITESID <> 6108) ) /*Ha bármelyik nem null vagy nem Na*/ AND tcs.TOROLT = 'F' AND tcs.C_TANEVID = @pTanevId AND tcs.C_INTEZMENYID = @pIntezmenyId) SET @nkt = (SELECT --NKT COUNT(tta.ID) FROM T_TANULOCSOPORT_OSSZES tcs INNER JOIN T_TANULOTANUGYIADATOK_OSSZES tta ON tta.C_TANULOCSOPORTID = tcs.ID AND tta.TOROLT = 'F' WHERE tcs.C_OSZTALYCSOPORTID = @pOsztalyId AND (@pIsAktivTanev = 0 OR tcs.C_BELEPESDATUM <= GETDATE()) AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > GETDATE()) AND (COALESCE (tta.C_SZAKIRANYNKTTIPUSID,tta.C_SZAKKEPESITESNKTTIPUSID, tta.C_TANULMANYITERULETNKTTIPUSID) IS NOT NULL AND (tta.C_SZAKIRANYNKTTIPUSID <> 8493 OR tta.C_SZAKKEPESITESNKTTIPUSID <> 8464 OR tta.C_TANULMANYITERULETNKTTIPUSID <> 8459) ) /*Ha bármelyik nem null vagy nem Na*/ AND tcs.TOROLT = 'F' AND tcs.C_TANEVID = @pTanevId AND tcs.C_INTEZMENYID = @pIntezmenyId) SET @ures = (SELECT /*Üres ha minden képzési jellemző adat null vagy Na*/ COUNT(tta.ID) FROM T_TANULOCSOPORT_OSSZES tcs INNER JOIN T_TANULOTANUGYIADATOK_OSSZES tta ON tta.C_TANULOCSOPORTID = tcs.ID AND tta.TOROLT = 'F' WHERE tcs.C_OSZTALYCSOPORTID = @pOsztalyId AND (@pIsAktivTanev = 0 OR tcs.C_BELEPESDATUM <= GETDATE()) AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > GETDATE()) AND (tta.C_AGAZATUJSZKTTIPUSID IS NULL OR tta.C_AGAZATUJSZKTTIPUSID = 7920) AND (tta.C_SZAKMATIPUSID IS NULL OR tta.C_SZAKMATIPUSID = 7946) AND (tta.C_SZAKMAIRANYTIPUSID IS NULL OR tta.C_SZAKMAIRANYTIPUSID = 8122) AND (tta.C_SZAKMACSOPORTID IS NULL OR tta.C_SZAKMACSOPORTID = 6084) AND (tta.C_AGAZATID IS NULL OR tta.C_AGAZATID = 5484) AND (tta.C_SZAKKEPESITESID IS NULL OR tta.C_SZAKKEPESITESID = 5527) AND (tta.C_RESZSZAKKEPESITESID IS NULL OR tta.C_RESZSZAKKEPESITESID = 6108) AND (tta.C_SZAKIRANYNKTTIPUSID IS NULL OR tta.C_SZAKIRANYNKTTIPUSID = 8493) AND (tta.C_SZAKKEPESITESNKTTIPUSID IS NULL OR tta.C_SZAKKEPESITESNKTTIPUSID = 8464) AND (tta.C_TANULMANYITERULETNKTTIPUSID IS NULL OR tta.C_TANULMANYITERULETNKTTIPUSID = 8459) AND (tta.C_AGAZATUJSZKTTIPUSID IS NULL OR tta.C_AGAZATUJSZKTTIPUSID = 7920) AND (tta.C_AGAZATRESZSZAKMATIPUSID IS NULL OR tta.C_AGAZATRESZSZAKMATIPUSID = 8832) AND (tta.C_SZAKMARESZSZAKMATIPUSID IS NULL OR tta.C_AGAZATRESZSZAKMATIPUSID = 8850) AND (tta.C_RESZSZAKMATIPUSID IS NULL OR tta.C_AGAZATRESZSZAKMATIPUSID = 8895) AND tcs.TOROLT = 'F' AND tcs.C_TANEVID = @pTanevId AND tcs.C_INTEZMENYID = @pIntezmenyId) SELECT @ujSzkt SzktCount ,@okj OkjCount ,@nkt NktCount ,@ures UresCount ,@reszszakma ReszszakmaCount END GO