This commit is contained in:
skidoodle 2024-03-13 00:33:46 +01:00
commit e124a47765
19374 changed files with 9806149 additions and 0 deletions

View file

@ -0,0 +1,124 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
DROP PROCEDURE IF EXISTS [dbo].[sp_GetKozossegiSzolgalatokReszletek]
GO
-- =============================================
-- Description: <Előszedjük a tanuló közösségi szolgálatait részletesen>
-- =============================================
CREATE PROCEDURE [dbo].[sp_GetKozossegiSzolgalatokReszletek]
@pIntezmenyId INT
,@pTanevId INT
,@pTanuloId INT = NULL
,@pTanarId INT = NULL
,@pToroltElemek CHAR = 'F'
,@pIntervallumKezdete DATETIME = NULL
,@pIntervallumVege DATETIME = NULL
,@pTeljesitesHelye NVARCHAR = NULL
,@pOraszam INT = NULL
,@pKozossegiSzolgalatTipusa INT = NULL
AS
BEGIN
SET NOCOUNT ON;
DECLARE
@sql nvarchar(max)
,@selectSql nvarchar(max)
,@whereSql nvarchar(max)
,@orderSql nvarchar(max)
SET @selectSql = N'
SELECT
KozossegiSzolgalat.ID ID
,KozossegiSzolgalat.C_INTERVALLUMKEZDETE IntervallumKezdete
,KozossegiSzolgalat.C_INTERVALLUMVEGE IntervallumVege
,KozossegiSzolgalat.C_ROGZITESDATUM RogzitesDatuma
,KozossegiSzolgalat.C_TELJESITESIHELYE TeljesitesiHelye
,KozossegiSzolgalat.C_ORASZAM Oraszam
,KozossegiSzolgalat.C_KOZOSSEGISZOLGALATTIPUSA KozossegiSzolgalatTipusa
,KozossegiSzolgalat.C_MEGJEGYZES Megjegyzes
,KozossegiSzolgalat.TOROLT Torolt
,KozossegiSzolgalat.C_TANULOID TanuloId
,Tanulo.C_NYOMTATASINEV TanuloNev
,KozossegiSzolgalat.C_UGYIRATSZAM Ugyiratszam
,CASE
WHEN KozossegiSzolgalat.C_FELJEGYZOID = @pTanarId AND @pToroltElemek = ''T''
THEN ''T''
ELSE ''F''
END Modosithato
FROM T_TANULOKOZOSSEGISZOLGALAT_OSSZES KozossegiSzolgalat
INNER JOIN T_FELHASZNALO_OSSZES Tanulo ON KozossegiSzolgalat.C_TANULOID = Tanulo.ID AND Tanulo.TOROLT = ''F''
'
SET @whereSql = N'
WHERE
KozossegiSzolgalat.C_INTEZMENYID = @pIntezmenyId
AND KozossegiSzolgalat.TOROLT = IIF(@pToroltElemek = ''T'', KozossegiSzolgalat.TOROLT, ''F'')'
IF @pTanuloId IS NOT NULL BEGIN
SET @whereSql = N'
AND KozossegiSzolgalat.C_TANULOID = @pTanuloId'
END
IF @pIntervallumKezdete IS NOT NULL BEGIN
SET @whereSql = N'
AND KozossegiSzolgalat.C_INTERVALLUMKEZDETE = @pIntervallumKezdete'
END
IF @pIntervallumVege IS NOT NULL BEGIN
SET @whereSql = N'
AND KozossegiSzolgalat.C_INTERVALLUMVEGE = @pIntervallumVege'
END
IF @pTeljesitesHelye IS NOT NULL BEGIN
SET @whereSql = N'
AND KozossegiSzolgalat.C_TELJESITESIHELYE LIKE ''%''+ @pTeljesitesHelye +''%'''
END
IF @pOraszam IS NOT NULL BEGIN
SET @whereSql = N'
AND KozossegiSzolgalat.C_ORASZAM = @pOraszam'
END
IF @pKozossegiSzolgalatTipusa IS NOT NULL BEGIN
SET @whereSql = N'
AND KozossegiSzolgalat.C_KOZOSSEGISZOLGALATTIPUSA = @pKozossegiSzolgalatTipusa'
END
SET @orderSql = N'
ORDER BY
KozossegiSzolgalat.C_INTERVALLUMKEZDETE DESC'
SET @sql = @selectSql + @whereSql + @orderSql
EXEC sp_executesql @sql, N'
@pIntezmenyId INT
,@pTanevId INT
,@pTanuloId INT = NULL
,@pTanarId INT = NULL
,@pToroltElemek CHAR
,@pIntervallumKezdete DATETIME = NULL
,@pIntervallumVege DATETIME = NULL
,@pTeljesitesHelye NVARCHAR = NULL
,@pOraszam INT = NULL
,@pKozossegiSzolgalatTipusa INT = NULL'
,@pIntezmenyId = @pIntezmenyId
,@pTanevId = @pTanevId
,@pTanuloId = @pTanuloId
,@pTanarId = @pTanarId
,@pToroltElemek = @pToroltElemek
,@pIntervallumKezdete = @pIntervallumKezdete
,@pIntervallumVege = @pIntervallumVege
,@pTeljesitesHelye = @pTeljesitesHelye
,@pOraszam = @pOraszam
,@pKozossegiSzolgalatTipusa = @pKozossegiSzolgalatTipusa
END