SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF OBJECT_ID('[dbo].[sp_GetAdminDashboardAdminisztracio]') IS NOT NULL BEGIN DROP PROCEDURE [dbo].[sp_GetAdminDashboardAdminisztracio] END GO CREATE PROCEDURE [dbo].[sp_GetAdminDashboardAdminisztracio] @pNaFeladatellatasihelyTipus INT ,@pNaEvfolyamTipusa INT ,@pNaCsoportTipusa INT ,@pNaNemTipusa INT ,@pNaAlkalmazottMunkakor INT ,@pNaAlkalmazottMunkaviszony INT ,@pNaBesorolasiFokozat INT ,@pNaTargyKategoria INT ,@pNincsAnyanyelv INT ,@pNincsAllampolgarsag INT ,@pTanevId INT AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements. SET NOCOUNT ON; DECLARE @TanevElsoNapja DATETIME = (SELECT ISNULL(C_KEZDONAP, CAST(GETDATE() AS DATE)) FROM T_TANEV WHERE ID = @pTanevId AND TOROLT = 'F') DECLARE @OsztalyCsoportBelepesDatum DATETIME = GETDATE(); IF(@OsztalyCsoportBelepesDatum < @TanevElsoNapja) BEGIN SET @OsztalyCsoportBelepesDatum = @TanevElsoNapja; END SELECT intezmenyAdatok.C_NEV IntezmenyNev, intezmeny.C_AZONOSITO IntezmenyAzonosito, intezmeny.C_ALTERNATIVAZONOSITO IntezmenyAlternativAzonosito, tanev.C_NEV TanevNev, (SELECT TOP 1 ISNULL(C_DATE, '20201231') FROM T_LICENCE_OSSZES) LicenceDatum, (SELECT COUNT(1) FROM T_FELADATELLATASIHELY_OSSZES adat WHERE adat.C_TANEVID = @pTanevId AND adat.TOROLT = 'F' AND adat.C_OKTATASINEVELESIFELADATTIPUS = @pNaFeladatellatasihelyTipus) NincsFeladatellatasiHelyTipus, (SELECT COUNT(1) FROM T_MUKODESIHELY_OSSZES adat WHERE adat.C_TANEVID = @pTanevId AND adat.TOROLT = 'F' AND 0 = (SELECT COUNT(1) FROM T_FELADATELLATASIHELY_OSSZES fh WHERE fh.C_MUKODESIHELYID = adat.ID)) NincsFeladatellatasiHelyMukodesiHely, (select count(1) from (SELECT T_OSZTALY_OSSZES.ID FROM T_OSZTALY_OSSZES LEFT JOIN T_TANEV_OSSZES on T_TANEV_OSSZES.ID = T_OSZTALY_OSSZES.C_ALTANEVID LEFT JOIN T_TANULOCSOPORT_OSSZES on T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID = T_OSZTALY_OSSZES.ID AND T_TANULOCSOPORT_OSSZES.TOROLT='F' AND ((T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM <= @OsztalyCsoportBelepesDatum AND (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM IS NULL or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >=@OsztalyCsoportBelepesDatum))) WHERE C_ALTANEVID = @pTanevId AND T_OSZTALY_OSSZES.TOROLT = 'F' GROUP BY T_OSZTALY_OSSZES.ID HAVING COUNT(T_TANULOCSOPORT_OSSZES.id) = 0) adat) UresOsztaly, (select count(1) from (SELECT T_CSOPORT_OSSZES.ID FROM T_CSOPORT_OSSZES LEFT JOIN T_TANEV_OSSZES on T_TANEV_OSSZES.ID = T_CSOPORT_OSSZES.C_ALTANEVID LEFT JOIN T_TANULOCSOPORT_OSSZES on T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID = T_CSOPORT_OSSZES.ID AND T_TANULOCSOPORT_OSSZES.TOROLT='F' AND ((T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM <= @OsztalyCsoportBelepesDatum AND (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM IS NULL or T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= @OsztalyCsoportBelepesDatum))) WHERE C_ALTANEVID = @pTanevId AND T_CSOPORT_OSSZES.TOROLT = 'F' GROUP BY T_CSOPORT_OSSZES.ID HAVING COUNT(T_TANULOCSOPORT_OSSZES.id) = 0) adat) UresCsoport, (SELECT COUNT(1) FROM T_OSZTALYCSOPORT_OSSZES adat INNER JOIN T_OSZTALY_OSSZES o ON o.ID = adat.ID AND o.C_ALTANEVID = adat.C_TANEVID WHERE adat.C_TANEVID = @pTanevId AND adat.TOROLT = 'F' AND adat.C_EVFOLYAMTIPUSA = @pNaEvfolyamTipusa or adat.C_EVFOLYAMTIPUSA IS NULL ) NincsEvfolyamOsztaly, (SELECT COUNT(1) FROM T_OSZTALYCSOPORT_OSSZES adat INNER JOIN T_CSOPORT_OSSZES csoport ON csoport.ID = adat.ID AND csoport.C_ALTANEVID = adat.C_TANEVID WHERE adat.C_TANEVID = @pTanevId AND adat.TOROLT = 'F' AND adat.C_EVFOLYAMTIPUSA = @pNaEvfolyamTipusa or adat.C_EVFOLYAMTIPUSA IS NULL ) NincsEvfolyamCsoport, (SELECT COUNT(1) FROM T_OSZTALYCSOPORT_OSSZES adat INNER JOIN T_CSOPORT_OSSZES csoport ON csoport.ID = adat.ID AND csoport.C_ALTANEVID = adat.C_TANEVID WHERE adat.C_TANEVID = @pTanevId AND adat.TOROLT = 'F' AND csoport.C_TIPUSA = @pNaCsoportTipusa) NincsTipusCsoport, (SELECT COUNT(1) FROM T_OSZTALYCSOPORT_OSSZES adat INNER JOIN T_OSZTALY_OSSZES o ON o.ID = adat.ID AND o.C_ALTANEVID = adat.C_TANEVID WHERE adat.C_TANEVID = @pTanevId AND adat.TOROLT = 'F' AND o.C_OSZTALYFONOKID IS NULL) NincsOsztalyOsztalyfonok, (SELECT COUNT(1) FROM T_FELHASZNALO_OSSZES adat INNER JOIN T_ALKALMAZOTT_OSSZES a ON a.ID = adat.ID AND a.C_ALTANEVID = adat.C_TANEVID INNER JOIN T_MUNKAUGYIADATOK_OSSZES ON T_MUNKAUGYIADATOK_OSSZES.C_ALKALMAZOTTID = a.ID WHERE adat.C_TANEVID = @pTanevId AND adat.TOROLT = 'F' AND (adat.C_NEME = @pNaNemTipusa OR adat.C_NEME IS NULL) AND adat.C_NYOMTATASINEV NOT LIKE '[[]HO%' AND adat.C_NYOMTATASINEV NOT LIKE '[[]BTA%' AND T_MUNKAUGYIADATOK_OSSZES.C_MUNKAKORTIPUSA NOT IN (569,572,6404,571,586,570,590,566,561,563,559,584,3026,589,565,585,7356,6421,594,564,579,568)) NincsNemAlkalmazott, (SELECT COUNT(1) FROM T_FELHASZNALO_OSSZES adat INNER JOIN T_TANULO_OSSZES a ON a.ID = adat.ID AND a.C_ALTANEVID = adat.C_TANEVID WHERE adat.C_TANEVID = @pTanevId AND adat.TOROLT = 'F' AND (adat.C_NEME = @pNaNemTipusa OR adat.C_NEME IS NULL)) NincsNemTanulo, (SELECT COUNT(1) FROM T_FELHASZNALO_OSSZES adat INNER JOIN T_ALKALMAZOTT_OSSZES a ON a.ID = adat.ID AND a.C_ALTANEVID = adat.C_TANEVID INNER JOIN T_MUNKAUGYIADATOK_OSSZES m ON m.C_ALKALMAZOTTID = adat.ID AND m.C_TANEVID = adat.C_TANEVID AND m.TOROLT = 'F' WHERE adat.C_TANEVID = @pTanevId AND adat.TOROLT = 'F' AND m.C_MUNKAKORTIPUSA = @pNaAlkalmazottMunkakor AND m.C_MUNKAKORTIPUSA NOT IN (569,572,6404,571,586,570,590,566,561,563,559,584,3026,589,565,585,7356,6421,594,564,579,568)) NincsMunkakorAlkalmazott, (SELECT COUNT(1) FROM T_FELHASZNALO_OSSZES adat INNER JOIN T_ALKALMAZOTT_OSSZES a ON a.ID = adat.ID AND a.C_ALTANEVID = adat.C_TANEVID INNER JOIN T_MUNKAUGYIADATOK_OSSZES m ON m.C_ALKALMAZOTTID = adat.ID AND m.C_TANEVID = adat.C_TANEVID AND m.TOROLT = 'F' WHERE adat.C_TANEVID = @pTanevId AND adat.TOROLT = 'F' AND m.C_MUNKAVISZONYTIPUSA = @pNaAlkalmazottMunkaviszony AND m.C_MUNKAKORTIPUSA NOT IN (569,572,6404,571,586,570,590,566,561,563,559,584,3026,589,565,585,7356,6421,594,564,579,568)) NincsMunkaviszonyTipusAlkalmazott, (SELECT COUNT(1) FROM T_FELHASZNALO_OSSZES adat INNER JOIN T_ALKALMAZOTT_OSSZES a ON a.ID = adat.ID AND a.C_ALTANEVID = adat.C_TANEVID INNER JOIN T_MUNKAUGYIADATOK_OSSZES m ON m.C_ALKALMAZOTTID = adat.ID AND m.C_TANEVID = adat.C_TANEVID AND m.TOROLT = 'F' WHERE adat.C_TANEVID = @pTanevId AND adat.TOROLT = 'F' AND m.C_MUNKAKORTIPUSA NOT IN (569,572,6404,571,586,570,590,566,561,563,559,584,3026,589,565,585,7356,6421,594,564,579,568) AND m.C_BESOROLASIFOKOZAT =@pNaBesorolasiFokozat ) NincsBesorolasiFokozatAlkalmazott, (SELECT COUNT(1) FROM T_FELHASZNALO_OSSZES adat INNER JOIN T_TANULO_OSSZES a ON a.ID = adat.ID AND a.C_ALTANEVID = adat.C_TANEVID WHERE adat.C_TANEVID = @pTanevId AND adat.TOROLT = 'F' AND (adat.C_ANYANYELVE = @pNincsAnyanyelv OR adat.C_ANYANYELVE IS NULL)) NincsAnyanyelvTanulo, (SELECT COUNT(1) FROM T_FELHASZNALO_OSSZES adat INNER JOIN T_TANULO_OSSZES a ON a.ID = adat.ID AND a.C_ALTANEVID = adat.C_TANEVID WHERE adat.C_TANEVID = @pTanevId AND adat.TOROLT = 'F' AND (adat.C_ALLAMPOLGARSAGA = @pNincsAllampolgarsag OR adat.C_ALLAMPOLGARSAGA IS NULL) ) NincsAllampolgarsagaTanulo, (SELECT COUNT(1) FROM T_CSENGETESIREND_OSSZES adat WHERE adat.C_TANEVID = @pTanevId AND adat.TOROLT = 'F' AND adat.C_AKTIV = 'T') NincsAktivCsengetesiRend, (SELECT COUNT(1) FROM T_TANTARGY_OSSZES adat WHERE adat.C_TANEVID = @pTanevId AND adat.TOROLT = 'F' AND adat.C_TARGYKATEGORIA = @pNaTargyKategoria ) NincsKategoriaTantargy, (SELECT COUNT(1) FROM T_FELHASZNALO_OSSZES adat INNER JOIN T_ALKALMAZOTT_OSSZES a ON a.ID = adat.ID AND a.C_ALTANEVID = adat.C_TANEVID INNER JOIN T_MUNKAUGYIADATOK_OSSZES m ON m.C_ALKALMAZOTTID = adat.ID AND m.C_TANEVID = adat.C_TANEVID AND m.TOROLT = 'F' WHERE adat.C_TANEVID = @pTanevId AND adat.TOROLT = 'F' AND m.C_MUNKAKORTIPUSA NOT IN (569,572,6404,571,586,570,590,566,561,563,559,584,3026,589,565,585,7356,6421,594,564,579,568)) NSzFHRosszMunkakor, (SELECT COUNT(1) FROM T_ALKALMAZOTT_OSSZES a LEFT JOIN T_EMAIL_OSSZES ON T_EMAIL_OSSZES.C_FELHASZNALOID = a.ID AND T_EMAIL_OSSZES.TOROLT = 'F' AND T_EMAIL_OSSZES.C_ALAPERTELMEZETT = 'T' WHERE a.C_ALTANEVID = @pTanevId AND a.TOROLT = 'F' and T_EMAIL_OSSZES.ID is null) NincsEmailAlkalmazott FROM T_TANEV_OSSZES tanev INNER JOIN T_INTEZMENY_OSSZES intezmeny ON intezmeny.ID = tanev.C_INTEZMENYID AND intezmeny.TOROLT = 'F' INNER JOIN T_INTEZMENYADATOK_OSSZES intezmenyAdatok ON intezmenyAdatok.C_INTEZMENYID = tanev.C_INTEZMENYID AND intezmenyAdatok.C_TANEVID = tanev.ID AND intezmenyAdatok.TOROLT = 'F' WHERE tanev.TOROLT = 'F' AND tanev.ID = @pTanevId END GO