kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20180912142018_KRETA_6705/sp_GetDokumentumHelyettesitesekByDateInterval.sql
2024-03-13 00:33:46 +01:00

60 lines
No EOL
2.2 KiB
Transact-SQL

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
IF OBJECT_ID('sp_GetDokumentumHelyettesitesekByDateInterval') IS NOT NULL BEGIN
DROP PROCEDURE sp_GetDokumentumHelyettesitesekByDateInterval
END
GO
CREATE PROCEDURE sp_GetDokumentumHelyettesitesekByDateInterval
@tanevId INT,
@helyettesitesListaFormatumId INT = 0, --0 helyettesitett, 1 helyettesito
@idoszakKezdete DATE,
@idoszakVege DATE
AS
BEGIN
SET NOCOUNT ON;
SELECT
helyettesito.ID HelyettesitoId
,helyettesito.C_NYOMTATASINEV HelyettesitoNeve
,helyettesitesett.C_NYOMTATASINEV HelyettesitettNeve
,helyettesitesett.ID HelyettesitettId
,dbo.fnGetDokumentumDatumFormatum(hi.C_HELYETTESITESNAPJA) HetNapja
,ocs.C_NEV OsztalyCsoportNev
,tantargy.C_NEV TantargyNev
,terem.C_NEV TeremNev
,ISNULL(CONVERT(NVARCHAR(5), orarendiOra.C_ORASZAM) + '.', '')Oraszam
INTO #adatok
FROM T_HELYETTESITESIIDOSZAK_OSSZES hi
LEFT JOIN T_ORARENDIORA_OSSZES orarendiOra ON orarendiOra.Id = hi.C_HELYETTESITETTORARENDID AND orarendiOra.TOROLT = 'F'
LEFT JOIN T_FELHASZNALO_OSSZES helyettesito ON helyettesito.Id = hi.C_HELYETTESTANAROKID AND helyettesito.TOROLT = 'F'
LEFT JOIN T_FELHASZNALO_OSSZES helyettesitesett ON helyettesitesett.ID = orarendiOra.C_TANARID AND helyettesitesett.TOROLT = 'F'
LEFT JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.Id = orarendiOra.C_OSZTALYCSOPORTID AND ocs.TOROLT = 'F'
LEFT JOIN T_TANTARGY_OSSZES tantargy ON tantargy.Id = orarendiOra.C_TANTARGYID AND tantargy.TOROLT = 'F'
LEFT JOIN T_TEREM_OSSZES terem ON terem.Id = orarendiOra.C_TEREMID AND terem.TOROLT = 'F'
WHERE
hi.TOROLT = 'F'
AND hi.C_TANEVID = @tanevId
AND hi.C_HELYETTESITESNAPJA BETWEEN @idoszakKezdete AND @idoszakVege
ORDER BY dbo.fnGetDokumentumDatumFormatum(hi.C_HELYETTESITESNAPJA), orarendiOra.C_ORASZAM
SELECT DISTINCT HetNapja FROM #adatok
IF @helyettesitesListaFormatumId = 0
BEGIN
SELECT DISTINCT HelyettesitettId PedagogusId, HelyettesitettNeve PedagogusNev, HetNapja FROM #adatok ORDER BY HelyettesitettNeve
SELECT * FROM #adatok ORDER BY HetNapja, Oraszam
END
ELSE
BEGIN
SELECT DISTINCT HelyettesitoId PedagogusId, HelyettesitoNeve PedagogusNev, HetNapja FROM #adatok ORDER BY HelyettesitoNeve
SELECT * FROM #adatok ORDER BY HetNapja, Oraszam
END
END
GO