kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20170425134431_KRETA_963/sp_GetDokumentumTanuloEvesOraszamai.sql
2024-03-13 00:33:46 +01:00

43 lines
1.1 KiB
Transact-SQL

GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('sp_GetDokumentumTanuloEvesOraszamai') IS NOT NULL BEGIN
DROP PROCEDURE [sp_GetDokumentumTanuloEvesOraszamai]
END
GO
CREATE PROCEDURE sp_GetDokumentumTanuloEvesOraszamai
@osztalyId int
AS
BEGIN
SET NOCOUNT ON;
DECLARE @students TABLE (ID INT, NaploSorszam INT, Rendez INT)
INSERT INTO @students
SELECT DISTINCT
C_TANULOID
, C_BEIRASINAPLOSORSZAM
, IIF(MONTH(C_BELEPESDATUM) BETWEEN 9 AND 10, 1, 2)
FROM T_TANULOCSOPORT_OSSZES tcs
INNER JOIN T_TANULO_OSSZES t on t.id=tcs.C_TANULOID
WHERE C_OSZTALYCSOPORTID = @osztalyId
AND tcs.TOROLT = 'F'
AND (C_KILEPESDATUM IS NULL OR C_KILEPESDATUM > GETDATE())
AND C_BELEPESDATUM < GETDATE()
DECLARE @max INT = (SELECT MAX(NaploSorszam) FROM @students)
DECLARE @tanuloSorszam TABLE (Tanulo INT, Sorszam INT)
INSERT INTO @tanuloSorszam
SELECT
s.ID
, ISNULL(NaploSorszam, @max + ROW_NUMBER() OVER (ORDER BY Rendez, C_NYOMTATASINEV))
FROM @students s
INNER JOIN T_FELHASZNALO_OSSZES f ON f.ID=s.ID
GROUP BY s.Id, NaploSorszam, C_NYOMTATASINEV, Rendez
END