SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO IF OBJECT_ID('[dbo].[sp_GetTanuloiAdatlapAdatok]') IS NOT NULL BEGIN DROP PROCEDURE [dbo].[sp_GetTanuloiAdatlapAdatok] END GO CREATE PROCEDURE [dbo].[sp_GetTanuloiAdatlapAdatok] @osztCsopID int, @TanevId int AS BEGIN SET NOCOUNT ON; --Fejléc SELECT T_INTEZMENYADATOK_OSSZES.C_NEV IntezmenyNeve, T_INTEZMENYADATOK_OSSZES.C_VAROS IntezmenyVaros, dbo.fnGetDokumentumIntezmenyCime(@tanevId) IntezmenyCime, T_INTEZMENYADATOK_OSSZES.C_OMKOD OMKod, T_INTEZMENYADATOK_OSSZES.C_TELEFONSZAM TELEFON, T_INTEZMENYADATOK_OSSZES.C_EMAILCIM EMAILCIM, T_TANEV_OSSZES.C_NEV TANEV, (SELECT T_OSZTALY_OSSZES.C_OSZTALYFONOKID FROM T_OSZTALY_OSSZES WHERE T_OSZTALY_OSSZES.ID=@osztCsopID and T_OSZTALY_OSSZES.TOROLT = 'F') PartnerID, (SELECT OFO.C_NYOMTATASINEV FROM T_OSZTALY_OSSZES INNER JOIN T_FELHASZNALO_OSSZES OFO ON OFO.ID = T_OSZTALY_OSSZES.C_OSZTALYFONOKID and OFO.TOROLT = 'F' WHERE T_OSZTALY_OSSZES.ID=@osztCsopID and T_OSZTALY_OSSZES.TOROLT = 'F') OSZTALYFONOK, (SELECT to2.C_NEV FROM T_OSZTALYCSOPORT_OSSZES to2 WHERE ID = @osztCsopID and to2.TOROLT = 'F') OSZTALYNEV FROM T_INTEZMENYADATOK_OSSZES INNER JOIN T_TANEV_OSSZES on T_TANEV_OSSZES.ID = T_INTEZMENYADATOK_OSSZES.C_TANEVID and T_TANEV_OSSZES.TOROLT = 'F' WHERE T_INTEZMENYADATOK_OSSZES.TOROLT = 'F' AND T_INTEZMENYADATOK_OSSZES.C_TANEVID = @TanevId DECLARE @EmailCimTableTemp TABLE (FelhasznaloId INT, EmailCim NVARCHAR(MAX)) INSERT INTO @EmailCimTableTemp SELECT TanuloId ,C_EMAILCIM FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztCsopID, 'T') tanulo INNER JOIN T_EMAIL_OSSZES email ON email.C_FELHASZNALOID = TanuloId WHERE email.TOROLT = 'F' AND email.C_TANEVID = @TanevId AND LEN(C_EMAILCIM) > 0 DECLARE @EmailCimTable TABLE (FelhasznaloId INT, EmailCim NVARCHAR(MAX)) INSERT INTO @EmailCimTable SELECT DISTINCT FelhasznaloId ,STUFF(( SELECT DISTINCT CAST(Btemp.EmailCim AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10) FROM @EmailCimTableTemp btemp WHERE temp.FelhasznaloId = btemp.FelhasznaloId FOR XML PATH(''), TYPE) .value('.','NVARCHAR(MAX)'),1,0,'') Email FROM @EmailCimTableTemp temp DECLARE @TelefonszamTableTemp TABLE (FelhasznaloId INT, Telefonszam NVARCHAR(MAX)) INSERT INTO @TelefonszamTableTemp SELECT TanuloId ,C_TELEFONSZAM FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztCsopID, 'T') tanulo INNER JOIN T_TELEFON_OSSZES telefon ON telefon.C_FELHASZNALOID = TanuloId WHERE telefon.TOROLT = 'F' AND telefon.C_TANEVID = @TanevId AND LEN(C_TELEFONSZAM) > 0 DECLARE @TelefonszamTable TABLE (FelhasznaloId INT, Telefonszam NVARCHAR(MAX)) INSERT INTO @TelefonszamTable SELECT DISTINCT FelhasznaloId ,STUFF(( SELECT DISTINCT CAST(Btemp.Telefonszam AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10) FROM @TelefonszamTableTemp btemp WHERE temp.FelhasznaloId = btemp.FelhasznaloId FOR XML PATH(''), TYPE) .value('.','NVARCHAR(MAX)'),1,0,'') Telefonszam FROM @TelefonszamTableTemp temp DECLARE @TartozkodasiHelyTableTemp TABLE (FelhasznaloId INT, Cim NVARCHAR(MAX)) INSERT INTO @TartozkodasiHelyTableTemp SELECT TanuloId ,C_IRANYITOSZAM + ' ' + C_VAROS + ', ' + C_KOZTERULET + ' ' + kozterulet.C_NAME + ' ' + C_HAZSZAM FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztCsopID, 'T') tanulo INNER JOIN T_CIM_OSSZES cim ON cim.C_FELHASZNALOID = TanuloId INNER JOIN T_DICTIONARYITEMBASE_OSSZES kozterulet ON kozterulet.Id = C_KOZTERULETJELLEGE AND kozterulet.C_TANEVID = @TanevId WHERE cim.TOROLT = 'F' AND C_CIMTIPUSA = 909 AND cim.C_TANEVID = @TanevId DECLARE @TartozkodasiHelyTable TABLE (FelhasznaloId INT, Cim NVARCHAR(MAX)) INSERT INTO @TartozkodasiHelyTable SELECT DISTINCT FelhasznaloId ,STUFF(( SELECT CAST(Btemp.Cim AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10) FROM @TartozkodasiHelyTableTemp btemp WHERE temp.FelhasznaloId = btemp.FelhasznaloId FOR XML PATH(''), TYPE) .value('.','NVARCHAR(MAX)'),1,0,'') Email FROM @TartozkodasiHelyTableTemp temp --Tanulók Adatai SELECT DISTINCT T_TANULO_OSSZES.C_BEIRASINAPLOSORSZAM, T_FELHASZNALO_OSSZES.C_NYILVANTARTASISZAM, T_TANULO_OSSZES.C_NAPLOSORSZAM, T_TANEV_OSSZES.C_NEV TANEV, T_OSZTALYCSOPORT_OSSZES.C_NEV OSZTALYNEV, T_OSZTALY_OSSZES.C_KEPZESIFORMA Kepzesiforma, T_FELHASZNALO_OSSZES.C_NYOMTATASINEV NEV, T_GONDVISELO_OSSZES.C_NEV GONDVISELO, T_FELHASZNALO_OSSZES.C_SZULETESINEV SZULETESINEV, T_FELHASZNALO_OSSZES.C_ANYJANEVE ANYJANEVE, T_FELHASZNALO_OSSZES.C_OKTATASIAZONOSITO, T_FELHASZNALO_OSSZES.C_SZULETESIHELY, T_FELHASZNALO_OSSZES.C_SZULETESIORSZAG Szuletesiorszag, T_FELHASZNALO_OSSZES.C_SZULETESIDATUM, T_FELHASZNALO_OSSZES.C_ALLAMPOLGARSAGA Allampolgarsag, T_FELHASZNALO_OSSZES.C_ANYANYELVE Anyanyelv, T_FELHASZNALO_OSSZES.C_NYILVANTARTASKEZDETE, T_TANULO_OSSZES.C_TANKOTELEZETT Tankotelezett, T_TANULO_OSSZES.C_TANKOTELEZETTSEGVEGE, T_TANULO_OSSZES.C_JOGVISZONYVARHATOBEFEJEZESE, T_TANULO_OSSZES.C_DIAKIGAZOLVANYSZAM, T_TANULO_OSSZES.C_DIAKIGAZOLVANYKELTE, T_TANULO_OSSZES.C_BANKSZAMLASZAM, AllandoLakcim.Cim, TartozkodasiHely.CIM TartozkodasiHely, telefon.Telefonszam C_TELEFONSZAM, email.EmailCim C_EMAILCIM, T_TANULO_OSSZES.C_BEJARO Bejaro, T_TANULO_OSSZES.C_SZAKMAIGYAKORLATON Szakmaigyak, T_TANULO_OSSZES.C_VENDEG Vendeg, T_TANULO_OSSZES.C_JOGVISZONYATSZUNETELTETO Jogviszonyszunetelteto, T_TANULO_OSSZES.C_MAGANTANULO Magantanulo, T_TANULO_OSSZES.C_MAGANTANULOSAGANAKOKA, T_TANULO_OSSZES.C_MAGANTANULOSAGKEZDETE, T_TANULO_OSSZES.C_SZAKKEPESITESSZAMA, T_TANULO_OSSZES.C_TANULOIJOGVISZONYOSELTARTOTT, T_TANULO_OSSZES.C_TOBBGYERMEKIGAZOLASSZAMA, T_TANULO_OSSZES.C_EVISMETLO Evismetlo, T_TANULO_OSSZES.C_SZOCIALISTAMOGATAS Szoctam, T_TANULO_OSSZES.C_HATRANYOSHELYZETU, T_TANULO_OSSZES.C_VESZELYEZTETETT Veszelyeztetett, T_TANULO_OSSZES.C_HALMOZOTTANFOGYATEKOS Halmfogyatekos, T_TANULO_OSSZES.C_ETKEZESIKEDVEZMENY, T_TANULO_OSSZES.C_TERITESIDIJATFIZETO Teriteses, T_TANULO_OSSZES.C_TANDIJATFIZETO Tandijas, T_TANULO_OSSZES.C_INGYENESTANKONVYELLATASA, T_TANULO_OSSZES.C_TANULOSZERZODESES Tanszerzodeses, T_TANULO_OSSZES.C_POLGARISZERZODESES Polgszerzodeses, T_TANULO_OSSZES.C_RENDSZERESGYERMEKVEDELMIKEDV, T_TANULO_OSSZES.C_ALLAMIGONDOZOTT Allamigond, T_TANULO_OSSZES.C_KOLLEGIUMIELLATASOS Kollegiumi, T_TANULO_OSSZES.C_TARTOSGYOGYKEZELESSZAMA, T_TANULO_OSSZES.C_SAJATOSNEVELESU Sajatosnevelesu, T_TANULO_OSSZES.C_SNILETSZAMSULY, T_TANULO_OSSZES.C_SNIKIALLITOINTEZMENY, T_TANULO_OSSZES.C_SNIOKMANYERVENYESSEGKEZDETE, --SNIA --SNIB T_TANULO_OSSZES.C_BTMPROBLEMAS Btmproblemas, T_TANULO_OSSZES.C_BTMLETSZAMSULY, T_TANULO_OSSZES.C_BTMHATAROZATOKMANYSZAM, T_TANULO_OSSZES.C_BTMOKMANYERVENYESSEGKEZDETE, T_TANULO_OSSZES.C_BTMKIALLITOINTEZMENY, T_TANULO_OSSZES.C_ELSOINTEZMENYOMKOD --megjegyzés FROM T_FELHASZNALO_OSSZES INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztCsopID, 'T') tanulok ON tanulok.TanuloId = T_FELHASZNALO_OSSZES.Id INNER JOIN T_TANULO_OSSZES on T_TANULO_OSSZES.ID = T_FELHASZNALO_OSSZES.ID INNER JOIN T_TANULOCSOPORT_OSSZES on T_TANULOCSOPORT_OSSZES.C_TANULOID = T_FELHASZNALO_OSSZES.ID LEFT JOIN T_OSZTALYCSOPORT_OSSZES on T_OSZTALYCSOPORT_OSSZES.ID = T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID INNER JOIN T_OSZTALY_OSSZES on T_OSZTALY_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.ID LEFT JOIN T_TANEV_OSSZES on T_TANEV_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.C_TANEVID LEFT JOIN T_GONDVISELO_OSSZES on T_GONDVISELO_OSSZES.C_TANULOID = T_FELHASZNALO_OSSZES.ID and T_GONDVISELO_OSSZES.TOROLT = 'F' and T_GONDVISELO_OSSZES.C_ROKONSAGFOKA = 973 LEFT JOIN @TelefonszamTable telefon on telefon.FelhasznaloId = T_FELHASZNALO_OSSZES.ID LEFT JOIN @EmailCimTable email on email.FelhasznaloId = T_FELHASZNALO_OSSZES.ID LEFT JOIN (SELECT C_IRANYITOSZAM + ' ' + C_VAROS + ', ' + C_KOZTERULET + ' ' + kozterulet.C_NAME + ' ' + C_HAZSZAM Cim , C_FELHASZNALOID TanuloId FROM T_CIM_OSSZES INNER JOIN T_DICTIONARYITEMBASE_OSSZES kozterulet ON kozterulet.Id = C_KOZTERULETJELLEGE AND kozterulet.C_TANEVID = @tanevId WHERE T_CIM_OSSZES.TOROLT = 'F' AND T_CIM_OSSZES.C_CIMTIPUSA = 907 AND T_CIM_OSSZES.C_GONDVISELOID IS NULL ) AllandoLakcim ON AllandoLakcim.TanuloID = T_FELHASZNALO_OSSZES.ID LEFT JOIN @TartozkodasiHelyTable TartozkodasiHely ON TartozkodasiHely.FelhasznaloId = T_FELHASZNALO_OSSZES.ID WHERE T_FELHASZNALO_OSSZES.TOROLT = 'F' AND T_TANEV_OSSZES.TOROLT = 'F' AND T_TANULOCSOPORT_OSSZES.TOROLT = 'F' AND T_OSZTALYCSOPORT_OSSZES.TOROLT = 'F' ORDER BY T_FELHASZNALO_OSSZES.C_NYOMTATASINEV END GO