kreta/Kreta.DataAccess.Migrations/DBScripts/Database/dbo/Stored procedures/sp_GetIktSzandeknyilatkozatAdatok.sql
2024-03-13 00:33:46 +01:00

97 lines
No EOL
3.6 KiB
Transact-SQL

DROP PROCEDURE IF EXISTS [dbo].[sp_GetIktSzandeknyilatkozatAdatok]
GO
-- =============================================
-- Description: <Elõszedjük az IKT szándéknyilatkozat adatokat>
-- =============================================
CREATE PROCEDURE [dbo].[sp_GetIktSzandeknyilatkozatAdatok]
@pIntezmenyId INT
,@pTanevId INT
,@pBesorolasiFokozatTipusEnumNa INT
,@pCimTipusEnumAllandoLakcim INT
AS
BEGIN
SET NOCOUNT ON;
SELECT DISTINCT
felhasznalo.C_NYOMTATASINEV PedagogusNev
,cim.C_IRANYITOSZAM + ', ' + cim.C_VAROS + ', ' + cim.C_KOZTERULET + ' ' +
cim.C_KOZTERULETJELLEGENEV + ' ' + ISNULL(cim.C_HAZSZAM, '') +
IIF (felhasznalo.C_IGAZOLVANYSZAM IS NOT NULL, ', ' + felhasznalo.C_IGAZOLVANYSZAM, '') PedagogusAdatok
,REPLACE(REPLACE(felhasznalo.C_NYOMTATASINEV, '[', ''), ']', '') +
IIF (felhasznalo.C_IGAZOLVANYSZAM IS NOT NULL, ' - ' + felhasznalo.C_IGAZOLVANYSZAM, '') Qr
FROM
T_FELHASZNALO_OSSZES felhasznalo
INNER JOIN
T_MUNKAUGYIADATOK_OSSZES munkaugyiAdatok ON
munkaugyiAdatok.C_ALKALMAZOTTID = felhasznalo.ID
AND munkaugyiAdatok.C_INTEZMENYID = @pIntezmenyId
AND munkaugyiAdatok.C_TANEVID = @pTanevId
AND munkaugyiAdatok.TOROLT = 'F'
INNER JOIN
T_ALKALMAZOTT_OSSZES alkalmazott ON
alkalmazott.ID = felhasznalo.ID
AND alkalmazott.C_ALINTEZMENYID = @pIntezmenyId
AND alkalmazott.C_ALTANEVID = @pTanevId
AND alkalmazott.TOROLT = 'F'
CROSS APPLY
(SELECT TOP 1 *
FROM
T_CIM_OSSZES cim
WHERE
cim.C_FELHASZNALOID = felhasznalo.ID
AND cim.TOROLT = 'F'
AND cim.C_CIMTIPUSA = @pCimTipusEnumAllandoLakcim
) cim
WHERE
felhasznalo.C_INTEZMENYID = @pIntezmenyId
AND felhasznalo.C_TANEVID = @pTanevId
AND felhasznalo.TOROLT = 'F'
AND munkaugyiAdatok.C_BESOROLASIFOKOZAT NOT IN (@pBesorolasiFokozatTipusEnumNa)
AND alkalmazott.C_ELFOGADOTTSZANDEKNYILATKOZAT = 'T'
SELECT
intezmenyAdatok.C_VAROS Szekhely
,intezmenyAdatok.C_NEV Nev
,intezmenyAdatok.C_OMKOD OmKod
,intezmenyAdatok.C_IGAZGATONEVE Vezeto
,IIF (felhasznalo.ID IS NOT NULL,
cim.C_IRANYITOSZAM + ', ' + cim.C_VAROS + ', ' + cim.C_KOZTERULET + ' ' +
cim.C_KOZTERULETJELLEGENEV + ' ' + ISNULL(cim.C_HAZSZAM, '') +
IIF (felhasznalo.C_IGAZOLVANYSZAM IS NOT NULL, ', ' + felhasznalo.C_IGAZOLVANYSZAM, ''),
+ '-') VezetoAdatok
FROM
T_INTEZMENYADATOK_OSSZES intezmenyAdatok
OUTER APPLY
(SELECT TOP 1 *
FROM
T_FELHASZNALO_OSSZES felhasznalo
WHERE
felhasznalo.C_NYOMTATASINEV LIKE '%' + intezmenyAdatok.C_IGAZGATONEVE + '%'
AND felhasznalo.C_INTEZMENYID = @pIntezmenyId
AND felhasznalo.C_TANEVID = @pTanevId
AND felhasznalo.TOROLT = 'F'
) felhasznalo
OUTER APPLY
(SELECT TOP 1 *
FROM
T_CIM_OSSZES cim
WHERE
cim.C_FELHASZNALOID = felhasznalo.ID
AND cim.C_INTEZMENYID = @pIntezmenyId
AND cim.C_TANEVID = @pTanevId
AND cim.TOROLT = 'F'
ORDER BY
cim.C_ALAPERTELMEZETT DESC
,cim.LASTCHANGED DESC
) cim
WHERE
intezmenyAdatok.C_INTEZMENYID = @pIntezmenyId
AND intezmenyAdatok.C_TANEVID = @pTanevId
AND intezmenyAdatok.TOROLT = 'F'
END
GO