43 lines
1.1 KiB
Transact-SQL
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
|