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

View File

@@ -0,0 +1,7 @@
DISABLE TRIGGER ALL ON T_CIM;
UPDATE Cim
SET Cim.C_KOZTERULETJELLEGENEV = dib.C_NAME
FROM T_CIM Cim
INNER JOIN T_DICTIONARYITEMBASE dib ON Cim.C_KOZTERULETJELLEGE = dib.ID
AND Cim.C_TANEVID = dib.C_TANEVID;
ENABLE TRIGGER ALL ON T_CIM;

View File

@@ -0,0 +1,56 @@
IF OBJECT_ID('fnGetDokumentumTanuloOrGondviseloCim') IS NOT NULL BEGIN
DROP FUNCTION fnGetDokumentumTanuloOrGondviseloCim
END
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE FUNCTION fnGetDokumentumTanuloOrGondviseloCim (@TanuloOrGondviselo BIT, @pTanevId INT, @pOsztalyId INT)
RETURNS @result TABLE
(
TanuloId INT,
Cim NVARCHAR(MAX),
CimTipusa INT,
GondviseloId INT
)
AS
BEGIN
IF @TanuloOrGondviselo = 0 BEGIN
INSERT INTO @result(TanuloId, Cim, CimTipusa, GondviseloId)
SELECT
Tanulo.C_TANULOID AS TanuloId
,cim.C_IRANYITOSZAM + ' ' + cim.C_VAROS + ', ' + cim.C_KOZTERULET + ' ' + cim.C_KOZTERULETJELLEGENEV + ' ' + cim.C_HAZSZAM AS Cim
,cim.C_CIMTIPUSA AS CimTipusa
,cim.C_GONDVISELOID AS GondviseloId
FROM T_TANULOCSOPORT_OSSZES Tanulo
INNER JOIN T_CIM_OSSZES cim on cim.C_FELHASZNALOID = Tanulo.C_TANULOID AND cim.C_GONDVISELOID IS NULL AND cim.TOROLT = 'F'
INNER JOIN T_DICTIONARYITEMBASE_OSSZES cimTipusa on cimTipusa.ID = cim.C_CIMTIPUSA AND cimTipusa.C_TANEVID = @pTanevId
WHERE Tanulo.C_TANEVID = @pTanevId
AND Tanulo.C_OSZTALYCSOPORTID = @pOsztalyId
AND Tanulo.TOROLT = 'F'
ORDER BY cimTipusa.C_NAME ASC, cim.C_ALAPERTELMEZETT DESC
END
ELSE IF @TanuloOrGondviselo = 1 BEGIN
INSERT INTO @result(TanuloId, Cim, CimTipusa, GondviseloId)
SELECT
Tanulo.C_TANULOID AS TanuloId
,cim.C_IRANYITOSZAM + ' ' + cim.C_VAROS + ', ' + cim.C_KOZTERULET + ' ' + cim.C_KOZTERULETJELLEGENEV + ' ' + cim.C_HAZSZAM + '.' + ' ' + ISNULL(cim.C_EMELET + '/', ' ') + ISNULL(cim.C_AJTO, ' ') AS Cim
,cim.C_CIMTIPUSA AS CimTipusa
,cim.C_GONDVISELOID AS GondviseloId
FROM T_TANULOCSOPORT_OSSZES Tanulo
INNER JOIN T_GONDVISELO_OSSZES Gondviselo ON Gondviselo.C_TANULOID = Tanulo.C_TANULOID
INNER JOIN T_CIM_OSSZES cim ON cim.C_GONDVISELOID = Gondviselo.ID AND cim.TOROLT = 'F'
INNER JOIN T_DICTIONARYITEMBASE_OSSZES cimTipusa on cimTipusa.ID = cim.C_CIMTIPUSA AND cimTipusa.C_TANEVID = @pTanevId
WHERE Tanulo.C_TANEVID = @pTanevId
AND Tanulo.C_OSZTALYCSOPORTID = @pOsztalyId
AND Tanulo.TOROLT = 'F'
ORDER BY cimTipusa.C_NAME ASC, cim.C_ALAPERTELMEZETT DESC
END
RETURN
END

View File

@@ -0,0 +1,108 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetIktSzandeknyilatkozatAdatok]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetIktSzandeknyilatkozatAdatok]
END
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 added to prevent extra result sets from
-- interfering with SELECT statements.
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

View File

@@ -0,0 +1,131 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetNebuloErtesito]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetNebuloErtesito]
END
GO
CREATE PROCEDURE [dbo].[sp_GetNebuloErtesito]
-- Add the parameters for the stored procedure here
@intezmenyId INT
,@tanevId INT
,@nebulo INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SELECT
nebulo.ID NebuloId
,ISNULL(C_ELOTAG + ' ', '') + C_SZULETESICSALADINEVE + ' ' + C_SZULETESIUTONEVE NebuloSzuletesiNeve
,ISNULL(C_ELOTAG + ' ', '') + C_TANULOCSALADINEVE + ' ' + C_TANULOUTONEVE NebuloNeve
,ISNULL(intezmenyAdatok.C_NEV, '') IntezmenyNeve
,ISNULL(tagozat.C_NAME, '') Tagozat
,ISNULL(C_EDESANYJASZULETESICSALADINEV, '') + ' ' + ISNULL(C_EDESANYJASZULETESIUTONEVE, '') AnyjaSzuletesiNeve
,ISNULL(neme.C_NAME, '') TanuloNeme
,ISNULL(C_SZULETESIHELY, '') SzulHely
,FORMAT(C_SZULETESIIDO, 'yyyy.MM.dd.') SzulIdo
,ISNULL(anyanyelv.C_NAME, '') AnyaNyelv
,ISNULL(allampolgarsag1.C_NAME, '') AllamPolgarsag1
,ISNULL(allampolgarsag2.C_NAME, '') AllamPolgarsag2
,CONVERT(NVARCHAR(MAX), nebulo.C_IRANYITOSZAM) + ', ' + --
C_HELYSEGNEV + --
ISNULL(', ' + nebulo.C_KOZTERULETNEV, '') + ' ' + --
nebulo.C_KOZTERULETJELLEGENEV + --
ISNULL(' ' + nebulo.C_HAZSZAM + ', ', '') + --
ISNULL(nebulo.C_EMELET + ' emelet', '') + ' ' + --
ISNULL(nebulo.C_AJTO + ' ajtó', '') NebuloAllandoCim
,CONVERT(NVARCHAR(MAX), nebulo.C_THIRANYITOSZAM) + --
ISNULL(', ' + C_THHELYSEGNEV, '') + --
ISNULL(', ' + nebulo.C_THKOZTERULETNEV, '') + ' ' + --
nebulo.C_KOZTERULETJELLEGENEV + --
ISNULL(' ' + nebulo.C_THHAZSZAM + ', ', '') + --
ISNULL(nebulo.C_THEMELET + ' emelet', '') + --
ISNULL(' ' + nebulo.C_THAJTO + ' ajtó', '') NebuloCimTh
,ISNULL(C_OKTATASIAZONOSITOSZAMA, '') OktAzon
,ISNULL(C_ETIKAHITERKOLCSTAN, '') EtikaHitErkolcsTan
,C_TKNEVE TorvGondNeve1
,tk1Foka.C_NAME TorvRokFoka1
,C_TKTELEFON TorvGondTel1
,C_TKEMAILCIM TorvGondEmail1
,CONVERT(NVARCHAR(MAX), nebulo.C_TKIRANYITOSZAM) + --
ISNULL(', ' + C_TKHELYSEGNEV, '') + --
ISNULL(', ' + nebulo.C_TKKOZTERULETNEV, '') + ' ' + --
ISNULL(koztJellegTK1.C_NAME, '') + --
ISNULL(nebulo.C_TKHAZSZAM + ', ', '') + --
ISNULL(nebulo.C_TKEMELET + ' emelet', '') + --
ISNULL(' ' + nebulo.C_TKAJTO + ' ajtó', '') TorvGond1Cim
,C_TKNEVE2 TorvGondNeve2
,tk2Foka.C_NAME TorvRokFoka2
,C_TKTELEFON2 TorvGondTel2
,C_TKEMAILCIM2 TorvGondEmail2
,CONVERT(NVARCHAR(MAX), nebulo.C_TKIRANYITOSZAM2) + --
ISNULL(', ' + C_TKHELYSEGNEV2, '') + --
ISNULL(', ' + nebulo.C_TKKOZTERULETNEV2, '') + ' ' + --
koztJellegTK2.C_NAME + --
ISNULL(', ' + nebulo.C_TKHAZSZAM2 + ', ', '') + --
ISNULL(nebulo.C_TKEMELET2 + ' emelet', '') + --
ISNULL(' ' + nebulo.C_TKAJTO2 + ' ajtó', '') TorvGond2Cim
,intezmenyAdatok.C_IGAZGATONEVE IntezmenyVezetoNeve
,intezmenyAdatok.C_NEV IntezmenyNeve
,CONVERT(NVARCHAR(MAX),intezmenyAdatok.C_IRANYITOSZAM) + --
ISNULL(', ' + intezmenyAdatok.C_VAROS, '') + --
ISNULL(', ' + intezmenyAdatok.C_KOZTERULETNEV, '') + ' ' + --
ISNULL(iaKoztJell.C_NAME, '') + --
ISNULL(intezmenyAdatok.C_HAZSZAM + ', ', '') + --
ISNULL(intezmenyAdatok.C_EMELET + ' emelet', '') + --
ISNULL(intezmenyAdatok.C_AJTO + ' ajtó', '') IntezmenyCim
,intezmenyAdatok.C_EMAILCIM IntezmenyEmail
,intezmenyAdatok.C_TELEFONSZAM IntezmenyTelefon
,intezmenyAdatok.C_DOKUMENTUMFEJLEC Fejlec
,intezmenyAdatok.C_DOKUMENTUMLABLEC Lablec
FROM T_NEBULO_OSSZES nebulo
LEFT JOIN
T_INTEZMENYADATOK_OSSZES intezmenyAdatok ON
intezmenyAdatok.C_INTEZMENYID = nebulo.C_INTEZMENYID AND nebulo.C_TANEVID = intezmenyAdatok.C_TANEVID
LEFT JOIN
T_DICTIONARYITEMBASE_OSSZES tagozat ON
tagozat.ID = nebulo.C_TAGOZAT AND tagozat.C_TANEVID = nebulo.C_TANEVID AND tagozat.C_INTEZMENYID = nebulo.C_INTEZMENYID
LEFT JOIN
T_DICTIONARYITEMBASE_OSSZES neme ON
neme.ID = nebulo.C_NEME AND neme.C_TANEVID = nebulo.C_TANEVID AND neme.C_INTEZMENYID = nebulo.C_INTEZMENYID
LEFT JOIN
T_DICTIONARYITEMBASE_OSSZES anyanyelv ON
anyanyelv.ID = nebulo.C_ANYANYELVE AND anyanyelv.C_TANEVID = nebulo.C_TANEVID AND anyanyelv.C_INTEZMENYID = nebulo.C_INTEZMENYID
LEFT JOIN
T_DICTIONARYITEMBASE_OSSZES allampolgarsag1 ON
allampolgarsag1.ID = nebulo.C_ALLAMPOLGARSAGA AND allampolgarsag1.C_TANEVID = nebulo.C_TANEVID AND allampolgarsag1.C_INTEZMENYID = nebulo.C_INTEZMENYID
LEFT JOIN
T_DICTIONARYITEMBASE_OSSZES allampolgarsag2 ON
allampolgarsag2.ID = nebulo.C_ALLAMPOLGARSAGA2 AND allampolgarsag2.C_TANEVID = nebulo.C_TANEVID AND allampolgarsag2.C_INTEZMENYID = nebulo.C_INTEZMENYID
LEFT JOIN
T_DICTIONARYITEMBASE_OSSZES tk1Foka ON
tk1Foka.ID = nebulo.C_TKROKONSAGIFOKA AND tk1Foka.C_TANEVID = nebulo.C_TANEVID AND tk1Foka.C_INTEZMENYID = nebulo.C_INTEZMENYID
LEFT JOIN
T_DICTIONARYITEMBASE_OSSZES koztJellegTK1 ON
koztJellegTK1.ID = nebulo.C_TKKOZTERULETJELLEGE AND koztJellegTK1.C_TANEVID = nebulo.C_TANEVID AND koztJellegTK1.C_INTEZMENYID = nebulo.C_INTEZMENYID
LEFT JOIN
T_DICTIONARYITEMBASE_OSSZES tk2Foka ON
tk2Foka.ID = nebulo.C_TKROKONSAGIFOKA2 AND tk2Foka.C_TANEVID = nebulo.C_TANEVID AND tk2Foka.C_INTEZMENYID = nebulo.C_INTEZMENYID
LEFT JOIN
T_DICTIONARYITEMBASE_OSSZES koztJellegTK2 ON
koztJellegTK2.ID = nebulo.C_TKKOZTERULETJELLEGE2 AND koztJellegTK2.C_TANEVID = nebulo.C_TANEVID AND koztJellegTK2.C_INTEZMENYID = nebulo.C_INTEZMENYID
LEFT JOIN
T_DICTIONARYITEMBASE_OSSZES iaKoztJell ON
iaKoztJell.ID = intezmenyAdatok.C_KOZTERULETJELLEG AND iaKoztJell.C_TANEVID = nebulo.C_TANEVID AND iaKoztJell.C_INTEZMENYID = nebulo.C_INTEZMENYID
WHERE
nebulo.TOROLT = 'F'
AND nebulo.C_TANEVID = @tanevId
AND nebulo.C_INTEZMENYID = @intezmenyId
AND nebulo.ID = @nebulo --5401 FELVETT, 5402 NEM FELVÉVE
END
GO

View File

@@ -0,0 +1,57 @@
-- =============================================
-- Description: <Előszedjük a tanuló gondviselő adatait>
-- =============================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_GetTanuloiGondviseloAdatok]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_GetTanuloiGondviseloAdatok]
END
GO
CREATE PROCEDURE [dbo].[sp_GetTanuloiGondviseloAdatok]
@pTanuloId INT
,@pTanevId INT
,@pIntezmenyId INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements.
SET NOCOUNT ON;
--NOTE: 0. tábla - Gondviselo adatok
SELECT
g.ID AS GondviseloId
,g.C_NEV AS GondviseloNeve
,fhb.C_UTOLSOBELEPES AS UtolsoBelepes
,e.C_EMAILCIM AS EmailCim
,t.C_TELEFONSZAM AS Telefonszam
FROM T_GONDVISELO_OSSZES g
LEFT JOIN T_FELHASZNALOBELEPES_OSSZES fhb ON fhb.C_GONDVISELOID = g.ID AND fhb.TOROLT = 'F'
LEFT JOIN T_EMAIL_OSSZES e ON e.C_GONDVISELOID = g.ID AND e.TOROLT = 'F'
LEFT JOIN T_TELEFON_OSSZES t ON t.C_GONDVISELOID = g.ID AND t.TOROLT = 'F'
WHERE g.C_TANULOID = @pTanuloId AND g.TOROLT = 'F'
--NOTE: 1. tábla - Gondviselo címek
SELECT
g.ID AS GondviseloId
,c.C_IRANYITOSZAM + ', ' +
c.C_VAROS + ', ' +
c.C_KOZTERULET + ' ' +
c.C_KOZTERULETJELLEGENEV + ' ' +
ISNULL(c.C_HAZSZAM, '') AS CimText
,dibCTip.C_NAME AS CimTipus
,c.C_CIMTIPUSA AS CimTipusId
FROM T_GONDVISELO_OSSZES g
LEFT JOIN T_CIM_OSSZES c ON c.C_GONDVISELOID = g.ID AND c.TOROLT = 'F'
INNER JOIN T_DICTIONARYITEMBASE_OSSZES dibCTip ON dibCTip.ID = c.C_CIMTIPUSA AND dibCTip.C_TANEVID = @pTanevId AND dibCTip.TOROLT = 'F' AND dibCTip.C_INTEZMENYID=@pIntezmenyId
WHERE g.C_TANULOID = @pTanuloId AND g.TOROLT = 'F'
END
GO

View File

@@ -0,0 +1,500 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
DROP PROCEDURE IF EXISTS [dbo].[sp_KIRImportTanulok]
GO
CREATE PROCEDURE [dbo].[sp_KIRImportTanulok]
-- Add the parameters for the stored procedure here
@TanulokXML as XML,
@intezmenyID int,
@tanevID int,
@userId int
AS
BEGIN
SET NOCOUNT ON;
DECLARE
@TantervID int,
@userNameGenerateMode int
DECLARE @linkTable TABLE (
tempId int,
insertedId int,
act varchar(10)
)
-- XML paraméter értelmezése
SELECT ID = Tanulo.value('(ID)[1]', 'int'),
OktatasiAzonosito = Tanulo.value('(OktatasiAzonosito)[1]', 'varchar(15)'),
KretaKod = Tanulo.value('(KretaKod)[1]', 'varchar(6)'),
VezetekNev = Tanulo.value('(ViseltNevVezetekNev)[1]', 'nvarchar(50)'), UtoNev = Tanulo.value('(ViseltNevKeresztNev)[1]', 'nvarchar(50)'),
Elotag = Tanulo.value('(ViseltNevElotag)[1]', 'nvarchar(10)'), NevSorrend = Tanulo.value('(ViseltNevNevSorrend)[1]', 'char(1)'),
SzuletesiNevVezetekNev = Tanulo.value('(SzuletesiNevVezetekNev)[1]', 'nvarchar(50)'), SzuletesiNevUtoNev = Tanulo.value('(SzuletesiNevKeresztNev)[1]', 'nvarchar(50)'),
SzuletesiNevNevSorrend = Tanulo.value('(SzuletesiNevNevSorrend)[1]', 'char(1)'),
AnyjaNeveElotag = Tanulo.value('(AnyjaNeveElotag)[1]', 'nvarchar(10)'), AnyjaNeveVezetekNev = Tanulo.value('(AnyjaNeveVezetekNev)[1]', 'nvarchar(50)'),
AnyjaNeveKeresztNev = Tanulo.value('(AnyjaNeveKeresztNev)[1]', 'nvarchar(50)'), AnyjaNeveNevSorrend = Tanulo.value('(AnyjaNeveNevSorrend)[1]', 'nvarchar(50)'),
SzuletesiDatum = Tanulo.value('(SzuletesiDatum)[1]', 'date'), SzuletesiHely = Tanulo.value('(SzuletesiHely)[1]', 'nvarchar(255)'),
SzuletesiOrszag = Tanulo.value('(SzuletesiOrszag)[1]', 'int'), Allampolgarsag = Tanulo.value('(Allampolgarsag)[1]', 'int'),
Nem = Tanulo.value('(Nem)[1]', 'int'), TAJSzam = Tanulo.value('(TAJSzam)[1]', 'nvarchar(15)'),
AllandoLakcimIranyitoSzam = Tanulo.value('(AllandoLakcimIranyitoSzam)[1]', 'nvarchar(10)'), AllandoLakcimTelepules = Tanulo.value('(AllandoLakcimTelepules)[1]', 'nvarchar(255)'),
AllandoLakcimKozteruletNev = Tanulo.value('(AllandoLakcimKozteruletNev)[1]', 'nvarchar(255)'),
AllandoLakcimKozteruletJelleg = Tanulo.value('number((AllandoLakcimKozteruletJelleg)[1])', 'int'),
AllandoLakcimKozteruletJellegNev = Tanulo.value('(AllandoLakcimKozteruletJellegNev)[1]', 'nvarchar(100)'),
AllandoLakcimHazszam = Tanulo.value('(AllandoLakcimHazszam)[1]', 'nvarchar(20)'), TartozkodasiCimTelepules = Tanulo.value('(TartozkodasiCimTelepules)[1]', 'nvarchar(255)'),
TartozkodasiCimKozteruletNev = Tanulo.value('(TartozkodasiCimKozteruletNev)[1]', 'nvarchar(255)'),
TartozkodasiCimKozteruletJelleg = Tanulo.value('number((TartozkodasiCimKozteruletJelleg)[1])', 'int'),
TartozkodasiCimKozteruletJellegNev = Tanulo.value('(TartozkodasiCimKozteruletJellegNev)[1]', 'nvarchar(100)'),
TartozkodasiCimHazszam = Tanulo.value('(TartozkodasiCimHazszam)[1]', 'nvarchar(20)'), TartozkodasiCimIranyitoszam = Tanulo.value('(TartozkodasiCimIranyitoSzam)[1]', 'nvarchar(20)'),
TankotelezettsegVege = Tanulo.value('(TankotelezettsegVege)[1]', 'date'),
TankotelezettsegetTeljesito = Tanulo.value('(TankotelezettsegetTeljesito)[1]', 'char'), SajatosNevelesIgenyu = Tanulo.value('(SajatosNevelesIgenyu)[1]', 'char'),
BeilleszkedesselKuzd = Tanulo.value('(BeilleszkedesselKuzd)[1]', 'char'), OMAzonosito = Tanulo.value('(OMAzonosito)[1]', 'nvarchar(20)'),
JogviszonyStatusza = Tanulo.value('(JogviszonyStatusza)[1]', 'nvarchar(50)'), JogviszonyKezdete = Tanulo.value('(JogviszonyKezdete)[1]', 'date'),
JogviszonyVarBefejezese = Tanulo.value('(JogviszonyVarBefejezese)[1]', 'date'), JogviszonyJellege = Tanulo.value('(JogviszonyJellege)[1]', 'nvarchar(50)'),
Vendegtanulo = Tanulo.value('(Vendegtanulo)[1]', 'char'), Magantanulo = Tanulo.value('(Magantanulo)[1]', 'char'),
Osztaly = Tanulo.value('(Osztaly)[1]', 'nvarchar(255)'),
KeresesiNev = Tanulo.value('(KeresesiNev)[1]', 'nvarchar(255)'), NyomtatasiNev = ltrim(Tanulo.value('(NyomtatasiNev)[1]', 'nvarchar(255)')),
Telefonszam = Tanulo.value('(Telefonszam)[1]', 'nvarchar(45)'),
AnyjaNeve = Tanulo.value('(AnyjaNeve)[1]', 'nvarchar(255)'),
EmailCim = Tanulo.value('(Email)[1]', 'nvarchar(200)'),
BejelentkezesiNev = Tanulo.value('(BejelentkezesiNev)[1]', 'nvarchar(255)'),
Jelszo = Tanulo.value('(Jelszo)[1]', 'nvarchar(64)'),
Salt = Tanulo.value('(Salt)[1]', 'nvarchar(64)'),
BelugyMiniszteriumSzemelyiadatEsLakcimNyilvantartasavalBeazonositott = Tanulo.value('(BelugyMiniszteriumSzemelyiadatEsLakcimNyilvantartasavalBeazonositott)[1]', 'char(1)'),
UtolsoSzemelyiadatEsLakcimNyilvantartasFrissitesIdopontja = Tanulo.value('(UtolsoSzemelyiadatEsLakcimNyilvantartasFrissitesIdopontja)[1]', 'date'),
0 AS isTanulo,
0 TanuloID
INTO #tempTanulok
FROM @TanulokXML.nodes('/KIRTanulok/ImportaltTanulok/Tanulo') as Tanulok(Tanulo)
-- A létezo felhasználók ID-ját kitöltjük, és az isTanulot is update-eljük
UPDATE t
SET t.TanuloID = fh.ID,
t.isTanulo = 1
FROM #tempTanulok t
INNER JOIN T_FELHASZNALO_OSSZES fh ON
t.NyomtatasiNev = fh.C_NYOMTATASINEV AND
t.SzuletesiDatum = fh.C_SZULETESIDATUM AND
t.SzuletesiHely = fh.C_SZULETESIHELY AND
t.AnyjaNeve = fh.C_ANYJANEVE AND
t.OktatasiAzonosito = fh.C_OKTATASIAZONOSITO
WHERE fh.TOROLT = 'F'
AND fh.C_TANEVID = @tanevID
AND fh.C_INTEZMENYID = @intezmenyID
AND NOT EXISTS (SELECT 1 FROM T_ALKALMAZOTT_OSSZES a WHERE a.ID = fh.ID)
AND EXISTS (SELECT 1 FROM T_TANULO_OSSZES tn WHERE tn.ID = fh.ID)
BEGIN TRY
BEGIN TRANSACTION
-- FELHASZNÁLÓK INSERTJE VAGY UPDATE-JE AKA MERGE
MERGE T_FELHASZNALO_OSSZES trg
USING #tempTanulok src ON src.TanuloID = trg.ID AND trg.C_TANEVID = @tanevID
WHEN MATCHED AND src.isTanulo = 1 THEN
UPDATE SET
trg.C_NEME = src.Nem,
trg.C_SZULETESIDATUM = src.SzuletesiDatum,
trg.C_SZULETESINEV = IIF(src.SzuletesiNevVezetekNev IS NULL, src.VezetekNev + ' ' +src.UtoNev, src.SzuletesiNevVezetekNev + ' ' + src.SzuletesiNevUtoNev),
trg.C_ANYJANEVE = src.AnyjaNeve,
trg.C_SZULETESIHELY = src.SzuletesiHely,
trg.C_ALLAMPOLGARSAGA = src.Allampolgarsag,
trg.C_KERESESINEV = src.KeresesiNev,
trg.C_SZULETESIORSZAG = src.SzuletesiOrszag,
trg.C_SZULETESINEVSORREND = IIF(src.SzuletesiNevNevSorrend IS NULL, 'F' , src.SzuletesiNevNevSorrend),
trg.C_ANYJANEVESORREND = src.AnyjaNeveNevSorrend,
trg.C_ALAPERTELMEZETTLCID = 1038,
trg.C_SZULETESINEVELVALASZTO = IIF(src.SzuletesiNevVezetekNev IS NULL ,LEN(src.VezetekNev) ,LEN(src.SzuletesiNevVezetekNev)),
trg.C_ANYJANEVEELVALASZTO = (LEN(src.AnyjaNeveVezetekNev) + IIF(src.AnyjaNeveElotag IS NULL OR LEN(src.AnyjaNeveElotag) = 0, 0, LEN(src.AnyjaNeveElotag) + 1)),
trg.C_NYOMTATASINEV = src.NyomtatasiNev,
trg.C_UTONEV = src.UtoNev,
trg.C_VEZETEKNEV = src.VezetekNev,
trg.C_ELOTAG = src.Elotag,
trg.C_NEVSORREND = src.NevSorrend,
trg.C_NYILVANTARTASKEZDETE = src.JogviszonyKezdete,
trg.C_OMKOD = src.OMAzonosito,
trg.C_KRETAKOD = src.KretaKod,
trg.TOROLT = 'F',
trg.SERIAL = trg.SERIAL + 1,
trg.LASTCHANGED = GETDATE(),
trg.MODIFIER = @userId,
trg.C_OKTATASIAZONOSITO = src.OktatasiAzonosito,
trg.C_BELUGYALTALAZONOSITOTT = src.BelugyMiniszteriumSzemelyiadatEsLakcimNyilvantartasavalBeazonositott,
trg.C_UTOLSOADATFRISSITESIDOPONTJA = src.UtolsoSzemelyiadatEsLakcimNyilvantartasFrissitesIdopontja
WHEN NOT MATCHED THEN
INSERT (
C_NEME
,C_SZULETESIDATUM
,C_SZULETESINEV
,C_ANYJANEVE
,C_SZULETESIHELY
,C_TAJSZAM
,C_ALLAMPOLGARSAGA
,C_LEIRAS
,C_KERESESINEV
,C_SZULETESIORSZAG
,C_SZULETESINEVSORREND
,C_ANYJANEVESORREND
,C_ALAPERTELMEZETTLCID
,C_SZULETESINEVELVALASZTO
,C_ANYJANEVEELVALASZTO
,C_NYOMTATASINEV
,C_UTONEV
,C_VEZETEKNEV
,C_ELOTAG
,C_NEVSORREND
,C_NYILVANTARTASKEZDETE
,C_OKTATASIAZONOSITO
,C_OMKOD
,C_KRETAKOD
,C_INTEZMENYID
,C_TANEVID
,MODIFIER
,CREATOR
,C_BELUGYALTALAZONOSITOTT
,C_UTOLSOADATFRISSITESIDOPONTJA
)
VALUES (
src.Nem
,src.SzuletesiDatum
,IIF(src.SzuletesiNevVezetekNev IS NULL, src.VezetekNev +' ' +src.UtoNev, src.SzuletesiNevVezetekNev + ' ' + src.SzuletesiNevUtoNev)
,src.AnyjaNeve
,src.SzuletesiHely
,src.TAJSzam
,src.Allampolgarsag
,src.JogviszonyJellege
,src.KeresesiNev
,src.SzuletesiOrszag
,IIF(src.SzuletesiNevNevSorrend IS NULL, 'F' , src.SzuletesiNevNevSorrend)
,src.AnyjaNeveNevSorrend
,1038
,IIF(src.SzuletesiNevVezetekNev IS NULL ,LEN(src.VezetekNev) ,LEN(src.SzuletesiNevVezetekNev))
,(LEN(src.AnyjaNeveVezetekNev) + IIF(src.AnyjaNeveElotag IS NULL OR LEN(src.AnyjaNeveElotag) = 0, 0, LEN(src.AnyjaNeveElotag) + 1))
,src.NyomtatasiNev
,src.UtoNev
,src.VezetekNev
,src.Elotag
,src.NevSorrend
,src.JogviszonyKezdete
,src.OktatasiAzonosito
,src.OMAzonosito
,src.KretaKod
,@intezmenyID
,@tanevID
,NULL
,@userId
,src.BelugyMiniszteriumSzemelyiadatEsLakcimNyilvantartasavalBeazonositott
,src.UtolsoSzemelyiadatEsLakcimNyilvantartasFrissitesIdopontja
)
OUTPUT INSERTED.ID, src.ID, $action
INTO @linkTable(insertedID, tempId, act);
SET @TantervID = (SELECT MAX(ID) FROM T_TANTERV_OSSZES WHERE C_TANEVID = @tanevID AND TOROLT = 'F')
MERGE T_TANULO_OSSZES trg
USING (
SELECT t.*, l.insertedId AS insertedID
FROM #tempTanulok t
INNER JOIN @linkTable l ON t.ID = l.tempID
) src ON src.TanuloID = trg.ID AND trg.C_ALTANEVID = @tanevID AND src.isTanulo = 1
WHEN MATCHED THEN
UPDATE SET
trg.C_TANKOTELEZETTSEGVEGE = src.TankotelezettsegVege,
trg.C_TANKOTELEZETT = src.TankotelezettsegetTeljesito,
trg.C_SAJATOSNEVELESU = src.SajatosNevelesIgenyu,
trg.C_BTMPROBLEMAS = src.BeilleszkedesselKuzd,
trg.C_JOGVISZONYVARHATOBEFEJEZESE = src.JogviszonyVarBefejezese,
trg.C_VENDEG = src.Vendegtanulo,
trg.C_MAGANTANULO = src.Magantanulo,
trg.C_JOGVISZONYATSZUNETELTETO = src.JogviszonyStatusza,
trg.C_FELVETELTANEVEID = @tanevID,
trg.C_TANTERVID = @TantervId,
trg.TOROLT = 'F',
trg.SERIAL = trg.SERIAL + 1,
trg.LASTCHANGED = GETDATE(),
trg.MODIFIER = @userId
WHEN NOT MATCHED THEN
INSERT (
ID
,C_TANKOTELEZETTSEGVEGE
,C_TANKOTELEZETT
,C_SAJATOSNEVELESU
,C_BTMPROBLEMAS
,C_JOGVISZONYVARHATOBEFEJEZESE
,C_VENDEG
,C_MAGANTANULO
,C_JOGVISZONYATSZUNETELTETO
,C_FELVETELTANEVEID
,C_TANTERVID
,C_ALINTEZMENYID
,C_ALTANEVID
,MODIFIER
,CREATOR
) VALUES (
src.insertedID
,src.TankotelezettsegVege
,src.TankotelezettsegetTeljesito
,src.SajatosNevelesIgenyu
,src.BeilleszkedesselKuzd
,src.JogviszonyVarBefejezese
,src.Vendegtanulo
,src.Magantanulo
,src.JogviszonyStatusza
,@tanevID
,@TantervId
,@intezmenyID
,@tanevID
,NULL
,@userId
);
-------FELHASZNALO BELEPES--------
SET @userNameGenerateMode = dbo.fnGetRendszerbeallitasEnumBool(2885, @intezmenyID, @tanevID)
IF @userNameGenerateMode <> 3 BEGIN
INSERT INTO [T_FELHASZNALOBELEPES_OSSZES] (
C_JELSZO
,C_BEJELENTKEZESINEV
,C_SO
,C_FELHASZNALOID
,C_INTEZMENYID
,C_TANEVID
,MODIFIER
,CREATOR
,C_GUID
) SELECT
t.Jelszo
,t.BejelentkezesiNev
,t.Salt
,fh.ID
,@intezmenyID
,@tanevID
,NULL
,@userId
,(select NEWID())
FROM #tempTanulok t
INNER JOIN @linkTable l ON t.ID = l.tempID
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ID = l.insertedId
WHERE NOT EXISTS (
SELECT 1
FROM T_FELHASZNALOBELEPES_OSSZES belepes
WHERE belepes.TOROLT = 'F'
AND ((belepes.C_FELHASZNALOID = fh.ID AND belepes.C_GONDVISELOID IS NULL)
OR belepes.C_BEJELENTKEZESINEV = t.BejelentkezesiNev)
)
END
--------FELHASZNALO SZEREPKÖR-----------
DECLARE @szerepkorId int
SELECT @szerepkorId = ID
FROM T_SZEREPKOR_OSSZES
WHERE C_SZEREPKORTIPUS = 1761
AND C_TANEVID = @tanevID
INSERT INTO T_FELHASZNALO_SZEREPKOR (C_FELHASZNALOID, C_SZEREPKORID)
SELECT fh.ID, @szerepkorId
FROM #tempTanulok t
INNER JOIN @linkTable l ON t.ID = l.tempID
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ID = l.insertedId
WHERE C_TANEVID = @tanevID
AND NOT EXISTS (SELECT 1 FROM T_FELHASZNALO_SZEREPKOR fsz WHERE fsz.C_FELHASZNALOID = fh.ID AND C_SZEREPKORID = @szerepkorId )
----- Telefonszám -----
MERGE T_TELEFON_OSSZES trg
USING (
SELECT t.*, l.insertedId AS insertedID
FROM #tempTanulok t
INNER JOIN @linkTable l ON t.ID = l.tempID --AND C_ALAPERTELMEZETT = 'T'
WHERE t.Telefonszam IS NOT NULL AND t.Telefonszam <> ''
) src ON src.TanuloID = trg.C_FELHASZNALOID AND trg.C_TANEVID = @tanevID AND src.isTanulo = 1 AND trg.C_ALAPERTELMEZETT = 'T'
WHEN MATCHED THEN
UPDATE SET
trg.C_TELEFONSZAM = src.Telefonszam,
trg.TOROLT = 'F',
trg.SERIAL = trg.SERIAL + 1,
trg.LASTCHANGED = GETDATE(),
trg.MODIFIER = @userId
WHEN NOT MATCHED THEN
INSERT (
C_TELEFONTIPUSA
,C_TELEFONSZAM
,C_LEIRAS
,C_ALAPERTELMEZETT
,C_GONDVISELOID
,C_FELHASZNALOID
,C_INTEZMENYID
,C_TANEVID
,MODIFIER
,CREATOR
) VALUES (
1019 -- C_TELEFONTIPUSA - int
,src.Telefonszam -- C_TELEFONSZAM - nvarchar(100)
,N'' -- C_LEIRAS - nvarchar(50)
,'T' -- C_ALAPERTELMEZETT - char(1)
,NULL -- C_GONDVISELOID - int
,src.insertedID -- C_FELHASZNALOID - int
,@intezmenyID -- C_INTEZMENYID - int
,@tanevID -- C_TANEVID - int
,NULL -- MODIFIER - int
,@userId -- CREATOR - int
);
----- TARTÓZKODÁSI HELY -----
MERGE T_CIM_OSSZES trg
USING (
SELECT t.*, l.insertedId AS insertedID
FROM #tempTanulok t
INNER JOIN @linkTable l ON t.ID = l.tempID
WHERE t.TartozkodasiCimIranyitoszam IS NOT NULL AND t.TartozkodasiCimIranyitoszam <> ''
) src ON src.TanuloID = trg.C_FELHASZNALOID AND trg.C_TANEVID = @tanevID AND src.isTanulo = 1 AND trg.C_CIMTIPUSA = 908
WHEN MATCHED THEN
UPDATE SET
trg.C_CIMTIPUSA = 908,
trg.C_ORSZAG = 765,
trg.C_IRANYITOSZAM = src.TartozkodasiCimIranyitoszam,
trg.C_VAROS = src.TartozkodasiCimTelepules,
trg.C_KOZTERULET = src.TartozkodasiCimKozteruletNev,
trg.C_KOZTERULETJELLEGE = src.TartozkodasiCimKozteruletJelleg,
trg.C_KOZTERULETJELLEGENEV = src.TartozkodasiCimKozteruletJellegNev,
trg.C_HAZSZAM = src.TartozkodasiCimHazszam,
trg.C_FELHASZNALOID = src.insertedId,
trg.TOROLT = 'F',
trg.SERIAL = trg.SERIAL + 1,
trg.LASTCHANGED = GETDATE(),
trg.MODIFIER = @userId
WHEN NOT MATCHED THEN
INSERT (
C_CIMTIPUSA
,C_ORSZAG
,C_IRANYITOSZAM
,C_VAROS
,C_KOZTERULET
,C_KOZTERULETJELLEGE
,C_KOZTERULETJELLEGENEV
,C_HAZSZAM
,C_FELHASZNALOID
,C_INTEZMENYID
,C_TANEVID
,MODIFIER
,CREATOR
) VALUES (
908
,765
,src.TartozkodasiCimIranyitoszam
,src.TartozkodasiCimTelepules
,src.TartozkodasiCimKozteruletNev
,src.TartozkodasiCimKozteruletJelleg
,src.TartozkodasiCimKozteruletJellegNev
,src.TartozkodasiCimHazszam
,src.insertedID
,@intezmenyID
,@tanevID
,NULL
,@userId
);
----- TARTÓZKODÁSI HELY -----
MERGE T_CIM_OSSZES trg
USING (
SELECT t.*, l.insertedId AS insertedID
FROM #tempTanulok t
INNER JOIN @linkTable l ON t.ID = l.tempID
) src ON src.TanuloID = trg.C_FELHASZNALOID AND trg.C_TANEVID = @tanevID AND src.isTanulo = 1 AND trg.C_CIMTIPUSA = 907
WHEN MATCHED THEN
UPDATE SET
trg.C_CIMTIPUSA = 907,
trg.C_ORSZAG = 765,
trg.C_IRANYITOSZAM = src.AllandoLakcimIranyitoSzam,
trg.C_VAROS = src.AllandoLakcimTelepules,
trg.C_KOZTERULET = src.AllandoLakcimKozteruletNev,
trg.C_KOZTERULETJELLEGE = src.AllandoLakcimKozteruletJelleg,
trg.C_KOZTERULETJELLEGENEV = src.AllandoLakcimKozteruletJellegNev,
trg.C_HAZSZAM = src.AllandoLakcimHazszam,
trg.C_FELHASZNALOID = src.insertedId,
trg.TOROLT = 'F',
trg.SERIAL = trg.SERIAL + 1,
trg.LASTCHANGED = GETDATE(),
trg.MODIFIER = @userId
WHEN NOT MATCHED THEN
INSERT (
C_CIMTIPUSA
,C_ORSZAG
,C_IRANYITOSZAM
,C_VAROS
,C_KOZTERULET
,C_KOZTERULETJELLEGE
,C_KOZTERULETJELLEGENEV
,C_HAZSZAM
,C_FELHASZNALOID
,C_INTEZMENYID
,C_TANEVID
,MODIFIER
,CREATOR
) VALUES (
907
,765
,src.AllandoLakcimIranyitoSzam
,src.AllandoLakcimTelepules
,src.AllandoLakcimKozteruletNev
,src.AllandoLakcimKozteruletJelleg
,src.AllandoLakcimKozteruletJellegNev
,src.AllandoLakcimHazszam
,src.insertedID
,@intezmenyID
,@tanevID
,NULL
,@userId
);
----- E-mail cím -----
MERGE T_EMAIL_OSSZES trg
USING (
SELECT #tempTanulok.*, linkTable.insertedId AS insertedID
FROM #tempTanulok
INNER JOIN
@linkTable linkTable ON #tempTanulok.ID = linkTable.tempID --AND C_ALAPERTELMEZETT = 'T'
WHERE #tempTanulok.EmailCim IS NOT NULL AND #tempTanulok.EmailCim <> ''
) src ON
trg.C_FELHASZNALOID = src.TanuloID
AND trg.C_TANEVID = @tanevID
AND src.isTanulo = 1
AND trg.C_ALAPERTELMEZETT = 'T'
WHEN MATCHED THEN
UPDATE SET
trg.C_EMAILCIM = src.EmailCim
,trg.TOROLT = 'F'
,trg.SERIAL = trg.SERIAL + 1
,trg.LASTCHANGED = GETDATE()
,trg.MODIFIER = @userId
WHEN NOT MATCHED THEN
INSERT (
C_EMAILTIPUSA
,C_EMAILCIM
,C_ALAPERTELMEZETT
,C_GONDVISELOID
,C_FELHASZNALOID
,C_INTEZMENYID
,C_TANEVID
,MODIFIER
,CREATOR
) VALUES (
1024 -- C_EMAILTIPUSA - int NA
,src.EmailCim -- C_EMAILCIM - nvarchar(100)
,'T' -- C_ALAPERTELMEZETT - char(1)
,NULL -- C_GONDVISELOID - int
,src.insertedID -- C_FELHASZNALOID - int
,@intezmenyID -- C_INTEZMENYID - int
,@tanevID -- C_TANEVID - int
,NULL -- MODIFIER - int
,@userId -- CREATOR - int
);
COMMIT TRANSACTION
END TRY
BEGIN CATCH
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
ROLLBACK TRANSACTION;
THROW
END CATCH
END

View File

@@ -0,0 +1,512 @@
DROP PROCEDURE IF EXISTS uspAdattisztitasAlkalmazott
GO
--EXEC uspAdattisztitasAlkalmazott 2, 1, 0
CREATE PROCEDURE uspAdattisztitasAlkalmazott
@pIntezmenyId int
,@pTanevId int
,@pIsCount bit
AS BEGIN
DECLARE @sql nvarchar(max)
IF @pIsCount = 1 BEGIN
SET @sql = N'
SELECT
COUNT(DISTINCT x.AlkalmazottId) AS HibasAdatkorokSzama,
COUNT(1) AS HibakSzama'
END
ELSE BEGIN
SET @sql = N'
SELECT
x.AlkalmazottId
,fh.C_OKTATASIAZONOSITO AS OktatasiAzonosito
,fh.C_NYOMTATASINEV AS AlkalmazottNev
,x.HibasErtek
,x.HibaKod
,ati.C_MEZO AS HibasAdat
,ati.C_LEIRAS AS Leiras'
END
SET @sql += N'
FROM (
SELECT
fh.ID AS AlkalmazottId
,''A001'' AS HibaKod
,d.C_NAME AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
INNER JOIN T_DICTIONARYITEMBASE d WITH(NOLOCK) ON d.ID = fh.C_NEME AND fh.C_TANEVID = d.C_TANEVID
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND C_NEME NOT IN (4,5) AND ma.C_MUNKAKORTIPUSA <> 6710 AND (C_ELOTAG NOT LIKE ''%KA%'' OR C_ELOTAG NOT LIKE ''%BTA%'' OR C_ELOTAG NOT LIKE ''%KGK%'')
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A002'' AS HibaKod
,C_VEZETEKNEV AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND LEN(LTRIM(RTRIM(C_VEZETEKNEV))) < 2
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A003'' AS HibaKod
,C_UTONEV AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND LEN(LTRIM(RTRIM(C_UTONEV))) < 2
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A004'' AS HibaKod
,C_SZULETESINEV AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND LEN(LTRIM(RTRIM(LEFT(C_SZULETESINEV, C_SZULETESINEVELVALASZTO)))) < 2 AND ma.C_MUNKAKORTIPUSA <> 6710 AND (C_ELOTAG NOT LIKE ''%KA%'' OR C_ELOTAG NOT LIKE ''%BTA%'' OR C_ELOTAG NOT LIKE ''%KGK%'')
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A005'' AS HibaKod
,C_SZULETESINEV AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND LEN(LTRIM(RTRIM(SUBSTRING(C_SZULETESINEV, C_SZULETESINEVELVALASZTO, 100)))) < 2 AND ma.C_MUNKAKORTIPUSA <> 6710 AND (C_ELOTAG NOT LIKE ''%KA%'' OR C_ELOTAG NOT LIKE ''%BTA%'' OR C_ELOTAG NOT LIKE ''%KGK%'')
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A006'' AS HibaKod
,C_ANYJANEVE AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND LEN(LTRIM(RTRIM(LEFT(C_ANYJANEVE, C_ANYJANEVEELVALASZTO)))) < 2 AND ma.C_MUNKAKORTIPUSA <> 6710 AND (C_ELOTAG NOT LIKE ''%KA%'' OR C_ELOTAG NOT LIKE ''%BTA%'' OR C_ELOTAG NOT LIKE ''%KGK%'')
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A007'' AS HibaKod
,C_ANYJANEVE AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND LEN(LTRIM(RTRIM(LEFT(C_ANYJANEVE, C_ANYJANEVEELVALASZTO)))) < 2 AND ma.C_MUNKAKORTIPUSA <> 6710 AND (C_ELOTAG NOT LIKE ''%KA%'' OR C_ELOTAG NOT LIKE ''%BTA%'' OR C_ELOTAG NOT LIKE ''%KGK%'')
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A008'' AS HibaKod
,C_SZULETESIHELY AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND (LEN(LTRIM(RTRIM(C_SZULETESIHELY))) = 0 OR C_SZULETESIHELY IS NULL) AND ma.C_MUNKAKORTIPUSA <> 6710 AND (C_ELOTAG NOT LIKE ''%KA%'' OR C_ELOTAG NOT LIKE ''%BTA%'' OR C_ELOTAG NOT LIKE ''%KGK%'')
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A009'' AS HibaKod
,FORMAT(C_SZULETESIDATUM, ''yyyy.MM.dd.'') AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND C_SZULETESIDATUM NOT BETWEEN ''19400101'' AND ''20200312'' AND ma.C_MUNKAKORTIPUSA <> 6710 AND (C_ELOTAG NOT LIKE ''%KA%'' OR C_ELOTAG NOT LIKE ''%BTA%'' OR C_ELOTAG NOT LIKE ''%KGK%'')
UNION ALL
/*
SELECT
fh.ID AS AlkalmazottId
,''A010'' AS HibaKod
,d.C_NAME + ISNULL(C_IGAZOLVANYSZAM, '' üres'') AS HibasErtek
FROM T_FELHASZNALO fh
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
INNER JOIN T_DICTIONARYITEMBASE d WITH(NOLOCK) ON d.ID = fh.C_IGAZOLVANYTIPUSA AND d.C_TANEVID = fh.C_TANEVID
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND (C_IGAZOLVANYTIPUSA <> 543 OR C_IGAZOLVANYTIPUSA IS NULL) AND C_IGAZOLVANYSZAM IS NULL
UNION ALL
*/
SELECT
fh.ID AS AlkalmazottId
,''A011'' AS HibaKod
,CAST(C_ADOSZAM AS nvarchar(50)) AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND C_ADOSZAM IS NOT NULL AND (LEN(C_ADOSZAM) <> 10 OR LEFT(C_ADOSZAM, 1) <> ''8'' OR ISNULL(TRY_CAST(SUBSTRING(C_ADOSZAM, 2, 5) AS INT), 0) <> DATEDIFF(day, ''18670101'', C_SZULETESIDATUM)
OR
IIF (
ISNUMERIC(C_ADOSZAM) = 0,
0,
IIF(
CAST(SUBSTRING(C_ADOSZAM, 1, 1) * 1 + SUBSTRING(C_ADOSZAM, 2, 1) * 2 + SUBSTRING(C_ADOSZAM, 3, 1) * 3 + SUBSTRING(C_ADOSZAM, 4, 1) * 4
+ SUBSTRING(C_ADOSZAM, 5, 1) * 5 + SUBSTRING(C_ADOSZAM, 6, 1) * 6 + SUBSTRING(C_ADOSZAM, 7, 1) * 7 + SUBSTRING(C_ADOSZAM, 8, 1) * 8
+ SUBSTRING(C_ADOSZAM, 9, 1) * 9 AS INT) % 11 <> ISNULL(TRY_CAST(SUBSTRING(C_ADOSZAM, 10, 1) AS INT
), 12), 0, 1)) = 0)
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A012'' AS HibaKod
,d.C_NAME AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
INNER JOIN T_CIM c WITH(NOLOCK) ON c.C_FELHASZNALOID = fh.ID AND c.TOROLT = ''F''
INNER JOIN T_DICTIONARYITEMBASE d WITH(NOLOCK) ON d.ID = c.C_CIMTIPUSA AND fh.C_TANEVID = d.C_TANEVID
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND (c.C_CIMTIPUSA = 906 OR c.C_CIMTIPUSA IS NULL)
AND ma.C_MUNKAKORTIPUSA <> 6710 AND (C_ELOTAG NOT LIKE ''%KA%'' OR C_ELOTAG NOT LIKE ''%BTA%'' OR C_ELOTAG NOT LIKE ''%KGK%'')
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A013'' AS HibaKod
,''Üres'' AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
INNER JOIN T_CIM c WITH(NOLOCK) ON c.C_FELHASZNALOID = fh.ID AND c.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND (LTRIM(RTRIM(c.C_IRANYITOSZAM)) = '''' OR c.C_IRANYITOSZAM IS NULL)
AND ma.C_MUNKAKORTIPUSA <> 6710 AND (C_ELOTAG NOT LIKE ''%KA%'' OR C_ELOTAG NOT LIKE ''%BTA%'' OR C_ELOTAG NOT LIKE ''%KGK%'')
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A014'' AS HibaKod
,c.C_IRANYITOSZAM AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
INNER JOIN T_CIM c WITH(NOLOCK) ON c.C_FELHASZNALOID = fh.ID AND c.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND LTRIM(RTRIM(c.C_IRANYITOSZAM)) <> ''''
AND C_ORSZAG = 765 AND NOT EXISTS (SELECT 1 FROM T_TELEPULES x WHERE c.C_IRANYITOSZAM = x.C_IRANYITOSZAM)
/*UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A015'' AS HibaKod
,''IranyitoszamTelepules'' AS HibasErtek
FROM T_FELHASZNALO fh
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
INNER JOIN T_CIM c WITH(NOLOCK) ON c.C_FELHASZNALOID = fh.ID AND c.TOROLT = ''F''
INNER JOIN T_TANEV tv WITH(NOLOCK) ON tv.ID = fh.C_TANEVID AND tv.C_NEV = ''2019/2020'' AND tv.TOROLT = ''F''
INNER JOIN T_INTEZMENY i WITH(NOLOCK) ON i.ID = fh.C_INTEZMENYID AND i.C_FENNTARTOAZONOSITO < 900 AND i.TOROLT = ''F''
INNER JOIN T_TELEPULES t WITH(NOLOCK) ON t.C_IRANYITOSZAM = c.C_IRANYITOSZAM AND c.C_VAROS <> t.C_TELEPULESNEV
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND LTRIM(RTRIM(c.C_IRANYITOSZAM)) <> ''''
AND c.C_ORSZAG = 765 */
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A016'' AS HibaKod
,c.C_VAROS AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
INNER JOIN T_CIM c WITH(NOLOCK) ON c.C_FELHASZNALOID = fh.ID AND c.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND (LTRIM(RTRIM(c.C_VAROS)) = '''' OR c.C_VAROS IS NULL)
AND ma.C_MUNKAKORTIPUSA <> 6710 AND (C_ELOTAG NOT LIKE ''%KA%'' OR C_ELOTAG NOT LIKE ''%BTA%'' OR C_ELOTAG NOT LIKE ''%KGK%'')
/*
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A017'' AS HibaKod
,c.C_VAROS AS HibasErtek--, w.C_TELEPULESNEV
FROM T_FELHASZNALO fh
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
INNER JOIN T_CIM c WITH(NOLOCK) ON c.C_FELHASZNALOID = fh.ID AND c.TOROLT = ''F''
-- LEFT JOIN T_TELEPULES w WITH(NOLOCK) ON w.C_IRANYITOSZAM = c.C_IRANYITOSZAM AND c.C_VAROS <> w.C_TELEPULESNEV
-- INNER JOIN T_TANEV tv WITH(NOLOCK) ON tv.ID = fh.C_TANEVID AND tv.C_AKTIV = ''T''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND LTRIM(RTRIM(c.C_IRANYITOSZAM)) <> ''''
AND c.C_ORSZAG = 765 AND NOT EXISTS (SELECT 1 FROM T_TELEPULES x WHERE c.C_VAROS = x.C_TELEPULESNEV)
*/
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A018'' AS HibaKod
,''Üres'' AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
INNER JOIN T_CIM c WITH(NOLOCK) ON c.C_FELHASZNALOID = fh.ID AND c.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND (LTRIM(RTRIM(c.C_KOZTERULET)) = '''' OR c.C_KOZTERULET IS NULL)
AND ma.C_MUNKAKORTIPUSA <> 6710 AND (C_ELOTAG NOT LIKE ''%KA%'' OR C_ELOTAG NOT LIKE ''%BTA%'' OR C_ELOTAG NOT LIKE ''%KGK%'')
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A019'' AS HibaKod
,''Üres'' AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
INNER JOIN T_CIM c WITH(NOLOCK) ON c.C_FELHASZNALOID = fh.ID AND c.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND (c.C_KOZTERULETJELLEGE = 911 OR c.C_KOZTERULETJELLEGE IS NULL)
AND ma.C_MUNKAKORTIPUSA <> 6710 AND (C_ELOTAG NOT LIKE ''%KA%'' OR C_ELOTAG NOT LIKE ''%BTA%'' OR C_ELOTAG NOT LIKE ''%KGK%'')
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A020'' AS HibaKod
,''Üres'' AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
INNER JOIN T_CIM c WITH(NOLOCK) ON c.C_FELHASZNALOID = fh.ID AND c.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND (LTRIM(RTRIM(c.C_HAZSZAM)) = '''' OR c.C_HAZSZAM IS NULL)
AND ma.C_MUNKAKORTIPUSA <> 6710 AND (C_ELOTAG NOT LIKE ''%KA%'' OR C_ELOTAG NOT LIKE ''%BTA%'' OR C_ELOTAG NOT LIKE ''%KGK%'')
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A021'' AS HibaKod
,c.C_TELEFONSZAM AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
INNER JOIN T_TELEFON c WITH(NOLOCK) ON c.C_FELHASZNALOID = fh.ID AND c.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND LEN(REPLACE(REPLACE(REPLACE(c.C_TELEFONSZAM, ''/'', ''''), ''-'', ''''), '' '', '''')) < 10
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A022'' AS HibaKod
,c.C_EMAILCIM AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
INNER JOIN T_EMAIL c WITH(NOLOCK) ON c.C_FELHASZNALOID = fh.ID AND c.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND (c.C_EMAILCIM NOT LIKE ''%@%'' OR c.C_EMAILCIM NOT LIKE ''%.%'')
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A023'' AS HibaKod
,''Üres / NA'' AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
INNER JOIN T_EMAIL c WITH(NOLOCK) ON c.C_FELHASZNALOID = fh.ID AND c.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND (c.C_EMAILTIPUSA IS NULL OR c.C_EMAILTIPUSA = 1024)
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A026'' AS HibaKod
,''Üres / NA'' AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND (ma.C_MUNKAKORTIPUSA IS NULL OR ma.C_MUNKAKORTIPUSA = 548)
AND (C_ELOTAG NOT LIKE ''%KA%'' OR C_ELOTAG NOT LIKE ''%BTA%'' OR C_ELOTAG NOT LIKE ''%KGK%'')
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A028'' AS HibaKod
,''Üres / NA'' AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND (ma.C_FOGLALKOZTATASTIPUS IS NULL OR ma.C_FOGLALKOZTATASTIPUS = 1338)
AND ma.C_MUNKAKORTIPUSA <> 6710 AND (C_ELOTAG NOT LIKE ''%KA%'' OR C_ELOTAG NOT LIKE ''%BTA%'' OR C_ELOTAG NOT LIKE ''%KGK%'')
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A029'' AS HibaKod
,CAST(C_RESZMUNKAIDOSZAZALEK AS nvarchar(10)) AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND ma.C_FOGLALKOZTATASTIPUS = 6466 AND C_RESZMUNKAIDOSZAZALEK NOT BETWEEN 1 AND 99
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A030'' AS HibaKod
,''Üres / NA'' AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND ma.C_ALKALMAZASKEZDETE IS NULL
AND ma.C_MUNKAKORTIPUSA <> 6710 AND (C_ELOTAG NOT LIKE ''%KA%'' OR C_ELOTAG NOT LIKE ''%BTA%'' OR C_ELOTAG NOT LIKE ''%KGK%'')
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A031'' AS HibaKod
,''Üres / NA'' AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND ma.C_ALKALMAZASKEZDETE IS NOT NULL
AND (ma.C_MUNKAKORTIPUSA = 6710 OR C_ELOTAG IN (''KA'', ''BTA'', ''KGK''))
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A032'' AS HibaKod
,''Üres / NA'' AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND ma.C_ALKALMAZASMEGSZUNESE IS NULL
AND ma.C_MUNKAKORTIPUSA <> 6710 AND (C_ELOTAG NOT LIKE ''%KA%'' OR C_ELOTAG NOT LIKE ''%BTA%'' OR C_ELOTAG NOT LIKE ''%KGK%'')
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A033'' AS HibaKod
,''Üres / NA'' AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND ma.C_ALKALMAZASMEGSZUNESE IS NOT NULL
AND (ma.C_MUNKAKORTIPUSA = 6710 OR C_ELOTAG IN (''KA'', ''BTA'', ''KGK''))
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A035'' AS HibaKod
,IIF((ma.C_BETOLTETLENALLASHELY = ''T'' AND C_ELOTAG NOT LIKE ''%BTA%''), ''Hibás előtag'', ''Hibás betöltetlen álláshelynek jelölés'') AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND ((ma.C_BETOLTETLENALLASHELY = ''T'' AND C_ELOTAG NOT LIKE ''%BTA%'')
OR (ma.C_BETOLTETLENALLASHELY = ''F'' AND C_ELOTAG LIKE ''%BTA%''))
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A040'' AS HibaKod
,''Na'' AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
INNER JOIN T_ALKALMAZOTT a WITH(NOLOCK) ON a.ID = fh.ID
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND a.C_SZAKERTOIVIZSGAELNOKI = ''T'' AND ma.C_BESOROLASIFOKOZAT = 3040
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A042'' AS HibaKod
,''Na'' AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
INNER JOIN T_ALKALMAZOTT a WITH(NOLOCK) ON a.ID = fh.ID
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND a.C_TOVABBKEPZES = ''T'' AND ma.C_BESOROLASIFOKOZAT = 3040
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A044'' AS HibaKod
,''Na'' AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
INNER JOIN T_ALKALMAZOTT a WITH(NOLOCK) ON a.ID = fh.ID
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND a.C_SZAKVIZSGA = ''T'' AND ma.C_BESOROLASIFOKOZAT = 3040
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A046'' AS HibaKod
,''Na'' AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
INNER JOIN T_ALKALMAZOTT a WITH(NOLOCK) ON a.ID = fh.ID
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND ma.C_ATTANITO = ''T'' AND ma.C_BESOROLASIFOKOZAT = 3040
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A048'' AS HibaKod
,''Na'' AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
INNER JOIN T_ALKALMAZOTT a WITH(NOLOCK) ON a.ID = fh.ID
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND ma.C_ATTANITOMASINTEZMENYNEL = ''T'' AND ma.C_BESOROLASIFOKOZAT = 3040
UNION ALL
SELECT
fh.ID AS AlkalmazottId
,''A049'' AS HibaKod
,''Üres'' AS HibasErtek
FROM T_FELHASZNALO fh WITH(NOLOCK)
INNER JOIN T_MUNKAUGYIADATOK ma WITH(NOLOCK) ON ma.C_ALKALMAZOTTID = fh.ID AND ma.TOROLT = ''F''
INNER JOIN T_ALKALMAZOTT a WITH(NOLOCK) ON a.ID = fh.ID
WHERE fh.TOROLT = ''F'' AND fh.C_TANEVID = @pTanevId
AND a.C_SZTSZKOD IS NULL
) x'
IF @pIsCount = 1 BEGIN
SET @sql += N'
GROUP BY x.AlkalmazottId'
END
ELSE BEGIN
SET @sql += N'
INNER JOIN T_FELHASZNALO fh WITH(NOLOCK) ON fh.ID = x.AlkalmazottId AND fh.C_INTEZMENYID = @pIntezmenyId AND fh.C_TANEVID = @pTanevId
INNER JOIN T_ADATTISZTITASINDIKATOR ati ON ati.C_KOD = x.HibaKod'
END
EXEC sp_executesql @sql, N'
@pIntezmenyId int
,@pTanevId int
,@pIsCount bit'
,@pIntezmenyId = @pIntezmenyId
,@pTanevId = @pTanevId
,@pIsCount = @pIsCount
END
GO

View File

@@ -0,0 +1,170 @@
DROP PROCEDURE IF EXISTS uspGetGondviselokElerhetosegeiExport
GO
CREATE PROCEDURE uspGetGondviselokElerhetosegeiExport
(
@pTanevId int
,@pFeladatKategoriaId int = NULL--7553
,@pDatum datetime = NULL
,@pTanuloNeve nvarchar(255) = NULL
,@pNeme int = NULL
,@pSzuletesiIdoKezdet datetime = NULL
,@pSzuletesiIdoVeg datetime = NULL
,@pSzuletesiHely nvarchar(50) = NULL
,@pOktatasiAzonosito nvarchar(20) = NULL
,@pSNI char(1) = NULL
,@pBTM char(1) = NULL
,@pHatranyosHelyzetId int = NULL
,@pTorolt char(1) = 'F'
-- ocs
,@pOsztalybaSoroltTantervNelkul bit = NULL
,@pOsztalyCsoportId int = NULL
,@pVegzosEvfolyam char(1) = NULL
,@pFeladatellatasiHelyId int = NULL
,@pEvfolyamTipusaId int = NULL
,@pAktiv bit = NULL
,@pMuveszetiAgId int = NULL
)
AS BEGIN
SET NOCOUNT ON;
DECLARE @sql nvarchar(max) = ''
/* Field part */
SET @sql += '
SELECT
fh.C_ELOTAG AS Elotag
,fh.C_VEZETEKNEV AS Vezeteknev
,fh.C_UTONEV As Utonev
,x.OsztalyNev AS OsztalyOk
,g.C_NEV AS GondvNev
,dib_rfok.C_NAME AS RokFok
,fh.C_OKTATASIAZONOSITO AS OktAzon
,fh.C_ANYJANEVE AS TanuloAnyjaNev
,fh.C_SZULETESIHELY AS TanuloSzulHely
,CONVERT(nvarchar(25), fh.C_SZULETESIDATUM, 102) AS TanuloSzulDatum
,tel.C_TELEFONSZAM AS Telefon
,e.C_EMAILCIM AS Email
,CONCAT(cim.C_IRANYITOSZAM,'' ''+cim.C_VAROS+'','','' ''+cim.C_KOZTERULET,'' ''+cim.C_KOZTERULETJELLEGENEV,'' ''+cim.C_HAZSZAM,'' ''+cim.C_EMELET+''. emelet'','' ''+cim.C_AJTO+''. ajtó'') AS Cim
,c_all.C_IRANYITOSZAM AS All_irsz
,c_all.C_VAROS AS All_varos
,c_all.C_KOZTERULET AS All_ktnev
,c_all.C_KOZTERULETJELLEGENEV AS All_ktjell
,c_all.C_HAZSZAM AS All_hazszam
,c_all.C_EMELET AS All_emelet
,c_all.C_AJTO AS All_ajto
,c_ide.C_IRANYITOSZAM AS Ide_irsz
,c_ide.C_VAROS AS Ide_varos
,c_ide.C_KOZTERULET AS Ide_ktnev
,c_ide.C_KOZTERULETJELLEGENEV AS Ide_ktjell
,c_ide.C_HAZSZAM AS Ide_hazszam
,c_ide.C_EMELET AS Ide_emelet
,c_ide.C_AJTO AS Ide_ajto
,c_tart.C_IRANYITOSZAM AS Tart_irsz
,c_tart.C_VAROS AS Tart_varos
,c_tart.C_KOZTERULET AS Tart_ktnev
,c_tart.C_KOZTERULETJELLEGENEV AS Tart_ktjell
,c_tart.C_HAZSZAM AS Tart_hazszam
,c_tart.C_EMELET AS Tart_emelet
,c_tart.C_AJTO AS Tart_ajto
,c_na.C_IRANYITOSZAM AS Na_irsz
,c_na.C_VAROS AS Na_varos
,c_na.C_KOZTERULET AS Na_ktnev
,c_na.C_KOZTERULETJELLEGENEV AS Na_ktjell
,c_na.C_HAZSZAM AS Na_hazszam
,c_na.C_EMELET AS Na_emelet
,c_na.C_AJTO AS Na_ajto
'
/* FROM part */
SET @sql += N'
FROM T_TANULO_OSSZES t
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ID = t.ID
CROSS APPLY fnGetTanuloOsztalyString (fh.ID, @pDatum, @pFeladatKategoriaId, 1) x
LEFT JOIN T_GONDVISELO_OSSZES g ON g.TOROLT = ''F'' AND fh.ID = g.C_TANULOID
LEFT JOIN T_CIM_OSSZES c_all ON c_all.TOROLT = ''F'' AND c_all.C_GONDVISELOID = g.ID AND c_all.C_FELHASZNALOID = fh.ID AND c_all.C_CIMTIPUSA = 907
LEFT JOIN T_CIM_OSSZES c_tart ON c_tart.TOROLT = ''F'' AND c_tart.C_GONDVISELOID = g.ID AND c_tart.C_FELHASZNALOID = fh.ID AND c_tart.C_CIMTIPUSA = 909
LEFT JOIN T_CIM_OSSZES c_ide ON c_ide.TOROLT = ''F'' AND c_ide.C_GONDVISELOID = g.ID AND c_ide.C_FELHASZNALOID = fh.ID AND c_ide.C_CIMTIPUSA = 908
LEFT JOIN T_CIM_OSSZES c_na ON c_na.TOROLT = ''F'' AND c_na.C_GONDVISELOID = g.ID AND c_na.C_FELHASZNALOID = fh.ID AND c_na.C_CIMTIPUSA = 906
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES dib_rfok ON dib_rfok.TOROLT = ''F'' AND g.C_ROKONSAGFOKA = dib_rfok.ID AND dib_rfok.C_TANEVID = @pTanevId
LEFT JOIN T_TELEFON_OSSZES tel ON tel.TOROLT = ''F'' AND tel.C_GONDVISELOID = g.ID AND tel.TOROLT = ''F'' AND tel.C_FELHASZNALOID = fh.ID
LEFT JOIN T_EMAIL_OSSZES e ON e.TOROLT = ''F'' AND e.C_GONDVISELOID = g.ID AND e.TOROLT = ''F'' AND e.C_FELHASZNALOID = fh.ID
LEFT JOIN T_CIM_OSSZES cim ON cim.C_FELHASZNALOID = fh.ID AND cim.C_GONDVISELOID = g.ID AND cim.TOROLT=''F'' AND cim.C_ALAPERTELMEZETT = ''T'''
/* WHERE part */
SET @sql += N'
WHERE t.C_ALTANEVID = @pTanevId
AND t.TOROLT = @pTorolt AND fh.TOROLT = @pTorolt AND x.Osztalynev IS NOT NULL'
+ IIF(@pTanuloNeve IS NULL, N'', N' AND fh.C_NYOMTATASINEV LIKE CONCAT(''%'',@pTanuloNeve,''%'')')
+ IIF(@pNeme IS NULL, N'', N' AND fh.C_NEME = @pNeme')
+ IIF(@pSzuletesiIdoKezdet IS NULL, N'', N' AND fh.C_SZULETESIDATUM >= @pSzuletesiIdoKezdet')
+ IIF(@pSzuletesiIdoVeg IS NULL, N'', N' AND fh.C_SZULETESIDATUM <= @pSzuletesiIdoVeg')
+ IIF(@pSzuletesiHely IS NULL, N'', N' AND fh.C_SZULETESIHELY LIKE CONCAT(''%'',@pSzuletesiHely,''%'')')
+ IIF(@pOktatasiAzonosito IS NULL, N'', N' AND fh.C_OKTATASIAZONOSITO LIKE CONCAT(''%'',@pOktatasiAzonosito,''%'')')
+ IIF(@pSNI IS NULL, N'', N' AND t.C_SAJATOSNEVELESU = @pSNI')
+ IIF(@pBTM IS NULL, N'', N' AND t.C_BTMPROBLEMAS = @pBTM')
+ IIF(@pHatranyosHelyzetId IS NULL, N'', N' AND t.C_HATRANYOSHELYZETU = @pHatranyosHelyzetId')
+ IIF(@pOsztalyCsoportId IS NULL AND @pVegzosEvfolyam IS NULL AND @pEvfolyamTipusaId IS NULL
AND @pFeladatellatasiHelyId IS NULL AND @pMuveszetiAgId IS NULL AND @pAktiv IS NULL AND @pOsztalybaSoroltTantervNelkul IS NULL, N'',N'
AND EXISTS (
SELECT
1
FROM T_TANULOCSOPORT_OSSZES tcs
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.Id = tcs.C_OSZTALYCSOPORTID AND ocs.TOROLT=''F''
WHERE tcs.TOROLT = ''F''
AND tcs.C_KILEPESDATUM IS NULL
AND tcs.C_TANEVID = @pTanevId
AND tcs.C_TANULOID = fh.ID'
+ IIF(@pOsztalyCsoportId IS NULL,N'',N' AND ocs.ID = @pOsztalyCsoportId')
+ IIF(@pVegzosEvfolyam IS NULL,N'',N' AND ocs.C_VEGZOSEVFOLYAM = @pVegzosEvfolyam')
+ IIF(@pEvfolyamTipusaId IS NULL,N'',N' AND ocs.C_EVFOLYAMTIPUSA = @pEvfolyamTipusaId')
+ IIF(@pFeladatellatasiHelyId IS NULL,N'',N' AND ocs.C_FELADATELLATASIHELYID = @pFeladatellatasiHelyId')
+ IIF(@pAktiv = 1,N' AND ocs.ID IS NOT NULL',N'')
+ IIF(@pMuveszetiAgId IS NULL,N'',N' AND ocs.C_MUVESZETIAGID = @pMuveszetiAgId')+'
)' + IIF(@pOsztalybaSoroltTantervNelkul IS NULL,N'',N' AND t.C_TANTERVID IS NULL') +'
')
/* ORDER part */
SET @sql += N' ORDER BY fh.C_VEZETEKNEV, fh.C_UTONEV'
EXEC sp_executesql @sql, N'
@pTanevId int
,@pFeladatKategoriaId int
,@pDatum datetime
,@pTanuloNeve nvarchar(255)
,@pNeme int
,@pSzuletesiIdoKezdet datetime
,@pSzuletesiIdoVeg datetime
,@pSzuletesiHely nvarchar(50)
,@pOktatasiAzonosito nvarchar(20)
,@pSNI char(1)
,@pBTM char(1)
,@pHatranyosHelyzetId int
,@pTorolt char(1)
-- ocs
,@pOsztalybaSoroltTantervNelkul bit
,@pOsztalyCsoportId int
,@pVegzosEvfolyam char(1)
,@pFeladatellatasiHelyId int
,@pEvfolyamTipusaId int
,@pAktiv bit
,@pMuveszetiAgId int
'
,@pTanevId = @pTanevId
,@pFeladatKategoriaId = @pFeladatKategoriaId
,@pDatum = @pDatum
,@pTanuloNeve = @pTanuloNeve
,@pNeme = @pNeme
,@pSzuletesiIdoKezdet = @pSzuletesiIdoKezdet
,@pSzuletesiIdoVeg = @pSzuletesiIdoVeg
,@pSzuletesiHely = @pSzuletesiHely
,@pOktatasiAzonosito = @pOktatasiAzonosito
,@pSNI = @pSNI
,@pBTM = @pBTM
,@pHatranyosHelyzetId = @pHatranyosHelyzetId
,@pTorolt = @pTorolt
-- ocs
,@pOsztalybaSoroltTantervNelkul = @pOsztalybaSoroltTantervNelkul
,@pOsztalyCsoportId = @pOsztalyCsoportId
,@pVegzosEvfolyam = @pVegzosEvfolyam
,@pFeladatellatasiHelyId = @pFeladatellatasiHelyId
,@pEvfolyamTipusaId = @pEvfolyamTipusaId
,@pAktiv = @pAktiv
,@pMuveszetiAgId = @pMuveszetiAgId
END
GO

View File

@@ -0,0 +1,85 @@
-- =============================================
-- Description: <Előszedjük a tanuló alap adatait>
-- =============================================
DROP PROCEDURE IF EXISTS [dbo].[uspGetTanuloiAlapadatok]
GO
CREATE PROCEDURE [dbo].[uspGetTanuloiAlapadatok]
@pTanuloId INT
,@pTanevId INT
,@pIntezmenyId INT
,@pOsztalyCsoportId int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements.
SET NOCOUNT ON;
DECLARE @OsztalyCsoport_Evfolyam int
SET @OsztalyCsoport_Evfolyam = (SELECT C_EVFOLYAMTIPUSA FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyCsoportId);
--NOTE: 0. tábla - Alapadatok
SELECT
Felhasznalo.C_OKTATASIAZONOSITO AS OktatasiAzonosito
,Felhasznalo.C_ANYJANEVE AS AnyjaNeve
,ISNULL(tanugyiAdatok.C_TORZSLAPSZAM,'') AS Torzslapszam
,ISNULL(tanugyiAdatok.C_NAPLOSORSZAM,'') AS Naplosorszam
,Felhasznalo.C_SZULETESIHELY AS SzuletesiHely
,Felhasznalo.C_SZULETESIDATUM AS SzuletesiIdo
,ISNULL(tanugyiAdatok.C_BEIRASINAPLOSORSZAM,Tanulo.C_BEIRASINAPLOSORSZAM) AS BeirasiNaploSorszam
,IIF(@OsztalyCsoport_Evfolyam IS NOT NULL AND @OsztalyCsoport_Evfolyam <> 7366,@OsztalyCsoport_Evfolyam,ISNULL(tanugyiAdatok.C_TANULOEVFOLYAMTIPUSID, @OsztalyCsoport_Evfolyam)) AS Evfolyam
FROM T_TANULO_OSSZES Tanulo
INNER JOIN T_FELHASZNALO_OSSZES Felhasznalo ON Felhasznalo.ID = Tanulo.ID
AND Felhasznalo.C_INTEZMENYID = @pIntezmenyId
AND Felhasznalo.C_TANEVID = @pTanevId
AND Felhasznalo.TOROLT = 'F'
LEFT JOIN T_TANULOCSOPORT_OSSZES TanuloCsoport ON TanuloCsoport.C_TANULOID = Tanulo.ID
AND TanuloCsoport.C_OSZTALYCSOPORTID = @pOsztalyCsoportId
AND TanuloCsoport.C_INTEZMENYID = @pIntezmenyId
AND TanuloCsoport.C_TANEVID = @pTanevId
AND TanuloCsoport.TOROLT = 'F'
LEFT JOIN T_TANULOTANUGYIADATOK_OSSZES tanugyiAdatok ON tanugyiAdatok.C_TANULOCSOPORTID = tanuloCsoport.ID
AND tanugyiAdatok.TOROLT = 'F'
WHERE Tanulo.ID = @pTanuloId
AND Tanulo.TOROLT = 'F'
--NOTE: 1. tábla - Címek
SELECT
Cim.C_IRANYITOSZAM + ', ' + --
Cim.C_VAROS + ', ' + --
Cim.C_KOZTERULET + ' ' + --
Cim.C_KOZTERULETJELLEGENEV + ' ' + --
ISNULL(Cim.C_HAZSZAM, '') AS CimText
,CimTipus.C_NAME AS CimTipus
,Cim.C_CIMTIPUSA AS CimTipusId
FROM T_CIM_OSSZES Cim
INNER JOIN T_DICTIONARYITEMBASE_OSSZES CimTipus ON CimTipus.ID = Cim.C_CIMTIPUSA
AND CimTipus.C_INTEZMENYID = @pIntezmenyId
AND CimTipus.C_TANEVID = @pTanevId
AND CimTipus.TOROLT = 'F'
WHERE Cim.C_FELHASZNALOID = @pTanuloId
AND Cim.C_GONDVISELOID IS NULL
AND Cim.C_INTEZMENYID = @pIntezmenyId
AND Cim.C_TANEVID = @pTanevId
AND Cim.TOROLT = 'F'
--NOTE: 2. tábla - Email címek
SELECT DISTINCT
Email.C_EMAILCIM AS EmailCim
FROM T_EMAIL_OSSZES Email
WHERE Email.C_FELHASZNALOID = @pTanuloId
AND Email.C_INTEZMENYID = @pIntezmenyId
AND Email.C_TANEVID = @pTanevId
AND Email.TOROLT = 'F'
--NOTE: 3. tábla - Telefonszámok
SELECT DISTINCT
Telefon.C_TELEFONSZAM AS Telefonszam
FROM T_TELEFON_OSSZES Telefon
WHERE Telefon.C_FELHASZNALOID = @pTanuloId
AND Telefon.C_INTEZMENYID = @pIntezmenyId
AND Telefon.C_TANEVID = @pTanevId
AND Telefon.TOROLT = 'F'
END
GO

View File

@@ -0,0 +1,608 @@
-- =============================================
-- Description: <Tanulo KIFIR import>
-- =============================================
DROP PROCEDURE IF EXISTS [dbo].[uspTanuloKifirImport]
GO
CREATE PROCEDURE [dbo].[uspTanuloKifirImport]
@pIntezmenyId INT
,@pTanevId INT
,@pUserId INT
,@pImportJson NVARCHAR(MAX)
AS
BEGIN
SET NOCOUNT ON;
DECLARE
@tableNameList NVARCHAR(2000) = 'T_FELHASZNALO_OSSZES'
,@actualJson NVARCHAR(MAX) = ''
,@lastChangedDateTime DATETIME = GETDATE()
--NOTE: A törlés azért false, mert a tanuló importálásoknál soha nem törlünk!
EXECUTE [dbo].[uspDynamicImportJsonSplit] @pIntezmenyId = @pIntezmenyId, @pTanevId = @pTanevId, @pUserId = @pUserId, @pImportJson = @pImportJson, @pIsTorles = 0, @pIsSubTable = 0, @pTableNameList = @tableNameList
--NOTE: Tanulo temp tábla incializálása
CREATE TABLE #TanuloTempTable (
ID INT
,C_TANTERVID INT
,C_ELOZOINTEZMENY NVARCHAR(255)
,C_ALLAMIGONDOZOTT CHAR(1)
,C_BEILLESZKEDESINEHEZSEG CHAR(1)
,C_BEJARO CHAR(1)
,C_EVISMETLO CHAR(1)
,C_JOGVISZONYATSZUNETELTETO CHAR(1)
,C_MAGANTANULO CHAR(1)
,C_POLGARISZERZODESES CHAR(1)
,C_SZAKMAIGYAKORLATON CHAR(1)
,C_SZOCIALISTAMOGATAS CHAR(1)
,C_TANDIJATFIZETO CHAR(1)
,C_TANKOTELEZETT CHAR(1)
,C_TANULOSZERZODESES CHAR(1)
,C_TERITESIDIJATFIZETO CHAR(1)
,C_TESTNEVELESTIPUSA INT
,C_VENDEG CHAR(1)
,C_BTMPROBLEMAS CHAR(1)
,C_DIAKSPORTKOROS CHAR(1)
,C_HALMOZOTTANFOGYATEKOS CHAR(1)
,C_HATRANYOSHELYZETU INT
,C_KOLLEGIUMIELLATASOS CHAR(1)
,C_SAJATOSNEVELESU CHAR(1)
,C_VESZELYEZTETETT CHAR(1)
,C_BEILLESZKEDESIPROBLEMAVALKUZ CHAR(1)
,C_MAGATARTASIPROBLEMAVALKUZD CHAR(1)
,C_TANULASIPROBLEMADISZGRAFIA CHAR(1)
,C_TANULASIPROBLEMAVALKUZD CHAR(1)
,C_TANULASIPROBLEMAVALKUZDDISZK CHAR(1)
,C_TANULASIPROBLEMAVALKUZDDISZL CHAR(1)
,C_KOZEPFOKUOKTATASBATIZENHATOD CHAR(1)
,C_MENEDEKJOGGALRENDELKEZO CHAR(1)
,C_EGYEBDONTO CHAR(1)
,C_MEGALLAPODASOS CHAR(1)
,C_OSZTV CHAR(1)
,C_SZETVAGAZAT CHAR(1)
,C_SZKTV CHAR(1)
,C_TECHNIKUSIEVFOLYAM CHAR(1)
,C_EGYUTTMUKODESES CHAR(1)
,C_ISKOLAIKERETEKKOZOTT CHAR(1)
,C_ISSZAKMAIGYAKORLATHIANY CHAR(1)
,C_ISKIFIRIMPORTALT CHAR(1)
,C_FELVETELTANEVEID INT
,C_ALINTEZMENYID INT
,C_ALTANEVID INT
,TOROLT CHAR(1)
,SERIAL INT
,LASTCHANGED DATETIME
,CREATED DATETIME
,MODIFIER INT
,CREATOR INT
,ELOZOTANEVIREKORDID INT
,NNID INT
,Operation INT
)
INSERT INTO
#TanuloTempTable
SELECT
Felhasznalo.ID
,TanuloJsonData.C_TANTERVID
,TanuloJsonData.C_ELOZOINTEZMENY
,TanuloJsonData.C_ALLAMIGONDOZOTT
,TanuloJsonData.C_BEILLESZKEDESINEHEZSEG
,TanuloJsonData.C_BEJARO
,TanuloJsonData.C_EVISMETLO
,TanuloJsonData.C_JOGVISZONYATSZUNETELTETO
,TanuloJsonData.C_MAGANTANULO
,TanuloJsonData.C_POLGARISZERZODESES
,TanuloJsonData.C_SZAKMAIGYAKORLATON
,TanuloJsonData.C_SZOCIALISTAMOGATAS
,TanuloJsonData.C_TANDIJATFIZETO
,TanuloJsonData.C_TANKOTELEZETT
,TanuloJsonData.C_TANULOSZERZODESES
,TanuloJsonData.C_TERITESIDIJATFIZETO
,TanuloJsonData.C_TESTNEVELESTIPUSA
,TanuloJsonData.C_VENDEG
,TanuloJsonData.C_BTMPROBLEMAS
,TanuloJsonData.C_DIAKSPORTKOROS
,TanuloJsonData.C_HALMOZOTTANFOGYATEKOS
,TanuloJsonData.C_HATRANYOSHELYZETU
,TanuloJsonData.C_KOLLEGIUMIELLATASOS
,TanuloJsonData.C_SAJATOSNEVELESU
,TanuloJsonData.C_VESZELYEZTETETT
,TanuloJsonData.C_BEILLESZKEDESIPROBLEMAVALKUZ
,TanuloJsonData.C_MAGATARTASIPROBLEMAVALKUZD
,TanuloJsonData.C_TANULASIPROBLEMADISZGRAFIA
,TanuloJsonData.C_TANULASIPROBLEMAVALKUZD
,TanuloJsonData.C_TANULASIPROBLEMAVALKUZDDISZK
,TanuloJsonData.C_TANULASIPROBLEMAVALKUZDDISZL
,TanuloJsonData.C_KOZEPFOKUOKTATASBATIZENHATOD
,TanuloJsonData.C_MENEDEKJOGGALRENDELKEZO
,TanuloJsonData.C_EGYEBDONTO
,TanuloJsonData.C_MEGALLAPODASOS
,TanuloJsonData.C_OSZTV
,TanuloJsonData.C_SZETVAGAZAT
,TanuloJsonData.C_SZKTV
,TanuloJsonData.C_TECHNIKUSIEVFOLYAM
,TanuloJsonData.C_EGYUTTMUKODESES
,TanuloJsonData.C_ISKOLAIKERETEKKOZOTT
,TanuloJsonData.C_ISSZAKMAIGYAKORLATHIANY
,TanuloJsonData.C_ISKIFIRIMPORTALT
,TanuloJsonData.C_FELVETELTANEVEID
,TanuloJsonData.C_ALINTEZMENYID
,TanuloJsonData.C_ALTANEVID
,TanuloJsonData.TOROLT
,TanuloJsonData.SERIAL
,TanuloJsonData.LASTCHANGED
,TanuloJsonData.CREATED
,TanuloJsonData.MODIFIER
,TanuloJsonData.CREATOR
,TanuloJsonData.ELOZOTANEVIREKORDID
,TanuloJsonData.NNID
,TanuloJsonData.Operation
FROM OPENJSON(@pImportJson, N'lax $.ImportJson.T_TANULO_OSSZES')
WITH (
ID INT '$.ID'
,C_TANTERVID INT '$.C_TANTERVID'
,C_ELOZOINTEZMENY NVARCHAR(255) '$.C_ELOZOINTEZMENY'
,C_ALLAMIGONDOZOTT CHAR(1) '$.C_ALLAMIGONDOZOTT'
,C_BEILLESZKEDESINEHEZSEG CHAR(1) '$.C_BEILLESZKEDESINEHEZSEG'
,C_BEJARO CHAR(1) '$.C_BEJARO'
,C_EVISMETLO CHAR(1) '$.C_EVISMETLO'
,C_JOGVISZONYATSZUNETELTETO CHAR(1) '$.C_JOGVISZONYATSZUNETELTETO'
,C_MAGANTANULO CHAR(1) '$.C_MAGANTANULO'
,C_POLGARISZERZODESES CHAR(1) '$.C_POLGARISZERZODESES'
,C_SZAKMAIGYAKORLATON CHAR(1) '$.C_SZAKMAIGYAKORLATON'
,C_SZOCIALISTAMOGATAS CHAR(1) '$.C_SZOCIALISTAMOGATAS'
,C_TANDIJATFIZETO CHAR(1) '$.C_TANDIJATFIZETO'
,C_TANKOTELEZETT CHAR(1) '$.C_TANKOTELEZETT'
,C_TANULOSZERZODESES CHAR(1) '$.C_TANULOSZERZODESES'
,C_TERITESIDIJATFIZETO CHAR(1) '$.C_TERITESIDIJATFIZETO'
,C_TESTNEVELESTIPUSA INT '$.C_TESTNEVELESTIPUSA'
,C_VENDEG CHAR(1) '$.C_VENDEG'
,C_BTMPROBLEMAS CHAR(1) '$.C_BTMPROBLEMAS'
,C_DIAKSPORTKOROS CHAR(1) '$.C_DIAKSPORTKOROS'
,C_HALMOZOTTANFOGYATEKOS CHAR(1) '$.C_HALMOZOTTANFOGYATEKOS'
,C_HATRANYOSHELYZETU INT '$.C_HATRANYOSHELYZETU'
,C_KOLLEGIUMIELLATASOS CHAR(1) '$.C_KOLLEGIUMIELLATASOS'
,C_SAJATOSNEVELESU CHAR(1) '$.C_SAJATOSNEVELESU'
,C_VESZELYEZTETETT CHAR(1) '$.C_VESZELYEZTETETT'
,C_BEILLESZKEDESIPROBLEMAVALKUZ CHAR(1) '$.C_BEILLESZKEDESIPROBLEMAVALKUZ'
,C_MAGATARTASIPROBLEMAVALKUZD CHAR(1) '$.C_MAGATARTASIPROBLEMAVALKUZD'
,C_TANULASIPROBLEMADISZGRAFIA CHAR(1) '$.C_TANULASIPROBLEMADISZGRAFIA'
,C_TANULASIPROBLEMAVALKUZD CHAR(1) '$.C_TANULASIPROBLEMAVALKUZD'
,C_TANULASIPROBLEMAVALKUZDDISZK CHAR(1) '$.C_TANULASIPROBLEMAVALKUZDDISZK'
,C_TANULASIPROBLEMAVALKUZDDISZL CHAR(1) '$.C_TANULASIPROBLEMAVALKUZDDISZL'
,C_KOZEPFOKUOKTATASBATIZENHATOD CHAR(1) '$.C_KOZEPFOKUOKTATASBATIZENHATOD'
,C_MENEDEKJOGGALRENDELKEZO CHAR(1) '$.C_MENEDEKJOGGALRENDELKEZO'
,C_EGYEBDONTO CHAR(1) '$.C_EGYEBDONTO'
,C_MEGALLAPODASOS CHAR(1) '$.C_MEGALLAPODASOS'
,C_OSZTV CHAR(1) '$.C_OSZTV'
,C_SZETVAGAZAT CHAR(1) '$.C_SZETVAGAZAT'
,C_SZKTV CHAR(1) '$.C_SZKTV'
,C_TECHNIKUSIEVFOLYAM CHAR(1) '$.C_TECHNIKUSIEVFOLYAM'
,C_EGYUTTMUKODESES CHAR(1) '$.C_EGYUTTMUKODESES'
,C_ISKOLAIKERETEKKOZOTT CHAR(1) '$.C_ISKOLAIKERETEKKOZOTT'
,C_ISSZAKMAIGYAKORLATHIANY CHAR(1) '$.C_ISSZAKMAIGYAKORLATHIANY'
,C_ISKIFIRIMPORTALT CHAR(1) '$.C_ISKIFIRIMPORTALT'
,C_FELVETELTANEVEID INT '$.C_FELVETELTANEVEID'
,C_ALINTEZMENYID INT '$.C_INTEZMENYID'
,C_ALTANEVID INT '$.C_TANEVID'
,TOROLT CHAR(1) '$.TOROLT'
,SERIAL INT '$.SERIAL'
,LASTCHANGED DATETIME '$.LASTCHANGED'
,CREATED DATETIME '$.CREATED'
,MODIFIER INT '$.MODIFIER'
,CREATOR INT '$.CREATOR'
,ELOZOTANEVIREKORDID INT '$.ELOZOTANEVIREKORDID'
,NNID INT '$.NNID'
,Operation INT '$.Operation'
,Vezeteknev NVARCHAR(255) '$.Vezeteknev'
,Keresztnev NVARCHAR(255) '$.Keresztnev'
,SzuletesiHely NVARCHAR(50) '$.SzuletesiHely'
,SzuletesiIdo DATETIME '$.SzuletesiIdo'
,OktatasiAzonosito NVARCHAR(20) '$.OktatasiAzonosito'
) TanuloJsonData
LEFT JOIN
T_FELHASZNALO_OSSZES Felhasznalo ON
--NOTE: A leküldött adat már teljesen jól formázott, de a db-ben lehetnek rossz adatok. Az összehasonlításhoz ezt csináljuk:
-- Kisbetűsítjük -> Lecseréljük a NO BREAK SPACE-eket, SPACE-ekre -> Lecseréljük az összes többszörös szóközt egyre -> Trimmelünk
LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(Felhasznalo.C_VEZETEKNEV),CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))) = LOWER(TanuloJsonData.Vezeteknev)
AND LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(Felhasznalo.C_UTONEV),CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))) = LOWER(TanuloJsonData.Keresztnev)
AND LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(Felhasznalo.C_SZULETESIHELY),CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))) = LOWER(TanuloJsonData.SzuletesiHely)
AND Felhasznalo.C_SZULETESIDATUM = TanuloJsonData.SzuletesiIdo
AND Felhasznalo.C_OKTATASIAZONOSITO = TanuloJsonData.OktatasiAzonosito
AND Felhasznalo.C_INTEZMENYID = @pIntezmenyId
AND Felhasznalo.C_TANEVID = @pTanevId
AND Felhasznalo.TOROLT = 'F'
--NOTE: Cim temp tábla incializálása
CREATE TABLE #CimTempTable (
ID INT
,C_CIMTIPUSA INT
,C_IRANYITOSZAM NVARCHAR(20)
,C_VAROS NVARCHAR(50)
,C_KOZTERULET NVARCHAR(40)
,C_KOZTERULETJELLEGE INT
,C_HAZSZAM NVARCHAR(30)
,C_ORSZAG INT
,C_ALAPERTELMEZETT CHAR(1)
,C_EMELET NVARCHAR(40)
,C_AJTO NVARCHAR(30)
,C_FELHASZNALOID INT
,C_INTEZMENYID INT
,C_TANEVID INT
,TOROLT CHAR(1)
,SERIAL INT
,LASTCHANGED DATETIME
,CREATED DATETIME
,MODIFIER INT
,CREATOR INT
,ELOZOTANEVIREKORDID INT
,NNID INT
,Operation INT
)
INSERT INTO
#CimTempTable
SELECT
CimJsonData.ID
,CimJsonData.C_CIMTIPUSA
,CimJsonData.C_IRANYITOSZAM
,CimJsonData.C_VAROS
,CimJsonData.C_KOZTERULET
,CimJsonData.C_KOZTERULETJELLEGE
,CimJsonData.C_KOZTERULETJELLEGENEV
,CimJsonData.C_HAZSZAM
,CimJsonData.C_ORSZAG
,CimJsonData.C_ALAPERTELMEZETT
,CimJsonData.C_EMELET
,CimJsonData.C_AJTO
,Felhasznalo.ID
,CimJsonData.C_INTEZMENYID
,CimJsonData.C_TANEVID
,CimJsonData.TOROLT
,CimJsonData.SERIAL
,CimJsonData.LASTCHANGED
,CimJsonData.CREATED
,CimJsonData.MODIFIER
,CimJsonData.CREATOR
,CimJsonData.ELOZOTANEVIREKORDID
,CimJsonData.NNID
,CimJsonData.Operation
FROM OPENJSON(@pImportJson, N'lax $.ImportJson.T_CIM_OSSZES')
WITH (
ID INT '$.ID'
,C_CIMTIPUSA INT '$.C_CIMTIPUSA'
,C_IRANYITOSZAM NVARCHAR(20) '$.C_IRANYITOSZAM'
,C_VAROS NVARCHAR(50) '$.C_VAROS'
,C_KOZTERULET NVARCHAR(40) '$.C_KOZTERULET'
,C_KOZTERULETJELLEGE INT '$.C_KOZTERULETJELLEGE'
,C_KOZTERULETJELLEGENEV NVARCHAR(100) '$.C_KOZTERULETJELLEGENEV'
,C_HAZSZAM NVARCHAR(30) '$.C_HAZSZAM'
,C_ORSZAG INT '$.C_ORSZAG'
,C_ALAPERTELMEZETT CHAR(1) '$.C_ALAPERTELMEZETT'
,C_EMELET NVARCHAR(40) '$.C_EMELET'
,C_AJTO NVARCHAR(30) '$.C_AJTO'
,C_INTEZMENYID INT '$.C_INTEZMENYID'
,C_TANEVID INT '$.C_TANEVID'
,TOROLT CHAR(1) '$.TOROLT'
,SERIAL INT '$.SERIAL'
,LASTCHANGED DATETIME '$.LASTCHANGED'
,CREATED DATETIME '$.CREATED'
,MODIFIER INT '$.MODIFIER'
,CREATOR INT '$.CREATOR'
,ELOZOTANEVIREKORDID INT '$.ELOZOTANEVIREKORDID'
,NNID INT '$.NNID'
,Operation INT '$.Operation'
,Vezeteknev NVARCHAR(255) '$.Vezeteknev'
,Keresztnev NVARCHAR(255) '$.Keresztnev'
,SzuletesiHely NVARCHAR(50) '$.SzuletesiHely'
,SzuletesiIdo DATETIME '$.SzuletesiIdo'
,OktatasiAzonosito NVARCHAR(20) '$.OktatasiAzonosito'
) CimJsonData
LEFT JOIN
T_FELHASZNALO_OSSZES Felhasznalo ON
--NOTE: A leküldött adat már teljesen jól formázott, de a db-ben lehetnek rossz adatok. Az összehasonlításhoz ezt csináljuk:
-- Kisbetűsítjük -> Lecseréljük a NO BREAK SPACE-eket, SPACE-ekre -> Lecseréljük az összes többszörös szóközt egyre -> Trimmelünk
LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(Felhasznalo.C_VEZETEKNEV),CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))) = LOWER(CimJsonData.Vezeteknev)
AND LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(Felhasznalo.C_UTONEV),CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))) = LOWER(CimJsonData.Keresztnev)
AND LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(Felhasznalo.C_SZULETESIHELY),CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))) = LOWER(CimJsonData.SzuletesiHely)
AND Felhasznalo.C_SZULETESIDATUM = CimJsonData.SzuletesiIdo
AND Felhasznalo.C_OKTATASIAZONOSITO = CimJsonData.OktatasiAzonosito
AND Felhasznalo.C_INTEZMENYID = @pIntezmenyId
AND Felhasznalo.C_TANEVID = @pTanevId
AND Felhasznalo.TOROLT = 'F'
--NOTE: Email temp tábla incializálása
CREATE TABLE #EmailTempTable (
ID INT
,C_EMAILTIPUSA INT
,C_EMAILCIM NVARCHAR(200)
,C_ALAPERTELMEZETT CHAR(1)
,C_ISPUBLIC CHAR(1)
,C_FELHASZNALOID INT
,C_INTEZMENYID INT
,C_TANEVID INT
,TOROLT CHAR(1)
,SERIAL INT
,LASTCHANGED DATETIME
,CREATED DATETIME
,MODIFIER INT
,CREATOR INT
,ELOZOTANEVIREKORDID INT
,NNID INT
,Operation INT
)
INSERT INTO
#EmailTempTable
SELECT
EmailJsonData.ID
,EmailJsonData.C_EMAILTIPUSA
,EmailJsonData.C_EMAILCIM
,EmailJsonData.C_ALAPERTELMEZETT
,EmailJsonData.C_ISPUBLIC
,Felhasznalo.ID
,EmailJsonData.C_INTEZMENYID
,EmailJsonData.C_TANEVID
,EmailJsonData.TOROLT
,EmailJsonData.SERIAL
,EmailJsonData.LASTCHANGED
,EmailJsonData.CREATED
,EmailJsonData.MODIFIER
,EmailJsonData.CREATOR
,EmailJsonData.ELOZOTANEVIREKORDID
,EmailJsonData.NNID
,EmailJsonData.Operation
FROM OPENJSON(@pImportJson, N'lax $.ImportJson.T_EMAIL_OSSZES')
WITH (
ID INT '$.ID'
,C_EMAILTIPUSA INT '$.C_EMAILTIPUSA'
,C_EMAILCIM NVARCHAR(200) '$.C_EMAILCIM'
,C_ALAPERTELMEZETT CHAR(1) '$.C_ALAPERTELMEZETT'
,C_ISPUBLIC CHAR(1) '$.C_ISPUBLIC'
,C_INTEZMENYID INT '$.C_INTEZMENYID'
,C_TANEVID INT '$.C_TANEVID'
,TOROLT CHAR(1) '$.TOROLT'
,SERIAL INT '$.SERIAL'
,LASTCHANGED DATETIME '$.LASTCHANGED'
,CREATED DATETIME '$.CREATED'
,MODIFIER INT '$.MODIFIER'
,CREATOR INT '$.CREATOR'
,ELOZOTANEVIREKORDID INT '$.ELOZOTANEVIREKORDID'
,NNID INT '$.NNID'
,Operation INT '$.Operation'
,Vezeteknev NVARCHAR(255) '$.Vezeteknev'
,Keresztnev NVARCHAR(255) '$.Keresztnev'
,SzuletesiHely NVARCHAR(50) '$.SzuletesiHely'
,SzuletesiIdo DATETIME '$.SzuletesiIdo'
,OktatasiAzonosito NVARCHAR(20) '$.OktatasiAzonosito'
) EmailJsonData
LEFT JOIN
T_FELHASZNALO_OSSZES Felhasznalo ON
--NOTE: A leküldött adat már teljesen jól formázott, de a db-ben lehetnek rossz adatok. Az összehasonlításhoz ezt csináljuk:
-- Kisbetűsítjük -> Lecseréljük a NO BREAK SPACE-eket, SPACE-ekre -> Lecseréljük az összes többszörös szóközt egyre -> Trimmelünk
LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(Felhasznalo.C_VEZETEKNEV),CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))) = LOWER(EmailJsonData.Vezeteknev)
AND LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(Felhasznalo.C_UTONEV),CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))) = LOWER(EmailJsonData.Keresztnev)
AND LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(Felhasznalo.C_SZULETESIHELY),CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))) = LOWER(EmailJsonData.SzuletesiHely)
AND Felhasznalo.C_SZULETESIDATUM = EmailJsonData.SzuletesiIdo
AND Felhasznalo.C_OKTATASIAZONOSITO = EmailJsonData.OktatasiAzonosito
AND Felhasznalo.C_INTEZMENYID = @pIntezmenyId
AND Felhasznalo.C_TANEVID = @pTanevId
--NOTE: Ha van bejövő cím állandó lakcím típusú a json-ben, akkor az ehhez a címhez tartozó felhasználó összes címének C_ALAPERTELMEZETT mezőjét false-ra állítjuk és a bejövő lesz a egyedül true!
UPDATE
Cim
SET
Cim.C_ALAPERTELMEZETT = 'F'
,Cim.SERIAL = Cim.SERIAL + 1
,Cim.LASTCHANGED = @lastChangedDateTime
,Cim.MODIFIER = @pUserId
FROM
T_FELHASZNALO_OSSZES Felhasznalo
INNER JOIN
#CimTempTable ON
#CimTempTable.C_INTEZMENYID = Felhasznalo.C_INTEZMENYID
AND #CimTempTable.C_TANEVID = Felhasznalo.C_TANEVID
AND #CimTempTable.TOROLT = 'F'
AND #CimTempTable.C_FELHASZNALOID = Felhasznalo.ID
INNER JOIN
T_CIM_OSSZES Cim ON
Cim.C_INTEZMENYID = Felhasznalo.C_INTEZMENYID
AND Cim.C_TANEVID = Felhasznalo.C_TANEVID
AND Cim.TOROLT = 'F'
AND Cim.C_FELHASZNALOID = Felhasznalo.ID
AND Cim.C_ALAPERTELMEZETT = 'T'
WHERE
Felhasznalo.C_INTEZMENYID = @pIntezmenyId
AND Felhasznalo.C_TANEVID = @pTanevId
AND Felhasznalo.TOROLT = 'F'
--NOTE: Ha van bejövő email a json-ben, akkor az ehhez a email-hez tartozó felhasználó összes email-jének C_ALAPERTELMEZETT mezőjét false-ra állítjuk és a bejövő lesz a egyedül true!
UPDATE
Email
SET
Email.C_ALAPERTELMEZETT = 'F'
,Email.SERIAL = Email.SERIAL + 1
,Email.LASTCHANGED = @lastChangedDateTime
,Email.MODIFIER = @pUserId
FROM
T_FELHASZNALO_OSSZES Felhasznalo
INNER JOIN
#EmailTempTable ON
#EmailTempTable.C_INTEZMENYID = Felhasznalo.C_INTEZMENYID
AND #EmailTempTable.C_TANEVID = Felhasznalo.C_TANEVID
AND #EmailTempTable.TOROLT = 'F'
AND #EmailTempTable.C_FELHASZNALOID = Felhasznalo.ID
INNER JOIN
T_EMAIL_OSSZES Email ON
Email.C_INTEZMENYID = Felhasznalo.C_INTEZMENYID
AND Email.C_TANEVID = Felhasznalo.C_TANEVID
AND Email.TOROLT = 'F'
AND Email.C_FELHASZNALOID = Felhasznalo.ID
AND Email.C_ALAPERTELMEZETT = 'T'
WHERE
Felhasznalo.C_INTEZMENYID = @pIntezmenyId
AND Felhasznalo.C_TANEVID = @pTanevId
AND Felhasznalo.TOROLT = 'F'
--Tanulók beszúrása
SET @actualJson = ' { "ImportJson":{ "T_TANULO_OSSZES":' + (
SELECT
Tanulo.ID
,Tanulo.C_TANTERVID
,Tanulo.C_ELOZOINTEZMENY
,Tanulo.C_ALLAMIGONDOZOTT
,Tanulo.C_BEILLESZKEDESINEHEZSEG
,Tanulo.C_BEJARO
,Tanulo.C_EVISMETLO
,Tanulo.C_JOGVISZONYATSZUNETELTETO
,Tanulo.C_MAGANTANULO
,Tanulo.C_POLGARISZERZODESES
,Tanulo.C_SZAKMAIGYAKORLATON
,Tanulo.C_SZOCIALISTAMOGATAS
,Tanulo.C_TANDIJATFIZETO
,Tanulo.C_TANKOTELEZETT
,Tanulo.C_TANULOSZERZODESES
,Tanulo.C_TERITESIDIJATFIZETO
,Tanulo.C_TESTNEVELESTIPUSA
,Tanulo.C_VENDEG
,Tanulo.C_BTMPROBLEMAS
,Tanulo.C_DIAKSPORTKOROS
,Tanulo.C_HALMOZOTTANFOGYATEKOS
,Tanulo.C_HATRANYOSHELYZETU
,Tanulo.C_KOLLEGIUMIELLATASOS
,Tanulo.C_SAJATOSNEVELESU
,Tanulo.C_VESZELYEZTETETT
,Tanulo.C_BEILLESZKEDESIPROBLEMAVALKUZ
,Tanulo.C_MAGATARTASIPROBLEMAVALKUZD
,Tanulo.C_TANULASIPROBLEMADISZGRAFIA
,Tanulo.C_TANULASIPROBLEMAVALKUZD
,Tanulo.C_TANULASIPROBLEMAVALKUZDDISZK
,Tanulo.C_TANULASIPROBLEMAVALKUZDDISZL
,Tanulo.C_KOZEPFOKUOKTATASBATIZENHATOD
,Tanulo.C_MENEDEKJOGGALRENDELKEZO
,Tanulo.C_EGYEBDONTO
,Tanulo.C_MEGALLAPODASOS
,Tanulo.C_OSZTV
,Tanulo.C_SZETVAGAZAT
,Tanulo.C_SZKTV
,Tanulo.C_TECHNIKUSIEVFOLYAM
,Tanulo.C_EGYUTTMUKODESES
,Tanulo.C_ISKOLAIKERETEKKOZOTT
,Tanulo.C_ISSZAKMAIGYAKORLATHIANY
,Tanulo.C_ISKIFIRIMPORTALT
,Tanulo.C_FELVETELTANEVEID
,Tanulo.C_ALINTEZMENYID
,Tanulo.C_ALTANEVID
,Tanulo.TOROLT
,Tanulo.SERIAL
,Tanulo.LASTCHANGED
,Tanulo.CREATED
,Tanulo.MODIFIER
,Tanulo.CREATOR
,Tanulo.ELOZOTANEVIREKORDID
,Tanulo.NNID
,Tanulo.Operation
FROM
#TanuloTempTable AS Tanulo
FOR JSON PATH,INCLUDE_NULL_VALUES
)
SET @actualJson = @actualJson + ' } }'
--NOTE: A törlés azért false, mert a tanuló importálásoknál soha nem törlünk!
EXECUTE [dbo].[uspDynamicImport] @pIntezmenyId = @pIntezmenyId, @pTanevId = @pTanevId, @pUserId = @pUserId, @pImportJson = @actualJson, @pIsTorles = 0, @pIsSubTable = 1
DROP TABLE IF EXISTS #TanuloTempTable
--Címek beszúrása
SET @actualJson = ' { "ImportJson":{ "T_CIM_OSSZES":' + (
SELECT
Cim.ID
,Cim.C_CIMTIPUSA
,Cim.C_IRANYITOSZAM
,Cim.C_VAROS
,Cim.C_KOZTERULET
,Cim.C_KOZTERULETJELLEGE
,Cim.C_KOZTERULETJELLEGENEV
,Cim.C_HAZSZAM
,Cim.C_ORSZAG
,Cim.C_ALAPERTELMEZETT
,Cim.C_EMELET
,Cim.C_AJTO
,Cim.C_FELHASZNALOID
,Cim.C_INTEZMENYID
,Cim.C_TANEVID
,Cim.TOROLT
,Cim.SERIAL
,Cim.LASTCHANGED
,Cim.CREATED
,Cim.MODIFIER
,Cim.CREATOR
,Cim.ELOZOTANEVIREKORDID
,Cim.NNID
,Cim.Operation
FROM
#CimTempTable AS Cim
FOR JSON PATH,INCLUDE_NULL_VALUES
)
SET @actualJson = @actualJson + ' } }'
--NOTE: A törlés azért false, mert a tanuló importálásoknál soha nem törlünk!
EXECUTE [dbo].[uspDynamicImport] @pIntezmenyId = @pIntezmenyId, @pTanevId = @pTanevId, @pUserId = @pUserId, @pImportJson = @actualJson, @pIsTorles = 0, @pIsSubTable = 0
DROP TABLE IF EXISTS #CimTempTable
--Emailek beszúrása
SET @actualJson = ' { "ImportJson":{ "T_EMAIL_OSSZES":' + (
SELECT
Email.ID
,Email.C_EMAILTIPUSA
,Email.C_EMAILCIM
,Email.C_ALAPERTELMEZETT
,Email.C_ISPUBLIC
,Email.C_FELHASZNALOID
,Email.C_INTEZMENYID
,Email.C_TANEVID
,Email.TOROLT
,Email.SERIAL
,Email.LASTCHANGED
,Email.CREATED
,Email.MODIFIER
,Email.CREATOR
,Email.ELOZOTANEVIREKORDID
,Email.NNID
,Email.Operation
FROM
#EmailTempTable AS Email
FOR JSON PATH,INCLUDE_NULL_VALUES
)
SET @actualJson = @actualJson + ' } }'
--NOTE: A törlés azért false, mert a tanuló importálásoknál soha nem törlünk!
EXECUTE [dbo].[uspDynamicImport] @pIntezmenyId = @pIntezmenyId, @pTanevId = @pTanevId, @pUserId = @pUserId, @pImportJson = @actualJson, @pIsTorles = 0, @pIsSubTable = 0
DROP TABLE IF EXISTS #EmailTempTable
END
GO