kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20170327110702_Init/Stored procedures/sp_GetBizonyitvanyPotlap.sql
2024-03-13 00:33:46 +01:00

96 lines
3.3 KiB
Transact-SQL

-- ================================================
-- 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: Zsiga Attila
-- Create date: 2016.04.05.
-- Description: Bizonyítvány pótlap.
-- =============================================
CREATE PROCEDURE sp_GetBizonyitvanyPotlap
@TanevId int,
@OsztalyCsoportId int
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Intezmeny
SELECT
C_NEV IntezmenyNev,
C_IRANYITOSZAM Iranyitoszam,
C_VAROS Varos,
C_CIME Cim,
C_OMKOD OMKod
FROM
T_INTEZMENYADATOK_OSSZES
WHERE
T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
AND T_INTEZMENYADATOK_OSSZES.C_TANEVID = @TanevId
-- Osztaly
SELECT
C_NEV OsztalyNev
FROM
T_OSZTALYCSOPORT_OSSZES
WHERE
T_OSZTALYCSOPORT_OSSZES.TOROLT = 'F'
AND T_OSZTALYCSOPORT_OSSZES.ID = @OsztalyCsoportId
AND T_OSZTALYCSOPORT_OSSZES.C_TANEVID = @TanevId
-- Tanev
SELECT
C_NEV Tanev,
(CAST(GETDATE() AS DATE)) MaiDatum
FROM
T_TANEV_OSSZES OsztalyNev
WHERE
TOROLT = 'F' AND ID = @TanevId
-- Osztalyfonok
SELECT
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV OsztalyfonokNev
FROM
(SELECT * FROM T_OSZTALYCSOPORT_OSSZES WHERE T_OSZTALYCSOPORT_OSSZES.TOROLT = 'F'
AND T_OSZTALYCSOPORT_OSSZES.ID = @OsztalyCsoportId
AND T_OSZTALYCSOPORT_OSSZES.C_TANEVID = @TanevId) AS T_OSZTALYCSOPORT_OSSZES
INNER JOIN T_OSZTALY_OSSZES ON T_OSZTALY_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.ID AND T_OSZTALY_OSSZES.TOROLT = 'F'
INNER JOIN T_FELHASZNALO_OSSZES ON T_FELHASZNALO_OSSZES.ID = T_OSZTALY_OSSZES.C_OSZTALYFONOKID AND T_FELHASZNALO_OSSZES.TOROLT = 'F'
-- Tanulok
SELECT
ROW_NUMBER() OVER(ORDER BY _FELHASZNALO.C_NYOMTATASINEV) TorzslapSzam,
_FELHASZNALO.C_NYOMTATASINEV TanuloNeve,
_FELHASZNALO.C_OKTATASIAZONOSITO TanuloAzonosito,
(SELECT COUNT(*) FROM T_TANULOMULASZTAS_OSSZES WHERE TOROLT = 'F' AND C_ORATANULOIID = _TANULO.ID) MulasztottOrakSzama,
(SELECT COUNT(*) FROM T_TANULOMULASZTAS_OSSZES WHERE TOROLT = 'F' AND C_ORATANULOIID = _TANULO.ID AND C_IGAZOLT = 'T') Igazolt,
(SELECT COUNT(*) FROM T_TANULOMULASZTAS_OSSZES WHERE TOROLT = 'F' AND C_ORATANULOIID = _TANULO.ID AND C_IGAZOLT = 'F') Igazolatlan
FROM
(SELECT * FROM T_TANULOCSOPORT_OSSZES WHERE T_TANULOCSOPORT_OSSZES.TOROLT = 'F'
AND T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID = @OsztalyCsoportId
AND T_TANULOCSOPORT_OSSZES.C_TANEVID = @TanevId
AND T_TANULOCSOPORT_OSSZES.C_BELEPESDATUM < GETDATE()
AND (T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM IS NULL OR T_TANULOCSOPORT_OSSZES.C_KILEPESDATUM >= GETDATE())) _TANULOCSOPORT
INNER JOIN (SELECT * FROM T_TANULO_OSSZES WHERE T_TANULO_OSSZES.TOROLT = 'F') _TANULO ON _TANULO.ID = _TANULOCSOPORT.C_TANULOID
INNER JOIN (SELECT * FROM T_FELHASZNALO_OSSZES WHERE T_FELHASZNALO_OSSZES.TOROLT = 'F' AND C_TANEVID = @TanevId ) _FELHASZNALO ON _FELHASZNALO.ID = _TANULO.ID
GROUP BY
_FELHASZNALO.C_NYOMTATASINEV,
_FELHASZNALO.C_OKTATASIAZONOSITO,
_TANULO.ID
ORDER BY
TorzslapSzam
END
GO