init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,9 @@
|
|||
fnGetDokumentumOsztalyokCsoportokTanuloi.sql
|
||||
fnGetTanoraiCeluCsoportTipusok.sql
|
||||
fnGetDokumentumOsztalyVagyTanoraiCsoport.sql
|
||||
fnGetDokumentumTanulokOsztalybanToltottNapjai.sql
|
||||
fnGetKapcsolodoOsztalycsoportok.sql
|
||||
fnGetDokumentumKapcsolodoOsztalycsoportok.sql
|
||||
fnGetDokumentumOrakezdetToOraszam.sql
|
||||
fnGetDokumentumTanulokEvesOraszamaiOsztalyonkent.sql
|
||||
fnGetDokumentumErtekelesekOsztalyonkent.sql
|
|
@ -0,0 +1,22 @@
|
|||
IF OBJECT_ID('[fnConvertStringIntListToTable]') IS NOT NULL BEGIN
|
||||
DROP FUNCTION [fnConvertStringIntListToTable]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE FUNCTION [fnConvertStringIntListToTable] (
|
||||
@pString NVARCHAR(4000),
|
||||
@pDelimiter NCHAR(1)
|
||||
) RETURNS TABLE AS RETURN (
|
||||
WITH Split(stpos, endpos) AS (
|
||||
SELECT 0 AS stpos, CHARINDEX(@pDelimiter,@pString) AS endpos
|
||||
UNION ALL
|
||||
SELECT endpos + 1, CHARINDEX(@pDelimiter,@pString,endpos+1)
|
||||
FROM Split
|
||||
WHERE endpos > 0
|
||||
)
|
||||
SELECT
|
||||
ROW_NUMBER() OVER (ORDER BY (SELECT 1)) AS Rn
|
||||
,CAST(SUBSTRING(@pString, stpos, COALESCE(NULLIF(endpos, 0), LEN(@pString) + 1) - stpos) AS int) AS Data
|
||||
FROM Split
|
||||
);
|
||||
GO
|
|
@ -0,0 +1,14 @@
|
|||
IF OBJECT_ID('[fnConvertXmlIntListToTable]') IS NOT NULL BEGIN
|
||||
DROP FUNCTION [fnConvertXmlIntListToTable]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE FUNCTION [fnConvertXmlIntListToTable](
|
||||
@pXml xml
|
||||
,@pRootName varchar(100)
|
||||
,@pNodeName varchar(100)
|
||||
) RETURNS TABLE AS RETURN (
|
||||
SELECT ROW_NUMBER() OVER (ORDER BY (SELECT 1)) Rn, t.value('.','int') AS Data
|
||||
FROM @pXml.nodes('/*[local-name()=sql:variable("@pRootName")]/*[local-name()=sql:variable("@pNodeName")]') AS x(t)
|
||||
);
|
||||
GO
|
|
@ -0,0 +1,204 @@
|
|||
DROP FUNCTION IF EXISTS dbo.fnGetBankszamlaVezetoBank;
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetBankszamlaVezetoBank (@bankszamlaszam NVARCHAR(25))
|
||||
RETURNS NVARCHAR(MAX)
|
||||
BEGIN
|
||||
DECLARE @Nev NVARCHAR(MAX)
|
||||
SELECT @Nev =
|
||||
CASE SUBSTRING(@bankszamlaszam, 1, 3)
|
||||
WHEN '807' THEN 'Általános Közlekedési Hitelszövetkezet'
|
||||
WHEN '187' THEN 'Banco Primus Fióktelep, Magyarország'
|
||||
WHEN '175' THEN 'Bank of China (CEE) Zrt.'
|
||||
WHEN '197' THEN 'Bank of China (CEE) Zrt.'
|
||||
WHEN '179' THEN 'Bank Plus Bank Zrt.'
|
||||
WHEN '131' THEN 'BNP Paribas Hungária Bank Zrt.'
|
||||
WHEN '178' THEN 'BNP Paribas Magyarországi Fióktelepe'
|
||||
WHEN '183' THEN 'BNP Paribas Magyarországi Fióktelepe'
|
||||
WHEN '186' THEN 'BNP Paribas Securities Services'
|
||||
WHEN '194' THEN 'BORGUN hf.'
|
||||
WHEN '136' THEN 'CaLyon Bank Magyarország Zrt.'
|
||||
WHEN '185' THEN 'CaLyon S.A. Magyarország Bankfióktelep'
|
||||
WHEN '107' THEN 'CIB Bank Zrt. (CIB Közép-Európai Nemzetközi Bank Zrt.)'
|
||||
WHEN '111' THEN 'CIB Bank Zrt. (Inter-Európa Bank Zrt.)'
|
||||
WHEN '108' THEN 'Citibank (Citibank Europe)'
|
||||
WHEN '196' THEN 'CLS Bank International'
|
||||
WHEN '180' THEN 'Cofidis Magyarországi Fióktelep'
|
||||
WHEN '142' THEN 'Commerzbank Zrt.'
|
||||
WHEN '172' THEN 'Credigen Bank Zrt.'
|
||||
WHEN '163' THEN 'Deutsche Bank AG Zrt.'
|
||||
WHEN '177' THEN 'Dresdner Bank AG Magyarországi Fióktelepe'
|
||||
WHEN '586' THEN 'DUNA Takarék Bank Zrt.'
|
||||
WHEN '199' THEN 'eCOMM Merchant Solutions Ltd.'
|
||||
WHEN '125' THEN 'Erste Bank Zrt.'
|
||||
WHEN '119' THEN 'Erste Bank Zrt.'
|
||||
WHEN '116' THEN 'Erste Bank Zrt.'
|
||||
WHEN '193' THEN 'Euronet 360 Finance Limited'
|
||||
WHEN '148' THEN 'Eximbank Zrt.'
|
||||
WHEN '883' THEN 'Fundamenta Lakáskassza Lakástakarékpénztár Zrt.'
|
||||
WHEN '882' THEN 'Fundamenta Lakáskassza Lakástakarékpénztár Zrt.'
|
||||
WHEN '880' THEN 'Fundamenta Lakáskassza Lakástakarékpénztár Zrt.'
|
||||
WHEN '121' THEN 'Gránit Bank Zrt.'
|
||||
WHEN '147' THEN 'IC Bank Zrt.'
|
||||
WHEN '118' THEN 'iCard AD'
|
||||
WHEN '137' THEN 'ING Bank Magyarország Zrt.'
|
||||
WHEN '135' THEN 'KDB Bank Európa Zrt.'
|
||||
WHEN '888' THEN 'K&H Jelzálogbank Zrt.'
|
||||
WHEN '102' THEN 'K&H Bank Zrt. (Kereskedelmi és Hitelbank Zrt.)'
|
||||
WHEN '104' THEN 'K&H Bank Zrt. (Kereskedelmi és Hitelbank Zrt.)'
|
||||
WHEN '144' THEN 'KELER Zrt. (Központi Elszámolóház és Értéktár Zrt.)'
|
||||
WHEN '296' THEN 'Libra Internet Bank S.A.'
|
||||
WHEN '162' THEN 'MagNet Bank Zrt.'
|
||||
WHEN '146' THEN 'Magyar Fejlesztési Bank Zrt.'
|
||||
WHEN '100' THEN 'Magyar Államkincstár'
|
||||
WHEN '167' THEN 'Magyar Cetelem Bank Zrt.'
|
||||
WHEN '190' THEN 'Magyar Nemzeti Bank'
|
||||
WHEN '115' THEN 'Magyar Takarékszövetkezeti Bank Zrt.'
|
||||
WHEN '500' THEN 'Magyar Takarékszövetkezeti Bank Zrt.'
|
||||
WHEN '128' THEN 'Merkantil Bank Zrt.'
|
||||
WHEN '101' THEN 'MKB Bank Nyrt. (Budapest Bank Zrt.)'
|
||||
WHEN '103' THEN 'MKB Bank Nyrt. (Magyar Külkereskedelmi Bank)'
|
||||
WHEN '114' THEN 'NHB Növekedési Hitel Bank Zrt.'
|
||||
WHEN '184' THEN 'Oberbank AG Magyarországi Fióktelepe'
|
||||
WHEN '222' THEN 'Országos Fizetési Szolgáltató Zrt.'
|
||||
WHEN '117' THEN 'OTP Bank Nyrt.'
|
||||
WHEN '170' THEN 'OTP Bank Nyrt.'
|
||||
WHEN '884' THEN 'OTP Jelzálogbank Zrt.'
|
||||
WHEN '881' THEN 'OTP Lakástakarékpénztár Zrt.'
|
||||
WHEN '200' THEN 'OTP Pénztárszolgáltató Zrt.'
|
||||
WHEN '151' THEN 'Paystrax UAB'
|
||||
WHEN '612' THEN 'Polgári Bank Zrt.'
|
||||
WHEN '160' THEN 'Porsche Bank Hungária Zrt.'
|
||||
WHEN '903' THEN 'Postai Elszámoló Központ'
|
||||
WHEN '120' THEN 'Raiffeisen Bank Zrt.'
|
||||
WHEN '506' THEN 'Siklós és Vidéke Takarékszövetkezet, Siklós'
|
||||
WHEN '527' THEN 'Soltvadkert és Vidéke Takarékszövetkezet, Soltvadkert'
|
||||
WHEN '176' THEN 'Sopron Bank Zrt.'
|
||||
WHEN '808' THEN 'Széchenyi István Hitelszövetkezet'
|
||||
WHEN '168' THEN 'Takarék Jelzálogbank Nyrt.'
|
||||
WHEN '501' THEN 'Takarékbank Zrt.'
|
||||
WHEN '504' THEN 'Takarékbank Zrt.'
|
||||
WHEN '507' THEN 'Takarékbank Zrt.'
|
||||
WHEN '508' THEN 'Takarékbank Zrt.'
|
||||
WHEN '510' THEN 'Takarékbank Zrt.'
|
||||
WHEN '511' THEN 'Takarékbank Zrt.'
|
||||
WHEN '512' THEN 'Takarékbank Zrt.'
|
||||
WHEN '514' THEN 'Takarékbank Zrt.'
|
||||
WHEN '515' THEN 'Takarékbank Zrt.'
|
||||
WHEN '517' THEN 'Takarékbank Zrt.'
|
||||
WHEN '519' THEN 'Takarékbank Zrt.'
|
||||
WHEN '520' THEN 'Takarékbank Zrt.'
|
||||
WHEN '523' THEN 'Takarékbank Zrt.'
|
||||
WHEN '525' THEN 'Takarékbank Zrt.'
|
||||
WHEN '526' THEN 'Takarékbank Zrt.'
|
||||
WHEN '528' THEN 'Takarékbank Zrt.'
|
||||
WHEN '531' THEN 'Takarékbank Zrt.'
|
||||
WHEN '532' THEN 'Takarékbank Zrt.'
|
||||
WHEN '533' THEN 'Takarékbank Zrt.'
|
||||
WHEN '535' THEN 'Takarékbank Zrt.'
|
||||
WHEN '536' THEN 'Takarékbank Zrt.'
|
||||
WHEN '537' THEN 'Takarékbank Zrt.'
|
||||
WHEN '540' THEN 'Takarékbank Zrt.'
|
||||
WHEN '542' THEN 'Takarékbank Zrt.'
|
||||
WHEN '543' THEN 'Takarékbank Zrt.'
|
||||
WHEN '545' THEN 'Takarékbank Zrt.'
|
||||
WHEN '546' THEN 'Takarékbank Zrt.'
|
||||
WHEN '551' THEN 'Takarékbank Zrt.'
|
||||
WHEN '554' THEN 'Takarékbank Zrt.'
|
||||
WHEN '556' THEN 'Takarékbank Zrt.'
|
||||
WHEN '558' THEN 'Takarékbank Zrt.'
|
||||
WHEN '568' THEN 'Takarékbank Zrt.'
|
||||
WHEN '569' THEN 'Takarékbank Zrt.'
|
||||
WHEN '571' THEN 'Takarékbank Zrt.'
|
||||
WHEN '574' THEN 'Takarékbank Zrt.'
|
||||
WHEN '576' THEN 'Takarékbank Zrt.'
|
||||
WHEN '577' THEN 'Takarékbank Zrt.'
|
||||
WHEN '578' THEN 'Takarékbank Zrt.'
|
||||
WHEN '581' THEN 'Takarékbank Zrt.'
|
||||
WHEN '589' THEN 'Takarékbank Zrt.'
|
||||
WHEN '590' THEN 'Takarékbank Zrt.'
|
||||
WHEN '591' THEN 'Takarékbank Zrt.'
|
||||
WHEN '592' THEN 'Takarékbank Zrt.'
|
||||
WHEN '593' THEN 'Takarékbank Zrt.'
|
||||
WHEN '595' THEN 'Takarékbank Zrt.'
|
||||
WHEN '596' THEN 'Takarékbank Zrt.'
|
||||
WHEN '598' THEN 'Takarékbank Zrt.'
|
||||
WHEN '599' THEN 'Takarékbank Zrt.'
|
||||
WHEN '606' THEN 'Takarékbank Zrt.'
|
||||
WHEN '614' THEN 'Takarékbank Zrt.'
|
||||
WHEN '616' THEN 'Takarékbank Zrt.'
|
||||
WHEN '620' THEN 'Takarékbank Zrt.'
|
||||
WHEN '621' THEN 'Takarékbank Zrt.'
|
||||
WHEN '623' THEN 'Takarékbank Zrt.'
|
||||
WHEN '626' THEN 'Takarékbank Zrt.'
|
||||
WHEN '627' THEN 'Takarékbank Zrt.'
|
||||
WHEN '628' THEN 'Takarékbank Zrt.'
|
||||
WHEN '629' THEN 'Takarékbank Zrt.'
|
||||
WHEN '632' THEN 'Takarékbank Zrt.'
|
||||
WHEN '633' THEN 'Takarékbank Zrt.'
|
||||
WHEN '636' THEN 'Takarékbank Zrt.'
|
||||
WHEN '638' THEN 'Takarékbank Zrt.'
|
||||
WHEN '640' THEN 'Takarékbank Zrt.'
|
||||
WHEN '647' THEN 'Takarékbank Zrt.'
|
||||
WHEN '648' THEN 'Takarékbank Zrt.'
|
||||
WHEN '651' THEN 'Takarékbank Zrt.'
|
||||
WHEN '660' THEN 'Takarékbank Zrt.'
|
||||
WHEN '669' THEN 'Takarékbank Zrt.'
|
||||
WHEN '670' THEN 'Takarékbank Zrt.'
|
||||
WHEN '676' THEN 'Takarékbank Zrt.'
|
||||
WHEN '678' THEN 'Takarékbank Zrt.'
|
||||
WHEN '679' THEN 'Takarékbank Zrt.'
|
||||
WHEN '680' THEN 'Takarékbank Zrt.'
|
||||
WHEN '682' THEN 'Takarékbank Zrt.'
|
||||
WHEN '685' THEN 'Takarékbank Zrt.'
|
||||
WHEN '687' THEN 'Takarékbank Zrt.'
|
||||
WHEN '688' THEN 'Takarékbank Zrt.'
|
||||
WHEN '693' THEN 'Takarékbank Zrt.'
|
||||
WHEN '694' THEN 'Takarékbank Zrt.'
|
||||
WHEN '695' THEN 'Takarékbank Zrt.'
|
||||
WHEN '698' THEN 'Takarékbank Zrt.'
|
||||
WHEN '701' THEN 'Takarékbank Zrt.'
|
||||
WHEN '703' THEN 'Takarékbank Zrt.'
|
||||
WHEN '704' THEN 'Takarékbank Zrt.'
|
||||
WHEN '705' THEN 'Takarékbank Zrt.'
|
||||
WHEN '706' THEN 'Takarékbank Zrt.'
|
||||
WHEN '709' THEN 'Takarékbank Zrt.'
|
||||
WHEN '718' THEN 'Takarékbank Zrt.'
|
||||
WHEN '719' THEN 'Takarékbank Zrt.'
|
||||
WHEN '721' THEN 'Takarékbank Zrt.'
|
||||
WHEN '726' THEN 'Takarékbank Zrt.'
|
||||
WHEN '727' THEN 'Takarékbank Zrt.'
|
||||
WHEN '728' THEN 'Takarékbank Zrt.'
|
||||
WHEN '729' THEN 'Takarékbank Zrt.'
|
||||
WHEN '732' THEN 'Takarékbank Zrt.'
|
||||
WHEN '736' THEN 'Takarékbank Zrt.'
|
||||
WHEN '739' THEN 'Takarékbank Zrt.'
|
||||
WHEN '740' THEN 'Takarékbank Zrt.'
|
||||
WHEN '745' THEN 'Takarékbank Zrt.'
|
||||
WHEN '750' THEN 'Takarékbank Zrt.'
|
||||
WHEN '755' THEN 'Takarékbank Zrt.'
|
||||
WHEN '757' THEN 'Takarékbank Zrt.'
|
||||
WHEN '806' THEN 'Takarékbank Zrt.'
|
||||
WHEN '181' THEN 'Takarékbank Zrt. (Allianz Bank Zrt.)'
|
||||
WHEN '644' THEN 'Takarékbank Zrt. (Alsónémedi és Vidéke Takarékszövetkezet)'
|
||||
WHEN '182' THEN 'Takarékbank Zrt. (FHB Kereskedelmi Bank Zrt.)'
|
||||
WHEN '619' THEN 'Takarékbank Zrt. (Füzesabony és Vidéke Takarékszövetkezet)'
|
||||
WHEN '603' THEN 'Takarékbank Zrt. (Hajdúdorog és Vidéke Takarékszövetkezet)'
|
||||
WHEN '503' THEN 'Takarékbank Zrt. (Mecsek-Vidéke Takarékszövetkezet)'
|
||||
WHEN '652' THEN 'Takarékbank Zrt. (Nagykáta és Vidéke Takarékszövetkezet)'
|
||||
WHEN '655' THEN 'Takarékbank Zrt. (Örkényi Takarékszövetkezet)'
|
||||
WHEN '657' THEN 'Takarékbank Zrt. (Pilisvörösvár és Vidéke Takarékszövetkezet)'
|
||||
WHEN '539' THEN 'Takarékbank Zrt. (Szarvas és Vidéke Takarékszövetkezet)'
|
||||
WHEN '572' THEN 'Takarékbank Zrt. (Szegvár és Vidéke Takarékszövetkezet)'
|
||||
WHEN '803' THEN 'Takarékbank Zrt. (Tiszántúli Első Hitelszövetkezet)'
|
||||
WHEN '659' THEN 'Takarékbank Zrt. (Turai Takarékszövetkezet)'
|
||||
WHEN '700' THEN 'Tiszaföldvár és Vidéke Takarékszövetkezet, Tiszaföldvár'
|
||||
WHEN '126' THEN 'TransferWise Europe SA'
|
||||
WHEN '109' THEN 'UniCredit Bank Hungary Zrt.'
|
||||
WHEN '171' THEN 'UniCredit Jelzálogbank Zrt.'
|
||||
WHEN '192' THEN 'WIRECARD Bank AG'
|
||||
END
|
||||
RETURN @Nev
|
||||
END
|
||||
|
||||
GO
|
|
@ -0,0 +1,20 @@
|
|||
IF OBJECT_ID('dbo.fnGetDokumentumDatumFormatum') IS NOT NULL BEGIN
|
||||
DROP FUNCTION dbo.fnGetDokumentumDatumFormatum
|
||||
END
|
||||
GO
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE FUNCTION dbo.fnGetDokumentumDatumFormatum (@datum DATE)
|
||||
RETURNS NVARCHAR(MAX)
|
||||
BEGIN
|
||||
DECLARE @value NVARCHAR(MAX)
|
||||
|
||||
SELECT @value =
|
||||
FORMAT(@datum, 'yyyy.MM.dd.')
|
||||
|
||||
RETURN @value
|
||||
END;
|
|
@ -0,0 +1,150 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
DROP FUNCTION IF EXISTS fnGetDokumentumErtekelesekMuveszetiOktatasbanOsztalyonkent
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumErtekelesekMuveszetiOktatasbanOsztalyonkent (
|
||||
@tanevId int
|
||||
,@osztalyCsoportId int
|
||||
,@ertekelesTipusa int = NULL
|
||||
,@csakTanorai bit = 1
|
||||
,@csakKivlasztottOsztalyCsoport bit = 0
|
||||
,@atsoroltTanuloErtekelesek int = 0
|
||||
,@osztalyzatTipusTypeID int = 44
|
||||
,@magatartasErtekelesTipusTypeID int = 50
|
||||
,@szorgalomErtekelesTipusTypeID int = 51
|
||||
)
|
||||
RETURNS @retTanuloErtekeles TABLE
|
||||
(
|
||||
ErtekelesId INT NOT NULL,
|
||||
Datum DATE,
|
||||
TipusId INT,
|
||||
ErtekelesSzoveg NVARCHAR(MAX),
|
||||
ErtekelesSzovegFormazott NVARCHAR(MAX),
|
||||
ErtekelesSzovegRovidNev NVARCHAR(3),
|
||||
ErtekelesOsztalyzatId INT,
|
||||
ErtekelesOsztalyzatValue INT,
|
||||
ErtekelesOsztalyzatNev NVARCHAR(MAX),
|
||||
ErtekelesSzazalek NVARCHAR(MAX),
|
||||
MagatartasOsztalyzatId INT,
|
||||
MagatartasOsztalyzatValue INT,
|
||||
MagatartasOsztalyzatNev NVARCHAR(MAX),
|
||||
MagatartasSzoveg NVARCHAR(MAX),
|
||||
MagatartasSzovegFormazott NVARCHAR(MAX),
|
||||
MagatartasSzovegRovidNev NVARCHAR(3),
|
||||
MagatartasErtekId INT,
|
||||
MagatartasErtek NVARCHAR(MAX),
|
||||
MagatartasErtekOsztalyzatkent INT,
|
||||
SzorgalomOsztalyzatId INT,
|
||||
SzorgalomOsztalyzatValue INT,
|
||||
SzorgalomOsztalyzatNev NVARCHAR(MAX),
|
||||
SzorgalomSzoveg NVARCHAR(MAX),
|
||||
SzorgalomSzovegFormazott NVARCHAR(MAX),
|
||||
SzorgalomSzovegRovidNev NVARCHAR(3),
|
||||
SzorgalomErtekId INT,
|
||||
SzorgalomErtek NVARCHAR(MAX),
|
||||
SzorgalomErtekOsztalyzatkent INT,
|
||||
TanuloId INT,
|
||||
OsztalyCsoportId INT,
|
||||
TantargyId INT,
|
||||
TantargyNevZarojellel NVARCHAR(MAX),
|
||||
TantargyNevNyomtatvanyban NVARCHAR(MAX),
|
||||
TantargyNev NVARCHAR(MAX),
|
||||
TantargyAngolNev NVARCHAR(MAX),
|
||||
TantargyNemetNev NVARCHAR(MAX),
|
||||
TargyKategoriaId INT,
|
||||
FotargyE CHAR(1),
|
||||
Altantargy CHAR(1),
|
||||
FotargyId INT,
|
||||
ErtekelesTema NVARCHAR(MAX),
|
||||
ErtekeloId INT,
|
||||
ErtekelesModjaId INT,
|
||||
IsMagatartasSzorgalom CHAR(1),
|
||||
Jeloles NVARCHAR(MAX),
|
||||
JelolesAndErtekelesTema NVARCHAR(MAX),
|
||||
RENDEZ0 int,
|
||||
RENDEZ1 INT,
|
||||
RENDEZ2 NVARCHAR(MAX),
|
||||
RENDEZ3 INT,
|
||||
RENDEZ4 INT,
|
||||
RENDEZ5 NVARCHAR(MAX)
|
||||
)
|
||||
AS
|
||||
BEGIN
|
||||
INSERT INTO @retTanuloErtekeles
|
||||
SELECT
|
||||
ErtekelesId,
|
||||
Datum,
|
||||
TipusId,
|
||||
ErtekelesSzoveg,
|
||||
ErtekelesSzovegFormazott,
|
||||
ErtekelesSzovegRovidNev,
|
||||
ErtekelesOsztalyzatId,
|
||||
ErtekelesOsztalyzatValue,
|
||||
ErtekelesOsztalyzatNev,
|
||||
ErtekelesSzazalek,
|
||||
MagatartasOsztalyzatId,
|
||||
MagatartasOsztalyzatValue,
|
||||
MagatartasOsztalyzatNev,
|
||||
MagatartasSzoveg,
|
||||
MagatartasSzovegFormazott,
|
||||
MagatartasSzovegRovidNev,
|
||||
MagatartasErtekId,
|
||||
MagatartasErtek,
|
||||
MagatartasErtekOsztalyzatkent,
|
||||
SzorgalomOsztalyzatId,
|
||||
SzorgalomOsztalyzatValue,
|
||||
SzorgalomOsztalyzatNev,
|
||||
SzorgalomSzoveg,
|
||||
SzorgalomSzovegFormazott,
|
||||
SzorgalomSzovegRovidNev,
|
||||
SzorgalomErtekId,
|
||||
SzorgalomErtek,
|
||||
SzorgalomErtekOsztalyzatkent,
|
||||
TanuloId,
|
||||
OsztalyCsoportId,
|
||||
TantargyId,
|
||||
TantargyNevZarojellel,
|
||||
TantargyNevNyomtatvanyban,
|
||||
TantargyNev,
|
||||
TantargyAngolNev,
|
||||
TantargyNemetNev,
|
||||
TargyKategoriaId,
|
||||
FotargyE,
|
||||
Altantargy,
|
||||
FotargyId,
|
||||
ErtekelesTema,
|
||||
ErtekeloId,
|
||||
ErtekelesModjaId,
|
||||
IsMagatartasSzorgalom,
|
||||
Jeloles,
|
||||
JelolesAndErtekelesTema,
|
||||
RENDEZ0,
|
||||
RENDEZ1,
|
||||
RENDEZ2,
|
||||
RENDEZ3,
|
||||
RENDEZ4,
|
||||
RENDEZ5
|
||||
FROM fnGetDokumentumErtekelesekOsztalyonkent(@tanevId, @osztalyCsoportId, @ertekelesTipusa, 0, @csakKivlasztottOsztalyCsoport, @atsoroltTanuloErtekelesek, DEFAULT, @osztalyzatTipusTypeID, @magatartasErtekelesTipusTypeID, @szorgalomErtekelesTipusTypeID) ErtekelesekTable
|
||||
INNER JOIN T_CSOPORT_OSSZES CsoportTable ON ErtekelesekTable.OsztalyCsoportId = CsoportTable.Id
|
||||
WHERE
|
||||
C_TIPUSA IN
|
||||
(
|
||||
1067 --Alapf. müv. okt. zeneművészeti csoport - egyéni főtanszak
|
||||
,1068 --Alapf. müv. okt. zeneművészeti csoport - csoportos főtanszak
|
||||
,1069 --Alapf. müv. okt. képző- és iparművészeti csoport
|
||||
,1070 --Alapf. müv. okt. táncművészeti csoport
|
||||
,1071 --Alapf. müv. okt. szín- és bábművészeti csoport
|
||||
,6756 --Alapf. műv. okt. zeneművészeti csoport - csoportos kötelezően választható
|
||||
,6757 --Alapf. műv. okt. zeneművészeti csoport - egyéni kötelezően választható
|
||||
,6758 --Alapf. műv. okt. zeneművészeti csoport - csoportos kötelező
|
||||
,6759 --Alapf. műv. okt. zeneművészeti csoport - egyéni kötelező
|
||||
,6760 --Alapf. műv. okt. zeneművészeti csoport - csoportos választható
|
||||
,6761 --Alapf. műv. okt. zeneművészeti csoport - egyéni választható
|
||||
)
|
||||
RETURN
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,238 @@
|
|||
DROP FUNCTION IF EXISTS fnGetDokumentumErtekelesekOsztalyonkent
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumErtekelesekOsztalyonkent (
|
||||
@tanevId int
|
||||
,@osztalyCsoportId int
|
||||
,@ertekelesTipusa int = NULL
|
||||
,@csakTanorai bit = 1
|
||||
,@csakKivlasztottOsztalyCsoport bit = 0
|
||||
,@atsoroltTanuloErtekelesek int = 0
|
||||
,@includeOsztalyfonokiKategoria bit = 0
|
||||
,@osztalyzatTipusTypeID int = 44
|
||||
,@magatartasErtekelesTipusTypeID int = 50
|
||||
,@szorgalomErtekelesTipusTypeID int = 51
|
||||
)
|
||||
RETURNS @retTanuloErtekeles TABLE
|
||||
(
|
||||
ErtekelesId INT NOT NULL
|
||||
,Datum DATE
|
||||
,TipusId INT
|
||||
,ErtekelesSzoveg NVARCHAR(MAX)
|
||||
,ErtekelesSzovegFormazott NVARCHAR(MAX)
|
||||
,ErtekelesSzovegRovidNev NVARCHAR(3)
|
||||
,ErtekelesOsztalyzatId INT
|
||||
,ErtekelesOsztalyzatValue INT
|
||||
,ErtekelesOsztalyzatNev NVARCHAR(500)
|
||||
,ErtekelesSzazalek NVARCHAR(4)
|
||||
,MagatartasOsztalyzatId INT
|
||||
,MagatartasOsztalyzatValue INT
|
||||
,MagatartasOsztalyzatNev NVARCHAR(500)
|
||||
,MagatartasSzoveg NVARCHAR(MAX)
|
||||
,MagatartasSzovegFormazott NVARCHAR(MAX)
|
||||
,MagatartasSzovegRovidNev NVARCHAR(6)
|
||||
,MagatartasErtekId INT
|
||||
,MagatartasErtek NVARCHAR(500)
|
||||
,MagatartasErtekOsztalyzatkent INT
|
||||
,SzorgalomOsztalyzatId INT
|
||||
,SzorgalomOsztalyzatValue INT
|
||||
,SzorgalomOsztalyzatNev NVARCHAR(500)
|
||||
,SzorgalomSzoveg NVARCHAR(MAX)
|
||||
,SzorgalomSzovegFormazott NVARCHAR(MAX)
|
||||
,SzorgalomSzovegRovidNev NVARCHAR(6)
|
||||
,SzorgalomErtekId INT
|
||||
,SzorgalomErtek NVARCHAR(500)
|
||||
,SzorgalomErtekOsztalyzatkent INT
|
||||
,TanuloId INT
|
||||
,TanuloCsoportId INT
|
||||
,OsztalyCsoportId INT
|
||||
,TantargyId INT
|
||||
,TantargyNevZarojellel NVARCHAR(1023)
|
||||
,TantargyNevNyomtatvanyban NVARCHAR(510)
|
||||
,TantargyNev NVARCHAR(510)
|
||||
,TantargyAngolNev NVARCHAR(510)
|
||||
,TantargyNemetNev NVARCHAR(510)
|
||||
,TargyKategoriaId INT
|
||||
,FotargyE CHAR(1)
|
||||
,Altantargy CHAR(1)
|
||||
,FotargyId INT
|
||||
,ErtekelesTema NVARCHAR(2100)
|
||||
,ErtekeloId INT
|
||||
,ErtekelesModjaId INT
|
||||
,IsMagatartasSzorgalom CHAR(1)
|
||||
,Jeloles NVARCHAR(MAX)
|
||||
,JelolesAndErtekelesTema NVARCHAR(MAX)
|
||||
,RogzitesDatum DATETIME
|
||||
,RENDEZ0 int
|
||||
,RENDEZ1 INT
|
||||
,RENDEZ2 NVARCHAR(510)
|
||||
,RENDEZ3 INT
|
||||
,RENDEZ4 INT
|
||||
,RENDEZ5 NVARCHAR(510)
|
||||
,IsTanulmanyiatlagbanemszamit CHAR(1)
|
||||
)
|
||||
AS
|
||||
BEGIN
|
||||
DECLARE @kategoriaId int = (SELECT C_FELADATKATEGORIAID FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztalyCsoportId)
|
||||
|
||||
DECLARE @kapcsolodoOcsID TABLE(ID INT)
|
||||
INSERT INTO @kapcsolodoOcsID (ID)
|
||||
SELECT ID FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@osztalyCsoportId, @tanevId, 0, DEFAULT)
|
||||
|
||||
DECLARE @DefaultFeladatKategoriaId int = 7553
|
||||
|
||||
INSERT INTO @retTanuloErtekeles
|
||||
SELECT
|
||||
tanuloErtekeles.ID as ErtekelesId
|
||||
,tanuloErtekeles.C_DATUM as Datum
|
||||
,tanuloErtekeles.C_TIPUSID as TipusId
|
||||
,tanuloErtekeles.C_ERTEKELESSZOVEG as ErtekelesSzoveg
|
||||
,tanuloErtekeles.C_ERTEKELESSZOVEGFORMAZOTT as ErtekelesSzovegFormazott
|
||||
,tanuloErtekeles.C_ERTEKELESSZOVEGROVIDNEV as ErtekelesSzovegRovidNev
|
||||
,tanuloErtekeles.C_ERTEKELESOSZTALYZATID as ErtekelesOsztalyzatId
|
||||
,ertekelesOsztalyzat.C_VALUE as ErtekelesOsztalyzatValue
|
||||
,ertekelesOsztalyzat.C_NAME as ErtekelesOsztalyzatNev
|
||||
,CONVERT(NVARCHAR(3), tanuloErtekeles.C_ERTEKELESSZAZALEK)+'%' as ErtekelesSzazalek
|
||||
,tanuloErtekeles.C_MAGATARTASOSZTALYZATID as MagatartasOsztalyzatId
|
||||
,magatartasOsztalyzat.C_VALUE as MagatartasOsztalyzatValue
|
||||
,magatartasOsztalyzat.C_NAME as MagatartasOsztalyzatNev
|
||||
,tanuloErtekeles.C_MAGATARTASSZOVEG as MagatartasSzoveg
|
||||
,tanuloErtekeles.C_MAGATARTASSZOVEGFORMAZOTT as MagatartasSzovegFormazott
|
||||
,tanuloErtekeles.C_MAGATARTASSZOVEGROVIDNEV as MagatartasSzovegRovidNev
|
||||
,tanuloErtekeles.C_MAGATARTASERTEKID as MagatartasErtekId
|
||||
,magatartasErtek.C_NAME as MagatartasErtek
|
||||
,magatartasErtek.C_VALUE + 1 as MagatartasErtekOsztalyzatken
|
||||
,tanuloErtekeles.C_SZORGALOMOSZTALYZATID as SzorgalomOsztalyzatId
|
||||
,szorgalomOsztalyzat.C_VALUE as SzorgalomOsztalyzatValue
|
||||
,szorgalomOsztalyzat.C_NAME as SzorgalomOsztalyzatNev
|
||||
,tanuloErtekeles.C_SZORGALOMSZOVEG as SzorgalomSzoveg
|
||||
,tanuloErtekeles.C_SZORGALOMSZOVEGFORMAZOTT as SzorgalomSzovegFormazott
|
||||
,tanuloErtekeles.C_SZORGALOMSZOVEGROVIDNEV as SzorgalomSzovegRovidNev
|
||||
,tanuloErtekeles.C_SZORGALOMERTEKID as SzorgalomErtekId
|
||||
,szorgalomErtek.C_NAME as SzorgalomErtek
|
||||
,szorgalomErtek.C_VALUE + 1 as SzorgalomErtekOsztalyzatkent
|
||||
,tanuloErtekeles.C_TANULOID as TanuloId
|
||||
,TanuloCsoport.ID AS TanuloCsoportId
|
||||
,tanuloErtekeles.C_OSZTALYCSOPORTID as OsztalyCsoportId
|
||||
,tanuloErtekeles.C_TANTARGYID as TantargyId
|
||||
,IIF(tantargy.C_NEV <> tantargy.C_NEVNYOMTATVANYBAN AND tantargy.C_NEVNYOMTATVANYBAN IS NOT NULL, tantargy.C_NEVNYOMTATVANYBAN +' (' + tantargy.C_NEV + ')', tantargy.C_NEV) as TantargyNevZarojellel
|
||||
,tantargy.C_NEVNYOMTATVANYBAN as TantargyNevNyomtatvanyban
|
||||
,tantargy.C_NEV as TantargyNev
|
||||
,tantargy.C_ANGOLNEV as TantargyAngolNev
|
||||
,tantargy.C_NEMETNEV as TantargyNemetNev
|
||||
,tantargy.C_TARGYKATEGORIA as TargyKategoriaId
|
||||
,tantargy.C_FOTARGYE as FotargyE
|
||||
,tantargy.C_ALTANTARGYKENTNYOMTATVANYBAN as Altantargy
|
||||
,tantargy.C_FOTARGYID as FotargyId
|
||||
,tanuloErtekeles.C_ERTEKELESTEMA as ErtekelesTema
|
||||
,tanuloErtekeles.C_ERTEKELOID as ErtekeloId
|
||||
,tanuloErtekeles.C_ERTEKELESMODID as ErtekelesModjaId
|
||||
,tanuloErtekeles.C_ISMAGATARTASSZORGALOM as IsMagatartasSzorgalom
|
||||
,CASE
|
||||
WHEN tanuloErtekeles.C_TIPUSID = 1518 THEN
|
||||
CASE
|
||||
WHEN tanuloErtekeles.C_ISMAGATARTASSZORGALOM = 'T' THEN
|
||||
CASE
|
||||
WHEN tanuloErtekeles.C_MAGATARTASSZOVEG IS NOT NULL THEN
|
||||
'<sup>' + CAST(ROW_NUMBER() OVER(PARTITION BY tanuloErtekeles.C_TANULOID, tanuloErtekeles.C_TIPUSID, IIF(tanuloErtekeles.C_MAGATARTASSZOVEG IS NOT NULL, 1, 0) ORDER BY tanuloErtekeles.C_ROGZITESDATUM) AS NVARCHAR(10))+'</sup>'
|
||||
WHEN tanuloErtekeles.C_SZORGALOMSZOVEG IS NOT NULL THEN
|
||||
'<sup>' + CAST(ROW_NUMBER() OVER(PARTITION BY tanuloErtekeles.C_TANULOID, tanuloErtekeles.C_TIPUSID, IIF(tanuloErtekeles.C_SZORGALOMSZOVEG IS NOT NULL, 1, 0) ORDER BY tanuloErtekeles.C_ROGZITESDATUM) AS NVARCHAR(10))+'</sup>'
|
||||
END
|
||||
WHEN tanuloErtekeles.C_ISMAGATARTASSZORGALOM = 'F' THEN
|
||||
'<sup>' + CAST(ROW_NUMBER() OVER(PARTITION BY tanuloErtekeles.C_TANULOID, tanuloErtekeles.C_TIPUSID, IIF(tanuloErtekeles.C_ERTEKELESSZOVEG IS NOT NULL, 1, 0) ORDER BY tanuloErtekeles.C_ROGZITESDATUM) AS NVARCHAR(10))+'</sup>'
|
||||
END
|
||||
WHEN tanuloErtekeles.C_ERTEKELESTEMA IS NOT NULL AND tanuloErtekeles.C_TIPUSID IN (1519, 1520) THEN
|
||||
'<i>(' + CAST(CHAR(ROW_NUMBER() OVER(PARTITION BY tanuloErtekeles.C_TANULOID, tanuloErtekeles.C_TIPUSID, IIF(tanuloErtekeles.C_ERTEKELESTEMA IS NOT NULL, 1, 0) ORDER BY tanuloErtekeles.C_DATUM) + 96) AS NVARCHAR(10))+')</i>'
|
||||
WHEN tanuloErtekeles.C_ERTEKELESTEMA IS NOT NULL AND tanuloErtekeles.C_TIPUSID IN (1522, 1523, 1524, 1525) THEN
|
||||
'<i>(' + CAST(CHAR(ROW_NUMBER() OVER(PARTITION BY tanuloErtekeles.C_TANULOID, tanuloErtekeles.C_TIPUSID, IIF(tanuloErtekeles.C_ERTEKELESTEMA IS NOT NULL, 1, 0) ORDER BY tanuloErtekeles.C_DATUM) + 96) AS NVARCHAR(10))+')</i>'
|
||||
END as Jeloles
|
||||
,CASE
|
||||
WHEN tanuloErtekeles.C_ERTEKELESTEMA IS NOT NULL AND tanuloErtekeles.C_TIPUSID IN (1519, 1520) THEN
|
||||
'<i>(' + CAST(CHAR(ROW_NUMBER() OVER(PARTITION BY tanuloErtekeles.C_TANULOID, tanuloErtekeles.C_TIPUSID, IIF(tanuloErtekeles.C_ERTEKELESTEMA IS NOT NULL, 1, 0) ORDER BY tanuloErtekeles.C_DATUM) + 96) AS NVARCHAR(10)) + ')</i>: ' + tanuloErtekeles.C_ERTEKELESTEMA
|
||||
WHEN tanuloErtekeles.C_ERTEKELESTEMA IS NOT NULL AND tanuloErtekeles.C_TIPUSID IN (1522, 1523, 1524, 1525) THEN
|
||||
'<i>(' + CAST(CHAR(ROW_NUMBER() OVER(PARTITION BY tanuloErtekeles.C_TANULOID, tanuloErtekeles.C_TIPUSID, IIF(tanuloErtekeles.C_ERTEKELESTEMA IS NOT NULL, 1, 0) ORDER BY tanuloErtekeles.C_DATUM) + 96) AS NVARCHAR(10)) + ')</i>: ' + tanuloErtekeles.C_ERTEKELESTEMA
|
||||
END as JelolesAndErtekelesTema
|
||||
,tanuloErtekeles.C_ROGZITESDATUM as RogzitesDatum
|
||||
,tantargy.C_SORSZAM as RENDEZ0
|
||||
,CASE WHEN tantargy.C_FOTARGYID IS NULL THEN ISNULL(TargyKategoriaDictionary.C_ORDER, 10000) ELSE ISNULL(FotargyKategoriaDictionary.C_ORDER, 10000) END as RENDEZ1
|
||||
,COALESCE(FotargyTable.C_NEVNYOMTATVANYBAN, FotargyTable.C_NEV, tantargy.C_NEV) as RENDEZ2
|
||||
,ISNULL(tantargy.C_FOTARGYID, tantargy.ID) as RENDEZ3
|
||||
,tantargy.C_FOTARGYID as RENDEZ4
|
||||
,ISNULL(tantargy.C_NEVNYOMTATVANYBAN, tantargy.C_NEV) as RENDEZ5
|
||||
,tantargy.C_ISTANULMANYIATLAGBANEMSZAMIT as IsTanulmanyiatlagbanemszamit
|
||||
FROM T_TANULOERTEKELES_OSSZES tanuloErtekeles
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES TanuloCsoport ON TanuloCsoport.C_TANULOID = tanuloErtekeles.C_TANULOID
|
||||
AND TanuloCsoport.C_OSZTALYCSOPORTID = @osztalyCsoportId
|
||||
AND TanuloCsoport.C_BELEPESDATUM <= tanuloErtekeles.C_DATUM
|
||||
AND (TanuloCsoport.C_KILEPESDATUM >= tanuloErtekeles.C_DATUM OR TanuloCsoport.C_KILEPESDATUM IS NULL)
|
||||
AND TanuloCsoport.TOROLT = 'F'
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES ErtekeleshezTartozoOsztalyCsoport ON ErtekeleshezTartozoOsztalyCsoport.C_TANULOID = tanuloErtekeles.C_TANULOID
|
||||
AND ErtekeleshezTartozoOsztalyCsoport.C_OSZTALYCSOPORTID = tanuloErtekeles.C_OSZTALYCSOPORTID
|
||||
AND ErtekeleshezTartozoOsztalyCsoport.C_BELEPESDATUM <= tanuloErtekeles.C_DATUM
|
||||
AND (ErtekeleshezTartozoOsztalyCsoport.C_KILEPESDATUM >= tanuloErtekeles.C_DATUM OR ErtekeleshezTartozoOsztalyCsoport.C_KILEPESDATUM IS NULL)
|
||||
AND ErtekeleshezTartozoOsztalyCsoport.TOROLT = 'F'
|
||||
AND ErtekeleshezTartozoOsztalyCsoport.C_TANEVID = @tanevId
|
||||
LEFT JOIN T_TANTARGY_OSSZES tantargy ON tantargy.Id = tanuloErtekeles.C_TANTARGYID AND tantargy.TOROLT = 'F'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES ertekelesOsztalyzat ON ertekelesOsztalyzat.ID = tanuloErtekeles.C_ERTEKELESOSZTALYZATID
|
||||
AND ertekelesOsztalyzat.C_TANEVID = @tanevId
|
||||
AND ertekelesOsztalyzat.C_DICTIONARYTYPEID = @osztalyzatTipusTypeID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES magatartasOsztalyzat ON magatartasOsztalyzat.ID = tanuloErtekeles.C_MAGATARTASOSZTALYZATID
|
||||
AND magatartasOsztalyzat.C_TANEVID = @tanevId
|
||||
AND magatartasOsztalyzat.C_DICTIONARYTYPEID = @osztalyzatTipusTypeID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES szorgalomOsztalyzat ON szorgalomOsztalyzat.ID = tanuloErtekeles.C_SZORGALOMOSZTALYZATID
|
||||
AND szorgalomOsztalyzat.C_TANEVID = @tanevId
|
||||
AND szorgalomOsztalyzat.C_DICTIONARYTYPEID = @osztalyzatTipusTypeID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES magatartasErtek ON magatartasErtek.ID = tanuloErtekeles.C_MAGATARTASERTEKID
|
||||
AND magatartasErtek.C_TANEVID = @tanevId
|
||||
AND magatartasErtek.C_DICTIONARYTYPEID = @magatartasErtekelesTipusTypeID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES szorgalomErtek ON szorgalomErtek.ID = tanuloErtekeles.C_SZORGALOMERTEKID
|
||||
AND szorgalomErtek.C_TANEVID = @tanevId
|
||||
AND szorgalomErtek.C_DICTIONARYTYPEID = @szorgalomErtekelesTipusTypeID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES TargyKategoriaDictionary ON TargyKategoriaDictionary.Id = tantargy.C_TARGYKATEGORIA
|
||||
AND TargyKategoriaDictionary.TOROLT = 'F'
|
||||
AND TargyKategoriaDictionary.C_TANEVID = @tanevId
|
||||
LEFT JOIN T_TANTARGY_OSSZES FotargyTable ON tantargy.C_FOTARGYID = FotargyTable.ID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES FotargyKategoriaDictionary ON FotargyKategoriaDictionary.ID = FotargyTable.C_TARGYKATEGORIA
|
||||
AND FotargyKategoriaDictionary.TOROLT = 'F'
|
||||
AND FotargyKategoriaDictionary.C_TANEVID = FotargyTable.C_TANEVID
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES osztalyCsoport ON osztalyCsoport.ID = tanuloErtekeles.C_OSZTALYCSOPORTID
|
||||
AND osztalyCsoport.TOROLT = 'F' and osztalyCsoport.C_FELADATKATEGORIAID = @kategoriaId
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
tanorai.ID as tanoraiId
|
||||
,cs.ID as CsoportId
|
||||
FROM T_CSOPORT_OSSZES cs
|
||||
INNER JOIN fnGetTanoraiCeluCsoportTipusok(@tanevId) tanorai ON tanorai.ID = cs.C_TIPUSA
|
||||
) tanorai ON tanorai.CsoportId = OsztalyCsoport.ID
|
||||
LEFT JOIN T_OSZTALY_OSSZES osztaly ON osztaly.ID = tanuloErtekeles.C_OSZTALYCSOPORTID
|
||||
WHERE tanuloErtekeles.C_TANEVID = @tanevId
|
||||
AND tanuloErtekeles.TOROLT = 'F'
|
||||
AND (@atsoroltTanuloErtekelesek = 1 OR (tanuloErtekeles.C_OSZTALYCSOPORTID IN(SELECT ID FROM @kapcsolodoOcsID)))
|
||||
AND (@ertekelesTipusa IS NULL OR C_TIPUSID = @ertekelesTipusa)
|
||||
AND (@csakKivlasztottOsztalyCsoport = 0 OR tanuloErtekeles.C_OSZTALYCSOPORTID = @osztalyCsoportId)
|
||||
AND (@csakTanorai = 0 OR osztaly.ID IS NOT NULL OR tanorai.tanoraiId IS NOT NULL)
|
||||
AND ((ISNULL(tantargy.C_TARGYKATEGORIA,0) <> 1248) OR @includeOsztalyfonokiKategoria = 1)
|
||||
|
||||
IF @atsoroltTanuloErtekelesek > 0
|
||||
BEGIN
|
||||
DECLARE @osztalyTantargyak TABLE (TantargyId INT)
|
||||
|
||||
INSERT INTO @osztalyTantargyak (TantargyId)
|
||||
SELECT DISTINCT
|
||||
TantargyId
|
||||
FROM @retTanuloErtekeles
|
||||
WHERE OsztalyCsoportId IN (SELECT ID FROM @kapcsolodoOcsID)
|
||||
UNION
|
||||
SELECT DISTINCT
|
||||
C_TANTARGYID
|
||||
FROM T_FOGLALKOZAS_OSSZES
|
||||
INNER JOIN @kapcsolodoOcsID AS OSZTALYCSOPORT ON OSZTALYCSOPORT.ID = T_FOGLALKOZAS_OSSZES.C_OSZTALYCSOPORTID
|
||||
WHERE T_FOGLALKOZAS_OSSZES.TOROLT = 'F'
|
||||
|
||||
DELETE FROM @retTanuloErtekeles
|
||||
WHERE TantargyId NOT IN (SELECT TantargyId FROM @osztalyTantargyak)
|
||||
END
|
||||
|
||||
RETURN
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,28 @@
|
|||
DROP FUNCTION IF EXISTS dbo.fnGetDokumentumGondviselok;
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumGondviselok (@osztalyCsoportId INT, @tanevId INT, @isCsokkentettGondviselo NVARCHAR(1), @isTorvenyesGondviselo NVARCHAR(1) = NULL)
|
||||
RETURNS @Result TABLE (
|
||||
GondviseloId INT NOT NULL
|
||||
,GondviseloNev NVARCHAR(MAX) NOT NULL
|
||||
,TanuloId INT NOT NULL
|
||||
,RokonsagifokId INT
|
||||
) AS
|
||||
BEGIN
|
||||
INSERT INTO @Result (GondviseloId, GondviseloNev, TanuloId, RokonsagifokId)
|
||||
SELECT DISTINCT
|
||||
Gondviselo.ID GondviseloId
|
||||
,Gondviselo.C_NEV GondviseloNev
|
||||
,Gondviselo.C_TANULOID TanuloId
|
||||
,Gondviselo.C_ROKONSAGFOKA RokonsagifokId
|
||||
FROM T_GONDVISELO_OSSZES Gondviselo
|
||||
INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyCsoportId, 'T') OsztalyTanuloi ON OsztalyTanuloi.TanuloId = Gondviselo.C_TANULOID
|
||||
WHERE
|
||||
Gondviselo.TOROLT = 'F'
|
||||
AND (@isTorvenyesGondviselo IS NULL OR Gondviselo.C_ISTORVENYESKEPVISELO = @isTorvenyesGondviselo)
|
||||
AND (Gondviselo.C_ISCSOKKENTETTGONDVISELO IS NULL OR Gondviselo.C_ISCSOKKENTETTGONDVISELO = @isCsokkentettGondviselo)
|
||||
AND Gondviselo.C_TANEVID = @tanevId
|
||||
|
||||
RETURN
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,29 @@
|
|||
DROP FUNCTION IF EXISTS fnGetDokumentumIdegenNyelv
|
||||
GO
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumIdegenNyelv (@nyomtatvanyNyelvEnum INT, @Id INT, @tanevId INT)
|
||||
RETURNS NVARCHAR(MAX)
|
||||
BEGIN
|
||||
DECLARE @value NVARCHAR(MAX)
|
||||
DECLARE @intezmenyId INT
|
||||
|
||||
SELECT @intezmenyId = (SELECT C_INTEZMENYID FROM T_TANEV_OSSZES WHERE ID = @tanevId AND TOROLT= 'F')
|
||||
|
||||
SELECT @value = (SELECT
|
||||
CASE @nyomtatvanyNyelvEnum
|
||||
WHEN 0 THEN
|
||||
C_NAME
|
||||
WHEN 1 THEN
|
||||
C_NAME_2
|
||||
WHEN 2 THEN
|
||||
C_NAME_1
|
||||
END
|
||||
FROM T_DICTIONARYITEMBASE_OSSZES WHERE ID = @Id AND C_TANEVID = @tanevId AND C_INTEZMENYID = @intezmenyId AND TOROLT = 'F')
|
||||
|
||||
RETURN @value
|
||||
END;
|
|
@ -0,0 +1,25 @@
|
|||
IF OBJECT_ID('dbo.fnGetDokumentumIntezmenyCime') IS NOT NULL BEGIN
|
||||
DROP FUNCTION dbo.fnGetDokumentumIntezmenyCime
|
||||
END
|
||||
GO
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE FUNCTION dbo.fnGetDokumentumIntezmenyCime (@tanevId INT)
|
||||
RETURNS NVARCHAR(MAX)
|
||||
BEGIN
|
||||
DECLARE @value NVARCHAR(MAX)
|
||||
|
||||
SELECT
|
||||
@value = C_IRANYITOSZAM + ' ' + C_VAROS + ISNULL( ', ' + C_KOZTERULETNEV + ' ', '') + ISNULL(C_KOZTERULETJELLEGENEV + ' ','') + ISNULL(C_HAZSZAM, '') + ISNULL(', ' + C_EMELET + '. emelet', '') + ISNULL(', ' + C_AJTO + '. ajtó', '')
|
||||
FROM T_INTEZMENYADATOK_OSSZES
|
||||
WHERE
|
||||
C_TANEVID = @tanevId
|
||||
AND TOROLT = 'F'
|
||||
|
||||
RETURN @value
|
||||
|
||||
END;
|
|
@ -0,0 +1,23 @@
|
|||
IF OBJECT_ID('fnGetDokumentumIntezmenyPedagogusok') IS NOT NULL BEGIN
|
||||
DROP FUNCTION fnGetDokumentumIntezmenyPedagogusok
|
||||
END
|
||||
GO
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumIntezmenyPedagogusok (@pIntezmenyId INT, @pTanevId INT)
|
||||
RETURNS TABLE
|
||||
RETURN (
|
||||
SELECT
|
||||
f.ID AS ID,
|
||||
f.C_NYOMTATASINEV Nev
|
||||
FROM T_ALKALMAZOTT_OSSZES a
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f on f.ID = a.ID
|
||||
WHERE
|
||||
f.TOROLT = 'F'
|
||||
AND f.C_TANEVID = @pTanevId
|
||||
AND f.C_INTEZMENYID = @pIntezmenyId
|
||||
)
|
|
@ -0,0 +1,166 @@
|
|||
DROP FUNCTION IF EXISTS dbo.fnGetDokumentumKapcsolodoOsztalyCsoportokByDateRange
|
||||
GO
|
||||
|
||||
CREATE FUNCTION dbo.fnGetDokumentumKapcsolodoOsztalyCsoportokByDateRange (
|
||||
@pOsztalyCsoportId int
|
||||
,@pStartDate datetime
|
||||
,@pEndDate datetime
|
||||
,@pIntezmenyId int
|
||||
,@pTanevId int
|
||||
)
|
||||
RETURNS @Result TABLE (
|
||||
Id int primary key NOT NULL
|
||||
,Kezdete datetime NOT NULL
|
||||
,Vege datetime NOT NULL
|
||||
) AS
|
||||
BEGIN
|
||||
DECLARE
|
||||
@tanevStart datetime
|
||||
,@tanevEnd datetime
|
||||
,@osztalyId int
|
||||
|
||||
DECLARE @kategoriaId int = (SELECT C_FELADATKATEGORIAID FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyCsoportId)
|
||||
|
||||
IF EXISTS (SELECT 1 FROM T_OSZTALY_OSSZES WHERE ID = @pOsztalyCsoportId) BEGIN
|
||||
|
||||
INSERT INTO @Result (Id, Kezdete, Vege) /* maga az osztály */
|
||||
SELECT
|
||||
o.Id
|
||||
,@pStartDate
|
||||
,@pEndDate
|
||||
FROM T_OSZTALY_OSSZES o
|
||||
WHERE o.ID = @pOsztalyCsoportId
|
||||
AND o.C_ALTANEVID = @pTanevID
|
||||
AND o.C_ALINTEZMENYID = @pIntezmenyId
|
||||
AND o.TOROLT = 'F'
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT /* Az osztály bontott csoportjai */
|
||||
cs.ID
|
||||
,@pStartDate
|
||||
,@pEndDate
|
||||
FROM T_CSOPORT_OSSZES cs
|
||||
WHERE C_OSZTALYBONTASID = @pOsztalyCsoportId
|
||||
AND cs.TOROLT = 'F'
|
||||
AND cs.C_ALTANEVID = @pTanevID
|
||||
AND cs.C_ALINTEZMENYID = @pIntezmenyId
|
||||
|
||||
INSERT INTO @Result (Id, Kezdete, Vege) /* Az osztály tanulóinak más csoportjai */
|
||||
SELECT
|
||||
tcs.C_OSZTALYCSOPORTID AS Id
|
||||
,CASE
|
||||
WHEN MIN(tcs.C_BELEPESDATUM) > MIN(oszt.C_BELEPESDATUM) AND MIN(tcs.C_BELEPESDATUM) > @pStartDate THEN MIN(tcs.C_BELEPESDATUM)
|
||||
WHEN MIN(oszt.C_BELEPESDATUM) > MIN(tcs.C_BELEPESDATUM) AND MIN(oszt.C_BELEPESDATUM) > @pStartDate THEN MIN(oszt.C_BELEPESDATUM)
|
||||
ELSE @pStartDate
|
||||
END AS Kezdete -- A három közül a legnagyobb
|
||||
,CASE
|
||||
WHEN MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate)) < MAX(ISNULL(oszt.C_KILEPESDATUM, @pEndDate)) AND MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate)) < @pEndDate THEN MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate))
|
||||
WHEN MAX(ISNULL(oszt.C_KILEPESDATUM, @pEndDate)) < MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate)) AND MAX(ISNULL(oszt.C_KILEPESDATUM, @pEndDate)) < @pEndDate THEN MAX(ISNULL(oszt.C_KILEPESDATUM, @pEndDate))
|
||||
ELSE @pEndDate -- A három közül a legkisebb
|
||||
END AS Vege
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES oszt
|
||||
ON oszt.C_TANULOID = tcs.C_TANULOID
|
||||
AND oszt.C_OSZTALYCSOPORTID = @pOsztalyCsoportId
|
||||
AND oszt.C_BELEPESDATUM <= @pEndDate
|
||||
AND (oszt.C_KILEPESDATUM > @pStartDate OR oszt.C_KILEPESDATUM IS NULL)
|
||||
-- Csak azok a tanulócsoportok kellenek, amiknek tagja az adott osztályban tartózkodáskor
|
||||
AND oszt.C_BELEPESDATUM <= ISNULL(tcs.C_KILEPESDATUM, @pEndDate) AND ISNULL(oszt.C_KILEPESDATUM, @pEndDate) > tcs.C_BELEPESDATUM
|
||||
INNER JOIN T_CSOPORT_OSSZES cs ON cs.ID = tcs.C_OSZTALYCSOPORTID AND cs.C_OSZTALYBONTASID IS NULL
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = cs.ID AND ocs.TOROLT = 'F' AND ocs.C_FELADATKATEGORIAID = @kategoriaId
|
||||
WHERE tcs.TOROLT = 'F'
|
||||
AND oszt.TOROLT = 'F'
|
||||
AND tcs.C_TANEVID = @pTanevId
|
||||
AND tcs.C_INTEZMENYID = @pIntezmenyId
|
||||
AND tcs.C_BELEPESDATUM <= @pEndDate
|
||||
AND (tcs.C_KILEPESDATUM > @pStartDate OR tcs.C_KILEPESDATUM IS NULL)
|
||||
AND NOT EXISTS (SELECT 1 FROM @Result r WHERE r.ID = tcs.C_OSZTALYCSOPORTID)
|
||||
GROUP BY tcs.C_OSZTALYCSOPORTID
|
||||
END
|
||||
|
||||
IF EXISTS (SELECT 1 FROM T_CSOPORT_OSSZES WHERE ID = @pOsztalyCsoportId AND C_OSZTALYBONTASID IS NOT NULL AND TOROLT = 'F') BEGIN
|
||||
|
||||
SELECT @osztalyId = C_OSZTALYBONTASID FROM T_CSOPORT_OSSZES WHERE ID = @pOsztalyCsoportId
|
||||
|
||||
INSERT INTO @Result (Id, Kezdete, Vege) /* Az osztály, amelyiknek a bontása */
|
||||
SELECT
|
||||
@osztalyId
|
||||
,@pStartDate
|
||||
,@pEndDate
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT /* Maga a csoport */
|
||||
@pOsztalyCsoportId
|
||||
,@pStartDate
|
||||
,@pEndDate
|
||||
|
||||
INSERT INTO @Result (Id, Kezdete, Vege) /* Az csoport tanulóinak más csoportjai */
|
||||
SELECT
|
||||
tcs.C_OSZTALYCSOPORTID AS Id
|
||||
,CASE
|
||||
WHEN MIN(tcs.C_BELEPESDATUM) > MIN(csop.C_BELEPESDATUM) AND MIN(tcs.C_BELEPESDATUM) > @pStartDate THEN MIN(tcs.C_BELEPESDATUM)
|
||||
WHEN MIN(csop.C_BELEPESDATUM) > MIN(tcs.C_BELEPESDATUM) AND MIN(csop.C_BELEPESDATUM) > @pStartDate THEN MIN(csop.C_BELEPESDATUM)
|
||||
ELSE @pStartDate
|
||||
END AS Kezdete -- A három közül a legnagyobb
|
||||
,CASE
|
||||
WHEN MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate)) < MAX(ISNULL(csop.C_KILEPESDATUM, @pEndDate)) AND MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate)) < @pEndDate THEN MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate))
|
||||
WHEN MAX(ISNULL(csop.C_KILEPESDATUM, @pEndDate)) < MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate)) AND MAX(ISNULL(csop.C_KILEPESDATUM, @pEndDate)) < @pEndDate THEN MAX(ISNULL(csop.C_KILEPESDATUM, @pEndDate))
|
||||
ELSE @pEndDate
|
||||
END AS Vege -- A három közül a legkisebb
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES csop
|
||||
ON tcs.C_TANULOID = csop.C_TANULOID
|
||||
AND csop.C_OSZTALYCSOPORTID = @pOsztalyCsoportId
|
||||
AND csop.C_BELEPESDATUM <= @pEndDate
|
||||
AND (csop.C_KILEPESDATUM > @pStartDate OR csop.C_KILEPESDATUM IS NULL)
|
||||
AND csop.TOROLT = 'F'
|
||||
INNER JOIN T_CSOPORT_OSSZES cs
|
||||
ON cs.ID = tcs.C_OSZTALYCSOPORTID
|
||||
AND (cs.C_OSZTALYBONTASID IS NULL OR cs.C_OSZTALYBONTASID = @osztalyId)
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = cs.ID AND ocs.TOROLT='F' AND ocs.C_FELADATKATEGORIAID = @kategoriaId
|
||||
WHERE tcs.C_OSZTALYCSOPORTID <> @pOsztalyCsoportId
|
||||
AND tcs.C_TANEVID = @pTanevId
|
||||
AND tcs.C_INTEZMENYID = @pIntezmenyId
|
||||
AND tcs.C_BELEPESDATUM <= @pEndDate
|
||||
AND (tcs.C_KILEPESDATUM > @pStartDate OR tcs.C_KILEPESDATUM IS NULL)
|
||||
AND tcs.TOROLT = 'F' AND csop.TOROLT = 'F'
|
||||
GROUP BY tcs.C_OSZTALYCSOPORTID
|
||||
END
|
||||
|
||||
IF EXISTS (SELECT 1 FROM T_CSOPORT_OSSZES WHERE ID = @pOsztalyCsoportId AND C_OSZTALYBONTASID IS NULL AND TOROLT = 'F') BEGIN
|
||||
|
||||
INSERT INTO @Result (Id, Kezdete, Vege) /* Az csoport tanulóinak más csoportjai */
|
||||
SELECT
|
||||
tcs.C_OSZTALYCSOPORTID AS Id
|
||||
,CASE
|
||||
WHEN MIN(tcs.C_BELEPESDATUM) > MIN(csop.C_BELEPESDATUM) AND MIN(tcs.C_BELEPESDATUM) > @pStartDate THEN MIN(tcs.C_BELEPESDATUM)
|
||||
WHEN MIN(csop.C_BELEPESDATUM) > MIN(tcs.C_BELEPESDATUM) AND MIN(csop.C_BELEPESDATUM) > @pStartDate THEN MIN(csop.C_BELEPESDATUM)
|
||||
ELSE @pStartDate
|
||||
END AS Kezdete -- A három közül a legnagyobb
|
||||
,CASE
|
||||
WHEN MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate)) < MAX(ISNULL(csop.C_KILEPESDATUM, @pEndDate)) AND MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate)) < @pEndDate THEN MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate))
|
||||
WHEN MAX(ISNULL(csop.C_KILEPESDATUM, @pEndDate)) < MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate)) AND MAX(ISNULL(csop.C_KILEPESDATUM, @pEndDate)) < @pEndDate THEN MAX(ISNULL(csop.C_KILEPESDATUM, @pEndDate))
|
||||
ELSE @pEndDate
|
||||
END AS Vege -- A három közül a legkisebb
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES csop
|
||||
ON tcs.C_TANULOID = csop.C_TANULOID
|
||||
AND csop.C_OSZTALYCSOPORTID = @pOsztalyCsoportId
|
||||
AND csop.C_BELEPESDATUM <= @pEndDate
|
||||
AND (csop.C_KILEPESDATUM > @pStartDate OR csop.C_KILEPESDATUM IS NULL)
|
||||
AND csop.TOROLT = 'F'
|
||||
AND csop.C_BELEPESDATUM <= ISNULL(tcs.C_KILEPESDATUM, @pEndDate) AND ISNULL(csop.C_KILEPESDATUM, @pEndDate) > tcs.C_BELEPESDATUM
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = tcs.C_OSZTALYCSOPORTID AND ocs.TOROLT='F' AND ocs.C_FELADATKATEGORIAID = @kategoriaId
|
||||
WHERE tcs.C_TANEVID = @pTanevId
|
||||
AND tcs.C_INTEZMENYID = @pIntezmenyId
|
||||
AND tcs.C_BELEPESDATUM <= @pEndDate
|
||||
AND (tcs.C_KILEPESDATUM > @pStartDate OR tcs.C_KILEPESDATUM IS NULL)
|
||||
AND tcs.TOROLT = 'F' AND csop.TOROLT = 'F'
|
||||
GROUP BY tcs.C_OSZTALYCSOPORTID
|
||||
END
|
||||
|
||||
RETURN
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,61 @@
|
|||
DROP FUNCTION IF EXISTS fnGetDokumentumKapcsolodoOsztalycsoportok
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumKapcsolodoOsztalycsoportok (@osztalyCsoportId int, @ptanevId int, @csakTanoraiCelu INT= 1, @kapcsolodoCsoportokSzureseOsztalyBesorolasra INT = 0)
|
||||
RETURNS @ocs TABLE (ID int)
|
||||
AS BEGIN
|
||||
|
||||
DECLARE @kategoriaId int = (SELECT C_FELADATKATEGORIAID FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztalyCsoportId)
|
||||
|
||||
INSERT INTO @ocs
|
||||
|
||||
SELECT @osztalyCsoportId AS ID
|
||||
|
||||
UNION
|
||||
|
||||
SELECT cs.ID
|
||||
FROM T_CSOPORT_OSSZES cs
|
||||
INNER JOIN T_CSOPORTTIPUS_OSSZES cst ON cs.C_TIPUSA = cst.ID AND cs.C_ALTANEVID = cst.C_ALTANEVID
|
||||
WHERE C_OSZTALYBONTASID = @osztalyCsoportId
|
||||
AND (@csakTanoraiCelu = 0 OR C_ISTANORAICELU = 'T')
|
||||
|
||||
UNION
|
||||
|
||||
SELECT tcs.C_OSZTALYCSOPORTID
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_CSOPORT_OSSZES cs ON cs.ID = tcs.C_OSZTALYCSOPORTID AND (cs.C_OSZTALYBONTASID IS NULL OR cs.C_OSZTALYBONTASID = @osztalyCsoportId)
|
||||
INNER JOIN T_CSOPORTTIPUS_OSSZES cst ON cs.C_TIPUSA = cst.ID AND cs.C_ALTANEVID = cst.C_ALTANEVID
|
||||
INNER JOIN (
|
||||
SELECT DISTINCT x.C_TANULOID, x.C_BELEPESDATUM, x.C_KILEPESDATUM
|
||||
FROM T_TANULOCSOPORT_OSSZES x
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ON T_OSZTALYCSOPORT_OSSZES.ID = x.C_OSZTALYCSOPORTID
|
||||
INNER JOIN T_TANEV_OSSZES ON T_TANEV_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.C_TANEVID
|
||||
WHERE x.C_OSZTALYCSOPORTID = @osztalyCsoportId AND x.TOROLT = 'F' AND (x.C_KILEPESDATUM > T_TANEV_OSSZES.C_KEZDONAP OR x.C_KILEPESDATUM IS NULL)
|
||||
) OSZTALY_TANULO ON OSZTALY_TANULO.C_TANULOID = tcs.C_TANULOID
|
||||
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > OSZTALY_TANULO.C_BELEPESDATUM)
|
||||
AND (OSZTALY_TANULO.C_KILEPESDATUM IS NULL OR tcs.C_BELEPESDATUM <= OSZTALY_TANULO.C_KILEPESDATUM)
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = tcs.C_OSZTALYCSOPORTID AND ocs.C_FELADATKATEGORIAID = @kategoriaId
|
||||
WHERE tcs.C_OSZTALYCSOPORTID <> @osztalyCsoportId AND tcs.TOROLT = 'F'
|
||||
AND (@csakTanoraiCelu = 0 OR C_ISTANORAICELU = 'T')
|
||||
AND (@kapcsolodoCsoportokSzureseOsztalyBesorolasra = 0 OR (OSZTALY_TANULO.C_KILEPESDATUM IS NULL OR OSZTALY_TANULO.C_KILEPESDATUM >= tcs.C_KILEPESDATUM))
|
||||
|
||||
UNION
|
||||
|
||||
SELECT C_OSZTALYBONTASID AS ID
|
||||
FROM T_CSOPORT_OSSZES cs
|
||||
INNER JOIN T_CSOPORTTIPUS_OSSZES cst ON cs.C_TIPUSA = cst.ID AND cs.C_ALTANEVID = cst.C_ALTANEVID
|
||||
WHERE cs.ID = @osztalyCsoportId
|
||||
AND C_OSZTALYBONTASID IS NOT NULL
|
||||
AND (@csakTanoraiCelu = 0 OR C_ISTANORAICELU = 'T')
|
||||
|
||||
UNION
|
||||
|
||||
SELECT cs.ID
|
||||
FROM T_CSOPORT_OSSZES cs
|
||||
INNER JOIN T_CSOPORTTIPUS_OSSZES cst ON cs.C_TIPUSA = cst.ID AND cs.C_ALTANEVID = cst.C_ALTANEVID
|
||||
WHERE C_OSZTALYBONTASID IN (SELECT C_OSZTALYBONTASID FROM T_CSOPORT_OSSZES WHERE ID = @osztalyCsoportId)
|
||||
AND (@csakTanoraiCelu = 0 OR C_ISTANORAICELU = 'T')
|
||||
|
||||
RETURN
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,57 @@
|
|||
DROP FUNCTION IF EXISTS fnGetDokumentumKozossegiSzolgalatOsztalyonkent
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumKozossegiSzolgalatOsztalyonkent (@tanevId int, @osztalyId int, @idegenNyelvId int)
|
||||
RETURNS TABLE
|
||||
RETURN (
|
||||
SELECT
|
||||
tk.ID AS KozossegiSzolgalatId
|
||||
,tk.C_TANEVID AS KozossegiSzolgalatTanevId
|
||||
,currentTanulo.TanuloNev AS TanuloNev
|
||||
,currentTanulo.TanuloId AS TanuloId
|
||||
,currentTanulo.TanuloCsoportId AS TanuloCsoportId
|
||||
,currentTanulo.OktatasiAzonosito AS TanuloOktAzon
|
||||
,FORMAT(C_INTERVALLUMKEZDETE, 'yyyy. MM. dd') + ' -' + char(13) + char(10) + FORMAT(C_INTERVALLUMVEGE, 'yyyy. MM. dd') AS Datum
|
||||
,tk.C_MEGJEGYZES AS Megjegyzes
|
||||
,tkny.C_MEGJEGYZES AS MegjegyzesIdegenNyelven
|
||||
,tk.C_ORASZAM AS Oraszam
|
||||
,tk.C_TELJESITESIHELYE AS TeljesitesHelye
|
||||
,feljegyzo.C_NYOMTATASINEV AS FeljegyzoNeve
|
||||
,tipus.C_NAME AS Tipus
|
||||
,tk.C_INTERVALLUMKEZDETE AS IntervallumKezdete
|
||||
,tk.C_INTERVALLUMVEGE AS IntervallumVege
|
||||
,tipusNy.C_NAME AS TipusIdegenNyelven
|
||||
,tkny.C_TELJESITESIHELYE AS TeljesitesHelyeIdegenNyelven
|
||||
,feljegyzo.C_ELOTAG AS FeljegyzoNevElotag
|
||||
,feljegyzo.C_VEZETEKNEV AS FeljegyzoNevVezeteknev
|
||||
,feljegyzo.C_UTONEV AS FeljegyzoNevUtonev
|
||||
FROM T_FELHASZNALO_OSSZES tanulo
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
f.C_OKTATASIAZONOSITO as OktatasiAzonosito
|
||||
,f.ID as TanuloId
|
||||
,f.C_NYOMTATASINEV as TanuloNev
|
||||
,tanulocsoport.ID as TanuloCsoportId
|
||||
,CASE WHEN (SELECT C_AKTIV FROM T_TANEV_OSSZES WHERE ID = tanulocsoport.C_TANEVID AND TOROLT = 'F') = 'T'
|
||||
THEN 1
|
||||
ELSE (SELECT C_SORSZAM FROM T_TANEV_OSSZES WHERE ID = tanulocsoport.C_TANEVID AND TOROLT = 'F')
|
||||
END as IsAktivTanevOrTanevSorszama
|
||||
FROM T_FELHASZNALO_OSSZES f
|
||||
CROSS APPLY (
|
||||
SELECT TOP 1
|
||||
ID
|
||||
,C_TANEVID
|
||||
FROM T_TANULOCSOPORT_OSSZES subTanuloCsoport
|
||||
WHERE subTanuloCsoport.TOROLT = 'F' AND subTanuloCsoport.C_OSZTALYCSOPORTID = @osztalyId AND subTanuloCsoport.C_TANULOID = f.ID
|
||||
ORDER BY ISNULL(subTanuloCsoport.C_KILEPESDATUM, '22000101') DESC
|
||||
) tanulocsoport
|
||||
WHERE f.TOROLT = 'F'
|
||||
) currentTanulo ON tanulo.C_OKTATASIAZONOSITO = currentTanulo.OktatasiAzonosito
|
||||
INNER JOIN T_TANULOKOZOSSEGISZOLGALAT_OSSZES tk ON tk.C_TANULOID = Tanulo.ID AND tk.TOROLT = 'F'
|
||||
AND (currentTanulo.IsAktivTanevOrTanevSorszama = 1 OR tk.C_TANEVID IN (SELECT ID FROM T_TANEV_OSSZES WHERE C_SORSZAM <= IsAktivTanevOrTanevSorszama AND C_INTEZMENYID = tk.C_INTEZMENYID AND TOROLT = 'F'))
|
||||
LEFT JOIN T_TANULOKOZOSSEGISZOLGALATNYEL_OSSZES tkny ON tkny.C_TANULOKOZOSSEGISZOLGALATID = tk.ID AND tkny.C_NYELVID = @idegenNyelvId AND tkny.TOROLT = 'F' AND tkny.C_TANEVID = @tanevId
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES feljegyzo ON feljegyzo.ID = tk.C_FELJEGYZOID AND feljegyzo.TOROLT = 'F'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES tipus ON tipus.Id = tk.C_KOZOSSEGISZOLGALATTIPUSA AND tipus.C_TANEVID = tk.C_TANEVID
|
||||
LEFT JOIN T_DICTIONARYITEMBASENYELV_OSSZES tipusNy ON tipusNy.ID = tk.C_KOZOSSEGISZOLGALATTIPUSA AND tipusNy.C_NYELVID = @idegenNyelvId AND tipusNy.C_TANEVID = @tanevId AND tipusNy.TOROLT = 'F'
|
||||
WHERE tanulo.TOROLT = 'F'
|
||||
)
|
|
@ -0,0 +1,46 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('fnGetDokumentumMegtartottOrak') IS NOT NULL
|
||||
BEGIN
|
||||
DROP FUNCTION fnGetDokumentumMegtartottOrak
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumMegtartottOrak (@pOsztalyCsoportId INT, @pTanevId INT)
|
||||
RETURNS TABLE
|
||||
RETURN (
|
||||
|
||||
SELECT
|
||||
tao.Id TanitasioraId
|
||||
,tao.C_DATUM Datum
|
||||
,tao.C_ORASZAM Oraszam
|
||||
,pedagogus.ID PedagogusId
|
||||
,IIF(C_MEGTARTOTT = 'T', pedagogus.C_NYOMTATASINEV, '-') PedagogusNev
|
||||
,IIF(C_MEGTARTOTT = 'T', REPLACE(REPLACE(REPLACE(C_TEMA, CHAR(0x0007),''), CHAR(0x000B), ''), CHAR(0x0002), ''), 'Elmaradt')
|
||||
+ IIF(C_HELYETTESITESTIPUSA = 1496, ' (Óraösszevonás: ' + helyettesito.C_NYOMTATASINEV +')', '')
|
||||
+ IIF(C_HELYETTESITESTIPUSA IN (1494, 1495), '(Helyettesitve: ' + helyettesito.C_NYOMTATASINEV +') ', '' ) Tema
|
||||
,tao.C_HETNAPJA HetNapja
|
||||
,nh.C_HETSORSZAMA HetSorszama
|
||||
,C_MEGTARTOTT Megtartott
|
||||
,tao.C_TANTARGYID TantargyId
|
||||
,IIF(tantargy.C_NEV <> C_NEVNYOMTATVANYBAN AND C_NEVNYOMTATVANYBAN IS NOT NULL, C_NEVNYOMTATVANYBAN + ' (' + tantargy.C_NEV + ')', tantargy.C_NEV) Tantargynev
|
||||
,tao.C_OSZTALYCSOPORTID OsztalyCsoportId
|
||||
,C_NAPSORSZAMA NapSorszama
|
||||
,IIF(tantargy.C_NEV <> C_NEVNYOMTATVANYBAN AND C_NEVNYOMTATVANYBAN IS NOT NULL,
|
||||
IIF(LEN(C_NEVNYOMTATVANYBAN) + LEN(tantargy.C_NEV) < 90,
|
||||
C_NEVNYOMTATVANYBAN + ' (' + tantargy.C_NEV + ')',
|
||||
C_NEVNYOMTATVANYBAN), tantargy.C_NEV) + '-' + CHAR(13) + CHAR(10)
|
||||
+ IIF(C_MEGTARTOTT = 'T', REPLACE(REPLACE(ISNULL(pedagogus.C_NYOMTATASINEV, ''), '[', ''), ']', ''), 'Elmaradt') TantargyPedagogussal
|
||||
FROM T_TANITASIORA_OSSZES tao
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES pedagogus ON pedagogus.Id = tao.C_TANARID
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES helyettesito ON helyettesito.Id = tao.C_HELYETTESITOTANARID
|
||||
INNER JOIN T_TANTARGY_OSSZES tantargy ON tantargy.Id = tao.C_TANTARGYID
|
||||
INNER JOIN T_NAPTARIHET_OSSZES nh ON tao.C_DATUM BETWEEN nh.C_HETKEZDONAPJA AND nh.C_HETUTOLSONAPJA AND nh.C_TANEVID = @pTanevId AND nh.TOROLT='F'
|
||||
WHERE
|
||||
tao.C_OSZTALYCSOPORTID IN (SELECT ID FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyCsoportId, @pTanevId, DEFAULT, DEFAULT))
|
||||
AND tao.TOROLT = 'F'
|
||||
)
|
||||
GO
|
|
@ -0,0 +1,135 @@
|
|||
DROP FUNCTION IF EXISTS fnGetDokumentumMulasztasokOsztalyonkentReszletes
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumMulasztasokOsztalyonkentReszletes (
|
||||
@tanevId int
|
||||
,@osztalyCsoportId int
|
||||
,@iskolaErdekuSzamit bit
|
||||
,@csakKivlasztottOsztalyCsoport bit = 0
|
||||
,@atsoroltTanuloMulasztas bit = 1
|
||||
,@idoszakEleje date = NULL
|
||||
,@idoszakVege date = NULL
|
||||
,@csakTanoraiCelu int = 1
|
||||
)
|
||||
RETURNS @result TABLE (
|
||||
TanuloId int
|
||||
,TanuloCsoportId int
|
||||
,OsztalyCsoportId int
|
||||
,OsztalyCsoportNev nvarchar (255)
|
||||
,Tipusa int
|
||||
,Igazolt char (1)
|
||||
,IgazolasTipusa int
|
||||
,KesesPercben int null
|
||||
,Datum datetime
|
||||
,Oraszam nvarchar (255)
|
||||
,OraszamWithOrakezdeteVege nvarchar (255)
|
||||
,TantargyId int
|
||||
,TantargyNev nvarchar (255)
|
||||
,HetSorszama int
|
||||
,Gyakorlati char(1)
|
||||
,Tanorai char(1)
|
||||
,RENDEZ0 int
|
||||
,RENDEZ1 int
|
||||
,RENDEZ2 nvarchar(255)
|
||||
,RENDEZ3 int
|
||||
,RENDEZ4 int
|
||||
,RENDEZ5 nvarchar(255)
|
||||
)
|
||||
AS BEGIN
|
||||
|
||||
DECLARE @kategoriaId int = (SELECT C_FELADATKATEGORIAID FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztalyCsoportId)
|
||||
DECLARE @defaultCsengetesiRendId int
|
||||
|
||||
DECLARE @tanoraiCsoportok TABLE(
|
||||
OsztalyCsoportId int
|
||||
)
|
||||
|
||||
SELECT @defaultCsengetesiRendId = ID
|
||||
FROM T_CSENGETESIREND_OSSZES csr
|
||||
WHERE csr.TOROLT='F'
|
||||
AND csr.C_AKTIV = 'T'
|
||||
AND csr.C_TANEVID = @tanevId
|
||||
|
||||
IF @kategoriaId <> 7555 -- NEM AMI-s osztályoknál
|
||||
BEGIN
|
||||
INSERT INTO @tanoraiCsoportok(OsztalyCsoportId)
|
||||
SELECT
|
||||
ID
|
||||
FROM fnGetDokumentumOsztalyVagyTanoraiCsoport(@tanevId)
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
-- AMI törzslapoknál ezekhez az osztálycsoportokhoz szedjük össze a mulasztásokat
|
||||
INSERT INTO @tanoraiCsoportok(OsztalyCsoportId)
|
||||
SELECT ID
|
||||
FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@osztalyCsoportId, @tanevId, 0, DEFAULT)
|
||||
END
|
||||
|
||||
INSERT INTO @result
|
||||
SELECT
|
||||
tm.C_ORATANULOIID AS TanuloId
|
||||
,tcs2.ID AS TanuloCsoportId
|
||||
,tao.C_OSZTALYCSOPORTID AS OsztalyCsoportId
|
||||
,ocs.C_NEV AS OsztalyCsoportNev
|
||||
,tm.C_TIPUS AS Tipusa
|
||||
,tm.C_IGAZOLT AS Igazolt
|
||||
,tm.C_IGAZOLASTIPUSA AS IgazolasTipusa
|
||||
,tm.C_KESESPERCBEN AS KesesPercben
|
||||
,tao.C_DATUM AS Datum
|
||||
,IIF(tao.C_CSENGETESIRENDORAID IS NULL,
|
||||
(SELECT
|
||||
ISNULL(MAX(csro.C_ORASZAM), 0)
|
||||
FROM T_CSENGETESIRENDORA_OSSZES csro
|
||||
WHERE csro.TOROLT = 'F'
|
||||
AND csro.C_CSENGETESIRENDID = @defaultCsengetesiRendId
|
||||
AND CONVERT(nvarchar(5), C_KEZDETE, 108) <= CONVERT(nvarchar(5), C_ORAKEZDETE, 108)
|
||||
),tao.C_ORASZAM) as Oraszam
|
||||
,IIF(tao.C_CSENGETESIRENDORAID IS NULL, CONCAT(CONVERT(nvarchar(5), tao.C_ORAKEZDETE, 108), '-',
|
||||
CONVERT(nvarchar(5), tao.C_ORAVEGE, 108)), CAST(tao.C_ORASZAM AS nvarchar(5))) AS OraszamWithOrakezdeteVege
|
||||
,tao.C_TANTARGYID AS TantargyId
|
||||
,ISNULL(tgy.C_NEVNYOMTATVANYBAN, tgy.C_NEV) AS TantargyNev
|
||||
,tao.C_HETSORSZAMA AS HetSorszama
|
||||
,tgy.C_GYAKORLATI AS Gyakorlati
|
||||
,IIF(tanorai.OsztalyCsoportId IS NULL, 'F', 'T') AS Tanorai
|
||||
,tgy.C_SORSZAM AS RENDEZ0
|
||||
,IIF(tgy.C_FOTARGYID IS NULL,ISNULL(dibtgykat.C_ORDER, 10000),ISNULL(dibftgykat.C_ORDER, 10000)) AS RENDEZ1
|
||||
,COALESCE(ftgy.C_NEVNYOMTATVANYBAN, ftgy.C_NEV, tgy.C_NEV) AS RENDEZ2
|
||||
,ISNULL(tgy.C_FOTARGYID, tgy.ID) AS RENDEZ3
|
||||
,tgy.C_FOTARGYID AS RENDEZ4
|
||||
,ISNULL(tgy.C_NEVNYOMTATVANYBAN, tgy.C_NEV) AS RENDEZ5
|
||||
FROM T_TANULOMULASZTAS_OSSZES tm
|
||||
INNER JOIN T_TANITASIORA_OSSZES tao ON tao.ID = tm.C_TANITASIORAKID
|
||||
AND tao.TOROLT='F'
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_TANULOID = tm.C_ORATANULOIID
|
||||
AND tcs.TOROLT = 'F'
|
||||
AND tao.C_DATUM >= tcs.C_BELEPESDATUM
|
||||
AND tao.C_DATUM <= ISNULL(tcs.C_KILEPESDATUM, GETDATE())
|
||||
AND tcs.C_OSZTALYCSOPORTID= tao.C_OSZTALYCSOPORTID
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs2 ON tcs2.C_TANULOID = tm.C_ORATANULOIID
|
||||
AND tcs2.TOROLT = 'F'
|
||||
AND tao.C_DATUM >= tcs2.C_BELEPESDATUM
|
||||
AND tao.C_DATUM < ISNULL(tcs2.C_KILEPESDATUM, GETDATE())
|
||||
AND tcs2.C_OSZTALYCSOPORTID= @osztalyCsoportId
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = tao.C_OSZTALYCSOPORTID
|
||||
AND ocs.C_FELADATKATEGORIAID = @kategoriaId
|
||||
INNER JOIN T_TANTARGY_OSSZES tgy ON tgy.ID = tao.C_TANTARGYID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES dibtgykat ON dibtgykat.Id = tgy.C_TARGYKATEGORIA
|
||||
AND dibtgykat.TOROLT = 'F'
|
||||
AND dibtgykat.C_TANEVID = @tanevId
|
||||
LEFT JOIN T_TANTARGY_OSSZES ftgy ON tgy.C_FOTARGYID = ftgy.ID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES dibftgykat ON dibftgykat.ID = ftgy.C_TARGYKATEGORIA
|
||||
AND dibftgykat.TOROLT = 'F'
|
||||
AND dibftgykat.C_TANEVID = ftgy.C_TANEVID
|
||||
LEFT JOIN @tanoraiCsoportok tanorai ON tanorai.OsztalyCsoportId = ocs.ID
|
||||
WHERE tm.C_TIPUS BETWEEN 1499 AND 1500
|
||||
AND tm.TOROLT = 'F'
|
||||
AND (@csakTanoraiCelu = 0 OR tanorai.OsztalyCsoportId IS NOT NULL)
|
||||
AND (@iskolaErdekuSzamit = 1 OR (tm.C_IGAZOLASTIPUSA IS NULL OR tm.C_IGAZOLASTIPUSA <> 1533))
|
||||
AND (@atsoroltTanuloMulasztas = 1 OR (tao.C_OSZTALYCSOPORTID IN (SELECT ID FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@osztalyCsoportId, @tanevId, @csakTanoraiCelu, DEFAULT))))
|
||||
AND (@csakKivlasztottOsztalyCsoport = 0 OR tao.C_OSZTALYCSOPORTID = @osztalyCsoportId)
|
||||
AND (@idoszakEleje IS NULL OR tao.C_DATUM >= @idoszakEleje)
|
||||
AND (@idoszakVege IS NULL OR tao.C_DATUM <= @idoszakVege)
|
||||
|
||||
RETURN
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,27 @@
|
|||
IF OBJECT_ID('dbo.fnGetDokumentumOrakezdetToOraszam') IS NOT NULL BEGIN
|
||||
DROP FUNCTION dbo.fnGetDokumentumOrakezdetToOraszam
|
||||
END
|
||||
GO
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE FUNCTION dbo.fnGetDokumentumOrakezdetToOraszam (@oraKezdete VARCHAR(5), @tanevId INT)
|
||||
RETURNS INT
|
||||
BEGIN
|
||||
DECLARE @value INT
|
||||
SELECT
|
||||
@value = ISNULL(MAX(C_ORASZAM), 0)
|
||||
FROM T_CSENGETESIRENDORA_OSSZES CsengetesiRendOra
|
||||
INNER JOIN T_CSENGETESIREND_OSSZES CsengetesiRend ON CsengetesiRend.Id = CsengetesiRendOra.C_CSENGETESIRENDID
|
||||
WHERE
|
||||
CsengetesiRendOra.C_TANEVID = @tanevId
|
||||
AND CsengetesiRendOra.TOROLT = 'F'
|
||||
AND CsengetesiRend.TOROLT = 'F'
|
||||
AND CsengetesiRend.C_AKTIV = 'T'
|
||||
AND CONVERT(VARCHAR(5), C_KEZDETE, 108) <= @oraKezdete
|
||||
|
||||
RETURN @value
|
||||
END
|
|
@ -0,0 +1,28 @@
|
|||
IF OBJECT_ID('fnGetDokumentumOsszefuggoSzakmaiGyakorlat') IS NOT NULL BEGIN
|
||||
DROP FUNCTION fnGetDokumentumOsszefuggoSzakmaiGyakorlat
|
||||
END
|
||||
GO
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumOsszefuggoSzakmaiGyakorlat(@tanevId INT, @osztalyId INT)
|
||||
RETURNS TABLE
|
||||
RETURN (
|
||||
SELECT
|
||||
Tanulok.TanuloId TanuloId
|
||||
,Tanulok.TanuloCsoportId TanuloCsoportId
|
||||
,C_TELJESITETT isTeljesitett
|
||||
,ISNULL(Ertekeles.C_ERTEKELESSZOVEG, Osztalyzat.C_VALUE) Ertekeles
|
||||
,'[' + C_MEGJEGYZES + ']' Megjegyzes
|
||||
,dbo.fnGetDokumentumDatumFormatum(OsszefuggoSzakGyak.C_TELJESITESDATUM) Datum
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi (@tanevid, @osztalyid, 'T') Tanulok
|
||||
INNER JOIN T_OSSZEFUGGOSZAKGYAK_OSSZES OsszefuggoSzakGyak ON OsszefuggoSzakGyak.C_TANULOID = Tanulok.TanuloId AND OsszefuggoSzakGyak.TOROLT = 'F' AND OsszefuggoSzakGyak.C_TANEVID = @tanevid
|
||||
LEFT JOIN T_TANULOERTEKELES_OSSZES Ertekeles ON Ertekeles.C_OSSZEFUGGOSZAKGYAKID = OsszefuggoSzakGyak.ID AND Ertekeles.TOROLT = 'F' AND Ertekeles.C_TANEVID = @tanevid
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES Osztalyzat ON Osztalyzat.ID = Ertekeles.C_ERTEKELESOSZTALYZATID AND Osztalyzat.C_TANEVID = @tanevid
|
||||
WHERE
|
||||
Tanulok.BelepesDatum <= OsszefuggoSzakGyak.C_TELJESITESDATUM
|
||||
AND (Tanulok.KilepesDatum >= OsszefuggoSzakGyak.C_TELJESITESDATUM OR Tanulok.KilepesDatum IS NULL)
|
||||
)
|
|
@ -0,0 +1,35 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('fnGetDokumentumOsztalyMegtartottOrakSzama') IS NOT NULL
|
||||
BEGIN
|
||||
DROP FUNCTION fnGetDokumentumOsztalyMegtartottOrakSzama
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumOsztalyMegtartottOrakSzama (@tanevId INT, @osztalyId INT)
|
||||
RETURNS TABLE
|
||||
RETURN (
|
||||
SELECT
|
||||
naptariNap.C_NAPDATUMA AS Datum
|
||||
,Oraszam.Orakszama AS OrakSzama
|
||||
FROM T_NAPTARINAP_OSSZES naptariNap
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
COUNT(DISTINCT C_ORAKEZDETE) AS Orakszama
|
||||
,C_DATUM AS Datum
|
||||
FROM T_TANITASIORA_OSSZES
|
||||
WHERE
|
||||
C_OSZTALYCSOPORTID IN (SELECT ID FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@osztalyId, @tanevId, DEFAULT, DEFAULT))
|
||||
AND TOROLT = 'F'
|
||||
AND C_MEGTARTOTT = 'T'
|
||||
GROUP BY C_DATUM
|
||||
) AS Oraszam ON Oraszam.Datum = naptariNap.C_NAPDATUMA
|
||||
WHERE
|
||||
C_TANEVID = @tanevId
|
||||
AND naptariNap.TOROLT = 'F'
|
||||
)
|
||||
|
||||
GO
|
|
@ -0,0 +1,21 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('fnGetDokumentumOsztalyTanuloinakMegtarthatoOrakTantargyankent') IS NOT NULL
|
||||
BEGIN
|
||||
DROP FUNCTION fnGetDokumentumOsztalyTanuloinakMegtarthatoOrakTantargyankent
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumOsztalyTanuloinakMegtarthatoOrakTantargyankent (@tanevId INT, @osztalyCsoportId INT, @atsoroltTanuloOrak BIT = 1, @tanitasiHetekSzamaVegzos INT, @tanitasiHetekSzamaNemVegzos INT, @isAltantargyBeszamitasa BIT)
|
||||
RETURNS TABLE
|
||||
RETURN (
|
||||
SELECT Megtarthato.Oraszam AS Orakszama, Megtarthato.TanuloId, Megtarthato.TantargyId,
|
||||
ISNULL(TANTARGY.C_NEVNYOMTATVANYBAN, TANTARGY.C_NEV) AS TantargyNev, C_FOTARGYE AS Fotargye, C_ALTANTARGYKENTNYOMTATVANYBAN AS Altargye, C_GYAKORLATI AS Gyakorlati
|
||||
FROM fnGetDokumentumTanulokEvesOraszamaiOsztalyonkent (@tanevId, @osztalyCsoportId, @tanitasiHetekSzamaVegzos, @tanitasiHetekSzamaNemVegzos, @isAltantargyBeszamitasa) AS Megtarthato
|
||||
INNER JOIN T_TANTARGY_OSSZES AS TANTARGY ON TANTARGY.ID = Megtarthato.TantargyId
|
||||
)
|
||||
|
||||
GO
|
|
@ -0,0 +1,53 @@
|
|||
DROP FUNCTION IF EXISTS fnGetDokumentumOsztalyTanuloinakMegtartottOrakTantargyankent
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumOsztalyTanuloinakMegtartottOrakTantargyankent (
|
||||
@tanevId int
|
||||
,@osztalyCsoportId int
|
||||
)
|
||||
RETURNS @result TABLE (
|
||||
Orakszama int
|
||||
,TanuloId int
|
||||
,TantargyId int
|
||||
,TantargyNev nvarchar(255)
|
||||
,Fotargye char(1)
|
||||
,Altargye char(1)
|
||||
,Gyakorlati char(1)
|
||||
)
|
||||
AS BEGIN
|
||||
|
||||
DECLARE @kategoriaId int = (SELECT C_FELADATKATEGORIAID FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztalyCsoportId)
|
||||
|
||||
INSERT INTO @result
|
||||
SELECT
|
||||
COUNT(1) AS Orakszama
|
||||
,tcs.C_TANULOID AS TanuloId
|
||||
,tgy.ID AS TantargyId
|
||||
,ISNULL(tgy.C_NEVNYOMTATVANYBAN, tgy.C_NEV) AS TantargyNev
|
||||
,C_FOTARGYE AS Fotargye
|
||||
,C_ALTANTARGYKENTNYOMTATVANYBAN AS Altargye
|
||||
,C_GYAKORLATI AS Gyakorlati
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES AS tcsAll ON tcsAll.C_TANULOID = tcs.C_TANULOID AND tcsAll.TOROLT='F'
|
||||
INNER JOIN T_TANITASIORA_OSSZES AS tao ON tao.C_OSZTALYCSOPORTID = tcsAll.C_OSZTALYCSOPORTID AND tao.TOROLT='F'
|
||||
AND tao.C_DATUM >= tcsAll.C_BELEPESDATUM AND (tcsAll.C_KILEPESDATUM IS NULL OR tcsAll.C_KILEPESDATUM >=tao.C_DATUM)
|
||||
AND tao.C_DATUM >= tcs.C_BELEPESDATUM AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM >= tao.C_DATUM)
|
||||
AND tao.C_OSZTALYCSOPORTID IN (SELECT Id FROM fnGetDokumentumOsztalyVagyTanoraiCsoport(@tanevId))
|
||||
AND tao.C_MEGTARTOTT = 'T'
|
||||
AND tao.C_TANEVID = @TanevId
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES AS ocs ON ocs.ID = tao.C_OSZTALYCSOPORTID AND ocs.TOROLT='F'
|
||||
AND ocs.C_FELADATKATEGORIAID = @kategoriaId AND ocs.C_TANEVID = @TanevId
|
||||
INNER JOIN T_TANTARGY_OSSZES AS tgy ON tgy.ID = tao.C_TANTARGYID AND tgy.TOROLT='F'
|
||||
AND tgy.C_TANEVID = @TanevId
|
||||
WHERE tcs.C_OSZTALYCSOPORTID = @osztalyCsoportId AND tcs.TOROLT='F'
|
||||
GROUP BY
|
||||
tcs.C_TANULOID
|
||||
,tgy.ID
|
||||
,C_GYAKORLATI
|
||||
,tgy.C_NEVNYOMTATVANYBAN
|
||||
,tgy.C_NEV
|
||||
,tgy.C_FOTARGYE
|
||||
,tgy.C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
RETURN
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,24 @@
|
|||
IF OBJECT_ID('fnGetDokumentumOsztalyVagyTanoraiCsoport') IS NOT NULL BEGIN
|
||||
DROP FUNCTION fnGetDokumentumOsztalyVagyTanoraiCsoport
|
||||
END
|
||||
GO
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumOsztalyVagyTanoraiCsoport (@tanevId int)
|
||||
RETURNS TABLE
|
||||
RETURN (
|
||||
SELECT
|
||||
T_OSZTALYCSOPORT_OSSZES.ID
|
||||
FROM T_OSZTALYCSOPORT_OSSZES
|
||||
WHERE
|
||||
( EXISTS (SELECT TOP 1 ID FROM T_OSZTALY_OSSZES WHERE T_OSZTALY_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.ID )
|
||||
OR
|
||||
EXISTS (SELECT TOP 1 ID FROM T_CSOPORT_OSSZES WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@tanevId)) AND T_CSOPORT_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.ID)
|
||||
)
|
||||
AND T_OSZTALYCSOPORT_OSSZES.C_TANEVID = @tanevId
|
||||
AND TOROLT = 'F'
|
||||
)
|
|
@ -0,0 +1,47 @@
|
|||
IF OBJECT_ID('fnGetDokumentumOsztalyokCsoportokTanuloi') IS NOT NULL BEGIN
|
||||
DROP FUNCTION fnGetDokumentumOsztalyokCsoportokTanuloi
|
||||
END
|
||||
GO
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumOsztalyokCsoportokTanuloi (@tanevId INT, @osztalyId INT, @isKilepettTanulokMegjelenjenek NVARCHAR(1))
|
||||
RETURNS TABLE
|
||||
RETURN (
|
||||
SELECT DISTINCT
|
||||
C_TANULOID AS TanuloId
|
||||
,tanuloCsoport.ID AS TanuloCsoportId
|
||||
,tanuloCsoport.C_BELEPESDATUM AS BelepesDatum
|
||||
,tanuloCsoport.C_KILEPESDATUM AS KilepesDatum
|
||||
--OKJ
|
||||
,IIF(tanugyiAdatok.C_AGAZATID IS NULL,osztalyAdatok.C_AGAZAT, tanugyiAdatok.C_AGAZATID) AgazatId
|
||||
,IIF(tanugyiAdatok.C_SZAKKEPESITESID IS NULL,osztalyAdatok.C_SZAKKEPESITES, tanugyiAdatok.C_SZAKKEPESITESID) SzakkepesitesId
|
||||
,IIF(tanugyiAdatok.C_RESZSZAKKEPESITESID IS NULL,osztalyAdatok.C_RESZSZAKKEPESITES, tanugyiAdatok.C_RESZSZAKKEPESITESID) ReszSzakkepeitesId
|
||||
,IIF(tanugyiAdatok.C_SZAKMACSOPORTID IS NULL,osztalyAdatok.C_SZAKMACSOPORT, tanugyiAdatok.C_SZAKMACSOPORTID) SzakmaCsoportId
|
||||
--SZKT
|
||||
,IIF(tanugyiAdatok.C_AGAZATUJSZKTTIPUSID IS NULL,osztalyAdatok.C_AGAZATUJSZKTTIPUSID, tanugyiAdatok.C_AGAZATUJSZKTTIPUSID) AgazatTipusId
|
||||
,IIF(tanugyiAdatok.C_SZAKMATIPUSID IS NULL,osztalyAdatok.C_SZAKMATIPUSID, tanugyiAdatok.C_SZAKMATIPUSID) SzakmaTipusId
|
||||
,IIF(tanugyiAdatok.C_SZAKMAIRANYTIPUSID IS NULL,osztalyAdatok.C_SZAKMAIRANYTIPUSID, tanugyiAdatok.C_SZAKMAIRANYTIPUSID) SzakiranyTipusId
|
||||
--NKT
|
||||
,IIF(tanugyiAdatok.C_SZAKIRANYNKTTIPUSID IS NULL,osztalyAdatok.C_SZAKIRANYNKTTIPUSID, tanugyiAdatok.C_SZAKIRANYNKTTIPUSID) NktSzakiranyTipusId
|
||||
,IIF(tanugyiAdatok.C_SZAKKEPESITESNKTTIPUSID IS NULL,osztalyAdatok.C_SZAKKEPESITESNKTTIPUSID, tanugyiAdatok.C_SZAKKEPESITESNKTTIPUSID) NktSzakkepesitesTipusId
|
||||
,IIF(tanugyiAdatok.C_TANULMANYITERULETNKTTIPUSID IS NULL,osztalyAdatok.C_TANULMANYITERULETNKTTIPUSID, tanugyiAdatok.C_TANULMANYITERULETNKTTIPUSID) NktTanulmanyiTeruletId
|
||||
--Részszakma
|
||||
,tanugyiAdatok.C_AGAZATRESZSZAKMATIPUSID AgazatReszszakmaTipusId
|
||||
,tanugyiAdatok.C_RESZSZAKMATIPUSID ReszszakmaTipusId
|
||||
,tanugyiAdatok.C_SZAKMARESZSZAKMATIPUSID SzakmaReszszakmaId
|
||||
|
||||
,tanugyiAdatok.C_NAPLOSORSZAM AS NaploSorszam
|
||||
,tanugyiAdatok.C_TORZSLAPSZAM AS Torzslapszam
|
||||
,tanugyiAdatok.C_BEIRASINAPLOSORSZAM AS BeirasiNaploSorszam
|
||||
FROM T_TANULOCSOPORT_OSSZES tanuloCsoport
|
||||
LEFT JOIN T_TANULOTANUGYIADATOK_OSSZES tanugyiAdatok ON tanugyiAdatok.C_TANULOCSOPORTID = tanuloCsoport.ID AND tanugyiAdatok.TOROLT = 'F'
|
||||
LEFT JOIN T_OSZTALY_OSSZES osztalyAdatok ON osztalyAdatok.ID = tanuloCsoport.C_OSZTALYCSOPORTID AND osztalyAdatok.TOROLT = 'F'
|
||||
WHERE
|
||||
tanuloCsoport.C_OSZTALYCSOPORTID = @osztalyId
|
||||
AND tanuloCsoport.C_TANEVID = @tanevId
|
||||
AND tanuloCsoport.TOROLT = 'F'
|
||||
)
|
|
@ -0,0 +1,69 @@
|
|||
DROP FUNCTION IF EXISTS dbo.fnGetDokumentumPedagogusOraszam
|
||||
GO
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE FUNCTION dbo.fnGetDokumentumPedagogusOraszam (@PedagogusId INT, @isKlebersberg BIT)
|
||||
RETURNS NVARCHAR(MAX)
|
||||
BEGIN
|
||||
DECLARE @value NVARCHAR(MAX)
|
||||
IF (@isKlebersberg = 0)
|
||||
BEGIN
|
||||
SET @value = (SELECT TOP 1 CAST(C_KOTELEZOORASZAM AS NVARCHAR(MAX)) FROM T_MUNKAUGYIADATOK_OSSZES WHERE C_ALKALMAZOTTID = @PedagogusId AND TOROLT = 'F')
|
||||
END
|
||||
|
||||
ELSE
|
||||
|
||||
BEGIN
|
||||
DECLARE @isKollegium INT =(
|
||||
SELECT TOP 1
|
||||
munk.C_ALKALMAZOTTID
|
||||
FROM T_MUNKAUGYIADATOK_OSSZES munk
|
||||
INNER JOIN T_FELADATELLATASIHELY_OSSZES fhely ON fhely.Id = munk.C_FELADATELLATASIHELYID
|
||||
WHERE fhely.C_OKTATASINEVELESIFELADATTIPUS = 1165
|
||||
AND munk.TOROLT = 'F'
|
||||
AND fhely.TOROLT = 'F'
|
||||
AND munk.C_ALKALMAZOTTID = @PedagogusId)
|
||||
|
||||
DECLARE @isEgyMi INT=(
|
||||
SELECT TOP 1
|
||||
munk.C_ALKALMAZOTTID
|
||||
FROM T_MUNKAUGYIADATOK_OSSZES munk
|
||||
INNER JOIN T_FELADATELLATASIHELY_OSSZES fhely ON fhely.Id = munk.C_FELADATELLATASIHELYID
|
||||
WHERE fhely.C_OKTATASINEVELESIFELADATTIPUS IN (1177 /* óvoda gyógy.*/, 1178 /*ált. isk. gyógyp.*/, 6711 /*utazó gyógyp.*/, 1173 /*konduktív ped. ell*/, 6570 /*fejlesztő nev-okt*/)
|
||||
AND munk.C_MUNKAKORTIPUSA IN (597 /*gyógypedagógus*/, 598 /*konduktor*/, 555 /*logopédus*/, 6421 /*pszichopedagógus*/)
|
||||
AND munk.C_ALKALMAZOTTID = @PedagogusId
|
||||
AND munk.TOROLT = 'F'
|
||||
AND fhely.TOROLT = 'F')
|
||||
|
||||
SELECT DISTINCT @value =
|
||||
IIF(C_VEZETOIORASZAMOK != 6571, CAST(C_KOTELEZOORASZAM AS NVARCHAR(MAX)) + ' (vezető)', --van vezetői óraszáma, ha nincs
|
||||
--ha teljes munkaidős
|
||||
CASE
|
||||
WHEN C_FOGLALKOZTATASTIPUS = 6465 AND C_MUNKAKORTIPUSA NOT IN (557,559,560,561,562,563,564,565,566,567,568,583,584,585,589,594,633,3026,6382,6388,6421,6438,7356, --ha teljes munkaidős és nem NOKS
|
||||
569,6345,6346,572,582,581,6404,571,586,588,587,6347,570,590) -- és nem egyéb
|
||||
THEN IIF(@isKollegium IS NOT NULL, '30', --ha kollégiumi feh-n alkalmazott, ha nem
|
||||
IIF(C_SZAKERTOMESTERPEDAGOGUS = 'T', '18', --ha szakértőmesterpedagógus, ha nem
|
||||
IIF(@isEgyMi IS NOT NULL, '20', --ha gyógypedagógus, ha nem
|
||||
IIF(C_BESOROLASIFOKOZAT = 3044, '20', --ha gyakornok, ha nem akkor
|
||||
'22-26'))))
|
||||
WHEN C_FOGLALKOZTATASTIPUS = 6466 --Részmunkaidős
|
||||
THEN CAST(C_RESZMUNKAIDOSZAZALEK AS NVARCHAR(MAX)) + '%'
|
||||
WHEN C_FOGLALKOZTATASTIPUS = 6467 --Óraadó
|
||||
THEN CAST(C_KOTELEZOORASZAM AS NVARCHAR(MAX))
|
||||
ELSE --betöltetlen álláshely
|
||||
'-'
|
||||
END
|
||||
)
|
||||
FROM T_MUNKAUGYIADATOK_OSSZES munk
|
||||
WHERE munk.TOROLT = 'F'
|
||||
AND munk.C_ALKALMAZOTTID = @PedagogusId
|
||||
|
||||
END
|
||||
|
||||
RETURN @value
|
||||
|
||||
END;
|
|
@ -0,0 +1,21 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('fnGetDokumentumRendszerbeallitasLogikaiErtek') IS NOT NULL
|
||||
BEGIN
|
||||
DROP FUNCTION fnGetDokumentumRendszerbeallitasLogikaiErtek
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumRendszerbeallitasLogikaiErtek (
|
||||
@tanevId INT,
|
||||
@beallitasTipusId INT
|
||||
) RETURNS TABLE
|
||||
RETURN (
|
||||
SELECT TOP (1) IIF(C_ERTEK LIKE '%value%:%true%', 1, 0) AS LogikaiErtek
|
||||
FROM T_RENDSZERBEALLITAS_OSSZES
|
||||
WHERE C_BEALLITASTIPUS = @beallitasTipusId AND C_TANEVID = @tanevId AND TOROLT = 'F'
|
||||
)
|
||||
GO
|
|
@ -0,0 +1,26 @@
|
|||
|
||||
IF OBJECT_ID('dbo.fnGetDokumentumTanuloAktualisCsoportvezeto') IS NOT NULL BEGIN
|
||||
DROP FUNCTION dbo.fnGetDokumentumTanuloAktualisCsoportvezeto
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE FUNCTION dbo.fnGetDokumentumTanuloAktualisCsoportvezeto (@tanuloId INT, @osztalyCsoportId INT)
|
||||
RETURNS NVARCHAR(MAX)
|
||||
BEGIN
|
||||
DECLARE @value NVARCHAR(MAX)
|
||||
|
||||
SELECT TOP 1
|
||||
@value = f.C_NYOMTATASINEV
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_CSOPORT_OSSZES cs ON tcs.C_OSZTALYCSOPORTID = cs.ID
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON cs.C_CSOPORTVEZETOID = f.ID
|
||||
WHERE
|
||||
tcs.C_TANULOID = @tanuloId
|
||||
AND tcs.C_OSZTALYCSOPORTID = @osztalyCsoportId
|
||||
AND tcs.TOROLT = 'F'
|
||||
ORDER BY C_KILEPESDATUM
|
||||
|
||||
RETURN @value
|
||||
END;
|
||||
GO
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
DROP FUNCTION IF EXISTS fnGetDokumentumTanuloAktualisOsztaly
|
||||
GO
|
||||
|
||||
CREATE FUNCTION dbo.fnGetDokumentumTanuloAktualisOsztaly (@tanuloId INT)
|
||||
RETURNS NVARCHAR(MAX)
|
||||
BEGIN
|
||||
DECLARE @value NVARCHAR(MAX)
|
||||
SELECT TOP 1
|
||||
@value = ocs.C_NEV
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON tcs.C_OSZTALYCSOPORTID = o.ID
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID
|
||||
WHERE C_TANULOID = @tanuloId AND tcs.TOROLT = 'F'
|
||||
ORDER BY C_KILEPESDATUM
|
||||
RETURN @value
|
||||
END;
|
||||
GO
|
||||
|
|
@ -0,0 +1,25 @@
|
|||
|
||||
IF OBJECT_ID('dbo.fnGetDokumentumTanuloAktualisOsztalyId') IS NOT NULL BEGIN
|
||||
DROP FUNCTION dbo.fnGetDokumentumTanuloAktualisOsztalyId
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE FUNCTION dbo.fnGetDokumentumTanuloAktualisOsztalyId (@tanuloId INT)
|
||||
RETURNS INT
|
||||
BEGIN
|
||||
DECLARE @value INT
|
||||
|
||||
SELECT TOP 1
|
||||
@value = ocs.ID
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON tcs.C_OSZTALYCSOPORTID = o.ID
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID
|
||||
WHERE
|
||||
C_TANULOID = @tanuloId
|
||||
AND tcs.TOROLT = 'F'
|
||||
ORDER BY C_KILEPESDATUM
|
||||
|
||||
RETURN @value
|
||||
END;
|
||||
GO
|
||||
|
|
@ -0,0 +1,25 @@
|
|||
|
||||
IF OBJECT_ID('dbo.fnGetDokumentumTanuloAktualisOsztalyfonok') IS NOT NULL BEGIN
|
||||
DROP FUNCTION dbo.fnGetDokumentumTanuloAktualisOsztalyfonok
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE FUNCTION dbo.fnGetDokumentumTanuloAktualisOsztalyfonok (@tanuloId INT)
|
||||
RETURNS NVARCHAR(MAX)
|
||||
BEGIN
|
||||
DECLARE @value NVARCHAR(MAX)
|
||||
|
||||
SELECT TOP 1
|
||||
@value = f.C_NYOMTATASINEV
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON tcs.C_OSZTALYCSOPORTID = o.ID
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON o.C_OSZTALYFONOKID = f.ID
|
||||
WHERE
|
||||
C_TANULOID = @tanuloId
|
||||
AND tcs.TOROLT = 'F'
|
||||
ORDER BY C_KILEPESDATUM
|
||||
|
||||
RETURN @value
|
||||
END;
|
||||
GO
|
||||
|
|
@ -0,0 +1,48 @@
|
|||
IF OBJECT_ID('fnGetDokumentumTanuloMentessegei') IS NOT NULL BEGIN
|
||||
DROP FUNCTION fnGetDokumentumTanuloMentessegei
|
||||
END
|
||||
GO
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumTanuloMentessegei (@tanevId INT, @osztalyId INT, @nyomtatvanyNyelvEnum INT = 0)
|
||||
RETURNS TABLE
|
||||
RETURN (
|
||||
|
||||
SELECT
|
||||
OsztalyTanuloi.TanuloId TanuloId
|
||||
,OsztalyTanuloi.TanuloCsoportId TanuloCsoportId
|
||||
,mentesseg.mentessegOka MentessegOka
|
||||
,mentesseg.tantargyNev + ' ' + ISNULL(IIF(mentesseg = '', '', '(' + LEFT(mentesseg, LEN(mentesseg)- 1) + ')'),' ') TantargyNev
|
||||
,mentesseg.tantargyNev TantargyNevMentessegNelkul
|
||||
,C_KEZDETE Kezdete
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') OsztalyTanuloi
|
||||
INNER JOIN (SELECT DISTINCT
|
||||
mentesseg.C_TANULOID tanuloId
|
||||
,s.TanuloCsoportId
|
||||
,CASE
|
||||
WHEN @nyomtatvanyNyelvEnum = 0 THEN
|
||||
IIF(t.C_NEV <> C_NEVNYOMTATVANYBAN AND C_NEVNYOMTATVANYBAN IS NOT NULL, C_NEVNYOMTATVANYBAN + ' (' + t.C_NEV + ')', t.C_NEV)
|
||||
WHEN @nyomtatvanyNyelvEnum = 1 THEN
|
||||
ISNULL(C_NEMETNEV, IIF(t.C_NEV <> C_NEVNYOMTATVANYBAN AND C_NEVNYOMTATVANYBAN IS NOT NULL, C_NEVNYOMTATVANYBAN + ' (' + t.C_NEV + ')', t.C_NEV) )
|
||||
WHEN @nyomtatvanyNyelvEnum = 2 THEN
|
||||
ISNULL(C_ANGOLNEV, IIF(t.C_NEV <> C_NEVNYOMTATVANYBAN AND C_NEVNYOMTATVANYBAN IS NOT NULL, C_NEVNYOMTATVANYBAN + ' (' + t.C_NEV + ')', t.C_NEV) )
|
||||
END tantargyNev
|
||||
,CASE
|
||||
WHEN C_KEZDETE IS NULL AND C_VEGE IS NULL THEN mentesseg.C_MENTESSEGOKA
|
||||
WHEN C_KEZDETE IS NOT NULL AND C_VEGE IS NOT NULL THEN mentesseg.C_MENTESSEGOKA + ' ' + '(a felmentés érvényessége: ' + FORMAT(C_KEZDETE, 'yyyy.MM.dd.') + ' - ' + FORMAT(C_VEGE, 'yyyy.MM.dd.') + ')'
|
||||
WHEN C_KEZDETE IS NULL AND C_VEGE IS NOT NULL THEN mentesseg.C_MENTESSEGOKA + ' ' + '(a felmentés érvényessége: ' + ' - ' + FORMAT(C_VEGE, 'yyyy.MM.dd.') + ')'
|
||||
WHEN C_KEZDETE IS NOT NULL AND C_VEGE IS NULL THEN mentesseg.C_MENTESSEGOKA + ' ' + '(a felmentés érvényessége: ' + FORMAT(C_KEZDETE, 'yyyy.MM.dd.') + ' - ' + ')'
|
||||
END AS mentessegOka
|
||||
,IIF(mentesseg.C_ERTEKELESMENTESITES = 'T', 'Értékelésmentesség, ', '') + IIF(mentesseg.C_ORAMENTESITES = 'T', 'Óramentesség, ', '') as mentesseg
|
||||
,mentesseg.C_KEZDETE
|
||||
FROM T_TANULOMENTESSEG_OSSZES mentesseg
|
||||
INNER JOIN T_TANTARGY_OSSZES t on t.ID = mentesseg.C_TANTARGYID
|
||||
INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') s ON s.TanuloId = mentesseg.C_TANULOID
|
||||
WHERE
|
||||
mentesseg.TOROLT='F'
|
||||
) mentesseg ON OsztalyTanuloi.TanuloId = mentesseg.TANULOID AND OsztalyTanuloi.TanuloCsoportId = mentesseg.TanuloCsoportId
|
||||
)
|
|
@ -0,0 +1,72 @@
|
|||
DROP FUNCTION IF EXISTS fnGetDokumentumTanuloOrGondviseloCim
|
||||
GO
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumTanuloOrGondviseloCim (@TanuloOrGondviselo BIT, @pTanevId INT, @pOsztalyId INT, @isAlapertelmezettTanuloCim BIT = NULL, @isAlapertelmezettGondviseloCim BIT = NULL)
|
||||
|
||||
RETURNS @result TABLE
|
||||
(
|
||||
TanuloId INT,
|
||||
Cim NVARCHAR(MAX),
|
||||
CimTipusa INT,
|
||||
GondviseloId INT,
|
||||
IsAlapertelmezett CHAR
|
||||
)
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
DECLARE @Magyarorszagmegnevezes NVARCHAR(20) = (SELECT dib_MO.C_NAME FROM T_DICTIONARYITEMBASE_OSSZES dib_MO WHERE dib_MO.ID = 765 AND dib_MO.C_TANEVID = @pTanevId AND dib_MO.TOROLT = 'F')
|
||||
|
||||
IF @TanuloOrGondviselo = 0
|
||||
BEGIN
|
||||
|
||||
INSERT INTO @result(TanuloId, Cim, CimTipusa, GondviseloId, IsAlapertelmezett)
|
||||
SELECT
|
||||
Tanulo.C_TANULOID AS TanuloId
|
||||
,ISNULL(dib_orszag.C_NAME,@Magyarorszagmegnevezes) + ', '
|
||||
+ cim.C_IRANYITOSZAM + ' ' + cim.C_VAROS + ', ' + cim.C_KOZTERULET + ' ' + cim.C_KOZTERULETJELLEGENEV + ' ' + cim.C_HAZSZAM + IIF(RIGHT(C_HAZSZAM, 1) = '.', '', '.') + ' ' + ISNULL(cim.C_EMELET + '/', '') + ISNULL(cim.C_AJTO, '') AS Cim
|
||||
,cim.C_CIMTIPUSA AS CimTipusa
|
||||
,cim.C_GONDVISELOID AS GondviseloId
|
||||
,cim.C_ALAPERTELMEZETT
|
||||
FROM T_TANULOCSOPORT_OSSZES Tanulo
|
||||
INNER JOIN T_CIM_OSSZES cim on cim.C_FELHASZNALOID = Tanulo.C_TANULOID AND cim.C_GONDVISELOID IS NULL AND cim.TOROLT = 'F'
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES cimTipusa on cimTipusa.ID = cim.C_CIMTIPUSA AND cimTipusa.C_TANEVID = @pTanevId
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES dib_orszag on dib_orszag.ID = cim.C_ORSZAG AND dib_orszag.C_TANEVID = @pTanevId AND dib_orszag.TOROLT = 'F'
|
||||
WHERE Tanulo.C_TANEVID = @pTanevId
|
||||
AND Tanulo.C_OSZTALYCSOPORTID = @pOsztalyId
|
||||
AND Tanulo.TOROLT = 'F'
|
||||
AND (@isAlapertelmezettTanuloCim IS NULL OR (@isAlapertelmezettTanuloCim = 0 AND cim.C_ALAPERTELMEZETT = 'F') OR (@isAlapertelmezettTanuloCim = 1 AND cim.C_ALAPERTELMEZETT = 'T'))
|
||||
ORDER BY cimTipusa.C_NAME ASC, cim.C_ALAPERTELMEZETT DESC
|
||||
|
||||
END
|
||||
ELSE IF @TanuloOrGondviselo = 1
|
||||
BEGIN
|
||||
|
||||
INSERT INTO @result(TanuloId, Cim, CimTipusa, GondviseloId, IsAlapertelmezett)
|
||||
SELECT
|
||||
Tanulo.C_TANULOID AS TanuloId
|
||||
,ISNULL(dib_orszag.C_NAME,@Magyarorszagmegnevezes) + ', '
|
||||
+ cim.C_IRANYITOSZAM + ' ' + cim.C_VAROS + ', ' + cim.C_KOZTERULET + ' ' + cim.C_KOZTERULETJELLEGENEV + ' ' + cim.C_HAZSZAM + IIF(RIGHT(C_HAZSZAM, 1) = '.', '', '.') + ' ' + ISNULL(cim.C_EMELET + '/', '') + ISNULL(cim.C_AJTO, '') AS Cim
|
||||
,cim.C_CIMTIPUSA AS CimTipusa
|
||||
,cim.C_GONDVISELOID AS GondviseloId
|
||||
,cim.C_ALAPERTELMEZETT
|
||||
FROM T_TANULOCSOPORT_OSSZES Tanulo
|
||||
INNER JOIN T_GONDVISELO_OSSZES Gondviselo ON Gondviselo.C_TANULOID = Tanulo.C_TANULOID
|
||||
INNER JOIN T_CIM_OSSZES cim ON cim.C_GONDVISELOID = Gondviselo.ID AND cim.TOROLT = 'F'
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES cimTipusa on cimTipusa.ID = cim.C_CIMTIPUSA AND cimTipusa.C_TANEVID = @pTanevId
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES dib_orszag on dib_orszag.ID = cim.C_ORSZAG AND dib_orszag.C_TANEVID = @pTanevId AND dib_orszag.TOROLT = 'F'
|
||||
WHERE Tanulo.C_TANEVID = @pTanevId
|
||||
AND Tanulo.C_OSZTALYCSOPORTID = @pOsztalyId
|
||||
AND Tanulo.TOROLT = 'F'
|
||||
AND (@isAlapertelmezettGondviseloCim IS NULL OR (@isAlapertelmezettGondviseloCim = 0 AND cim.C_ALAPERTELMEZETT = 'F') OR (@isAlapertelmezettGondviseloCim = 1 AND cim.C_ALAPERTELMEZETT = 'T'))
|
||||
ORDER BY cimTipusa.C_NAME ASC, cim.C_ALAPERTELMEZETT DESC
|
||||
|
||||
END
|
||||
|
||||
RETURN
|
||||
|
||||
END
|
|
@ -0,0 +1,79 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('fnGetDokumentumTanuloiAlapadatok') IS NOT NULL
|
||||
BEGIN
|
||||
DROP FUNCTION fnGetDokumentumTanuloiAlapadatok
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumTanuloiAlapadatok (@pOsztalyCsoportId INT, @pTanevId INT, @isKilepettTanulokMegjelenjenek NVARCHAR(1))
|
||||
RETURNS TABLE
|
||||
RETURN (
|
||||
SELECT DISTINCT
|
||||
tanuloID
|
||||
,torzslapSzam
|
||||
,oktAzon
|
||||
,tajSzam
|
||||
,anyjaNeve
|
||||
,szulHely
|
||||
,dbo.fnGetDokumentumDatumFormatum(szulIdo) AS szulIdo
|
||||
,IIF(socAdat = '', '', LEFT(socAdat, len(socAdat)- 1)) AS socAdat
|
||||
,kepzes
|
||||
,tanuloNeve
|
||||
,allampolgarsaga
|
||||
,diakIgazolvanySzam
|
||||
,dbo.fnGetDokumentumDatumFormatum(kilepesDatum) AS kilepesDatum
|
||||
,beirasiNaploSorszam
|
||||
FROM (
|
||||
SELECT
|
||||
t.ID AS tanuloID
|
||||
,f.C_NYILVANTARTASISZAM AS torzslapSzam
|
||||
,f.C_OKTATASIAZONOSITO AS oktAzon
|
||||
,f.C_TAJSZAM AS tajSzam
|
||||
,f.C_ANYJANEVE AS anyjaNeve
|
||||
,f.C_SZULETESIHELY AS szulHely
|
||||
,f.C_SZULETESIDATUM AS szulIdo
|
||||
,IIF(t.C_MAGANTANULO = 'T', 'Magántanuló (eü. ok), ', '') +
|
||||
IIF(t.C_JOGVISZONYATSZUNETELTETO = 'T', 'Jogviszony szüneteltetve, ', '') +
|
||||
IIF(t.C_SZAKMAIGYAKORLATON = 'T', 'Szakmai gyakorlat, ', '') +
|
||||
IIF(t.C_SZOCIALISTAMOGATAS = 'T', 'Szociális támogatás, ', '') +
|
||||
IIF(t.C_SAJATOSNEVELESU = 'T', 'Sajátos nevelési igényű, ', '') +
|
||||
IIF(t.C_BEJARO = 'T', 'Bejáró, ', '') AS socAdat
|
||||
,tt.C_NEV AS kepzes
|
||||
,f.C_NYOMTATASINEV AS tanuloNeve
|
||||
,d.C_NAME AS allampolgarsaga
|
||||
,t.C_DIAKIGAZOLVANYSZAM AS diakIgazolvanySzam
|
||||
,MAX(cs.C_KILEPESDATUM) AS kilepesDatum
|
||||
,t.C_BEIRASINAPLOSORSZAM AS beirasiNaploSorszam
|
||||
FROM T_TANULO_OSSZES t
|
||||
INNER JOIN dbo.fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyCsoportId, @isKilepettTanulokMegjelenjenek) osztalyokCsoportok ON osztalyokCsoportok.TanuloId = t.ID
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON f.ID = t.ID
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES cs ON osztalyokCsoportok.TanuloId = cs.C_TANULOID AND cs.C_OSZTALYCSOPORTID = @pOsztalyCsoportId AND cs.TOROLT = 'F'
|
||||
LEFT JOIN T_TANULOTANUGYIADATOK_OSSZES tta ON tta.C_TANULOCSOPORTID = cs.ID AND tta.TOROLT = 'F'
|
||||
LEFT JOIN T_TANTERV_OSSZES tt ON tt.ID = tta.C_TANTERVID
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES d on d.id=f.C_ALLAMPOLGARSAGA AND d.C_TANEVID = f.C_TANEVID AND d.C_INTEZMENYID = f.C_INTEZMENYID
|
||||
GROUP BY
|
||||
osztalyokCsoportok.TanuloId
|
||||
,t.ID, f.C_NYILVANTARTASISZAM
|
||||
,f.C_OKTATASIAZONOSITO
|
||||
,f.C_TAJSZAM
|
||||
,f.C_ANYJANEVE
|
||||
,f.C_SZULETESIHELY
|
||||
,f.C_SZULETESIDATUM
|
||||
,t.C_MAGANTANULO
|
||||
,t.C_JOGVISZONYATSZUNETELTETO
|
||||
,t.C_SZAKMAIGYAKORLATON
|
||||
,C_SAJATOSNEVELESU
|
||||
,t.C_BEJARO
|
||||
,t.C_SZOCIALISTAMOGATAS
|
||||
,tt.C_NEV
|
||||
,f.C_NYOMTATASINEV
|
||||
,d.C_NAME
|
||||
,t.C_DIAKIGAZOLVANYSZAM
|
||||
,t.C_BEIRASINAPLOSORSZAM
|
||||
) tbl
|
||||
)
|
||||
GO
|
|
@ -0,0 +1,116 @@
|
|||
DROP FUNCTION IF EXISTS fnGetDokumentumTanulokAdatai
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumTanulokAdatai (
|
||||
@tanevId int
|
||||
,@osztalyCsoportId int
|
||||
)
|
||||
RETURNS @tanuloAdatok TABLE (
|
||||
TanuloId int
|
||||
,TanuloCsoportId int
|
||||
,Sorszam int
|
||||
,TorzslapSzam varchar(1000)
|
||||
,OktAzon nvarchar(40)
|
||||
,TajSzam nvarchar(18)
|
||||
,AnyjaNeve nvarchar(128)
|
||||
,SzulHely nvarchar(100)
|
||||
,SzulIdo nvarchar(20)--formázás miatt
|
||||
,SocAdat nvarchar(200)
|
||||
,Kepzes nvarchar(510)
|
||||
,TanuloNeve nvarchar(510)
|
||||
,NevElotagNelkul nvarchar(510)
|
||||
,Allampolgarsaga nvarchar(500)
|
||||
,DiakIgazolvanySzam nvarchar(510)
|
||||
,KilepesDatum nvarchar(20) --formázás miatt
|
||||
,BeirasiNaploSorszam nvarchar(100)
|
||||
,AktualisOsztaly nvarchar(200)
|
||||
,AktualisOsztalyId int
|
||||
,AdottOsztaly nvarchar(200)
|
||||
,AdottOsztalyId int
|
||||
,BelepesDatum nvarchar(20) --formázás miatt
|
||||
)
|
||||
AS BEGIN
|
||||
|
||||
DECLARE @kategoriaId int = (SELECT C_FELADATKATEGORIAID FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztalyCsoportId)
|
||||
|
||||
INSERT INTO @tanuloAdatok
|
||||
SELECT DISTINCT
|
||||
tmp.TanuloId
|
||||
,tmp.TanuloCsoportId
|
||||
,tmp.Sorszam
|
||||
,tmp.TorzslapSzam
|
||||
,tmp.OktAzon
|
||||
,tmp.TajSzam
|
||||
,tmp.AnyjaNeve
|
||||
,tmp.SzulHely
|
||||
,dbo.fnGetDokumentumDatumFormatum(tmp.szulIdo) AS SzulIdo
|
||||
,tmp.SocAdat
|
||||
,tmp.Kepzes
|
||||
,tmp.TanuloNeve
|
||||
,tmp.NevElotagNelkul
|
||||
,tmp.Allampolgarsaga
|
||||
,tmp.DiakIgazolvanySzam
|
||||
,dbo.fnGetDokumentumDatumFormatum(tmp.KilepesDatum) AS KilepesDatum
|
||||
,tmp.BeirasiNaploSorszam
|
||||
,tmp.AktualisOsztaly
|
||||
,tmp.AktualisOsztalyId
|
||||
,tmp.AdottOsztaly
|
||||
,tmp.AdottOsztalyId
|
||||
,dbo.fnGetDokumentumDatumFormatum(tmp.BelepesDatum) AS BelepesDatum
|
||||
FROM (
|
||||
SELECT
|
||||
OsztalyCsoportTanuloi.TanuloId AS TanuloId
|
||||
,OsztalyCsoportTanuloi.TanuloCsoportId AS TanuloCsoportId
|
||||
,tta.C_NAPLOSORSZAM AS Sorszam
|
||||
,tta.C_TORZSLAPSZAM AS TorzslapSzam
|
||||
,Felhasznalo.C_OKTATASIAZONOSITO AS OktAzon
|
||||
,Felhasznalo.C_TAJSZAM AS TajSzam
|
||||
,Felhasznalo.C_ANYJANEVE AS AnyjaNeve
|
||||
,Felhasznalo.C_SZULETESIHELY AS SzulHely
|
||||
,Felhasznalo.C_SZULETESIDATUM AS SzulIdo
|
||||
,STUFF(IIF(tta.C_MAGANTANULO = 'T', N', Magántanuló / Egyéni munkarend ('
|
||||
+ ISNULL(MagantanulosagOka.C_NAME, N'-') + N')', N'')
|
||||
+ IIF(tta.C_JOGVISZONYATSZUNETELTETO = 'T', N', Jogviszony szüneteltetve', N'')
|
||||
+ IIF(tta.C_SZAKMAIGYAKORLATON = 'T', N', Szakmai gyakorlat', N'')
|
||||
+ IIF(Tanulo.C_SZOCIALISTAMOGATAS = 'T', N', Szociális támogatás', N'')
|
||||
+ IIF(tta.C_BEJARO = 'T', N', Bejáró', N''), 1, 2, '') AS SocAdat
|
||||
,Tanterv.C_NEV AS Kepzes
|
||||
,Felhasznalo.C_NYOMTATASINEV AS TanuloNeve
|
||||
,IIF(C_NEVSORREND = 'T',
|
||||
C_UTONEV + ' ' + C_VEZETEKNEV,
|
||||
C_VEZETEKNEV + ' ' + C_UTONEV) AS NevElotagNelkul
|
||||
,AllampolgarsagDic.C_NAME AS Allampolgarsaga
|
||||
,Tanulo.C_DIAKIGAZOLVANYSZAM AS DiakIgazolvanySzam
|
||||
,OsztalyCsoportTanuloi.KilepesDatum AS KilepesDatum
|
||||
,tta.C_BEIRASINAPLOSORSZAM AS BeirasiNaploSorszam
|
||||
,dbo.fnGetDokumentumTanuloAktualisOsztaly(OsztalyCsoportTanuloi.TanuloId) AS AktualisOsztaly
|
||||
,dbo.fnGetDokumentumTanuloAktualisOsztalyId(OsztalyCsoportTanuloi.TanuloId) AS AktualisOsztalyId
|
||||
,TanuloOsztaly.OsztalyNev AS AdottOsztaly
|
||||
,TanuloOsztaly.ID AS AdottOsztalyId
|
||||
,OsztalyCsoportTanuloi.BelepesDatum AS BelepesDatum
|
||||
FROM T_TANULO_OSSZES Tanulo
|
||||
INNER JOIN fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyCsoportId, 'T') OsztalyCsoportTanuloi ON OsztalyCsoportTanuloi.TanuloId = Tanulo.ID
|
||||
INNER JOIN T_FELHASZNALO_OSSZES Felhasznalo ON Felhasznalo.ID = Tanulo.ID
|
||||
AND Felhasznalo.TOROLT = 'F'
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES AllampolgarsagDic ON AllampolgarsagDic.ID = Felhasznalo.C_ALLAMPOLGARSAGA
|
||||
AND AllampolgarsagDic.C_TANEVID = Felhasznalo.C_TANEVID
|
||||
AND AllampolgarsagDic.TOROLT = 'F'
|
||||
OUTER APPLY (
|
||||
SELECT TOP 1
|
||||
ID
|
||||
,OsztalyNev
|
||||
FROM dbo.fnGetTanuloOsztaly(OsztalyCsoportTanuloi.TanuloId, OsztalyCsoportTanuloi.KilepesDatum, @kategoriaId, 1, DEFAULT)
|
||||
) TanuloOsztaly
|
||||
LEFT JOIN T_TANULOTANUGYIADATOK_OSSZES tta ON OsztalyCsoportTanuloi.TanuloCsoportId = tta.C_TANULOCSOPORTID
|
||||
LEFT JOIN T_TANTERV_OSSZES AS Tanterv ON Tanterv.ID = tta.C_TANTERVID
|
||||
AND Tanterv.TOROLT = 'F'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES MagantanulosagOka ON MagantanulosagOka.ID = tta.C_MAGANTANULOSAGANAKOKAID
|
||||
AND MagantanulosagOka.C_TANEVID = Felhasznalo.C_TANEVID
|
||||
AND MagantanulosagOka.TOROLT = 'F'
|
||||
WHERE Tanulo.TOROLT = 'F'
|
||||
) tmp
|
||||
|
||||
RETURN
|
||||
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,184 @@
|
|||
IF OBJECT_ID('fnGetDokumentumTanulokEvesOraszamaiOsztalyonkent') IS NOT NULL BEGIN
|
||||
DROP FUNCTION fnGetDokumentumTanulokEvesOraszamaiOsztalyonkent
|
||||
END
|
||||
GO
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumTanulokEvesOraszamaiOsztalyonkent (@tanevId INT, @osztalyId INT, @tanitasiHetekSzamaVegzos INT, @tanitasiHetekSzamaNemVegzos INT, @isFotantargyAltantargyEgyben BIT)
|
||||
RETURNS @result TABLE
|
||||
(
|
||||
TanuloId int,
|
||||
TantargyId int,
|
||||
Oraszam float
|
||||
)
|
||||
AS
|
||||
BEGIN
|
||||
DECLARE @feladatKategoriaId int = (SELECT C_FELADATKATEGORIAID FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztalyId)
|
||||
DECLARE @isVegzos NVARCHAR(1) = (SELECT C_VEGZOSEVFOLYAM FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztalyId)
|
||||
DECLARE @isKeresztfeleves NVARCHAR(1) = (SELECT C_KERESZTFELEVES FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztalyId)
|
||||
|
||||
DECLARE @utolsoNapForMindenVegzos DATE = (SELECT MIN(C_DATUM) FROM T_TANEVRENDJE_OSSZES WHERE C_OSSZESCSOPORTRAVONATKOZIK = 'T' AND C_NAPTIPUSA IN (1402, 7603) AND C_TANEVID = @tanevId AND TOROLT = 'F')
|
||||
DECLARE @utolsoNapForMindenNemVegzos DATE = (SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_OSSZESCSOPORTRAVONATKOZIK = 'T' AND C_NAPTIPUSA = 1395 AND C_TANEVID = @tanevId AND TOROLT = 'F')
|
||||
DECLARE @utolsoNapForOsztalyVegzos DATE = (
|
||||
SELECT MIN(C_DATUM) FROM T_TANEVRENDJE_OSSZES tr
|
||||
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON tr.ID = ocstr.C_TANEVRENDJEID
|
||||
WHERE C_NAPTIPUSA IN (1402, 7603) AND C_OSZTALYCSOPORTID = @osztalyId AND tr.TOROLT = 'F')
|
||||
DECLARE @utolsoNapForOsztalyNemVegzos DATE = (
|
||||
SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES tr
|
||||
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON tr.ID = ocstr.C_TANEVRENDJEID
|
||||
WHERE C_NAPTIPUSA = 1395 AND C_OSZTALYCSOPORTID = @osztalyId AND tr.TOROLT = 'F')
|
||||
|
||||
DECLARE @utolsoNapForMindenKeresztfelevesVegzos DATE = (SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_OSSZESCSOPORTRAVONATKOZIK = 'T' AND C_NAPTIPUSA = 7602 AND C_TANEVID = @tanevId AND TOROLT = 'F')
|
||||
DECLARE @utolsoNapForMindenKeresztfelevesNemVegzos DATE = (SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_OSSZESCSOPORTRAVONATKOZIK = 'T' AND C_NAPTIPUSA = 1400 AND C_TANEVID = @tanevId AND TOROLT = 'F')
|
||||
DECLARE @utolsoNapForOsztalyKeresztfelevesVegzos DATE = (
|
||||
SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES tr
|
||||
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON tr.ID = ocstr.C_TANEVRENDJEID
|
||||
WHERE C_NAPTIPUSA = 7602 AND C_OSZTALYCSOPORTID = @osztalyId AND tr.TOROLT = 'F')
|
||||
DECLARE @utolsoNapForOsztalyKeresztfelevesNemVegzos DATE = (
|
||||
SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES tr
|
||||
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON tr.ID = ocstr.C_TANEVRENDJEID
|
||||
WHERE C_NAPTIPUSA = 1400 AND C_OSZTALYCSOPORTID = @osztalyId AND tr.TOROLT = 'F')
|
||||
|
||||
DECLARE @utolsoNap DATE
|
||||
IF (@isKeresztfeleves = 'T')
|
||||
BEGIN
|
||||
IF (@isVegzos = 'T')
|
||||
BEGIN
|
||||
SET @utolsoNap = (SELECT COALESCE(@utolsoNapForOsztalyKeresztfelevesVegzos, @utolsoNapForMindenKeresztfelevesVegzos, @utolsoNapForOsztalyVegzos, @utolsoNapForMindenVegzos))
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SET @utolsoNap = (SELECT COALESCE(@utolsoNapForOsztalyKeresztfelevesNemVegzos, @utolsoNapForMindenKeresztfelevesNemVegzos, @utolsoNapForOsztalyNemVegzos, @utolsoNapForMindenNemVegzos))
|
||||
END
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
IF (@isVegzos = 'T')
|
||||
BEGIN
|
||||
SET @utolsoNap = (SELECT COALESCE(@utolsoNapForOsztalyVegzos, @utolsoNapForMindenVegzos, @utolsoNapForMindenNemVegzos))
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SET @utolsoNap = (SELECT COALESCE(@utolsoNapForOsztalyNemVegzos, @utolsoNapForMindenNemVegzos))
|
||||
END
|
||||
END
|
||||
|
||||
DECLARE @temp table (
|
||||
TanuloId int
|
||||
,FotargyId int
|
||||
,TantargyId int
|
||||
,Oraszam float
|
||||
,isFotargy nvarchar(1)
|
||||
,isAltantargykentNyomtatvanyban nvarchar(1)
|
||||
)
|
||||
|
||||
INSERT INTO @temp
|
||||
SELECT
|
||||
C_TANULOID
|
||||
,t.C_FOTARGYID
|
||||
,t.ID
|
||||
,fog.C_ORASZAM
|
||||
,t.C_FOTARGYE
|
||||
,t.C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_FOGLALKOZAS_OSSZES fog ON fog.C_OSZTALYCSOPORTID = tcs.C_OSZTALYCSOPORTID AND fog.TOROLT = 'F' AND fog.C_TANEVID = @tanevId
|
||||
INNER JOIN T_TANTARGY_OSSZES t on t.ID = fog.C_TANTARGYID AND t.C_TANEVID = @tanevId
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES AS ocs ON ocs.ID = tcs.C_OSZTALYCSOPORTID AND ocs.C_FELADATKATEGORIAID = @feladatKategoriaId AND ocs.C_TANEVID = @tanevID AND ocs.TOROLT = 'F'
|
||||
WHERE
|
||||
tcs.C_TANULOID IN (SELECT TanuloId FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T'))
|
||||
AND tcs.C_OSZTALYCSOPORTID IN (SELECT ID FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@osztalyId, @tanevId, DEFAULT, DEFAULT))
|
||||
AND tcs.TOROLT = 'F'
|
||||
AND tcs.C_TANEVID = @tanevId
|
||||
AND ISNULL(tcs.C_KILEPESDATUM, @utolsoNap) >= @utolsoNap
|
||||
|
||||
DECLARE @default table (
|
||||
TanuloId int
|
||||
,TantargyId int
|
||||
,Orasszam float
|
||||
)
|
||||
|
||||
INSERT INTO @default
|
||||
SELECT
|
||||
TanuloId
|
||||
,TantargyId
|
||||
,Oraszam * IIF(@isVegzos = 'T', @tanitasiHetekSzamaVegzos, @tanitasiHetekSzamaNemVegzos)
|
||||
FROM @temp
|
||||
WHERE
|
||||
isFotargy = 'T'
|
||||
UNION ALL
|
||||
SELECT
|
||||
TanuloId
|
||||
,TantargyId
|
||||
,Oraszam * IIF(@isVegzos = 'T', @tanitasiHetekSzamaVegzos, @tanitasiHetekSzamaNemVegzos)
|
||||
FROM @temp
|
||||
WHERE
|
||||
isAltantargykentNyomtatvanyban = 'T'
|
||||
UNION ALL
|
||||
SELECT
|
||||
TanuloId
|
||||
,TantargyId
|
||||
,Oraszam * IIF(@isVegzos = 'T', @tanitasiHetekSzamaVegzos, @tanitasiHetekSzamaNemVegzos)
|
||||
FROM @temp
|
||||
WHERE
|
||||
isFotargy = 'F' AND isAltantargykentNyomtatvanyban = 'F'
|
||||
UNION ALL
|
||||
SELECT
|
||||
TanuloId
|
||||
,FotargyId
|
||||
,0
|
||||
FROM @temp t1
|
||||
WHERE
|
||||
(isFotargy = 'F' OR isFotargy IS NULL) AND (isAltantargykentNyomtatvanyban = 'F' OR isAltantargykentNyomtatvanyban IS NULL)
|
||||
AND NOT EXISTS (SELECT TOP 1 t2.FotargyId FROM @temp t2 WHERE t2.FotargyId = t1. TantargyId)
|
||||
|
||||
DECLARE @altargy table (
|
||||
TanuloId int
|
||||
,FotargyId int
|
||||
,Oraszam float
|
||||
)
|
||||
|
||||
IF @isFotantargyAltantargyEgyben = 1
|
||||
BEGIN
|
||||
INSERT INTO @altargy
|
||||
SELECT
|
||||
TanuloId
|
||||
,FotargyId
|
||||
,SUM(Oraszam) * IIF(@isVegzos = 'T', @tanitasiHetekSzamaVegzos, @tanitasiHetekSzamaNemVegzos)
|
||||
FROM @temp t
|
||||
WHERE
|
||||
(isFotargy = 'F' OR isFotargy IS NULL) AND (isAltantargykentNyomtatvanyban = 'F' OR isAltantargykentNyomtatvanyban IS NULL)
|
||||
GROUP BY TanuloId, FotargyId
|
||||
END
|
||||
|
||||
IF @isFotantargyAltantargyEgyben = 0
|
||||
BEGIN
|
||||
INSERT INTO @result
|
||||
SELECT
|
||||
defaultTable.TanuloId
|
||||
,defaultTable.TantargyId
|
||||
,SUM(defaultTable.Orasszam)
|
||||
FROM @default defaultTable
|
||||
GROUP BY defaultTable.TanuloId, defaultTable.TantargyId
|
||||
END
|
||||
|
||||
ELSE
|
||||
|
||||
BEGIN
|
||||
INSERT INTO @result
|
||||
SELECT
|
||||
defaultTable.TanuloId
|
||||
,defaultTable.TantargyId
|
||||
,SUM(defaultTable.Orasszam) + ISNULL(altargy.Oraszam, 0)
|
||||
FROM @default defaultTable
|
||||
LEFT JOIN @altargy altargy ON altargy.TanuloId = defaultTable.TanuloId AND altargy.FotargyId = defaultTable.TantargyId
|
||||
GROUP BY defaultTable.TanuloId ,defaultTable.TantargyId, altargy.Oraszam
|
||||
END
|
||||
RETURN
|
||||
END
|
||||
|
||||
GO
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
DROP FUNCTION IF EXISTS fnGetDokumentumTanulokFeljegyzesei
|
||||
GO
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
CREATE FUNCTION fnGetDokumentumTanulokFeljegyzesei (@tanevId int, @osztalyId int, @idegenNyelvId int)
|
||||
RETURNS TABLE
|
||||
RETURN (
|
||||
SELECT
|
||||
tte.C_TANULOID AS TanuloId
|
||||
,te.ID AS EsemenyId
|
||||
,te.C_TARTALOM AS Tartalom
|
||||
,te.C_TIPUS AS Tipusa
|
||||
,feljegyezo.C_NYOMTATASINEV AS FeljegyzoNeve
|
||||
,feljegyezo.ID AS FeljegyzoId
|
||||
,te.C_ESEMENYDATUMA AS Datum
|
||||
,te.C_MEGJEGYZES AS Megjegyzes
|
||||
,teny.C_TARTALOM AS BejegyzesIdegenNyelven
|
||||
,te.C_ROGZITESKORIOSZTALYID AS RogziteskoriOsztalyId
|
||||
FROM T_TANULO_TANULOESEMENY tte
|
||||
INNER JOIN T_TANULOESEMENY_OSSZES te ON te.ID = tte.C_TANULOESEMENYID
|
||||
LEFT JOIN T_TANULOESEMENYNYELV_OSSZES teny ON teny.C_TANULOESEMENYID = te.ID AND teny.C_NYELVID = @idegenNyelvId AND teny.TOROLT = 'F'
|
||||
INNER JOIN T_FELHASZNALO_OSSZES feljegyezo ON feljegyezo.ID = te.C_FELJEGYZOID
|
||||
WHERE
|
||||
C_TANULOID IN (SELECT TanuloId FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T'))
|
||||
AND te.TOROLT = 'F'
|
||||
AND ((te.C_TIPUS NOT IN (1542, 6324, 6325)) AND (te.C_TIPUS <> 1536 OR te.C_TANITASIORAID IS NULL))
|
||||
)
|
|
@ -0,0 +1,63 @@
|
|||
DROP FUNCTION IF EXISTS fnGetDokumentumTanulokFeljegyzeseiHavibontasban
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumTanulokFeljegyzeseiHavibontasban (
|
||||
@tanevId int
|
||||
,@osztalyId int
|
||||
,@FelevVege date
|
||||
,@BelepesDatum datetime
|
||||
,@KilepesDatum datetime)
|
||||
RETURNS @result TABLE (
|
||||
TanuloId int
|
||||
,Tipus nvarchar (250)
|
||||
,Szeptember int
|
||||
,Oktober int
|
||||
,November int
|
||||
,December int
|
||||
,Januar int
|
||||
,Februar int
|
||||
,Marcius int
|
||||
,Aprilis int
|
||||
,Majus int
|
||||
,Junius int
|
||||
,Felev int
|
||||
,Ossz int
|
||||
)
|
||||
AS BEGIN
|
||||
|
||||
DECLARE @kategoriaId int = (SELECT C_FELADATKATEGORIAID FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztalyId)
|
||||
|
||||
INSERT INTO @result
|
||||
|
||||
SELECT
|
||||
tte.C_TANULOID AS TanuloId
|
||||
,d.C_NAME AS Tipus
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 9 THEN 1 ELSE 0 END) AS Szeptember
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 10 THEN 1 ELSE 0 END) AS Oktober
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 11 THEN 1 ELSE 0 END) AS November
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 12 THEN 1 ELSE 0 END) AS December
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 1 THEN 1 ELSE 0 END) AS Januar
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 2 THEN 1 ELSE 0 END) AS Februar
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 3 THEN 1 ELSE 0 END) AS Marcius
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 4 THEN 1 ELSE 0 END) AS Aprilis
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 5 THEN 1 ELSE 0 END) AS Majus
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 6 THEN 1 ELSE 0 END) AS Junius
|
||||
,SUM(CASE WHEN te.C_ESEMENYDATUMA <= @FelevVege THEN 1 ELSE 0 END) AS Felev
|
||||
,SUM(1) AS Ossz
|
||||
FROM T_TANULO_TANULOESEMENY tte
|
||||
INNER JOIN T_TANULOESEMENY_OSSZES te ON te.ID = tte.C_TANULOESEMENYID AND te.TOROLT = 'F'
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES d ON d.ID = te.C_TIPUS AND d.TOROLT = 'F' AND d.C_TANEVID = @tanevId
|
||||
LEFT JOIN T_TANITASIORA_OSSZES tOra ON tOra.ID = te.C_TANITASIORAID AND tOra.Torolt = 'F'
|
||||
LEFT JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = tOra.C_OSZTALYCSOPORTID AND ocs.C_FELADATKATEGORIAID = @kategoriaId AND ocs.Torolt = 'F'
|
||||
WHERE
|
||||
tte.C_TANULOID IN (SELECT TanuloId FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T'))
|
||||
AND te.TOROLT = 'F'
|
||||
AND ((te.C_TANITASIORAID IS NOT NULL AND tOra.ID IS NOT NULL AND ocs.ID IS NOT NULL) OR te.C_TANITASIORAID IS NULL)
|
||||
AND @BelepesDatum <= te.C_ESEMENYDATUMA
|
||||
AND (@KilepesDatum IS NULL OR @KilepesDatum >= te.C_ESEMENYDATUMA)
|
||||
AND te.C_TIPUS != 5482
|
||||
GROUP BY tte.C_TANULOID, d.C_NAME
|
||||
|
||||
RETURN
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,99 @@
|
|||
DROP FUNCTION IF EXISTS fnGetDokumentumTanulokGyorsFeljegyzeseiHavibontasban
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumTanulokGyorsFeljegyzeseiHavibontasban (
|
||||
@tanevId int
|
||||
,@osztalyId int
|
||||
,@tipusID int
|
||||
,@CsakOravalRendelkezo bit
|
||||
,@FelevVege date
|
||||
,@BelepesDatum datetime
|
||||
,@KilepesDatum datetime)
|
||||
RETURNS @result TABLE (
|
||||
TanuloId int
|
||||
,Tantargy nvarchar (255)
|
||||
,Szeptember int
|
||||
,Oktober int
|
||||
,November int
|
||||
,December int
|
||||
,Januar int
|
||||
,Februar int
|
||||
,Marcius int
|
||||
,Aprilis int
|
||||
,Majus int
|
||||
,Junius int
|
||||
,Felev int
|
||||
,Ossz int
|
||||
)
|
||||
AS BEGIN
|
||||
|
||||
DECLARE @kategoriaId int = (SELECT C_FELADATKATEGORIAID FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztalyId)
|
||||
|
||||
INSERT INTO @result
|
||||
|
||||
SELECT
|
||||
tte.C_TANULOID AS TanuloId
|
||||
,t.C_NEVNYOMTATVANYBAN AS Tantargy
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 9 THEN 1 ELSE 0 END) AS Szeptember
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 10 THEN 1 ELSE 0 END) AS Oktober
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 11 THEN 1 ELSE 0 END) AS November
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 12 THEN 1 ELSE 0 END) AS December
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 1 THEN 1 ELSE 0 END) AS Januar
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 2 THEN 1 ELSE 0 END) AS Februar
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 3 THEN 1 ELSE 0 END) AS Marcius
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 4 THEN 1 ELSE 0 END) AS Aprilis
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 5 THEN 1 ELSE 0 END) AS Majus
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 6 THEN 1 ELSE 0 END) AS Junius
|
||||
,SUM(CASE WHEN te.C_ESEMENYDATUMA <= @FelevVege THEN 1 ELSE 0 END) AS Felev
|
||||
,SUM(1) AS Ossz
|
||||
FROM T_TANULO_TANULOESEMENY tte
|
||||
INNER JOIN T_TANULOESEMENY_OSSZES te ON te.ID = tte.C_TANULOESEMENYID AND te.TOROLT = 'F'
|
||||
INNER JOIN T_TANTARGY_OSSZES t ON t.ID = te.C_TANTARGYID AND t.TOROLT = 'F'
|
||||
LEFT JOIN T_TANITASIORA_OSSZES tOra ON tOra.ID = te.C_TANITASIORAID AND tOra.Torolt = 'F'
|
||||
LEFT JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = tOra.C_OSZTALYCSOPORTID AND ocs.C_FELADATKATEGORIAID = @kategoriaId AND ocs.Torolt = 'F'
|
||||
WHERE
|
||||
tte.C_TANULOID IN (SELECT TanuloId FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T'))
|
||||
AND te.TOROLT = 'F'
|
||||
AND te.C_TIPUS = @tipusID
|
||||
AND ((@CsakOravalRendelkezo = 1 AND (te.C_TANITASIORAID IS NOT NULL AND tOra.ID IS NOT NULL AND ocs.ID IS NOT NULL))
|
||||
OR (@CsakOravalRendelkezo = 0 AND (te.C_TANITASIORAID IS NOT NULL AND tOra.ID IS NOT NULL AND ocs.ID IS NOT NULL) OR te.C_TANITASIORAID IS NULL)
|
||||
)
|
||||
AND @BelepesDatum <= te.C_ESEMENYDATUMA
|
||||
AND (@KilepesDatum IS NULL OR @KilepesDatum >= te.C_ESEMENYDATUMA)
|
||||
GROUP BY tte.C_TANULOID, t.C_NEVNYOMTATVANYBAN
|
||||
|
||||
UNION ALL
|
||||
SELECT
|
||||
tte.C_TANULOID AS TanuloId
|
||||
,N'Összesen' AS Tantargy
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 9 THEN 1 ELSE 0 END) AS Szeptember
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 10 THEN 1 ELSE 0 END) AS Oktober
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 11 THEN 1 ELSE 0 END) AS November
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 12 THEN 1 ELSE 0 END) AS December
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 1 THEN 1 ELSE 0 END) AS Januar
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 2 THEN 1 ELSE 0 END) AS Februar
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 3 THEN 1 ELSE 0 END) AS Marcius
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 4 THEN 1 ELSE 0 END) AS Aprilis
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 5 THEN 1 ELSE 0 END) AS Majus
|
||||
,SUM(CASE WHEN DATEPART(MONTH, te.C_ESEMENYDATUMA) = 6 THEN 1 ELSE 0 END) AS Junius
|
||||
,SUM(CASE WHEN te.C_ESEMENYDATUMA <= @FelevVege THEN 1 ELSE 0 END) AS Felev
|
||||
,SUM(1) AS Ossz
|
||||
FROM T_TANULO_TANULOESEMENY tte
|
||||
INNER JOIN T_TANULOESEMENY_OSSZES te ON te.ID = tte.C_TANULOESEMENYID AND te.TOROLT = 'F'
|
||||
INNER JOIN T_TANTARGY_OSSZES t ON t.ID = te.C_TANTARGYID AND t.TOROLT = 'F'
|
||||
LEFT JOIN T_TANITASIORA_OSSZES tOra ON tOra.ID = te.C_TANITASIORAID AND tOra.Torolt = 'F'
|
||||
LEFT JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = tOra.C_OSZTALYCSOPORTID AND ocs.C_FELADATKATEGORIAID = @kategoriaId AND ocs.Torolt = 'F'
|
||||
WHERE
|
||||
tte.C_TANULOID IN (SELECT TanuloId FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T'))
|
||||
AND te.TOROLT = 'F'
|
||||
AND te.C_TIPUS = @tipusID
|
||||
AND ((@CsakOravalRendelkezo = 1 AND (te.C_TANITASIORAID IS NOT NULL AND tOra.ID IS NOT NULL AND ocs.ID IS NOT NULL))
|
||||
OR (@CsakOravalRendelkezo = 0 AND (te.C_TANITASIORAID IS NOT NULL AND tOra.ID IS NOT NULL AND ocs.ID IS NOT NULL) OR te.C_TANITASIORAID IS NULL)
|
||||
)
|
||||
AND @BelepesDatum <= te.C_ESEMENYDATUMA
|
||||
AND (@KilepesDatum IS NULL OR @KilepesDatum >= te.C_ESEMENYDATUMA)
|
||||
GROUP BY tte.C_TANULOID
|
||||
|
||||
RETURN
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,27 @@
|
|||
IF OBJECT_ID('fnGetDokumentumTanulokOsztalybanToltottNapjai') IS NOT NULL BEGIN
|
||||
DROP FUNCTION fnGetDokumentumTanulokOsztalybanToltottNapjai
|
||||
END
|
||||
GO
|
||||
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumTanulokOsztalybanToltottNapjai (@tanevId INT, @osztalyId INT)
|
||||
RETURNS TABLE
|
||||
RETURN (
|
||||
SELECT
|
||||
C_TANULOID TanuloId
|
||||
, naptar.C_NAPDATUMA NapDatuma
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_NAPTARINAP_OSSZES naptar
|
||||
ON
|
||||
tcs.C_BELEPESDATUM <= naptar.C_NAPDATUMA
|
||||
AND ISNULL(tcs.C_KILEPESDATUM, (SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_NAPTIPUSA = 1395 AND C_TANEVID = @tanevId AND TOROLT = 'F')) >= naptar.C_NAPDATUMA
|
||||
AND naptar.C_TANEVID = @tanevId
|
||||
AND naptar.TOROLT = 'F'
|
||||
WHERE
|
||||
C_OSZTALYCSOPORTID = @osztalyId
|
||||
AND tcs.TOROLT = 'F'
|
||||
)
|
|
@ -0,0 +1,37 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('fnGetDokumentumTanulokTanultTantargyai') IS NOT NULL
|
||||
BEGIN
|
||||
DROP FUNCTION fnGetDokumentumTanulokTanultTantargyai
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetDokumentumTanulokTanultTantargyai (@tanevId INT, @osztalyCsoportId INT)
|
||||
RETURNS @retTanuloTantargyai TABLE
|
||||
(
|
||||
TanuloId INT,
|
||||
TanuloCsoportId INT,
|
||||
TantargyNev NVARCHAR(MAX)
|
||||
)
|
||||
AS
|
||||
BEGIN
|
||||
DECLARE @UtolsoNapTanevRendje DATE = (SELECT TOP 1 C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_NAPTIPUSA = 1395 AND C_TANEVID = @tanevId AND TOROLT = 'F')
|
||||
|
||||
INSERT INTO @retTanuloTantargyai
|
||||
SELECT DISTINCT
|
||||
OsztalyTanuloi.TanuloId TanuloId
|
||||
,OsztalyTanuloi.TanuloCsoportId TanuloCsoportId
|
||||
,Tantargy.C_NEV TantargyNev
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyCsoportId, 'T') OsztalyTanuloi
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES TanuloCsoport ON OsztalyTanuloi.TanuloId = TanuloCsoport.C_TANULOID AND TanuloCsoport.TOROLT = 'F'
|
||||
INNER JOIN T_FOGLALKOZAS_OSSZES Foglalkozas on TanuloCsoport.C_OSZTALYCSOPORTID = Foglalkozas.C_OSZTALYCSOPORTID AND Foglalkozas.TOROLT = 'F'
|
||||
INNER JOIN T_TANTARGY_OSSZES Tantargy ON Tantargy.ID = Foglalkozas.C_TANTARGYID AND Tantargy.TOROLT = 'F'
|
||||
WHERE
|
||||
(TanuloCsoport.C_KILEPESDATUM IS NULL OR TanuloCsoport.C_KILEPESDATUM BETWEEN OsztalyTanuloi.BelepesDatum AND ISNULL(OsztalyTanuloi.KilepesDatum, @UtolsoNapTanevRendje))
|
||||
|
||||
RETURN
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,128 @@
|
|||
DROP FUNCTION IF EXISTS fnGetElsoUtolsoTanitasiNapFelevVege
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetElsoUtolsoTanitasiNapFelevVege(@tanevId INT, @osztalyCsoportId INT)
|
||||
RETURNS @result TABLE
|
||||
(
|
||||
ElsoTanitasiNap datetime
|
||||
,UtolsoTanitasiNap datetime
|
||||
,FelevVege datetime
|
||||
)
|
||||
AS
|
||||
BEGIN
|
||||
DECLARE @isVegzos char(1) = (SELECT C_VEGZOSEVFOLYAM FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztalyCsoportId)
|
||||
DECLARE @isKeresztfeleves char(1) = (SELECT C_KERESZTFELEVES FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztalyCsoportId)
|
||||
|
||||
DECLARE @utolsoNapForMindenVegzos datetime = (
|
||||
SELECT TOP 1 C_DATUM
|
||||
FROM (
|
||||
SELECT C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
WHERE C_OSSZESCSOPORTRAVONATKOZIK = 'T'
|
||||
AND C_NAPTIPUSA IN (1402, 7600, 7601, 7603)
|
||||
AND C_TANEVID = @tanevId
|
||||
AND TOROLT = 'F') o ORDER BY C_DATUM)
|
||||
DECLARE @utolsoNapForMindenNemVegzos datetime = (SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_OSSZESCSOPORTRAVONATKOZIK = 'T' AND C_NAPTIPUSA = 1395 AND C_TANEVID = @tanevId AND TOROLT = 'F')
|
||||
DECLARE @utolsoNapForOsztalyVegzos datetime = (
|
||||
SELECT TOP 1 C_DATUM
|
||||
FROM (
|
||||
SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES tr
|
||||
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON tr.ID = ocstr.C_TANEVRENDJEID
|
||||
WHERE C_NAPTIPUSA IN (1402, 7600, 7601, 7603)
|
||||
AND C_OSZTALYCSOPORTID = @osztalyCsoportId
|
||||
AND tr.C_TANEVID = @tanevId
|
||||
AND tr.TOROLT = 'F') o ORDER BY C_DATUM)
|
||||
DECLARE @utolsoNapForOsztalyNemVegzos datetime = (
|
||||
SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES tr
|
||||
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON tr.ID = ocstr.C_TANEVRENDJEID
|
||||
WHERE C_NAPTIPUSA = 1395 AND C_OSZTALYCSOPORTID = @osztalyCsoportId AND tr.TOROLT = 'F')
|
||||
|
||||
DECLARE @utolsoNapForMindenKeresztfelevesVegzos datetime = (SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_OSSZESCSOPORTRAVONATKOZIK = 'T' AND C_NAPTIPUSA = 7602 AND C_TANEVID = @tanevId AND TOROLT = 'F')
|
||||
DECLARE @utolsoNapForMindenKeresztfelevesNemVegzos datetime = (SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_OSSZESCSOPORTRAVONATKOZIK = 'T' AND C_NAPTIPUSA = 1400 AND C_TANEVID = @tanevId AND TOROLT = 'F')
|
||||
DECLARE @utolsoNapForOsztalyKeresztfelevesVegzos datetime = (
|
||||
SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES tr
|
||||
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON tr.ID = ocstr.C_TANEVRENDJEID
|
||||
WHERE C_NAPTIPUSA = 7602 AND C_OSZTALYCSOPORTID = @osztalyCsoportId AND tr.TOROLT = 'F')
|
||||
DECLARE @utolsoNapForOsztalyKeresztfelevesNemVegzos datetime = (
|
||||
SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES tr
|
||||
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON tr.ID = ocstr.C_TANEVRENDJEID
|
||||
WHERE C_NAPTIPUSA = 1400 AND C_OSZTALYCSOPORTID = @osztalyCsoportId AND tr.TOROLT = 'F')
|
||||
|
||||
DECLARE @utolsoTanitasiNapTanev datetime = (SELECT TOP 1 C_UTOLSOTANITASINAP FROM T_TANEV_OSSZES WHERE ID = @tanevId AND TOROLT = 'F')
|
||||
|
||||
DECLARE @utolsoNap datetime
|
||||
IF (@isKeresztfeleves = 'T')
|
||||
BEGIN
|
||||
IF (@isVegzos = 'T')
|
||||
BEGIN
|
||||
SET @utolsoNap = (SELECT COALESCE(@utolsoNapForOsztalyKeresztfelevesVegzos, @utolsoNapForMindenKeresztfelevesVegzos, @utolsoNapForOsztalyVegzos, @utolsoNapForMindenVegzos, @utolsoTanitasiNapTanev))
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SET @utolsoNap = (SELECT COALESCE(@utolsoNapForOsztalyKeresztfelevesNemVegzos, @utolsoNapForMindenKeresztfelevesNemVegzos, @utolsoNapForOsztalyNemVegzos, @utolsoNapForMindenNemVegzos, @utolsoTanitasiNapTanev))
|
||||
END
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
IF (@isVegzos = 'T')
|
||||
BEGIN
|
||||
SET @utolsoNap = (SELECT COALESCE(@utolsoNapForOsztalyVegzos, @utolsoNapForMindenVegzos, @utolsoTanitasiNapTanev))
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SET @utolsoNap = (SELECT COALESCE(@utolsoNapForOsztalyNemVegzos, @utolsoNapForMindenNemVegzos, @utolsoTanitasiNapTanev))
|
||||
END
|
||||
END
|
||||
|
||||
DECLARE @elsoNapForMinden datetime = (SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_OSSZESCSOPORTRAVONATKOZIK = 'T' AND C_NAPTIPUSA = 1394 AND C_TANEVID = @tanevId AND TOROLT = 'F')
|
||||
DECLARE @elsoNapForOsztaly datetime = (
|
||||
SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES tr
|
||||
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON tr.ID = ocstr.C_TANEVRENDJEID
|
||||
WHERE C_NAPTIPUSA = 1394 AND C_OSZTALYCSOPORTID = @osztalyCsoportId AND tr.TOROLT = 'F')
|
||||
|
||||
DECLARE @elsoNapForMindenKeresztfeleves datetime = (SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_OSSZESCSOPORTRAVONATKOZIK = 'T' AND C_NAPTIPUSA = 7604 AND C_TANEVID = @tanevId AND TOROLT = 'F')
|
||||
DECLARE @elsoNapForOsztalyKeresztfeleves datetime = (
|
||||
SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES tr
|
||||
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON tr.ID = ocstr.C_TANEVRENDJEID
|
||||
WHERE C_NAPTIPUSA = 7604 AND C_OSZTALYCSOPORTID = @osztalyCsoportId AND tr.TOROLT = 'F')
|
||||
|
||||
DECLARE @elsoTanitasiNapTanev datetime = (SELECT TOP 1 C_ELSOTANITASINAP FROM T_TANEV_OSSZES WHERE ID = @tanevId AND TOROLT = 'F')
|
||||
|
||||
DECLARE @elsoNap datetime
|
||||
IF (@isKeresztfeleves = 'T')
|
||||
BEGIN
|
||||
SET @elsoNap = (SELECT COALESCE(@elsoNapForOsztalyKeresztfeleves, @elsoNapForMindenKeresztfeleves, @elsoNapForOsztaly, @elsoNapForMinden, @elsoTanitasiNapTanev))
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SET @elsoNap = (SELECT COALESCE(@elsoNapForOsztaly, @elsoNapForMinden, @elsoTanitasiNapTanev))
|
||||
END
|
||||
|
||||
DECLARE @felevVegeForMinden datetime = (SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_OSSZESCSOPORTRAVONATKOZIK = 'T' AND C_NAPTIPUSA = 1400 AND C_TANEVID = @tanevId AND TOROLT = 'F')
|
||||
DECLARE @felevVegeForOsztaly datetime = (
|
||||
SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES tr
|
||||
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON tr.ID = ocstr.C_TANEVRENDJEID
|
||||
WHERE C_NAPTIPUSA = 1400 AND C_OSZTALYCSOPORTID = @osztalyCsoportId AND tr.TOROLT = 'F')
|
||||
|
||||
DECLARE @felevVegeForMindenKeresztfeleves datetime = (SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_OSSZESCSOPORTRAVONATKOZIK = 'T' AND C_NAPTIPUSA = 7605 AND C_TANEVID = @tanevId AND TOROLT = 'F')
|
||||
DECLARE @felevVegeForOsztalyKeresztfeleves datetime = (
|
||||
SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES tr
|
||||
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON tr.ID = ocstr.C_TANEVRENDJEID
|
||||
WHERE C_NAPTIPUSA = 7605 AND C_OSZTALYCSOPORTID = @osztalyCsoportId AND tr.TOROLT = 'F')
|
||||
|
||||
DECLARE @felevVege datetime
|
||||
IF (@isKeresztfeleves = 'T')
|
||||
BEGIN
|
||||
SET @felevVege = (SELECT COALESCE(@felevVegeForOsztalyKeresztfeleves, @felevVegeForMindenKeresztfeleves, @felevVegeForOsztaly, @felevVegeForMinden))
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SET @felevVege = (SELECT COALESCE(@felevVegeForOsztaly, @felevVegeForMinden))
|
||||
END
|
||||
|
||||
INSERT INTO @result
|
||||
SELECT @elsoNap, @utolsoNap, @felevVege
|
||||
|
||||
RETURN
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,16 @@
|
|||
DROP FUNCTION IF EXISTS dbo.fnGetEnvironmentName
|
||||
GO
|
||||
|
||||
CREATE FUNCTION dbo.fnGetEnvironmentName(
|
||||
@key nvarchar(200) = NULL)
|
||||
RETURNS nvarchar(50)
|
||||
BEGIN
|
||||
DECLARE @value nvarchar(50)
|
||||
|
||||
SELECT @value = [Value]
|
||||
FROM dev.EnvironmentInfo e
|
||||
WHERE [Key] = ISNULL(@key,'Kornyezet')
|
||||
|
||||
RETURN @value
|
||||
END;
|
||||
GO
|
|
@ -0,0 +1,118 @@
|
|||
-- Az óra éves sorszáma tantárgy, osztálycsoport és tanár alapján
|
||||
-- TELEK ÁKOS
|
||||
-- 2017.03.03.
|
||||
|
||||
IF OBJECT_ID('dbo.fnGetEvesOraszam') IS NOT NULL BEGIN
|
||||
DROP FUNCTION dbo.fnGetEvesOraszam
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE FUNCTION dbo.fnGetEvesOraszam (
|
||||
@tantargyId int
|
||||
,@osztalycsoportId int
|
||||
,@tanarId int
|
||||
,@datum datetime
|
||||
,@intezmenyId int
|
||||
,@tanevId int
|
||||
)
|
||||
RETURNS int
|
||||
AS
|
||||
BEGIN
|
||||
DECLARE
|
||||
@tanarSzamit bit
|
||||
,@osztalybontasEgybe bit
|
||||
,@osztalybontasCsoport bit
|
||||
,@cnt int
|
||||
|
||||
SET @tanarSzamit = dbo.fnGetRendszerbeallitasEnumBool(3075, @intezmenyId, @tanevId)
|
||||
SET @osztalybontasEgybe = dbo.fnGetRendszerbeallitasEnumBool(3078, @intezmenyId, @tanevId)
|
||||
SET @osztalybontasCsoport = 0
|
||||
|
||||
IF EXISTS (SELECT 1 FROM T_CSOPORT WHERE (ID = @osztalyCsoportId AND C_OSZTALYBONTASID IS NOT NULL) OR C_OSZTALYBONTASID = @osztalyCsoportId) BEGIN
|
||||
SET @osztalybontasCsoport = 1
|
||||
END
|
||||
|
||||
IF @osztalybontasEgybe = 0 OR @osztalybontasCsoport = 0 BEGIN
|
||||
IF @tanarSzamit = 1 BEGIN
|
||||
SELECT @cnt = COUNT(1)
|
||||
FROM T_TANITASIORA_OSSZES t
|
||||
WHERE t.C_MEGTARTOTT = 'T'
|
||||
AND t.C_SORSZAMOZANDO = 'T'
|
||||
AND t.C_TANTARGYID = @tantargyId
|
||||
AND t.C_OSZTALYCSOPORTID = @osztalyCsoportId
|
||||
AND t.C_TANARID = @tanarId
|
||||
AND t.C_ORAKEZDETE <= @datum
|
||||
AND t.TOROLT ='F'
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT @cnt = COUNT(1)
|
||||
FROM T_TANITASIORA_OSSZES t
|
||||
WHERE t.C_MEGTARTOTT = 'T'
|
||||
AND t.C_SORSZAMOZANDO = 'T'
|
||||
AND t.C_TANTARGYID = @tantargyId
|
||||
AND t.C_OSZTALYCSOPORTID = @osztalyCsoportId
|
||||
AND t.C_ORAKEZDETE <= @datum
|
||||
AND t.TOROLT ='F'
|
||||
END
|
||||
END
|
||||
ELSE BEGIN
|
||||
IF @tanarSzamit = 1 BEGIN
|
||||
SELECT @cnt = COUNT(1)
|
||||
FROM T_TANITASIORA_OSSZES t
|
||||
WHERE t.C_TANTARGYID = @tantargyId
|
||||
AND t.C_OSZTALYCSOPORTID IN (
|
||||
SELECT cs.ID
|
||||
FROM T_CSOPORT cs
|
||||
WHERE cs.C_OSZTALYBONTASID = (SELECT scs.C_OSZTALYBONTASID FROM T_CSOPORT scs WHERE scs.ID = @osztalyCsoportId)
|
||||
AND cs.TOROLT = 'F'
|
||||
UNION
|
||||
SELECT cs.C_OSZTALYBONTASID
|
||||
FROM T_CSOPORT cs
|
||||
WHERE cs.ID = @osztalyCsoportId
|
||||
AND cs.TOROLT = 'F'
|
||||
UNION
|
||||
SELECT cs.ID
|
||||
FROM T_CSOPORT cs
|
||||
WHERE cs.C_OSZTALYBONTASID = @osztalyCsoportId
|
||||
AND cs.TOROLT = 'F'
|
||||
UNION
|
||||
SELECT @osztalyCsoportId
|
||||
)
|
||||
AND t.C_TANARID = @tanarId
|
||||
AND t.C_ORAKEZDETE <= @datum
|
||||
AND t.C_SORSZAMOZANDO = 'T'
|
||||
AND t.C_MEGTARTOTT = 'T'
|
||||
AND t.TOROLT ='F'
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT @cnt = COUNT(1)
|
||||
FROM T_TANITASIORA_OSSZES t
|
||||
WHERE t.C_TANTARGYID = @tantargyId
|
||||
AND t.C_OSZTALYCSOPORTID IN (
|
||||
SELECT cs.ID
|
||||
FROM T_CSOPORT cs
|
||||
WHERE cs.C_OSZTALYBONTASID = (SELECT scs.C_OSZTALYBONTASID FROM T_CSOPORT scs WHERE scs.ID = @osztalyCsoportId)
|
||||
AND cs.TOROLT = 'F'
|
||||
UNION
|
||||
SELECT cs.C_OSZTALYBONTASID
|
||||
FROM T_CSOPORT cs
|
||||
WHERE cs.ID = @osztalyCsoportId
|
||||
AND cs.TOROLT = 'F'
|
||||
UNION
|
||||
SELECT cs.ID
|
||||
FROM T_CSOPORT cs
|
||||
WHERE cs.C_OSZTALYBONTASID = @osztalyCsoportId
|
||||
AND cs.TOROLT = 'F'
|
||||
UNION
|
||||
SELECT @osztalyCsoportId
|
||||
)
|
||||
AND t.C_ORAKEZDETE <= @datum
|
||||
AND t.C_SORSZAMOZANDO = 'T'
|
||||
AND t.C_MEGTARTOTT = 'T'
|
||||
AND t.TOROLT = 'F'
|
||||
END
|
||||
END
|
||||
RETURN @cnt
|
||||
END
|
||||
GO
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
-- Visszaadja a T_TANITASIORA.ID-hoz tartozó éves sorszámot
|
||||
-- TELEK ÁKOS
|
||||
-- 2017.03.03.
|
||||
|
||||
-- Új hívás, összerendelés implementálás
|
||||
-- Zalán Máriusz
|
||||
-- 2020.02.03
|
||||
|
||||
-- A letárolt éves óraszám visszaadása
|
||||
-- Farkas Máté
|
||||
-- 2022.02.01
|
||||
|
||||
DROP FUNCTION IF EXISTS fnGetEvesOraszamByTanitasiOraId
|
||||
GO
|
||||
|
||||
CREATE FUNCTION dbo.fnGetEvesOraszamByTanitasiOraId (
|
||||
@tanitasiOraId int
|
||||
)
|
||||
RETURNS int
|
||||
AS
|
||||
BEGIN
|
||||
RETURN (
|
||||
SELECT C_ORAEVESSORSZAMA
|
||||
FROM T_TANITASIORA_OSSZES tn
|
||||
WHERE ID = @tanitasiOraId
|
||||
AND tn.C_MEGTARTOTT = 'T'
|
||||
AND tn.TOROLT = 'F'
|
||||
)
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,124 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
DROP FUNCTION IF EXISTS [dbo].[fnGetEvesOraszamLista]
|
||||
GO
|
||||
|
||||
CREATE FUNCTION [dbo].[fnGetEvesOraszamLista] (
|
||||
@tantargyId int
|
||||
,@osztalycsoportId int
|
||||
,@tanarId int
|
||||
,@datum datetime
|
||||
,@intezmenyId int
|
||||
,@tanevId int
|
||||
)
|
||||
RETURNS @return TABLE(Id int not null, EvesSorszam int)
|
||||
AS
|
||||
BEGIN
|
||||
DECLARE @TanarSzamit bit = 0;
|
||||
DECLARE @OsztalybontasEgybe bit = 0;
|
||||
DECLARE @VanOsszerendeles bit = 0;
|
||||
DECLARE @OsztalyTantargy TABLE(OsztalyCsoportId INT NOT NULL, TantargyId INT NOT NULL, TanarSzamit bit, PRIMARY KEY (OsztalyCsoportId, TantargyId));
|
||||
DECLARE @KapcsolodoCsoportok TABLE(OsztalyCsoportId INT NOT NULL PRIMARY KEY);
|
||||
|
||||
-- Ellenőrizzük, hogy az átadott osztalycsoportId + @tantargyId páros előfordul-e sorszámozás összerendelésben
|
||||
-- ha igen, akkor a hozzá tartozó sorszámozás halmaz alatt lévő összes összerendelésből az összes Osztálycsoport + Tantárgy
|
||||
-- kombinációt + a tanári lebontást összegyűjtjük és betöltjük a tábla változóba (legfeljebb 1-3 sor)
|
||||
INSERT INTO @OsztalyTantargy(OsztalyCsoportId, TantargyId, TanarSzamit)
|
||||
SELECT oh.C_OSZTALYCSOPORTID, oh.C_TANTARGYID, IIF(h.C_KOZOSORASORSZAMOZASELTEROTAN = 'T', 1, 0)
|
||||
FROM T_ORASORSZAMOZASHALMAZ_OSSZES h
|
||||
INNER JOIN T_ORASORSZAMOZASHALMAZOSSZEREN_OSSZES oh ON h.ID = oh.C_ORASORSZAMOZASHALMAZID AND oh.TOROLT = 'F'
|
||||
WHERE h.C_INTEZMENYID = @IntezmenyId
|
||||
AND h.C_TANEVID = @TanevId
|
||||
AND h.TOROLT = 'F'
|
||||
AND EXISTS(
|
||||
SELECT * FROM T_ORASORSZAMOZASHALMAZOSSZEREN_OSSZES o1
|
||||
WHERE o1.C_INTEZMENYID = @intezmenyId
|
||||
AND o1.C_TANEVID = @tanevId
|
||||
AND o1.TOROLT = 'F'
|
||||
AND o1.C_ORASORSZAMOZASHALMAZID = h.ID
|
||||
AND o1.C_TANTARGYID = @tantargyId
|
||||
AND o1.C_OSZTALYCSOPORTID = @osztalycsoportId
|
||||
);
|
||||
|
||||
-- Elmentjük, hogy találtunk-e bármilyen összerendelést
|
||||
IF @@ROWCOUNT > 0 SET @VanOsszerendeles = 1;
|
||||
|
||||
-- Ha nem találtunk összerendelést, akkor betöltjük az intézmény szintű beállításokat
|
||||
IF @VanOsszerendeles = 0
|
||||
BEGIN
|
||||
|
||||
SET @TanarSzamit = dbo.fnGetRendszerbeallitasEnumBool(3075, @IntezmenyId, @TanevId);
|
||||
SET @OsztalybontasEgybe = dbo.fnGetRendszerbeallitasEnumBool(3078, @IntezmenyId, @TanevId);
|
||||
|
||||
END
|
||||
|
||||
-- Ha találtunk összerendelést, akkor az összes kombinációhoz lekérdezzük a tanóra listát
|
||||
-- a tanári lebontás figyelembe vételével, ez lesz a függvény kimenete
|
||||
IF @VanOsszerendeles = 1
|
||||
INSERT INTO @return(Id, EvesSorszam)
|
||||
SELECT
|
||||
t.ID AS Id
|
||||
,t.C_ORAEVESSORSZAMA AS EvesSorszam
|
||||
FROM @OsztalyTantargy ot
|
||||
INNER JOIN T_TANITASIORA_OSSZES t ON t.C_OSZTALYCSOPORTID = ot.OsztalyCsoportId AND t.C_TANTARGYID = ot.TantargyId
|
||||
WHERE t.C_INTEZMENYID = @intezmenyId
|
||||
AND t.C_TANEVID = @tanevId
|
||||
AND t.C_TANARID = CASE WHEN ot.TanarSzamit = 1 THEN @tanarId ELSE t.C_TANARID END
|
||||
AND t.TOROLT = 'F'
|
||||
AND t.C_MEGTARTOTT = 'T'
|
||||
AND t.C_SORSZAMOZANDO = 'T'
|
||||
AND t.C_ORAKEZDETE <= @datum
|
||||
|
||||
ELSE -- Ha nem találtunk összerendeléseket
|
||||
IF @OsztalybontasEgybe = 1 -- ha az intézményi szintű beállításokban az osztályok bontott csoportjait egybe kell sorszámozni
|
||||
BEGIN
|
||||
-- Megkeressük a megadott @osztalycsoportId-hoz tartozó esetleges bontott csoportokat és egy listába töltjük
|
||||
INSERT INTO @KapcsolodoCsoportok(OsztalyCsoportId)
|
||||
SELECT cs.ID
|
||||
FROM T_CSOPORT_OSSZES cs
|
||||
WHERE cs.C_ALINTEZMENYID = @IntezmenyId
|
||||
AND cs.C_ALTANEVID = @TanevId
|
||||
AND cs.TOROLT = 'F'
|
||||
AND (cs.C_OSZTALYBONTASID = @osztalycsoportId OR cs.ID = @osztalycsoportId)
|
||||
UNION -- az @osztalycsoportId-t mindenképp felvesszük a listára
|
||||
SELECT @osztalycsoportId AS ID;
|
||||
-- Lekérdezzük a kimenetre a csoport listához és a tantárgyhoz tartozó tanítási órákat, a tanári lebontás figyelembe vételével
|
||||
INSERT INTO @return(Id, EvesSorszam)
|
||||
SELECT
|
||||
t.ID AS Id
|
||||
,t.C_ORAEVESSORSZAMA AS EvesSorszam
|
||||
FROM T_TANITASIORA_OSSZES t
|
||||
WHERE t.C_INTEZMENYID = @intezmenyId
|
||||
AND t.C_TANEVID = @tanevId
|
||||
AND EXISTS(SELECT * FROM @KapcsolodoCsoportok kcs WHERE kcs.OsztalyCsoportId = t.C_OSZTALYCSOPORTID)
|
||||
AND t.C_TANTARGYID = @tantargyId
|
||||
AND t.C_TANARID = CASE WHEN @TanarSzamit = 1 THEN @tanarId ELSE t.C_TANARID END
|
||||
AND t.TOROLT = 'F'
|
||||
AND t.C_MEGTARTOTT = 'T'
|
||||
AND t.C_SORSZAMOZANDO = 'T'
|
||||
AND t.C_ORAKEZDETE <= @datum
|
||||
|
||||
END
|
||||
|
||||
ELSE -- Ha a bontott csoportok sorszámozása külön történik, akkor a megadott paraméterek alapján a kiementre küldjük a sorokat
|
||||
INSERT INTO @return(Id, EvesSorszam)
|
||||
SELECT
|
||||
t.ID AS Id
|
||||
,t.C_ORAEVESSORSZAMA AS EvesSorszam
|
||||
FROM T_TANITASIORA_OSSZES t
|
||||
WHERE t.C_INTEZMENYID = @intezmenyId
|
||||
AND t.C_TANEVID = @tanevId
|
||||
AND t.C_OSZTALYCSOPORTID = @osztalycsoportId
|
||||
AND t.C_TANTARGYID = @tantargyId
|
||||
AND t.C_TANARID = CASE WHEN @TanarSzamit = 1 THEN @tanarId ELSE t.C_TANARID END
|
||||
AND t.TOROLT = 'F'
|
||||
AND t.C_MEGTARTOTT = 'T'
|
||||
AND t.C_SORSZAMOZANDO = 'T'
|
||||
AND t.C_ORAKEZDETE <= @datum
|
||||
|
||||
RETURN;
|
||||
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,29 @@
|
|||
-- Visszaadja a T_TANITASIORA.ID-hoz tartozó éves sorszámot
|
||||
-- TELEK ÁKOS
|
||||
-- 2017.03.03.
|
||||
|
||||
-- Új hívás, összerendelés implementálás
|
||||
-- Zalán Máriusz
|
||||
-- 2020.02.03
|
||||
|
||||
-- A letárolt éves óraszám visszaadása
|
||||
-- Farkas Máté
|
||||
-- 2022.02.01
|
||||
|
||||
DROP FUNCTION IF EXISTS fnGetEvesOraszamListaByTanitasiOraId
|
||||
GO
|
||||
|
||||
CREATE FUNCTION dbo.fnGetEvesOraszamListaByTanitasiOraId (
|
||||
@tanitasiOraId int
|
||||
)
|
||||
RETURNS TABLE
|
||||
AS
|
||||
RETURN (
|
||||
SELECT ID as Id, C_ORAEVESSORSZAMA as EvesSorszam
|
||||
FROM T_TANITASIORA_OSSZES tn
|
||||
WHERE ID = @tanitasiOraId
|
||||
AND tn.C_MEGTARTOTT = 'T'
|
||||
AND tn.TOROLT = 'F'
|
||||
)
|
||||
GO
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
DROP FUNCTION IF EXISTS dbo.fnGetFelhaszaloCim;
|
||||
GO
|
||||
|
||||
CREATE FUNCTION [dbo].[fnGetFelhaszaloCim] (@pFelhasznaloId int)
|
||||
RETURNS TABLE
|
||||
RETURN (
|
||||
SELECT TOP 1
|
||||
c.ID, C_IRANYITOSZAM, C_VAROS, C_KOZTERULET, C_KOZTERULETJELLEGENEV, C_HAZSZAM, C_EMELET, C_AJTO, c.C_ORSZAG, ot.C_ISOKOD, dic.C_NAME
|
||||
FROM T_CIM_OSSZES c
|
||||
JOIN T_ORSZAGTIPUS_OSSZES ot on ot.ID = c.C_ORSZAG and c.C_TANEVID = ot.C_ALTANEVID
|
||||
JOIN T_DICTIONARYITEMBASE_OSSZES dic on dic.ID = c.C_ORSZAG and dic.C_TANEVID = ot.C_ALTANEVID
|
||||
WHERE
|
||||
c.C_FELHASZNALOID = @pFelhasznaloId AND c.TOROLT = 'F' AND c.C_GONDVISELOID IS NULL
|
||||
ORDER BY
|
||||
CASE C_CIMTIPUSA
|
||||
WHEN 907 THEN 1
|
||||
WHEN 909 THEN 2
|
||||
WHEN 908 THEN 3
|
||||
WHEN 910 THEN 4
|
||||
WHEN 8667 THEN 5
|
||||
END
|
||||
);
|
||||
GO
|
|
@ -0,0 +1,220 @@
|
|||
DROP FUNCTION IF EXISTS fnGetFollowUpColumnMapping
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetFollowUpColumnMapping (@ExludeColumns nvarchar(max) = NULL,@entityName nvarchar(128))
|
||||
RETURNS @ColumnMapping TABLE (
|
||||
insertColName nvarchar(max) COLLATE DATABASE_DEFAULT
|
||||
,selectColName nvarchar(max)
|
||||
,updateColName nvarchar(max)
|
||||
) AS
|
||||
BEGIN
|
||||
SET @ExludeColumns = ISNULL(@ExludeColumns+',','')+'ID,CORE_ID'
|
||||
DECLARE @excludedColumns TABLE(colName nvarchar(128) COLLATE DATABASE_DEFAULT)
|
||||
INSERT INTO @excludedColumns
|
||||
SELECT
|
||||
value
|
||||
FROM string_split(@ExludeColumns,',')
|
||||
|
||||
INSERT INTO @ColumnMapping (insertColName, selectColName) VALUES
|
||||
('TOROLT','''F''')
|
||||
,('SERIAL','0')
|
||||
,('CREATOR','s.MODIFIER')
|
||||
,('CREATED','s.LASTCHANGED')
|
||||
,('ELOZOTANEVIREKORDID','s.ID')
|
||||
|
||||
INSERT INTO @ColumnMapping (insertColName,selectColName)
|
||||
SELECT
|
||||
c.name,'s.'+c.name
|
||||
FROM sys.columns c
|
||||
INNER JOIN sys.tables t ON t.object_id = c.object_id AND t.name = @entityName
|
||||
WHERE c.NAME NOT IN (SELECT colName from @excludedColumns)
|
||||
AND NOT EXISTS (SELECT 1 FROM @ColumnMapping WHERE insertColName = c.name)
|
||||
|
||||
DELETE FROM @ColumnMapping
|
||||
WHERE NOT EXISTS (
|
||||
SELECT
|
||||
1
|
||||
FROM sys.columns c
|
||||
INNER JOIN sys.tables t ON t.object_id = c.object_id AND t.name = @entityName
|
||||
WHERE c.NAME = insertColName)
|
||||
|
||||
DELETE @ColumnMapping WHERE insertColName IN (select colName FROM @excludedColumns)
|
||||
|
||||
UPDATE @ColumnMapping SET selectColName = '@kovetkezoTanevId' WHERE insertColName IN('C_TANEVID','C_ALTANEVID')
|
||||
UPDATE @ColumnMapping SET selectColName = '@intezmenyId' WHERE insertColName IN('C_INTEZMENYID','C_ALINTEZMENYID')
|
||||
|
||||
IF @entityName = 'T_TANULO' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = '''F''' WHERE insertColName IN ('C_EVISMETLO', 'C_ISBESZAMITASOS', 'C_ISOSZTONDIJBOLKIZARVA', 'C_ISMULASZTASMIATTKIZART')
|
||||
UPDATE @ColumnMapping SET selectColName = '''T''' WHERE insertColName IN ('C_ISATLAGSZAKKEPZESI', 'C_ISBESZAMITASOSFIXSZAZALEK')
|
||||
END
|
||||
ELSE IF @entityName IN('T_CIM','T_EMAIL','T_TELEFON') BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = '@kovFelhasznaloId' WHERE insertColName = 'C_FELHASZNALOID'
|
||||
END
|
||||
ELSE IF @entityName IN('T_MUNKAUGYIADATOK','T_TOVABBIMUNKAUGYIADATOK') BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = '@ujAlkalmazottId' WHERE insertColName = 'C_ALKALMAZOTTID'
|
||||
UPDATE @ColumnMapping SET selectColName = 'f.ID' WHERE insertColName = 'C_FELADATELLATASIHELYID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_ALKALMAZOTT' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 's.ID' WHERE insertColName = 'ELOZOTANEVIREKORDIDA'
|
||||
UPDATE @ColumnMapping SET selectColName = 'IIF((select ic.C_ERTEK from T_INTEZMENYCONFIG ic where ic.C_CONFIGTIPUSID = 23 and ic.TOROLT = ''F'' and ic.C_INTEZMENYID = @intezmenyId) = ''true'',s.C_KKKEPESITESID,NULL)' WHERE insertColName IN('C_KKKEPESITESID')
|
||||
END
|
||||
ELSE IF @entityName IN('T_KKTANITOVEZGETTSEG','T_KKGYOGYPEDVEGZETTSEG','T_KKTANARVEGZETTSEG','T_KKAMIVEGZETTSEG') BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = '@kovAlkalmazottId' WHERE insertColName = 'C_ALKALMAZOTTID'
|
||||
END
|
||||
ELSE IF @entityName IN('T_KKELEKTROAKUZENE','T_KKKLASSZIKUSZENE','T_KKJAZZZENE','T_KKNEPZENE','T_KKTERULET') BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'av.ID' WHERE insertColName = 'C_KKAMIVEGZETTSEGID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_KKTANTARGYKATEGORIA' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'av.ID' WHERE insertColName = 'C_KKTANARVEGZETTSEGID'
|
||||
END
|
||||
ELSE IF @entityName IN ('T_PEDAGOGUSELETPALYAMODELL','T_VEGZETTSEG') BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'fh.ID' WHERE insertColName = 'C_TANARID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_KEPESITES_VEGZETTSEG' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'k.ID' WHERE insertColName = 'C_KEPESITESID'
|
||||
UPDATE @ColumnMapping SET selectColName = 'vKov.ID' WHERE insertColName = 'C_VEGZETTSEGID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_TANULOMENTESSEG' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'tgy.ID' WHERE insertColName = 'C_TANTARGYID'
|
||||
UPDATE @ColumnMapping SET selectColName = 'tKov.ID' WHERE insertColName = 'C_TANULOID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_TANULOSNI' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'tKov.ID' WHERE insertColName = 'C_TANULOID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_GONDVISELO' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'fhNew.ID' WHERE insertColName = 'C_TANULOID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_ORATERVTARGY' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'tgy.ID' WHERE insertColName = 'C_TANTARGYID'
|
||||
UPDATE @ColumnMapping SET selectColName = 'otKov.ID' WHERE insertColName = 'C_ORATERVID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_ORATERV' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'e.ID' WHERE insertColName = 'C_EVFOLYAM'
|
||||
UPDATE @ColumnMapping SET selectColName = 'tr.ID' WHERE insertColName = 'C_TANTERVID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_CSENGETESIREND' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'mh.ID' WHERE insertColName = 'C_MUKODESIHELYID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_CSENGETESIRENDORA' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'csr.ID' WHERE insertColName = 'C_CSENGETESIRENDID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_TEREM' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'mh.ID' WHERE insertColName = 'C_MUKODESIHELYID'
|
||||
UPDATE @ColumnMapping SET selectColName = '@felelosId' WHERE insertColName = 'C_TEREMFELELOSID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_FELADATELLATASIHELY' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'mh.ID' WHERE insertColName = 'C_MUKODESIHELYID'
|
||||
UPDATE @ColumnMapping SET selectColName = 'okt.ID' WHERE insertColName = 'C_OKTATASINEVELESIFELADATTIPUS'
|
||||
END
|
||||
ELSE IF @entityName = 'T_TANTARGY' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'tkt.ID' WHERE insertColName = 'C_TARGYKATEGORIA'
|
||||
UPDATE @ColumnMapping SET selectColName = 'tszt.ID' WHERE insertColName = 'C_TANSZAKTIPUSID'
|
||||
UPDATE @ColumnMapping SET selectColName = 'ftgy.ID' WHERE insertColName = 'C_FOTARGYID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_MUKODESIHELY' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'ia.ID' WHERE insertColName = 'C_INTEZMENYADATOKID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_ESZKOZ' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'te.ID' WHERE insertColName = 'C_TEREMID'
|
||||
UPDATE @ColumnMapping SET selectColName = 'fh.ID' WHERE insertColName = 'C_FELELOSID'
|
||||
UPDATE @ColumnMapping SET selectColName = '@aktTipusId' WHERE insertColName = 'C_TIPUS'
|
||||
END
|
||||
ELSE IF @entityName = 'T_TANTARGYNYELV' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = 'tgy.ID' WHERE insertColName = 'C_TANTARGYID'
|
||||
UPDATE @ColumnMapping SET selectColName = 'dib.ID' WHERE insertColName = 'C_NYELVID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_TBJOGVISZONY' BEGIN
|
||||
UPDATE @ColumnMapping SET selectColName = '@KovFelhasznaloId' WHERE insertColName = 'C_TANULOID'
|
||||
END
|
||||
|
||||
UPDATE @ColumnMapping SET
|
||||
updateColName = 's.'+insertColName
|
||||
WHERE insertColName NOT IN (
|
||||
'CREATED'
|
||||
,'CREATOR'
|
||||
,'ELOZOTANEVIREKORDID'
|
||||
,'ELOZOTANEVIREKORDIDA'
|
||||
,'C_INTEZMENYID'
|
||||
,'C_TANEVID'
|
||||
,'C_ALINTEZMENYID'
|
||||
,'C_ALTANEVID'
|
||||
,'C_ALKALMAZOTTID'
|
||||
,'TOROLT'
|
||||
,'C_KKAMIVEGZETTSEGID'
|
||||
)
|
||||
|
||||
IF @entityName = 'T_TANULO' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = '''F''' WHERE insertColName IN ('C_EVISMETLO', 'C_ISBESZAMITASOS', 'C_ISOSZTONDIJBOLKIZARVA', 'C_ISMULASZTASMIATTKIZART')
|
||||
UPDATE @ColumnMapping SET updateColName = '''T''' WHERE insertColName IN ('C_ISATLAGSZAKKEPZESI', 'C_ISBESZAMITASOSFIXSZAZALEK')
|
||||
END
|
||||
ELSE IF @entityName = 'T_KKTANTARGYKATEGORIA' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName = 'C_KKTANARVEGZETTSEGID'
|
||||
END
|
||||
ELSE IF @entityName IN('T_MUNKAUGYIADATOK','T_TOVABBIMUNKAUGYIADATOK') BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = 'f.ID' WHERE insertColName = 'C_FELADATELLATASIHELYID'
|
||||
END
|
||||
ELSE IF @entityName IN ('T_VEGZETTSEG','T_PEDAGOGUSELETPALYAMODELL') BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName = 'C_TANARID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_TANULOMENTESSEG' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = 'tgy.ID' WHERE insertColName = 'C_TANTARGYID'
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName = 'C_TANULOID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_TANULOSNI' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName = 'C_TANULOID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_GONDVISELO' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName IN ('C_TANULOID','C_EGYEDIAZONOSITO')
|
||||
END
|
||||
ELSE IF @entityName IN('T_CIM','T_TELEFON','T_EMAIL') BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName IN ('C_FELHASZNALOID','C_GONDVISELOID')
|
||||
END
|
||||
ELSE IF @entityName = 'T_ORATERVTARGY' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName = 'C_ORATERVID'
|
||||
UPDATE @ColumnMapping SET updateColname = 'tgy.ID' WHERE insertColName = 'C_TANTARGYID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_ORATERV' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = 'e.ID' WHERE insertColName = 'C_EVFOLYAM'
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName = 'C_TANTERVID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_CSENGETESIREND' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName = 'C_MUKODESIHELYID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_CSENGETESIRENDORA' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName = 'C_CSENGETESIRENDID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_TEREM' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = 'mh.ID' WHERE insertColName = 'C_MUKODESIHELYID'
|
||||
UPDATE @ColumnMapping SET updateColName = '@felelosId' WHERE insertColName = 'C_TEREMFELELOSID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_FELADATELLATASIHELY' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName = 'C_MUKODESIHELYID'
|
||||
UPDATE @ColumnMapping SET updateColName = 'okt.ID' WHERE insertColName = 'C_OKTATASINEVELESIFELADATTIPUS'
|
||||
END
|
||||
ELSE IF @entityName = 'T_TANTARGY' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = 'tkt.ID' WHERE insertColName = 'C_TARGYKATEGORIA'
|
||||
UPDATE @ColumnMapping SET updateColName = 'tszt.ID' WHERE insertColName = 'C_TANSZAKTIPUSID'
|
||||
UPDATE @ColumnMapping SET updateColName = 'ftgy.ID' WHERE insertColName = 'C_FOTARGYID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_MUKODESIHELY' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName = 'C_INTEZMENYADATOKID'
|
||||
END
|
||||
ELSE IF @entityName = 'T_ESZKOZ' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = 'te.ID' WHERE insertColName = 'C_TEREMID'
|
||||
UPDATE @ColumnMapping SET updateColName = 'fh.ID' WHERE insertColName = 'C_FELELOSID'
|
||||
UPDATE @ColumnMapping SET updateColName = '@aktTipusId' WHERE insertColName = 'C_TIPUS'
|
||||
END
|
||||
ELSE IF @entityName = 'T_TANTARGYNYELV' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName IN ('C_TANTARGYID','C_NYELVID')
|
||||
END
|
||||
ELSE IF @entityName = 'T_RENDSZERBEALLITAS' BEGIN
|
||||
UPDATE @ColumnMapping SET updateColName = NULL WHERE insertColName IN ('C_ALAPERTEK','C_BEALLITASTIPUS','C_ERTEKTIPUS')
|
||||
END
|
||||
|
||||
UPDATE @ColumnMapping SET
|
||||
updateColName = 't.SERIAL + 1'
|
||||
WHERE insertColName = 'SERIAL'
|
||||
|
||||
RETURN
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,20 @@
|
|||
DROP FUNCTION IF EXISTS dbo.fnGetHetNapja
|
||||
GO
|
||||
|
||||
CREATE FUNCTION dbo.fnGetHetNapja (
|
||||
@date datetime
|
||||
,@hetNapjaTipusTypeId int = 40
|
||||
)
|
||||
RETURNS int
|
||||
BEGIN
|
||||
DECLARE @value INT
|
||||
|
||||
SELECT @value = MIN(ID)
|
||||
FROM T_DICTIONARYITEMBASE d
|
||||
WHERE d.C_DICTIONARYTYPEID = @hetNapjaTipusTypeId
|
||||
AND d.C_VALUE = DATEPART(dw, @date)
|
||||
|
||||
RETURN @value
|
||||
END
|
||||
|
||||
GO
|
|
@ -0,0 +1,58 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
DROP FUNCTION IF EXISTS fnGetIktatottDokumentumok
|
||||
GO
|
||||
|
||||
CREATE FUNCTION [dbo].[fnGetIktatottDokumentumok](
|
||||
@pTanevId INT
|
||||
)
|
||||
RETURNS TABLE
|
||||
AS
|
||||
RETURN
|
||||
SELECT
|
||||
iktd.ID
|
||||
,iktd.C_DOKUMENTUMKATEGORIA Kategoria
|
||||
,iktd.C_DOKUMENTUMTIPUS DokumentumTipus
|
||||
,iktd.C_DOKUMENTUMNEVE DokumentumNeve
|
||||
,iktd.C_FELADATELLATASIHELYID FeladatellatasihelyId
|
||||
,CASE
|
||||
-- Ahol mûködési hely van megadva feladatellátási helynek
|
||||
WHEN iktd.C_DOKUMENTUMTIPUS IN (7430) THEN
|
||||
IIF (iktd.C_FELADATELLATASIHELYID IS NULL, '', CONCAT(igaziMukodHely.C_NEV, ' - ', DIBM.C_NAME))
|
||||
-- feladatellátási hely van megadva
|
||||
ELSE
|
||||
IIF (iktd.C_FELADATELLATASIHELYID is NULL, '', CONCAT(mukodHely.C_NEV, ' - ', DIB.C_NAME))
|
||||
END AS FeladatellatasihelyNeve
|
||||
,iktd.C_IKTATOSZAM Iktatoszam
|
||||
,CASE iktd.C_DOKUMENTUMSTATUSZ
|
||||
WHEN 7387 THEN iktd.C_GENERALASDATUMA
|
||||
WHEN 7388 THEN iktd.C_IKTATASDATUMA
|
||||
ELSE iktd.C_ELEKTRONIKUSPELDANYFELTOLTES
|
||||
END IktatasDatuma
|
||||
,felhasznalo.C_NYOMTATASINEV IktatoSzemelye
|
||||
,iktd.C_DOKUMENTUMSTATUSZ Statusz
|
||||
,tanev.C_NEV TanevNev
|
||||
,iktd.C_ELEKTRONIKUSPELDANYID ElektronikusPeldanyId
|
||||
,iktd.C_FOSZAMOSIKTATOTTDOKUMENTUMID FoszamosDokumentumId
|
||||
,iktd.C_ISFOSZAMOS IsFoszamos
|
||||
,iktd.TOROLT Torolt
|
||||
FROM T_IKTATOTTDOKUMENTUM_OSSZES iktd
|
||||
LEFT JOIN T_TANEV_OSSZES tanev ON tanev.ID = iktd.C_TANEVID and tanev.TOROLT = 'F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES felhasznalo ON felhasznalo.ID = iktd.C_IKTATOSZEMELYID and felhasznalo.TOROLT = 'F'
|
||||
LEFT JOIN T_FELADATELLATASIHELY_OSSZES feh ON feh.ID = iktd.C_FELADATELLATASIHELYID and feh.TOROLT = 'F'
|
||||
LEFT JOIN T_MUKODESIHELY_OSSZES mukodHely ON feh.C_MUKODESIHELYID = mukodHely.ID and mukodHely.TOROLT = 'F'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES DIB ON feh.C_OKTATASINEVELESIFELADATTIPUS = DIB.ID
|
||||
AND feh.C_INTEZMENYID = DIB.C_INTEZMENYID
|
||||
AND feh.C_TANEVID = DIB.C_TANEVID
|
||||
AND DIB.TOROLT = 'F'
|
||||
LEFT JOIN T_MUKODESIHELY_OSSZES igaziMukodHely ON iktd.C_FELADATELLATASIHELYID = igaziMukodHely.ID and igaziMukodHely.TOROLT = 'F'
|
||||
LEFT JOIN T_FELADATELLATASIHELY_OSSZES igaziFeh ON igaziFeh.C_MUKODESIHELYID = igaziMukodHely.ID and igaziFeh.TOROLT = 'F'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES DIBM ON igaziFeh.C_OKTATASINEVELESIFELADATTIPUS = DIBM.ID
|
||||
AND igaziFeh.C_INTEZMENYID = DIBM.C_INTEZMENYID
|
||||
AND igaziFeh.C_TANEVID = DIBM.C_TANEVID
|
||||
AND DIBM.TOROLT = 'F'
|
||||
WHERE iktd.C_TANEVID = @pTanevId
|
||||
GO
|
|
@ -0,0 +1,174 @@
|
|||
DROP FUNCTION IF EXISTS dbo.fnGetKapcsolodoOsztalyCsoportokByDateRange
|
||||
GO
|
||||
|
||||
CREATE FUNCTION dbo.fnGetKapcsolodoOsztalyCsoportokByDateRange (
|
||||
@pOsztalyCsoportId int
|
||||
,@pStartDate datetime
|
||||
,@pEndDate datetime
|
||||
,@pIntezmenyId int
|
||||
,@pTanevId int
|
||||
)
|
||||
RETURNS @Result TABLE (
|
||||
Id int primary key NOT NULL
|
||||
,Kezdete datetime NOT NULL
|
||||
,Vege datetime NOT NULL
|
||||
) AS
|
||||
BEGIN
|
||||
DECLARE
|
||||
@tanevStart datetime
|
||||
,@tanevEnd datetime
|
||||
,@osztalyId int
|
||||
|
||||
DECLARE @kategoriaId int = (SELECT C_FELADATKATEGORIAID FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyCsoportId)
|
||||
|
||||
IF EXISTS (SELECT 1 FROM T_OSZTALY_OSSZES WHERE ID = @pOsztalyCsoportId) BEGIN
|
||||
|
||||
INSERT INTO @Result (Id, Kezdete, Vege) /* maga az osztály */
|
||||
SELECT
|
||||
o.Id
|
||||
,@pStartDate
|
||||
,@pEndDate
|
||||
FROM T_OSZTALY_OSSZES o
|
||||
WHERE o.ID = @pOsztalyCsoportId
|
||||
AND o.C_ALTANEVID = @pTanevID
|
||||
AND o.C_ALINTEZMENYID = @pIntezmenyId
|
||||
AND o.TOROLT = 'F'
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT /* Az osztály bontott csoportjai */
|
||||
cs.ID
|
||||
,@pStartDate
|
||||
,@pEndDate
|
||||
FROM T_CSOPORT_OSSZES cs
|
||||
WHERE C_OSZTALYBONTASID = @pOsztalyCsoportId
|
||||
AND cs.TOROLT = 'F'
|
||||
AND cs.C_ALTANEVID = @pTanevID
|
||||
AND cs.C_ALINTEZMENYID = @pIntezmenyId
|
||||
|
||||
INSERT INTO @Result (Id, Kezdete, Vege) /* Az osztály tanulóinak más csoportjai */
|
||||
SELECT
|
||||
tcs.C_OSZTALYCSOPORTID AS Id
|
||||
,CASE
|
||||
WHEN MIN(tcs.C_BELEPESDATUM) > MIN(oszt.C_BELEPESDATUM) AND MIN(tcs.C_BELEPESDATUM) > @pStartDate THEN MIN(tcs.C_BELEPESDATUM)
|
||||
WHEN MIN(oszt.C_BELEPESDATUM) > MIN(tcs.C_BELEPESDATUM) AND MIN(oszt.C_BELEPESDATUM) > @pStartDate THEN MIN(oszt.C_BELEPESDATUM)
|
||||
ELSE @pStartDate
|
||||
END AS Kezdete -- A három közül a legnagyobb
|
||||
,CASE
|
||||
WHEN MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate)) < MAX(ISNULL(oszt.C_KILEPESDATUM, @pEndDate)) AND MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate)) < @pEndDate THEN MIN(ISNULL(tcs.C_KILEPESDATUM, @pEndDate))
|
||||
WHEN MAX(ISNULL(oszt.C_KILEPESDATUM, @pEndDate)) < MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate)) AND MAX(ISNULL(oszt.C_KILEPESDATUM, @pEndDate)) < @pEndDate THEN MIN(ISNULL(oszt.C_KILEPESDATUM, @pEndDate))
|
||||
ELSE @pEndDate -- A három közül a legkisebb
|
||||
END AS Vege
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES oszt
|
||||
ON oszt.C_TANULOID = tcs.C_TANULOID
|
||||
AND oszt.C_OSZTALYCSOPORTID = @pOsztalyCsoportId
|
||||
AND oszt.C_BELEPESDATUM <= @pEndDate
|
||||
AND (oszt.C_KILEPESDATUM > @pStartDate OR oszt.C_KILEPESDATUM IS NULL)
|
||||
INNER JOIN T_CSOPORT_OSSZES cs ON cs.ID = tcs.C_OSZTALYCSOPORTID AND cs.C_OSZTALYBONTASID IS NULL
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = cs.ID AND ocs.TOROLT = 'F' AND ocs.C_FELADATKATEGORIAID = @kategoriaId
|
||||
WHERE tcs.TOROLT = 'F'
|
||||
AND oszt.TOROLT = 'F'
|
||||
AND tcs.C_TANEVID = @pTanevId
|
||||
AND tcs.C_INTEZMENYID = @pIntezmenyId
|
||||
AND tcs.C_BELEPESDATUM <= @pEndDate
|
||||
AND (tcs.C_KILEPESDATUM > @pStartDate OR tcs.C_KILEPESDATUM IS NULL)
|
||||
AND NOT EXISTS (SELECT 1 FROM @Result r WHERE r.ID = tcs.C_OSZTALYCSOPORTID)
|
||||
GROUP BY tcs.C_OSZTALYCSOPORTID
|
||||
END
|
||||
|
||||
IF EXISTS (SELECT 1 FROM T_CSOPORT_OSSZES WHERE ID = @pOsztalyCsoportId AND C_OSZTALYBONTASID IS NOT NULL AND TOROLT = 'F') BEGIN
|
||||
|
||||
SELECT @osztalyId = C_OSZTALYBONTASID FROM T_CSOPORT_OSSZES WHERE ID = @pOsztalyCsoportId
|
||||
|
||||
INSERT INTO @Result (Id, Kezdete, Vege) /* Az osztály, amelyiknek a bontása */
|
||||
SELECT
|
||||
@osztalyId
|
||||
,@pStartDate
|
||||
,@pEndDate
|
||||
|
||||
UNION ALL
|
||||
|
||||
SELECT /* Maga a csoport */
|
||||
@pOsztalyCsoportId
|
||||
,@pStartDate
|
||||
,@pEndDate
|
||||
|
||||
INSERT INTO @Result (Id, Kezdete, Vege) /* Az csoport tanulóinak más csoportjai */
|
||||
SELECT
|
||||
tcs.C_OSZTALYCSOPORTID AS Id
|
||||
,CASE
|
||||
WHEN MIN(tcs.C_BELEPESDATUM) > MIN(csop.C_BELEPESDATUM) AND MIN(tcs.C_BELEPESDATUM) > @pStartDate THEN MIN(tcs.C_BELEPESDATUM)
|
||||
WHEN MIN(csop.C_BELEPESDATUM) > MIN(tcs.C_BELEPESDATUM) AND MIN(csop.C_BELEPESDATUM) > @pStartDate THEN MIN(csop.C_BELEPESDATUM)
|
||||
ELSE @pStartDate
|
||||
END AS Kezdete -- A három közül a legnagyobb
|
||||
,CASE
|
||||
WHEN MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate)) < MAX(ISNULL(csop.C_KILEPESDATUM, @pEndDate)) AND MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate)) < @pEndDate THEN MIN(ISNULL(tcs.C_KILEPESDATUM, @pEndDate))
|
||||
WHEN MAX(ISNULL(csop.C_KILEPESDATUM, @pEndDate)) < MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate)) AND MAX(ISNULL(csop.C_KILEPESDATUM, @pEndDate)) < @pEndDate THEN MIN(ISNULL(csop.C_KILEPESDATUM, @pEndDate))
|
||||
ELSE @pEndDate
|
||||
END AS Vege -- A három közül a legkisebb
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES csop
|
||||
ON tcs.C_TANULOID = csop.C_TANULOID
|
||||
AND csop.C_OSZTALYCSOPORTID = @pOsztalyCsoportId
|
||||
AND csop.C_BELEPESDATUM <= @pEndDate
|
||||
AND (csop.C_KILEPESDATUM > @pStartDate OR csop.C_KILEPESDATUM IS NULL)
|
||||
AND csop.TOROLT = 'F'
|
||||
INNER JOIN T_CSOPORT_OSSZES cs
|
||||
ON cs.ID = tcs.C_OSZTALYCSOPORTID
|
||||
AND (cs.C_OSZTALYBONTASID IS NULL OR cs.C_OSZTALYBONTASID = @osztalyId)
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = cs.ID AND ocs.TOROLT='F' AND ocs.C_FELADATKATEGORIAID = @kategoriaId
|
||||
WHERE tcs.C_OSZTALYCSOPORTID <> @pOsztalyCsoportId
|
||||
AND tcs.C_TANEVID = @pTanevId
|
||||
AND tcs.C_INTEZMENYID = @pIntezmenyId
|
||||
AND tcs.C_BELEPESDATUM <= @pEndDate
|
||||
AND (tcs.C_KILEPESDATUM > @pStartDate OR tcs.C_KILEPESDATUM IS NULL)
|
||||
AND tcs.TOROLT = 'F' AND csop.TOROLT = 'F'
|
||||
GROUP BY tcs.C_OSZTALYCSOPORTID
|
||||
END
|
||||
|
||||
IF EXISTS (SELECT 1 FROM T_CSOPORT_OSSZES WHERE ID = @pOsztalyCsoportId AND C_OSZTALYBONTASID IS NULL AND TOROLT = 'F') BEGIN
|
||||
|
||||
INSERT INTO @Result (Id, Kezdete, Vege) /* Az csoport tanulóinak más csoportjai */
|
||||
SELECT
|
||||
tcs.C_OSZTALYCSOPORTID AS Id
|
||||
,CASE
|
||||
WHEN MIN(tcs.C_BELEPESDATUM) > MIN(csop.C_BELEPESDATUM) AND MIN(tcs.C_BELEPESDATUM) > @pStartDate THEN MIN(tcs.C_BELEPESDATUM)
|
||||
WHEN MIN(csop.C_BELEPESDATUM) > MIN(tcs.C_BELEPESDATUM) AND MIN(csop.C_BELEPESDATUM) > @pStartDate THEN MIN(csop.C_BELEPESDATUM)
|
||||
ELSE @pStartDate
|
||||
END AS Kezdete -- A három közül a legnagyobb
|
||||
,CASE
|
||||
WHEN MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate)) < MAX(ISNULL(csop.C_KILEPESDATUM, @pEndDate)) AND MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate)) < @pEndDate THEN MIN(ISNULL(tcs.C_KILEPESDATUM, @pEndDate))
|
||||
WHEN MAX(ISNULL(csop.C_KILEPESDATUM, @pEndDate)) < MAX(ISNULL(tcs.C_KILEPESDATUM, @pEndDate)) AND MAX(ISNULL(csop.C_KILEPESDATUM, @pEndDate)) < @pEndDate THEN MIN(ISNULL(csop.C_KILEPESDATUM, @pEndDate))
|
||||
ELSE @pEndDate
|
||||
END AS Vege -- A három közül a legkisebb
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES csop
|
||||
ON tcs.C_TANULOID = csop.C_TANULOID
|
||||
AND csop.C_OSZTALYCSOPORTID = @pOsztalyCsoportId
|
||||
AND csop.C_BELEPESDATUM <= @pEndDate
|
||||
AND (csop.C_KILEPESDATUM > @pStartDate OR csop.C_KILEPESDATUM IS NULL)
|
||||
AND csop.TOROLT = 'F'
|
||||
AND csop.C_BELEPESDATUM <= ISNULL(tcs.C_KILEPESDATUM, @pEndDate) AND ISNULL(csop.C_KILEPESDATUM, @pEndDate) > tcs.C_BELEPESDATUM
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = tcs.C_OSZTALYCSOPORTID AND ocs.TOROLT='F' AND ocs.C_FELADATKATEGORIAID = @kategoriaId
|
||||
WHERE tcs.C_TANEVID = @pTanevId
|
||||
AND tcs.C_INTEZMENYID = @pIntezmenyId
|
||||
AND tcs.C_BELEPESDATUM <= @pEndDate
|
||||
AND (tcs.C_KILEPESDATUM > @pStartDate OR tcs.C_KILEPESDATUM IS NULL)
|
||||
AND tcs.TOROLT = 'F' AND csop.TOROLT = 'F'
|
||||
GROUP BY tcs.C_OSZTALYCSOPORTID
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM @Result WHERE ID = @pOsztalyCsoportId) BEGIN
|
||||
INSERT INTO @Result (Id, Kezdete, Vege)
|
||||
SELECT
|
||||
@pOsztalyCsoportId AS Id
|
||||
,t.C_KEZDONAP as Kezdete
|
||||
,t.C_UTOLSONAP as Vege
|
||||
FROM T_TANEV t
|
||||
WHERE t.ID = @pTanevId
|
||||
END
|
||||
END
|
||||
|
||||
RETURN
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,64 @@
|
|||
/*
|
||||
Minden olyan esetben amikor egy osztályhoz tartozó csoportokat kell meghatározni,
|
||||
akkor az alábbi módon kell ezeket megadni:
|
||||
a. Egy osztályhoz tartozik minden olyan csoport, amelynek tagja az osztály bármelyik tanulója.
|
||||
Tehát ha egy osztályból akár egyetlen tanuló is tagja egy csoportnak, akkor az az osztályhoz is kapcsolódik.
|
||||
b. Továbbá egy osztályhoz mindig kapcsolódnak az osztálybontásosnak jelölt csoportjaik is,
|
||||
függetlenül attól, hogy abban van-e tanuló!
|
||||
*/
|
||||
|
||||
DROP FUNCTION IF EXISTS fnGetKapcsolodoOsztalycsoportok
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetKapcsolodoOsztalycsoportok (
|
||||
@osztalyCsoportId int
|
||||
)
|
||||
RETURNS @ocs TABLE (ID int)
|
||||
AS BEGIN
|
||||
|
||||
DECLARE @kategoriaId int = (SELECT C_FELADATKATEGORIAID FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztalyCsoportId)
|
||||
|
||||
INSERT INTO @ocs
|
||||
SELECT @osztalyCsoportId AS ID /* Önmaga */
|
||||
|
||||
UNION
|
||||
|
||||
SELECT ID /* Osztály esetén, a bontott csoportok */
|
||||
FROM T_CSOPORT_OSSZES
|
||||
WHERE C_OSZTALYBONTASID = @osztalyCsoportId AND TOROLT = 'F'
|
||||
|
||||
UNION
|
||||
|
||||
SELECT C_OSZTALYBONTASID AS ID /* Csoport esetén, a ha bontott, akkor az osztálya */
|
||||
FROM T_CSOPORT_OSSZES
|
||||
WHERE ID = @osztalyCsoportId
|
||||
AND C_OSZTALYBONTASID IS NOT NULL AND TOROLT = 'F'
|
||||
|
||||
UNION
|
||||
|
||||
SELECT ID /* Csoport esetén, a ha bontott, akkor az osztályának a többi csoportbontása */
|
||||
FROM T_CSOPORT_OSSZES
|
||||
WHERE C_OSZTALYBONTASID IN (
|
||||
SELECT C_OSZTALYBONTASID FROM T_CSOPORT_OSSZES
|
||||
WHERE ID = @osztalyCsoportId AND TOROLT = 'F'
|
||||
) AND TOROLT ='F'
|
||||
|
||||
UNION
|
||||
|
||||
SELECT tcs2.C_OSZTALYCSOPORTID /* Azok az osztálycsoportok, ahová járnak tanulók a @osztalyCsoportId-ból */
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs2 ON tcs2.C_TANULOID = tcs.C_TANULOID
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = tcs2.C_OSZTALYCSOPORTID
|
||||
--NOTE: A T_CSOPORT_OSSZES INNER JOIN-ra azért van szükség, mert az AMI-nál visszaadná a többi osztályt is, amibe még jár, de azok nem kapcsolódóak.
|
||||
INNER JOIN T_CSOPORT_OSSZES cs ON cs.ID = ocs.ID AND cs.C_OSZTALYBONTASID IS NULL
|
||||
INNER JOIN T_TANEV_OSSZES tanev ON tanev.ID = tcs.C_TANEVID AND tanev.TOROLT = 'F'
|
||||
WHERE tcs.C_OSZTALYCSOPORTID = @osztalyCsoportId
|
||||
AND tcs.C_BELEPESDATUM <= GETDATE() AND (tcs.C_KILEPESDATUM > GETDATE() OR tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM >= tanev.C_UTOLSOTANITASINAP)
|
||||
AND tcs2.C_BELEPESDATUM <= GETDATE() AND (tcs2.C_KILEPESDATUM > GETDATE() OR tcs2.C_KILEPESDATUM IS NULL OR tcs2.C_KILEPESDATUM >= tanev.C_UTOLSOTANITASINAP)
|
||||
AND tcs.TOROLT = 'F'
|
||||
AND tcs2.TOROLT = 'F'
|
||||
AND ocs.C_FELADATKATEGORIAID = @kategoriaId
|
||||
|
||||
RETURN
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,64 @@
|
|||
/*
|
||||
Minden olyan esetben amikor egy osztályhoz tartozó csoportokat kell meghatározni,
|
||||
akkor az alábbi módon kell ezeket megadni:
|
||||
a. Egy osztályhoz tartozik minden olyan csoport, amelynek tagja az osztály bármelyik tanulója.
|
||||
Tehát ha egy osztályból akár egyetlen tanuló is tagja egy csoportnak, akkor az az osztályhoz is kapcsolódik.
|
||||
b. Továbbá egy osztályhoz mindig kapcsolódnak az osztálybontásosnak jelölt csoportjaik is,
|
||||
függetlenül attól, hogy abban van-e tanuló!
|
||||
*/
|
||||
|
||||
DROP FUNCTION IF EXISTS fnGetKapcsolodoOsztalycsoportokByDate
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetKapcsolodoOsztalycsoportokByDate (
|
||||
@osztalyCsoportId int
|
||||
,@start datetime
|
||||
,@end datetime
|
||||
)
|
||||
RETURNS @ocs TABLE (ID int)
|
||||
AS BEGIN
|
||||
|
||||
DECLARE @kategoriaId int = (SELECT C_FELADATKATEGORIAID FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztalyCsoportId)
|
||||
|
||||
INSERT INTO @ocs
|
||||
|
||||
SELECT @osztalyCsoportId AS ID /* Önmaga */
|
||||
|
||||
UNION
|
||||
|
||||
SELECT ID /* Osztály esetén, a bontott csoportok */
|
||||
FROM T_CSOPORT_OSSZES
|
||||
WHERE C_OSZTALYBONTASID = @osztalyCsoportId AND TOROLT = 'F'
|
||||
|
||||
UNION
|
||||
|
||||
SELECT C_OSZTALYBONTASID AS ID /* Csoport esetén, a ha bontott, akkor az osztálya */
|
||||
FROM T_CSOPORT_OSSZES
|
||||
WHERE ID = @osztalyCsoportId
|
||||
AND C_OSZTALYBONTASID IS NOT NULL AND TOROLT = 'F'
|
||||
|
||||
UNION
|
||||
|
||||
SELECT ID /* Csoport esetén, a ha bontott, akkor az osztályának a többi csoportbontása */
|
||||
FROM T_CSOPORT_OSSZES
|
||||
WHERE C_OSZTALYBONTASID IN (
|
||||
SELECT C_OSZTALYBONTASID FROM T_CSOPORT_OSSZES
|
||||
WHERE ID = @osztalyCsoportId AND TOROLT = 'F'
|
||||
) AND TOROLT ='F'
|
||||
|
||||
UNION
|
||||
|
||||
SELECT tcs2.C_OSZTALYCSOPORTID /* Azok az osztálycsoportok, ahová járnak tanulók a @osztalyCsoportId-ból */
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs2 ON tcs2.C_TANULOID = tcs.C_TANULOID
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = tcs2.C_OSZTALYCSOPORTID and ocs.TOROLT='F'
|
||||
WHERE tcs.C_OSZTALYCSOPORTID = @osztalyCsoportId
|
||||
AND tcs.C_BELEPESDATUM <= @end AND (tcs.C_KILEPESDATUM > @start OR tcs.C_KILEPESDATUM IS NULL)
|
||||
AND tcs2.C_BELEPESDATUM <= @end AND (tcs2.C_KILEPESDATUM > @start OR tcs2.C_KILEPESDATUM IS NULL)
|
||||
AND tcs.TOROLT = 'F'
|
||||
AND tcs2.TOROLT = 'F'
|
||||
AND ocs.C_FELADATKATEGORIAID = @kategoriaId
|
||||
|
||||
RETURN
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,40 @@
|
|||
DROP FUNCTION IF EXISTS [dbo].[fnGetKapcsolodoTantargyak]
|
||||
GO
|
||||
|
||||
CREATE FUNCTION [dbo].[fnGetKapcsolodoTantargyak] (
|
||||
@pIntezmenyId INT
|
||||
,@pTanevId INT
|
||||
,@pTantargyId INT
|
||||
)
|
||||
RETURNS @return TABLE (
|
||||
ID INT
|
||||
,C_FOTARGYID INT
|
||||
,C_NEV NVARCHAR(255)
|
||||
,C_TARGYKATEGORIA INT
|
||||
,C_INTEZMENYID INT
|
||||
,C_TANEVID INT
|
||||
,C_ISTANULMANYIATLAGBANEMSZAMIT CHAR(1)
|
||||
)
|
||||
BEGIN
|
||||
IF @pTantargyId IS NULL
|
||||
BEGIN
|
||||
INSERT INTO @return
|
||||
SELECT ID, C_FOTARGYID, C_NEV, C_TARGYKATEGORIA, C_INTEZMENYID, C_TANEVID, C_ISTANULMANYIATLAGBANEMSZAMIT FROM T_TANTARGY_OSSZES WHERE C_INTEZMENYID = @pIntezmenyId AND C_TANEVID = @pTanevId AND TOROLT = 'F'
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO @return
|
||||
SELECT ID, C_FOTARGYID, C_NEV, C_TARGYKATEGORIA, C_INTEZMENYID, C_TANEVID, C_ISTANULMANYIATLAGBANEMSZAMIT FROM T_TANTARGY_OSSZES WHERE ID = @pTantargyId AND C_INTEZMENYID = @pIntezmenyId AND C_TANEVID = @pTanevId AND TOROLT = 'F'
|
||||
UNION
|
||||
SELECT ID, C_FOTARGYID, C_NEV, C_TARGYKATEGORIA, C_INTEZMENYID, C_TANEVID, C_ISTANULMANYIATLAGBANEMSZAMIT FROM T_TANTARGY_OSSZES WHERE C_FOTARGYID = @pTantargyId AND C_INTEZMENYID = @pIntezmenyId AND C_TANEVID = @pTanevId AND TOROLT = 'F'
|
||||
UNION
|
||||
SELECT ID, C_FOTARGYID, C_NEV, C_TARGYKATEGORIA, C_INTEZMENYID, C_TANEVID, C_ISTANULMANYIATLAGBANEMSZAMIT FROM T_TANTARGY_OSSZES WHERE C_FOTARGYID = (SELECT C_FOTARGYID FROM T_TANTARGY_OSSZES WHERE ID = @pTantargyId AND C_INTEZMENYID = @pIntezmenyId AND C_TANEVID = @pTanevId AND TOROLT = 'F') AND C_INTEZMENYID = @pIntezmenyId AND C_TANEVID = @pTanevId AND TOROLT = 'F'
|
||||
UNION
|
||||
SELECT ID, C_FOTARGYID, C_NEV, C_TARGYKATEGORIA, C_INTEZMENYID, C_TANEVID, C_ISTANULMANYIATLAGBANEMSZAMIT FROM T_TANTARGY_OSSZES WHERE ID = (SELECT C_FOTARGYID FROM T_TANTARGY_OSSZES WHERE ID = @pTantargyId AND C_INTEZMENYID = @pIntezmenyId AND C_TANEVID = @pTanevId AND TOROLT = 'F') AND C_INTEZMENYID = @pIntezmenyId AND C_TANEVID = @pTanevId AND TOROLT = 'F'
|
||||
ORDER BY C_FOTARGYID ASC, C_NEV ASC
|
||||
END
|
||||
RETURN
|
||||
END
|
||||
|
||||
GO
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
DROP FUNCTION IF EXISTS fnGetLathatoSzervezetek
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetLathatoSzervezetek (
|
||||
@pIntezmenyId INT
|
||||
,@pTanevId INT
|
||||
,@pSzervezetId INT = NULL
|
||||
,@pAdatokHalmaza INT = 0 -- 0: megadott szervezet és alszervezetei, 1: megadott szervezet (SzervezetId = NULL esetén az ősszes székhely), 2: megadott szervezet alszervezetei
|
||||
)
|
||||
RETURNS TABLE
|
||||
RETURN (
|
||||
SELECT
|
||||
ID
|
||||
FROM T_SZERVEZET_OSSZES sz
|
||||
WHERE sz.TOROLT = 'F'
|
||||
AND sz.C_TANEVID = @pTanevId
|
||||
AND sz.C_INTEZMENYID = @pIntezmenyId
|
||||
AND ((@pAdatokHalmaza = 1 AND @pSzervezetId IS NOT NULL AND ID = @pSzervezetId)
|
||||
OR (@pAdatokHalmaza = 1 AND @pSzervezetId IS NULL AND C_PARENTSZERVEZETID IS NULL)
|
||||
OR (@pAdatokHalmaza = 2 AND @pSzervezetId IS NOT NULL AND C_PARENTSZERVEZETID = @pSzervezetId)
|
||||
OR (@pAdatokHalmaza = 0 AND @pSzervezetId IS NOT NULL AND (C_PARENTSZERVEZETID = @pSzervezetId OR ID = @pSzervezetId))
|
||||
OR (@pAdatokHalmaza = 0 AND @pSzervezetId IS NULL))
|
||||
);
|
||||
|
||||
GO
|
||||
|
|
@ -0,0 +1,224 @@
|
|||
DROP FUNCTION IF EXISTS fnGetLemorzsolodottTanulokByFelhely
|
||||
GO
|
||||
|
||||
CREATE FUNCTION [dbo].[fnGetLemorzsolodottTanulokByFelhely] (
|
||||
@feladatEllatasiHelyId int
|
||||
,@tanevId int
|
||||
,@isFelevi int
|
||||
,@osztalyzatTipusTypeID int = 44
|
||||
)
|
||||
RETURNS @FHHozTartozoTanulok TABLE(
|
||||
TanuloId int
|
||||
,Evfolyam int
|
||||
,Neme int
|
||||
,TanuloNev nvarchar(510)
|
||||
,OktatasiAzonosito nvarchar(11)
|
||||
,OsztalyNev nvarchar(510)
|
||||
,OsztalyId int
|
||||
,KozepesMiatt bit
|
||||
,RontottMiatt bit
|
||||
)
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
DECLARE @Tanulok TABLE(
|
||||
TanuloId int
|
||||
,EvFolyam int
|
||||
,Neme int
|
||||
,NyomtatasiNev nvarchar(510)
|
||||
,OktatasiAzonosito nvarchar(11)
|
||||
,OsztalyNev nvarchar(510)
|
||||
,OsztalyId int
|
||||
)
|
||||
DECLARE @Osztalyzatok TABLE(
|
||||
Id int
|
||||
,Ertek float
|
||||
)
|
||||
DECLARE @TanuloAtlagok TABLE(
|
||||
TanuloId int
|
||||
,AktualisAtlag float
|
||||
,KorabbiAtlag float
|
||||
)
|
||||
DECLARE @KozepesAlattiTanulok TABLE(
|
||||
TanuloId int
|
||||
)
|
||||
DECLARE @RontottTanulok TABLE(
|
||||
TanuloId int
|
||||
)
|
||||
DECLARE @EslTantargyak TABLE(
|
||||
TantargyId int
|
||||
,TanevId int
|
||||
)
|
||||
-- Mi a "Közepes" értéke az adott feladatellátási helyen
|
||||
DECLARE @FelHelyTipusKozepes float = 3.0
|
||||
|
||||
DECLARE @ErtekelesTipus int = IIF(@isFelevi = 0,1520,1519)
|
||||
DECLARE @ExErtekelesTipus int = IIF(@ErtekelesTipus = 1520,1519,1520)
|
||||
|
||||
SELECT
|
||||
@FelHelyTipusKozepes = onf.C_ESLKOZEPESATLAG
|
||||
FROM T_FELADATELLATASIHELY fh
|
||||
INNER JOIN T_OKTATASINEVELESIFELADAT onf ON onf.ID = fh.C_OKTATASINEVELESIFELADATTIPUS AND onf.C_ALTANEVID = fh.C_TANEVID AND onf.TOROLT = 'F'
|
||||
WHERE fh.ID = @feladatEllatasiHelyId AND fh.TOROLT='F'
|
||||
|
||||
-- Az elõzõ tanév ID-ja
|
||||
DECLARE @ElozoTanevId int = 0
|
||||
|
||||
IF @IsFelevi = 0
|
||||
BEGIN
|
||||
SET @ElozoTanevId = @tanevId
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SELECT @ElozoTanevId = ISNULL(elozotanev.ID,0)
|
||||
FROM T_TANEV akttanev
|
||||
INNER JOIN T_TANEV_OSSZES elozotanev ON elozotanev.TOROLT = 'F' AND elozotanev.C_SORSZAM = akttanev.C_SORSZAM-2
|
||||
AND elozotanev.C_INTEZMENYID = akttanev.C_INTEZMENYID
|
||||
WHERE akttanev.ID = @tanevId
|
||||
END
|
||||
|
||||
DECLARE @BesorolasiDatum DATE = (SELECT TOP 1 C_DATUM from T_TANEVRENDJE tr WHERE C_NAPTIPUSA = IIF(@isFelevi = 0,1395,1400) AND C_TANEVID = @tanevid AND TOROLT='F')
|
||||
|
||||
INSERT INTO @Osztalyzatok
|
||||
SELECT
|
||||
ID
|
||||
,CONVERT(float,C_VALUE)
|
||||
FROM T_DICTIONARYITEMBASE
|
||||
WHERE C_DICTIONARYTYPEID = @osztalyzatTipusTypeID AND C_TANEVID = @tanevId AND TOROLT='F'
|
||||
|
||||
INSERT INTO @EslTantargyak (
|
||||
TantargyId
|
||||
,TanevId
|
||||
)
|
||||
SELECT
|
||||
tgy.ID
|
||||
,@tanevId
|
||||
FROM T_TANTARGY tgy
|
||||
WHERE (tgy.C_ALTANTARGYKENTNYOMTATVANYBAN='T' OR tgy.C_FOTARGYE='T')
|
||||
AND tgy.C_TANEVID = @tanevId AND tgy.TOROLT='F'
|
||||
AND tgy.C_ESLTANTARGYKATEGORIAID IS NOT NULL
|
||||
UNION
|
||||
SELECT
|
||||
tgy.ID
|
||||
,@ElozoTanevId
|
||||
FROM T_TANTARGY_OSSZES tgy
|
||||
WHERE (tgy.C_ALTANTARGYKENTNYOMTATVANYBAN='T' OR tgy.C_FOTARGYE='T')
|
||||
AND tgy.C_TANEVID = @ElozoTanevId AND tgy.TOROLT='F'
|
||||
AND tgy.C_ESLTANTARGYKATEGORIAID IS NOT NULL
|
||||
|
||||
-- Egy adott FH-hoz tartozó tanulók kilistázása (évfolyamonként, nemenként) összevont osztályokkal együtt
|
||||
INSERT INTO @Tanulok /*TODO:Tobb Osztaly*//*OM-1582*/
|
||||
SELECT DISTINCT
|
||||
tcs.C_TANULOID
|
||||
,ISNULL(tta.C_TANULOEVFOLYAMTIPUSID,1307)
|
||||
,f.C_NEME
|
||||
,f.C_NYOMTATASINEV
|
||||
,f.C_OKTATASIAZONOSITO
|
||||
,ocs.C_NEV
|
||||
,ocs.ID
|
||||
FROM T_OSZTALYCSOPORT ocs
|
||||
INNER JOIN T_OSZTALY o ON o.ID = ocs.ID AND o.TOROLT='F'
|
||||
INNER JOIN T_TANULOCSOPORT tcs ON tcs.C_OSZTALYCSOPORTID = o.ID AND tcs.TOROLT = 'F'
|
||||
AND @BesorolasiDatum >= tcs.C_BELEPESDATUM AND (@BesorolasiDatum < tcs.C_KILEPESDATUM OR tcs.C_KILEPESDATUM IS NULL)
|
||||
INNER JOIN T_TANULOTANUGYIADATOK tta ON tta.C_TANULOCSOPORTID = tcs.ID AND tta.TOROLT = 'F' /*Ha a tanuló összevont évfolyamú osztályba jár, de van megadva neki egyénileg évfolyam a tanügyi adataiban,*/
|
||||
INNER JOIN T_FELHASZNALO f ON f.ID = tcs.C_TANULOID AND f.TOROLT='F' /*akkor azt kell megjeleníteni*/
|
||||
INNER JOIN T_EVFOLYAMTIPUS evtip ON evtip.ID = ocs.C_EVFOLYAMTIPUSA AND evtip.TOROLT = 'F' AND evtip.C_ALTANEVID = ocs.C_TANEVID
|
||||
WHERE ocs.C_FELADATELLATASIHELYID = @feladatEllatasiHelyId
|
||||
AND ocs.C_TANEVID = @tanevId AND ocs.C_KEPZESIFORMA = 1096 --Nappali rendszerű iskolai oktatás
|
||||
AND ocs.TOROLT = 'F'
|
||||
AND evtip.C_ISOSSZEVONT = 'T'
|
||||
UNION
|
||||
SELECT DISTINCT
|
||||
tcs.C_TANULOID
|
||||
,ocs.C_EVFOLYAMTIPUSA
|
||||
,f.C_NEME
|
||||
,f.C_NYOMTATASINEV
|
||||
,f.C_OKTATASIAZONOSITO
|
||||
,ocs.C_NEV
|
||||
,ocs.ID
|
||||
FROM T_OSZTALYCSOPORT ocs
|
||||
INNER JOIN T_TANULOCSOPORT tcs ON tcs.C_OSZTALYCSOPORTID = ocs.ID AND tcs.TOROLT = 'F'
|
||||
AND @BesorolasiDatum >= tcs.C_BELEPESDATUM AND (@BesorolasiDatum < tcs.C_KILEPESDATUM OR tcs.C_KILEPESDATUM IS NULL)
|
||||
INNER JOIN T_OSZTALY o ON o.id = tcs.C_OSZTALYCSOPORTID AND o.TOROLT='F'
|
||||
INNER JOIN T_FELHASZNALO f ON f.id = tcs.C_TANULOID AND f.TOROLT='F'
|
||||
INNER JOIN T_EVFOLYAMTIPUS evtip ON evtip.ID = ocs.C_EVFOLYAMTIPUSA AND evtip.TOROLT = 'F' AND evtip.C_ALTANEVID = ocs.C_TANEVID
|
||||
WHERE ocs.C_FELADATELLATASIHELYID = @feladatEllatasiHelyId
|
||||
AND ocs.C_TANEVID = @tanevId AND ocs.C_KEPZESIFORMA = 1096
|
||||
AND ocs.TOROLT = 'F'
|
||||
AND evtip.C_ISOSSZEVONT = 'F'
|
||||
|
||||
DELETE FROM @Tanulok WHERE Evfolyam BETWEEN 1303 AND 1306 --1-4 évfolyamok nem kellenek
|
||||
-- Visszatérési tábla számítása
|
||||
|
||||
INSERT INTO @KozepesAlattiTanulok (TanuloId)
|
||||
SELECT DISTINCT
|
||||
fht.TanuloId
|
||||
FROM T_TANULOERTEKELES te
|
||||
INNER JOIN @EslTantargyak tgy ON tgy.TanevId = te.C_TANEVID AND tgy.TantargyId = te.C_TANTARGYID
|
||||
INNER JOIN @Osztalyzatok o ON o.ID = te.C_ERTEKELESOSZTALYZATID
|
||||
INNER JOIN @Tanulok fht ON fht.TanuloId = te.C_TANULOID
|
||||
LEFT JOIN T_CSOPORT cs ON cs.ID=te.C_OSZTALYCSOPORTID AND cs.TOROLT='F'
|
||||
WHERE te.C_TIPUSID = @ErtekelesTipus AND ISNULL(cs.C_TIPUSA,0) NOT IN (SELECT ID FROM T_CSOPORTTIPUS WHERE C_ISMUVESZETI = 'T' AND C_ALTANEVID = @tanevId) --alapf. műv okt csoportok osztályzatai nem kellenek
|
||||
AND te.TOROLT='F' AND te.C_TANEVID = @tanevId
|
||||
GROUP BY fht.TanuloId
|
||||
HAVING ROUND(AVG(o.Ertek),2) < @FelHelyTipusKozepes
|
||||
|
||||
INSERT INTO @TanuloAtlagok (
|
||||
TanuloId
|
||||
,AktualisAtlag
|
||||
,KorabbiAtlag
|
||||
)
|
||||
SELECT
|
||||
fht.TanuloId
|
||||
,(
|
||||
SELECT
|
||||
ROUND(AVG(o.Ertek),2)
|
||||
FROM T_TANULOERTEKELES te
|
||||
INNER JOIN @Osztalyzatok o ON o.ID = te.C_ERTEKELESOSZTALYZATID
|
||||
INNER JOIN @EslTantargyak tgy ON tgy.Tantargyid = te.C_TANTARGYID AND tgy.TanevId = te.C_TANEVID
|
||||
WHERE te.C_TANULOID = tanulo.ID AND te.C_TIPUSID = @ErtekelesTipus AND te.TOROLT='F' AND te.C_TANEVID = tanulo.C_TANEVID
|
||||
AND NOT EXISTS(SELECT 1 FROM T_CSOPORT WHERE ID = te.C_OSZTALYCSOPORTID AND C_TIPUSA IN (SELECT ID FROM T_CSOPORTTIPUS WHERE C_ISMUVESZETI = 'T' AND C_ALTANEVID = @tanevId))
|
||||
) AktualisAtlag
|
||||
,(
|
||||
SELECT
|
||||
ROUND(AVG(o.Ertek),2)
|
||||
FROM T_TANULOERTEKELES_OSSZES te
|
||||
INNER JOIN @Osztalyzatok o ON o.ID = te.C_ERTEKELESOSZTALYZATID
|
||||
INNER JOIN @EslTantargyak tgy ON tgy.Tantargyid = te.C_TANTARGYID AND tgy.TanevId = te.C_TANEVID
|
||||
WHERE te.C_TANULOID = extanulo.ID AND te.C_TIPUSID = @ExErtekelesTipus AND te.TOROLT = 'F' AND te.C_TANEVID = extanulo.C_TANEVID
|
||||
AND NOT EXISTS(SELECT 1 FROM T_CSOPORT_OSSZES WHERE ID = te.C_OSZTALYCSOPORTID AND C_TIPUSA IN (SELECT ID FROM T_CSOPORTTIPUS WHERE C_ISMUVESZETI = 'T' AND C_ALTANEVID = @tanevId) AND TOROLT='F')
|
||||
) KorabbiAtlag
|
||||
FROM @Tanulok fht
|
||||
INNER JOIN T_FELHASZNALO_OSSZES tanulo ON tanulo.ID = fht.TanuloId
|
||||
INNER JOIN T_TANULO_OSSZES t ON t.ID = tanulo.ID
|
||||
INNER JOIN T_FELHASZNALO_OSSZES extanulo ON tanulo.C_OKTATASIAZONOSITO = extanulo.C_OKTATASIAZONOSITO
|
||||
AND extanulo.C_TANEVID = @ElozoTanevId AND extanulo.TOROLT = 'F'
|
||||
INNER JOIN T_TANULO_OSSZES exT ON exT.ID = extanulo.ID
|
||||
|
||||
INSERT INTO @RontottTanulok (TanuloId)
|
||||
SELECT DISTINCT
|
||||
fht.TanuloId
|
||||
FROM @Tanulok fht
|
||||
INNER JOIN @TanuloAtlagok ta ON ta.TanuloId = fht.TanuloId
|
||||
WHERE (ta.AktualisAtlag+1.1) <= ta.KorabbiAtlag
|
||||
|
||||
INSERT INTO @FhHozTartozoTanulok
|
||||
SELECT
|
||||
fht.TanuloId
|
||||
,fht.Evfolyam
|
||||
,fht.Neme
|
||||
,fht.NyomtatasiNev
|
||||
,fht.OktatasiAzonosito
|
||||
,fht.Osztalynev
|
||||
,fht.OsztalyId
|
||||
,IIF(kozepes.TanuloId IS NULL, 0, 1)
|
||||
,IIF(rontott.TanuloId IS NULL, 0, 1)
|
||||
FROM @Tanulok fht
|
||||
LEFT JOIN @KozepesAlattiTanulok kozepes ON kozepes.TanuloId = fht.TanuloId
|
||||
LEFT JOIN @RontottTanulok rontott ON rontott.TanuloId = fht.TanuloId
|
||||
WHERE (kozepes.TanuloId IS NOT NULL OR rontott.TanuloId IS NOT NULL)
|
||||
|
||||
RETURN
|
||||
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,36 @@
|
|||
DROP FUNCTION IF EXISTS fnGetNapirendUtkozesByOsztalycsoport
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetNapirendUtkozesByOsztalycsoport (
|
||||
@startTime datetime
|
||||
,@endTime datetime
|
||||
,@osztalyCsoportId int
|
||||
,@intezmenyId int
|
||||
,@tanevId int
|
||||
) RETURNS INT
|
||||
BEGIN
|
||||
IF EXISTS (
|
||||
SELECT 1
|
||||
FROM T_NAPTARINAP_OSSZES n
|
||||
LEFT JOIN T_TANEVRENDJE_OSSZES tr ON tr.C_DATUM = n.C_NAPDATUMA
|
||||
INNER JOIN T_ORARENDIORA_OSSZES o ON ISNULL(tr.C_HETIREND, n.C_HETIREND) = o.C_HETIREND
|
||||
AND ISNULL(tr.C_HETNAPJA, n.C_HETNAPJA) = o.C_HETNAPJA
|
||||
AND n.C_INTEZMENYID = o.C_INTEZMENYID
|
||||
AND n.C_TANEVID = o.C_TANEVID
|
||||
WHERE CAST(CAST(@startTime AS DATE) AS DATETIME) + CAST(CAST(o.C_ORAKEZDETE AS TIME) AS DATETIME) <= @endTime
|
||||
AND CAST(CAST(@endTime AS DATE) AS DATETIME) + CAST(CAST(o.C_ORAVEGE AS TIME) AS DATETIME) >= @startTime
|
||||
AND o.C_OSZTALYCSOPORTID IN (SELECT ID FROM dbo.fnGetKapcsolodoOsztalycsoportok(@osztalyCsoportId))
|
||||
AND n.C_TANEVID = @tanevId AND n.C_INTEZMENYID = @intezmenyId
|
||||
AND n.C_NAPDATUMA BETWEEN CAST(@startTime AS DATE) AND CAST(@endTime AS DATE)
|
||||
UNION ALL
|
||||
SELECT 1 FROM T_TANITASIORA_OSSZES o
|
||||
WHERE o.C_ORAKEZDETE <= @endTime
|
||||
AND o.C_ORAVEGE >= @startTime
|
||||
AND o.C_OSZTALYCSOPORTID IN (SELECT ID FROM dbo.fnGetKapcsolodoOsztalycsoportok(@osztalyCsoportId))
|
||||
)
|
||||
BEGIN
|
||||
RETURN 1
|
||||
END
|
||||
RETURN 0
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,41 @@
|
|||
IF OBJECT_ID('fnGetNapirendUtkozesByTanar') IS NOT NULL BEGIN
|
||||
DROP FUNCTION fnGetNapirendUtkozesByTanar
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetNapirendUtkozesByTanar (
|
||||
@startTime datetime,
|
||||
@endTime datetime,
|
||||
@tanarId int,
|
||||
@intezmenyId int,
|
||||
@tanevId int
|
||||
) RETURNS INT
|
||||
BEGIN
|
||||
IF EXISTS (
|
||||
SELECT 1
|
||||
FROM T_NAPTARINAP_OSSZES n
|
||||
LEFT JOIN T_TANEVRENDJE_OSSZES tr ON tr.C_DATUM = n.C_NAPDATUMA
|
||||
INNER JOIN T_ORARENDIORA_OSSZES o ON ISNULL(tr.C_HETIREND, n.C_HETIREND) = o.C_HETIREND
|
||||
AND ISNULL(tr.C_HETNAPJA, n.C_HETNAPJA) = o.C_HETNAPJA
|
||||
AND n.C_INTEZMENYID = o.C_INTEZMENYID
|
||||
AND n.C_TANEVID = o.C_TANEVID
|
||||
WHERE CAST(CAST(@startTime AS DATE) AS DATETIME) + CAST(CAST(o.C_ORAKEZDETE AS TIME) AS DATETIME) <= @endTime
|
||||
AND CAST(CAST(@endTime AS DATE) AS DATETIME) + CAST(CAST(o.C_ORAVEGE AS TIME) AS DATETIME) >= @startTime
|
||||
AND o.C_TANARID = @tanarId
|
||||
AND n.C_TANEVID = @tanevId AND n.C_INTEZMENYID = @intezmenyId
|
||||
AND n.C_NAPDATUMA BETWEEN CAST(@startTime AS DATE) AND CAST(@endTime AS DATE)
|
||||
UNION ALL
|
||||
SELECT 1 FROM T_TANITASIORA_OSSZES o
|
||||
WHERE o.C_ORAKEZDETE <= @endTime
|
||||
AND o.C_ORAVEGE >= @startTime
|
||||
AND ISNULL(o.C_HELYETTESITOTANARID, o.C_ORATULAJDONOSID) = @tanarId
|
||||
AND o.C_TANEVID = @tanevId
|
||||
AND o.C_INTEZMENYID = @intezmenyId
|
||||
)
|
||||
BEGIN
|
||||
RETURN 1
|
||||
END
|
||||
RETURN 0
|
||||
END
|
||||
GO
|
||||
|
|
@ -0,0 +1,32 @@
|
|||
DROP FUNCTION IF EXISTS fnGetOrahossz
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetOrahossz (@csengetesiRendOraId int, @oraKezdete datetime, @oraVege datetime, @feladatKategoriaId int, @csoportId int, @oktatasiNevelesiFeladatTipus int, @csoportTipusOraperc int)
|
||||
RETURNS FLOAT
|
||||
AS BEGIN
|
||||
|
||||
DECLARE @result float;
|
||||
|
||||
SET @result =
|
||||
IIF(@csengetesiRendOraId IS NOT NULL
|
||||
,1
|
||||
,CONVERT(FLOAT,
|
||||
(
|
||||
DATEDIFF(minute, @oraKezdete, @oraVege)
|
||||
+ IIF(@feladatKategoriaId = 7556 AND DATEPART(hour, @oraVege) = 23 AND DATEPART(minute, @oraVege) = 59
|
||||
,1
|
||||
,0)
|
||||
)
|
||||
)
|
||||
/
|
||||
IIF(@csoportId IS NULL
|
||||
,IIF(@feladatKategoriaId = 7556 OR (@oktatasiNevelesiFeladatTipus IN (1157, 1166, 1177, 6570, 7762))
|
||||
,60
|
||||
,45)
|
||||
,@csoportTipusOraperc)
|
||||
)
|
||||
|
||||
RETURN @result;
|
||||
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,34 @@
|
|||
DROP FUNCTION IF EXISTS fnGetOsztalyCsoportTanuloOsztalyList
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetOsztalyCsoportTanuloOsztalyList (
|
||||
@pTanevId int
|
||||
,@pOsztalyCsoportId int
|
||||
,@pFeladatKategoriaId int
|
||||
,@pDatum date = NULL
|
||||
,@pIsFromSzervezet bit = 0
|
||||
)
|
||||
RETURNS TABLE
|
||||
AS RETURN
|
||||
|
||||
--NOTE: Azért kell a DISTINCT, ha ugyanoda ki-/besorolgatják a tanulót!
|
||||
SELECT DISTINCT
|
||||
TanuloCsoport.C_TANULOID
|
||||
,OsztalyCsoport.ID
|
||||
,OsztalyCsoport.C_EVFOLYAMTIPUSA
|
||||
FROM T_TANULOCSOPORT_OSSZES TanuloCsoport
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES SourceTanuloCsoport ON SourceTanuloCsoport.TOROLT = 'F'
|
||||
AND SourceTanuloCsoport.C_OSZTALYCSOPORTID = @pOsztalyCsoportId
|
||||
AND SourceTanuloCsoport.C_TANULOID = TanuloCsoport.C_TANULOID
|
||||
INNER JOIN T_OSZTALY_OSSZES Osztaly ON Osztaly.ID = TanuloCsoport.C_OSZTALYCSOPORTID AND Osztaly.C_ALTANEVID = TanuloCsoport.C_TANEVID
|
||||
AND Osztaly.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES OsztalyCsoport ON OsztalyCsoport.ID = Osztaly.ID AND OsztalyCsoport.C_TANEVID = TanuloCsoport.C_TANEVID
|
||||
AND OsztalyCsoport.TOROLT = 'F'
|
||||
AND (OsztalyCsoport.C_FELADATKATEGORIAID = @pFeladatKategoriaId OR @pIsFromSzervezet = 1)
|
||||
WHERE TanuloCsoport.C_TANEVID = @pTanevId
|
||||
AND TanuloCsoport.TOROLT = 'F'
|
||||
AND TanuloCsoport.C_BELEPESDATUM <= ISNULL(@pDatum, CONVERT(date, GETDATE()))
|
||||
AND (TanuloCsoport.C_KILEPESDATUM IS NULL OR TanuloCsoport.C_KILEPESDATUM > ISNULL(@pDatum, CONVERT(date, GETDATE())))
|
||||
|
||||
GO
|
||||
|
|
@ -0,0 +1,366 @@
|
|||
DROP FUNCTION IF EXISTS dbo.fnGetOsztalyCsoportTanuloinakTanugyiAdatai
|
||||
GO
|
||||
|
||||
/*
|
||||
1) Osztály, tudjuk (AMI-nál nem kell pár mező)
|
||||
2) Csoport, bontott, tudjuk
|
||||
3) Csoport, nem bontott, fh-n 1 osztály van ,tudjuk
|
||||
4) Csoport, nem bontott, fh-n több osztály, nem tudjuk
|
||||
5) Ha nincs Osztálya a kategórián, akkor a tanulóét
|
||||
*/
|
||||
|
||||
CREATE FUNCTION dbo.fnGetOsztalyCsoportTanuloinakTanugyiAdatai(
|
||||
@pOsztalyCsoportId int
|
||||
,@pDatum date = NULL)
|
||||
RETURNS @tanugyiAdatok TABLE(
|
||||
ID int
|
||||
,TanuloId int
|
||||
,C_BEIRASINAPLOSORSZAM nvarchar(100)
|
||||
,C_BEJARO char(1)
|
||||
,C_DIAKSPORTKOROS char(1)
|
||||
,C_EGYEBORSZAGOSDONTO char(1)
|
||||
,C_EGYUTTMUKODESES char(1)
|
||||
,C_ELOZOINTEZMENY nvarchar(510)
|
||||
,C_EVISMETLO char(1)
|
||||
,C_ISKOLAIKERETEKKOZOTT char(1)
|
||||
,C_JOGVISZONYATSZUNETELTETO char(1)
|
||||
,C_JOGVISZONYVARHATOBEFEJEZESE datetime
|
||||
,C_MAGANTANULO char(1)
|
||||
,C_MAGANTANULOSAGANAKOKAID int
|
||||
,C_MAGANTANULOSAGKEZDETE datetime
|
||||
,C_MAGANTANULOSAGVEGE datetime
|
||||
,C_NYILVANTARTASKEZDETE datetime
|
||||
,C_OSZTV char(1)
|
||||
,C_POLGARISZERZODESES char(1)
|
||||
,C_SZAKMAIGYAKORLATON char(1)
|
||||
,C_SZETVAGAZAT char(1)
|
||||
,C_SZINTVIZSGA numeric
|
||||
,C_SZKTV char(1)
|
||||
,C_TANDIJATFIZETO char(1)
|
||||
,C_TANKOTELEZETT char(1)
|
||||
,C_TANKOTELEZETTSEGVEGE datetime
|
||||
,C_TANULOEVFOLYAMTIPUSID int
|
||||
,C_TANULOSZERZODESES char(1)
|
||||
,C_TECHNIKUSIEVFOLYAM char(1)
|
||||
,C_TERITESIDIJATFIZETO char(1)
|
||||
,C_VENDEG char(1)
|
||||
,C_NAPLOSORSZAM int
|
||||
,C_TORZSLAPSZAM nvarchar(1000)
|
||||
,C_TANTERVID int
|
||||
,C_FELVETELTANEVEID int
|
||||
,C_TANULOCSOPORTID int
|
||||
,C_HOZOTTIGAZOLATLANHIANYZAS int
|
||||
,C_HOZOTTIGAZOLATLANKESESPERCBE int
|
||||
,C_HOZOTTIGAZOLTHIANYZAS int
|
||||
,C_HOZOTTIGAZOLTKESESPERCBEN int
|
||||
,C_ISESL16EVESUTANBELEPETT char(1)
|
||||
,C_AGAZATID int
|
||||
,C_SZAKMACSOPORTID int
|
||||
,C_RESZSZAKKEPESITESID int
|
||||
,C_SZAKKEPESITESID int
|
||||
,C_AGAZATUJSZKTTIPUSID int
|
||||
,C_SZAKMATIPUSID int
|
||||
,C_SZAKMAIRANYTIPUSID int
|
||||
,C_TANULMANYITERULETNKTTIPUSID int
|
||||
,C_SZAKKEPESITESNKTTIPUSID int
|
||||
,C_SZAKIRANYNKTTIPUSID int
|
||||
,C_TANTERVIJELLEGID int
|
||||
,C_AGAZATIALAPVIZSGAEREDMENYE numeric(10, 2)
|
||||
,C_AGAZATIALAPVIZSGAEREDMENYESZ int
|
||||
,C_ISSZAKKEPZESIMUNKASZERZODESS char(1)
|
||||
,C_DUALISKEPZOHELYNEVE nvarchar(255)
|
||||
,C_DUALISKEPZOHELYADOSZAMA char(20)
|
||||
)
|
||||
AS
|
||||
BEGIN
|
||||
IF @pDatum IS NULL
|
||||
SET @pDatum = GETDATE()
|
||||
|
||||
DECLARE @TanugyiAdat TABLE (ID int,TanuloId int, Darab int)
|
||||
DECLARE @kategoriaId int = (SELECT C_FELADATKATEGORIAID FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyCsoportId)
|
||||
DECLARE @bontasId int = (SELECT C_OSZTALYBONTASID FROM T_CSOPORT_OSSZES WHERE ID = @pOsztalyCsoportId)
|
||||
DECLARE @isAmi bit = (SELECT IIF(@kategoriaId = 7555,1,0))
|
||||
DECLARE @isOsztaly bit = 0
|
||||
IF EXISTS(SELECT 1 FROM T_OSZTALY_OSSZES WHERE ID = @pOsztalyCsoportId)
|
||||
SET @isOsztaly=1
|
||||
|
||||
IF @isOsztaly = 1 BEGIN
|
||||
INSERT INTO @TanugyiAdat (ID,TanuloId,Darab)
|
||||
SELECT tta.ID,tcs.C_TANULOID,1
|
||||
FROM T_TANULOTANUGYIADATOK_OSSZES tta
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.ID=tta.C_TANULOCSOPORTID AND tcs.C_OSZTALYCSOPORTID=@posztalyCsoportId
|
||||
AND tcs.C_BELEPESDATUM <= @pDatum AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM>@pDatum) AND tcs.TOROLT='F'
|
||||
WHERE tta.TOROLT='F'
|
||||
END
|
||||
ELSE IF @bontasId IS NOT NULL BEGIN
|
||||
INSERT INTO @TanugyiAdat (ID,TanuloId,Darab)
|
||||
SELECT tta.ID,tcs.C_TANULOID,1
|
||||
FROM T_TANULOTANUGYIADATOK_OSSZES tta
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.ID=tta.C_TANULOCSOPORTID AND tcs.C_OSZTALYCSOPORTID=@bontasId
|
||||
AND tcs.C_BELEPESDATUM <= @pDatum AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM>@pDatum) AND tcs.TOROLT='F'
|
||||
END
|
||||
ELSE BEGIN
|
||||
INSERT INTO @TanugyiAdat (ID,TanuloId,Darab)
|
||||
SELECT tta.ID, tcso.C_TANULOID, ROW_NUMBER() OVER(PARTITION BY tcso.C_TANULOID ORDER BY tta.ID)
|
||||
FROM T_TANULOTANUGYIADATOK_OSSZES tta
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.ID=tta.C_TANULOCSOPORTID
|
||||
AND tcs.C_BELEPESDATUM <= @pDatum AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM>@pDatum) AND tcs.TOROLT='F'
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID=tcs.C_OSZTALYCSOPORTID AND o.TOROLT='F'
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID=o.ID AND ocs.TOROLT='F' AND (@kategoriaId IS NULL OR ocs.C_FELADATKATEGORIAID=@kategoriaId)
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcso ON tcso.C_TANULOID=tcs.C_TANULOID
|
||||
AND tcso.C_BELEPESDATUM <= @pDatum AND (tcso.C_KILEPESDATUM IS NULL OR tcso.C_KILEPESDATUM>@pDatum) AND tcso.TOROLT='F' AND tcso.C_OSZTALYCSOPORTID=@pOsztalyCsoportId
|
||||
|
||||
END
|
||||
|
||||
UPDATE ta SET Darab = x.DARAB FROM(
|
||||
SELECT MAX(DARAB) DARAB ,TanuloId
|
||||
FROM @TanugyiAdat
|
||||
GROUP BY TanuloId) x
|
||||
INNER JOIN @TanugyiAdat ta ON ta.TanuloId=x.TanuloId
|
||||
|
||||
INSERT INTO @tanugyiAdatok (
|
||||
ID
|
||||
,TanuloId
|
||||
,C_BEIRASINAPLOSORSZAM
|
||||
,C_BEJARO
|
||||
,C_DIAKSPORTKOROS
|
||||
,C_EGYEBORSZAGOSDONTO
|
||||
,C_EGYUTTMUKODESES
|
||||
,C_ELOZOINTEZMENY
|
||||
,C_EVISMETLO
|
||||
,C_ISKOLAIKERETEKKOZOTT
|
||||
,C_JOGVISZONYATSZUNETELTETO
|
||||
,C_JOGVISZONYVARHATOBEFEJEZESE
|
||||
,C_MAGANTANULO
|
||||
,C_MAGANTANULOSAGANAKOKAID
|
||||
,C_MAGANTANULOSAGKEZDETE
|
||||
,C_MAGANTANULOSAGVEGE
|
||||
,C_NYILVANTARTASKEZDETE
|
||||
,C_OSZTV
|
||||
,C_POLGARISZERZODESES
|
||||
,C_SZAKMAIGYAKORLATON
|
||||
,C_SZETVAGAZAT
|
||||
,C_SZINTVIZSGA
|
||||
,C_SZKTV
|
||||
,C_TANDIJATFIZETO
|
||||
,C_TANKOTELEZETT
|
||||
,C_TANKOTELEZETTSEGVEGE
|
||||
,C_TANULOEVFOLYAMTIPUSID
|
||||
,C_TANULOSZERZODESES
|
||||
,C_TECHNIKUSIEVFOLYAM
|
||||
,C_TERITESIDIJATFIZETO
|
||||
,C_VENDEG
|
||||
,C_NAPLOSORSZAM
|
||||
,C_TORZSLAPSZAM
|
||||
,C_TANTERVID
|
||||
,C_FELVETELTANEVEID
|
||||
,C_TANULOCSOPORTID
|
||||
,C_HOZOTTIGAZOLATLANHIANYZAS
|
||||
,C_HOZOTTIGAZOLATLANKESESPERCBE
|
||||
,C_HOZOTTIGAZOLTHIANYZAS
|
||||
,C_HOZOTTIGAZOLTKESESPERCBEN
|
||||
,C_ISESL16EVESUTANBELEPETT
|
||||
,C_AGAZATID
|
||||
,C_SZAKMACSOPORTID
|
||||
,C_RESZSZAKKEPESITESID
|
||||
,C_SZAKKEPESITESID
|
||||
,C_AGAZATUJSZKTTIPUSID
|
||||
,C_SZAKMATIPUSID
|
||||
,C_SZAKMAIRANYTIPUSID
|
||||
,C_TANULMANYITERULETNKTTIPUSID
|
||||
,C_SZAKKEPESITESNKTTIPUSID
|
||||
,C_SZAKIRANYNKTTIPUSID
|
||||
,C_TANTERVIJELLEGID
|
||||
,C_AGAZATIALAPVIZSGAEREDMENYE
|
||||
,C_AGAZATIALAPVIZSGAEREDMENYESZ
|
||||
,C_ISSZAKKEPZESIMUNKASZERZODESS
|
||||
,C_DUALISKEPZOHELYNEVE
|
||||
,C_DUALISKEPZOHELYADOSZAMA
|
||||
) SELECT DISTINCT
|
||||
0 --ID
|
||||
,TanuloId --TanuloId
|
||||
,NULL --C_BEIRASINAPLOSORSZAM
|
||||
,'F' --C_BEJARO
|
||||
,'F' --C_DIAKSPORTKOROS
|
||||
,'F' --C_EGYEBORSZAGOSDONTO
|
||||
,'F' --C_EGYUTTMUKODESES
|
||||
,NULL --C_ELOZOINTEZMENY
|
||||
,'F' --C_EVISMETLO
|
||||
,'F' --C_ISKOLAIKERETEKKOZOTT
|
||||
,'F' --C_JOGVISZONYATSZUNETELTETO
|
||||
,NULL --C_JOGVISZONYVARHATOBEFEJEZESE
|
||||
,'F' --C_MAGANTANULO
|
||||
,NULL --C_MAGANTANULOSAGANAKOKAID
|
||||
,NULL --C_MAGANTANULOSAGKEZDETE
|
||||
,NULL --C_MAGANTANULOSAGVEGE
|
||||
,'19000101' --C_NYILVANTARTASKEZDETE
|
||||
,'F' --C_OSZTV
|
||||
,'F' --C_POLGARISZERZODESES
|
||||
,'F' --C_SZAKMAIGYAKORLATON
|
||||
,'F' --C_SZETVAGAZAT
|
||||
,NULL --C_SZINTVIZSGA
|
||||
,'F' --C_SZKTV
|
||||
,'F' --C_TANDIJATFIZETO
|
||||
,'F' --C_TANKOTELEZETT
|
||||
,NULL --C_TANKOTELEZETTSEGVEGE
|
||||
,NULL --C_TANULOEVFOLYAMTIPUSID
|
||||
,'F' --C_TANULOSZERZODESES
|
||||
,'F' --C_TECHNIKUSIEVFOLYAM
|
||||
,'F' --C_TERITESIDIJATFIZETO
|
||||
,'F' --C_VENDEG
|
||||
,NULL --C_NAPLOSORSZAM
|
||||
,NULL --C_TORZSLAPSZAM
|
||||
,0 --C_TANTERVID
|
||||
,0 --C_FELVETELTANEVEID
|
||||
,0 --C_TANULOCSOPORTID
|
||||
,0 --C_HOZOTTIGAZOLATLANHIANYZAS
|
||||
,0 --C_HOZOTTIGAZOLATLANKESESPERCBE
|
||||
,0 --C_HOZOTTIGAZOLTHIANYZAS
|
||||
,0 --C_HOZOTTIGAZOLTKESESPERCBEN
|
||||
,'F' --C_ISESL16EVESUTANBELEPETT
|
||||
,0 --C_AGAZATID
|
||||
,0 --C_SZAKMACSOPORTID
|
||||
,0 --C_RESZSZAKKEPESITESID
|
||||
,0 --C_SZAKKEPESITESID
|
||||
,0 --C_AGAZATUJSZKTTIPUSID
|
||||
,0 --C_SZAKMATIPUSID
|
||||
,0 --C_SZAKMAIRANYTIPUSID
|
||||
,0 --C_TANULMANYITERULETNKTTIPUSID
|
||||
,0 --C_SZAKKEPESITESNKTTIPUSID
|
||||
,0 --C_SZAKIRANYNKTTIPUSID
|
||||
,0 --C_TANTERVIJELLEGID
|
||||
,NULL --C_AGAZATIALAPVIZSGAEREDMENYE
|
||||
,NULL --C_AGAZATIALAPVIZSGAEREDMENYESZ
|
||||
,'F' --C_ISSZAKKEPZESIMUNKASZERZODESS
|
||||
,NULL --C_DUALISKEPZOHELYNEVE
|
||||
,NULL --C_DUALISKEPZOHELYADOSZAMA
|
||||
FROM @TanugyiAdat
|
||||
WHERE Darab>1
|
||||
|
||||
INSERT INTO @tanugyiAdatok (
|
||||
ID
|
||||
,TanuloId
|
||||
,C_BEIRASINAPLOSORSZAM
|
||||
,C_BEJARO
|
||||
,C_DIAKSPORTKOROS
|
||||
,C_EGYEBORSZAGOSDONTO
|
||||
,C_EGYUTTMUKODESES
|
||||
,C_ELOZOINTEZMENY
|
||||
,C_EVISMETLO
|
||||
,C_ISKOLAIKERETEKKOZOTT
|
||||
,C_JOGVISZONYATSZUNETELTETO
|
||||
,C_JOGVISZONYVARHATOBEFEJEZESE
|
||||
,C_MAGANTANULO
|
||||
,C_MAGANTANULOSAGANAKOKAID
|
||||
,C_MAGANTANULOSAGKEZDETE
|
||||
,C_MAGANTANULOSAGVEGE
|
||||
,C_NYILVANTARTASKEZDETE
|
||||
,C_OSZTV
|
||||
,C_POLGARISZERZODESES
|
||||
,C_SZAKMAIGYAKORLATON
|
||||
,C_SZETVAGAZAT
|
||||
,C_SZINTVIZSGA
|
||||
,C_SZKTV
|
||||
,C_TANDIJATFIZETO
|
||||
,C_TANKOTELEZETT
|
||||
,C_TANKOTELEZETTSEGVEGE
|
||||
,C_TANULOEVFOLYAMTIPUSID
|
||||
,C_TANULOSZERZODESES
|
||||
,C_TECHNIKUSIEVFOLYAM
|
||||
,C_TERITESIDIJATFIZETO
|
||||
,C_VENDEG
|
||||
,C_NAPLOSORSZAM
|
||||
,C_TORZSLAPSZAM
|
||||
,C_TANTERVID
|
||||
,C_FELVETELTANEVEID
|
||||
,C_TANULOCSOPORTID
|
||||
,C_HOZOTTIGAZOLATLANHIANYZAS
|
||||
,C_HOZOTTIGAZOLATLANKESESPERCBE
|
||||
,C_HOZOTTIGAZOLTHIANYZAS
|
||||
,C_HOZOTTIGAZOLTKESESPERCBEN
|
||||
,C_ISESL16EVESUTANBELEPETT
|
||||
,C_AGAZATID
|
||||
,C_SZAKMACSOPORTID
|
||||
,C_RESZSZAKKEPESITESID
|
||||
,C_SZAKKEPESITESID
|
||||
,C_AGAZATUJSZKTTIPUSID
|
||||
,C_SZAKMATIPUSID
|
||||
,C_SZAKMAIRANYTIPUSID
|
||||
,C_TANULMANYITERULETNKTTIPUSID
|
||||
,C_SZAKKEPESITESNKTTIPUSID
|
||||
,C_SZAKIRANYNKTTIPUSID
|
||||
,C_TANTERVIJELLEGID
|
||||
,C_AGAZATIALAPVIZSGAEREDMENYE
|
||||
,C_AGAZATIALAPVIZSGAEREDMENYESZ
|
||||
,C_ISSZAKKEPZESIMUNKASZERZODESS
|
||||
,C_DUALISKEPZOHELYNEVE
|
||||
,C_DUALISKEPZOHELYADOSZAMA
|
||||
)
|
||||
SELECT
|
||||
tta.ID
|
||||
,t.ID
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_BEIRASINAPLOSORSZAM, t.C_BEIRASINAPLOSORSZAM)
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_BEJARO, t.C_BEJARO)
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_DIAKSPORTKOROS, t.C_DIAKSPORTKOROS)
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_EGYEBORSZAGOSDONTO, t.C_EGYEBDONTO)
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_EGYUTTMUKODESES, t.C_EGYUTTMUKODESES)
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_ELOZOINTEZMENY, t.C_ELOZOINTEZMENY)
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_EVISMETLO, t.C_EVISMETLO)
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_ISKOLAIKERETEKKOZOTT, t.C_ISKOLAIKERETEKKOZOTT)
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_JOGVISZONYATSZUNETELTETO, t.C_JOGVISZONYATSZUNETELTETO)
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_JOGVISZONYVARHATOBEFEJEZESE, t.C_JOGVISZONYVARHATOBEFEJEZESE)
|
||||
,CASE WHEN @isAmi = 1 THEN 'F' ELSE IIF(tta.ID IS NOT NULL,tta.C_MAGANTANULO, t.C_MAGANTANULO) END
|
||||
,CASE WHEN @isAmi = 1 THEN NULL ELSE IIF(tta.ID IS NOT NULL,tta.C_MAGANTANULOSAGANAKOKAID, t.C_MAGANTANULOSAGANAKOKA) END
|
||||
,CASE WHEN @isAmi = 1 THEN NULL ELSE IIF(tta.ID IS NOT NULL,tta.C_MAGANTANULOSAGKEZDETE, t.C_MAGANTANULOSAGKEZDETE) END
|
||||
,CASE WHEN @isAmi = 1 THEN NULL ELSE IIF(tta.ID IS NOT NULL,tta.C_MAGANTANULOSAGVEGE, t.C_MAGANTANULOSAGVEGE) END
|
||||
,tta.C_NYILVANTARTASKEZDETE
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_OSZTV, t.C_OSZTV)
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_POLGARISZERZODESES, t.C_POLGARISZERZODESES)
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_SZAKMAIGYAKORLATON, t.C_SZAKMAIGYAKORLATON)
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_SZETVAGAZAT, t.C_SZETVAGAZAT)
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_SZINTVIZSGA, t.C_SZINTVIZSGA)
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_SZKTV, t.C_SZKTV)
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_TANDIJATFIZETO, t.C_TANDIJATFIZETO)
|
||||
,CASE WHEN @isAmi = 1 THEN 'F' ELSE IIF(tta.ID IS NOT NULL,tta.C_TANKOTELEZETT, t.C_TANKOTELEZETT) END
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_TANKOTELEZETTSEGVEGE, t.C_TANKOTELEZETTSEGVEGE)
|
||||
,tta.C_TANULOEVFOLYAMTIPUSID
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_TANULOSZERZODESES, t.C_TANULOSZERZODESES)
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_TECHNIKUSIEVFOLYAM, t.C_TECHNIKUSIEVFOLYAM)
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_TERITESIDIJATFIZETO, t.C_TERITESIDIJATFIZETO)
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_VENDEG, t.C_VENDEG)
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_NAPLOSORSZAM, t.C_NAPLOSORSZAM)
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_TORZSLAPSZAM, t.C_TORZSLAPSZAM)
|
||||
,tta.C_TANTERVID
|
||||
,IIF(tta.ID IS NOT NULL,tta.C_FELVETELTANEVEID, t.C_FELVETELTANEVEID)
|
||||
,tta.C_TANULOCSOPORTID
|
||||
,tta.C_HOZOTTIGAZOLATLANHIANYZAS
|
||||
,tta.C_HOZOTTIGAZOLATLANKESESPERCBE
|
||||
,tta.C_HOZOTTIGAZOLTHIANYZAS
|
||||
,tta.C_HOZOTTIGAZOLTKESESPERCBEN
|
||||
,tta.C_ISESL16EVESUTANBELEPETT
|
||||
,tta.C_AGAZATID
|
||||
,tta.C_SZAKMACSOPORTID
|
||||
,tta.C_RESZSZAKKEPESITESID
|
||||
,tta.C_SZAKKEPESITESID
|
||||
,tta.C_AGAZATUJSZKTTIPUSID
|
||||
,tta.C_SZAKMATIPUSID
|
||||
,tta.C_SZAKMAIRANYTIPUSID
|
||||
,tta.C_TANULMANYITERULETNKTTIPUSID
|
||||
,tta.C_SZAKKEPESITESNKTTIPUSID
|
||||
,tta.C_SZAKIRANYNKTTIPUSID
|
||||
,tta.C_TANTERVIJELLEGID
|
||||
,IIF(tta.ID IS NOT NULL, tta.C_AGAZATIALAPVIZSGAEREDMENYE, t.C_AGAZATIALAPVIZSGAEREDMENYE)
|
||||
,IIF(tta.ID IS NOT NULL, tta.C_AGAZATIALAPVIZSGAEREDMENYESZ, t.C_AGAZATIALAPVIZSGAEREDMENYESZ)
|
||||
,IIF(tta.ID IS NOT NULL, tta.C_ISSZAKKEPZESIMUNKASZERZODESS, t.C_ISSZAKKEPZESIMUNKASZERZODESS)
|
||||
,IIF(tta.ID IS NOT NULL, tta.C_DUALISKEPZOHELYNEVE, t.C_DUALISKEPZOHELYNEVE)
|
||||
,IIF(tta.ID IS NOT NULL, tta.C_DUALISKEPZOHELYADOSZAMA, t.C_DUALISKEPZOHELYADOSZAMA)
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
LEFT JOIN @TanugyiAdat ta ON ta.TanuloId=tcs.C_TANULOID
|
||||
LEFT JOIN T_TANULOTANUGYIADATOK_OSSZES tta ON tta.ID=ta.ID AND tta.TOROLT='F'
|
||||
LEFT JOIN T_TANULO_OSSZES t ON t.ID=tcs.C_TANULOID AND t.TOROLT='F'
|
||||
WHERE tcs.C_OSZTALYCSOPORTID = @pOsztalyCsoportId AND tcs.TOROLT='F' AND tcs.C_BELEPESDATUM<=@pDatum AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM>@pDatum)
|
||||
AND ISNULL(ta.Darab,0)<2
|
||||
|
||||
RETURN
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,37 @@
|
|||
DROP FUNCTION IF EXISTS fnGetOsztalyCsoportokUtolsoTanitasiNap
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetOsztalyCsoportokUtolsoTanitasiNap (@pTanevId int ,@pOsztalyCsoportId int = NULL
|
||||
)
|
||||
returns @ResultTable TABLE (OsztalycsoportId int, UtolsoTanitasiNap Datetime, VegzosEvfolyam CHAR(1))
|
||||
AS BEGIN
|
||||
DECLARE @VegzosUtolsoTanitasiNap datetime;
|
||||
SELECT @VegzosUtolsoTanitasiNap = MIN(C_DATUM)
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
WHERE TOROLT = 'F'
|
||||
AND C_TANEVID = @pTanevId
|
||||
AND C_NAPTIPUSA IN (1402, 7600, 7601, 7602, 7603, 1395)
|
||||
AND C_OSSZESCSOPORTRAVONATKOZIK = 'T'
|
||||
|
||||
INSERT INTO @ResultTable (OsztalycsoportId, UtolsoTanitasiNap, VegzosEvfolyam)
|
||||
SELECT
|
||||
ocs.ID AS OsztalycsoportId
|
||||
,IIF(C_VEGZOSEVFOLYAM = 'T', IIF(x.C_OSZTALYCSOPORTID IS NOT NULL, NewVegeDatum, @VegzosUtolsoTanitasiNap), t.C_UTOLSONAP) AS UtolsoTanitasiNap
|
||||
,C_VEGZOSEVFOLYAM AS VegzosEvfolyam
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_TANEV_OSSZES t ON t.ID = @pTanevId AND t.ID = ocs.C_TANEVID AND t.TOROLT = 'F'
|
||||
LEFT JOIN (
|
||||
SELECT MIN(tr.C_DATUM) AS NewVegeDatum, ocstr.C_OSZTALYCSOPORTID
|
||||
FROM T_TANEVRENDJE_OSSZES tr
|
||||
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON ocstr.C_TANEVRENDJEID = tr.ID
|
||||
WHERE tr.C_OSSZESCSOPORTRAVONATKOZIK = 'F'
|
||||
AND tr.TOROLT = 'F'
|
||||
AND tr.C_NAPTIPUSA IN (1402, 7600, 7601, 7602, 7603)
|
||||
AND tr.C_TANEVID = @pTanevId
|
||||
GROUP BY ocstr.C_OSZTALYCSOPORTID
|
||||
) x ON x.C_OSZTALYCSOPORTID = ocs.Id
|
||||
WHERE (@pOsztalyCsoportId IS NULL OR @pOsztalyCsoportId = ocs.ID) AND ocs.TOROLT = 'F'
|
||||
RETURN
|
||||
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,27 @@
|
|||
IF OBJECT_ID('dbo.fnGetOsztalyVegzosTanitasiNap') IS NOT NULL BEGIN
|
||||
DROP FUNCTION dbo.fnGetOsztalyVegzosTanitasiNap
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE FUNCTION dbo.fnGetOsztalyVegzosTanitasiNap (@osztalyId INT, @intezmenyId INT, @tanevId INT)
|
||||
RETURNS datetime
|
||||
BEGIN
|
||||
|
||||
DECLARE @Global DATETIME = (SELECT MIN(C_DATUM) FROM T_TANEVRENDJE_OSSZES WHERE C_INTEZMENYID = @intezmenyId AND C_TANEVID = @tanevId
|
||||
AND C_OSSZESCSOPORTRAVONATKOZIK = 'T' AND C_NAPTIPUSA IN (1402, 7600, 7601, 7602, 7603, 1395) AND TOROLT = 'F')
|
||||
DECLARE @isVegzos CHAR(1) = (SELECT C_VEGZOSEVFOLYAM FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztalyId AND TOROLT = 'F' AND C_TANEVID = @tanevId)
|
||||
DECLARE @result DATETIME
|
||||
|
||||
IF(@isVegzos = 'T')
|
||||
BEGIN
|
||||
SET @result =
|
||||
(SELECT TOP(1) C_DATUM FROM (
|
||||
SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES tr
|
||||
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE otr ON tr.ID = otr.C_TANEVRENDJEID AND otr.C_OSZTALYCSOPORTID = @osztalyId
|
||||
WHERE
|
||||
C_NAPTIPUSA IN (1402, 7600, 7601, 7602, 7603) AND C_INTEZMENYID = @intezmenyId AND C_TANEVID = @tanevId AND tr.TOROLT = 'F'
|
||||
) x ORDER BY C_DATUM)
|
||||
END
|
||||
RETURN ISNULL(@result, @Global)
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,26 @@
|
|||
DROP FUNCTION IF EXISTS fnGetOsztalyfonokOsztalyanakTanuloi
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetOsztalyfonokOsztalyanakTanuloi(
|
||||
@pTanarId int
|
||||
,@pSzuperOsztalyfonok int
|
||||
,@pFeladatKategoriaId int
|
||||
,@pDatum date)
|
||||
RETURNS TABLE
|
||||
AS RETURN
|
||||
SELECT
|
||||
f.ID
|
||||
,f.C_NYOMTATASINEV AS Nev
|
||||
FROM T_OSZTALY_OSSZES o
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = o.ID
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID
|
||||
AND ocs.C_FELADATKATEGORIAID = @pFeladatKategoriaId
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON f.ID = tcs.C_TANULOID
|
||||
WHERE (o.C_OSZTALYFONOKID = @pTanarId OR @pSzuperOsztalyfonok = 1)
|
||||
AND tcs.C_BELEPESDATUM <= @pDatum
|
||||
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > @pDatum)
|
||||
AND o.TOROLT = 'F'
|
||||
AND tcs.TOROLT = 'F'
|
||||
AND f.TOROLT = 'F'
|
||||
AND ocs.TOROLT = 'F'
|
||||
GO
|
|
@ -0,0 +1,32 @@
|
|||
DROP FUNCTION IF EXISTS dbo.fnGetOsztondijSzazalek
|
||||
GO
|
||||
|
||||
CREATE FUNCTION dbo.fnGetOsztondijSzazalek (
|
||||
@pBeszamitasosTanulo char(1)
|
||||
,@pIsBeszamitasosFixSzazalek char(1)
|
||||
,@pAtlag float
|
||||
,@pCode nvarchar(10)
|
||||
,@pFelevnelValtos char(1)
|
||||
,@pIsSikeresAgazatiVizsga char(1)
|
||||
,@pIsAtlagSzakkepzesi char(1)
|
||||
)
|
||||
RETURNS int
|
||||
BEGIN
|
||||
RETURN CASE
|
||||
WHEN @pBeszamitasosTanulo = 'T' AND @pIsBeszamitasosFixSzazalek = 'T' THEN 16
|
||||
WHEN @pBeszamitasosTanulo = 'T' THEN dbo.fnGetOsztondijSzazalekFromAtlag(@pAtlag)
|
||||
WHEN @pCode = '003' THEN dbo.fnGetOsztondijSzazalekFromAtlag(@pAtlag)
|
||||
WHEN @pFelevnelValtos = 'T' THEN
|
||||
CASE
|
||||
WHEN @pIsSikeresAgazatiVizsga = 'F' AND @pCode = '001' THEN 8
|
||||
WHEN @pIsSikeresAgazatiVizsga = 'F' AND @pCode = '002' THEN 16
|
||||
WHEN @pIsSikeresAgazatiVizsga = 'T' AND @pIsAtlagSzakkepzesi = 'F' THEN 16
|
||||
WHEN @pIsSikeresAgazatiVizsga = 'T' AND @pIsAtlagSzakkepzesi = 'T' THEN dbo.fnGetOsztondijSzazalekFromAtlag(@pAtlag)
|
||||
ELSE -1
|
||||
END
|
||||
WHEN @pCode IN ('001','004','005') THEN 8
|
||||
WHEN @pCode = '002' THEN 16
|
||||
ELSE 0
|
||||
END
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,17 @@
|
|||
DROP FUNCTION IF EXISTS dbo.fnGetOsztondijSzazalekFromAtlag
|
||||
GO
|
||||
|
||||
CREATE FUNCTION dbo.fnGetOsztondijSzazalekFromAtlag (
|
||||
@pAtlag float
|
||||
)
|
||||
RETURNS int
|
||||
BEGIN
|
||||
RETURN CASE
|
||||
WHEN @pAtlag >= 2.0 AND @pAtlag < 3.0 THEN 8
|
||||
WHEN @pAtlag >= 3.0 AND @pAtlag < 4.0 THEN 25
|
||||
WHEN @pAtlag >= 4.0 AND @pAtlag <= 4.49 THEN 42
|
||||
WHEN @pAtlag > 4.49 THEN 59
|
||||
ELSE 0
|
||||
END
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,27 @@
|
|||
DROP FUNCTION IF EXISTS fnGetRendszerbeallitasDateValue;
|
||||
GO
|
||||
CREATE FUNCTION fnGetRendszerbeallitasDateValue (@beallitasTipus int, @intezmenyId int, @tanevId int)
|
||||
RETURNS DateTime
|
||||
BEGIN
|
||||
|
||||
return (SELECT top (1)
|
||||
IIF(ISDATE(JSON_VALUE(C_ERTEK,'$.Date')) = 1
|
||||
,JSON_VALUE(C_ERTEK,'$.Date')
|
||||
,(SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES
|
||||
WHERE C_NAPTIPUSA = CASE
|
||||
WHEN C_BEALLITASTIPUS = 5438 THEN 1400 -- félév vége
|
||||
WHEN C_BEALLITASTIPUS = 5439 THEN 1395 -- év vége
|
||||
WHEN C_BEALLITASTIPUS = 5440 THEN 1402 -- év vége végzős
|
||||
WHEN C_BEALLITASTIPUS = 7362 THEN 1403 -- I. né. vége
|
||||
WHEN C_BEALLITASTIPUS = 7363 THEN 1400 -- II. né. vége
|
||||
WHEN C_BEALLITASTIPUS = 7364 THEN 1404 -- III. né. vége
|
||||
WHEN C_BEALLITASTIPUS = 7365 THEN 1395 -- IV. né. vége
|
||||
END)) AS Datum
|
||||
FROM T_RENDSZERBEALLITAS_OSSZES
|
||||
WHERE C_BEALLITASTIPUS = @beallitasTipus
|
||||
AND C_INTEZMENYID = @intezmenyId
|
||||
AND C_TANEVID = @tanevId
|
||||
AND TOROLT = 'F')
|
||||
|
||||
END;
|
||||
GO
|
|
@ -0,0 +1,30 @@
|
|||
DROP FUNCTION IF EXISTS fnGetRendszerbeallitasEnumBool;
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetRendszerbeallitasEnumBool (@beallitasTipus int, @intezmenyId int, @tanevId int)
|
||||
RETURNS int
|
||||
BEGIN
|
||||
DECLARE @value INT
|
||||
SELECT @value =
|
||||
CASE
|
||||
WHEN C_ERTEKTIPUS = 1698
|
||||
THEN(
|
||||
SELECT Value FROM
|
||||
OPENJSON( JSON_QUERY(C_ERTEK,'$.Options'))
|
||||
WITH (
|
||||
Selected nvarchar(10) '$.Selected',
|
||||
Value int '$.Value'
|
||||
)
|
||||
WHERE Selected = 'true')
|
||||
WHEN C_ERTEKTIPUS = 1699
|
||||
THEN IIF(JSON_VALUE(C_ERTEK, '$.Value') = 'true', 1, 0)
|
||||
ELSE NULL
|
||||
END
|
||||
FROM T_RENDSZERBEALLITAS_OSSZES
|
||||
WHERE C_BEALLITASTIPUS = @beallitasTipus
|
||||
AND C_INTEZMENYID = @intezmenyId
|
||||
AND C_TANEVID = @tanevId
|
||||
AND TOROLT = 'F'
|
||||
RETURN @value
|
||||
END;
|
||||
GO
|
|
@ -0,0 +1,18 @@
|
|||
DROP FUNCTION IF EXISTS fnGetRendszerbeallitasSelectedValue;
|
||||
GO
|
||||
CREATE FUNCTION fnGetRendszerbeallitasSelectedValue (@beallitasTipus int, @intezmenyId int, @tanevId int)
|
||||
RETURNS int
|
||||
BEGIN
|
||||
|
||||
DECLARE @json nvarchar(max)
|
||||
|
||||
SELECT @json = JSON_QUERY(C_ERTEK)
|
||||
FROM T_RENDSZERBEALLITAS_OSSZES
|
||||
WHERE C_BEALLITASTIPUS = @beallitasTipus
|
||||
AND C_INTEZMENYID = @intezmenyId
|
||||
AND C_TANEVID = @tanevId
|
||||
AND TOROLT = 'F'
|
||||
|
||||
RETURN (select TOP(1) [Value] FROM OPENJSON( @json, '$.Options' ) WITH ([Value] int '$.Value', [Selected] NVARCHAR(25) '$.Selected') where Selected = 'true')
|
||||
END;
|
||||
GO
|
|
@ -0,0 +1,39 @@
|
|||
DROP FUNCTION IF EXISTS fnGetTanarAltalErtekelhetoCsoportokTantargyak
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetTanarAltalErtekelhetoCsoportokTantargyak(
|
||||
@pTanarId int
|
||||
,@pTanevId int
|
||||
,@pSzuperOsztalyfonok int
|
||||
,@pDatum date
|
||||
)
|
||||
RETURNS TABLE
|
||||
AS RETURN
|
||||
SELECT
|
||||
ocs.ID AS OsztalyCsoportId
|
||||
,ocs.C_NEV AS Nev
|
||||
,f.C_TANTARGYID AS TantargyId
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
LEFT JOIN T_FOGLALKOZAS_OSSZES f ON ocs.ID = f.C_OSZTALYCSOPORTID
|
||||
AND f.TOROLT = 'F'
|
||||
WHERE ocs.TOROLT = 'F'
|
||||
AND ocs.C_TANEVID = @pTanevId
|
||||
AND EXISTS( SELECT 1
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
WHERE tcs.C_OSZTALYCSOPORTID=ocs.ID
|
||||
AND tcs.TOROLT='F'
|
||||
AND @pDatum >= tcs.C_BELEPESDATUM
|
||||
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM > @pDatum)
|
||||
AND tcs.C_TANULOID IN (SELECT ID FROM fnGetOsztalyfonokOsztalyanakTanuloi(@pTanarId, @pSzuperOsztalyfonok, ocs.C_FELADATKATEGORIAID, @pDatum)))
|
||||
UNION
|
||||
SELECT
|
||||
ocs.ID AS OsztalyCsoportId
|
||||
,ocs.C_NEV AS Nev
|
||||
,f.C_TANTARGYID AS TantargyId
|
||||
FROM T_FOGLALKOZAS_OSSZES f
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = f.C_OSZTALYCSOPORTID
|
||||
AND ocs.TOROLT = 'F'
|
||||
WHERE f.TOROLT = 'F'
|
||||
AND (f.C_TANARID = @pTanarId OR @pSzuperOsztalyfonok = 1)
|
||||
AND ocs.C_TANEVID = @pTanevId
|
||||
GO
|
|
@ -0,0 +1,23 @@
|
|||
IF OBJECT_ID('fnGetTanoraiCeluCsoportTipusok') IS NOT NULL BEGIN
|
||||
DROP FUNCTION [fnGetTanoraiCeluCsoportTipusok]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE FUNCTION [fnGetTanoraiCeluCsoportTipusok] (
|
||||
@tanevId INT
|
||||
) RETURNS TABLE
|
||||
RETURN (
|
||||
SELECT
|
||||
csoportTipus.ID
|
||||
FROM
|
||||
T_CSOPORTTIPUS_OSSZES csoportTipus
|
||||
INNER JOIN
|
||||
T_DICTIONARYITEMBASE_OSSZES dictionaryItemBase ON csoportTipus.ID = dictionaryItemBase.ID
|
||||
AND csoportTipus.C_ALTANEVID = dictionaryItemBase.C_TANEVID
|
||||
WHERE
|
||||
csoportTipus.C_ISTANORAICELU = 'T'
|
||||
AND dictionaryItemBase.C_VISIBLE = 'T'
|
||||
AND dictionaryItemBase.TOROLT = 'F'
|
||||
AND dictionaryItemBase.C_TANEVID = @tanevId
|
||||
)
|
||||
GO
|
|
@ -0,0 +1,22 @@
|
|||
DROP FUNCTION IF EXISTS fnGetTanuloAktualisOsztaly
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetTanuloAktualisOsztaly (@tanuloId int)
|
||||
RETURNS nvarchar (255)
|
||||
BEGIN
|
||||
DECLARE @value nvarchar (255)
|
||||
|
||||
SELECT TOP (1)
|
||||
@value = ocs.C_NEV
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON tcs.C_OSZTALYCSOPORTID = o.ID AND o.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID AND ocs.TOROLT = 'F'
|
||||
WHERE C_TANULOID = @tanuloId
|
||||
AND tcs.TOROLT = 'F'
|
||||
AND C_KILEPESDATUM IS NULL
|
||||
ORDER BY C_KILEPESDATUM
|
||||
|
||||
RETURN @value
|
||||
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,68 @@
|
|||
DROP FUNCTION IF EXISTS fnGetTanuloElutasitasOka
|
||||
GO
|
||||
CREATE FUNCTION fnGetTanuloElutasitasOka (
|
||||
@pJogviszonyTipus int
|
||||
,@pBesorolas char(1)
|
||||
,@pEvfolyamTipus int
|
||||
,@pIsMasodikSzakma char(1)
|
||||
,@pEvIsmetlo char(1)
|
||||
,@pMulSzam int
|
||||
,@pMaxMulSzam int
|
||||
,@pIsDualisKepzesben char(1)
|
||||
,@pTechnikaiOsztaly char(1)
|
||||
,@pIsVendegTanulo char(1)
|
||||
,@pIsJogviszonyatSzunetelteto char(1)
|
||||
,@pKeresztfeleves char(1)
|
||||
,@pBeszamitasosTanulo char(1)
|
||||
,@pOsztondijbolKizarva char(1)
|
||||
,@pMulasztasMiattKizart char(1)
|
||||
,@IsSzktJogosult char(1)
|
||||
,@IsIngyenesKepzes char(1)
|
||||
,@pAtlag float
|
||||
,@pMinAtlag float
|
||||
,@pIsAtlagFuggo bit
|
||||
,@pLekerdezesDatuma datetime
|
||||
,@pTanevSorszam int
|
||||
)
|
||||
RETURNS int
|
||||
BEGIN
|
||||
DECLARE @retval int = 0
|
||||
IF @pJogviszonyTipus <> 7860
|
||||
SET @retval += 1
|
||||
IF @pBesorolas = 'F'
|
||||
SET @retval += 2
|
||||
IF @pIsMasodikSzakma = 'T'
|
||||
SET @retval += 8
|
||||
IF @pEvIsmetlo = 'T'
|
||||
SET @retval += 16
|
||||
IF @pMulSzam > @pMaxMulSzam
|
||||
SET @retval += 32
|
||||
IF @pIsDualisKepzesben = 'T'
|
||||
SET @retval += 64
|
||||
IF @pIsAtlagFuggo = 1
|
||||
BEGIN
|
||||
IF @pAtlag < @pMinAtlag
|
||||
SET @retval += 128
|
||||
END
|
||||
IF @pTechnikaiOsztaly = 'T'
|
||||
SET @retval += 256
|
||||
IF @pIsVendegTanulo = 'T'
|
||||
SET @retval += 512
|
||||
IF @pIsJogviszonyatSzunetelteto = 'T'
|
||||
SET @retval += 1024
|
||||
IF @pKeresztfeleves = 'T'
|
||||
SET @retval += 2048
|
||||
IF @pOsztondijbolKizarva = 'T'
|
||||
SET @retval += 4096
|
||||
IF @pMulasztasMiattKizart = 'T'
|
||||
SET @retval += 8192
|
||||
IF @IsSzktJogosult = 'F'
|
||||
AND @pEvfolyamTipus NOT IN (7904, 7889, 7868) -- dobbantó, mûhelyiskola, orientációs évfolyam szkt beállítás nélkül is kap
|
||||
AND @pBeszamitasosTanulo <> 'T' -- beszámításos tanuló is kap
|
||||
SET @retval += 16384
|
||||
IF @IsIngyenesKepzes = 'F'
|
||||
SET @retval += 32768
|
||||
|
||||
return @retval
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,26 @@
|
|||
DROP FUNCTION IF EXISTS fnGetTanuloEpjElutasitasOka
|
||||
GO
|
||||
CREATE FUNCTION fnGetTanuloEpjElutasitasOka (
|
||||
@pJogviszonyTipus int
|
||||
,@pIsMasodikSzakma char(1)
|
||||
,@pErdemjegy float
|
||||
,@pMinErdemjegy float
|
||||
,@pKifizetesDatuma datetime
|
||||
,@pEpjId int
|
||||
)
|
||||
RETURNS int
|
||||
BEGIN
|
||||
DECLARE @retval int = 0
|
||||
IF @pJogviszonyTipus <> 7860
|
||||
SET @retval += 1
|
||||
IF @pIsMasodikSzakma = 'T'
|
||||
SET @retval += 2
|
||||
IF @pErdemjegy < @pMinErdemjegy
|
||||
SET @retval += 4
|
||||
IF @pKifizetesDatuma IS NOT NULL
|
||||
SET @retval += 8
|
||||
IF @pEpjId IS NULL
|
||||
SET @retval += 16
|
||||
return @retval
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,46 @@
|
|||
DROP FUNCTION IF EXISTS fnGetTanuloOsztaly
|
||||
GO
|
||||
|
||||
CREATE FUNCTION fnGetTanuloOsztaly (
|
||||
@pTanuloId int
|
||||
,@pDatum date = NULL
|
||||
,@pFeladatKategoriaId int = NULL
|
||||
,@pKiiratkozottNeJelenjenMeg bit = 1
|
||||
,@pOktatasiNevelesiFeladatId int = NULL
|
||||
)
|
||||
RETURNS @ResultTable TABLE (
|
||||
ID int
|
||||
,EvfolyamTipusId int
|
||||
,OsztalyNev nvarchar (255)
|
||||
,BelepesDatuma datetime
|
||||
)
|
||||
AS BEGIN
|
||||
|
||||
INSERT INTO @ResultTable (
|
||||
ID
|
||||
,EvfolyamTipusId
|
||||
,OsztalyNev
|
||||
,BelepesDatuma
|
||||
)
|
||||
SELECT
|
||||
OsztalyCsoport.ID
|
||||
,OsztalyCsoport.C_EVFOLYAMTIPUSA
|
||||
,OsztalyCsoport.C_NEV
|
||||
,TanuloCsoport.C_BELEPESDATUM
|
||||
FROM T_TANULOCSOPORT_OSSZES TanuloCsoport
|
||||
INNER JOIN T_OSZTALY_OSSZES Osztaly ON Osztaly.ID = TanuloCsoport.C_OSZTALYCSOPORTID AND Osztaly.C_ALTANEVID = TanuloCsoport.C_TANEVID
|
||||
AND Osztaly.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES OsztalyCsoport ON OsztalyCsoport.ID = Osztaly.ID AND OsztalyCsoport.C_TANEVID = TanuloCsoport.C_TANEVID
|
||||
AND OsztalyCsoport.TOROLT = 'F'
|
||||
AND (OsztalyCsoport.C_FELADATKATEGORIAID = @pFeladatKategoriaId OR @pFeladatKategoriaId IS NULL)
|
||||
INNER JOIN T_FELADATELLATASIHELY_OSSZES FeladatEllatasiHely ON FeladatEllatasiHely.ID = OsztalyCsoport.C_FELADATELLATASIHELYID
|
||||
AND (FeladatEllatasiHely.C_OKTATASINEVELESIFELADATTIPUS = @pOktatasiNevelesiFeladatId OR @pOktatasiNevelesiFeladatId IS NULL)
|
||||
WHERE TanuloCsoport.C_TANULOID = @pTanuloId
|
||||
AND TanuloCsoport.TOROLT = 'F'
|
||||
AND TanuloCsoport.C_BELEPESDATUM <= ISNULL(@pDatum, CONVERT(date, GETDATE()))
|
||||
AND ((TanuloCsoport.C_KILEPESDATUM IS NULL OR TanuloCsoport.C_KILEPESDATUM > ISNULL(@pDatum, CONVERT(date, GETDATE()))) OR @pKiiratkozottNeJelenjenMeg = 0)
|
||||
|
||||
RETURN
|
||||
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,32 @@
|
|||
DROP FUNCTION IF EXISTS fnGetTanuloOsztalyString
|
||||
GO
|
||||
CREATE FUNCTION fnGetTanuloOsztalyString (
|
||||
@pTanuloId int
|
||||
,@pDatum date = NULL
|
||||
,@pFeladatKategoriaId int = NULL
|
||||
,@pKiiratkozottNeJelenjenMeg bit = 1
|
||||
,@pKovTanev bit = 0
|
||||
,@pFilterOsztalyId int = NULL)
|
||||
RETURNS @retTable TABLE (Osztalynev nvarchar(4000))
|
||||
AS BEGIN
|
||||
INSERT INTO @retTable
|
||||
SELECT STUFF((
|
||||
SELECT ', '+OsztalyCsoport.C_NEV
|
||||
FROM T_TANULOCSOPORT_OSSZES TanuloCsoport
|
||||
INNER JOIN T_OSZTALY_OSSZES Osztaly ON Osztaly.ID = TanuloCsoport.C_OSZTALYCSOPORTID AND Osztaly.C_ALTANEVID = TanuloCsoport.C_TANEVID
|
||||
AND Osztaly.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES OsztalyCsoport ON OsztalyCsoport.ID = Osztaly.ID AND OsztalyCsoport.C_TANEVID = TanuloCsoport.C_TANEVID
|
||||
AND OsztalyCsoport.TOROLT = 'F'
|
||||
AND (OsztalyCsoport.C_FELADATKATEGORIAID = @pFeladatKategoriaId OR @pFeladatKategoriaId IS NULL)
|
||||
INNER JOIN T_TANEV_OSSZES Tanev ON Tanev.ID = TanuloCsoport.C_TANEVID AND Tanev.TOROLT = 'F'
|
||||
WHERE TanuloCsoport.C_TANULOID = @pTanuloId
|
||||
AND TanuloCsoport.TOROLT = 'F'
|
||||
AND (TanuloCsoport.C_BELEPESDATUM <= ISNULL(@pDatum,GETDATE()) OR @pKovTanev = 1)
|
||||
AND (((TanuloCsoport.C_KILEPESDATUM > ISNULL(@pDatum,GETDATE()) OR TanuloCsoport.C_KILEPESDATUM IS NULL OR TanuloCsoport.C_KILEPESDATUM >= Tanev.C_UTOLSOTANITASINAP)
|
||||
OR @pKiiratkozottNeJelenjenMeg = 0)
|
||||
OR @pKovTanev = 1)
|
||||
AND (@pFilterOsztalyId IS NULL OR @pFilterOsztalyId = TanuloCsoport.C_OSZTALYCSOPORTID)
|
||||
FOR XML PATH('')),1,1,'')
|
||||
RETURN
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,153 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
DROP FUNCTION IF EXISTS [dbo].[fnGetTanuloTanugyiAdatai]
|
||||
GO
|
||||
CREATE FUNCTION [dbo].[fnGetTanuloTanugyiAdatai](
|
||||
@tanevId int
|
||||
,@isDuplikalt bit = 0
|
||||
,@tanuloId int = 0
|
||||
)
|
||||
RETURNS TABLE
|
||||
AS
|
||||
RETURN
|
||||
(
|
||||
SELECT * FROM (
|
||||
SELECT
|
||||
tanuloId
|
||||
,IIF(Count(TanugyiAdatok.tanuloId)>1, '1' , '0') AS IsDuplikalt
|
||||
,TanugyiAdatok.C_BEIRASINAPLOSORSZAM
|
||||
,TanugyiAdatok.C_BEJARO
|
||||
,TanugyiAdatok.C_DIAKSPORTKOROS
|
||||
,TanugyiAdatok.C_EGYEBORSZAGOSDONTO
|
||||
,TanugyiAdatok.C_EGYUTTMUKODESES
|
||||
,TanugyiAdatok.C_ELOZOINTEZMENY
|
||||
,TanugyiAdatok.C_EVISMETLO
|
||||
,TanugyiAdatok.C_FELVETELTANEVEID
|
||||
,TanugyiAdatok.C_HOZOTTIGAZOLATLANHIANYZAS
|
||||
,TanugyiAdatok.C_HOZOTTIGAZOLATLANKESESPERCBE
|
||||
,TanugyiAdatok.C_HOZOTTIGAZOLTHIANYZAS
|
||||
,TanugyiAdatok.C_HOZOTTIGAZOLTKESESPERCBEN
|
||||
,TanugyiAdatok.C_ISESL16EVESUTANBELEPETT
|
||||
,TanugyiAdatok.C_ISKOLAIKERETEKKOZOTT
|
||||
,TanugyiAdatok.C_JOGVISZONYATSZUNETELTETO
|
||||
,TanugyiAdatok.C_JOGVISZONYVARHATOBEFEJEZESE
|
||||
,TanugyiAdatok.C_MAGANTANULO
|
||||
,TanugyiAdatok.C_MAGANTANULOSAGANAKOKAID
|
||||
,TanugyiAdatok.C_MAGANTANULOSAGKEZDETE
|
||||
,TanugyiAdatok.C_NAPLOSORSZAM
|
||||
,TanugyiAdatok.C_NYILVANTARTASKEZDETE
|
||||
,TanugyiAdatok.C_OSZTV
|
||||
,TanugyiAdatok.C_POLGARISZERZODESES
|
||||
,TanugyiAdatok.C_SZAKMAIGYAKORLATON
|
||||
,TanugyiAdatok.C_SZETVAGAZAT
|
||||
,TanugyiAdatok.C_SZINTVIZSGA
|
||||
,TanugyiAdatok.C_SZKTV
|
||||
,TanugyiAdatok.C_TANDIJATFIZETO
|
||||
,TanugyiAdatok.C_TANKOTELEZETT
|
||||
,TanugyiAdatok.C_TANKOTELEZETTSEGVEGE
|
||||
,TanugyiAdatok.C_TANTERVID
|
||||
,TanugyiAdatok.C_TANULOEVFOLYAMTIPUSID
|
||||
,TanugyiAdatok.C_TANULOSZERZODESES
|
||||
,TanugyiAdatok.C_TECHNIKUSIEVFOLYAM
|
||||
,TanugyiAdatok.C_TERITESIDIJATFIZETO
|
||||
,TanugyiAdatok.C_TORZSLAPSZAM
|
||||
,TanugyiAdatok.C_VENDEG
|
||||
FROM (
|
||||
SELECT
|
||||
tanulo.ID tanuloId
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_BEIRASINAPLOSORSZAM, tanugyiAdatok.C_BEIRASINAPLOSORSZAM) AS C_BEIRASINAPLOSORSZAM
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_BEJARO, tanugyiAdatok.C_BEJARO) AS C_BEJARO
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_DIAKSPORTKOROS, tanugyiAdatok.C_DIAKSPORTKOROS) AS C_DIAKSPORTKOROS
|
||||
,tanugyiAdatok.C_EGYEBORSZAGOSDONTO AS C_EGYEBORSZAGOSDONTO
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_EGYUTTMUKODESES, tanugyiAdatok.C_EGYUTTMUKODESES) AS C_EGYUTTMUKODESES
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_ELOZOINTEZMENY, tanugyiAdatok.C_ELOZOINTEZMENY) AS C_ELOZOINTEZMENY
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_EVISMETLO, tanugyiAdatok.C_EVISMETLO) AS C_EVISMETLO
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_FELVETELTANEVEID, tanugyiAdatok.C_FELVETELTANEVEID) AS C_FELVETELTANEVEID
|
||||
,tanugyiAdatok.C_HOZOTTIGAZOLATLANHIANYZAS AS C_HOZOTTIGAZOLATLANHIANYZAS
|
||||
,tanugyiAdatok.C_HOZOTTIGAZOLATLANKESESPERCBE AS C_HOZOTTIGAZOLATLANKESESPERCBE
|
||||
,tanugyiAdatok.C_HOZOTTIGAZOLTHIANYZAS AS C_HOZOTTIGAZOLTHIANYZAS
|
||||
,tanugyiAdatok.C_HOZOTTIGAZOLTKESESPERCBEN AS C_HOZOTTIGAZOLTKESESPERCBEN
|
||||
,tanugyiAdatok.C_ISESL16EVESUTANBELEPETT AS C_ISESL16EVESUTANBELEPETT
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_ISKOLAIKERETEKKOZOTT, tanugyiAdatok.C_ISKOLAIKERETEKKOZOTT) AS C_ISKOLAIKERETEKKOZOTT
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_JOGVISZONYATSZUNETELTETO, tanugyiAdatok.C_JOGVISZONYATSZUNETELTETO) AS C_JOGVISZONYATSZUNETELTETO
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_JOGVISZONYVARHATOBEFEJEZESE, tanugyiAdatok.C_JOGVISZONYVARHATOBEFEJEZESE) AS C_JOGVISZONYVARHATOBEFEJEZESE
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_MAGANTANULO, tanugyiAdatok.C_MAGANTANULO) AS C_MAGANTANULO
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_MAGANTANULOSAGANAKOKA, tanugyiAdatok.C_MAGANTANULOSAGANAKOKAID) AS C_MAGANTANULOSAGANAKOKAID
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_MAGANTANULOSAGKEZDETE, tanugyiAdatok.C_MAGANTANULOSAGKEZDETE) AS C_MAGANTANULOSAGKEZDETE
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_NAPLOSORSZAM, tanugyiAdatok.C_NAPLOSORSZAM) AS C_NAPLOSORSZAM
|
||||
,IIF(tanugyiAdatok.ID IS NULL, felhasznalo.C_NYILVANTARTASKEZDETE, tanugyiAdatok.C_NYILVANTARTASKEZDETE) AS C_NYILVANTARTASKEZDETE
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_OSZTV, tanugyiAdatok.C_OSZTV) AS C_OSZTV
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_POLGARISZERZODESES, tanugyiAdatok.C_POLGARISZERZODESES) AS C_POLGARISZERZODESES
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_SZAKMAIGYAKORLATON, tanugyiAdatok.C_SZAKMAIGYAKORLATON) AS C_SZAKMAIGYAKORLATON
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_SZETVAGAZAT, tanugyiAdatok.C_SZETVAGAZAT) AS C_SZETVAGAZAT
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_SZINTVIZSGA, tanugyiAdatok.C_SZINTVIZSGA) AS C_SZINTVIZSGA
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_SZKTV, tanugyiAdatok.C_SZKTV) AS C_SZKTV
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_TANDIJATFIZETO, tanugyiAdatok.C_TANDIJATFIZETO) AS C_TANDIJATFIZETO
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_TANKOTELEZETT, tanugyiAdatok.C_TANKOTELEZETT) AS C_TANKOTELEZETT
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_TANKOTELEZETTSEGVEGE, tanugyiAdatok.C_TANKOTELEZETTSEGVEGE) AS C_TANKOTELEZETTSEGVEGE
|
||||
,tanugyiAdatok.C_TANTERVID AS C_TANTERVID
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_TANULOEVFOLYAMTIPUS, tanugyiAdatok.C_TANULOEVFOLYAMTIPUSID) AS C_TANULOEVFOLYAMTIPUSID
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_TANULOSZERZODESES, tanugyiAdatok.C_TANULOSZERZODESES) AS C_TANULOSZERZODESES
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_TECHNIKUSIEVFOLYAM, tanugyiAdatok.C_TECHNIKUSIEVFOLYAM) AS C_TECHNIKUSIEVFOLYAM
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_TERITESIDIJATFIZETO, tanugyiAdatok.C_TERITESIDIJATFIZETO) AS C_TERITESIDIJATFIZETO
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_TORZSLAPSZAM, tanugyiAdatok.C_TORZSLAPSZAM) AS C_TORZSLAPSZAM
|
||||
,IIF(tanugyiAdatok.ID IS NULL, tanulo.C_VENDEG, tanugyiAdatok.C_VENDEG) AS C_VENDEG
|
||||
FROM T_TANULO_OSSZES tanulo
|
||||
INNER JOIN T_TANEV_OSSZES tanev ON tanev.ID = tanulo.C_ALTANEVID AND tanev.Id = @tanevId AND Tanev.TOROLT = 'F'
|
||||
LEFT JOIN T_TANULOCSOPORT_OSSZES tanuloCsoport ON tanuloCsoport.C_TANULOID = tanulo.ID
|
||||
AND tanuloCsoport.C_BELEPESDATUM <= GETDATE()
|
||||
AND ( C_KILEPESDATUM >= GETDATE() OR C_KILEPESDATUM IS NULL)
|
||||
AND tanulocsoport.C_BELEPESDATUM >= tanev.C_KEZDONAP
|
||||
AND tanulocsoport.C_BELEPESDATUM <= tanev.C_UTOLSONAP
|
||||
AND tanuloCsoport.C_KILEPESDATUM <= tanev.C_UTOLSONAP
|
||||
AND tanuloCsoport.C_KILEPESDATUM >= tanev.C_KEZDONAP
|
||||
AND tanuloCsoport.TOROLT = 'F'
|
||||
LEFT JOIN T_OSZTALY_OSSZES osztaly ON osztaly.ID = tanuloCsoport.C_OSZTALYCSOPORTID
|
||||
LEFT JOIN T_TANULOTANUGYIADATOK_OSSZES tanugyiAdatok ON tanugyiadatok.C_TANULOCSOPORTID = tanuloCsoport.ID
|
||||
INNER JOIN T_FELHASZNALO_OSSZES felhasznalo ON felhasznalo.ID = tanulo.ID
|
||||
WHERE (tanulo.ID = @tanuloId OR @tanuloId = 0)
|
||||
) TanugyiAdatok
|
||||
GROUP BY tanuloId
|
||||
,C_BEIRASINAPLOSORSZAM
|
||||
,C_BEJARO
|
||||
,C_DIAKSPORTKOROS
|
||||
,C_EGYEBORSZAGOSDONTO
|
||||
,C_EGYUTTMUKODESES
|
||||
,C_ELOZOINTEZMENY
|
||||
,C_EVISMETLO
|
||||
,C_FELVETELTANEVEID
|
||||
,C_HOZOTTIGAZOLATLANHIANYZAS
|
||||
,C_HOZOTTIGAZOLATLANKESESPERCBE
|
||||
,C_HOZOTTIGAZOLTHIANYZAS
|
||||
,C_HOZOTTIGAZOLTKESESPERCBEN
|
||||
,C_ISESL16EVESUTANBELEPETT
|
||||
,C_ISKOLAIKERETEKKOZOTT
|
||||
,C_JOGVISZONYATSZUNETELTETO
|
||||
,C_JOGVISZONYVARHATOBEFEJEZESE
|
||||
,C_MAGANTANULO
|
||||
,C_MAGANTANULOSAGANAKOKAID
|
||||
,C_MAGANTANULOSAGKEZDETE
|
||||
,C_NAPLOSORSZAM
|
||||
,C_NYILVANTARTASKEZDETE
|
||||
,C_OSZTV
|
||||
,C_POLGARISZERZODESES
|
||||
,C_SZAKMAIGYAKORLATON
|
||||
,C_SZETVAGAZAT
|
||||
,C_SZINTVIZSGA
|
||||
,C_SZKTV
|
||||
,C_TANDIJATFIZETO
|
||||
,C_TANKOTELEZETT
|
||||
,C_TANKOTELEZETTSEGVEGE
|
||||
,C_TANTERVID
|
||||
,C_TANULOEVFOLYAMTIPUSID
|
||||
,C_TANULOSZERZODESES
|
||||
,C_TECHNIKUSIEVFOLYAM
|
||||
,C_TERITESIDIJATFIZETO
|
||||
,C_TORZSLAPSZAM
|
||||
,C_VENDEG
|
||||
) TanugyiAdatok WHERE IsDuplikalt <= @isDuplikalt
|
||||
)
|
||||
GO
|
|
@ -0,0 +1,40 @@
|
|||
DROP FUNCTION IF EXISTS fnGetUtkozesByOsztalycsoport
|
||||
GO
|
||||
|
||||
CREATE FUNCTION [fnGetUtkozesByOsztalycsoport] (
|
||||
@startTime datetime,
|
||||
@endTime datetime,
|
||||
@osztalyCsoportId int,
|
||||
@intezmenyId int,
|
||||
@tanevId int
|
||||
) RETURNS TABLE
|
||||
RETURN (
|
||||
SELECT o.ID AS OrarendiOraId, NULL AS TanitasioraId, NULL AS OsztalyCsoportId, NULL as NemKotottMunkaido
|
||||
FROM T_NAPTARINAP_OSSZES n
|
||||
LEFT JOIN T_TANEVRENDJE_OSSZES tr ON tr.C_DATUM = n.C_NAPDATUMA
|
||||
INNER JOIN T_ORARENDIORA_OSSZES o ON (ISNULL(tr.C_HETIREND, n.C_HETIREND) = o.C_HETIREND OR o.C_HETIREND = 1554)
|
||||
AND ISNULL(tr.C_HETNAPJA, n.C_HETNAPJA) = o.C_HETNAPJA
|
||||
AND n.C_INTEZMENYID = o.C_INTEZMENYID
|
||||
AND n.C_TANEVID = o.C_TANEVID
|
||||
WHERE CAST(CAST(@startTime AS DATE) AS DATETIME) + CAST(CAST(o.C_ORAKEZDETE AS TIME) AS DATETIME) < @endTime
|
||||
AND CAST(CAST(@endTime AS DATE) AS DATETIME) + CAST(CAST(o.C_ORAVEGE AS TIME) AS DATETIME) > @startTime
|
||||
AND o.C_OSZTALYCSOPORTID IN (SELECT ID FROM dbo.fnGetKapcsolodoOsztalycsoportok(@osztalyCsoportId))
|
||||
AND n.C_TANEVID = @tanevId
|
||||
AND n.C_INTEZMENYID = @intezmenyId
|
||||
AND n.C_NAPDATUMA >= CAST(@startTime AS DATE) AND n.C_NAPDATUMA <= CAST(@endTime AS DATE)
|
||||
AND n.TOROLT = 'F' AND (tr.TOROLT = 'F' OR tr.TOROLT IS NULL) AND o.TOROLT = 'F' and o.C_PARHUZAMOSORA = 'F'
|
||||
AND o.C_ORAERVENYESSEGKEZDETE <= CAST(@endTime AS DATE) AND o.C_ORAERVENYESSEGVEGE > CAST(@startTime AS DATE)
|
||||
|
||||
UNION
|
||||
|
||||
SELECT o.ID AS OrarendiOraId, tn.ID AS TanitasioraId, tn.C_OSZTALYCSOPORTID AS OsztalyCsoportID, NULL as NemKotottMunkaido
|
||||
FROM T_TANITASIORA_OSSZES tn
|
||||
LEFT JOIN T_ORARENDIORA o ON tn.C_ORARENDIORAGROUPID = o.C_ORARENDIORAGROUPID AND tn.C_DATUM BETWEEN o.C_ORAERVENYESSEGKEZDETE AND o.C_ORAERVENYESSEGVEGE
|
||||
WHERE tn.C_ORAKEZDETE < @endTime
|
||||
AND tn.C_ORAVEGE > @startTime
|
||||
AND tn.C_OSZTALYCSOPORTID IN (SELECT ID FROM dbo.fnGetKapcsolodoOsztalycsoportok(@osztalyCsoportId))
|
||||
AND tn.C_TANEVID = @tanevId
|
||||
AND tn.C_INTEZMENYID = @intezmenyId
|
||||
AND tn.TOROLT = 'F' and tn.C_PARHUZAMOSORA = 'F'
|
||||
);
|
||||
GO
|
|
@ -0,0 +1,69 @@
|
|||
IF OBJECT_ID('fnGetUtkozesByTanar') IS NOT NULL BEGIN
|
||||
DROP FUNCTION fnGetUtkozesByTanar
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE FUNCTION [fnGetUtkozesByTanar] (
|
||||
@startTime datetime,
|
||||
@endTime datetime,
|
||||
@tanarId int,
|
||||
@intezmenyId int,
|
||||
@tanevId int
|
||||
) RETURNS TABLE
|
||||
RETURN (
|
||||
|
||||
SELECT
|
||||
o.ID AS OrarendiOraId
|
||||
,NULL AS TanitasiOraId
|
||||
,NULL as NemKotottMunkaido
|
||||
FROM T_NAPTARINAP_OSSZES n
|
||||
LEFT JOIN T_TANEVRENDJE_OSSZES tr ON tr.C_DATUM = n.C_NAPDATUMA
|
||||
INNER JOIN T_ORARENDIORA_OSSZES o ON (ISNULL(tr.C_HETIREND, n.C_HETIREND) = o.C_HETIREND OR o.C_HETIREND = 1554)
|
||||
AND ISNULL(tr.C_HETNAPJA, n.C_HETNAPJA) = o.C_HETNAPJA
|
||||
AND n.C_INTEZMENYID = o.C_INTEZMENYID
|
||||
AND n.C_TANEVID = o.C_TANEVID
|
||||
WHERE
|
||||
CAST(CAST(@startTime AS DATE) AS DATETIME) + CAST(CAST(o.C_ORAKEZDETE AS TIME) AS DATETIME) < @endTime
|
||||
AND CAST(CAST(@endTime AS DATE) AS DATETIME) + CAST(CAST(o.C_ORAVEGE AS TIME) AS DATETIME) > @startTime
|
||||
AND o.C_TANARID = @tanarId
|
||||
AND n.C_TANEVID = @tanevId
|
||||
AND n.C_INTEZMENYID = @intezmenyId
|
||||
AND n.C_NAPDATUMA >= CAST(@startTime AS DATE) AND n.C_NAPDATUMA <= CAST(@endTime AS DATE)
|
||||
AND n.TOROLT = 'F' AND (tr.TOROLT = 'F' OR tr.TOROLT IS NULL) AND o.TOROLT = 'F' and o.C_PARHUZAMOSORA = 'F'
|
||||
AND o.C_ORAERVENYESSEGKEZDETE <= CAST(@endTime AS DATE) AND o.C_ORAERVENYESSEGVEGE > CAST(@startTime AS DATE)
|
||||
UNION
|
||||
SELECT
|
||||
o.ID AS OrarendiOraId
|
||||
,tn.ID AS TanitasioraId
|
||||
,NULL as NemKotottMunkaido
|
||||
FROM T_TANITASIORA_OSSZES tn
|
||||
LEFT JOIN T_ORARENDIORA o ON tn.C_ORARENDIORAGROUPID = o.C_ORARENDIORAGROUPID AND tn.C_DATUM BETWEEN o.C_ORAERVENYESSEGKEZDETE AND o.C_ORAERVENYESSEGVEGE
|
||||
WHERE
|
||||
tn.C_ORAKEZDETE < @endTime
|
||||
AND tn.C_ORAVEGE > @startTime
|
||||
AND ISNULL(tn.C_HELYETTESITOTANARID, tn.C_ORATULAJDONOSID) = @tanarId
|
||||
AND tn.C_TANEVID = @tanevId
|
||||
AND tn.C_INTEZMENYID = @intezmenyId
|
||||
AND tn.TOROLT = 'F' and tn.C_PARHUZAMOSORA = 'F'
|
||||
UNION
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
(
|
||||
SELECT
|
||||
NULL AS OrarendiOraId
|
||||
,NULL AS TanitasiOraId
|
||||
,IIF(COUNT(*) > 0, COUNT(*), NULL) AS NemKotottMunkaido
|
||||
FROM T_NEMKOTOTTMUNKAIDO nkm
|
||||
WHERE
|
||||
nkm.C_TANEVID = @tanevId
|
||||
AND nkm.C_INTEZMENYID = @intezmenyId
|
||||
AND nkm.TOROLT = 'F'
|
||||
AND nkm.C_TANARID = @tanarId
|
||||
AND nkm.C_KEZDETE <= @endTime
|
||||
AND nkm.C_VEGE >= @startTime
|
||||
) AS nkmselect
|
||||
WHERE
|
||||
nkmselect.NemKotottMunkaido IS NOT NULL
|
||||
);
|
||||
GO
|
|
@ -0,0 +1,58 @@
|
|||
DROP FUNCTION IF EXISTS dbo.fnOsztondijHistoryOszlopok
|
||||
GO
|
||||
|
||||
CREATE FUNCTION dbo.fnOsztondijHistoryOszlopok()
|
||||
RETURNS TABLE
|
||||
AS
|
||||
RETURN (
|
||||
SELECT TablaId, TablaNev, OszlopNev, OszlopTipus, Alias
|
||||
FROM (
|
||||
VALUES
|
||||
-- TablaId TablaNev OszlopNev OszlopTipus Alias
|
||||
(1, 'T_OSZTALYCSOPORT', 'C_EVFOLYAMTIPUSA', 'EvfolyamTipus', N'Az osztály évfolyama' ),
|
||||
(1, 'T_OSZTALYCSOPORT', 'C_ISTECHNIKAI', 'Boolean', N'Az osztály technikai' ),
|
||||
(1, 'T_OSZTALYCSOPORT', 'C_KERESZTFELEVES', 'Boolean', N'Az osztály keresztféléves' ),
|
||||
(1, 'T_OSZTALYCSOPORT', 'C_FELADATKATEGORIAID', 'OktNevelesiKategoria', N'Az osztály modulja' ),
|
||||
(1, 'T_OSZTALYCSOPORT', 'C_VEGZOSEVFOLYAM', 'Boolean', N'Az osztály végzős' ),
|
||||
(1, 'T_OSZTALYCSOPORT', 'TOROLT', 'Boolean', N'Az osztály törölt' ),
|
||||
(2, 'T_TANULO', 'C_EVISMETLO', 'Boolean', N'A tanuló évismétlő' ),
|
||||
(2, 'T_TANULO', 'C_ISBESZAMITASOS', 'Boolean', N'A tanuló beszámításos' ),
|
||||
(2, 'T_TANULO', 'C_ISMASODIKTOBBSZAKMA', 'Boolean', N'A tanuló nem első szakmás' ),
|
||||
(2, 'T_TANULO', 'C_ISOSZTONDIJBOLKIZARVA', 'Boolean', N'A tanuló az ösztöndíjból kizárt' ),
|
||||
(2, 'T_TANULO', 'C_ISSZAKKEPZESIMUNKASZERZODESS', 'Boolean', N'A tanuló munkaszerződéses' ),
|
||||
(2, 'T_TANULO', 'C_JOGVISZONYATSZUNETELTETO', 'Boolean', N'A tanuló jogviszonya szünetel' ),
|
||||
(2, 'T_TANULO', 'C_JOGVISZONYTIPUSID', 'JogviszonyTipus', N'A tanuló jogviszonya' ),
|
||||
(2, 'T_TANULO', 'C_KEZIATLAG', 'NULL', N'A tanuló beállított átlaga' ),
|
||||
(2, 'T_TANULO', 'C_SZAMITOTTATLAG', 'NULL', N'A tanuló számított átlaga' ),
|
||||
(2, 'T_TANULO', 'C_TANULOSZERZODESES', 'NULL', N'A tanuló tanulószerződéses' ),
|
||||
(2, 'T_TANULO', 'C_VENDEG', 'Boolean', N'A tanuló vendégtanuló' ),
|
||||
(2, 'T_TANULO', 'C_ISBESZAMITASOSFIXSZAZALEK', 'Boolean', N'A tanulónak nincs releváns átlaga' ),
|
||||
(2, 'T_TANULO', 'C_ISMULASZTASMIATTKIZART', 'Boolean', N'A tanuló a hiányzásai miatt kizárt' ),
|
||||
(2, 'T_TANULO', 'C_ISSIKERESAGAZATIVIZSGA', 'Boolean', N'A tanuló sikeres ágazati vizsgát tett' ),
|
||||
(2, 'T_TANULO', 'C_ISATLAGSZAKKEPZESI', 'Boolean', N'Átlag szakképzési' ),
|
||||
(2, 'T_TANULO', 'C_ISINGYENESKEPZES', 'Boolean', N'A tanuló ingyenes képzésben vesz részt'),
|
||||
(2, 'T_TANULO', 'TOROLT', 'Boolean', N'A tanuló törölt' ),
|
||||
(3, 'T_TANULOCSOPORT', 'C_BELEPESDATUM', 'DateTime', N'A tanuló besorolásának dátuma' ),
|
||||
(3, 'T_TANULOCSOPORT', 'C_KILEPESDATUM', 'DateTime', N'A tanuló kisorolásának dátuma' ),
|
||||
(3, 'T_TANULOCSOPORT', 'C_JOGVISZONYTIPUSID', 'JogviszonyTipus', N'A tanuló jogviszonya' ),
|
||||
(3, 'T_TANULOCSOPORT', 'TOROLT', 'Boolean', N'A tanuló besorolása törölt' ),
|
||||
(4, 'T_TANULOMULASZTAS', 'C_IGAZOLT', 'Boolean', N'A tanuló mulasztása igazolt' ),
|
||||
(4, 'T_TANULOMULASZTAS', 'C_TIPUS', 'MulasztasTipus', N'A tanuló mulasztásának típusa' ),
|
||||
(4, 'T_TANULOMULASZTAS', 'C_TANITASIORAKID', 'NULL', N'A tanuló mulasztásának tanórája' ),
|
||||
(4, 'T_TANULOMULASZTAS', 'C_ORATANULOIID', 'NULL', N'A tanuló mulasztásának tanulója' ),
|
||||
(4, 'T_TANULOMULASZTAS', 'TOROLT', 'Boolean', N'A tanuló mulasztása törölt' ),
|
||||
(5, 'T_TANULOTANUGYIADATOK', 'C_EVISMETLO', 'Boolean', N'A tanuló évismétlő' ),
|
||||
(5, 'T_TANULOTANUGYIADATOK', 'C_ISBESZAMITASOS', 'Boolean', N'A tanuló beszámításos' ),
|
||||
(5, 'T_TANULOTANUGYIADATOK', 'C_ISMASODIKTOBBSZAKMA', 'Boolean', N'A tanuló nem első szakmás' ),
|
||||
(5, 'T_TANULOTANUGYIADATOK', 'C_ISSZAKKEPZESIMUNKASZERZODESS', 'Boolean', N'A tanuló munkaszerződéses' ),
|
||||
(5, 'T_TANULOTANUGYIADATOK', 'C_JOGVISZONYATSZUNETELTETO', 'Boolean', N'A tanuló jogviszonya szünetel' ),
|
||||
(5, 'T_TANULOTANUGYIADATOK', 'C_TANULOEVFOLYAMTIPUSID', 'Boolean', N'A tanuló egyéni évfolyama' ),
|
||||
(5, 'T_TANULOTANUGYIADATOK', 'C_TANULOSZERZODESES', 'Boolean', N'A tanuló tanulószerződéses' ),
|
||||
(5, 'T_TANULOTANUGYIADATOK', 'C_VENDEG', 'Boolean', N'A tanuló vendégtanuló' ),
|
||||
(5, 'T_TANULOTANUGYIADATOK', 'TOROLT', 'Boolean', N'A tanuló vagy besorolása törölt' ),
|
||||
(5, 'T_TANULOTANUGYIADATOK', 'C_ISBESZAMITASOSFIXSZAZALEK', 'Boolean', N'A tanulónak nincs releváns átlaga' ),
|
||||
(5, 'T_TANULOTANUGYIADATOK', 'C_AGAZATUJSZKTTIPUSID', 'AgazatUjSzktTipus', N'A tanuló képzésének ágazata' ),
|
||||
(5, 'T_TANULOTANUGYIADATOK', 'C_SZAKMATIPUSID', 'SzakmaTipus', N'A tanuló képzésének szakmatípusa' )
|
||||
) as t(TablaId, TablaNev, OszlopNev, OszlopTipus, Alias)
|
||||
)
|
||||
GO
|
|
@ -0,0 +1,52 @@
|
|||
DROP FUNCTION IF EXISTS dbo.fnRemoveXmlEvilCharacters
|
||||
GO
|
||||
|
||||
CREATE FUNCTION dbo.fnRemoveXmlEvilCharacters (@text NVARCHAR(MAX))
|
||||
RETURNS NVARCHAR(MAX) AS
|
||||
BEGIN
|
||||
|
||||
DECLARE @return_value NVARCHAR(MAX)
|
||||
|
||||
SET @return_value =
|
||||
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(
|
||||
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(
|
||||
REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(
|
||||
REPLACE(REPLACE(REPLACE(
|
||||
@text
|
||||
,CHAR(0x0), '')
|
||||
,CHAR(0x1), '')
|
||||
,CHAR(0x2), '')
|
||||
,CHAR(0x3), '')
|
||||
,CHAR(0x4), '')
|
||||
,CHAR(0x5), '')
|
||||
,CHAR(0x6), '')
|
||||
,CHAR(0x7), '')
|
||||
,CHAR(0x8), '')
|
||||
,CHAR(0x9), '')
|
||||
,CHAR(0xa), '')
|
||||
,CHAR(0xb), '')
|
||||
,CHAR(0xc), '')
|
||||
,CHAR(0xd), '')
|
||||
,CHAR(0xe), '')
|
||||
,CHAR(0xf), '')
|
||||
,CHAR(0x10), '')
|
||||
,CHAR(0x11), '')
|
||||
,CHAR(0x12), '')
|
||||
,CHAR(0x13), '')
|
||||
,CHAR(0x14), '')
|
||||
,CHAR(0x15), '')
|
||||
,CHAR(0x16), '')
|
||||
,CHAR(0x17), '')
|
||||
,CHAR(0x18), '')
|
||||
,CHAR(0x19), '')
|
||||
,CHAR(0x1a), '')
|
||||
,CHAR(0x1b), '')
|
||||
,CHAR(0x1c), '')
|
||||
,CHAR(0x1d), '')
|
||||
,CHAR(0x1e), '')
|
||||
,CHAR(0x1f), '')
|
||||
,CHAR(0x7f), '')
|
||||
|
||||
RETURN @return_value
|
||||
|
||||
END
|
Loading…
Add table
Add a link
Reference in a new issue