75 lines
3.3 KiB
Transact-SQL
75 lines
3.3 KiB
Transact-SQL
-- =============================================
|
|
-- Description: <Ellenőrizzuk, hogy a megadott 4T alapján szerepel-e az adatbázisban>
|
|
-- =============================================
|
|
DROP PROCEDURE IF EXISTS [dbo].[sp_Check4TValidation]
|
|
GO
|
|
|
|
CREATE PROCEDURE [dbo].[sp_Check4TValidation]
|
|
@pCheckValidationType int,
|
|
@pElotag nvarchar(255),
|
|
@pVezeteknev nvarchar(255),
|
|
@pUtonev nvarchar(255),
|
|
@pAnyjaNeve nvarchar(255) = null,
|
|
@pAnyjaVezeteknev nvarchar(255) = null,
|
|
@pAnyjaUtonev nvarchar(255) = null,
|
|
@pSzuletesiHely nvarchar(255),
|
|
@pSzuletesiDatum datetime,
|
|
@pTanevId int = null,
|
|
@pUserId int = null,
|
|
@pFelvetelStatuszaFelveve int = null,
|
|
@pFelvetelStatuszaNemFelveve int = null
|
|
AS
|
|
BEGIN
|
|
SET NOCOUNT ON;
|
|
|
|
IF (@pCheckValidationType = 1) /* Tanuló */
|
|
BEGIN
|
|
IF (@pUserId IS NOT NULL)
|
|
SELECT f.ID FROM T_FELHASZNALO_OSSZES f
|
|
JOIN T_TANULO_OSSZES t on t.ID = f.ID
|
|
WHERE
|
|
f.C_VEZETEKNEV = @pVezeteknev AND f.C_UTONEV = @pUtonev AND f.C_ANYJANEVE = @pAnyjaNeve
|
|
AND f.C_SZULETESIHELY = @pSzuletesiHely AND f.C_SZULETESIDATUM = @pSzuletesiDatum AND f.ID != @pUserId
|
|
AND f.C_TANEVID = @pTanevId AND f.TOROLT = 'F' AND ISNULL(f.C_ELOTAG,'') = @pElotag
|
|
ELSE
|
|
SELECT f.ID FROM T_FELHASZNALO_OSSZES f
|
|
JOIN T_TANULO_OSSZES t on t.ID = f.ID
|
|
WHERE
|
|
f.C_VEZETEKNEV = @pVezeteknev AND f.C_UTONEV = @pUtonev AND f.C_ANYJANEVE = @pAnyjaNeve
|
|
AND f.C_SZULETESIHELY = @pSzuletesiHely AND f.C_SZULETESIDATUM = @pSzuletesiDatum
|
|
AND f.C_TANEVID = @pTanevId AND f.TOROLT = 'F' AND ISNULL(f.C_ELOTAG,'') = @pElotag
|
|
END
|
|
ELSE IF (@pCheckValidationType = 2) /* Alkalmazott */
|
|
BEGIN
|
|
IF (@pUserId IS NOT NULL)
|
|
SELECT f.ID FROM T_FELHASZNALO_OSSZES f
|
|
JOIN T_ALKALMAZOTT_OSSZES a on a.ID = f.ID
|
|
WHERE
|
|
f.C_VEZETEKNEV = @pVezeteknev AND f.C_UTONEV = @pUtonev AND f.C_ANYJANEVE = @pAnyjaNeve
|
|
AND f.C_SZULETESIHELY = @pSzuletesiHely AND f.C_SZULETESIDATUM = @pSzuletesiDatum AND f.ID != @pUserId
|
|
AND f.C_TANEVID = @pTanevId AND f.TOROLT = 'F' AND ISNULL(f.C_ELOTAG,'') = @pElotag
|
|
ELSE
|
|
SELECT f.ID FROM T_FELHASZNALO_OSSZES f
|
|
JOIN T_ALKALMAZOTT_OSSZES a on a.ID = f.ID
|
|
WHERE
|
|
f.C_VEZETEKNEV = @pVezeteknev AND f.C_UTONEV = @pUtonev AND f.C_ANYJANEVE = @pAnyjaNeve
|
|
AND f.C_SZULETESIHELY = @pSzuletesiHely AND f.C_SZULETESIDATUM = @pSzuletesiDatum
|
|
AND f.C_TANEVID = @pTanevId AND f.TOROLT = 'F' AND ISNULL(f.C_ELOTAG,'') = @pElotag
|
|
END
|
|
ELSE IF (@pCheckValidationType = 3) /* Nebuló */
|
|
BEGIN
|
|
IF EXISTS (SELECT 1 FROM T_NEBULO n
|
|
WHERE
|
|
n.C_TANULOCSALADINEVE = @pVezeteknev AND n.C_TANULOUTONEVE = @pUtonev
|
|
AND n.C_EDESANYJASZULETESICSALADINEV = @pAnyjaVezeteknev AND n.C_EDESANYJASZULETESIUTONEVE = @pAnyjaUtonev
|
|
AND n.C_SZULETESIHELY = @pSzuletesiHely AND n.C_SZULETESIIDO = @pSzuletesiDatum
|
|
AND (@pUserId IS NULL OR ID != @pUserId) AND (n.C_FELVETELSTATUSZA = @pFelvetelStatuszaFelveve OR n.C_FELVETELSTATUSZA = @pFelvetelStatuszaNemFelveve) AND n.TOROLT = 'F'
|
|
AND ISNULL(n.C_ELOTAG,'') = @pElotag
|
|
)
|
|
SELECT 1
|
|
ELSE
|
|
SELECT 0
|
|
END
|
|
|
|
END
|
|
GO
|