-- ================================================ -- Template generated from Template Explorer using: -- Create Procedure (New Menu).SQL -- -- Use the Specify Values for Template Parameters -- command (Ctrl-Shift-M) to fill in the parameter -- values below. -- -- This block of comments will not be included in -- the definition of the procedure. -- ================================================ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: Sólyom Péter -- Create date: 2016.04.25. -- Description: Az átadott xmlből (tanárok nevei) megvizsgálja hogy létezik ilyen nevű tanár a rendszerben és a név alapján egyértelmű (duplikált) vagy születési dátum alapján szűrt. -- ============================================= CREATE PROCEDURE sp_GetHianyzoDuplikaltTanarok -- Add the parameters for the stored procedure here @TanarNevekXML as XML, @FeladatellatasiHelyId AS int AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; DECLARE @TEMPTANAROK TABLE ( TANARNEV NVARCHAR(255), SZULETESIDATUM DATE ) INSERT INTO @TEMPTANAROK SELECT DISTINCT TanarNev = Tanar.value('(TanarNev)[1]', 'NVARCHAR(255)'), SzuletesiDatum = Tanar.value('(SzuletesiDatum)[1]', 'DATE') FROM @TanarNevekXML.nodes('/ArrayOfTanarNevekExcelModel/TanarNevekExcelModel') as Tanarok(Tanar) SELECT TANAROK.TANARNEV, TANAROK.SZULETESIDATUM, COUNT(FELH.ID) TANAROKSZAMA FROM @TEMPTANAROK TANAROK LEFT JOIN (select * from T_FELHASZNALO where TOROLT = 'F') FELH ON ( RTRIM(LTRIM(TANAROK.TANARNEV)) = FELH.C_NYOMTATASINEV AND NOT EXISTS (SELECT 1 FROM T_Tanulo t where t.ID=FELH.ID ) AND (TANAROK.SZULETESIDATUM IS NULL OR TANAROK.SZULETESIDATUM = FELH.C_SZULETESIDATUM AND EXISTS ( SELECT 1 FROM T_MUNKAUGYIADATOK tm WHERE TM.C_ALKALMAZOTTID = FELH.ID AND TM.TOROLT='F' AND TM.C_FELADATELLATASIHELYID = @FeladatellatasiHelyId) AND FELH.TOROLT = 'F')) GROUP BY TANAROK.TANARNEV, TANAROK.SZULETESIDATUM HAVING (COUNT(FELH.ID) != 1) ORDER BY TANAROK.TANARNEV, TANAROK.SZULETESIDATUM END GO