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,21 @@
DECLARE intezmenytanevekCursor CURSOR LOCAL FOR
SELECT C_INTEZMENYID, C_TANEVID
FROM T_INTEZMENYADATOK
--WHERE TOROLT = 'F'
DECLARE @intezmenyId int, @tanevId int
OPEN intezmenytanevekCursor
FETCH NEXT FROM intezmenytanevekCursor INTO @intezmenyId, @tanevId
WHILE @@FETCH_STATUS = 0
BEGIN
PRINT 'INT<EFBFBD>ZM<EFBFBD>NY ID: ' + CAST(@intezmenyId AS NVARCHAR(10)) + ', TAN<41>V ID: ' + CAST(@tanevId AS NVARCHAR(10))
EXEC sp_Global_CreateDictionaryItems @IntezmenyId = @intezmenyId, @TanevId = @tanevId
FETCH NEXT FROM intezmenytanevekCursor INTO @intezmenyId, @tanevId
END
CLOSE intezmenytanevekCursor
DEALLOCATE intezmenytanevekCursor

View File

@@ -0,0 +1,61 @@
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_CheckNebulo4TValidation]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_CheckNebulo4TValidation]
END
GO
-- =============================================
-- Description: <Ellenőrizzuk, hogy a megadott nebuló 4T alapján szerepel-e az adatbázisban>
-- =============================================
CREATE PROCEDURE [dbo].[sp_CheckNebulo4TValidation]
@pNebuloId AS INT = NULL,
@pVezeteknev NVARCHAR(255),
@pUtonev NVARCHAR(255),
@pAnyjaVezeteknev NVARCHAR(255),
@pAnyjaUtonev NVARCHAR(255),
@pSzuletesiHely NVARCHAR(50),
@pSzuletesiDatum DATETIME
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
IF
EXISTS (SELECT 1
FROM
T_NEBULO
WHERE
T_NEBULO.TOROLT = 'F'
AND C_TANULOCSALADINEVE = @pVezeteknev
AND C_TANULOUTONEVE = @pUtonev
AND C_EDESANYJASZULETESICSALADINEV = @pAnyjaVezeteknev
AND C_EDESANYJASZULETESIUTONEVE = @pAnyjaUtonev
AND C_SZULETESIHELY = @pSzuletesiHely
AND C_SZULETESIIDO = @pSzuletesiDatum
AND (@pNebuloId IS NULL OR T_NEBULO.ID != @pNebuloId)
) OR
EXISTS (SELECT 1
FROM
T_FELHASZNALO
WHERE
T_FELHASZNALO.TOROLT = 'F'
AND C_VEZETEKNEV = @pVezeteknev
AND C_UTONEV = @pUtonev
AND C_ANYJANEVE = @pAnyjaVezeteknev + ' ' + @pAnyjaUtonev
AND C_SZULETESIHELY = @pSzuletesiHely
AND C_SZULETESIDATUM = @pSzuletesiDatum
)
SELECT 1
ELSE
SELECT 0
END

View File

@@ -0,0 +1,221 @@
-- =============================================
-- Description: A nebuló lista importálása XML-ből
-- =============================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('[dbo].[sp_NebuloImport]') IS NOT NULL
BEGIN
DROP PROCEDURE [dbo].[sp_NebuloImport]
END
GO
CREATE PROCEDURE [dbo].[sp_NebuloImport]
-- Add the parameters for the stored procedure here
@pNebuloListXml XML
,@pIntezmenyId INT
,@pTanevId INT
,@pUserId INT
,@pNebuloImportTipusId INT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements.
SET NOCOUNT ON;
-- XML paraméter értelmezése
SELECT
-- MERGE-höz adatok
NebuloID = 0
,IsExistingNebulo = 0
--Egyszerű import adatok
,Vezeteknev = Nebulo.value('(Vezeteknev)[1]', 'NVARCHAR(255)')
,Keresztnev = Nebulo.value('(Keresztnev)[1]', 'NVARCHAR(255)')
,AnyjaVezetekneve = Nebulo.value('(AnyjaVezetekneve)[1]', 'NVARCHAR(255)')
,AnyjaKeresztneve = Nebulo.value('(AnyjaKeresztneve)[1]', 'NVARCHAR(255)')
,SzuletesiVezeteknev = Nebulo.value('(SzuletesiVezeteknev)[1]', 'NVARCHAR(255)')
,SzuletesiKeresztnev = Nebulo.value('(SzuletesiKeresztnev)[1]', 'NVARCHAR(255)')
,SzuletesiOrszag = Nebulo.value('number((SzuletesiOrszag)[1])', 'INT')
,SzuletesiHely = Nebulo.value('(SzuletesiHely)[1]', 'NVARCHAR(50)')
,SzuletesiIdo = Nebulo.value('(SzuletesiIdoString)[1]', 'DATETIME')
,TKCimeAzonos = Nebulo.value('(TKCimeAzonosString)[1]', 'CHAR(1)')
,THCimeAzonos = Nebulo.value('(THCimeAzonosString)[1]', 'CHAR(1)')
,Anyanyelv = Nebulo.value('number((Anyanyelv)[1])', 'INT')
,Allampolgarsag = Nebulo.value('number((Allampolgarsag)[1])', 'INT')
,EletvitelszeruOttLakasKorzetes = Nebulo.value('(EletvitelszeruOttLakasKorzetesString)[1]', 'CHAR(1)')
,FeladatellatasiHelyId = Nebulo.value('number((FeladatellatasiHelyId)[1])', 'INT')
,Tagozat = Nebulo.value('number((Tagozat)[1])', 'INT')
,FelvetelStatusza = Nebulo.value('number((FelvetelStatusza)[1])', 'INT')
,BTMLetszamSuly = Nebulo.value('number((BTMLetszamSuly)[1])', 'NUMERIC(10,2)')
,SNILetszamSuly = Nebulo.value('number((SNILetszamSuly)[1])', 'NUMERIC(10,2)')
--Egyszerű import lakcímmel adatok
,Iranyitoszam = Nebulo.value('(Iranyitoszam)[1]', 'NVARCHAR(20)')
,Helyseg = Nebulo.value('(Helyseg)[1]', 'NVARCHAR(255)')
,Kozterulet = Nebulo.value('(Kozterulet)[1]', 'NVARCHAR(40)')
,KozteruletJelleg = Nebulo.value('number((KozteruletJelleg)[1])', 'INT')
,Szam = Nebulo.value('(Szam)[1]', 'NVARCHAR(30)')
,Emelet = Nebulo.value('(Emelet)[1]', 'NVARCHAR(40)')
,Ajto = Nebulo.value('(Ajto)[1]', 'NVARCHAR(30)')
INTO
#tempNebuloList
FROM
@pNebuloListXml.nodes('NebuloImport/NebuloList/Nebulo') AS NebuloList(Nebulo)
-- A létező nebulók ID-ját kitöltjük, és az IsExistingNebulo-t is UPDATE-eljük 4T alapján
UPDATE
tempNebulo
SET
tempNebulo.NebuloID = nebulo.ID
,tempNebulo.IsExistingNebulo = IIF(nebulo.ID IS NULL, 0, 1)
FROM
#tempNebuloList tempNebulo
INNER JOIN
T_NEBULO_OSSZES nebulo ON
nebulo.C_TANULOCSALADINEVE = tempNebulo.Vezeteknev AND
nebulo.C_TANULOUTONEVE = tempNebulo.Keresztnev AND
nebulo.C_EDESANYJASZULETESICSALADINEV = tempNebulo.AnyjaVezetekneve AND
nebulo.C_EDESANYJASZULETESIUTONEVE = tempNebulo.AnyjaKeresztneve AND
nebulo.C_SZULETESIORSZAG = tempNebulo.SzuletesiOrszag AND
nebulo.C_SZULETESIHELY = tempNebulo.SzuletesiHely AND
nebulo.C_SZULETESIIDO = tempNebulo.SzuletesiIdo
BEGIN TRY
BEGIN TRANSACTION
DECLARE @currentDateTime DATETIME
SET @currentDateTime = (SELECT GETDATE())
DECLARE @isUpdateLakcim BIT
SET @isUpdateLakcim = CASE WHEN @pNebuloImportTipusId = 1 THEN 1 ELSE 0 END
-- Nebulók INSERT-je vagy UPDATE-je aka MERGE
MERGE T_NEBULO_OSSZES nebulo
USING #tempNebuloList tempNebulo ON
tempNebulo.NebuloID = nebulo.ID AND nebulo.C_TANEVID = @pTanevId
WHEN MATCHED AND tempNebulo.IsExistingNebulo = 1 THEN
UPDATE SET
--Egyszerű import adatok
nebulo.C_TANULOCSALADINEVE = tempNebulo.Vezeteknev
,nebulo.C_TANULOUTONEVE = tempNebulo.Keresztnev
,nebulo.C_EDESANYJASZULETESICSALADINEV = tempNebulo.AnyjaVezetekneve
,nebulo.C_EDESANYJASZULETESIUTONEVE = tempNebulo.AnyjaKeresztneve
,nebulo.C_SZULETESICSALADINEVE = tempNebulo.SzuletesiVezeteknev
,nebulo.C_SZULETESIUTONEVE = tempNebulo.SzuletesiKeresztnev
,nebulo.C_SZULETESIORSZAG = tempNebulo.SzuletesiOrszag
,nebulo.C_SZULETESIHELY = tempNebulo.SzuletesiHely
,nebulo.C_SZULETESIIDO = tempNebulo.SzuletesiIdo
,nebulo.C_FELVETELSTATUSZA = tempNebulo.FelvetelStatusza
--Egyszerű import lakcímmel adatok
,nebulo.C_IRANYITOSZAM = CASE WHEN @isUpdateLakcim = 1 THEN tempNebulo.Iranyitoszam ELSE nebulo.C_IRANYITOSZAM END
,nebulo.C_HELYSEGNEV = CASE WHEN @isUpdateLakcim = 1 THEN tempNebulo.Helyseg ELSE nebulo.C_HELYSEGNEV END
,nebulo.C_KOZTERULETNEV = CASE WHEN @isUpdateLakcim = 1 THEN tempNebulo.Kozterulet ELSE nebulo.C_KOZTERULETNEV END
,nebulo.C_KOZTERULETJELLEGE = CASE WHEN @isUpdateLakcim = 1 THEN tempNebulo.KozteruletJelleg ELSE nebulo.C_KOZTERULETJELLEGE END
,nebulo.C_HAZSZAM = CASE WHEN @isUpdateLakcim = 1 THEN tempNebulo.Szam ELSE nebulo.C_HAZSZAM END
,nebulo.C_EMELET = CASE WHEN @isUpdateLakcim = 1 THEN tempNebulo.Emelet ELSE nebulo.C_EMELET END
,nebulo.C_AJTO = CASE WHEN @isUpdateLakcim = 1 THEN tempNebulo.Ajto ELSE nebulo.C_AJTO END
--Technikai adatok
,nebulo.TOROLT = 'F'
,nebulo.SERIAL = nebulo.SERIAL + 1
,nebulo.LASTCHANGED = @currentDateTime
,nebulo.MODIFIER = @pUserId
WHEN NOT MATCHED THEN
INSERT (
--Egyszerű import adatok
C_TANULOCSALADINEVE
,C_TANULOUTONEVE
,C_EDESANYJASZULETESICSALADINEV
,C_EDESANYJASZULETESIUTONEVE
,C_SZULETESICSALADINEVE
,C_SZULETESIUTONEVE
,C_SZULETESIORSZAG
,C_SZULETESIHELY
,C_SZULETESIIDO
,C_KEPVISELOCIMEAZONOS
,C_TARTOZKODASIHELYAZONOS
,C_ANYANYELVE
,C_ALLAMPOLGARSAGA
,C_ELETVITELSZERUOTTLAKASKORZET
,C_FELADATELLATASIHELYID
,C_TAGOZAT
,C_FELVETELSTATUSZA
,C_BTMLETSZAMSULY
,C_SNILETSZAMSULY
--Egyszerű import lakcímmel adatok
,C_IRANYITOSZAM
,C_HELYSEGNEV
,C_KOZTERULETNEV
,C_KOZTERULETJELLEGE
,C_HAZSZAM
,C_EMELET
,C_AJTO
--Technikai adatok
,C_INTEZMENYID
,C_TANEVID
,TOROLT
,SERIAL
,LASTCHANGED
,CREATED
,MODIFIER
,CREATOR)
VALUES (
--Egyszerű import adatok
tempNebulo.Vezeteknev
,tempNebulo.Keresztnev
,tempNebulo.AnyjaVezetekneve
,tempNebulo.AnyjaKeresztneve
,tempNebulo.SzuletesiVezeteknev
,tempNebulo.SzuletesiKeresztnev
,tempNebulo.SzuletesiOrszag
,tempNebulo.SzuletesiHely
,tempNebulo.SzuletesiIdo
,tempNebulo.TKCimeAzonos
,tempNebulo.THCimeAzonos
,tempNebulo.Anyanyelv
,tempNebulo.Allampolgarsag
,tempNebulo.EletvitelszeruOttLakasKorzetes
,tempNebulo.FeladatellatasiHelyId
,tempNebulo.Tagozat
,tempNebulo.FelvetelStatusza
,tempNebulo.BTMLetszamSuly
,tempNebulo.SNILetszamSuly
--Egyszerű import lakcímmel adatok
,tempNebulo.Iranyitoszam
,tempNebulo.Helyseg
,tempNebulo.Kozterulet
,tempNebulo.KozteruletJelleg
,tempNebulo.Szam
,tempNebulo.Emelet
,tempNebulo.Ajto
--Technikai adatok
,@pIntezmenyId
,@pTanevId
,'F'
,1
,@currentDateTime
,@currentDateTime
,@pUserId
,@pUserId);
COMMIT TRANSACTION
END TRY
BEGIN CATCH
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
ROLLBACK TRANSACTION;
THROW
END CATCH
END
GO