init
This commit is contained in:
@@ -0,0 +1,195 @@
|
||||
DROP FUNCTION IF EXISTS fnGetFollowUpColumnMapping
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetFollowUpColumnMapping (@ExludeColumns nvarchar(max) = NULL,@entityName nvarchar(128))
|
||||
RETURNS @ColumnMapping TABLE (
|
||||
insertColName nvarchar(128) COLLATE DATABASE_DEFAULT
|
||||
,selectColName nvarchar(128)
|
||||
,updateColName nvarchar(128)
|
||||
) AS
|
||||
BEGIN
|
||||
SET @ExludeColumns = ISNULL(@ExludeColumns+',','')+'NNID,ID,NNIDA,CORE_ID'
|
||||
DECLARE @excludedColumns TABLE(colName nvarchar(128) COLLATE DATABASE_DEFAULT)
|
||||
INSERT INTO @excludedColumns
|
||||
SELECT
|
||||
value
|
||||
FROM string_split(@ExludeColumns,',')
|
||||
|
||||
INSERT INTO @ColumnMapping (insertColName,selectColName) VALUES
|
||||
('TOROLT','''F''')
|
||||
,('SERIAL','0')
|
||||
,('CREATOR','s.MODIFIER')
|
||||
,('CREATED','s.LASTCHANGED')
|
||||
,('ELOZOTANEVIREKORDID','s.ID')
|
||||
|
||||
INSERT INTO @ColumnMapping (insertColName,selectColName)
|
||||
SELECT
|
||||
c.name,'s.'+c.name
|
||||
FROM sys.columns c
|
||||
INNER JOIN sys.tables t ON t.object_id = c.object_id AND t.name = @entityName
|
||||
WHERE c.NAME NOT IN (SELECT colName from @excludedColumns)
|
||||
AND NOT EXISTS (SELECT 1 FROM @ColumnMapping WHERE insertColName = c.name)
|
||||
|
||||
DELETE FROM @ColumnMapping
|
||||
WHERE NOT EXISTS (
|
||||
SELECT
|
||||
1
|
||||
FROM sys.columns c
|
||||
INNER JOIN sys.tables t ON t.object_id = c.object_id AND t.name = @entityName
|
||||
WHERE c.NAME = insertColName)
|
||||
|
||||
DELETE @ColumnMapping WHERE insertColName IN (select colName FROM @excludedColumns)
|
||||
|
||||
UPDATE @ColumnMapping SET selectColName = '@kovetkezoTanevId' WHERE insertColName IN('C_TANEVID','C_ALTANEVID')
|
||||
UPDATE @ColumnMapping SET selectColName = '@intezmenyId' WHERE insertColName IN('C_INTEZMENYID','C_ALINTEZMENYID')
|
||||
|
||||
IF @entityName IN('T_CIM','T_EMAIL','T_TELEFON') BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = '@kovFelhasznaloId' WHERE insertColName = 'C_FELHASZNALOID'
|
||||
END
|
||||
ELSE IF @entityName IN('T_MUNKAUGYIADATOK','T_TOVABBIMUNKAUGYIADATOK') BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = '@ujAlkalmazottId' WHERE insertColName = 'C_ALKALMAZOTTID'
|
||||
UPDATE @ColumnMapping SET selectColName = 'f.ID' WHERE insertColName = 'C_FELADATELLATASIHELYID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_ALKALMAZOTT' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 's.ID' WHERE insertColName = 'ELOZOTANEVIREKORDIDA'
|
||||
UPDATE @ColumnMapping SET selectColName = '(SELECT CASE WHEN DB_NAME() LIKE ''%KRETA_KLIK%'' THEN s.C_KKKEPESITESID ELSE NULL END)' WHERE insertColName IN('C_KKKEPESITESID')
|
||||
END
|
||||
ELSE IF @entityName IN('T_KKTANITOVEZGETTSEG','T_KKGYOGYPEDVEGZETTSEG','T_KKTANARVEGZETTSEG','T_KKAMIVEGZETTSEG') BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = '@kovAlkalmazottId' WHERE insertColName = 'C_ALKALMAZOTTID'
|
||||
END
|
||||
ELSE IF @entityName IN('T_KKELEKTROAKUZENE','T_KKKLASSZIKUSZENE','T_KKJAZZZENE','T_KKNEPZENE','T_KKTERULET') BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'av.ID' WHERE insertColName = 'C_KKAMIVEGZETTSEGID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_KKTANTARGYKATEGORIA' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'av.ID' WHERE insertColName = 'C_KKTANARVEGZETTSEGID'
|
||||
END
|
||||
ELSE IF @entityName IN ('T_PEDAGOGUSELETPALYAMODELL','T_VEGZETTSEG') BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'fh.ID' WHERE insertColName = 'C_TANARID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_KEPESITES_VEGZETTSEG' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'k.ID' WHERE insertColName = 'C_KEPESITESID'
|
||||
UPDATE @ColumnMapping SET selectColName = 'vKov.ID' WHERE insertColName = 'C_VEGZETTSEGID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_TANULOMENTESSEG' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'tgy.ID' WHERE insertColName = 'C_TANTARGYID'
|
||||
UPDATE @ColumnMapping SET selectColName = 'tKov.ID' WHERE insertColName = 'C_TANULOID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_GONDVISELO' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'fhNew.ID' WHERE insertColName = 'C_TANULOID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_ORATERVTARGY' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'tgy.ID' WHERE insertColName = 'C_TANTARGYID'
|
||||
UPDATE @ColumnMapping SET selectColName = 'otKov.ID' WHERE insertColName = 'C_ORATERVID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_ORATERV' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'e.ID' WHERE insertColName = 'C_EVFOLYAM'
|
||||
UPDATE @ColumnMapping SET selectColName = 'tr.ID' WHERE insertColName = 'C_TANTERVID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_CSENGETESIREND' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'mh.ID' WHERE insertColName = 'C_MUKODESIHELYID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_CSENGETESIRENDORA' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'csr.ID' WHERE insertColName = 'C_CSENGETESIRENDID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_TEREM' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'mh.ID' WHERE insertColName = 'C_MUKODESIHELYID'
|
||||
UPDATE @ColumnMapping SET selectColName = '@felelosId' WHERE insertColName = 'C_TEREMFELELOSID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_FELADATELLATASIHELY' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'mh.ID' WHERE insertColName = 'C_MUKODESIHELYID'
|
||||
UPDATE @ColumnMapping SET selectColName = 'okt.ID' WHERE insertColName = 'C_OKTATASINEVELESIFELADATTIPUS'
|
||||
END
|
||||
ELSE IF @entityName = 'T_TANTARGY' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'tkt.ID' WHERE insertColName = 'C_TARGYKATEGORIA'
|
||||
UPDATE @ColumnMapping SET selectColName = 'ftgy.ID' WHERE insertColName = 'C_FOTARGYID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_MUKODESIHELY' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'ia.ID' WHERE insertColName = 'C_INTEZMENYADATOKID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_ESZKOZ' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'te.ID' WHERE insertColName = 'C_TEREMID'
|
||||
UPDATE @ColumnMapping SET selectColName = 'fh.ID' WHERE insertColName = 'C_FELELOSID'
|
||||
UPDATE @ColumnMapping SET selectColName = '@aktTipusId' WHERE insertColName = 'C_TIPUS'
|
||||
END
|
||||
|
||||
|
||||
UPDATE @ColumnMapping SET
|
||||
updateColName = 's.'+insertColName
|
||||
WHERE insertColName NOT IN (
|
||||
'CREATED'
|
||||
,'CREATOR'
|
||||
,'ELOZOTANEVIREKORDID'
|
||||
,'ELOZOTANEVIREKORDIDA'
|
||||
,'C_INTEZMENYID'
|
||||
,'C_TANEVID'
|
||||
,'C_ALINTEZMENYID'
|
||||
,'C_ALTANEVID'
|
||||
,'C_ALKALMAZOTTID'
|
||||
,'TOROLT'
|
||||
,'C_KKAMIVEGZETTSEGID'
|
||||
)
|
||||
|
||||
IF @entityName = 'T_KKTANTARGYKATEGORIA' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName = 'C_KKTANARVEGZETTSEGID'
|
||||
END
|
||||
IF @entityName IN('T_MUNKAUGYIADATOK','T_TOVABBIMUNKAUGYIADATOK') BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = 'f.ID' WHERE insertColName = 'C_FELADATELLATASIHELYID'
|
||||
END
|
||||
ELSE IF @entityName IN ('T_VEGZETTSEG','T_PEDAGOGUSELETPALYAMODELL') BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName = 'C_TANARID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_TANULO' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = 'tr.ID' WHERE insertColName = 'C_TANTERVID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_TANULOMENTESSEG' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = 'tgy.ID' WHERE insertColName = 'C_TANTARGYID'
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName = 'C_TANULOID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_GONDVISELO' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName IN ('C_TANULOID','C_EGYEDIAZONOSITO')
|
||||
END
|
||||
ELSE IF @entityName IN('T_CIM','T_TELEFON','T_EMAIL') BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName IN ('C_FELHASZNALOID','C_GONDVISELOID')
|
||||
END
|
||||
ELSE IF @entityName = 'T_ORATERVTARGY' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName = 'C_ORATERVID'
|
||||
UPDATE @ColumnMapping SET updateColname = 'tgy.ID' WHERE insertColName = 'C_TANTARGYID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_ORATERV' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = 'e.ID' WHERE insertColName = 'C_EVFOLYAM'
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName = 'C_TANTERVID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_CSENGETESIREND' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName = 'C_MUKODESIHELYID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_CSENGETESIRENDORA' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName = 'C_CSENGETESIRENDID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_TEREM' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = 'mh.ID' WHERE insertColName = 'C_MUKODESIHELYID'
|
||||
UPDATE @ColumnMapping SET updateColName = '@felelosId' WHERE insertColName = 'C_TEREMFELELOSID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_FELADATELLATASIHELY' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName = 'C_MUKODESIHELYID'
|
||||
UPDATE @ColumnMapping SET updateColName = 'okt.ID' WHERE insertColName = 'C_OKTATASINEVELESIFELADATTIPUS'
|
||||
END
|
||||
ELSE IF @entityName = 'T_TANTARGY' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = 'tkt.ID' WHERE insertColName = 'C_TARGYKATEGORIA'
|
||||
UPDATE @ColumnMapping SET updateColName = 'ftgy.ID' WHERE insertColName = 'C_FOTARGYID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_MUKODESIHELY' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName = 'C_INTEZMENYADATOKID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_ESZKOZ' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = 'te.ID' WHERE insertColName = 'C_TEREMID'
|
||||
UPDATE @ColumnMapping SET updateColName = 'fh.ID' WHERE insertColName = 'C_FELELOSID'
|
||||
UPDATE @ColumnMapping SET updateColName = '@aktTipusId' WHERE insertColName = 'C_TIPUS'
|
||||
END
|
||||
|
||||
|
||||
UPDATE @ColumnMapping SET
|
||||
updateColName = 't.SERIAL + 1'
|
||||
WHERE insertColName = 'SERIAL'
|
||||
|
||||
RETURN
|
||||
END
|
@@ -0,0 +1,208 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpAlkalmazott
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpAlkalmazott
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@alkalmazottId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
BEGIN --DECLARE,CREATE
|
||||
DECLARE
|
||||
@ujAlkalmazottId int
|
||||
,@ExcludeInsertColumns nvarchar(max)
|
||||
,@insertColList nvarchar(max)
|
||||
,@selectColList nvarchar(max)
|
||||
,@updateColList nvarchar(max)
|
||||
,@partialSql nvarchar(max)
|
||||
,@fullSql nvarchar(max)
|
||||
|
||||
CREATE TABLE #excludedColumns (
|
||||
colName nvarchar(128) COLLATE DATABASE_DEFAULT
|
||||
,excludeType nvarchar(10) COLLATE DATABASE_DEFAULT
|
||||
)
|
||||
CREATE TABLE #columnMappings (
|
||||
insertColName nvarchar(128) COLLATE DATABASE_DEFAULT
|
||||
,selectColName nvarchar(128) COLLATE DATABASE_DEFAULT
|
||||
,updateColname nvarchar(128) COLLATE DATABASE_DEFAULT
|
||||
,tableName nvarchar(128) COLLATE DATABASE_DEFAULT
|
||||
)
|
||||
END
|
||||
BEGIN --default return
|
||||
DECLARE @eloTag nvarchar(40)=(SELECT C_ELOTAG FROM T_FELHASZNALO WHERE ID = @alkalmazottId)
|
||||
IF @eloTag LIKE '%[[]HO%'
|
||||
OR @eloTag LIKE '%[[]BTA%'
|
||||
OR @eloTag LIKE '%[[]KGK%'
|
||||
OR @eloTag LIKE '%[[]KA%'
|
||||
BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
IF (SELECT TOROLT FROM T_FELHASZNALO_OSSZES WHERE ID = @alkalmazottId) = 'T'
|
||||
OR (SELECT TOROLT FROM T_FELHASZNALO_OSSZES WHERE ID = @ujAlkalmazottId) = 'T'
|
||||
OR EXISTS (SELECT 1 FROM T_MUNKAUGYIADATOK WHERE C_ALKALMAZOTTID=@alkalmazottId AND ISNULL(C_ALKALMAZASMEGSZUNESE,'2200-01-01')<=(SELECT C_KEZDONAP FROM T_TANEV WHERE ID = @kovetkezoTanevId))
|
||||
BEGIN
|
||||
RETURN
|
||||
END
|
||||
END
|
||||
BEGIN --SETUP
|
||||
SELECT @ujAlkalmazottId = ID
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
WHERE ELOZOTANEVIREKORDID = @alkalmazottId
|
||||
AND C_TANEVID = @kovetkezoTanevId
|
||||
|
||||
SET @ExcludeInsertColumns = 'FTIP'
|
||||
|
||||
INSERT INTO #columnMappings (insertColName,selectColName,updateColname,tableName)
|
||||
SELECT insertColName,selectColName,updateColname,'T_FELHASZNALO' FROM fnGetFollowUpColumnMapping (@ExcludeInsertColumns,'T_FELHASZNALO')
|
||||
UNION ALL
|
||||
SELECT insertColName,selectColName,updateColname,'T_ALKALMAZOTT' FROM fnGetFollowUpColumnMapping (@ExcludeInsertColumns,'T_ALKALMAZOTT')
|
||||
UNION ALL
|
||||
SELECT insertColName,selectColName,updateColname,'T_MUNKAUGYIADATOK' FROM fnGetFollowUpColumnMapping (@ExcludeInsertColumns,'T_MUNKAUGYIADATOK')
|
||||
|
||||
END
|
||||
|
||||
--====================================================== T_FELHASZNALO==================================================--
|
||||
BEGIN
|
||||
IF @ujAlkalmazottId IS NULL
|
||||
BEGIN
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMappings WHERE tableName IN ('T_FELHASZNALO')
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMappings WHERE tableName IN ('T_FELHASZNALO')
|
||||
|
||||
SET @partialSql = N'
|
||||
INSERT INTO T_FELHASZNALO_OSSZES (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_FELHASZNALO_OSSZES s
|
||||
WHERE s.ID = @alkalmazottId
|
||||
AND EXISTS (SELECT 1 FROM T_ALKALMAZOTT_OSSZES WHERE T_ALKALMAZOTT_OSSZES.ID = s.ID AND TOROLT = ''F'')
|
||||
AND s.TOROLT = ''F''
|
||||
SET @ujAlkalmazottId = SCOPE_IDENTITY()'
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMappings
|
||||
WHERE tableName = 'T_FELHASZNALO' AND updateColname IS NOT NULL
|
||||
|
||||
SET @partialSql =N'
|
||||
UPDATE t SET
|
||||
'+@updateColList+'
|
||||
FROM T_FELHASZNALO_OSSZES t
|
||||
INNER JOIN T_FELHASZNALO_OSSZES s ON s.ID = t.ELOZOTANEVIREKORDID
|
||||
WHERE t.ID = @ujAlkalmazottId'
|
||||
END
|
||||
|
||||
SET @updateColList = NULL
|
||||
SET @selectColList = NULL
|
||||
SET @insertColList = NULL
|
||||
--PRINT @partialSql
|
||||
SET @fullSql = @partialSql
|
||||
END
|
||||
--====================================================== T_FELHASZNALO VÉGE=============================================--
|
||||
|
||||
--====================================================== T_ALKALMAZOTT==================================================--
|
||||
BEGIN
|
||||
IF NOT EXISTS (SELECT 1 FROM T_ALKALMAZOTT_OSSZES WHERE ID = @ujAlkalmazottId) BEGIN
|
||||
INSERT INTO #columnMappings VALUES
|
||||
('ID','@ujAlkalmazottId',NULL,'T_ALKALMAZOTT')
|
||||
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMappings WHERE tableName IN ('T_ALKALMAZOTT')
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMappings WHERE tableName IN ('T_ALKALMAZOTT')
|
||||
|
||||
SET @partialSql = N'
|
||||
INSERT INTO T_ALKALMAZOTT_OSSZES (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_ALKALMAZOTT_OSSZES s
|
||||
WHERE s.C_ALTANEVID = @aktTanevId AND s.ID = @alkalmazottId'
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMappings
|
||||
WHERE tableName = 'T_ALKALMAZOTT' AND updateColname IS NOT NULL
|
||||
|
||||
SET @partialSql = N'
|
||||
UPDATE t SET
|
||||
'+@updateColList+'
|
||||
FROM T_ALKALMAZOTT_OSSZES t
|
||||
INNER JOIN T_ALKALMAZOTT_OSSZES s ON s.ID = t.ELOZOTANEVIREKORDID
|
||||
WHERE t.ID = @ujAlkalmazottId'
|
||||
END
|
||||
|
||||
--PRINT @partialSql
|
||||
SET @updateColList = NULL
|
||||
SET @selectColList = NULL
|
||||
SET @insertColList = NULL
|
||||
SET @fullSql += @partialSql
|
||||
END
|
||||
--====================================================== T_ALKALMAZOTT VÉGE=============================================--
|
||||
|
||||
--====================================================== T_MUNKAUGYIADATOK==============================================--
|
||||
BEGIN
|
||||
IF NOT EXISTS (SELECT 1 FROM T_MUNKAUGYIADATOK_OSSZES WHERE C_ALKALMAZOTTID = @ujAlkalmazottId) BEGIN
|
||||
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMappings WHERE tableName IN ('T_MUNKAUGYIADATOK')
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMappings WHERE tableName IN ('T_MUNKAUGYIADATOK')
|
||||
|
||||
SET @partialSql = N'
|
||||
INSERT INTO T_MUNKAUGYIADATOK_OSSZES (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_MUNKAUGYIADATOK_OSSZES s
|
||||
INNER JOIN T_FELADATELLATASIHELY_OSSZES f ON f.ELOZOTANEVIREKORDID = s.C_FELADATELLATASIHELYID AND f.TOROLT=''F''
|
||||
WHERE s.TOROLT = ''F'' AND s.C_ALKALMAZOTTID = @alkalmazottId'
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMappings
|
||||
WHERE tableName = 'T_MUNKAUGYIADATOK' AND updateColname IS NOT NULL
|
||||
|
||||
SET @partialSql = N'
|
||||
UPDATE t SET
|
||||
'+@updateColList+'
|
||||
FROM T_MUNKAUGYIADATOK_OSSZES t
|
||||
INNER JOIN T_MUNKAUGYIADATOK_OSSZES s ON s.ID = t.ELOZOTANEVIREKORDID
|
||||
INNER JOIN T_FELADATELLATASIHELY_OSSZES f ON f.ELOZOTANEVIREKORDID = s.C_FELADATELLATASIHELYID AND f.TOROLT=''F''
|
||||
WHERE t.C_ALKALMAZOTTID = @ujAlkalmazottId'
|
||||
END
|
||||
--PRINT @partialSql
|
||||
SET @fullSql += @partialSql
|
||||
END
|
||||
--====================================================== T_MUNKAUGYIADATOK VÉGE=========================================--
|
||||
|
||||
BEGIN --Cím, Email, Telefon
|
||||
EXEC uspFollowUpFelhasznaloCim @intezmenyId,@aktTanevid,@kovetkezoTanevId,@alkalmazottId
|
||||
EXEC uspFollowUpFelhasznaloEmail @intezmenyId,@aktTanevid,@kovetkezoTanevId,@alkalmazottId
|
||||
EXEC uspFollowUpFelhasznaloTelefon @intezmenyId,@aktTanevid,@kovetkezoTanevId,@alkalmazottId
|
||||
END
|
||||
|
||||
EXEC sp_executesql
|
||||
@fullSql,N'
|
||||
@alkalmazottId int
|
||||
,@intezmenyId int
|
||||
,@kovetkezoTanevId int
|
||||
,@aktTanevId int
|
||||
,@ujAlkalmazottId int'
|
||||
,@alkalmazottId = @alkalmazottId
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@ujAlkalmazottId = @ujAlkalmazottId
|
||||
,@aktTanevId = @aktTanevId
|
||||
|
||||
IF DB_NAME() LIKE '%KRETA[_]KLIK[_]%' BEGIN --sp_FollowUpAlkalmazottVegzettsegKK
|
||||
EXEC uspFollowUpAlkalmazottVegzettsegKK
|
||||
@intezmenyId
|
||||
,@aktTanevId
|
||||
,@kovetkezoTanevId
|
||||
,@alkalmazottId
|
||||
END
|
||||
END
|
@@ -0,0 +1,77 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpAlkalmazottPEP
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpAlkalmazottPEP
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@PEPId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@kovPEPId int
|
||||
,@selectColList nvarchar(max)
|
||||
,@insertColList nvarchar(max)
|
||||
,@updateColList nvarchar(max)
|
||||
,@sql nvarchar(max)
|
||||
|
||||
SELECT @kovPEPId = ID
|
||||
FROM T_PEDAGOGUSELETPALYAMODELL_OSSZES WHERE ELOZOTANEVIREKORDID = @PEPId
|
||||
|
||||
IF (SELECT TOROLT FROM T_PEDAGOGUSELETPALYAMODELL_OSSZES WHERE ID = @PEPId) = 'T' OR (SELECT TOROLT FROM T_PEDAGOGUSELETPALYAMODELL_OSSZES WHERE ID = @kovPEPId) = 'T' BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
CREATE TABLE #ColumnMapping (selectColName nvarchar(128),insertColName nvarchar(128),updateColName nvarchar(128))
|
||||
INSERT INTO #ColumnMapping(
|
||||
selectColName
|
||||
,insertColname
|
||||
,updateColname
|
||||
)
|
||||
SELECT
|
||||
selectColName
|
||||
,insertColName
|
||||
,updateColName
|
||||
FROM fnGetFollowUpColumnMapping (NULL,'T_PEDAGOGUSELETPALYAMODELL')
|
||||
|
||||
IF @kovPEPId IS NOT NULL BEGIN
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColname+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMapping WHERE updateColName IS NOT NULL
|
||||
SET @sql = N'
|
||||
UPDATE t set
|
||||
'+@updateColList+'
|
||||
FROM T_PEDAGOGUSELETPALYAMODELL_OSSZES t
|
||||
INNER JOIN T_PEDAGOGUSELETPALYAMODELL_OSSZES s ON t.ELOZOTANEVIREKORDID = s.ID AND t.ID=@kovPEPId'
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMapping
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMapping
|
||||
SET @sql = N'
|
||||
INSERT INTO T_PEDAGOGUSELETPALYAMODELL_OSSZES(
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_PEDAGOGUSELETPALYAMODELL_OSSZES s
|
||||
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ELOZOTANEVIREKORDID = s.C_TANARID
|
||||
WHERE s.ID=@PEPId'
|
||||
END
|
||||
|
||||
--PRINT @sql
|
||||
EXEC sp_executesql
|
||||
@sql,N'
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@PEPId int
|
||||
,@kovPEPId int'
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@aktTanevId = @aktTanevId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@PEPId = @PEPId
|
||||
,@kovPEPId = @kovPEPId
|
||||
|
||||
END
|
||||
GO
|
||||
|
@@ -0,0 +1,88 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpAlkalmazottTovabbiMunkaugy
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpAlkalmazottTovabbiMunkaugy
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@tovabbiMunkaugyiAdatId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@kovTovabbiMunkaugyiAdatId int
|
||||
,@selectColList nvarchar(max)
|
||||
,@insertColList nvarchar(max)
|
||||
,@updateColList nvarchar(max)
|
||||
,@sql nvarchar(max)
|
||||
|
||||
SELECT
|
||||
@kovTovabbiMunkaugyiAdatId = ID
|
||||
FROM T_TOVABBIMUNKAUGYIADATOK_OSSZES WHERE ELOZOTANEVIREKORDID = @tovabbiMunkaugyiAdatId
|
||||
|
||||
IF (SELECT TOROLT FROM T_TOVABBIMUNKAUGYIADATOK_OSSZES WHERE ID = @tovabbiMunkaugyiAdatId) = 'T' OR (SELECT TOROLT FROM T_TOVABBIMUNKAUGYIADATOK_OSSZES WHERE ID = @kovTovabbiMunkaugyiAdatId) = 'T' BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
CREATE TABLE #ColumnMapping (selectColName nvarchar(128),insertColName nvarchar(128),updateColName nvarchar(128))
|
||||
INSERT INTO #ColumnMapping(
|
||||
selectColName
|
||||
,insertColname
|
||||
,updateColname
|
||||
)
|
||||
SELECT
|
||||
selectColName
|
||||
,insertColName
|
||||
,updateColName
|
||||
FROM fnGetFollowUpColumnMapping (NULL,'T_TOVABBIMUNKAUGYIADATOK')
|
||||
|
||||
DECLARE @ujAlkalmazottId int = (
|
||||
SELECT a.ID
|
||||
FROM T_ALKALMAZOTT_OSSZES a
|
||||
INNER JOIN T_TOVABBIMUNKAUGYIADATOK_OSSZES ma ON ma.C_ALKALMAZOTTID = a.ELOZOTANEVIREKORDID AND ma.ID = @tovabbiMunkaugyiAdatId)
|
||||
|
||||
IF @kovTovabbiMunkaugyiAdatId IS NOT NULL BEGIN
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColname+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMapping WHERE updateColName IS NOT NULL
|
||||
SET @sql = N'
|
||||
UPDATE t SET
|
||||
'+@updateColList+'
|
||||
FROM T_TOVABBIMUNKAUGYIADATOK_OSSZES t
|
||||
INNER JOIN T_TOVABBIMUNKAUGYIADATOK_OSSZES s ON t.ELOZOTANEVIREKORDID = s.ID AND s.ID=@tovabbiMunkaugyiAdatId
|
||||
INNER JOIN T_FELADATELLATASIHELY_OSSZES f ON f.ELOZOTANEVIREKORDID=s.C_FELADATELLATASIHELYID AND f.TOROLT=''F''
|
||||
WHERE t.TOROLT=''F'' AND t.ID = @kovTovabbiMunkaugyiAdatId'
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMapping
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMapping
|
||||
SET @sql = N'
|
||||
INSERT INTO T_TOVABBIMUNKAUGYIADATOK(
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_TOVABBIMUNKAUGYIADATOK_OSSZES s
|
||||
INNER JOIN T_FELADATELLATASIHELY_OSSZES f ON f.ELOZOTANEVIREKORDID = s.C_FELADATELLATASIHELYID AND f.TOROLT=''F''
|
||||
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ELOZOTANEVIREKORDID = s.C_ALKALMAZOTTID
|
||||
WHERE s.ID=@tovabbiMunkaugyiAdatId'
|
||||
END
|
||||
|
||||
--PRINT @sql
|
||||
EXEC sp_executesql
|
||||
@sql,N'
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@tovabbiMunkaugyiAdatId int
|
||||
,@kovTovabbiMunkaugyiAdatId int
|
||||
,@ujAlkalmazottId int'
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@aktTanevId = @aktTanevId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@tovabbiMunkaugyiAdatId = @tovabbiMunkaugyiAdatId
|
||||
,@kovTovabbiMunkaugyiAdatId = @kovTovabbiMunkaugyiAdatId
|
||||
,@ujAlkalmazottId = @ujAlkalmazottId
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,120 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpAlkalmazottVegzettseg
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpAlkalmazottVegzettseg
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@vegzettsegId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@kovVegzettsegId int
|
||||
,@selectColListV nvarchar(max)
|
||||
,@insertColListV nvarchar(max)
|
||||
,@updateColListV nvarchar(max)
|
||||
,@selectColListKV nvarchar(max)
|
||||
,@insertColListKV nvarchar(max)
|
||||
,@updateColListKV nvarchar(max)
|
||||
,@sql nvarchar(max)
|
||||
|
||||
SET @kovVegzettsegId = (SELECT ID FROM T_VEGZETTSEG_OSSZES WHERE ELOZOTANEVIREKORDID=@vegzettsegId)
|
||||
IF (SELECT TOROLT FROM T_VEGZETTSEG_OSSZES WHERE ID = @vegzettsegId)='T' OR (SELECT TOROLT FROM T_VEGZETTSEG_OSSZES WHERE ELOZOTANEVIREKORDID = @vegzettsegId)='T' BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
CREATE TABLE #ColumnMapping (selectColName nvarchar(128),insertColName nvarchar(128),updateColName nvarchar(128),tableName nvarchar(128))
|
||||
INSERT INTO #ColumnMapping(
|
||||
selectColName
|
||||
,insertColname
|
||||
,updateColname
|
||||
,tableName
|
||||
)
|
||||
SELECT
|
||||
selectColName
|
||||
,insertColName
|
||||
,updateColName
|
||||
,'T_VEGZETTSEG'
|
||||
FROM fnGetFollowUpColumnMapping (NULL,'T_VEGZETTSEG')
|
||||
UNION ALL
|
||||
SELECT
|
||||
selectColName
|
||||
,insertColName
|
||||
,updateColName
|
||||
,'T_KEPESITES_VEGZETTSEG'
|
||||
FROM fnGetFollowUpColumnMapping ('ELOZOTANEVIREKORDID','T_KEPESITES_VEGZETTSEG')
|
||||
|
||||
IF @kovVegzettsegId IS NULL BEGIN
|
||||
SELECT @insertColListV = ISNULL(@insertColListV+','+insertColname,insertColname) FROM #columnMapping WHERE tableName = 'T_VEGZETTSEG'
|
||||
SELECT @selectColListV = ISNULL(@selectColListV+','+selectColName,selectColName) FROM #columnMapping WHERE tableName = 'T_VEGZETTSEG'
|
||||
SELECT @insertColListKV = ISNULL(@insertColListKV+','+insertColname,insertColname) FROM #columnMapping WHERE tableName = 'T_KEPESITES_VEGZETTSEG'
|
||||
SELECT @selectColListKV = ISNULL(@selectColListKV+','+selectColName,selectColName) FROM #columnMapping WHERE tableName = 'T_KEPESITES_VEGZETTSEG'
|
||||
|
||||
SET @sql = N'
|
||||
INSERT INTO T_VEGZETTSEG_OSSZES(
|
||||
'+@insertColListV+'
|
||||
) SELECT
|
||||
'+@selectColListV+'
|
||||
FROM T_VEGZETTSEG_OSSZES s
|
||||
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ELOZOTANEVIREKORDID=s.C_TANARID AND fh.TOROLT=''F''
|
||||
WHERE s.ID=@vegzettsegId
|
||||
|
||||
INSERT INTO T_KEPESITES_VEGZETTSEG (
|
||||
'+@insertColListKV+'
|
||||
) SELECT
|
||||
'+@selectColListKV+'
|
||||
FROM T_VEGZETTSEG_OSSZES s
|
||||
INNER JOIN T_KEPESITES_VEGZETTSEG kv ON kv.C_VEGZETTSEGID=s.ID
|
||||
INNER JOIN T_KEPESITES_OSSZES k ON k.ELOZOTANEVIREKORDID=kv.C_KEPESITESID AND k.TOROLT=''F''
|
||||
INNER JOIN T_VEGZETTSEG_OSSZES vKov ON vKov.ELOZOTANEVIREKORDID=s.ID
|
||||
WHERE s.ID = @vegzettsegId'
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT
|
||||
@updateColListV = ISNULL(@updateColListV+','+insertColname+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMapping WHERE updateColName IS NOT NULL AND tableName = 'T_VEGZETTSEG'
|
||||
SELECT @insertColListKV = ISNULL(@insertColListKV+','+insertColname,insertColname) FROM #columnMapping WHERE tableName = 'T_KEPESITES_VEGZETTSEG'
|
||||
SELECT @selectColListKV = ISNULL(@selectColListKV+','+selectColName,selectColName) FROM #columnMapping WHERE tableName = 'T_KEPESITES_VEGZETTSEG'
|
||||
|
||||
DELETE kv
|
||||
FROM T_KEPESITES_VEGZETTSEG kv
|
||||
INNER JOIN T_KEPESITES_OSSZES kKov ON kKov.ID=kv.C_KEPESITESID AND kKov.TOROLT='F'
|
||||
INNER JOIN T_KEPESITES_OSSZES kOld ON kOld.ID=kKov.ELOZOTANEVIREKORDID AND kOld.TOROLT='F'
|
||||
LEFT JOIN T_KEPESITES_VEGZETTSEG kvOld ON kvOld.C_VEGZETTSEGID=@vegzettsegId AND kvOld.C_KEPESITESID=kOld.ID
|
||||
WHERE kv.C_VEGZETTSEGID=@kovVegzettsegId AND kvOld.C_KEPESITESID IS NULL
|
||||
|
||||
SET @sql =N'
|
||||
UPDATE t SET
|
||||
'+@updateColListV+'
|
||||
FROM T_VEGZETTSEG_OSSZES s
|
||||
INNER JOIN T_VEGZETTSEG_OSSZES t ON t.ELOZOTANEVIREKORDID = s.ID AND s.ID=@vegzettsegId
|
||||
|
||||
INSERT INTO T_KEPESITES_VEGZETTSEG (
|
||||
'+@insertColListKV+'
|
||||
) SELECT
|
||||
'+@selectColListKV+'
|
||||
FROM T_VEGZETTSEG_OSSZES s
|
||||
INNER JOIN T_KEPESITES_VEGZETTSEG kv ON kv.C_VEGZETTSEGID=s.ID
|
||||
INNER JOIN T_KEPESITES_OSSZES k ON k.ELOZOTANEVIREKORDID=kv.C_KEPESITESID AND k.TOROLT=''F''
|
||||
INNER JOIN T_VEGZETTSEG_OSSZES vKov ON vKov.ELOZOTANEVIREKORDID=s.ID
|
||||
WHERE s.ID=@vegzettsegId AND NOT EXISTS (SELECT 1 FROM T_KEPESITES_VEGZETTSEG WHERE C_VEGZETTSEGID=@kovVegzettsegId AND C_KEPESITESID=k.ID)'
|
||||
END
|
||||
|
||||
--PRINT @sql
|
||||
exec sp_executesql
|
||||
@sql,N'
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@vegzettsegId int
|
||||
,@kovVegzettsegId int'
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@aktTanevId = @aktTanevId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@vegzettsegId = @vegzettsegId
|
||||
,@kovVegzettsegId = @kovVegzettsegId
|
||||
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,174 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpAlkalmazottVegzettsegKK
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpAlkalmazottVegzettsegKK
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@alkalmazottId int
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@kovAlkalmazottId int
|
||||
,@partialSql nvarchar(max) = N''
|
||||
,@finalSql nvarchar(max)
|
||||
,@tableMapperSql nvarchar(max)
|
||||
,@colListSql nvarchar(max) = N''
|
||||
|
||||
CREATE TABLE #ColumnMappingKKVegzettseg(
|
||||
insertColName nvarchar(128)
|
||||
,selectColName nvarchar(128)
|
||||
,updateColName nvarchar(128)
|
||||
,tableName nvarchar(128)
|
||||
)
|
||||
|
||||
SELECT @kovAlkalmazottId = ID
|
||||
FROM T_FELHASZNALO_OSSZES fh
|
||||
WHERE fh.ELOZOTANEVIREKORDID = @alkalmazottId AND TOROLT='F'
|
||||
|
||||
IF @kovAlkalmazottId IS NULL BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
CREATE TABLE #tables (tableName nvarchar(128))
|
||||
CREATE TABLE #colLists (selectColList nvarchar(max),updateColList nvarchar(max),insertColList nvarchar(max),tableName nvarchar(128))
|
||||
|
||||
INSERT INTO #tables VALUES
|
||||
('T_KKTANITOVEZGETTSEG')
|
||||
,('T_KKGYOGYPEDVEGZETTSEG')
|
||||
,('T_KKTANARVEGZETTSEG')
|
||||
,('T_KKTANTARGYKATEGORIA')
|
||||
,('T_KKAMIVEGZETTSEG')
|
||||
,('T_KKELEKTROAKUZENE')
|
||||
,('T_KKKLASSZIKUSZENE')
|
||||
,('T_KKNEPZENE')
|
||||
,('T_KKJAZZZENE')
|
||||
,('T_KKTERULET')
|
||||
|
||||
SELECT @tableMapperSql = ISNULL(
|
||||
@tableMapperSql+N'
|
||||
UNION ALL
|
||||
SELECT
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
,'''+tableName+'''
|
||||
FROM fnGetFollowUpColumnMapping (NULL,'''+tableName+''')',
|
||||
'SELECT
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
,'''+tableName+'''
|
||||
FROM fnGetFollowUpColumnMapping (NULL,'''+tableName+''')')
|
||||
FROM #tables
|
||||
|
||||
INSERT INTO #ColumnMappingKKVegzettseg(
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
,tableName
|
||||
)
|
||||
EXEC sp_executesql @tableMapperSql
|
||||
|
||||
SELECT @colListSql += N'
|
||||
DECLARE @insert'+tableName+'colList nvarchar(max)
|
||||
DECLARE @select'+tableName+'colList nvarchar(max)
|
||||
DECLARE @update'+tableName+'colList nvarchar(max)
|
||||
SELECT @insert'+tableName+'colList = ISNULL(@insert'+tableName+'colList+'',''+insertColname,insertColname) FROM #ColumnMappingKKVegzettseg WHERE tableName = '''+tableName+'''
|
||||
SELECT @select'+tableName+'colList = ISNULL(@select'+tableName+'colList+'',''+selectColname,selectColname) FROM #ColumnMappingKKVegzettseg WHERE tableName = '''+tableName+'''
|
||||
INSERT INTO #ColumnMappingKKVegzettseg (insertColName,updateColName,tableName) VALUES
|
||||
(''TOROLT'',''s.TOROLT'','''+tableName+''')
|
||||
SELECT @update'+tableName+'ColList = ISNULL(@update'+tableName+'ColList+'',''+insertColName+'' = ''+updateColName,insertColName+'' = ''+updateColName)
|
||||
FROM #ColumnMappingKKVegzettseg
|
||||
WHERE updateColName IS NOT NULL AND tableName = '''+tableName+'''
|
||||
SELECT @select'+tableName+'colList,@update'+tableName+'colList,@insert'+tableName+'colList,'''+tableName+''''
|
||||
FROM #tables
|
||||
|
||||
INSERT INTO #colLists
|
||||
exec sp_executesql @colListSql
|
||||
|
||||
SELECT @partialSql += N'
|
||||
INSERT INTO '+tableName+'_OSSZES (
|
||||
'+insertColList+'
|
||||
) SELECT
|
||||
'+selectColList+'
|
||||
FROM '+tableName+'_OSSZES s
|
||||
WHERE C_ALKALMAZOTTID = @alkalmazottId
|
||||
AND TOROLT=''F''
|
||||
AND NOT EXISTS (SELECT 1 FROM '+tableName+'_OSSZES t WHERE t.ELOZOTANEVIREKORDID = s.ID)
|
||||
|
||||
UPDATE t SET
|
||||
'+updateColList+'
|
||||
FROM '+tableName+'_OSSZES s
|
||||
INNER JOIN '+tableName+'_OSSZES t ON t.ELOZOTANEVIREKORDID = s.ID
|
||||
WHERE s.C_ALKALMAZOTTID=@alkalmazottId'
|
||||
FROM #colLists
|
||||
WHERE tableName IN('T_KKTANITOVEZGETTSEG','T_KKGYOGYPEDVEGZETTSEG','T_KKTANARVEGZETTSEG','T_KKAMIVEGZETTSEG')
|
||||
--PRINT @partialSql
|
||||
SET @finalSql = @partialSql
|
||||
SET @partialSql = N''
|
||||
|
||||
SELECT @partialSql += N'
|
||||
INSERT INTO '+tableName+'_OSSZES (
|
||||
'+insertColList+'
|
||||
) SELECT
|
||||
'+selectColList+'
|
||||
FROM '+tableName+'_OSSZES s
|
||||
INNER JOIN T_KKAMIVEGZETTSEG_OSSZES tvx ON s.C_KKAMIVEGZETTSEGID = tvx.ID AND tvx.C_ALKALMAZOTTID = @alkalmazottId AND tvx.TOROLT = ''F''
|
||||
INNER JOIN T_KKAMIVEGZETTSEG_OSSZES av ON av.ELOZOTANEVIREKORDID = tvx.ID AND av.C_ALKALMAZOTTID = @kovAlkalmazottId AND av.TOROLT = ''F''
|
||||
WHERE s.TOROLT=''F''
|
||||
AND NOT EXISTS (SELECT 1 FROM '+tableName+'_OSSZES t WHERE t.ELOZOTANEVIREKORDID = s.ID)
|
||||
|
||||
UPDATE t SET
|
||||
'+updateColList+'
|
||||
FROM '+tableName+'_OSSZES s
|
||||
INNER JOIN '+tableName+'_OSSZES t ON t.ELOZOTANEVIREKORDID = s.ID
|
||||
INNER JOIN T_KKAMIVEGZETTSEG_OSSZES v ON v.ID=s.C_KKAMIVEGZETTSEGID AND v.C_ALKALMAZOTTID=@alkalmazottId'
|
||||
FROM #colLists
|
||||
WHERE tableName IN('T_KKELEKTROAKUZENE','T_KKKLASSZIKUSZENE','T_KKJAZZZENE','T_KKNEPZENE','T_KKTERULET')
|
||||
|
||||
SET @finalSql += @partialSql
|
||||
--PRINT @partialSql
|
||||
SET @partialSql = N''
|
||||
|
||||
SELECT @partialSql = N'
|
||||
INSERT INTO T_KKTANTARGYKATEGORIA_OSSZES (
|
||||
'+insertColList+'
|
||||
) SELECT
|
||||
'+selectColList+'
|
||||
FROM T_KKTANTARGYKATEGORIA_OSSZES s
|
||||
INNER JOIN T_KKTANARVEGZETTSEG_OSSZES tvx ON s.C_KKTANARVEGZETTSEGID = tvx.ID AND tvx.C_ALKALMAZOTTID = @alkalmazottId AND tvx.TOROLT = ''F''
|
||||
INNER JOIN T_KKTANARVEGZETTSEG_OSSZES av ON av.ELOZOTANEVIREKORDID = tvx.ID AND av.C_ALKALMAZOTTID = @kovAlkalmazottId AND av.TOROLT = ''F''
|
||||
WHERE s.TOROLT = ''F''
|
||||
AND NOT EXISTS (SELECT 1 FROM T_KKTANTARGYKATEGORIA_OSSZES WHERE ELOZOTANEVIREKORDID = s.ID)
|
||||
|
||||
UPDATE t SET
|
||||
'+updateColList+'
|
||||
FROM T_KKTANARVEGZETTSEG_OSSZES x
|
||||
INNER JOIN T_KKTANTARGYKATEGORIA_OSSZES s ON s.C_KKTANARVEGZETTSEGID = x.ID
|
||||
INNER JOIN T_KKTANTARGYKATEGORIA_OSSZES t ON t.ELOZOTANEVIREKORDID = s.ID
|
||||
WHERE x.C_ALKALMAZOTTID = @alkalmazottId'
|
||||
FROM #colLists
|
||||
WHERE tableName = 'T_KKTANTARGYKATEGORIA'
|
||||
|
||||
SET @finalSql += @partialSql
|
||||
--PRINT @partialSql
|
||||
|
||||
exec sp_executesql
|
||||
@finalSql,N'
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@alkalmazottId int
|
||||
,@kovAlkalmazottId int'
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@aktTanevId = @aktTanevId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@alkalmazottId = @alkalmazottId
|
||||
,@kovAlkalmazottId = @kovAlkalmazottId
|
||||
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,95 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpCsengetesiRend
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpCsengetesiRend
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@csengetesiRendId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@csengrendNev nvarchar(100)
|
||||
,@kovCsengrendId int
|
||||
,@insertColList nvarchar(max)
|
||||
,@selectColList nvarchar(max)
|
||||
,@updateColList nvarchar(max)
|
||||
,@sql nvarchar(max)
|
||||
|
||||
CREATE TABLE #columnMapping (
|
||||
insertColName nvarchar(128) COLLATE DATABASE_DEFAULT
|
||||
,selectColName nvarchar(128)
|
||||
,updateColName nvarchar(128)
|
||||
)
|
||||
INSERT INTO #columnMapping (
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
) SELECT
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
FROM fnGetFollowUpColumnMapping (NULL,'T_CSENGETESIREND')
|
||||
|
||||
SELECT @csengrendNev = C_NEV FROM T_CSENGETESIREND_OSSZES WHERE ID = @csengetesiRendId
|
||||
|
||||
IF EXISTS (SELECT 1 FROM T_CSENGETESIREND_OSSZES WHERE C_TANEVID=@kovetkezoTanevId AND TOROLT='F' AND C_NEV=@csengrendNev AND ISNULL(ELOZOTANEVIREKORDID,0)<>@csengetesiRendId)
|
||||
BEGIN
|
||||
UPDATE T_CSENGETESIREND_OSSZES SET ELOZOTANEVIREKORDID = NULL WHERE ELOZOTANEVIREKORDID=@csengetesiRendId
|
||||
UPDATE T_CSENGETESIREND_OSSZES SET ELOZOTANEVIREKORDID = @csengetesiRendId WHERE C_TANEVID=@kovetkezoTanevId AND TOROLT='F' AND C_NEV=@csengrendNev AND ISNULL(ELOZOTANEVIREKORDID,0)<>@csengetesiRendId
|
||||
END
|
||||
|
||||
SELECT @kovCsengrendId = ID FROM T_CSENGETESIREND_OSSZES WHERE ELOZOTANEVIREKORDID=@csengetesiRendId
|
||||
|
||||
IF (SELECT TOROLT FROM T_CSENGETESIREND_OSSZES WHERE ID = @csengetesiRendId)='T' OR (SELECT TOROLT FROM T_CSENGETESIREND_OSSZES WHERE ID=@kovCsengrendId)='T'
|
||||
BEGIN
|
||||
RETURN
|
||||
END
|
||||
IF @kovCsengrendId IS NULL BEGIN
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMapping
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMapping
|
||||
SET @sql = N'
|
||||
INSERT INTO T_CSENGETESIREND_OSSZES (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_CSENGETESIREND_OSSZES s
|
||||
LEFT JOIN T_MUKODESIHELY_OSSZES mh ON mh.ELOZOTANEVIREKORDID = s.C_MUKODESIHELYID AND mh.TOROLT = ''F'' AND mh.C_TANEVID = @kovetkezoTanevId
|
||||
WHERE s.C_TANEVID = @aktTanevId AND s.ID = @csengetesiRendId AND s.TOROLT = ''F'''
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMapping
|
||||
WHERE updateColname IS NOT NULL
|
||||
|
||||
SET @sql = N'
|
||||
UPDATE t SET
|
||||
'+@updateColList+'
|
||||
FROM T_CSENGETESIREND_OSSZES t
|
||||
INNER JOIN T_CSENGETESIREND_OSSZES s ON s.ID = t.ELOZOTANEVIREKORDID AND s.C_TANEVID = @aktTanevId AND s.ID = @csengetesiRendId
|
||||
WHERE t.TOROLT = ''F'' AND t.C_TANEVID = @kovetkezoTanevId AND t.ELOZOTANEVIREKORDID = @csengetesiRendId'
|
||||
END
|
||||
--PRINT @sql
|
||||
EXEC sp_executesql
|
||||
@sql,N'
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@csengetesiRendId int'
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@aktTanevId = @aktTanevId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@csengetesiRendId = @csengetesiRendId
|
||||
|
||||
IF (SELECT C_AKTIV FROM T_CSENGETESIREND_OSSZES WHERE ELOZOTANEVIREKORDID=@csengetesiRendId AND TOROLT='F')='T' BEGIN
|
||||
UPDATE T_CSENGETESIREND_OSSZES SET C_AKTIV='F' WHERE C_TANEVID=@kovetkezoTanevId AND TOROLT='F' AND ELOZOTANEVIREKORDID<>@csengetesiRendId
|
||||
END
|
||||
|
||||
|
||||
|
||||
END
|
||||
GO
|
||||
|
@@ -0,0 +1,104 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpCsengetesiRendOra
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpCsengetesiRendOra
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@csengetesiRendOraId int
|
||||
,@csengetesiRendId int
|
||||
,@isVisszaMenoleges bit
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@oraSzam int
|
||||
,@kovCsengrendOraId int
|
||||
,@kovCsengRendId int
|
||||
,@insertColList nvarchar(max)
|
||||
,@selectColList nvarchar(max)
|
||||
,@updateColList nvarchar(max)
|
||||
,@sql nvarchar(max)
|
||||
|
||||
CREATE TABLE #columnMapping(
|
||||
insertColName nvarchar(128) COLLATE DATABASE_DEFAULT
|
||||
,selectColName nvarchar(128)
|
||||
,updateColName nvarchar(128)
|
||||
)
|
||||
INSERT INTO #columnMapping (
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
) SELECT
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
FROM fnGetFollowUpColumnMapping (NULL,'T_CSENGETESIRENDORA')
|
||||
|
||||
SELECT @oraSzam = C_ORASZAM FROM T_CSENGETESIRENDORA_OSSZES WHERE ID = @csengetesiRendOraId
|
||||
SELECT @kovCsengRendId = ID FROM T_CSENGETESIREND_OSSZES WHERE ELOZOTANEVIREKORDID=@csengetesiRendId
|
||||
|
||||
IF EXISTS (SELECT 1 FROM T_CSENGETESIRENDORA_OSSZES WHERE C_TANEVID=@kovetkezoTanevId AND TOROLT='F' AND C_ORASZAM=@oraSzam AND ISNULL(ELOZOTANEVIREKORDID,0)<>@csengetesiRendOraId AND C_CSENGETESIRENDID=@kovCsengRendId)
|
||||
BEGIN
|
||||
UPDATE T_CSENGETESIRENDORA_OSSZES SET ELOZOTANEVIREKORDID = NULL WHERE ELOZOTANEVIREKORDID=@csengetesiRendOraId
|
||||
UPDATE T_CSENGETESIRENDORA_OSSZES SET ELOZOTANEVIREKORDID = @csengetesiRendOraId WHERE C_TANEVID=@kovetkezoTanevId AND TOROLT='F' AND C_ORASZAM=@oraSzam AND ISNULL(ELOZOTANEVIREKORDID,0)<>@csengetesiRendOraId AND C_CSENGETESIRENDID=@kovCsengRendId
|
||||
END
|
||||
|
||||
SELECT @kovCsengrendOraId = ID FROM T_CSENGETESIRENDORA_OSSZES WHERE ELOZOTANEVIREKORDID=@csengetesiRendOraId
|
||||
|
||||
IF (SELECT TOROLT FROM T_CSENGETESIRENDORA_OSSZES WHERE ID = @csengetesiRendOraId)='T' OR (SELECT TOROLT FROM T_CSENGETESIRENDORA_OSSZES WHERE ID=@kovCsengrendOraId)='T'
|
||||
BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
IF @kovCsengrendOraId IS NULL BEGIN
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMapping
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMapping
|
||||
SET @sql = N'
|
||||
INSERT INTO T_CSENGETESIRENDORA_OSSZES (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_CSENGETESIRENDORA_OSSZES s
|
||||
INNER JOIN T_CSENGETESIREND_OSSZES csr ON csr.ELOZOTANEVIREKORDID=s.C_CSENGETESIRENDID AND csr.TOROLT=''F''
|
||||
WHERE s.C_TANEVID = @aktTanevId AND s.ID = @csengetesiRendOraId AND s.TOROLT = ''F'''
|
||||
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMapping
|
||||
WHERE updateColname IS NOT NULL
|
||||
SET @sql = N'
|
||||
UPDATE t SET
|
||||
'+@updateColList+'
|
||||
FROM T_CSENGETESIRENDORA_OSSZES t
|
||||
INNER JOIN T_CSENGETESIRENDORA_OSSZES s ON s.ID = t.ELOZOTANEVIREKORDID AND s.C_TANEVID = @aktTanevId
|
||||
WHERE t.TOROLT = ''F'' AND t.C_TANEVID = @kovetkezoTanevId AND t.ELOZOTANEVIREKORDID = @csengetesiRendOraId'
|
||||
END
|
||||
|
||||
--PRINT @sql
|
||||
EXEC sp_executesql
|
||||
@sql,N'
|
||||
@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@csengetesiRendOraId int
|
||||
,@csengetesiRendId int
|
||||
,@intezmenyId int'
|
||||
,@aktTanevId = @aktTanevId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@csengetesiRendOraId = @csengetesiRendOraId
|
||||
,@csengetesiRendId = @csengetesiRendId
|
||||
,@intezmenyId = @intezmenyId
|
||||
|
||||
|
||||
SELECT @kovCsengrendOraId = ID FROM T_CSENGETESIRENDORA_OSSZES WHERE ELOZOTANEVIREKORDID=@csengetesiRendOraId AND TOROLT='F'
|
||||
|
||||
IF @isVisszaMenoleges=1
|
||||
BEGIN
|
||||
EXEC sp_UpdateOrarendiOraVisszamenolegesen @kovCsengrendOraId
|
||||
END
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,160 @@
|
||||
-- ===================================================================
|
||||
-- Author: Telek Ákos
|
||||
-- Created: 2018.06.21.
|
||||
-- Description:
|
||||
-- Dictionary elemek FollowUp-ja
|
||||
-- ===================================================================
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpDictionaryItemBase
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpDictionaryItemBase
|
||||
@pItemId int
|
||||
,@pCurrentTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@IntezmenyId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@typeName nvarchar(64)
|
||||
,@sql nvarchar(max)
|
||||
,@kovItemId int
|
||||
,@isItemTorolt char(1)
|
||||
,@isKovItemTorolt char(1)
|
||||
,@columnList nvarchar(max)
|
||||
,@columnListInsert nvarchar(max)
|
||||
,@itemName nvarchar(500)
|
||||
,@insertColList nvarchar(max)
|
||||
,@selectColList nvarchar(max)
|
||||
,@updateColList nvarchar(max)
|
||||
|
||||
CREATE TABLE #columnMapping (
|
||||
insertColName nvarchar(128) COLLATE DATABASE_DEFAULT
|
||||
,selectColName nvarchar(128)
|
||||
,updateColName nvarchar(128)
|
||||
)
|
||||
INSERT INTO #columnMapping (
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
) SELECT
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
FROM fnGetFollowUpColumnMapping (NULL,'T_DICTIONARYITEMBASE')
|
||||
|
||||
SELECT
|
||||
@typeName = d.C_TYPE
|
||||
,@isItemTorolt = d.TOROLT
|
||||
,@itemName = C_NAME
|
||||
FROM T_DICTIONARYITEMBASE_OSSZES d
|
||||
WHERE d.ID = @pItemId
|
||||
AND d.C_INTEZMENYID = @IntezmenyId
|
||||
AND d.C_TANEVID = @pCurrentTanevId
|
||||
|
||||
SELECT
|
||||
@kovItemId = d.ID
|
||||
,@isKovItemTorolt = d.TOROLT
|
||||
FROM T_DICTIONARYITEMBASE_OSSZES d
|
||||
WHERE d.C_INTEZMENYID = @IntezmenyId
|
||||
AND d.C_TANEVID = @kovetkezoTanevId
|
||||
AND d.ELOZOTANEVIREKORDID = @pItemId
|
||||
|
||||
IF EXISTS(SELECT 1 FROM T_DICTIONARYITEMBASE_OSSZES WHERE C_TYPE=@typeName AND C_NAME=@itemName AND C_TANEVID=@kovetkezoTanevId AND ISNULL(ELOZOTANEVIREKORDID,0)<>@pItemId AND TOROLT='F') BEGIN
|
||||
UPDATE T_DICTIONARYITEMBASE_OSSZES SET ELOZOTANEVIREKORDID = NULL WHERE ELOZOTANEVIREKORDID = @pItemId AND C_TANEVID=@kovetkezoTanevId AND TOROLT='F'
|
||||
UPDATE T_DICTIONARYITEMBASE_OSSZES SET ELOZOTANEVIREKORDID = @pItemId WHERE C_NAME=@itemName AND C_TANEVID = @kovetkezoTanevId AND TOROLT='F' AND C_TYPE=@typeName
|
||||
SELECT
|
||||
@kovItemId = d.ID
|
||||
,@isKovItemTorolt = d.TOROLT
|
||||
FROM T_DICTIONARYITEMBASE_OSSZES d
|
||||
WHERE d.C_INTEZMENYID = @IntezmenyId AND d.C_TANEVID = @kovetkezoTanevId AND d.ELOZOTANEVIREKORDID = @pItemId
|
||||
|
||||
SET @sql=N'
|
||||
UPDATE T_'+@typeName+'_OSSZES SET ELOZOTANEVIREKORDID = NULL WHERE ELOZOTANEVIREKORDID = @pItemId AND C_ALTANEVID=@kovetkezoTanevId AND TOROLT=''F''
|
||||
UPDATE T_'+@typeName+'_OSSZES SET ELOZOTANEVIREKORDID = @pItemId, ELOZOTANEVIREKORDIDA = @pItemId WHERE ID = @kovItemId AND C_ALTANEVID=@kovetkezoTanevId AND TOROLT=''F'''
|
||||
EXEC sp_Executesql @sql,N'@pItemId int,@kovItemId int,@kovetkezoTanevId int',@kovetkezoTanevId = @kovetkezoTanevId,@pItemId = @pItemId,@kovItemId = @kovItemId
|
||||
END
|
||||
|
||||
IF @isItemTorolt = 'T' OR @isKovItemTorolt = 'T' BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
IF @kovItemId IS NULL BEGIN
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMapping
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMapping
|
||||
SET @sql = N'
|
||||
INSERT INTO T_DICTIONARYITEMBASE (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_DICTIONARYITEMBASE_OSSZES s
|
||||
WHERE s.ID = @pItemId
|
||||
AND s.C_TANEVID = @pCurrentTanevId
|
||||
|
||||
SET @kovItemId = SCOPE_IDENTITY()'
|
||||
|
||||
SELECT @columnList = ISNULL(@columnList + ', ', '') + c.name
|
||||
FROM sys.columns c
|
||||
INNER JOIN sys.tables t ON t.object_id = c.object_id AND t.name = 'T_' + @typeName AND t.schema_id = 1
|
||||
ORDER BY c.column_id
|
||||
SET @columnListInsert = REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(STUFF(@columnList, 1, 2, '@kovItemId'), 'CREATOR', 'MODIFIER'), 'C_ALTANEVID', '@kovetkezoTanevId'), 'ELOZOTANEVIREKORDIDA', 'ID'), 'ELOZOTANEVIREKORDID', 'ID'), 'SERIAL', '0'),'CREATED','LASTCHANGED')
|
||||
|
||||
SET @sql += N'
|
||||
INSERT INTO T_' + @typeName + ' (' + @columnList + ')
|
||||
SELECT ' + @columnListInsert + '
|
||||
FROM T_' + @typeName + '_OSSZES
|
||||
WHERE ID = @pItemId
|
||||
AND C_ALTANEVID = @pCurrentTanevId'
|
||||
END
|
||||
ELSE BEGIN
|
||||
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMapping
|
||||
WHERE updateColname IS NOT NULL
|
||||
|
||||
SET @sql = N'
|
||||
UPDATE t SET
|
||||
'+@updateColList+'
|
||||
FROM T_DICTIONARYITEMBASE_OSSZES t
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES s ON s.ID = t.ELOZOTANEVIREKORDID
|
||||
WHERE s.ID = @pItemId
|
||||
AND t.ID = @kovItemId
|
||||
AND s.C_TANEVID = @pCurrentTanevId
|
||||
AND t.C_TANEVID = @kovetkezoTanevId'
|
||||
|
||||
SET @columnList = ''
|
||||
SELECT @columnList += 'kov.' + c.name + ' = akt.' + c.name + ', '
|
||||
FROM sys.columns c
|
||||
INNER JOIN sys.tables t ON t.object_id = c.object_id AND t.name = 'T_' + @typeName AND t.schema_id = 1
|
||||
WHERE c.name NOT IN ('ID', 'C_ALINTEZMENYID', 'C_ALTANEVID', 'TOROLT', 'ELOZOTANEVIREKORDID', 'ELOZOTANEVIREKORDIDA', 'NNID', 'LASTCHANGED', 'CREATOR', 'CREATED')
|
||||
|
||||
SET @columnList += 'kov.LASTCHANGED = akt.LASTCHANGED'
|
||||
SET @columnList = REPLACE(@columnList,'akt.SERIAL','kov.SERIAL+1')
|
||||
|
||||
SET @sql += N'
|
||||
UPDATE kov SET
|
||||
' + @columnList + '
|
||||
FROM T_' + @typeName + '_OSSZES kov
|
||||
INNER JOIN T_' + @typeName + '_OSSZES akt ON akt.ID = kov.ELOZOTANEVIREKORDID
|
||||
WHERE akt.ID = @pItemId
|
||||
AND kov.ID = @kovItemId
|
||||
AND akt.C_ALTANEVID = @pCurrentTanevId
|
||||
AND kov.C_ALTANEVID = @kovetkezoTanevId'
|
||||
END
|
||||
|
||||
--PRINT @sql
|
||||
EXEC sys.sp_executesql @sql,N'
|
||||
@kovItemId int
|
||||
,@pItemId int
|
||||
,@pCurrentTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@IntezmenyId int'
|
||||
,@kovItemId = @kovItemId
|
||||
,@pItemId = @pItemId
|
||||
,@pCurrentTanevId = @pCurrentTanevId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@IntezmenyId = @IntezmenyId
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,89 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpEszkoz
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpEszkoz
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@eszkozId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@kovEszkozId int = (SELECT TOP 1 ID FROM T_ESZKOZ_OSSZES WHERE ELOZOTANEVIREKORDID = @eszkozId)
|
||||
,@eszkozNev nvarchar(200)= (SELECT C_NEV FROM T_ESZKOZ_OSSZES WHERE ID = @eszkozId)
|
||||
,@aktTipusId int = (SELECT TOP 1 C_TIPUS FROM T_ESZKOZ_OSSZES WHERE ID = @eszkozId)
|
||||
,@insertColList nvarchar(max)
|
||||
,@selectColList nvarchar(max)
|
||||
,@updateColList nvarchar(max)
|
||||
,@sql nvarchar(max)
|
||||
|
||||
CREATE TABLE #columnMapping (
|
||||
insertColName nvarchar(128) COLLATE DATABASE_DEFAULT
|
||||
,selectColName nvarchar(128)
|
||||
,updateColName nvarchar(128)
|
||||
)
|
||||
INSERT INTO #columnMapping (
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
) SELECT
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
FROM fnGetFollowUpColumnMapping (NULL,'T_ESZKOZ')
|
||||
|
||||
IF (SELECT TOROLT FROM T_ESZKOZ_OSSZES WHERE ID = @eszkozId) = 'T' OR (SELECT TOROLT FROM T_ESZKOZ_OSSZES WHERE ID = @kovEszkozId) = 'T'
|
||||
BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
IF (@aktTipusId > 100000)
|
||||
BEGIN
|
||||
SET @aktTipusId = (SELECT TOP 1 ID FROM T_DICTIONARYITEMBASE_OSSZES WHERE ELOZOTANEVIREKORDID = @aktTipusId AND C_INTEZMENYID = @intezmenyId AND C_TANEVID = @kovetkezoTanevId)
|
||||
END
|
||||
|
||||
IF (@kovEszkozId IS NULL AND NOT EXISTS(SELECT 1 FROM T_ESZKOZ_OSSZES WHERE C_NEV=@eszkozNev AND C_TANEVID=@kovetkezoTanevId AND TOROLT='F')) BEGIN
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMapping
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMapping
|
||||
SET @sql = N'
|
||||
INSERT INTO T_ESZKOZ_OSSZES (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_ESZKOZ_OSSZES s
|
||||
INNER JOIN T_TEREM_OSSZES te ON te.ELOZOTANEVIREKORDID=s.C_TEREMID AND te.TOROLT=''F''
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES fh ON fh.ELOZOTANEVIREKORDID = s.C_FELELOSID
|
||||
WHERE s.ID=@EszkozId'
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMapping
|
||||
WHERE updateColname IS NOT NULL
|
||||
SET @sql = N'
|
||||
UPDATE t SET
|
||||
'+@updateColList+'
|
||||
FROM T_ESZKOZ_OSSZES t
|
||||
INNER JOIN T_ESZKOZ_OSSZES s ON s.ID = @eszkozId AND s.ID=t.ELOZOTANEVIREKORDID
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES fh ON fh.ELOZOTANEVIREKORDID = s.C_FELELOSID
|
||||
INNER JOIN T_TEREM_OSSZES te ON te.ELOZOTANEVIREKORDID=s.C_TEREMID AND te.TOROLT=''F'''
|
||||
END
|
||||
|
||||
--PRINT @sql
|
||||
EXEC sp_executesql
|
||||
@sql,N'
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@eszkozId int
|
||||
,@aktTipusId int'
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@aktTanevId = @aktTanevId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@eszkozId = @eszkozId
|
||||
,@aktTipusId = @aktTipusId
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,96 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpFeladatellatasiHely
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpFeladatellatasiHely
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@feladatellatasiHelyId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@kovetkezoFeladatellatasiHelyId int
|
||||
,@kovOktatasiNevelesiFeladat int
|
||||
,@kovMukodesiHelyId int
|
||||
,@insertColList nvarchar(max)
|
||||
,@selectColList nvarchar(max)
|
||||
,@updateColList nvarchar(max)
|
||||
,@sql nvarchar(max)
|
||||
|
||||
CREATE TABLE #columnMapping (
|
||||
insertColName nvarchar(128) COLLATE DATABASE_DEFAULT
|
||||
,selectColName nvarchar(128)
|
||||
,updateColName nvarchar(128)
|
||||
)
|
||||
INSERT INTO #columnMapping (
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
) SELECT
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
FROM fnGetFollowUpColumnMapping (NULL,'T_FELADATELLATASIHELY')
|
||||
|
||||
|
||||
SELECT @kovOktatasiNevelesiFeladat=okt.ID FROM T_OKTATASINEVELESIFELADAT_OSSZES okt
|
||||
INNER JOIN T_FELADATELLATASIHELY_OSSZES fh ON fh.C_OKTATASINEVELESIFELADATTIPUS=okt.ELOZOTANEVIREKORDID AND fh.ID=@feladatellatasiHelyId AND fh.TOROLT='F'
|
||||
WHERE C_ALTANEVID=@kovetkezoTanevId AND okt.TOROLT='F'
|
||||
|
||||
SELECT @kovMukodesiHelyId=mh.ID FROM T_FELADATELLATASIHELY_OSSZES fh
|
||||
INNER JOIN T_MUKODESIHELY_OSSZES mh ON mh.ELOZOTANEVIREKORDID=fh.C_MUKODESIHELYID AND mh.TOROLT='F'
|
||||
WHERE fh.ID=@feladatellatasiHelyId AND fh.TOROLT='F'
|
||||
|
||||
IF EXISTS(SELECT 1 FROM T_FELADATELLATASIHELY_OSSZES WHERE TOROLT='F' AND C_TANEVID=@kovetkezoTanevId AND C_MUKODESIHELYID=@kovMukodesiHelyId AND C_OKTATASINEVELESIFELADATTIPUS=@kovOktatasiNevelesiFeladat AND ISNULL(ELOZOTANEVIREKORDID,0)<>@feladatellatasiHelyId)
|
||||
BEGIN
|
||||
UPDATE T_FELADATELLATASIHELY_OSSZES SET ELOZOTANEVIREKORDID = NULL WHERE ELOZOTANEVIREKORDID=@feladatellatasiHelyId
|
||||
UPDATE T_FELADATELLATASIHELY_OSSZES SET ELOZOTANEVIREKORDID = @feladatellatasiHelyId WHERE TOROLT='F' AND C_TANEVID=@kovetkezoTanevId AND C_MUKODESIHELYID=@kovMukodesiHelyId AND C_OKTATASINEVELESIFELADATTIPUS=@kovOktatasiNevelesiFeladat AND ISNULL(ELOZOTANEVIREKORDID,0)<>@feladatellatasiHelyId
|
||||
END
|
||||
|
||||
SELECT @kovetkezoFeladatellatasiHelyId = ID FROM T_FELADATELLATASIHELY_OSSZES WHERE ELOZOTANEVIREKORDID = @feladatellatasiHelyId
|
||||
IF (SELECT TOROLT FROM T_FELADATELLATASIHELY_OSSZES WHERE ID = @feladatellatasiHelyId) = 'T' OR (SELECT TOROLT FROM T_FELADATELLATASIHELY_OSSZES WHERE ID = @kovetkezoFeladatellatasiHelyId) = 'T' BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
IF (@kovetkezoFeladatellatasiHelyId IS NULL) BEGIN
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMapping
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMapping
|
||||
SET @sql = N'
|
||||
INSERT INTO T_FELADATELLATASIHELY_OSSZES (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_FELADATELLATASIHELY_OSSZES s
|
||||
INNER JOIN T_MUKODESIHELY_OSSZES mh ON mh.ELOZOTANEVIREKORDID=s.C_MUKODESIHELYID AND mh.TOROLT=''F''
|
||||
INNER JOIN T_OKTATASINEVELESIFELADAT_OSSZES okt ON okt.ELOZOTANEVIREKORDID=s.C_OKTATASINEVELESIFELADATTIPUS AND okt.TOROLT=''F'' AND okt.C_ALTANEVID=@kovetkezoTanevId
|
||||
WHERE s.TOROLT=''F'' AND s.ID=@feladatellatasiHelyId'
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMapping
|
||||
WHERE updateColname IS NOT NULL
|
||||
SET @sql = N'
|
||||
UPDATE t SET
|
||||
'+@updateColList+'
|
||||
FROM T_FELADATELLATASIHELY_OSSZES t
|
||||
INNER JOIN T_FELADATELLATASIHELY_OSSZES s ON s.ID = @feladatellatasiHelyId AND s.ID=t.ELOZOTANEVIREKORDID
|
||||
INNER JOIN T_OKTATASINEVELESIFELADAT_OSSZES okt ON okt.ELOZOTANEVIREKORDID=s.C_OKTATASINEVELESIFELADATTIPUS AND okt.TOROLT=''F'' AND okt.C_ALTANEVID=@kovetkezoTanevId'
|
||||
END
|
||||
|
||||
--PRINT @sql
|
||||
EXEC sp_executesql
|
||||
@sql,N'
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@feladatellatasiHelyId int'
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@aktTanevId = @aktTanevId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@feladatellatasiHelyId = @feladatellatasiHelyId
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,69 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpFelhasznaloCim
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpFelhasznaloCim
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@felhasznaloId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@kovFelhasznaloId int
|
||||
,@insertColList nvarchar(max)
|
||||
,@selectColList nvarchar(max)
|
||||
,@sql nvarchar(max)
|
||||
|
||||
CREATE TABLE #columnMapping (
|
||||
insertColName nvarchar(128) COLLATE DATABASE_DEFAULT
|
||||
,selectColName nvarchar(128)
|
||||
)
|
||||
|
||||
INSERT INTO #columnMapping
|
||||
SELECT insertColName,selectColName
|
||||
FROM fnGetFollowUpColumnMapping ('GID','T_CIM')
|
||||
|
||||
SELECT @kovFelhasznaloId = kovTanevesTanulo.ID
|
||||
FROM T_FELHASZNALO_OSSZES aktTanevesTanulo
|
||||
INNER JOIN T_FELHASZNALO_OSSZES kovTanevesTanulo ON aktTanevesTanulo.ID = kovTanevesTanulo.ELOZOTANEVIREKORDID
|
||||
WHERE aktTanevesTanulo.ID = @felhasznaloId
|
||||
AND aktTanevesTanulo.C_INTEZMENYID = @intezmenyId
|
||||
AND aktTanevesTanulo.C_TANEVID = @aktTanevId
|
||||
AND kovTanevesTanulo.TOROLT = 'F'
|
||||
AND aktTanevesTanulo.TOROLT = 'F';
|
||||
|
||||
IF @kovFelhasznaloId IS NOT NULL BEGIN
|
||||
DELETE FROM T_CIM_OSSZES
|
||||
WHERE C_FELHASZNALOID = @kovFelhasznaloId
|
||||
AND C_GONDVISELOID IS NULL
|
||||
AND C_INTEZMENYID = @intezmenyId
|
||||
AND C_TANEVID = @kovetkezoTanevId
|
||||
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMapping
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMapping
|
||||
|
||||
SET @sql = N'
|
||||
INSERT INTO T_CIM_OSSZES (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_CIM_OSSZES s
|
||||
WHERE s.C_FELHASZNALOID = @felhasznaloId AND s.C_GONDVISELOID IS NULL AND s.TOROLT = ''F'''
|
||||
|
||||
--PRINT @sql
|
||||
|
||||
EXEC sp_executesql
|
||||
@sql,N'
|
||||
@kovetkezoTanevId int
|
||||
,@intezmenyId int
|
||||
,@felhasznaloId int
|
||||
,@kovFelhasznaloId int'
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@felhasznaloId = @felhasznaloId
|
||||
,@kovFelhasznaloId = @kovFelhasznaloId
|
||||
END
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,78 @@
|
||||
-- =============================================
|
||||
-- Author: Szekeres András
|
||||
-- Create date: 2018.04.24.
|
||||
-- Description: Egy tanuló email címeinek frissítése a következõ tanévre
|
||||
|
||||
-- Modifier: Zalán Máriusz
|
||||
-- Modify date: 2020.02.19
|
||||
-- Description: Dinamizálás
|
||||
-- =============================================
|
||||
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpFelhasznaloEmail
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpFelhasznaloEmail
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@felhasznaloId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@kovFelhasznaloId int
|
||||
,@insertColList nvarchar(max)
|
||||
,@selectColList nvarchar(max)
|
||||
,@sql nvarchar(max)
|
||||
|
||||
CREATE TABLE #columnMapping (
|
||||
insertColName nvarchar(128) COLLATE DATABASE_DEFAULT
|
||||
,selectColName nvarchar(128)
|
||||
)
|
||||
|
||||
INSERT INTO #columnMapping
|
||||
SELECT insertColName,selectColName
|
||||
FROM fnGetFollowUpColumnMapping (NULL,'T_EMAIL')
|
||||
|
||||
SELECT @kovFelhasznaloId = kov.ID
|
||||
FROM T_FELHASZNALO_OSSZES akt
|
||||
INNER JOIN T_FELHASZNALO_OSSZES kov ON akt.C_OKTATASIAZONOSITO = kov.C_OKTATASIAZONOSITO AND kov.C_TANEVID = @kovetkezoTanevId AND kov.C_INTEZMENYID = @intezmenyId
|
||||
WHERE akt.ID = @felhasznaloId
|
||||
AND akt.C_INTEZMENYID = @intezmenyId
|
||||
AND akt.C_TANEVID = @aktTanevId
|
||||
AND kov.TOROLT = 'F'
|
||||
AND akt.TOROLT = 'F'
|
||||
|
||||
IF @kovFelhasznaloId IS NOT NULL BEGIN
|
||||
DELETE FROM T_EMAIL_OSSZES
|
||||
WHERE C_FELHASZNALOID = @kovFelhasznaloId
|
||||
AND C_GONDVISELOID IS NULL
|
||||
AND C_INTEZMENYID = @intezmenyId
|
||||
AND C_TANEVID = @kovetkezoTanevId;
|
||||
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMapping
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMapping
|
||||
|
||||
SET @sql = N'
|
||||
INSERT INTO T_EMAIL_OSSZES (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_EMAIL_OSSZES s
|
||||
WHERE s.C_FELHASZNALOID = @felhasznaloId AND s.C_GONDVISELOID IS NULL AND s.TOROLT = ''F'''
|
||||
|
||||
--PRINT @sql
|
||||
|
||||
EXEC sp_executesql
|
||||
@sql,N'
|
||||
@kovetkezoTanevId int
|
||||
,@intezmenyId int
|
||||
,@felhasznaloId int
|
||||
,@kovFelhasznaloId int'
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@felhasznaloId = @felhasznaloId
|
||||
,@kovFelhasznaloId = @kovFelhasznaloId
|
||||
END
|
||||
END
|
||||
GO
|
@@ -0,0 +1,78 @@
|
||||
-- =============================================
|
||||
-- Author: Szekeres András
|
||||
-- Create date: 2018.04.24.
|
||||
-- Description: Egy tanuló telefonszámainak frissítése a következõ tanévre
|
||||
|
||||
-- Modifier: Zalán Máriusz
|
||||
-- Modify date: 2020.02.19
|
||||
-- Description: Dinamizálás
|
||||
-- =============================================
|
||||
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpFelhasznaloTelefon
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpFelhasznaloTelefon
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@felhasznaloId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
DECLARE
|
||||
@kovFelhasznaloId int
|
||||
,@insertColList nvarchar(max)
|
||||
,@selectColList nvarchar(max)
|
||||
,@sql nvarchar(max)
|
||||
|
||||
CREATE TABLE #columnMapping (
|
||||
insertColName nvarchar(128) COLLATE DATABASE_DEFAULT
|
||||
,selectColName nvarchar(128)
|
||||
)
|
||||
|
||||
INSERT INTO #columnMapping
|
||||
SELECT insertColName,selectColName
|
||||
FROM fnGetFollowUpColumnMapping (NULL,'T_TELEFON')
|
||||
|
||||
SELECT @kovFelhasznaloId = kov.ID
|
||||
FROM T_FELHASZNALO_OSSZES akt
|
||||
INNER JOIN T_FELHASZNALO_OSSZES kov ON akt.C_OKTATASIAZONOSITO = kov.C_OKTATASIAZONOSITO AND kov.C_TANEVID = @kovetkezoTanevId AND kov.C_INTEZMENYID = @intezmenyId
|
||||
WHERE akt.ID = @felhasznaloId
|
||||
AND akt.C_INTEZMENYID = @intezmenyId
|
||||
AND akt.C_TANEVID = @aktTanevId
|
||||
AND kov.TOROLT = 'F'
|
||||
AND akt.TOROLT = 'F'
|
||||
|
||||
IF @kovFelhasznaloId IS NOT NULL BEGIN
|
||||
DELETE FROM T_TELEFON_OSSZES
|
||||
WHERE C_FELHASZNALOID = @kovFelhasznaloId
|
||||
AND C_GONDVISELOID IS NULL
|
||||
AND C_INTEZMENYID = @intezmenyId
|
||||
AND C_TANEVID = @kovetkezoTanevId;
|
||||
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMapping
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMapping
|
||||
|
||||
SET @sql = N'
|
||||
INSERT INTO T_TELEFON_OSSZES (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_TELEFON_OSSZES s
|
||||
WHERE s.C_FELHASZNALOID = @felhasznaloId AND s.C_GONDVISELOID IS NULL AND s.TOROLT = ''F'''
|
||||
|
||||
--PRINT @sql
|
||||
|
||||
EXEC sp_executesql
|
||||
@sql,N'
|
||||
@kovetkezoTanevId int
|
||||
,@intezmenyId int
|
||||
,@felhasznaloId int
|
||||
,@kovFelhasznaloId int'
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@felhasznaloId = @felhasznaloId
|
||||
,@kovFelhasznaloId = @kovFelhasznaloId
|
||||
END
|
||||
END
|
||||
GO
|
@@ -0,0 +1,157 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpGondviselo
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpGondviselo
|
||||
@intezmenyId int
|
||||
,@tanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@gondviseloId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@kovGondviseloId int = (SELECT ID FROM T_GONDVISELO_OSSZES WHERE ELOZOTANEVIREKORDID=@gondviseloId)
|
||||
,@insertColList nvarchar(max)
|
||||
,@selectColList nvarchar(max)
|
||||
,@updateColList nvarchar(max)
|
||||
,@partialSql nvarchar(max)
|
||||
,@sql nvarchar(max)
|
||||
|
||||
|
||||
IF (SELECT TOROLT FROM T_GONDVISELO_OSSZES WHERE ID = @gondviseloId)='T' OR (SELECT TOROLT FROM T_GONDVISELO_OSSZES WHERE ID = @kovGondviseloId)='T' BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
CREATE TABLE #ColumnMappings(
|
||||
insertColName nvarchar(128)
|
||||
,selectColName nvarchar(128)
|
||||
,updateColName nvarchar(128)
|
||||
,tableName nvarchar(128)
|
||||
)
|
||||
INSERT INTO #ColumnMappings(insertColName,selectColName,updateColName,tableName)
|
||||
SELECT insertColName,selectColName,updateColName,'T_GONDVISELO' from fnGetFollowUpColumnMapping (NULL,'T_GONDVISELO')
|
||||
UNION ALL
|
||||
SELECT insertColName,selectColName,updateColName,'T_EMAIL' FROM fnGetFollowUpColumnMapping (NULL,'T_EMAIL')
|
||||
UNION ALL
|
||||
SELECT insertColName,selectColName,updateColName,'T_TELEFON' FROM fnGetFollowUpColumnMapping (NULL,'T_TELEFON')
|
||||
|
||||
UPDATE #ColumnMappings SET selectColName = 'gKov.ID' WHERE insertColName = 'C_GONDVISELOID' AND tableName IN ('T_EMAIL','T_TELEFON')
|
||||
UPDATE #ColumnMappings SET selectColName = 'gKov.C_TANULOID' WHERE insertColName = 'C_FELHASZNALOID' AND tableName IN ('T_EMAIL','T_TELEFON')
|
||||
|
||||
IF @kovGondviseloId IS NULL BEGIN
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMappings WHERE tableName = 'T_GONDVISELO'
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #ColumnMappings WHERE tableName = 'T_GONDVISELO'
|
||||
SET @partialSql = N'
|
||||
INSERT INTO T_GONDVISELO_OSSZES (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_GONDVISELO_OSSZES s
|
||||
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ID = s.C_TANULOID
|
||||
INNER JOIN T_FELHASZNALO_OSSZES fhNew ON fhNew.C_OKTATASIAZONOSITO = fh.C_OKTATASIAZONOSITO AND fhNew.TOROLT=''F'' AND fhNew.C_TANEVID = @kovetkezoTanevId
|
||||
WHERE s.ID = @gondviseloId'
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMappings
|
||||
WHERE tableName = 'T_GONDVISELO' AND updateColname IS NOT NULL
|
||||
SET @partialSql = N'
|
||||
UPDATE t SET
|
||||
'+@updateColList+'
|
||||
FROM T_GONDVISELO_OSSZES s
|
||||
INNER JOIN T_GONDVISELO_OSSZES t ON t.ELOZOTANEVIREKORDID=s.ID AND s.ID=@gondviseloId'
|
||||
END
|
||||
|
||||
--PRINT @partialSql
|
||||
SET @sql = @partialSql
|
||||
SELECT @partialSql = NULL,@insertColList = NULL,@selectColList = NULL,@updateColList = NULL
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMappings WHERE tableName = 'T_TELEFON'
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #ColumnMappings WHERE tableName = 'T_TELEFON'
|
||||
|
||||
SET @partialSql = N'
|
||||
INSERT INTO T_TELEFON_OSSZES (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_GONDVISELO_OSSZES g
|
||||
INNER JOIN T_GONDVISELO_OSSZES gKov ON gKov.ELOZOTANEVIREKORDID=g.ID
|
||||
INNER JOIN T_TELEFON_OSSZES s ON s.C_GONDVISELOID=g.ID AND s.TOROLT=''F''
|
||||
WHERE g.ID=@gondviseloId
|
||||
AND NOT EXISTS(SELECT 1 FROM T_TELEFON_OSSZES WHERE ELOZOTANEVIREKORDID=s.ID AND TOROLT=''F'')'
|
||||
|
||||
SELECT @insertColList = NULL,@selectColList = NULL
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMappings WHERE tableName = 'T_EMAIL'
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #ColumnMappings WHERE tableName = 'T_EMAIL'
|
||||
|
||||
SET @partialSql += N'
|
||||
INSERT INTO T_EMAIL_OSSZES (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_GONDVISELO_OSSZES g
|
||||
INNER JOIN T_GONDVISELO_OSSZES gKov ON gKov.ELOZOTANEVIREKORDID=g.ID
|
||||
INNER JOIN T_EMAIL_OSSZES s ON s.C_GONDVISELOID=g.ID AND s.TOROLT=''F''
|
||||
WHERE g.ID=@gondviseloId
|
||||
AND NOT EXISTS(SELECT 1 FROM T_EMAIL_OSSZES WHERE ELOZOTANEVIREKORDID=s.ID AND TOROLT=''F'')'
|
||||
|
||||
SET @sql+=@partialSql
|
||||
--PRINT @partialSql
|
||||
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMappings
|
||||
WHERE tableName = 'T_TELEFON' AND updateColname IS NOT NULL
|
||||
SET @partialSql = N'
|
||||
UPDATE t SET
|
||||
'+@updateColList+'
|
||||
FROM T_TELEFON_OSSZES s
|
||||
INNER JOIN T_TELEFON_OSSZES t ON t.ELOZOTANEVIREKORDID=s.ID AND t.TOROLT=''F''
|
||||
WHERE s.TOROLT=''F'' AND s.C_GONDVISELOID=@gondviseloId'
|
||||
|
||||
SET @updateColList = NULL
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMappings
|
||||
WHERE tableName = 'T_EMAIL' AND updateColname IS NOT NULL
|
||||
|
||||
SET @partialSql += N'
|
||||
UPDATE t SET
|
||||
'+@updateColList+'
|
||||
FROM T_EMAIL_OSSZES s
|
||||
INNER JOIN T_EMAIL_OSSZES t ON t.ELOZOTANEVIREKORDID=s.ID AND t.TOROLT=''F''
|
||||
WHERE s.TOROLT=''F'' AND s.C_GONDVISELOID=@gondviseloId'
|
||||
|
||||
SET @sql += @partialSql
|
||||
--PRINT @partialSql
|
||||
DECLARE @cimId int
|
||||
DECLARE cimCursor CURSOR FOR
|
||||
SELECT ID FROM T_CIM_OSSZES WHERE C_GONDVISELOID=@gondviseloId AND TOROLT='F'
|
||||
OPEN cimCursor
|
||||
FETCH NEXT FROM cimCursor INTO @cimId
|
||||
WHILE @@FETCH_STATUS=0 BEGIN
|
||||
EXEC uspFollowUpGondviseloCim
|
||||
@intezmenyId,
|
||||
@tanevId,
|
||||
@kovetkezoTanevId,
|
||||
@cimId
|
||||
FETCH NEXT FROM cimCursor INTO @cimId
|
||||
END
|
||||
CLOSE cimCursor
|
||||
DEALLOCATE cimCursor
|
||||
|
||||
EXEC sp_executesql
|
||||
@sql,N'
|
||||
@intezmenyId int
|
||||
,@tanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@gondviseloId int
|
||||
,@kovGondviseloId int'
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@tanevId = @tanevId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@gondviseloId = @gondviseloId
|
||||
,@kovGondviseloId = @kovGondviseloId
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,76 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpGondviseloCim
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpGondviseloCim
|
||||
@intezmenyId int
|
||||
,@tanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@cimId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@kovCimId int = (SELECT ID FROM T_CIM_OSSZES WHERE ELOZOTANEVIREKORDID=@cimId AND TOROLT='F')
|
||||
,@nextGvId int
|
||||
,@gvid int
|
||||
,@selectColList nvarchar(max)
|
||||
,@insertColList nvarchar(max)
|
||||
,@sql nvarchar(max)
|
||||
|
||||
CREATE TABLE #GvCimColumnMapping (
|
||||
selectColName nvarchar(128)
|
||||
,insertColName nvarchar(128)
|
||||
)
|
||||
INSERT INTO #GvCimColumnMapping (
|
||||
selectColName
|
||||
,insertColName
|
||||
)
|
||||
SELECT
|
||||
selectColName
|
||||
,insertColName
|
||||
FROM fnGetFollowUpColumnMapping ('GID','T_CIM')
|
||||
|
||||
IF (SELECT TOROLT FROM T_CIM_OSSZES WHERE ID = @cimId)='T' OR (SELECT TOROLT FROM T_CIM_OSSZES WHERE ID = @kovCimId)='T' BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
SELECT
|
||||
@gvId = g.ID
|
||||
,@nextGvId = gNext.ID
|
||||
FROM T_CIM_OSSZES c
|
||||
INNER JOIN T_GONDVISELO_OSSZES g ON g.ID=c.C_GONDVISELOID
|
||||
INNER JOIN T_GONDVISELO_OSSZES gNext ON gNext.ELOZOTANEVIREKORDID = g.ID AND gNext.TOROLT='F'
|
||||
WHERE c.ID = @cimId
|
||||
|
||||
DELETE FROM T_CIM WHERE C_GONDVISELOID = @nextGvId
|
||||
|
||||
UPDATE #GvCimColumnMapping SET selectColName = 'fhNew.ID' WHERE insertColName = 'C_FELHASZNALOID'
|
||||
UPDATE #GvCimColumnMapping SET selectColName = 'g.ID' WHERE insertColName = 'C_GONDVISELOID'
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #GvCimColumnMapping
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #GvCimColumnMapping
|
||||
SET @sql =N'
|
||||
INSERT INTO T_CIM_OSSZES (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_CIM_OSSZES s
|
||||
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ID = s.C_FELHASZNALOID
|
||||
INNER JOIN T_FELHASZNALO_OSSZES fhNew ON fhNew.C_OKTATASIAZONOSITO=fh.C_OKTATASIAZONOSITO AND fhNew.TOROLT=''F'' AND fhNew.C_TANEVID=@kovetkezoTanevId
|
||||
INNER JOIN T_GONDVISELO_OSSZES g ON g.ELOZOTANEVIREKORDID=s.C_GONDVISELOID AND g.TOROLT=''F''
|
||||
WHERE s.C_GONDVISELOID = @gvId'
|
||||
|
||||
--print @sql
|
||||
EXEC sp_executesql
|
||||
@sql,N'
|
||||
@intezmenyId int
|
||||
,@tanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@gvId int'
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@tanevId = @tanevId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@gvId = @gvId
|
||||
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,38 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpIntezmenyAdatok
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpIntezmenyAdatok
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE @aktivIntezmenyAdatokId int = (
|
||||
SELECT TOP 1 ID FROM T_INTEZMENYADATOK_OSSZES WHERE C_TANEVID = @aktTanevId AND TOROLT='F')
|
||||
,@updateColList nvarchar(max)
|
||||
,@sql nvarchar(max)
|
||||
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM fnGetFollowUpColumnMapping (NULL,'T_INTEZMENYADATOK')
|
||||
WHERE updateColname IS NOT NULL
|
||||
|
||||
SET @sql = N'
|
||||
UPDATE t SET
|
||||
'+@updateColList+'
|
||||
FROM T_INTEZMENYADATOK_OSSZES t
|
||||
INNER JOIN T_INTEZMENYADATOK_OSSZES s ON s.ID = @aktivIntezmenyAdatokId AND s.ID = t.ELOZOTANEVIREKORDID'
|
||||
|
||||
--PRINT @sql
|
||||
EXEC sp_executesql
|
||||
@sql,N'
|
||||
@intezmenyId int
|
||||
,@kovetkezoTanevId int
|
||||
,@aktivIntezmenyAdatokId int'
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@aktivIntezmenyAdatokId = @aktivIntezmenyAdatokId
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,121 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpMukodesiHely
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpMukodesiHely
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@mukodesiHelyId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@kovetkezoMukodesiHelyId int
|
||||
,@ujKovetkezoMukodesiHelyId int
|
||||
,@mukodesiHelyNev nvarchar(100)
|
||||
,@isKovItemTorolt char(1)
|
||||
,@mukodesiHelyKod nvarchar(3)
|
||||
,@insertColList nvarchar(max)
|
||||
,@selectColList nvarchar(max)
|
||||
,@updateColList nvarchar(max)
|
||||
,@sql nvarchar(max)
|
||||
|
||||
CREATE TABLE #columnMapping (
|
||||
insertColName nvarchar(128) COLLATE DATABASE_DEFAULT
|
||||
,selectColName nvarchar(128)
|
||||
,updateColName nvarchar(128)
|
||||
)
|
||||
INSERT INTO #columnMapping (
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
) SELECT
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
FROM fnGetFollowUpColumnMapping (NULL,'T_MUKODESIHELY')
|
||||
|
||||
SELECT
|
||||
@kovetkezoMukodesiHelyId = mh.ID
|
||||
,@isKovItemTorolt = mh.TOROLT
|
||||
FROM T_MUKODESIHELY_OSSZES mh
|
||||
WHERE mh.C_INTEZMENYID = @intezmenyId
|
||||
AND mh.C_TANEVID = @kovetkezoTanevId
|
||||
AND mh.ELOZOTANEVIREKORDID = @mukodesiHelyId
|
||||
|
||||
SELECT
|
||||
@mukodesiHelyNev = C_NEV
|
||||
,@mukodesiHelyKod = C_MUKODESIHELYAZONOSITO
|
||||
FROM T_MUKODESIHELY_OSSZES WHERE ID = @mukodesiHelyId AND C_TANEVID=@aktTanevId
|
||||
|
||||
|
||||
SELECT @ujKovetkezoMukodesiHelyId=ID from T_MUKODESIHELY_OSSZES WHERE TOROLT='F' AND C_TANEVID=@kovetkezoTanevId AND
|
||||
(
|
||||
(@mukodesiHelyNev=C_NEV AND ISNULL(@mukodesiHelyKod,0)=ISNULL(C_MUKODESIHELYAZONOSITO,0))
|
||||
OR
|
||||
(@mukodesiHelyNev=C_NEV AND (@mukodesiHelyKod IS NULL OR NOT EXISTS(SELECT 1 FROM T_MUKODESIHELY_OSSZES WHERE ISNULL(@mukodesiHelyKod,0)=ISNULL(C_MUKODESIHELYAZONOSITO,0) AND ISNULL(ELOZOTANEVIREKORDID,0)<>@mukodesiHelyId AND TOROLT='F' AND C_TANEVID=@kovetkezoTanevId)))
|
||||
OR
|
||||
(@mukodesiHelyKod=C_MUKODESIHELYAZONOSITO AND NOT EXISTS(SELECT 1 FROM T_MUKODESIHELY_OSSZES WHERE @mukodesiHelyNev=C_NEV AND ISNULL(ELOZOTANEVIREKORDID,0)<>@mukodesiHelyId AND TOROLT='F' AND C_TANEVID=@kovetkezoTanevId))
|
||||
)
|
||||
AND ISNULL(ELOZOTANEVIREKORDID,0)<>@mukodesiHelyId
|
||||
|
||||
IF ISNULL(@kovetkezoMukodesiHelyId,0) <> @ujKovetkezoMukodesiHelyId BEGIN
|
||||
UPDATE T_MUKODESIHELY_OSSZES SET ELOZOTANEVIREKORDID = NULL WHERE ID = @kovetkezoMukodesiHelyId
|
||||
UPDATE T_MUKODESIHELY_OSSZES SET ELOZOTANEVIREKORDID = @mukodesiHelyId WHERE ID = @ujKovetkezoMukodesiHelyId
|
||||
SET @kovetkezoMukodesiHelyId=@ujKovetkezoMukodesiHelyId
|
||||
END
|
||||
|
||||
IF (SELECT TOROLT FROM T_MUKODESIHELY_OSSZES WHERE ID = @mukodesiHelyId)='T'
|
||||
OR (SELECT TOROLT FROM T_MUKODESIHELY_OSSZES WHERE ELOZOTANEVIREKORDID = @mukodesiHelyId)='T'
|
||||
OR EXISTS (
|
||||
SELECT 1 FROM T_MUKODESIHELY_OSSZES
|
||||
WHERE ((C_NEV=@mukodesiHelyNev AND (ISNULL(C_MUKODESIHELYAZONOSITO,0)<>@mukodesiHelyKod OR @mukodesiHelyKod IS NULL))
|
||||
OR (C_NEV<>@mukodesiHelyNev AND ISNULL(C_MUKODESIHELYAZONOSITO,0) = @mukodesiHelyKod))
|
||||
AND TOROLT='F' AND C_TANEVID=@kovetkezoTanevId AND ISNULL(ELOZOTANEVIREKORDID,0)<>@mukodesiHelyId)
|
||||
BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
IF (@kovetkezoMukodesiHelyId IS NULL)
|
||||
BEGIN
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMapping
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMapping
|
||||
SET @sql = N'
|
||||
INSERT INTO T_MUKODESIHELY_OSSZES (
|
||||
'+@insertColList+'
|
||||
)
|
||||
SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_MUKODESIHELY_OSSZES s
|
||||
INNER JOIN T_INTEZMENYADATOK_OSSZES ia ON ia.ELOZOTANEVIREKORDID=s.C_INTEZMENYADATOKID AND ia.TOROLT=''F''
|
||||
WHERE s.ID=@mukodesiHelyId'
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMapping
|
||||
WHERE updateColname IS NOT NULL
|
||||
|
||||
SET @sql = N'
|
||||
UPDATE t SET
|
||||
'+@updateColList+'
|
||||
FROM T_MUKODESIHELY_OSSZES t
|
||||
INNER JOIN T_MUKODESIHELY_OSSZES s ON s.ID = @mukodesiHelyId and s.TOROLT=''F'' AND s.ID=t.ELOZOTANEVIREKORDID'
|
||||
END
|
||||
|
||||
--PRINT @sql
|
||||
EXEC sp_executesql
|
||||
@sql,N'
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@mukodesiHelyId int'
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@aktTanevId = @aktTanevId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@mukodesiHelyId = @mukodesiHelyId
|
||||
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,93 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpOraterv
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpOraterv
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@oratervId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@kovOratervId int
|
||||
,@oraTervNev nvarchar(510)=(SELECT C_NEV FROM T_ORATERV_OSSZES WHERE ID = @oratervId)
|
||||
,@sql nvarchar(max)
|
||||
,@insertColList nvarchar(max)
|
||||
,@selectColList nvarchar(max)
|
||||
,@updateColList nvarchar(max)
|
||||
|
||||
CREATE TABLE #columnMapping(
|
||||
insertColName nvarchar(128)
|
||||
,selectColName nvarchar(128)
|
||||
,updateColName nvarchar(128)
|
||||
)
|
||||
|
||||
IF EXISTS(SELECT 1 FROM T_ORATERV_OSSZES WHERE TOROLT='F' AND C_TANEVID=@kovetkezoTanevId AND C_NEV=@oraTervNev AND ISNULL(ELOZOTANEVIREKORDID,0)<>@oratervId)
|
||||
BEGIN
|
||||
UPDATE T_ORATERV_OSSZES SET ELOZOTANEVIREKORDID = NULL WHERE ELOZOTANEVIREKORDID=@oratervId
|
||||
UPDATE T_ORATERV_OSSZES SET ELOZOTANEVIREKORDID = @oratervId WHERE C_NEV=@oraTervNev AND TOROLT='F' AND C_TANEVID=@kovetkezoTanevId AND ISNULL(ELOZOTANEVIREKORDID,0)<>@oratervId
|
||||
END
|
||||
|
||||
SELECT @kovOratervId = ID FROM T_ORATERV_OSSZES WHERE ELOZOTANEVIREKORDID = @oratervId
|
||||
|
||||
IF (SELECT TOROLT FROM T_ORATERV_OSSZES WHERE ID = @oratervId) = 'T' OR (SELECT TOROLT FROM T_ORATERV_OSSZES WHERE ID = @kovOratervId) = 'T' BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
INSERT INTO #columnMapping(
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
)
|
||||
SELECT
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
FROM fnGetFollowUpColumnMapping (NULL,'T_ORATERV')
|
||||
|
||||
IF (@kovOratervId IS NULL)
|
||||
BEGIN
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMapping
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMapping
|
||||
SET @sql = N'
|
||||
INSERT INTO T_ORATERV_OSSZES (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_ORATERV_OSSZES s
|
||||
INNER JOIN T_TANTERV_OSSZES tr ON tr.ELOZOTANEVIREKORDID = s.C_TANTERVID AND tr.TOROLT=''F''
|
||||
INNER JOIN T_EVFOLYAMTIPUS_OSSZES e ON e.ELOZOTANEVIREKORDID = s.C_EVFOLYAM AND e.TOROLT=''F'' AND e.C_ALTANEVID = @kovetkezoTanevId
|
||||
WHERE s.ID = @oratervId'
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMapping
|
||||
WHERE updateColname IS NOT NULL
|
||||
|
||||
SET @sql = N'
|
||||
UPDATE t SET
|
||||
'+@updateColList+'
|
||||
FROM T_ORATERV_OSSZES t
|
||||
INNER JOIN T_ORATERV_OSSZES s ON s.ID = @oratervId AND s.ID=t.ELOZOTANEVIREKORDID
|
||||
INNER JOIN T_EVFOLYAMTIPUS_OSSZES e ON e.ELOZOTANEVIREKORDID=s.C_EVFOLYAM AND e.TOROLT=''F'' AND e.C_ALTANEVID = @kovetkezoTanevId
|
||||
WHERE t.TOROLT=''F'' AND t.ID = @kovOratervId'
|
||||
END
|
||||
--PRINT @sql
|
||||
EXEC sp_executesql
|
||||
@sql,N'
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@oratervId int
|
||||
,@kovOratervId int'
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@aktTanevId = @aktTanevId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@oratervId = @oratervId
|
||||
,@kovOratervId = @kovOratervId
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,99 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpOratervTargy
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpOratervTargy
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@oratervTargyId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@kovOratervTargyId int
|
||||
,@kovTantargyId int=(
|
||||
SELECT tgyKov.ID FROM T_TANTARGY_OSSZES tgyKov
|
||||
INNER JOIN T_ORATERVTARGY_OSSZES ottgy ON ottgy.C_TANTARGYID=tgyKov.ELOZOTANEVIREKORDID AND ottgy.TOROLT='F'
|
||||
WHERE tgyKov.TOROLT='F' AND tgyKov.C_TANEVID=@kovetkezoTanevId AND ottgy.ID=@oratervTargyId)
|
||||
|
||||
,@kovOratervId int =(
|
||||
SELECT otKov.ID FROM T_ORATERV_OSSZES otKov
|
||||
INNER JOIN T_ORATERVTARGY_OSSZES ottgy ON ottgy.ID=@oratervTargyId AND otKov.ELOZOTANEVIREKORDID=ottgy.C_ORATERVID AND ottgy.TOROLT='F'
|
||||
WHERE otKov.C_TANEVID=@kovetkezoTanevId AND otKov.TOROLT='F')
|
||||
,@sql nvarchar(max)
|
||||
,@selectColList nvarchar(max)
|
||||
,@insertColList nvarchar(max)
|
||||
,@updateColList nvarchar(max)
|
||||
|
||||
CREATE TABLE #columnMapping(
|
||||
selectColName nvarchar(128)
|
||||
,insertColName nvarchar(128)
|
||||
,updateColName nvarchar(128)
|
||||
)
|
||||
|
||||
IF EXISTS(SELECT 1 FROM T_ORATERVTARGY_OSSZES WHERE TOROLT='F' AND C_TANEVID=@kovetkezoTanevId AND C_TANTARGYID=@kovTantargyId AND C_ORATERVID=@kovOratervId AND ISNULL(ELOZOTANEVIREKORDID,0)<>@oratervTargyId)
|
||||
BEGIN
|
||||
UPDATE T_ORATERVTARGY_OSSZES SET ELOZOTANEVIREKORDID = NULL WHERE ELOZOTANEVIREKORDID=@oratervTargyId
|
||||
UPDATE T_ORATERVTARGY_OSSZES SET ELOZOTANEVIREKORDID = @oratervTargyId WHERE TOROLT='F' AND C_TANEVID=@kovetkezoTanevId AND C_TANTARGYID=@kovTantargyId AND C_ORATERVID=@kovOratervId AND ISNULL(ELOZOTANEVIREKORDID,0)<>@oratervTargyId
|
||||
END
|
||||
|
||||
SELECT @kovOratervTargyId = ID FROM T_ORATERVTARGY_OSSZES WHERE ELOZOTANEVIREKORDID = @oratervTargyId
|
||||
|
||||
IF (SELECT TOROLT FROM T_ORATERV_OSSZES WHERE ID = @oratervTargyId) = 'T' OR (SELECT TOROLT FROM T_ORATERV_OSSZES WHERE ID = @kovOratervTargyId) = 'T' BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
INSERT INTO #columnMapping(
|
||||
selectColName
|
||||
,insertColName
|
||||
,updateColName
|
||||
) SELECT
|
||||
selectColName
|
||||
,insertColName
|
||||
,updateColName
|
||||
FROM fnGetFollowUpColumnMapping (NULL,'T_ORATERVTARGY')
|
||||
|
||||
IF (@kovOratervTargyId IS NULL)
|
||||
BEGIN
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMapping
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMapping
|
||||
|
||||
SET @sql = N'
|
||||
INSERT INTO T_ORATERVTARGY_OSSZES (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_ORATERVTARGY_OSSZES s
|
||||
INNER JOIN T_TANTARGY_OSSZES tgy ON tgy.ELOZOTANEVIREKORDID = s.C_TANTARGYID
|
||||
INNER JOIN T_ORATERV_OSSZES otKov ON otKov.ELOZOTANEVIREKORDID=s.C_ORATERVID AND otKov.TOROLT=''F''
|
||||
WHERE s.ID=@oratervTargyId'
|
||||
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMapping
|
||||
WHERE updateColname IS NOT NULL
|
||||
SET @sql = N'
|
||||
UPDATE t SET
|
||||
'+@updateColList+'
|
||||
FROM T_ORATERVTARGY_OSSZES t
|
||||
INNER JOIN T_ORATERVTARGY_OSSZES s ON s.ID = @oratervTargyId AND s.ID=t.ELOZOTANEVIREKORDID
|
||||
INNER JOIN T_TANTARGY_OSSZES tgy ON tgy.ELOZOTANEVIREKORDID=s.C_TANTARGYID AND tgy.TOROLT=''F'''
|
||||
END
|
||||
|
||||
--PRINT @sql
|
||||
EXEC sp_executesql
|
||||
@sql,N'
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@oratervTargyId int'
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@aktTanevId = @aktTanevId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@oratervTargyId = @oratervTargyId
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,89 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpTantargy
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpTantargy
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@tantargyId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@kovetkezoTantargyId int
|
||||
,@tantargyNev nvarchar(510)=(SELECT C_NEV FROM T_TANTARGY_OSSZES WHERE ID = @tantargyId)
|
||||
,@insertColList nvarchar(max)
|
||||
,@selectColList nvarchar(max)
|
||||
,@updateColList nvarchar(max)
|
||||
,@sql nvarchar(max)
|
||||
|
||||
CREATE TABLE #columnMapping (
|
||||
insertColName nvarchar(128) COLLATE DATABASE_DEFAULT
|
||||
,selectColName nvarchar(128)
|
||||
,updateColName nvarchar(128)
|
||||
)
|
||||
INSERT INTO #columnMapping (
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
) SELECT
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
FROM fnGetFollowUpColumnMapping (NULL,'T_TANTARGY')
|
||||
|
||||
IF EXISTS(SELECT 1 FROM T_TANTARGY_OSSZES WHERE C_TANEVID=@kovetkezoTanevId AND TOROLT='F' AND C_NEV=@tantargyNev AND ISNULL(ELOZOTANEVIREKORDID,0)<>@tantargyId) BEGIN
|
||||
UPDATE T_TANTARGY_OSSZES SET ELOZOTANEVIREKORDID = NULL WHERE ELOZOTANEVIREKORDID = @tantargyId
|
||||
UPDATE T_TANTARGY_OSSZES SET ELOZOTANEVIREKORDID = @tantargyId WHERE C_NEV = @tantargyNev AND TOROLT='F' AND C_TANEVID = @kovetkezoTanevId
|
||||
END
|
||||
|
||||
SELECT @kovetkezoTantargyId = ID FROM T_TANTARGY_OSSZES WHERE ELOZOTANEVIREKORDID = @tantargyId AND C_TANEVID=@kovetkezoTanevId
|
||||
|
||||
IF (SELECT TOROLT FROM T_TANTARGY_OSSZES WHERE ID = @tantargyId) = 'T' OR (SELECT TOROLT FROM T_TANTARGY_OSSZES WHERE ID = @kovetkezoTantargyId) = 'T' BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
IF (@kovetkezoTantargyId IS NULL) BEGIN
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMapping
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMapping
|
||||
SET @sql = N'
|
||||
INSERT INTO T_TANTARGY_OSSZES (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_TANTARGY_OSSZES s
|
||||
LEFT JOIN T_TANTARGY_OSSZES ftgy ON ftgy.ELOZOTANEVIREKORDID = s.C_FOTARGYID AND ftgy.TOROLT=''F'' AND ftgy.C_TANEVID = @kovetkezoTanevId
|
||||
INNER JOIN T_TARGYKATEGORIATIPUS_OSSZES tkt ON tkt.ELOZOTANEVIREKORDID=s.C_TARGYKATEGORIA AND tkt.TOROLT=''F'' AND tkt.C_ALTANEVID=@kovetkezoTanevId
|
||||
WHERE s.ID=@tantargyId'
|
||||
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMapping
|
||||
WHERE updateColname IS NOT NULL
|
||||
SET @sql = N'
|
||||
UPDATE t SET
|
||||
'+@updateColList+'
|
||||
FROM T_TANTARGY_OSSZES t
|
||||
INNER JOIN T_TANTARGY_OSSZES s ON s.ID = @tantargyId AND s.ID=t.ELOZOTANEVIREKORDID
|
||||
LEFT JOIN T_TANTARGY_OSSZES ftgy ON ftgy.ELOZOTANEVIREKORDID = s.C_FOTARGYID AND ftgy.TOROLT=''F'' AND ftgy.C_TANEVID = @kovetkezoTanevId
|
||||
INNER JOIN T_TARGYKATEGORIATIPUS_OSSZES tkt ON tkt.ELOZOTANEVIREKORDID=s.C_TARGYKATEGORIA AND tkt.TOROLT=''F'' AND tkt.C_ALTANEVID=@kovetkezoTanevId'
|
||||
END
|
||||
|
||||
--PRINT @sql
|
||||
EXEC sp_executesql
|
||||
@sql,N'
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@tantargyId int
|
||||
,@kovetkezoTantargyId int'
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@aktTanevId = @aktTanevId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@tantargyId = @tantargyId
|
||||
,@kovetkezoTantargyId = @kovetkezoTantargyId
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,98 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpTanterv
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpTanterv
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@tantervId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@kovTantervId int
|
||||
,@tantervNev nvarchar(510)=(SELECT C_NEV FROM T_TANTERV_OSSZES WHERE ID = @tantervId)
|
||||
,@insertColList nvarchar(max)
|
||||
,@selectColList nvarchar(max)
|
||||
,@updateColList nvarchar(max)
|
||||
,@sql nvarchar(max)
|
||||
|
||||
CREATE TABLE #columnMapping (
|
||||
insertColName nvarchar(128) COLLATE DATABASE_DEFAULT
|
||||
,selectColName nvarchar(128)
|
||||
,updateColName nvarchar(128)
|
||||
)
|
||||
INSERT INTO #columnMapping (
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
) SELECT
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
FROM fnGetFollowUpColumnMapping (NULL,'T_TANTERV')
|
||||
|
||||
IF EXISTS(SELECT 1 FROM T_TANTERV_OSSZES WHERE C_NEV=@tantervNev AND C_TANEVID=@kovetkezoTanevId AND TOROLT='F' AND ISNULL(ELOZOTANEVIREKORDID,0)<>@tantervId)
|
||||
BEGIN
|
||||
UPDATE T_TANTERV_OSSZES SET ELOZOTANEVIREKORDID=NULL WHERE ELOZOTANEVIREKORDID=@tantervId
|
||||
UPDATE T_TANTERV_OSSZES SET ELOZOTANEVIREKORDID=@tantervId WHERE C_NEV=@tantervNev AND C_TANEVID=@kovetkezoTanevId AND TOROLT='F' AND ISNULL(ELOZOTANEVIREKORDID,0)<>@tantervId
|
||||
END
|
||||
|
||||
SELECT @kovTantervId = ID FROM T_TANTERV_OSSZES WHERE ELOZOTANEVIREKORDID = @tantervId
|
||||
|
||||
IF (SELECT TOROLT FROM T_TANTERV_OSSZES WHERE ID = @tantervId) = 'T' OR (SELECT TOROLT FROM T_TANTERV_OSSZES WHERE ID = @kovTantervId) = 'T' BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
IF (@kovTantervId IS NULL)
|
||||
BEGIN
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMapping
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMapping
|
||||
IF (SELECT C_VEDETT FROM T_TANTERV_OSSZES WHERE ID = @tantervId) = 'T' BEGIN
|
||||
UPDATE T_TANTERV_OSSZES
|
||||
SET C_VEDETT = 'F'
|
||||
WHERE TOROLT='F' AND C_TANEVID = @kovetkezoTanevId
|
||||
END
|
||||
|
||||
SET @sql = N'
|
||||
INSERT INTO T_TANTERV_OSSZES (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_TANTERV_OSSZES s
|
||||
WHERE s.ID=@tantervId'
|
||||
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMapping
|
||||
WHERE updateColname IS NOT NULL
|
||||
|
||||
IF (SELECT C_VEDETT FROM T_TANTERV_OSSZES WHERE ID = @tantervId) = 'T' BEGIN
|
||||
UPDATE T_TANTERV_OSSZES
|
||||
SET C_VEDETT = 'F'
|
||||
WHERE TOROLT='F' AND C_TANEVID = @kovetkezoTanevId
|
||||
END
|
||||
SET @sql = N'
|
||||
UPDATE t SET
|
||||
'+@updateColList+'
|
||||
FROM T_TANTERV_OSSZES t
|
||||
INNER JOIN T_TANTERV_OSSZES s ON s.ID=@tantervId AND s.ID=t.ELOZOTANEVIREKORDID'
|
||||
END
|
||||
|
||||
--PRINT @sql
|
||||
EXEC sp_executesql
|
||||
@sql,N'
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@tantervId int'
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@aktTanevId = @aktTanevId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@tantervId = @tantervId
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,97 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpTanulo
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpTanulo
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@tanuloId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@kovTanuloId int
|
||||
,@updateColListT nvarchar(max)
|
||||
,@insertColListT nvarchar(max)
|
||||
,@updateColListFH nvarchar(max)
|
||||
,@insertColListFH nvarchar(max)
|
||||
,@sql nvarchar(max)
|
||||
|
||||
CREATE TABLE #ColumnMappings(
|
||||
insertColname nvarchar(128)
|
||||
,updateColName nvarchar(128)
|
||||
,tableName nvarchar(128)
|
||||
)
|
||||
INSERT INTO #ColumnMappings (
|
||||
insertColname
|
||||
,updateColName
|
||||
,tableName
|
||||
) SELECT
|
||||
insertColName
|
||||
,updateColName
|
||||
,'T_TANULO'
|
||||
FROM fnGetFollowUpColumnMapping ('C_NAPLOSORSZAM,C_TANULOEVFOLYAMTIPUS','T_TANULO')
|
||||
WHERE updateColName IS NOT NULL
|
||||
UNION ALL
|
||||
SELECT
|
||||
insertColName
|
||||
,updateColName
|
||||
,'T_FELHASZNALO'
|
||||
FROM fnGetFollowUpColumnMapping ('FTIP','T_FELHASZNALO')
|
||||
WHERE updateColName IS NOT NULL
|
||||
|
||||
SELECT @kovTanuloId = kov.ID
|
||||
FROM T_FELHASZNALO_OSSZES akt
|
||||
INNER JOIN T_FELHASZNALO_OSSZES kov ON akt.C_OKTATASIAZONOSITO = kov.C_OKTATASIAZONOSITO --Import miatt nem elég az ELOZOTANEVIREKORDID
|
||||
WHERE akt.ID = @tanuloId AND kov.C_TANEVID = @kovetkezoTanevId
|
||||
|
||||
IF @kovTanuloId IS NULL OR (SELECT TOROLT FROM T_FELHASZNALO_OSSZES WHERE ID = @tanuloId) = 'T' OR (SELECT TOROLT FROM T_FELHASZNALO_OSSZES WHERE ID = @kovTanuloId) = 'T' BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
SELECT
|
||||
@updateColListT = ISNULL(@updateColListt+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #ColumnMappings WHERE tableName = 'T_TANULO'
|
||||
SELECT
|
||||
@updateColListfh = ISNULL(@updateColListfh+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #ColumnMappings WHERE tableName = 'T_FELHASZNALO'
|
||||
|
||||
SET @sql = N'
|
||||
|
||||
UPDATE t SET
|
||||
'+@updateColListT+'
|
||||
FROM T_TANULO_OSSZES t
|
||||
INNER JOIN T_TANULO_OSSZES s ON t.ID = @kovTanuloId AND s.ID = @tanuloId
|
||||
LEFT JOIN T_TANTERV_OSSZES tr ON tr.ELOZOTANEVIREKORDID = s.C_TANTERVID AND tr.TOROLT=''F''
|
||||
|
||||
UPDATE t SET
|
||||
'+@updateColListFH+'
|
||||
FROM T_FELHASZNALO_OSSZES t
|
||||
INNER JOIN T_FELHASZNALO_OSSZES s ON s.C_OKTATASIAZONOSITO = t.C_OKTATASIAZONOSITO
|
||||
WHERE t.ID = @kovTanuloId
|
||||
AND s.ID = @tanuloId'
|
||||
|
||||
--PRINT @sql
|
||||
|
||||
EXEC sp_executesql
|
||||
@sql,N'
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@tanuloId int
|
||||
,@kovTanuloId int'
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@aktTanevId = @aktTanevId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@tanuloId = @tanuloId
|
||||
,@kovTanuloId = @kovTanuloId
|
||||
|
||||
|
||||
EXEC uspFollowUpFelhasznaloCim @intezmenyId, @aktTanevId, @kovetkezoTanevId, @tanuloId;
|
||||
EXEC uspFollowUpFelhasznaloEmail @intezmenyId, @aktTanevId, @kovetkezoTanevId, @tanuloId;
|
||||
EXEC uspFollowUpTanuloFelmentes @intezmenyId, @aktTanevId, @kovetkezoTanevId, @tanuloId;
|
||||
EXEC uspFollowUpFelhasznaloTelefon @intezmenyId, @aktTanevId, @kovetkezoTanevId, @tanuloId;
|
||||
|
||||
END
|
||||
GO
|
||||
|
@@ -0,0 +1,90 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpTanuloFelmentes
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpTanuloFelmentes
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@felmentesId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE @kovFelmentesId int = (SELECT ID FROM T_TANULOMENTESSEG_OSSZES WHERE ELOZOTANEVIREKORDID=@felmentesId AND TOROLT='F')
|
||||
DECLARE @elsoNap datetime = (select C_KEZDONAP from T_TANEV_OSSZES WHERE ID = @kovetkezoTanevId)
|
||||
DECLARE
|
||||
@selectColList nvarchar(max)
|
||||
,@insertColList nvarchar(max)
|
||||
,@updateColList nvarchar(max)
|
||||
,@sql nvarchar(max)
|
||||
|
||||
CREATE TABLE #ColumnMapping (
|
||||
selectColName nvarchar(128)
|
||||
,insertColName nvarchar(128)
|
||||
,updateColName nvarchar(128)
|
||||
)
|
||||
INSERT INTO #ColumnMapping (
|
||||
selectColName
|
||||
,insertColName
|
||||
,updateColName
|
||||
) SELECT
|
||||
selectColName
|
||||
,insertColName
|
||||
,updateColName
|
||||
FROM fnGetFollowUpColumnMapping (NULL,'T_TANULOMENTESSEG')
|
||||
|
||||
IF (SELECT TOROLT FROM T_TANULOMENTESSEG_OSSZES WHERE ID = @felmentesId)='T' BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
IF @kovFelmentesId IS NULL
|
||||
BEGIN
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMapping
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMapping
|
||||
SET @sql = N'
|
||||
INSERT INTO T_TANULOMENTESSEG_OSSZES (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_TANULOMENTESSEG_OSSZES s
|
||||
INNER JOIN T_FELHASZNALO_OSSZES t ON t.ID = s.C_TANULOID
|
||||
INNER JOIN T_FELHASZNALO_OSSZES tKov ON tKov.C_OKTATASIAZONOSITO = t.C_OKTATASIAZONOSITO AND tKov.C_TANEVID = @kovetkezoTanevId AND tKov.TOROLT=''F''
|
||||
INNER JOIN T_TANTARGY_OSSZES tgy ON tgy.ELOZOTANEVIREKORDID=s.C_TANTARGYID AND tgy.TOROLT=''F''
|
||||
WHERE s.ID=@felmentesId AND ISNULL(s.C_VEGE,''2200-01-01'')>@elsoNap'
|
||||
END
|
||||
ELSE BEGIN
|
||||
IF (SELECT C_VEGE FROM T_TANULOMENTESSEG_OSSZES WHERE ID = @felmentesId)<=@elsoNap BEGIN
|
||||
UPDATE T_TANULOMENTESSEG_OSSZES SET
|
||||
TOROLT='T'
|
||||
WHERE ELOZOTANEVIREKORDID=@felmentesId AND TOROLT='F'
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMapping WHERE updateColName IS NOT NULL
|
||||
END
|
||||
SET @sql = N'
|
||||
UPDATE t SET
|
||||
'+@updateColList+'
|
||||
FROM T_TANULOMENTESSEG_OSSZES t
|
||||
INNER JOIN T_TANULOMENTESSEG_OSSZES s ON s.ID=t.ELOZOTANEVIREKORDID AND s.TOROLT=''F'' AND s.ID=@felmentesId
|
||||
INNER JOIN T_TANTARGY_OSSZES tgy ON tgy.ELOZOTANEVIREKORDID=s.C_TANTARGYID AND tgy.TOROLT=''F'''
|
||||
END
|
||||
|
||||
--PRINT @sql
|
||||
exec sp_executesql
|
||||
@sql,N'
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@felmentesId int
|
||||
,@kovFelmentesId int
|
||||
,@elsoNap datetime'
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@aktTanevId = @aktTanevId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@felmentesId = @felmentesId
|
||||
,@kovFelmentesId = @kovFelmentesId
|
||||
,@elsoNap = @elsoNap
|
||||
|
||||
END
|
||||
GO
|
@@ -0,0 +1,93 @@
|
||||
DROP PROCEDURE IF EXISTS uspFollowUpTerem
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspFollowUpTerem
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@teremId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE
|
||||
@kovTeremId int
|
||||
,@teremNev nvarchar(200)=(SELECT C_NEV FROM T_TEREM_OSSZES WHERE ID = @teremId)
|
||||
,@insertColList nvarchar(max)
|
||||
,@selectColList nvarchar(max)
|
||||
,@updateColList nvarchar(max)
|
||||
,@sql nvarchar(max)
|
||||
|
||||
DECLARE @felelosId int = (
|
||||
SELECT fh.ID FROM T_FELHASZNALO_OSSZES fh
|
||||
INNER JOIN T_TEREM_OSSZES t ON t.C_TEREMFELELOSID=fh.ELOZOTANEVIREKORDID AND t.TOROLT='F' AND t.ID=@teremId
|
||||
WHERE fh.TOROLT='F')
|
||||
|
||||
CREATE TABLE #columnMapping (
|
||||
insertColName nvarchar(128) COLLATE DATABASE_DEFAULT
|
||||
,selectColName nvarchar(128)
|
||||
,updateColName nvarchar(128)
|
||||
)
|
||||
INSERT INTO #columnMapping (
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
) SELECT
|
||||
insertColName
|
||||
,selectColName
|
||||
,updateColName
|
||||
FROM fnGetFollowUpColumnMapping (NULL,'T_TEREM')
|
||||
|
||||
IF EXISTS(SELECT 1 FROM T_TEREM_OSSZES WHERE C_NEV=@teremNev AND C_TANEVID=@kovetkezoTanevId AND TOROLT='F' AND ISNULL(ELOZOTANEVIREKORDID,0)<>@teremId) BEGIN
|
||||
UPDATE T_TEREM_OSSZES SET ELOZOTANEVIREKORDID=NULL WHERE ELOZOTANEVIREKORDID=@teremId
|
||||
UPDATE T_TEREM_OSSZES SET ELOZOTANEVIREKORDID=@teremId WHERE C_NEV=@teremNev AND TOROLT='F' AND C_TANEVID=@kovetkezoTanevId
|
||||
END
|
||||
|
||||
SELECT @kovTeremId=ID FROM T_TEREM_OSSZES WHERE ELOZOTANEVIREKORDID = @teremId AND TOROLT='F' AND C_TANEVID=@kovetkezoTanevId
|
||||
IF (SELECT TOROLT FROM T_TEREM_OSSZES WHERE ID = @teremId) = 'T' OR (SELECT TOROLT FROM T_TEREM_OSSZES WHERE ID = @kovTeremId) = 'T'
|
||||
BEGIN
|
||||
RETURN
|
||||
END
|
||||
|
||||
IF (@kovTeremId IS NULL) BEGIN
|
||||
SELECT @insertColList = ISNULL(@insertColList+','+insertColname,insertColname) FROM #columnMapping
|
||||
SELECT @selectColList = ISNULL(@selectColList+','+selectColName,selectColName) FROM #columnMapping
|
||||
SET @sql = N'
|
||||
INSERT INTO T_TEREM_OSSZES (
|
||||
'+@insertColList+'
|
||||
) SELECT
|
||||
'+@selectColList+'
|
||||
FROM T_TEREM_OSSZES s
|
||||
INNER JOIN T_MUKODESIHELY_OSSZES mh ON mh.ELOZOTANEVIREKORDID=s.C_MUKODESIHELYID AND mh.TOROLT=''F''
|
||||
WHERE s.ID=@teremId AND s.TOROLT=''F'''
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT
|
||||
@updateColList = ISNULL(@updateColList+','+insertColName+' = '+updateColname,insertColName+' = '+updateColname)
|
||||
FROM #columnMapping
|
||||
WHERE updateColname IS NOT NULL
|
||||
|
||||
SET @sql = N'
|
||||
UPDATE t SET
|
||||
'+@updateColList+'
|
||||
FROM T_TEREM_OSSZES s
|
||||
INNER JOIN T_TEREM_OSSZES t ON t.ELOZOTANEVIREKORDID=s.ID AND t.TOROLT=''F''
|
||||
INNER JOIN T_MUKODESIHELY_OSSZES mh ON mh.ELOZOTANEVIREKORDID=s.C_MUKODESIHELYID AND mh.TOROLT=''F''
|
||||
WHERE s.ID=@teremId AND s.TOROLT=''F'''
|
||||
END
|
||||
|
||||
--PRINT @sql
|
||||
exec sp_executesql
|
||||
@sql,N'
|
||||
@intezmenyId int
|
||||
,@aktTanevId int
|
||||
,@kovetkezoTanevId int
|
||||
,@teremId int
|
||||
,@felelosId int'
|
||||
,@intezmenyId = @intezmenyId
|
||||
,@aktTanevId = @aktTanevId
|
||||
,@kovetkezoTanevId = @kovetkezoTanevId
|
||||
,@teremId = @teremId
|
||||
,@felelosId = @felelosId
|
||||
|
||||
END
|
||||
GO
|
Reference in New Issue
Block a user