This commit is contained in:
2024-03-13 00:33:46 +01:00
commit e124a47765
19374 changed files with 9806149 additions and 0 deletions

View File

@@ -0,0 +1,45 @@
 --------------------------- Előző Tanév Rekord ID Betétele, ha még nincs ---------------------------
DECLARE @sql nvarchar(max) = '';
SELECT @sql += 'ALTER TABLE dbo.' + T.TABLE_NAME + ' ADD ELOZOTANEVIREKORDID INT;' + char(13) + char(10)
FROM INFORMATION_SCHEMA.TABLES T
WHERE NOT EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS C WHERE C.TABLE_NAME = T.TABLE_NAME AND C.COLUMN_NAME = 'ELOZOTANEVIREKORDID')
AND T.TABLE_TYPE = 'BASE TABLE'
AND TABLE_SCHEMA = 'dbo';
EXEC sp_executesql @sql;
GO
DECLARE @sql nvarchar(max) = '';
SELECT @sql += 'ALTER TABLE dbo.' + T.TABLE_NAME + ' ADD ELOZOTANEVIREKORDID INT;' + char(13) + char(10)
FROM INFORMATION_SCHEMA.TABLES T
WHERE EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS C WHERE C.TABLE_SCHEMA = T.TABLE_SCHEMA AND C.TABLE_NAME = T.TABLE_NAME AND C.COLUMN_NAME = 'C_INTEZMENYID')
AND NOT EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS C WHERE C.TABLE_SCHEMA = T.TABLE_SCHEMA AND C.TABLE_NAME = T.TABLE_NAME AND C.COLUMN_NAME = 'ELOZOTANEVIREKORDID')
AND T.TABLE_TYPE = 'BASE TABLE'
AND TABLE_SCHEMA = 'dbo';
--PRINT @sql;
EXEC sp_executesql @sql;
GO
DECLARE @sql nvarchar(max) = '';
SELECT @sql += 'ALTER TABLE dbo.' + T.TABLE_NAME + ' ADD ELOZOTANEVIREKORDIDA INT;' + char(13) + char(10)
FROM INFORMATION_SCHEMA.TABLES T
WHERE EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS C WHERE C.TABLE_SCHEMA = T.TABLE_SCHEMA AND C.TABLE_NAME = T.TABLE_NAME AND C.COLUMN_NAME = 'C_ALINTEZMENYID')
AND NOT EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS C WHERE C.TABLE_SCHEMA = T.TABLE_SCHEMA AND C.TABLE_NAME = T.TABLE_NAME AND C.COLUMN_NAME = 'ELOZOTANEVIREKORDIDA')
AND T.TABLE_TYPE = 'BASE TABLE'
AND TABLE_SCHEMA = 'dbo';
--PRINT @sql;
EXEC sp_executesql @sql;
GO
/*ADDING NNID COLUMN FOR EACH TABLE*/
DECLARE @sql nvarchar(max) = '';
SELECT @sql += 'ALTER TABLE dbo.' + T.TABLE_NAME + ' ADD NNID INT;' + char(13) + char(10)
FROM INFORMATION_SCHEMA.TABLES T
WHERE NOT EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS C WHERE C.TABLE_NAME = T.TABLE_NAME AND C.COLUMN_NAME = 'NNID')
AND T.TABLE_TYPE = 'BASE TABLE'
AND TABLE_SCHEMA = 'dbo';
EXEC sp_executesql @sql;
GO

View File

@@ -0,0 +1,62 @@
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 o.ID = tn.C_ORARENDIORAID
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
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
);
GO