70 lines
3.7 KiB
Transact-SQL
70 lines
3.7 KiB
Transact-SQL
DROP PROCEDURE IF EXISTS uspGetUjSzktSzakmajegyzekOsszerendelesData
|
|
GO
|
|
|
|
CREATE PROCEDURE uspGetUjSzktSzakmajegyzekOsszerendelesData
|
|
@pTanevId int
|
|
,@pIdsJson nvarchar(max) = NULL
|
|
AS
|
|
BEGIN
|
|
|
|
SET NOCOUNT ON;
|
|
|
|
DECLARE
|
|
@SzakmaTipusNa int = 7946
|
|
,@SzakmairanyTipusNa int = 8122
|
|
|
|
SELECT
|
|
szor.ID AS Id
|
|
,szor.C_OKTATASINEVELESIFELADATID AS OktatasiNevelesiFeladatId
|
|
,szor.C_AGAZATUJSZKTTIPUSID AS AgazatUjSzktTipusId
|
|
,aut.C_AGAZATIBESOROLAS AS AgazatiBesorolas
|
|
,szor.C_SZAKMATIPUSID AS SzakmaTipusId
|
|
,szt.C_SZAKKEPESITESAZONOSITOSZAM AS SzakkepesitesAzonositoszam
|
|
,szor.C_SZAKMAIRANYTIPUSID AS SzakmaIranyTipusId
|
|
,ISNULL(oszt.JelenlegKepzettTanulokSzama, 0) AS JelenlegKepzettTanulokSzama
|
|
,szor.C_KEPZESREFOGADHATOTANULOKSZAM AS KepzesreFogadhatoTanulokSzama
|
|
,szor.C_FILEID AS FileId
|
|
,fl.C_FILENEV AS FileNev
|
|
,fl.C_EXTENSION AS FileExtension
|
|
,fl.C_FELTOLTESDATUM AS FeltoltesDatum
|
|
,szor.C_ESZKOZALLOMANYAVULTSAGA AS EszkozallomanyAvultsaga
|
|
,szor.C_ESZKOZOKDARABSZAMA AS EszkozokDarabszama
|
|
,szor.C_EGYEBESZKOZALLOMANYINFORMACI AS EgyebEszkozallomanyInformacio
|
|
,szor.C_TANMUHELYEKSZAMA AS TanmuhelyekSzama
|
|
FROM T_UJSZKTSZAKMAJEGYZEKOSSZEREND_OSSZES szor
|
|
INNER JOIN T_AGAZATUJSZKTTIPUS_OSSZES aut ON aut.ID = szor.C_AGAZATUJSZKTTIPUSID AND aut.C_ALTANEVID = szor.C_TANEVID AND aut.TOROLT = 'F'
|
|
INNER JOIN T_SZAKMATIPUS_OSSZES szt ON szt.ID = szor.C_SZAKMATIPUSID AND szt.C_ALTANEVID = szor.C_TANEVID AND szt.TOROLT = 'F'
|
|
LEFT JOIN T_FILE fl ON fl.ID = szor.C_FILEID AND fl.C_TANEVID = szor.C_TANEVID AND fl.TOROLT = 'F'
|
|
LEFT JOIN (
|
|
SELECT
|
|
tta.C_TANEVID
|
|
,feh.C_OKTATASINEVELESIFELADATTIPUS
|
|
,tta.C_AGAZATUJSZKTTIPUSID
|
|
,tta.C_SZAKMATIPUSID
|
|
,tta.C_SZAKMAIRANYTIPUSID
|
|
,COUNT(*) AS JelenlegKepzettTanulokSzama
|
|
FROM T_TANULOTANUGYIADATOK_OSSZES tta
|
|
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.ID = tta.C_TANULOCSOPORTID AND tcs.C_TANEVID = tta.C_TANEVID AND tcs.TOROLT = 'F'
|
|
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = tcs.C_OSZTALYCSOPORTID AND ocs.C_TANEVID = tta.C_TANEVID AND ocs.TOROLT = 'F'
|
|
INNER JOIN T_FELADATELLATASIHELY_OSSZES feh ON feh.ID = ocs.C_FELADATELLATASIHELYID AND feh.C_TANEVID = tta.C_TANEVID AND feh.TOROLT = 'F'
|
|
WHERE tta.TOROLT = 'F'
|
|
AND tcs.C_BELEPESDATUM <= GETDATE()
|
|
AND (tcs.C_KILEPESDATUM > GETDATE() OR tcs.C_KILEPESDATUM IS NULL)
|
|
GROUP BY tta.C_TANEVID, feh.C_OKTATASINEVELESIFELADATTIPUS, tta.C_AGAZATUJSZKTTIPUSID, tta.C_SZAKMATIPUSID,tta.C_SZAKMAIRANYTIPUSID) AS oszt ON
|
|
oszt.C_TANEVID = szor.C_TANEVID
|
|
AND oszt.C_OKTATASINEVELESIFELADATTIPUS = szor.C_OKTATASINEVELESIFELADATID
|
|
AND oszt.C_AGAZATUJSZKTTIPUSID = szor.C_AGAZATUJSZKTTIPUSID
|
|
AND (oszt.C_SZAKMATIPUSID = szor.C_SZAKMATIPUSID OR -- True-nak kell lennie, ha megyeznek vagy,...
|
|
(oszt.C_SZAKMATIPUSID IS NULL AND szor.C_SZAKMATIPUSID IS NULL) OR -- ha mindkettő NULL vagy,...
|
|
(oszt.C_SZAKMATIPUSID = @SzakmaTipusNa AND szor.C_SZAKMATIPUSID IS NULL)) -- ha tanuló értéke Na és az UjSzktSzakmajegyzekOsszerendeles-nél NULL!
|
|
AND (oszt.C_SZAKMAIRANYTIPUSID = szor.C_SZAKMAIRANYTIPUSID OR -- True-nak kell lennie, ha megyeznek vagy,...
|
|
(oszt.C_SZAKMAIRANYTIPUSID IS NULL AND szor.C_SZAKMAIRANYTIPUSID IS NULL) OR -- ha mindkettő NULL vagy,...
|
|
(oszt.C_SZAKMAIRANYTIPUSID = @SzakmairanyTipusNa AND szor.C_SZAKMAIRANYTIPUSID IS NULL)) -- ha tanuló értéke Na és az UjSzktSzakmajegyzekOsszerendeles-nél NULL!
|
|
WHERE szor.C_TANEVID = @pTanevId
|
|
AND szor.TOROLT = 'F'
|
|
AND (@pIdsJson IS NULL OR szor.ID IN (SELECT list.Id FROM OPENJSON(@pIdsJson) WITH (id INT 'strict $.Id') AS list))
|
|
|
|
END
|
|
|
|
GO
|
|
|