DROP PROCEDURE IF EXISTS sp_FollowUpTantargy GO CREATE PROCEDURE sp_FollowUpTantargy @intezmenyId int, @aktTanevId int, @kovetkezoTanevId int, @tantargyId int AS BEGIN DECLARE @kovetkezoTantargyId int = (SELECT TOP 1 ID FROM T_TANTARGY_OSSZES WHERE ELOZOTANEVIREKORDID = @tantargyId) 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 INSERT INTO T_TANTARGY_OSSZES ( C_GYAKORLATI ,C_NEV ,C_ROVIDNEV ,C_TARGYKATEGORIA ,C_TANORANKIVULI ,C_IMPORTALT ,C_FOTARGYE ,C_ALTANTARGYKENTNYOMTATVANYBAN ,C_NEVNYOMTATVANYBAN ,C_FOTARGYID ,C_ANGOLNEV ,C_NEMETNEV ,C_FONTOSSAG ,C_INTEZMENYID ,C_TANEVID ,SERIAL ,LASTCHANGED ,CREATED ,MODIFIER ,CREATOR ,ELOZOTANEVIREKORDID ) SELECT C_GYAKORLATI AS C_GYAKORLATI ,C_NEV AS C_NEV ,C_ROVIDNEV AS C_ROVIDNEV ,t.C_TARGYKATEGORIA AS C_TARGYKATEGORIA ,C_TANORANKIVULI AS C_TANORANKIVULI ,C_IMPORTALT AS C_IMPORTALT ,C_FOTARGYE AS C_FOTARGYE ,C_ALTANTARGYKENTNYOMTATVANYBAN AS C_ALTANTARGYKENTNYOMTATVANYBAN ,C_NEVNYOMTATVANYBAN AS C_NEVNYOMTATVANYBAN ,(SELECT ID FROM T_TANTARGY_OSSZES WHERE ELOZOTANEVIREKORDID = t.C_FOTARGYID) AS C_FOTARGYID ,C_ANGOLNEV ,C_NEMETNEV ,C_FONTOSSAG ,@intezmenyID AS C_INTEZMENYID ,@kovetkezoTanevId AS C_TANEVID ,0 AS SERIAL ,LASTCHANGED AS LASTCHANGED ,LASTCHANGED AS CREATED ,MODIFIER AS MODIFIER ,MODIFIER AS CREATOR ,t.ID AS ELOZOTANEVIREKORDID FROM T_TANTARGY_OSSZES t WHERE t.ID=@tantargyId END ELSE BEGIN UPDATE kovetkezo SET kovetkezo.C_GYAKORLATI = aktiv.C_GYAKORLATI ,kovetkezo.C_NEV = aktiv.C_NEV ,kovetkezo.C_ROVIDNEV = aktiv.C_ROVIDNEV ,kovetkezo.C_TARGYKATEGORIA = aktiv.C_TARGYKATEGORIA ,kovetkezo.C_TANORANKIVULI = aktiv.C_TANORANKIVULI ,kovetkezo.C_IMPORTALT = aktiv.C_IMPORTALT ,kovetkezo.C_FOTARGYE = aktiv.C_FOTARGYE ,kovetkezo.C_ALTANTARGYKENTNYOMTATVANYBAN = aktiv.C_ALTANTARGYKENTNYOMTATVANYBAN ,kovetkezo.C_NEVNYOMTATVANYBAN = aktiv.C_NEVNYOMTATVANYBAN ,kovetkezo.C_FOTARGYID = (SELECT ID FROM T_TANTARGY_OSSZES WHERE ELOZOTANEVIREKORDID = aktiv.C_FOTARGYID) ,kovetkezo.C_ANGOLNEV = aktiv.C_ANGOLNEV ,kovetkezo.C_NEMETNEV = aktiv.C_NEMETNEV ,kovetkezo.C_FONTOSSAG = aktiv.C_FONTOSSAG ,kovetkezo.MODIFIER = aktiv.MODIFIER ,kovetkezo.SERIAL += 1 ,kovetkezo.LASTCHANGED = aktiv.MODIFIER FROM T_TANTARGY_OSSZES kovetkezo INNER JOIN T_TANTARGY_OSSZES aktiv ON aktiv.ID = @tantargyId AND aktiv.ID=kovetkezo.ELOZOTANEVIREKORDID END END GO