﻿ 
 SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

IF OBJECT_ID('[dbo].[sp_GetGondviselokElerhetosegei]') IS NOT NULL 
BEGIN
  DROP PROCEDURE [dbo].sp_GetGondviselokElerhetosegei
END  
GO

CREATE PROCEDURE [dbo].sp_GetGondviselokElerhetosegei

 @pIntezmenyId INT
,@pTanevId INT
 

AS
BEGIN

	-- SET NOCOUNT ON added to prevent extra result sets from
	-- interfering with SELECT statements.
	SET NOCOUNT ON;

  SELECT DISTINCT
                    tanulo.C_NYOMTATASINEV																		as TanuloNeve
					,dbo.fnGetTanuloAktualisOsztaly(tanulo.ID)													as  Osztaly
                    , Tgondviselo.C_NEV																			as  GondviseloNeve
                    , rokonsag_foka_dib.C_NAME																	as  RokonsagFoka
					,tanulo.C_OKTATASIAZONOSITO																	AS  OktatasiAzonosito
					,tanulo.C_ANYJANEVE																			AS  TanuloAnyjaNeve
					,tanulo.C_SZULETESIHELY																		AS  TanuloSzuletesiHelye
					,CONVERT(nvarchar(25), tanulo.C_SZULETESIDATUM, 102)										AS  TanuloSzuletesiDatuma
                    , IIF(telefon.C_TELEFONSZAM IS NULL, '', telefon.C_TELEFONSZAM)								as  Telefon
                    , IIF(email.C_EMAILCIM IS NULL, '', email.C_EMAILCIM)										as  EmailCim
                    , IIF(lakcim_allando.C_IRANYITOSZAM IS NULL, '', lakcim_allando.C_IRANYITOSZAM)				as  AllandoLakcimIranyitoszam
                    , IIF(lakcim_allando.C_VAROS IS NULL, '', lakcim_allando.C_VAROS)							as  AllandoLakcimVaros
                    , IIF(lakcim_allando.C_KOZTERULET IS NULL, '', lakcim_allando.C_KOZTERULET)					as  AllandoLakcimKozteruletNeve
                    , IIF(lakcim_allando.C_KOZTERULETJELLEGE IS NULL, '', lakcim_allando_dib.C_NAME)			as  AllandoLakcimKozteruletJellege
                    , IIF(lakcim_allando.C_HAZSZAM IS NULL, '', lakcim_allando.C_HAZSZAM)						as  AllandoLakcimHazszam
                    , IIF(lakcim_allando.C_EMELET IS NULL, '', lakcim_allando.C_EMELET)							as  AllandoLakcimEmelet
                    , IIF(lakcim_allando.C_AJTO IS NULL, '', lakcim_allando.C_AJTO)								as  AllandoLakcimAjto
                    , IIF(lakcim_ideiglenes.C_IRANYITOSZAM IS NULL, '', lakcim_ideiglenes.C_IRANYITOSZAM)		as  IdeiglenesLakcimIranyitoszam
                    , IIF(lakcim_ideiglenes.C_VAROS IS NULL, '', lakcim_ideiglenes.C_VAROS)						as  IdeiglenesLakcimVaros
                    , IIF(lakcim_ideiglenes.C_KOZTERULET IS NULL, '', lakcim_ideiglenes.C_KOZTERULET)			as  IdeiglenesLakcimKozteruletNeve
                    , IIF(lakcim_ideiglenes.C_KOZTERULETJELLEGE IS NULL, '', lakcim_ideiglenes_dib.C_NAME)		as  IdeiglenesLakcimKozteruletJellege
                    , IIF(lakcim_ideiglenes.C_HAZSZAM IS NULL, '', lakcim_ideiglenes.C_HAZSZAM)					as  IdeiglenesLakcimHazszam
                    , IIF(lakcim_ideiglenes.C_EMELET IS NULL, '', lakcim_ideiglenes.C_EMELET)					as  IdeiglenesLakcimEmelet
                    , IIF(lakcim_ideiglenes.C_AJTO IS NULL, '', lakcim_ideiglenes.C_AJTO)						as  IdeiglenesLakcimAjto
                    , IIF(lakcim_tartozkodas.C_IRANYITOSZAM IS NULL, '', lakcim_tartozkodas.C_IRANYITOSZAM)		as  TartozkodasiHelyIranyitoszam
                    , IIF(lakcim_tartozkodas.C_VAROS IS NULL, '', lakcim_tartozkodas.C_VAROS)					as  TartozkodasiHelyVaros
                    , IIF(lakcim_tartozkodas.C_KOZTERULET IS NULL, '', lakcim_tartozkodas.C_KOZTERULET)			as  TartozkodasiHelyKozteruletNeve
                    , IIF(lakcim_tartozkodas.C_KOZTERULETJELLEGE IS NULL, '', lakcim_tartozkodas_dib.C_NAME)	as  TartozkodasiHelyKozteruletJellege
                    , IIF(lakcim_tartozkodas.C_HAZSZAM IS NULL, '', lakcim_tartozkodas.C_HAZSZAM)				as  TartozkodasiHelyHazszam
                    , IIF(lakcim_tartozkodas.C_EMELET IS NULL, '', lakcim_tartozkodas.C_EMELET)					as  TartozkodasiHelyEmelet
                    , IIF(lakcim_tartozkodas.C_AJTO IS NULL, '', lakcim_tartozkodas.C_AJTO)						as  TartozkodasiHelyAjto
                    , IIF(lakcim_na.C_IRANYITOSZAM IS NULL, '', lakcim_na.C_IRANYITOSZAM)						as  IsmeretlenLakcimIranyitoszam
                    , IIF(lakcim_na.C_VAROS IS NULL, '', lakcim_na.C_VAROS)										as  IsmeretlenLakcimVaros
                    , IIF(lakcim_na.C_KOZTERULET IS NULL, '', lakcim_na.C_KOZTERULET)							as  IsmeretlenLakcimKozteruletNeve
                    , IIF(lakcim_na.C_KOZTERULETJELLEGE IS NULL, '', lakcim_na_dib.C_NAME)						as  IsmeretlenLakcimKozteruletJellege
                    , IIF(lakcim_na.C_HAZSZAM IS NULL, '', lakcim_na.C_HAZSZAM)									as  IsmeretlenLakcimHazszam
                    , IIF(lakcim_na.C_EMELET IS NULL, '', lakcim_na.C_EMELET)									as  IsmeretlenLakcimEmelet
                    , IIF(lakcim_na.C_AJTO IS NULL, '', lakcim_na.C_AJTO)										as  IsmeretlenLakcimAjto
                FROM T_GONDVISELO_OSSZES Tgondviselo
                    JOIN T_FELHASZNALO_OSSZES tanulo ON tanulo.ID = Tgondviselo.C_TANULOID AND Tgondviselo.C_INTEZMENYID = tanulo.C_INTEZMENYID AND tanulo.C_TANEVID = @pTanevId
                    LEFT JOIN T_CIM_OSSZES lakcim_allando ON lakcim_allando.TOROLT = 'F' AND lakcim_allando.C_GONDVISELOID = Tgondviselo.ID AND Tgondviselo.C_INTEZMENYID = lakcim_allando.C_INTEZMENYID AND (SELECT COUNT(1) FROM T_DICTIONARYITEMBASE lakcim_allando_dib WHERE lakcim_allando.C_CIMTIPUSA = lakcim_allando_DIB.ID AND Tgondviselo.C_INTEZMENYID = lakcim_allando_dib.C_INTEZMENYID AND lakcim_allando_dib.C_NAME = 'Állandó lakcím') > 0 AND lakcim_allando.C_TANEVID = @pTanevId
                    LEFT JOIN T_CIM_OSSZES lakcim_tartozkodas ON lakcim_tartozkodas.TOROLT = 'F' AND lakcim_tartozkodas.C_GONDVISELOID = Tgondviselo.ID AND Tgondviselo.C_INTEZMENYID = lakcim_tartozkodas.C_INTEZMENYID AND (SELECT COUNT(1) FROM T_DICTIONARYITEMBASE lakcim_tartozkodas_dib WHERE lakcim_tartozkodas.C_CIMTIPUSA = lakcim_tartozkodas_dib.ID AND Tgondviselo.C_INTEZMENYID = lakcim_tartozkodas_dib.C_INTEZMENYID AND lakcim_tartozkodas_dib.C_NAME = 'Tartózkodási hely') > 0 AND lakcim_tartozkodas.C_TANEVID = @pTanevId
                    LEFT JOIN T_CIM_OSSZES lakcim_ideiglenes ON lakcim_ideiglenes.TOROLT = 'F' AND lakcim_ideiglenes.C_GONDVISELOID = Tgondviselo.ID AND Tgondviselo.C_INTEZMENYID = lakcim_ideiglenes.C_INTEZMENYID AND (SELECT COUNT(1) FROM T_DICTIONARYITEMBASE lakcim_ideiglenes_dib WHERE lakcim_ideiglenes.C_CIMTIPUSA = lakcim_ideiglenes_dib.ID AND Tgondviselo.C_INTEZMENYID = lakcim_ideiglenes_dib.C_INTEZMENYID AND lakcim_ideiglenes_dib.C_NAME = 'Ideiglenes lakcím') > 0 AND lakcim_ideiglenes.C_TANEVID = @pTanevId
                    LEFT JOIN T_CIM_OSSZES lakcim_na ON lakcim_na.TOROLT = 'F' AND lakcim_na.C_GONDVISELOID = Tgondviselo.ID AND Tgondviselo.C_INTEZMENYID = lakcim_na.C_INTEZMENYID AND (SELECT COUNT(1) FROM T_DICTIONARYITEMBASE lakcim_na_dib WHERE lakcim_na.C_CIMTIPUSA = lakcim_na_dib.ID AND Tgondviselo.C_INTEZMENYID = lakcim_na_dib.C_INTEZMENYID AND lakcim_na_dib.C_NAME = 'Na') > 0 AND lakcim_na.C_TANEVID = @pTanevId
                    LEFT JOIN T_DICTIONARYITEMBASE_OSSZES lakcim_allando_dib ON lakcim_allando.C_KOZTERULETJELLEGE = lakcim_allando_DIB.ID AND Tgondviselo.C_INTEZMENYID = lakcim_allando_dib.C_INTEZMENYID AND lakcim_allando_dib.C_TANEVID = @pTanevId
                    LEFT JOIN T_DICTIONARYITEMBASE_OSSZES lakcim_tartozkodas_dib ON lakcim_tartozkodas.C_KOZTERULETJELLEGE = lakcim_tartozkodas_dib.ID AND Tgondviselo.C_INTEZMENYID = lakcim_tartozkodas_dib.C_INTEZMENYID AND lakcim_tartozkodas_dib.C_TANEVID = @pTanevId
                    LEFT JOIN T_DICTIONARYITEMBASE_OSSZES lakcim_ideiglenes_dib ON lakcim_ideiglenes.C_KOZTERULETJELLEGE = lakcim_ideiglenes_dib.ID AND Tgondviselo.C_INTEZMENYID = lakcim_ideiglenes_dib.C_INTEZMENYID AND lakcim_ideiglenes_dib.C_TANEVID = @pTanevId
                    LEFT JOIN T_DICTIONARYITEMBASE_OSSZES lakcim_na_dib ON lakcim_na.C_KOZTERULETJELLEGE = lakcim_na_dib.ID AND Tgondviselo.C_INTEZMENYID = lakcim_na_dib.C_INTEZMENYID AND lakcim_na_dib.C_TANEVID = @pTanevId
                    LEFT JOIN T_DICTIONARYITEMBASE_OSSZES rokonsag_foka_dib ON Tgondviselo.C_ROKONSAGFOKA = rokonsag_foka_dib.ID AND Tgondviselo.C_INTEZMENYID = rokonsag_foka_dib.C_INTEZMENYID AND rokonsag_foka_dib.C_TANEVID = @pTanevId
                    LEFT JOIN T_TELEFON_OSSZES telefon ON telefon.C_GONDVISELOID = Tgondviselo.ID AND Tgondviselo.C_INTEZMENYID = telefon.C_INTEZMENYID AND telefon.C_TANEVID = @pTanevId AND telefon.TOROLT = 'F'
                    LEFT JOIN T_EMAIL_OSSZES email ON email.C_GONDVISELOID = Tgondviselo.ID AND Tgondviselo.C_INTEZMENYID = email.C_INTEZMENYID AND email.C_TANEVID = @pTanevId AND email.TOROLT = 'F'            
                WHERE 	
		            Tgondviselo.C_INTEZMENYID = @pIntezmenyId AND
                    Tgondviselo.C_TANEVID = @pTanevId AND
		            Tgondviselo.TOROLT = 'F' AND 
		            tanulo.TOROLT = 'F' AND tanulo.C_TANEVID = @pTanevId
                ORDER BY
                    tanulo.C_NYOMTATASINEV
END