DROP PROCEDURE IF EXISTS uspGetFelhasznaloBelepesData GO CREATE PROCEDURE uspGetFelhasznaloBelepesData @pTanevId int AS BEGIN SET NOCOUNT ON; --NOTE: Alkalmazott SELECT fb.ID AS Id ,fb.C_BEJELENTKEZESINEV AS BejelentkezesiNev ,IIF(fb.C_JELSZO IS NULL, 'F', 'T') AS HasJelszo ,fb.C_IMPORTALT AS Importalt ,fh.C_ELOTAG AS Elotag ,fh.C_VEZETEKNEV AS Vezeteknev ,fh.C_UTONEV AS Keresztnev ,fh.C_OKTATASIAZONOSITO AS OktatasiAzonosito ,fh.C_SZULETESIDATUM AS SzuletesiIdo ,a.ID AS AlkalmazottId ,NULL AS TanuloId ,NULL AS GondviseloId ,NULL AS GondviseloNev ,NULL AS GondviseloRokonsagiFokId FROM T_ALKALMAZOTT_OSSZES a INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ID = a.ID AND fh.C_TANEVID = a.C_ALTANEVID AND fh.TOROLT = 'F' LEFT JOIN T_FELHASZNALOBELEPES_OSSZES fb ON fb.C_FELHASZNALOID = fh.ID AND fb.C_GONDVISELOID IS NULL AND fb.C_TANEVID = a.C_ALTANEVID AND fb.TOROLT = 'F' WHERE a.C_ALTANEVID = @pTanevId AND a.TOROLT = 'F' UNION --NOTE: Tanuló SELECT fb.ID AS Id ,fb.C_BEJELENTKEZESINEV AS BejelentkezesiNev ,IIF(fb.C_JELSZO IS NULL, 'F', 'T') AS HasJelszo ,fb.C_IMPORTALT AS Importalt ,fh.C_ELOTAG AS Elotag ,fh.C_VEZETEKNEV AS Vezeteknev ,fh.C_UTONEV AS Keresztnev ,fh.C_OKTATASIAZONOSITO AS OktatasiAzonosito ,fh.C_SZULETESIDATUM AS SzuletesiIdo ,NULL AS AlkalmazottId ,dk.ID AS TanuloId ,NULL AS GondviseloId ,NULL AS GondviseloNev ,NULL AS GondviseloRokonsagiFokId FROM T_TANULO_OSSZES dk INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ID = dk.ID AND fh.C_TANEVID = dk.C_ALTANEVID AND fh.TOROLT = 'F' LEFT JOIN T_FELHASZNALOBELEPES_OSSZES fb ON fb.C_FELHASZNALOID = fh.ID AND fb.C_GONDVISELOID IS NULL AND fb.C_TANEVID = dk.C_ALTANEVID AND fb.TOROLT = 'F' WHERE dk.C_ALTANEVID = @pTanevId AND dk.TOROLT = 'F' UNION --NOTE: Gondviselő SELECT fb.ID AS Id ,fb.C_BEJELENTKEZESINEV AS BejelentkezesiNev ,IIF(fb.C_JELSZO IS NULL, 'F', 'T') AS HasJelszo ,fb.C_IMPORTALT AS Importalt ,fh.C_ELOTAG AS Elotag ,fh.C_VEZETEKNEV AS Vezeteknev ,fh.C_UTONEV AS Keresztnev ,fh.C_OKTATASIAZONOSITO AS OktatasiAzonosito ,fh.C_SZULETESIDATUM AS SzuletesiIdo ,NULL AS AlkalmazottId ,dk.ID AS TanuloId ,g.ID AS GondviseloId ,g.C_NEV AS GondviseloNev ,g.C_ROKONSAGFOKA AS GondviseloRokonsagiFokId FROM T_GONDVISELO_OSSZES g INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ID = g.C_TANULOID AND fh.C_TANEVID = g.C_TANEVID AND fh.TOROLT = 'F' INNER JOIN T_TANULO_OSSZES dk ON dk.ID = g.C_TANULOID AND dk.C_ALTANEVID = g.C_TANEVID AND dk.TOROLT = 'F' LEFT JOIN T_FELHASZNALOBELEPES_OSSZES fb ON fb.C_FELHASZNALOID = fh.ID AND fb.C_GONDVISELOID = g.ID AND fb.C_TANEVID = g.C_TANEVID AND fb.TOROLT = 'F' WHERE g.C_TANEVID = @pTanevId AND g.TOROLT = 'F' UNION --NOTE: Egyéb(fenntartó, admin, stb...) SELECT fb.ID AS Id ,fb.C_BEJELENTKEZESINEV AS BejelentkezesiNev ,IIF(fb.C_JELSZO IS NULL, 'F', 'T') AS HasJelszo ,fb.C_IMPORTALT AS Importalt ,fh.C_ELOTAG AS Elotag ,fh.C_VEZETEKNEV AS Vezeteknev ,fh.C_UTONEV AS Keresztnev ,fh.C_OKTATASIAZONOSITO AS OktatasiAzonosito ,fh.C_SZULETESIDATUM AS SzuletesiIdo ,NULL AS AlkalmazottId ,NULL AS TanuloId ,NULL AS GondviseloId ,NULL AS GondviseloNev ,NULL AS GondviseloRokonsagiFokId FROM T_FELHASZNALO_OSSZES fh LEFT JOIN T_FELHASZNALOBELEPES_OSSZES fb ON fb.C_FELHASZNALOID = fh.ID AND fb.C_GONDVISELOID IS NULL AND fb.C_TANEVID = fh.C_TANEVID AND fb.TOROLT = 'F' WHERE NOT EXISTS (SELECT ID FROM T_TANULO_OSSZES dk WHERE dk.ID = fh.ID AND dk.C_ALTANEVID = fh.C_TANEVID AND dk.TOROLT = 'F') AND NOT EXISTS (SELECT ID FROM T_ALKALMAZOTT_OSSZES a WHERE a.ID = fh.ID AND a.C_ALTANEVID = fh.C_TANEVID AND a.TOROLT = 'F') AND fh.C_TANEVID = @pTanevId AND fh.TOROLT = 'F' END GO