kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20190523115705_DB_602/sp_FollowUpEszkoz.sql
2024-03-13 00:33:46 +01:00

144 lines
4.5 KiB
Transact-SQL

DROP PROCEDURE IF EXISTS sp_FollowUpEszkoz
GO
CREATE PROCEDURE sp_FollowUpEszkoz
@intezmenyId int,
@aktTanevId int,
@kovetkezoTanevId int,
@eszkozId int
AS
BEGIN
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)
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 (@kovEszkozId IS NULL AND NOT EXISTS(SELECT 1 FROM T_ESZKOZ_OSSZES WHERE C_NEV=@eszkozNev AND C_TANEVID=@kovetkezoTanevId AND TOROLT='F'))
BEGIN
INSERT INTO T_ESZKOZ_OSSZES (
C_BERELT
,C_BESZERZESDATUM
,C_BESZERZESIAR
,C_CELJA
,C_DARABSZAM
,C_FELELOSID
,C_FOKONYVISZAM
,C_GYARISZAM
,C_GYARTASIEV
,C_HALOZATIKAPCSOLAT
,C_HORDOZHATO
,C_INTERNETKAPCSOLAT
,C_INTEZMENYID
,C_JELLEGE
,C_KATEGORIA
,C_LELTARISZAM
,C_MEGJEGYZES
,C_MENNYISEGIEGYSEG
,C_MULTIMEDIAS
,C_NEMMUKODIK
,C_NEV
,C_PEDAGOGUSHOZZAFERHET
,C_SZALLITO
,C_TANEVID
,C_TANULOHOZZAFERHET
,C_TARTOZEK
,C_TARTOZEKHIVATKOZAS
,C_TEREMID
,C_TIPUS
,C_VONALKOD
,C_PROJEKT
,SERIAL
,LASTCHANGED
,CREATED
,MODIFIER
,CREATOR
,ELOZOTANEVIREKORDID
) SELECT
C_BERELT AS C_BERELT
,C_BESZERZESDATUM AS C_BESZERZESDATUM
,C_BESZERZESIAR AS C_BESZERZESIAR
,t.C_CELJA AS C_CELJA
,C_DARABSZAM AS C_DARABSZAM
,(SELECT ID FROM T_FELHASZNALO_OSSZES WHERE ELOZOTANEVIREKORDID = t.C_FELELOSID AND TOROLT = 'F') AS C_FELELOSID
,C_FOKONYVISZAM AS C_FOKONYVISZAM
,C_GYARISZAM AS C_GYARISZAM
,C_GYARTASIEV AS C_GYARTASIEV
,C_HALOZATIKAPCSOLAT AS C_HALOZATIKAPCSOLAT
,C_HORDOZHATO AS C_HORDOZHATO
,C_INTERNETKAPCSOLAT AS C_INTERNETKAPCSOLAT
,@intezmenyID AS C_INTEZMENYID
,t.C_JELLEGE AS C_JELLEGE
,t.C_KATEGORIA AS C_KATEGORIA
,C_LELTARISZAM AS C_LELTARISZAM
,C_MEGJEGYZES AS C_MEGJEGYZES
,C_MENNYISEGIEGYSEG AS C_MENNYISEGIEGYSEG
,C_MULTIMEDIAS AS C_MULTIMEDIAS
,C_NEMMUKODIK AS C_NEMMUKODIK
,t.C_NEV AS C_NEV
,C_PEDAGOGUSHOZZAFERHET AS C_PEDAGOGUSHOZZAFERHET
,C_SZALLITO AS C_SZALLITO
,@kovetkezoTanevId AS C_TANEVID
,C_TANULOHOZZAFERHET AS C_TANULOHOZZAFERHET
,C_TARTOZEK AS C_TARTOZEK
,C_TARTOZEKHIVATKOZAS AS C_TARTOZEKHIVATKOZAS
,te.ID
,t.C_TIPUS AS C_TIPUS
,C_VONALKOD AS C_VONALKOD
,C_PROJEKT
,0 AS SERIAL
,t.LASTCHANGED AS LASTCHANGED
,t.LASTCHANGED AS CREATED
,t.MODIFIER AS MODIFIER
,t.MODIFIER AS CREATOR
,t.ID AS ELOZOTANEVIREKORDID
FROM T_ESZKOZ_OSSZES t
INNER JOIN T_TEREM_OSSZES te ON te.ELOZOTANEVIREKORDID=t.C_TEREMID AND te.TOROLT='F'
WHERE t.ID=@EszkozId
END
ELSE
BEGIN
UPDATE kovetkezo SET
kovetkezo.C_BERELT = aktiv.C_BERELT
,kovetkezo.C_BESZERZESDATUM = aktiv.C_BESZERZESDATUM
,kovetkezo.C_BESZERZESIAR = aktiv.C_BESZERZESIAR
,kovetkezo.C_CELJA = aktiv.C_CELJA
,kovetkezo.C_DARABSZAM = aktiv.C_DARABSZAM
,kovetkezo.C_FELELOSID = (SELECT ID FROM T_FELHASZNALO_OSSZES WHERE ELOZOTANEVIREKORDID = aktiv.C_FELELOSID AND C_TANEVID = @kovetkezoTanevId AND TOROLT = 'F')
,kovetkezo.C_FOKONYVISZAM = aktiv.C_FOKONYVISZAM
,kovetkezo.C_GYARISZAM = aktiv.C_GYARISZAM
,kovetkezo.C_GYARTASIEV = aktiv.C_GYARTASIEV
,kovetkezo.C_HALOZATIKAPCSOLAT = aktiv.C_HALOZATIKAPCSOLAT
,kovetkezo.C_HORDOZHATO = aktiv.C_HORDOZHATO
,kovetkezo.C_INTERNETKAPCSOLAT = aktiv.C_INTERNETKAPCSOLAT
,kovetkezo.C_JELLEGE = aktiv.C_JELLEGE
,kovetkezo.C_KATEGORIA = aktiv.C_KATEGORIA
,kovetkezo.C_LELTARISZAM = aktiv.C_LELTARISZAM
,kovetkezo.C_MEGJEGYZES = aktiv.C_MEGJEGYZES
,kovetkezo.C_MENNYISEGIEGYSEG = aktiv.C_MENNYISEGIEGYSEG
,kovetkezo.C_MULTIMEDIAS = aktiv.C_MULTIMEDIAS
,kovetkezo.C_NEMMUKODIK = aktiv.C_NEMMUKODIK
,kovetkezo.C_NEV = aktiv.C_NEV
,kovetkezo.C_PROJEKT = aktiv.C_PROJEKT
,kovetkezo.C_PEDAGOGUSHOZZAFERHET = aktiv.C_PEDAGOGUSHOZZAFERHET
,kovetkezo.C_SZALLITO = aktiv.C_SZALLITO
,kovetkezo.C_TANULOHOZZAFERHET = aktiv.C_TANULOHOZZAFERHET
,kovetkezo.C_TARTOZEK = aktiv.C_TARTOZEK
,kovetkezo.C_TARTOZEKHIVATKOZAS = aktiv.C_TARTOZEKHIVATKOZAS
,kovetkezo.C_TEREMID = t.ID
,kovetkezo.C_TIPUS = aktiv.C_TIPUS
,kovetkezo.C_VONALKOD = aktiv.C_VONALKOD
,kovetkezo.SERIAL += 1
,kovetkezo.MODIFIER = aktiv.MODIFIER
,kovetkezo.LASTCHANGED = aktiv.LASTCHANGED
FROM T_ESZKOZ_OSSZES kovetkezo
INNER JOIN T_ESZKOZ_OSSZES aktiv ON aktiv.ID = @eszkozId AND aktiv.ID=kovetkezo.ELOZOTANEVIREKORDID
INNER JOIN T_TEREM_OSSZES t ON t.ELOZOTANEVIREKORDID=aktiv.C_TEREMID AND t.TOROLT='F'
END
END
GO