DROP PROCEDURE IF EXISTS uspFollowUpGondviselo GO CREATE PROCEDURE uspFollowUpGondviselo @intezmenyId int, @tanevId int, @kovTanevId int, @gondviseloId int AS BEGIN DECLARE @kovGondviseloID int = (SELECT ID FROM T_GONDVISELO_OSSZES WHERE ELOZOTANEVIREKORDID=@gondviseloId) 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 IF @kovGondviseloID IS NULL BEGIN INSERT INTO T_GONDVISELO_OSSZES( C_AKTIV ,C_GONDVISELESKEZDETE ,C_GONDVISELESVEGE ,C_GYERMEKETEGYEDULNEVELO ,C_NEV ,C_NYUGDIJAS ,C_ROKONSAGFOKA ,C_ISEMAILERTESITES ,C_ISTORVENYESKEPVISELO ,C_ISCSOKKENTETTGONDVISELO ,C_TANULOID ,C_INTEZMENYID ,C_TANEVID ,SERIAL ,LASTCHANGED ,CREATED ,MODIFIER ,CREATOR ,ELOZOTANEVIREKORDID ) SELECT g.C_AKTIV ,g.C_GONDVISELESKEZDETE ,g.C_GONDVISELESVEGE ,g.C_GYERMEKETEGYEDULNEVELO ,g.C_NEV ,g.C_NYUGDIJAS ,g.C_ROKONSAGFOKA ,g.C_ISEMAILERTESITES ,g.C_ISTORVENYESKEPVISELO ,g.C_ISCSOKKENTETTGONDVISELO ,fhNew.ID ,g.C_INTEZMENYID ,fhNew.C_TANEVID ,0 ,GETDATE() ,GETDATE() ,NULL ,NULL ,g.ID FROM T_GONDVISELO_OSSZES g INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ID = g.C_TANULOID INNER JOIN T_FELHASZNALO_OSSZES fhNew ON fhNew.C_OKTATASIAZONOSITO = fh.C_OKTATASIAZONOSITO AND fhNew.TOROLT='F' AND fhNew.C_TANEVID = @kovTanevId WHERE g.ID = @gondviseloId INSERT INTO T_FELHASZNALOBELEPES_OSSZES ( C_KOTELEZOVALTOZTATNI ,C_MEGHIUSULTBELEPESEK ,C_UTOLSOBELEPES ,C_JELSZO ,C_JELSZOVALTOZTATASIDEJE ,C_SO ,C_BEJELENTKEZESINEV ,C_NEPTUNNAPLOJELSZO ,C_GUID ,C_ELFOGADOTTGDPRNYILATKOZAT ,C_GDPRELFOGADASDATUMA ,C_IMPORTALT ,C_FELHASZNALOID ,C_GONDVISELOID ,C_INTEZMENYID ,C_TANEVID ,TOROLT ,SERIAL ,LASTCHANGED ,CREATED ,MODIFIER ,CREATOR ,ELOZOTANEVIREKORDID) SELECT C_KOTELEZOVALTOZTATNI ,C_MEGHIUSULTBELEPESEK ,C_UTOLSOBELEPES ,C_JELSZO ,C_JELSZOVALTOZTATASIDEJE ,C_SO ,C_BEJELENTKEZESINEV ,C_NEPTUNNAPLOJELSZO ,C_GUID ,C_ELFOGADOTTGDPRNYILATKOZAT ,C_GDPRELFOGADASDATUMA ,'F' ,gKov.C_TANULOID ,gKov.ID ,gKov.C_INTEZMENYID ,@kovTanevId ,'F' ,0 ,GETDATE() ,GETDATE() ,NULL ,NULL ,fhb.ID FROM T_FELHASZNALOBELEPES_OSSZES fhb INNER JOIN T_GONDVISELO_OSSZES gKov ON gKov.ELOZOTANEVIREKORDID=fhb.C_GONDVISELOID WHERE fhb.C_GONDVISELOID=@gondviseloId AND fhb.TOROLT='F' END ELSE BEGIN UPDATE gKov SET C_AKTIV = gOld.C_AKTIV ,C_GONDVISELESKEZDETE = gOld.C_GONDVISELESKEZDETE ,C_GONDVISELESVEGE = gOld.C_GONDVISELESVEGE ,C_GYERMEKETEGYEDULNEVELO = gOld.C_GYERMEKETEGYEDULNEVELO ,C_NEV = gOld.C_NEV ,C_NYUGDIJAS = gOld.C_NYUGDIJAS ,C_ROKONSAGFOKA = gOld.C_ROKONSAGFOKA ,C_ISEMAILERTESITES = gOld.C_ISEMAILERTESITES ,C_ISTORVENYESKEPVISELO = gOld.C_ISTORVENYESKEPVISELO ,C_ISCSOKKENTETTGONDVISELO = gOld.C_ISCSOKKENTETTGONDVISELO ,SERIAL += 1 ,LASTCHANGED = GETDATE() ,MODIFIER = gOld.MODIFIER FROM T_GONDVISELO_OSSZES gOld INNER JOIN T_GONDVISELO_OSSZES gKov ON gKov.ELOZOTANEVIREKORDID=gOld.ID AND gOld.ID=@gondviseloId UPDATE kov SET C_JELSZO = akt.C_JELSZO ,C_JELSZOVALTOZTATASIDEJE = GETDATE() ,C_BEJELENTKEZESINEV = akt.C_BEJELENTKEZESINEV ,SERIAL += 1 ,LASTCHANGED = GETDATE() ,MODIFIER = akt.MODIFIER FROM T_FELHASZNALOBELEPES_OSSZES akt INNER JOIN T_FELHASZNALOBELEPES_OSSZES kov ON kov.ELOZOTANEVIREKORDID=akt.ID AND kov.TOROLT='F' WHERE akt.TOROLT='F' AND akt.C_GONDVISELOID=@gondviseloId END 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, @kovTanevId, @cimId FETCH NEXT FROM cimCursor INTO @cimId END CLOSE cimCursor DEALLOCATE cimCursor INSERT INTO T_TELEFON_OSSZES ( C_TELEFONTIPUSA ,C_TELEFONSZAM ,C_LEIRAS ,C_ALAPERTELMEZETT ,C_ISPUBLIC ,C_GONDVISELOID ,C_FELHASZNALOID ,C_INTEZMENYID ,C_TANEVID ,TOROLT ,SERIAL ,LASTCHANGED ,CREATED ,MODIFIER ,CREATOR ,ELOZOTANEVIREKORDID) SELECT C_TELEFONTIPUSA ,C_TELEFONSZAM ,C_LEIRAS ,C_ALAPERTELMEZETT ,C_ISPUBLIC ,gKov.ID ,gKov.C_TANULOID ,gKov.C_INTEZMENYID ,@kovTanevId ,'F' ,0 ,GETDATE() ,GETDATE() ,NULL ,NULL ,t.ID FROM T_GONDVISELO_OSSZES g INNER JOIN T_GONDVISELO_OSSZES gKov ON gKov.ELOZOTANEVIREKORDID=g.ID INNER JOIN T_TELEFON_OSSZES t ON t.C_GONDVISELOID=g.ID AND t.TOROLT='F' WHERE g.ID=@gondviseloId AND NOT EXISTS(SELECT 1 FROM T_TELEFON_OSSZES WHERE ELOZOTANEVIREKORDID=t.ID AND TOROLT='F') INSERT INTO T_EMAIL_OSSZES ( C_EMAILTIPUSA ,C_EMAILCIM ,C_ALAPERTELMEZETT ,C_ISPUBLIC ,C_GONDVISELOID ,C_FELHASZNALOID ,C_INTEZMENYID ,C_TANEVID ,TOROLT ,SERIAL ,LASTCHANGED ,CREATED ,MODIFIER ,CREATOR ,ELOZOTANEVIREKORDID) SELECT C_EMAILTIPUSA ,C_EMAILCIM ,C_ALAPERTELMEZETT ,C_ISPUBLIC ,gKov.ID ,gKov.C_TANULOID ,gKov.C_INTEZMENYID ,@kovTanevId ,'F' ,0 ,GETDATE() ,GETDATE() ,NULL ,NULL ,e.ID FROM T_GONDVISELO_OSSZES g INNER JOIN T_GONDVISELO_OSSZES gKov ON gKov.ELOZOTANEVIREKORDID=g.ID INNER JOIN T_EMAIL_OSSZES e ON e.C_GONDVISELOID=g.ID AND e.TOROLT='F' WHERE g.ID=@gondviseloId AND NOT EXISTS(SELECT 1 FROM T_EMAIL_OSSZES WHERE ELOZOTANEVIREKORDID=e.ID AND TOROLT='F') UPDATE kov SET C_TELEFONTIPUSA = akt.C_TELEFONTIPUSA ,C_TELEFONSZAM = akt.C_TELEFONSZAM ,C_LEIRAS = akt.C_LEIRAS ,C_ALAPERTELMEZETT = akt.C_ALAPERTELMEZETT ,C_ISPUBLIC = akt.C_ISPUBLIC ,SERIAL += 1 ,LASTCHANGED = GETDATE() ,MODIFIER = akt.MODIFIER FROM T_TELEFON_OSSZES akt INNER JOIN T_TELEFON_OSSZES kov ON kov.ELOZOTANEVIREKORDID=akt.ID AND kov.TOROLT='F' WHERE akt.TOROLT='F' AND akt.C_GONDVISELOID=@gondviseloId UPDATE kov SET C_EMAILTIPUSA = akt.C_EMAILTIPUSA ,C_EMAILCIM = akt.C_EMAILCIM ,C_ALAPERTELMEZETT = akt.C_ALAPERTELMEZETT ,C_ISPUBLIC = akt.C_ISPUBLIC ,SERIAL += 1 ,LASTCHANGED = GETDATE() ,MODIFIER = akt.MODIFIER FROM T_EMAIL_OSSZES akt INNER JOIN T_EMAIL_OSSZES kov ON kov.ELOZOTANEVIREKORDID=akt.ID AND kov.TOROLT='F' WHERE akt.TOROLT='F' AND akt.C_GONDVISELOID=@gondviseloId END GO