﻿DROP PROCEDURE IF EXISTS uspFollowUpFelhasznaloCim
GO

CREATE PROCEDURE uspFollowUpFelhasznaloCim
  @intezmenyId int,
  @aktTanevId int,
  @kovTanevId int,
  @felhasznaloId int
AS
BEGIN

  DECLARE @kovTanuloId int;
  
  SELECT @kovTanuloId = 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 @kovTanuloId IS NOT NULL BEGIN
    DELETE FROM T_CIM_OSSZES
    WHERE C_FELHASZNALOID = @kovTanuloId
      AND C_GONDVISELOID IS NULL
      AND C_INTEZMENYID = @intezmenyId
      AND C_TANEVID = @kovTanevId;

    INSERT INTO T_CIM_OSSZES (
       C_CIMTIPUSA
      ,C_ORSZAG
      ,C_IRANYITOSZAM
      ,C_VAROS
      ,C_MEGYE
      ,C_KOZTERULET
      ,C_KOZTERULETJELLEGE
      ,C_HAZSZAM
      ,C_EPULET
      ,C_LEPCSOHAZ
      ,C_EMELET
      ,C_AJTO
      ,C_OSSZETETTCIM
      ,C_ALAPERTELMEZETT
      ,C_FELHASZNALOID
      ,C_GONDVISELOID
      ,C_INTEZMENYID
      ,C_TANEVID
      ,TOROLT
      ,SERIAL
      ,LASTCHANGED
      ,CREATED
      ,MODIFIER
      ,CREATOR
      ,NNID
      ,GID
      ,ELOZOTANEVIREKORDID
    ) SELECT
       C_CIMTIPUSA
      ,C_ORSZAG
      ,C_IRANYITOSZAM
      ,C_VAROS
      ,C_MEGYE
      ,C_KOZTERULET
      ,C_KOZTERULETJELLEGE
      ,C_HAZSZAM
      ,C_EPULET
      ,C_LEPCSOHAZ
      ,C_EMELET
      ,C_AJTO
      ,C_OSSZETETTCIM
      ,C_ALAPERTELMEZETT
      ,@kovTanuloId
      ,C_GONDVISELOID
      ,C_INTEZMENYID
      ,@kovTanevId
      ,TOROLT
      ,0
      ,GETDATE()
      ,GETDATE()
      ,MODIFIER
      ,MODIFIER
      ,NULL
      ,GID
      ,ID
    FROM T_CIM_OSSZES
    WHERE C_FELHASZNALOID = @felhasznaloId
      AND C_GONDVISELOID IS NULL
      AND C_INTEZMENYID = @intezmenyId
      AND C_TANEVID = @aktTanevId
      AND TOROLT = 'F';
  END
END
GO
