init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
File diff suppressed because it is too large
Load diff
|
@ -0,0 +1,127 @@
|
|||
-- ==================================================================================================================================
|
||||
-- CoreAPI DB változások
|
||||
-- ==================================================================================================================================
|
||||
IF COL_LENGTH('dbo.T_INTEZMENYADATOK', 'CORE_CIMID') IS NULL BEGIN
|
||||
ALTER TABLE T_INTEZMENYADATOK
|
||||
ADD CORE_CIMID INT NULL
|
||||
END
|
||||
GO
|
||||
|
||||
IF COL_LENGTH('dbo.T_MUKODESIHELY', 'CORE_CIMID') IS NULL BEGIN
|
||||
ALTER TABLE T_MUKODESIHELY
|
||||
ADD CORE_CIMID INT NULL
|
||||
END
|
||||
GO
|
||||
|
||||
IF COL_LENGTH('dbo.T_INTEZMENYADATOK', 'CORE_ELERHETOSEGID') IS NULL BEGIN
|
||||
ALTER TABLE T_INTEZMENYADATOK
|
||||
ADD CORE_ELERHETOSEGID INT NULL
|
||||
END
|
||||
GO
|
||||
|
||||
IF COL_LENGTH('dbo.T_MUKODESIHELY', 'CORE_ELERHETOSEGID') IS NULL BEGIN
|
||||
ALTER TABLE T_MUKODESIHELY
|
||||
ADD CORE_ELERHETOSEGID INT NULL
|
||||
END
|
||||
GO
|
||||
|
||||
DROP SEQUENCE IF EXISTS dbo.SeqCoreMunkaugyiAdatok
|
||||
GO
|
||||
|
||||
CREATE SEQUENCE dbo.SeqCoreMunkaugyiAdatok
|
||||
AS INT
|
||||
START WITH 1
|
||||
INCREMENT BY 1
|
||||
GO
|
||||
|
||||
IF COL_LENGTH('dbo.T_MUNKAUGYIADATOK', 'CORE_ID') IS NULL BEGIN
|
||||
ALTER TABLE T_MUNKAUGYIADATOK
|
||||
ADD CORE_ID INT NOT NULL DEFAULT NEXT VALUE FOR dbo.SeqCoreMunkaugyiAdatok
|
||||
END
|
||||
GO
|
||||
|
||||
IF COL_LENGTH('dbo.T_TOVABBIMUNKAUGYIADATOK', 'CORE_ID') IS NULL BEGIN
|
||||
ALTER TABLE T_TOVABBIMUNKAUGYIADATOK
|
||||
ADD CORE_ID INT NOT NULL DEFAULT NEXT VALUE FOR dbo.SeqCoreMunkaugyiAdatok
|
||||
END
|
||||
GO
|
||||
|
||||
IF COL_LENGTH('dbo.T_KEPESITES_VEGZETTSEG', 'CORE_ID') IS NULL BEGIN
|
||||
ALTER TABLE T_KEPESITES_VEGZETTSEG
|
||||
ADD CORE_ID INT NOT NULL IDENTITY(1,1)
|
||||
END
|
||||
GO
|
||||
|
||||
IF COL_LENGTH('dbo.T_FELHASZNALO_SZEREPKOR', 'CORE_ID') IS NULL BEGIN
|
||||
ALTER TABLE T_FELHASZNALO_SZEREPKOR
|
||||
ADD CORE_ID INT NOT NULL IDENTITY(1,1)
|
||||
END
|
||||
GO
|
||||
|
||||
IF COL_LENGTH('dbo.T_DICTIONARYITEMBASE', 'CORE_KATEGORIAID') IS NULL BEGIN
|
||||
ALTER TABLE T_DICTIONARYITEMBASE
|
||||
ADD CORE_KATEGORIAID INT NOT NULL DEFAULT 0
|
||||
END
|
||||
GO
|
||||
|
||||
IF COL_LENGTH('dbo.T_CIM', 'CORE_PUBLIKUS') IS NULL BEGIN
|
||||
ALTER TABLE T_CIM
|
||||
ADD CORE_PUBLIKUS CHAR(1) NOT NULL DEFAULT 'F'
|
||||
END
|
||||
GO
|
||||
|
||||
-- Struktúrális változás miatt szükséges, hogy nullable legyen.
|
||||
-- Tranzakcióban kezeljük, nem fog tőlünk hibás rekord keletkezni.
|
||||
ALTER TABLE dbo.T_GONDVISELO
|
||||
ALTER COLUMN C_TANULOID INT NULL
|
||||
GO
|
||||
|
||||
ALTER TABLE dbo.T_GONDVISELO
|
||||
ALTER COLUMN C_ROKONSAGFOKA INT NULL
|
||||
GO
|
||||
|
||||
ALTER TABLE dbo.T_FELHASZNALOBELEPES
|
||||
ALTER COLUMN C_FELHASZNALOID INT NULL
|
||||
GO
|
||||
|
||||
ALTER TABLE dbo.T_FELHASZNALOBELEPESTORTENET
|
||||
ALTER COLUMN C_FELHASZNALOID INT NULL
|
||||
GO
|
||||
|
||||
-- ==================================================================================================================================
|
||||
-- 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
|
||||
|
|
@ -0,0 +1,263 @@
|
|||
-- ==================================================================================================================================
|
||||
-- T_TANULOTANTARGYATLAG CLUSTERED INDEX
|
||||
-- ==================================================================================================================================
|
||||
ALTER TABLE T_TANULOTANTARGYATLAG
|
||||
DROP CONSTRAINT IF EXISTS FK_TanuloTantargyAtlag_TanuloId_REF_Tanulo;
|
||||
GO
|
||||
|
||||
ALTER TABLE T_TANULOTANTARGYATLAG
|
||||
DROP CONSTRAINT IF EXISTS FK_TanuloTantargyAtlag_TantargyId_REF_Tantargy;
|
||||
GO
|
||||
|
||||
ALTER TABLE T_TANULOTANTARGYATLAG
|
||||
DROP CONSTRAINT IF EXISTS FK_TanuloTantargyAtlag_OktatasNevelesiFeladatId_IntezmenyId_TanevId_REF_OktatasiNevelesiFeladat;
|
||||
GO
|
||||
|
||||
ALTER TABLE T_TANULOTANTARGYATLAG
|
||||
DROP CONSTRAINT IF EXISTS PK_TanuloTantargyAtlag;
|
||||
GO
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM sys.indexes WHERE name = 'CU_TanuloTantargyAtlag_TanuloId_TantargyId_OktatasNevelesiFeladatId') BEGIN
|
||||
CREATE UNIQUE CLUSTERED INDEX CU_TanuloTantargyAtlag_TanuloId_TantargyId_OktatasNevelesiFeladatId
|
||||
ON T_TANULOTANTARGYATLAG (C_TANULOID, C_TANTARGYID, C_OKTATASNEVELESIFELADATID)
|
||||
WITH (FILLFACTOR = 80)
|
||||
END
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('PK_TanuloTantargyAtlag') IS NULL BEGIN
|
||||
ALTER TABLE T_TANULOTANTARGYATLAG
|
||||
ADD CONSTRAINT PK_TanuloTantargyAtlag PRIMARY KEY (ID);
|
||||
END
|
||||
GO
|
||||
|
||||
DROP INDEX IF EXISTS NCI_TanuloTantargyAtlag_TanuloId ON T_TANULOTANTARGYATLAG
|
||||
GO
|
||||
|
||||
ALTER TABLE [DBO].T_TANULOTANTARGYATLAG
|
||||
ADD CONSTRAINT FK_TanuloTantargyAtlag_TantargyId_REF_Tantargy
|
||||
FOREIGN KEY (C_TANTARGYID)
|
||||
REFERENCES [DBO].T_TANTARGY (ID)
|
||||
GO
|
||||
|
||||
ALTER TABLE [DBO].T_TANULOTANTARGYATLAG
|
||||
ADD CONSTRAINT FK_TanuloTantargyAtlag_TanuloId_REF_Tanulo
|
||||
FOREIGN KEY (C_TANULOID)
|
||||
REFERENCES [DBO].T_TANULO (ID)
|
||||
GO
|
||||
|
||||
ALTER TABLE [DBO].T_TANULOTANTARGYATLAG
|
||||
ADD CONSTRAINT FK_TanuloTantargyAtlag_OktatasNevelesiFeladatId_IntezmenyId_TanevId_REF_OktatasiNevelesiFeladat
|
||||
FOREIGN KEY (C_OKTATASNEVELESIFELADATID, C_INTEZMENYID, C_TANEVID)
|
||||
REFERENCES [dbo].T_OKTATASINEVELESIFELADAT (ID, C_ALINTEZMENYID, C_ALTANEVID)
|
||||
GO
|
||||
|
||||
-- ==================================================================================================================================
|
||||
-- T_NAPTARINAP CLUSTERED INDEX
|
||||
-- ==================================================================================================================================
|
||||
ALTER TABLE T_TANITASIORA DROP CONSTRAINT IF EXISTS FK_TanitasiOra_NaptariNapId_REF_NaptariNap;
|
||||
GO
|
||||
|
||||
ALTER TABLE T_NAPTARINAP DROP CONSTRAINT IF EXISTS PK_Naptarinap;
|
||||
GO
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM sys.indexes WHERE name = 'CI_NaptariNap_NapDatuma_IntezmenyId_TanevId') BEGIN
|
||||
CREATE CLUSTERED INDEX CI_NaptariNap_NapDatuma_IntezmenyId_TanevId
|
||||
ON T_NAPTARINAP (C_NAPDATUMA, C_INTEZMENYID, C_TANEVID)
|
||||
WITH (FILLFACTOR = 80)
|
||||
END
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('PK_Naptarinap') IS NULL BEGIN
|
||||
ALTER TABLE T_NAPTARINAP
|
||||
ADD CONSTRAINT PK_Naptarinap PRIMARY KEY (ID);
|
||||
END
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('FK_TanitasiOra_NaptariNapId_REF_NaptariNap', 'F') IS NULL BEGIN
|
||||
ALTER TABLE [DBO].T_TANITASIORA
|
||||
ADD CONSTRAINT FK_TanitasiOra_NaptariNapId_REF_NaptariNap
|
||||
FOREIGN KEY (C_NAPTARINAPID)
|
||||
REFERENCES [DBO].T_NAPTARINAP (ID)
|
||||
END
|
||||
GO
|
||||
|
||||
DROP INDEX IF EXISTS NCI_KKGyogypedVegzettseg_IntezmenyId ON T_KKGYOGYPEDVEGZETTSEG
|
||||
-- ==================================================================================================================================
|
||||
-- ORARENDIORA FK REMOVE
|
||||
-- ==================================================================================================================================
|
||||
ALTER TABLE T_ORARENDIORA DROP CONSTRAINT IF EXISTS FK_OrarendiOra_FoglalkozasId_REF_Foglalkozas
|
||||
GO
|
||||
|
||||
-- ==================================================================================================================================
|
||||
-- TANITASIORA FK REMOVE
|
||||
-- ==================================================================================================================================
|
||||
ALTER TABLE T_TANITASIORA DROP CONSTRAINT IF EXISTS FK_TanitasiOra_FoglalkozasId_REF_Foglalkozas
|
||||
GO
|
||||
|
||||
-- ==================================================================================================================================
|
||||
-- T_DICTIONARYITEMBASE & T_DICTIONARYTYPE CONSTRAINTS
|
||||
-- ==================================================================================================================================
|
||||
ALTER TABLE T_DICTIONARYITEMBASE
|
||||
DROP CONSTRAINT FK_DictionaryItemBase_DictionaryTypeId_REF_DictionaryType
|
||||
GO
|
||||
|
||||
ALTER TABLE T_DICTIONARYTYPE
|
||||
DROP CONSTRAINT PK_DictionaryType
|
||||
GO
|
||||
|
||||
ALTER TABLE T_DICTIONARYTYPE
|
||||
ADD CONSTRAINT PK_DictionaryType PRIMARY KEY CLUSTERED (ID, C_INTEZMENYID, C_TANEVID)
|
||||
GO
|
||||
|
||||
ALTER TABLE [dbo].[T_DICTIONARYITEMBASE] WITH NOCHECK
|
||||
ADD CONSTRAINT [FK_DictionaryItemBase_DictionaryTypeId_IntezmenyId_TanevId_REF_DictionaryType] FOREIGN KEY ([C_DICTIONARYTYPEID], [C_INTEZMENYID], [C_TANEVID]) REFERENCES [dbo].[T_DICTIONARYTYPE] (ID, C_INTEZMENYID, C_TANEVID);
|
||||
GO
|
||||
|
||||
ALTER TABLE [dbo].[T_OKTATASINEVELESIFELADAT]
|
||||
ADD CONSTRAINT DF_OktatasiNevelesiFeladat_FeladatKategoriaId DEFAULT 7553 FOR [C_FELADATKATEGORIAID]
|
||||
GO
|
||||
|
||||
-- ==================================================================================================================================
|
||||
-- CHECK CONSTRAINTS
|
||||
-- ==================================================================================================================================
|
||||
ALTER TABLE [dbo].[T_FELHASZNALOBELEPES] DROP CONSTRAINT IF EXISTS [CK_C_GUID]
|
||||
GO
|
||||
|
||||
ALTER TABLE [dbo].[T_FELHASZNALOBELEPES] DROP CONSTRAINT IF EXISTS [CK_SoNullValidation]
|
||||
GO
|
||||
|
||||
ALTER TABLE [dbo].[T_FELHASZNALOBELEPES] DROP CONSTRAINT IF EXISTS [CK_FELHASZNALOBELEPES_PasswordValidation]
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('CK_FelhasznaloBelepes_SoNullValidation', 'C') IS NULL BEGIN
|
||||
ALTER TABLE [dbo].[T_FELHASZNALOBELEPES]
|
||||
WITH CHECK ADD CONSTRAINT CK_FelhasznaloBelepes_SoNullValidation
|
||||
CHECK (NOT([C_JELSZO] IS NOT NULL AND [C_SO] IS NULL AND [C_NEPTUNNAPLOJELSZO] IS NULL))
|
||||
END
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('CK_FelhasznaloBelepes_PasswordValidation', 'C') IS NULL BEGIN
|
||||
ALTER TABLE [dbo].[T_FELHASZNALOBELEPES]
|
||||
WITH CHECK ADD CONSTRAINT CK_FelhasznaloBelepes_PasswordValidation
|
||||
CHECK (NOT(
|
||||
C_JELSZO IS NOT NULL AND
|
||||
LEN(C_JELSZO)!=28 AND
|
||||
C_JELSZO NOT LIKE '%='
|
||||
))
|
||||
END
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('CK_Telefon_Alapertelemezett_Gondviselo', 'C') IS NULL BEGIN
|
||||
ALTER TABLE T_TELEFON
|
||||
ADD CONSTRAINT CK_Telefon_Alapertelemezett_Gondviselo
|
||||
CHECK (TOROLT = 'T' OR C_GONDVISELOID IS NULL OR C_ALAPERTELMEZETT = 'T')
|
||||
END
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('CK_Email_Alapertelemezett_Gondviselo', 'C') IS NULL BEGIN
|
||||
ALTER TABLE T_EMAIL
|
||||
ADD CONSTRAINT CK_Email_Alapertelemezett_Gondviselo
|
||||
CHECK (TOROLT = 'T' OR C_GONDVISELOID IS NULL OR C_ALAPERTELMEZETT = 'T')
|
||||
END
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('CK_Telefon_Alapertelemezett_IsPublic', 'C') IS NULL BEGIN
|
||||
ALTER TABLE T_TELEFON
|
||||
ADD CONSTRAINT CK_Telefon_Alapertelemezett_IsPublic
|
||||
CHECK (TOROLT = 'T' OR C_ISPUBLIC = 'F' OR (C_ISPUBLIC = 'T' AND C_ALAPERTELMEZETT = 'F'))
|
||||
END
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('CK_Email_Alapertelemezett_IsPublic', 'C') IS NULL BEGIN
|
||||
ALTER TABLE T_EMAIL
|
||||
ADD CONSTRAINT CK_Email_Alapertelemezett_IsPublic
|
||||
CHECK (TOROLT = 'T' OR C_ISPUBLIC = 'F' OR (C_ISPUBLIC = 'T' AND C_ALAPERTELMEZETT = 'F'))
|
||||
END
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('CK_ErtekelesTantargyi_Szoveg', 'C') IS NULL BEGIN
|
||||
ALTER TABLE T_ERTEKELESTANTARGYI
|
||||
ADD CONSTRAINT CK_ErtekelesTantargyi_Szoveg
|
||||
CHECK (C_SZOVEG IS NOT NULL OR (C_SZOVEGFORMAZOTT IS NULL AND C_SZOVEGROVIDNEV IS NULL))
|
||||
END
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('CK_ErtekelesTantargyi_OsztalyzatTipus', 'C') IS NULL BEGIN
|
||||
ALTER TABLE T_ERTEKELESTANTARGYI
|
||||
ADD CONSTRAINT CK_ErtekelesTantargyi_OsztalyzatTipus
|
||||
CHECK (
|
||||
(C_OSZTALYZATTIPUSID IS NOT NULL AND C_SZOVEG IS NULL AND C_SZAZALEK IS NULL)
|
||||
OR (C_OSZTALYZATTIPUSID IS NULL AND C_SZOVEG IS NOT NULL AND C_SZAZALEK IS NULL)
|
||||
OR (C_OSZTALYZATTIPUSID IS NULL AND C_SZOVEG IS NULL AND C_SZAZALEK IS NOT NULL)
|
||||
)
|
||||
END
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('CK_ErtekelesTantargyiNyelv_Szoveg', 'C') IS NULL BEGIN
|
||||
ALTER TABLE T_ERTEKELESTANTARGYINYELV
|
||||
ADD CONSTRAINT CK_ErtekelesTantargyiNyelv_Szoveg
|
||||
CHECK (C_SZOVEG IS NOT NULL OR (C_SZOVEGFORMAZOTT IS NULL AND C_SZOVEGROVIDNEV IS NULL))
|
||||
END
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('CK_ErtekelesMagSzor_MagatartasSzoveg', 'C') IS NULL BEGIN
|
||||
ALTER TABLE T_ERTEKELESMAGSZOR
|
||||
ADD CONSTRAINT CK_ErtekelesMagSzor_MagatartasSzoveg
|
||||
CHECK (C_MAGATARTASSZOVEG IS NOT NULL OR (C_MAGATARTASSZOVEGFORMAZOTT IS NULL AND C_MAGATARTASSZOVEGROVIDNEV IS NULL))
|
||||
END
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('CK_ErtekelesMagSzor_MagatartasOsztalyzatTipus', 'C') IS NULL BEGIN
|
||||
ALTER TABLE T_ERTEKELESMAGSZOR
|
||||
ADD CONSTRAINT CK_ErtekelesMagSzor_MagatartasOsztalyzatTipus
|
||||
CHECK (
|
||||
(C_MAGATARTASOSZTALYZATTIPUSID IS NOT NULL AND C_MAGATARTASSZOVEG IS NULL AND C_MAGATARTASERTEKELESTIPUSID IS NULL)
|
||||
OR (C_MAGATARTASOSZTALYZATTIPUSID IS NULL AND C_MAGATARTASSZOVEG IS NOT NULL AND C_MAGATARTASERTEKELESTIPUSID IS NULL)
|
||||
OR (C_MAGATARTASOSZTALYZATTIPUSID IS NULL AND C_MAGATARTASSZOVEG IS NULL AND C_MAGATARTASERTEKELESTIPUSID IS NOT NULL)
|
||||
OR (C_MAGATARTASOSZTALYZATTIPUSID IS NULL AND C_MAGATARTASSZOVEG IS NULL AND C_MAGATARTASERTEKELESTIPUSID IS NULL
|
||||
AND (C_SZORGALOMOSZTALYZATTIPUSID IS NOT NULL OR C_SZORGALOMSZOVEG IS NOT NULL OR C_SZORGALOMERTEKELESTIPUSID IS NOT NULL))
|
||||
)
|
||||
END
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('CK_ErtekelesMagSzorNyelv_MagatartasSzoveg', 'C') IS NULL BEGIN
|
||||
ALTER TABLE T_ERTEKELESMAGSZORNYELV
|
||||
ADD CONSTRAINT CK_ErtekelesMagSzorNyelv_MagatartasSzoveg
|
||||
CHECK (C_MAGATARTASSZOVEG IS NOT NULL OR (C_MAGATARTASSZOVEGFORMAZOTT IS NULL AND C_MAGATARTASSZOVEGROVIDNEV IS NULL))
|
||||
END
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('CK_ErtekelesMagSzor_SzorgalomSzoveg', 'C') IS NULL BEGIN
|
||||
ALTER TABLE T_ERTEKELESMAGSZOR
|
||||
ADD CONSTRAINT CK_ErtekelesMagSzor_SzorgalomSzoveg
|
||||
CHECK (C_SZORGALOMSZOVEG IS NOT NULL OR (C_SZORGALOMSZOVEGFORMAZOTT IS NULL AND C_SZORGALOMSZOVEGROVIDNEV IS NULL))
|
||||
END
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('CK_ErtekelesMagSzor_SzorgalomOsztalyzatTipus', 'C') IS NULL BEGIN
|
||||
ALTER TABLE T_ERTEKELESMAGSZOR
|
||||
ADD CONSTRAINT CK_ErtekelesMagSzor_SzorgalomOsztalyzatTipus
|
||||
CHECK (
|
||||
(C_SZORGALOMOSZTALYZATTIPUSID IS NOT NULL AND C_SZORGALOMSZOVEG IS NULL AND C_SZORGALOMERTEKELESTIPUSID IS NULL)
|
||||
OR (C_SZORGALOMOSZTALYZATTIPUSID IS NULL AND C_SZORGALOMSZOVEG IS NOT NULL AND C_SZORGALOMERTEKELESTIPUSID IS NULL)
|
||||
OR (C_SZORGALOMOSZTALYZATTIPUSID IS NULL AND C_SZORGALOMSZOVEG IS NULL AND C_SZORGALOMERTEKELESTIPUSID IS NOT NULL)
|
||||
OR (C_SZORGALOMOSZTALYZATTIPUSID IS NULL AND C_SZORGALOMSZOVEG IS NULL AND C_SZORGALOMERTEKELESTIPUSID IS NULL
|
||||
AND (C_MAGATARTASOSZTALYZATTIPUSID IS NOT NULL OR C_MAGATARTASSZOVEG IS NOT NULL OR C_MAGATARTASERTEKELESTIPUSID IS NOT NULL))
|
||||
)
|
||||
END
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('CK_ErtekelesMagSzorNyelv_SzorgalomSzoveg', 'C') IS NULL BEGIN
|
||||
ALTER TABLE T_ERTEKELESMAGSZORNYELV
|
||||
ADD CONSTRAINT CK_ErtekelesMagSzorNyelv_SzorgalomSzoveg
|
||||
CHECK (C_SZORGALOMSZOVEG IS NOT NULL OR (C_SZORGALOMSZOVEGFORMAZOTT IS NULL AND C_SZORGALOMSZOVEGROVIDNEV IS NULL))
|
||||
END
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('FK_Fenntarto_LegmagasabbSzintuFenntartoId_REF_LegmagasabbSzintuFennntartoId', 'F') IS NULL BEGIN
|
||||
ALTER TABLE [DBO].T_FENNTARTO
|
||||
ADD CONSTRAINT FK_Fenntarto_LegmagasabbSzintuFenntartoId_REF_LegmagasabbSzintuFenntartoId
|
||||
FOREIGN KEY (C_LEGMAGASABBSZINTUFENNTARTOID)
|
||||
REFERENCES [DBO].T_LEGMAGASABBSZINTUFENNTARTO (ID)
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,5 @@
|
|||
-- ==================================================================================================================================
|
||||
-- ID eltolás a DICTIONARYITEMBASE táblában, hogy legyen "hely" a késõbbi rendszerelemeknek is
|
||||
-- ==================================================================================================================================
|
||||
DBCC CHECKIDENT ('dbo.T_DICTIONARYITEMBASE', RESEED, 100000)
|
||||
GO
|
9534
Kreta.DataAccess.Migrations/DBScripts/Database/alter.tables.sql
Normal file
9534
Kreta.DataAccess.Migrations/DBScripts/Database/alter.tables.sql
Normal file
File diff suppressed because it is too large
Load diff
|
@ -0,0 +1,230 @@
|
|||
DROP PROCEDURE IF EXISTS dev.sp_Global_GenerateAsyncAuditTrigger
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE dev.sp_Global_GenerateAsyncAuditTrigger
|
||||
@tableName nvarchar(50)
|
||||
,@disabled bit = 0
|
||||
AS
|
||||
DECLARE
|
||||
@newColumnList nvarchar(max)
|
||||
,@oldColumnList nvarchar(max)
|
||||
,@SQL nvarchar(max)
|
||||
,@ColumnIntezmenyId nvarchar(1000) = '0'
|
||||
,@ColumnTanevId nvarchar(1000) = '0'
|
||||
,@JoinKeys nvarchar(4000);
|
||||
|
||||
SELECT @newColumnList = ISNULL(@newColumnList + ', ', '') + 'i.' + COLUMN_NAME + N' AS ''new.' + COLUMN_NAME + '''',
|
||||
@oldColumnList = ISNULL(@oldColumnList + ', ', '') + 'd.' + COLUMN_NAME + N' AS ''old.' + COLUMN_NAME + ''''
|
||||
FROM INFORMATION_SCHEMA.COLUMNS
|
||||
WHERE TABLE_NAME = @tableName
|
||||
AND TABLE_SCHEMA = 'dbo'
|
||||
AND DATA_TYPE NOT IN ('varbinary', 'binary')
|
||||
AND COLUMN_NAME NOT IN ('SERIAL', 'LASTCHANGED', 'CREATED', 'ID', 'C_INTEZMENYID', 'C_ALINTEZMENYID', 'C_TANEVID', 'C_ALTANEVID');
|
||||
|
||||
SELECT @ColumnIntezmenyId = CASE WHEN TABLE_NAME = 'T_INTEZMENY' THEN 'i.ID' ELSE 'i.' + COLUMN_NAME END
|
||||
FROM INFORMATION_SCHEMA.COLUMNS
|
||||
WHERE TABLE_NAME = @tableName AND TABLE_SCHEMA = 'dbo' AND COLUMN_NAME IN ('C_INTEZMENYID', 'C_ALINTEZMENYID');
|
||||
|
||||
SELECT @ColumnTanevId = CASE WHEN TABLE_NAME = 'T_TANEV' THEN 'i.ID' ELSE 'i.' + COLUMN_NAME END
|
||||
FROM INFORMATION_SCHEMA.COLUMNS
|
||||
WHERE TABLE_NAME = @tableName AND TABLE_SCHEMA = 'dbo' AND COLUMN_NAME IN ('C_TANEVID', 'C_ALTANEVID');
|
||||
|
||||
SELECT @JoinKeys = COALESCE(@JoinKeys + ' AND ', '') + 'i.' + c.name + ' = d.' + c.name
|
||||
FROM sys.key_constraints kc
|
||||
INNER JOIN sys.index_columns ic ON ic.index_id = kc.unique_index_id AND ic.object_id = kc.parent_object_id
|
||||
INNER JOIN sys.columns c ON c.object_id = ic.object_id AND c.column_id = ic.column_id
|
||||
WHERE kc.parent_object_id = object_id('dbo.' + @tableName)
|
||||
and kc.type = 'PK'
|
||||
ORDER BY ic.index_column_id ASC;
|
||||
|
||||
SET @SQL = '
|
||||
CREATE OR ALTER TRIGGER [tr_AsyncAudit' + UPPER(SUBSTRING(@tableName, 3, 100)) + '] ON [' + @tableName + ']
|
||||
WITH EXECUTE AS ''kreta_tech_user''
|
||||
FOR INSERT, UPDATE, DELETE
|
||||
AS
|
||||
DECLARE @rowcount INT = @@ROWCOUNT;
|
||||
DECLARE @json NVARCHAR(MAX);
|
||||
DECLARE @key INT = 0;
|
||||
DECLARE @limit INT = 1000;
|
||||
DECLARE @action TINYINT = 0;
|
||||
DECLARE @now NVARCHAR(20) = CONVERT(NVARCHAR(20), GETDATE(), 120);
|
||||
DECLARE @handle UNIQUEIDENTIFIER;
|
||||
DECLARE @userid INT;
|
||||
|
||||
SET NOCOUNT ON;
|
||||
|
||||
SET @action += CASE WHEN EXISTS(SELECT * FROM inserted) THEN 1 ELSE 0 END;
|
||||
SET @action += CASE WHEN EXISTS(SELECT * FROM deleted) THEN 2 ELSE 0 END;
|
||||
|
||||
IF @rowcount = 0 SET @rowcount = (SELECT COUNT(*) FROM inserted);
|
||||
IF @rowcount = 0 SET @rowcount = (SELECT COUNT(*) FROM deleted);
|
||||
|
||||
IF @rowcount = 0 RETURN;
|
||||
|
||||
SET @userid = TRY_CAST(SESSION_CONTEXT(N''USERID'') AS INT);
|
||||
' + IIF(EXISTS(SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = @tableName AND COLUMN_NAME = 'MODIFIER'), 'IF ISNULL(@userid, 0) = 0 AND (UPDATE(MODIFIER) OR UPDATE(CREATOR)) SET @userid = (SELECT TOP 1 NULLIF(ISNULL(MODIFIER, CREATOR), 0) FROM inserted);', '') + '
|
||||
|
||||
IF @rowcount > @limit
|
||||
BEGIN
|
||||
|
||||
SELECT TOP 0 * INTO #audit_trigger_inserted FROM inserted UNION ALL SELECT TOP 0 * FROM inserted;
|
||||
SELECT TOP 0 * INTO #audit_trigger_deleted FROM deleted UNION ALL SELECT TOP 0 * FROM deleted;
|
||||
|
||||
ALTER TABLE #audit_trigger_inserted ADD TRIGGER_ADDED_KEY INT NOT NULL IDENTITY(1, 1);
|
||||
ALTER TABLE #audit_trigger_deleted ADD TRIGGER_ADDED_KEY INT NOT NULL IDENTITY(1, 1);
|
||||
|
||||
INSERT INTO #audit_trigger_inserted SELECT * FROM inserted;
|
||||
INSERT INTO #audit_trigger_deleted SELECT * FROM deleted;
|
||||
|
||||
ALTER TABLE #audit_trigger_inserted ADD PRIMARY KEY CLUSTERED(TRIGGER_ADDED_KEY);
|
||||
ALTER TABLE #audit_trigger_deleted ADD PRIMARY KEY CLUSTERED(TRIGGER_ADDED_KEY);
|
||||
|
||||
-- ALTER TABLE #audit_trigger_inserted ADD UNIQUE NONCLUSTERED (TRIGGER_ADDED_KEY);
|
||||
-- ALTER TABLE #audit_trigger_deleted ADD UNIQUE NONCLUSTERED (TRIGGER_ADDED_KEY);
|
||||
|
||||
END
|
||||
|
||||
BEGIN DIALOG CONVERSATION @handle
|
||||
FROM SERVICE AuditService
|
||||
TO SERVICE ''AuditService''
|
||||
ON CONTRACT AuditContract
|
||||
WITH ENCRYPTION = OFF, LIFETIME = 10000;
|
||||
|
||||
WHILE (1 = 1)
|
||||
BEGIN
|
||||
|
||||
IF @action = 1 -- INSERT
|
||||
IF @rowcount > @limit
|
||||
BEGIN
|
||||
|
||||
SET @json = (
|
||||
SELECT TOP (@limit)
|
||||
i.ID AS ID,
|
||||
' + @ColumnTanevId + ' AS TID,
|
||||
' + @ColumnIntezmenyId + ' AS IID,
|
||||
ISNULL(i.MODIFIER, i.CREATOR) AS [UID],
|
||||
' + @newColumnList + '
|
||||
FROM #audit_trigger_inserted i
|
||||
WHERE i.TRIGGER_ADDED_KEY > @key
|
||||
ORDER BY i.TRIGGER_ADDED_KEY ASC
|
||||
FOR JSON PATH, INCLUDE_NULL_VALUES
|
||||
)
|
||||
|
||||
SELECT TOP (@limit) @key = TRIGGER_ADDED_KEY FROM #audit_trigger_inserted WHERE TRIGGER_ADDED_KEY > @key ORDER BY TRIGGER_ADDED_KEY;
|
||||
|
||||
END
|
||||
ELSE
|
||||
SET @json = (
|
||||
SELECT
|
||||
i.ID AS ID,
|
||||
' + @ColumnTanevId + ' AS TID,
|
||||
' + @ColumnIntezmenyId + ' AS IID,
|
||||
ISNULL(i.MODIFIER, i.CREATOR) AS [UID],
|
||||
' + @newColumnList + '
|
||||
FROM inserted i
|
||||
FOR JSON PATH, INCLUDE_NULL_VALUES
|
||||
)
|
||||
|
||||
IF @action = 2 -- DELETE
|
||||
IF @rowcount > @limit
|
||||
BEGIN
|
||||
|
||||
SET @json = (
|
||||
SELECT TOP (@limit)
|
||||
d.ID AS ID,
|
||||
' + replace(@ColumnTanevId, 'i.', 'd.') + ' AS TID,
|
||||
' + replace(@ColumnIntezmenyId, 'i.', 'd.') + ' AS IID,
|
||||
ISNULL(d.MODIFIER, d.CREATOR) AS [UID],
|
||||
' + @oldColumnList + '
|
||||
FROM #audit_trigger_deleted d
|
||||
WHERE d.TRIGGER_ADDED_KEY > @key
|
||||
ORDER BY d.TRIGGER_ADDED_KEY ASC
|
||||
FOR JSON PATH, INCLUDE_NULL_VALUES
|
||||
)
|
||||
|
||||
SELECT TOP (@limit) @key = TRIGGER_ADDED_KEY FROM #audit_trigger_deleted WHERE TRIGGER_ADDED_KEY > @key ORDER BY TRIGGER_ADDED_KEY;
|
||||
|
||||
END
|
||||
ELSE
|
||||
SET @json = (
|
||||
SELECT
|
||||
d.ID AS ID,
|
||||
' + replace(@ColumnTanevId, 'i.', 'd.') + ' AS TID,
|
||||
' + replace(@ColumnIntezmenyId, 'i.', 'd.') + ' AS IID,
|
||||
ISNULL(d.MODIFIER, d.CREATOR) AS [UID],
|
||||
' + @oldColumnList + '
|
||||
FROM deleted d
|
||||
FOR JSON PATH, INCLUDE_NULL_VALUES
|
||||
)
|
||||
|
||||
IF @action = 3 --UPDATE
|
||||
IF @rowcount > @limit
|
||||
BEGIN
|
||||
|
||||
SET @json = (
|
||||
SELECT TOP (@limit)
|
||||
i.ID AS ID,
|
||||
' + @ColumnTanevId + ' AS TID,
|
||||
' + @ColumnIntezmenyId + ' AS IID,
|
||||
ISNULL(i.MODIFIER, i.CREATOR) AS [UID],
|
||||
' + @oldColumnList + ',
|
||||
' + @newColumnList + '
|
||||
FROM #audit_trigger_inserted i
|
||||
INNER JOIN #audit_trigger_deleted d ON i.TRIGGER_ADDED_KEY = d.TRIGGER_ADDED_KEY
|
||||
WHERE i.TRIGGER_ADDED_KEY > @key
|
||||
ORDER BY i.TRIGGER_ADDED_KEY ASC
|
||||
FOR JSON PATH, INCLUDE_NULL_VALUES
|
||||
)
|
||||
|
||||
SELECT TOP (@limit) @key = TRIGGER_ADDED_KEY FROM #audit_trigger_inserted WHERE TRIGGER_ADDED_KEY > @key ORDER BY TRIGGER_ADDED_KEY;
|
||||
|
||||
END
|
||||
ELSE
|
||||
SET @json = (
|
||||
SELECT
|
||||
i.ID AS ID,
|
||||
' + @ColumnTanevId + ' AS TID,
|
||||
' + @ColumnIntezmenyId + ' AS IID,
|
||||
ISNULL(i.MODIFIER, i.CREATOR) AS [UID],
|
||||
' + @oldColumnList + ',
|
||||
' + @newColumnList + '
|
||||
FROM inserted i
|
||||
INNER JOIN deleted d ON ' + @JoinKeys + '
|
||||
FOR JSON PATH, INCLUDE_NULL_VALUES
|
||||
)
|
||||
|
||||
IF @json IS NULL BREAK;
|
||||
|
||||
SET @json = CONCAT(
|
||||
''{'',
|
||||
''"ENTITY":"' + @tableName + '",'',
|
||||
''"REASON":"'', CHOOSE(@action, ''New'', ''Removed'', ''Modified''), ''",'',
|
||||
''"DATETIME":"'', @now, ''",'',
|
||||
''"ACTION":'', @action, '','',
|
||||
''"HOST":"'', HOST_NAME(), ''",'',
|
||||
''"LOGIN":"'', REPLACE(ORIGINAL_LOGIN(), ''\'', ''\\''), ''",'',
|
||||
''"USERID":'', COALESCE(CAST(@userid AS VARCHAR(10)), ''null''), '','',
|
||||
''"ROWCOUNT":'', @rowcount, '', '',
|
||||
''"ROWS": '', @json,
|
||||
''}'');
|
||||
|
||||
SEND ON CONVERSATION @handle MESSAGE TYPE AuditMessage (@json);
|
||||
|
||||
IF @rowcount <= @limit BREAK;
|
||||
|
||||
END
|
||||
|
||||
END CONVERSATION @handle;
|
||||
'
|
||||
|
||||
-- SELECT @SQL
|
||||
EXEC sys.sp_executesql @SQL;
|
||||
|
||||
IF @disabled = 1
|
||||
BEGIN
|
||||
|
||||
SET @SQL = 'DISABLE TRIGGER [tr_AsyncAudit' + UPPER(SUBSTRING(@tableName, 3, 100)) + '] ON [' + @tableName + ']';
|
||||
EXEC(@SQL);
|
||||
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,65 @@
|
|||
DROP PROCEDURE IF EXISTS dev.sp_Global_GenerateAsyncAuditTriggerAll
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE dev.sp_Global_GenerateAsyncAuditTriggerAll
|
||||
@disabled bit = 0
|
||||
AS
|
||||
BEGIN
|
||||
DECLARE tableCursor CURSOR LOCAL FOR
|
||||
SELECT DISTINCT TABLE_NAME
|
||||
FROM INFORMATION_SCHEMA.COLUMNS
|
||||
WHERE COLUMN_NAME IN ('CREATOR', 'MODIFIER')
|
||||
AND TABLE_NAME NOT IN (
|
||||
'T_ENTITYHISTORY'
|
||||
,'T_ENTITYATTRIBUTEHISTORY'
|
||||
,'T_ENTITYATTRIBUTEHISTORY_ARCHIVE'
|
||||
,'T_ENTITYBLOBVALUES'
|
||||
,'T_ENTITYBLOBVALUES_ARCHIVE'
|
||||
,'T_LOG'
|
||||
,'T_GLOBALLOCK'
|
||||
,'T_OLDALLATOGATOTTSAG'
|
||||
,'T_FELHASZNALOBELEPESTORTENET'
|
||||
,'T_EVFOLYAMTIPUS_OKTATASINEVELE'
|
||||
,'T_TELEPULES'
|
||||
,'T_TANTARGYNEVHEZKATEGORIA'
|
||||
,'T_MOBILDBINFO'
|
||||
,'T_LOGLEVELTYPE'
|
||||
,'T_FENNTARTO'
|
||||
,'T_LOGEVENTTYPE'
|
||||
,'T_DASHBOARDUZENET'
|
||||
,'T_DASHBOARDUZENETKATEGORIA'
|
||||
,'T_AMITANTARGYSABLON'
|
||||
,'T_AMITTFSABLON'
|
||||
,'T_ADATTISZTITASINDIKATOR'
|
||||
,'T_DASHBOARDUZENETINTEZMENY'
|
||||
,'T_ORAREND'
|
||||
,'T_TANULOTANTARGYATLAG'
|
||||
,'T_CONFIGTIPUS'
|
||||
,'T_INTEZMENYCONFIG'
|
||||
,'T_SZIRSTATKONYVTARKATEGORIA'
|
||||
,'T_ORARENDTELJES'
|
||||
,'T_OSZTONDIJHISTORY'
|
||||
)
|
||||
AND TABLE_NAME IN (
|
||||
SELECT t.name
|
||||
FROM sys.tables t
|
||||
INNER JOIN sys.schemas s ON s.schema_id = t.schema_id
|
||||
WHERE s.name ='dbo'
|
||||
)
|
||||
|
||||
DECLARE @tableName nvarchar(50)
|
||||
|
||||
OPEN tableCursor
|
||||
FETCH NEXT FROM tableCursor INTO @tableName
|
||||
|
||||
WHILE @@FETCH_STATUS = 0 BEGIN
|
||||
|
||||
EXEC dev.sp_Global_GenerateAsyncAuditTrigger @tableName, @disabled
|
||||
|
||||
FETCH NEXT FROM tableCursor INTO @tableName
|
||||
END
|
||||
CLOSE tableCursor
|
||||
DEALLOCATE tableCursor
|
||||
END
|
||||
GO
|
||||
|
|
@ -0,0 +1,351 @@
|
|||
|
||||
CREATE OR ALTER PROCEDURE auditlog.usp_AuditProcessing
|
||||
AS
|
||||
SET NOCOUNT ON;
|
||||
DECLARE @messagetype sysname
|
||||
,@handle uniqueidentifier
|
||||
,@message_body nvarchar(max)
|
||||
,@json_part nvarchar(2000)
|
||||
,@entity varchar(100)
|
||||
,@reason varchar(100)
|
||||
,@datetime datetime
|
||||
,@action tinyint = 0
|
||||
,@userid int
|
||||
,@login nvarchar(1000)
|
||||
,@hostname nvarchar(1000)
|
||||
,@rowcount int
|
||||
,@limit int = 100;
|
||||
|
||||
-- table for inserted rows
|
||||
CREATE TABLE #ins(
|
||||
C_ENTITYID INT NOT NULL,
|
||||
C_PROPERTYNAME VARCHAR(100) NOT NULL,
|
||||
C_INTEZMENYID INT NOT NULL,
|
||||
C_TANEVID INT NOT NULL,
|
||||
C_VALUE NVARCHAR(MAX) NULL,
|
||||
PRIMARY KEY CLUSTERED (C_ENTITYID, C_INTEZMENYID, C_TANEVID, C_PROPERTYNAME)
|
||||
)
|
||||
|
||||
-- table for deleted rows
|
||||
CREATE TABLE #del(
|
||||
C_ENTITYID INT NOT NULL,
|
||||
C_PROPERTYNAME VARCHAR(100) NOT NULL,
|
||||
C_INTEZMENYID INT NOT NULL,
|
||||
C_TANEVID INT NOT NULL,
|
||||
C_VALUE NVARCHAR(MAX) NULL,
|
||||
PRIMARY KEY CLUSTERED (C_ENTITYID, C_INTEZMENYID, C_TANEVID, C_PROPERTYNAME)
|
||||
)
|
||||
|
||||
-- table for audit rows
|
||||
CREATE TABLE #audit(
|
||||
C_ENTITYID INT NOT NULL,
|
||||
C_INTEZMENYID INT NOT NULL,
|
||||
C_TANEVID INT NOT NULL,
|
||||
C_FELHASZNALOID INT NULL,
|
||||
C_PROPERTYNAME VARCHAR(1000) NULL,
|
||||
C_ORIGINALVALUE NVARCHAR(MAX) NULL,
|
||||
C_CURRENTVALUE NVARCHAR(MAX) NULL
|
||||
);
|
||||
|
||||
-- table for ids inserted into ENTITYHISTORY
|
||||
CREATE TABLE #entity(
|
||||
ENTITYID INT NOT NULL,
|
||||
INTEZMENYID INT NOT NULL,
|
||||
TANEVID INT NOT NULL,
|
||||
ENTITYHISTORYID INT NOT NULL,
|
||||
PRIMARY KEY CLUSTERED (ENTITYID, INTEZMENYID, TANEVID)
|
||||
);
|
||||
|
||||
WHILE (1 = 1)
|
||||
BEGIN
|
||||
|
||||
BEGIN TRY
|
||||
|
||||
TRUNCATE TABLE #ins;
|
||||
TRUNCATE TABLE #del;
|
||||
TRUNCATE TABLE #audit;
|
||||
TRUNCATE TABLE #entity;
|
||||
|
||||
BEGIN TRANSACTION;
|
||||
|
||||
-- take 1 message from queue
|
||||
WAITFOR (
|
||||
RECEIVE TOP(1)
|
||||
@handle = conversation_handle,
|
||||
@message_body = message_body,
|
||||
@messagetype = message_type_name
|
||||
FROM auditlog.AuditQueue
|
||||
), TIMEOUT 1000;
|
||||
|
||||
-- if there are no more rows in the queue then exit
|
||||
IF @@ROWCOUNT = 0 BREAK;
|
||||
IF @messagetype <> 'AuditMessage'
|
||||
GOTO CONTINUE_PROCESS;
|
||||
|
||||
-- take the beginning of the message and search for "ROWS" node
|
||||
SET @json_part = LEFT(@message_body, 2000);
|
||||
IF @json_part LIKE '%"ROWS"%'
|
||||
BEGIN
|
||||
|
||||
SET @json_part = LEFT(@json_part, PATINDEX('%"ROWS"%', @json_part) - 1);
|
||||
SET @json_part = @json_part + '"ROWS":null}';
|
||||
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
|
||||
INSERT INTO auditlog.AuditServiceFailedItems([conversation_handle], [message_body], [error_message])
|
||||
VALUES (@handle, @message_body, 'No "ROWS" in first 2000 chars');
|
||||
|
||||
GOTO CONTINUE_PROCESS;
|
||||
|
||||
END
|
||||
|
||||
-- lightweight parsing of the message for headers
|
||||
SELECT
|
||||
@entity = CASE WHEN j.[key] = 'ENTITY' THEN j.[value] ELSE @entity END,
|
||||
@reason = CASE WHEN j.[key] = 'REASON' THEN j.[value] ELSE @reason END,
|
||||
@datetime = CASE WHEN j.[key] = 'DATETIME' THEN CONVERT(datetime, j.[value], 121) ELSE @datetime END,
|
||||
@action = CASE WHEN j.[key] = 'ACTION' THEN j.[value] ELSE @action END,
|
||||
@hostname = CASE WHEN j.[key] = 'HOST' THEN j.[value] ELSE @hostname END,
|
||||
@login = CASE WHEN j.[key] = 'LOGIN' THEN j.[value] ELSE @login END,
|
||||
@userid = CASE WHEN j.[key] = 'USERID' THEN j.[value] ELSE @userid END,
|
||||
@rowcount = CASE WHEN j.[key] = 'ROWCOUNT' THEN j.[value] ELSE @rowcount END
|
||||
FROM OPENJSON(@json_part) j
|
||||
WHERE j.[key] in ('ENTITY', 'REASON', 'DATETIME', 'ACTION', 'HOST', 'LOGIN', 'USERID', 'ROWCOUNT');
|
||||
|
||||
-- user parsing
|
||||
IF NOT EXISTS(SELECT * FROM dbo.T_FELHASZNALO WHERE ID = @userid)
|
||||
BEGIN
|
||||
|
||||
INSERT INTO auditlog.Users(USERNAME)
|
||||
SELECT @login AS USERNAME
|
||||
WHERE NOT EXISTS(SELECT * FROM auditlog.Users WHERE USERNAME = @login);
|
||||
|
||||
SET @userid = null;
|
||||
|
||||
END
|
||||
|
||||
IF @rowcount > @limit
|
||||
INSERT INTO #ins(C_ENTITYID, C_INTEZMENYID, C_TANEVID, C_PROPERTYNAME, C_VALUE)
|
||||
SELECT
|
||||
JSON_VALUE(j.value, '$.ID') AS C_ENTITYID,
|
||||
JSON_VALUE(j.value, '$.IID') AS C_INTEZMENYID,
|
||||
JSON_VALUE(j.value, '$.TID') AS C_TANEVID,
|
||||
i.[key] AS C_PROPERTYNAME,
|
||||
i.[value] AS C_VALUE
|
||||
FROM OPENJSON(@message_body, '$.ROWS') j
|
||||
CROSS APPLY OPENJSON(j.value, '$.new') i
|
||||
OPTION (MAXDOP 1);
|
||||
|
||||
IF @rowcount > @limit
|
||||
INSERT INTO #del(C_ENTITYID, C_INTEZMENYID, C_TANEVID, C_PROPERTYNAME, C_VALUE)
|
||||
SELECT
|
||||
JSON_VALUE(j.value, '$.ID') AS C_ENTITYID,
|
||||
JSON_VALUE(j.value, '$.IID') AS C_INTEZMENYID,
|
||||
JSON_VALUE(j.value, '$.TID') AS C_TANEVID,
|
||||
d.[key] AS C_PROPERTYNAME,
|
||||
d.[value] AS C_VALUE
|
||||
FROM OPENJSON(@message_body, '$.ROWS') j
|
||||
CROSS APPLY OPENJSON(j.value, '$.old') d
|
||||
OPTION (MAXDOP 1);
|
||||
|
||||
-- extract audit rows from message
|
||||
IF @action = 1 -- INSERT
|
||||
IF @rowcount > @limit
|
||||
INSERT INTO #audit(C_ENTITYID, C_INTEZMENYID, C_TANEVID, C_PROPERTYNAME, C_ORIGINALVALUE, C_CURRENTVALUE)
|
||||
SELECT
|
||||
i.C_ENTITYID,
|
||||
i.C_INTEZMENYID,
|
||||
i.C_TANEVID,
|
||||
i.C_PROPERTYNAME AS C_PROPERTYNAME,
|
||||
NULL AS C_ORIGINALVALUE,
|
||||
i.C_VALUE AS C_CURRENTVALUE
|
||||
FROM #ins i
|
||||
OPTION (MAXDOP 1);
|
||||
ELSE
|
||||
INSERT INTO #audit(C_ENTITYID, C_INTEZMENYID, C_TANEVID, C_PROPERTYNAME, C_ORIGINALVALUE, C_CURRENTVALUE)
|
||||
SELECT
|
||||
JSON_VALUE(j.value, '$.ID') AS C_ENTITYID,
|
||||
JSON_VALUE(j.value, '$.IID') AS C_INTEZMENYID,
|
||||
JSON_VALUE(j.value, '$.TID') AS C_TANEVID,
|
||||
i.[key] AS C_PROPERTYNAME,
|
||||
NULL AS C_ORIGINALVALUE,
|
||||
i.[value] AS C_CURRENTVALUE
|
||||
FROM OPENJSON(@message_body, '$.ROWS') j
|
||||
OUTER APPLY OPENJSON(j.value, '$.new') i
|
||||
OPTION (MAXDOP 1);
|
||||
|
||||
IF @action = 2 -- DELETE
|
||||
IF @rowcount > @limit
|
||||
INSERT INTO #audit(C_ENTITYID, C_INTEZMENYID, C_TANEVID, C_PROPERTYNAME, C_ORIGINALVALUE, C_CURRENTVALUE)
|
||||
SELECT
|
||||
d.C_ENTITYID,
|
||||
d.C_INTEZMENYID,
|
||||
d.C_TANEVID,
|
||||
d.C_PROPERTYNAME AS C_PROPERTYNAME,
|
||||
d.C_VALUE AS C_ORIGINALVALUE,
|
||||
NULL AS C_CURRENTVALUE
|
||||
FROM #del d
|
||||
OPTION (MAXDOP 1);
|
||||
ELSE
|
||||
INSERT INTO #audit(C_ENTITYID, C_INTEZMENYID, C_TANEVID, C_PROPERTYNAME, C_ORIGINALVALUE, C_CURRENTVALUE)
|
||||
SELECT
|
||||
JSON_VALUE(j.value, '$.ID') AS C_ENTITYID,
|
||||
JSON_VALUE(j.value, '$.IID') AS C_INTEZMENYID,
|
||||
JSON_VALUE(j.value, '$.TID') AS C_TANEVID,
|
||||
d.[key] AS C_PROPERTYNAME,
|
||||
d.[value] AS C_ORIGINALVALUE,
|
||||
NULL AS C_CURRENTVALUE
|
||||
FROM OPENJSON(@message_body, '$.ROWS') j
|
||||
OUTER APPLY OPENJSON(j.value, '$.old') d
|
||||
OPTION (MAXDOP 1);
|
||||
|
||||
IF @action = 3 -- UPDATE
|
||||
IF @rowcount > @limit
|
||||
INSERT INTO #audit(C_ENTITYID, C_INTEZMENYID, C_TANEVID, C_PROPERTYNAME, C_ORIGINALVALUE, C_CURRENTVALUE)
|
||||
SELECT
|
||||
ISNULL(i.C_ENTITYID, d.C_ENTITYID) AS C_ENTITYID,
|
||||
ISNULL(i.C_INTEZMENYID, d.C_INTEZMENYID) AS C_INTEZMENYID,
|
||||
ISNULL(i.C_TANEVID, d.C_TANEVID) AS C_TANEVID,
|
||||
ISNULL(i.C_PROPERTYNAME, d.C_PROPERTYNAME) AS C_PROPERTYNAME,
|
||||
d.C_VALUE AS C_ORIGINALVALUE,
|
||||
i.C_VALUE AS C_CURRENTVALUE
|
||||
FROM #ins i
|
||||
INNER MERGE JOIN #del d ON i.C_ENTITYID = d.C_ENTITYID
|
||||
AND i.C_INTEZMENYID = d.C_INTEZMENYID
|
||||
AND i.C_TANEVID = d.C_TANEVID
|
||||
AND i.C_PROPERTYNAME = d.C_PROPERTYNAME
|
||||
OPTION (MAXDOP 1);
|
||||
ELSE
|
||||
INSERT INTO #audit(C_ENTITYID, C_INTEZMENYID, C_TANEVID, C_PROPERTYNAME, C_ORIGINALVALUE, C_CURRENTVALUE)
|
||||
SELECT
|
||||
JSON_VALUE(j.value, '$.ID') AS C_ENTITYID,
|
||||
JSON_VALUE(j.value, '$.IID') AS C_INTEZMENYID,
|
||||
JSON_VALUE(j.value, '$.TID') AS C_TANEVID,
|
||||
ISNULL(i.[key], d.[key]) AS C_PROPERTYNAME,
|
||||
d.[value] AS C_ORIGINALVALUE,
|
||||
i.[value] AS C_CURRENTVALUE
|
||||
FROM OPENJSON(@message_body, '$.ROWS') j
|
||||
OUTER APPLY OPENJSON(j.value, '$.new') i
|
||||
OUTER APPLY OPENJSON(j.value, '$.old') d
|
||||
WHERE i.[key] = d.[key]
|
||||
OPTION (MAXDOP 1);
|
||||
|
||||
BEGIN TRANSACTION T1;
|
||||
|
||||
-- fill entityhistory and save generated ids
|
||||
INSERT INTO dbo.T_ENTITYHISTORY(C_ENTITYNAME, C_ENTITYID, C_REASON, C_INTEZMENYID, C_TANEVID, C_FELHASZNALOID, C_ALTERATIONDATE, CREATED, HOSTNAME)
|
||||
OUTPUT inserted.C_ENTITYID, inserted.C_INTEZMENYID, inserted.C_TANEVID, inserted.ID INTO #entity(ENTITYID, INTEZMENYID, TANEVID, ENTITYHISTORYID)
|
||||
SELECT DISTINCT
|
||||
@entity AS C_ENTITYNAME,
|
||||
C_ENTITYID,
|
||||
@reason AS C_REASON,
|
||||
C_INTEZMENYID,
|
||||
C_TANEVID,
|
||||
COALESCE(@userid, (SELECT USERID FROM auditlog.Users WHERE USERNAME = @login)) AS C_FELHASZNALOID,
|
||||
@datetime AS C_ALTERATIONDATE,
|
||||
GETDATE() AS CREATED,
|
||||
@hostname AS HOSTNAME
|
||||
FROM #audit
|
||||
OPTION (MAXDOP 1);
|
||||
|
||||
-- fill attributehistory for small values
|
||||
INSERT INTO dbo.T_ENTITYATTRIBUTEHISTORY(C_ENTITYHISTORYID, C_PROPERTYNAME, C_ORIGINALVALUE, C_CURRENTVALUE)
|
||||
SELECT
|
||||
e.ENTITYHISTORYID AS C_ENTITYHISTORYID,
|
||||
a.C_PROPERTYNAME,
|
||||
a.C_ORIGINALVALUE,
|
||||
a.C_CURRENTVALUE
|
||||
FROM #audit a
|
||||
INNER JOIN #entity e ON e.ENTITYID = a.C_ENTITYID and e.INTEZMENYID = a.C_INTEZMENYID and e.TANEVID = a.C_TANEVID
|
||||
WHERE (
|
||||
(@action IN (1, 2))
|
||||
OR
|
||||
(@action = 3 AND ISNULL(a.C_ORIGINALVALUE, '') <> ISNULL(a.C_CURRENTVALUE, ''))
|
||||
OR
|
||||
(@action = 3 AND a.C_ORIGINALVALUE IS NULL AND a.C_CURRENTVALUE IS NOT NULL)
|
||||
OR
|
||||
(@action = 3 AND a.C_ORIGINALVALUE IS NOT NULL AND a.C_CURRENTVALUE IS NULL)
|
||||
)
|
||||
AND (ISNULL(DATALENGTH(a.C_ORIGINALVALUE), 0) <= 2000 AND ISNULL(DATALENGTH(a.C_CURRENTVALUE), 0) <= 2000)
|
||||
OPTION (MAXDOP 1);
|
||||
|
||||
-- fill attributehistory for big values
|
||||
INSERT INTO dbo.T_ENTITYBLOBVALUES(C_ENTITYHISTORYID, C_PROPERTYNAME, C_ORIGINALVALUE, C_CURRENTVALUE)
|
||||
SELECT
|
||||
e.ENTITYHISTORYID AS C_ENTITYHISTORYID,
|
||||
a.C_PROPERTYNAME,
|
||||
a.C_ORIGINALVALUE,
|
||||
a.C_CURRENTVALUE
|
||||
FROM #audit a
|
||||
INNER JOIN #entity e ON e.ENTITYID = a.C_ENTITYID and e.INTEZMENYID = a.C_INTEZMENYID and e.TANEVID = a.C_TANEVID
|
||||
WHERE (
|
||||
(@action IN (1, 2))
|
||||
OR
|
||||
(@action = 3 AND ISNULL(a.C_ORIGINALVALUE, '') <> ISNULL(a.C_CURRENTVALUE, ''))
|
||||
OR
|
||||
(@action = 3 AND a.C_ORIGINALVALUE IS NULL AND a.C_CURRENTVALUE IS NOT NULL)
|
||||
OR
|
||||
(@action = 3 AND a.C_ORIGINALVALUE IS NOT NULL AND a.C_CURRENTVALUE IS NULL)
|
||||
)
|
||||
AND (ISNULL(DATALENGTH(a.C_ORIGINALVALUE), 0) > 2000 OR ISNULL(DATALENGTH(a.C_CURRENTVALUE), 0) > 2000)
|
||||
OPTION (MAXDOP 1);
|
||||
|
||||
COMMIT TRANSACTION T1; -- commit changes in ENTITYHISTORY
|
||||
|
||||
CONTINUE_PROCESS:
|
||||
IF @@TRANCOUNT > 0 COMMIT TRANSACTION; -- commit changes in the Queue
|
||||
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
|
||||
DECLARE @E NVARCHAR(MAX) = dbo.fn_get_error_info();
|
||||
|
||||
IF @@TRANCOUNT > 1 ROLLBACK TRANSACTION T1; -- rollback changes in ENTITYHISTORY
|
||||
|
||||
INSERT auditlog.ErrorLog(UserName, ErrorNumber, ErrorSeverity, ErrorState, ErrorProcedure, ErrorLine, ErrorMessage)
|
||||
VALUES(SUSER_NAME(), JSON_VALUE(@E, '$.ERROR_NUMBER'), JSON_VALUE(@E, '$.ERROR_SEVERITY'), JSON_VALUE(@E, '$.ERROR_STATE'), JSON_VALUE(@E, '$.ERROR_PROCEDURE'), JSON_VALUE(@E, '$.ERROR_LINE'), JSON_VALUE(@E, '$.ERROR_MESSAGE'));
|
||||
|
||||
INSERT INTO auditlog.AuditServiceFailedItems([conversation_handle], [message_body], [error_message])
|
||||
VALUES(@handle, @message_body, JSON_VALUE(@E, '$.ERROR_MESSAGE'));
|
||||
|
||||
IF @@TRANCOUNT > 0 COMMIT TRANSACTION; -- commit changes in the Queue
|
||||
|
||||
END CATCH
|
||||
|
||||
END -- end of while
|
||||
|
||||
IF @@TRANCOUNT > 0 COMMIT TRANSACTION; -- commit any changes
|
||||
|
||||
|
||||
-- close orphaned conversations
|
||||
DECLARE @conversations TABLE([conversation_handle] uniqueidentifier NOT NULL PRIMARY KEY CLUSTERED);
|
||||
|
||||
INSERT INTO @conversations([conversation_handle])
|
||||
SELECT e.[conversation_handle]
|
||||
FROM sys.conversation_endpoints e WITH (NOLOCK)
|
||||
WHERE e.[state] IN ('ER', 'DI', 'DO', 'CD')
|
||||
AND e.far_service = 'AuditService'
|
||||
AND NOT EXISTS(SELECT * FROM auditlog.AuditQueue a WITH (NOLOCK) WHERE a.[conversation_handle] = e.[conversation_handle])
|
||||
OPTION (HASH JOIN);
|
||||
|
||||
SET @handle = 0x0;
|
||||
WHILE (1 = 1)
|
||||
BEGIN
|
||||
|
||||
SELECT TOP 1 @handle = [conversation_handle]
|
||||
FROM @conversations
|
||||
WHERE [conversation_handle] > @handle
|
||||
ORDER BY [conversation_handle];
|
||||
|
||||
IF @@ROWCOUNT = 0 BREAK;
|
||||
|
||||
BEGIN TRY
|
||||
END CONVERSATION @handle WITH CLEANUP;
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
END CATCH
|
||||
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,229 @@
|
|||
USE msdb
|
||||
GO
|
||||
|
||||
|
||||
CREATE OR ALTER PROCEDURE dbo.usp_CheckAudit
|
||||
@recipient_address NVARCHAR(1000) = null
|
||||
AS
|
||||
SET NOCOUNT ON;
|
||||
DECLARE @result nvarchar(max) = ''
|
||||
,@sql nvarchar(max)
|
||||
,@remote_sql nvarchar(max)
|
||||
,@db_cursor cursor
|
||||
,@db_name nvarchar(100)
|
||||
,@table_exists bit;
|
||||
|
||||
CREATE TABLE #AsyncActivity (
|
||||
ServerName nvarchar(100)
|
||||
,DatabaseName nvarchar(100)
|
||||
,Broker bit null
|
||||
,LastPageVisit datetime null
|
||||
,LastEntityHistory datetime null
|
||||
,FirstQueueItem datetime null
|
||||
,QueueLength int null
|
||||
,QueueEnabled bit null
|
||||
,ProcessActivated bit null
|
||||
,LastHourErrors int null
|
||||
,LastHourFailedItems int null
|
||||
,OpenConversations int null
|
||||
,DisabledTriggers int null
|
||||
,ErrorMessage nvarchar(4000) null,
|
||||
Errors as (
|
||||
case when (ErrorMessage > '') then 1 else 0 end +
|
||||
case when (Broker = 0) then 2 else 0 end +
|
||||
case when (QueueLength > 1 AND ISNULL(LastEntityHistory, GETDATE()) < ISNULL(DATEADD(hour, -3, LastPageVisit), GETDATE())) then 4 else 0 end +
|
||||
case when (QueueEnabled = 0) then 8 else 0 end +
|
||||
case when (QueueLength > 100000) then 16 else 0 end +
|
||||
case when (ProcessActivated = 0) then 32 else 0 end +
|
||||
case when (LastHourErrors > 0) then 64 else 0 end +
|
||||
case when (LastHourFailedItems > 0) then 128 else 0 end +
|
||||
case when (DisabledTriggers > 0) then 256 else 0 end +
|
||||
case when (OpenConversations > 1000) then 512 else 0 end
|
||||
)
|
||||
);
|
||||
|
||||
SET @sql = '
|
||||
SELECT
|
||||
--@@SERVERNAME AS ServerName,
|
||||
DB_NAME() AS DatabaseName,
|
||||
(SELECT TOP 1 is_broker_enabled FROM sys.databases WHERE database_id = db_id()) AS Broker,
|
||||
(SELECT TOP 1 CREATED FROM dbo.T_OLDALLATOGATOTTSAG (NOLOCK) ORDER BY ID DESC) AS LastPageVisit,
|
||||
(SELECT TOP 1 CREATED FROM dbo.T_ENTITYHISTORY (NOLOCK) ORDER BY ID DESC) AS LastEntityHistory,
|
||||
(SELECT TOP 1 message_enqueue_time FROM auditlog.AuditQueue WITH (NOLOCK) ORDER BY message_enqueue_time) AS FirstQueueItem,
|
||||
(SELECT COUNT(*) FROM auditlog.AuditQueue WITH (NOLOCK)) AS QueueLength,
|
||||
(SELECT TOP 1 is_enqueue_enabled FROM sys.service_queues WHERE name = ''AuditQueue'') AS QueueEnabled,
|
||||
(SELECT TOP 1 is_activation_enabled FROM sys.service_queues WHERE name = ''AuditQueue'') AS ProcessActivated,
|
||||
(SELECT COUNT(*) FROM auditlog.ErrorLog (NOLOCK) WHERE ErrorTime > DATEADD(minute, -61, GETDATE())) AS LastHourErrors,
|
||||
(SELECT COUNT(*) FROM auditlog.AuditServiceFailedItems (NOLOCK) WHERE EventDate > DATEADD(minute, -61, GETDATE())) AS LastHourFailedItems,
|
||||
(SELECT COUNT(*) FROM sys.triggers WHERE parent_class = 1 AND name LIKE ''tr_AsyncAudit%'' and is_disabled = 1) AS DisabledTriggers,
|
||||
(SELECT COUNT(*) FROM sys.conversation_endpoints (NOLOCK) WHERE far_service = ''AuditService'') AS OpenConversations
|
||||
';
|
||||
|
||||
SET @db_cursor = CURSOR STATIC FOR
|
||||
SELECT DISTINCT name
|
||||
FROM sys.databases d
|
||||
LEFT JOIN sys.dm_hadr_database_replica_states rs on rs.database_id = d.database_id
|
||||
WHERE d.state = 0
|
||||
AND d.is_read_only = 0
|
||||
AND d.database_id > 4
|
||||
AND d.name NOT LIKE '%GINOP%'
|
||||
AND d.source_database_id IS NULL
|
||||
AND (
|
||||
NOT EXISTS(SELECT * FROM sys.dm_hadr_database_replica_states r WHERE r.database_id = d.database_id)
|
||||
OR
|
||||
(rs.is_local = 1 AND rs.is_primary_replica = 1)
|
||||
);
|
||||
|
||||
SET LOCK_TIMEOUT 5000;
|
||||
OPEN @db_cursor;
|
||||
FETCH NEXT FROM @db_cursor INTO @db_name;
|
||||
WHILE @@FETCH_STATUS = 0
|
||||
BEGIN
|
||||
|
||||
SET @remote_sql = 'SELECT @table_exists = SIGN(COUNT(*)) FROM [' + @db_name + '].INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = ''T_ENTITYHISTORY'' and TABLE_SCHEMA = ''dbo''';
|
||||
|
||||
EXEC sp_executesql @remote_sql, N'@table_exists BIT OUTPUT', @table_exists = @table_exists OUTPUT;
|
||||
|
||||
IF @table_exists = 0 GOTO FETCH_NEXT;
|
||||
|
||||
SET @remote_sql = 'EXEC [' + @db_name + '].sys.sp_executesql @SQL';
|
||||
|
||||
BEGIN TRY
|
||||
|
||||
INSERT INTO #AsyncActivity(DatabaseName, Broker, LastPageVisit, LastEntityHistory, FirstQueueItem, QueueLength, QueueEnabled, ProcessActivated, LastHourErrors, LastHourFailedItems, DisabledTriggers, OpenConversations)
|
||||
EXEC sp_executesql @remote_sql, N'@SQL NVARCHAR(max)', @SQL = @sql;
|
||||
|
||||
END TRY
|
||||
BEGIN CATCH
|
||||
|
||||
INSERT INTO #AsyncActivity(ServerName, DatabaseName, ErrorMessage)
|
||||
VALUES(@@SERVERNAME, @db_name, ERROR_MESSAGE());
|
||||
|
||||
END CATCH
|
||||
|
||||
FETCH_NEXT:
|
||||
FETCH NEXT FROM @db_cursor INTO @db_name;
|
||||
|
||||
END
|
||||
|
||||
CLOSE @db_cursor
|
||||
|
||||
IF @recipient_address IS NULL
|
||||
BEGIN
|
||||
SELECT * FROM #AsyncActivity;
|
||||
RETURN;
|
||||
END
|
||||
|
||||
SELECT @result += '<tr>' +
|
||||
'<td>' + DatabaseName + '</td>' +
|
||||
CASE WHEN ErrorMessage IS NOT NULL THEN
|
||||
'<td colspan=11' + IIF(Errors & 1 = 1, ' class="error"', '') + '>Error:' + ErrorMessage + '</td>'
|
||||
ELSE
|
||||
'<td' + IIF(Errors & 2 = 2, ' class="error"', '') + '>' + ISNULL(CAST(Broker AS VARCHAR(10)), ' ') + '</td>' +
|
||||
'<td>' + ISNULL(CONVERT(VARCHAR(19), LastPageVisit, 120), ' ') + '</td>' +
|
||||
'<td' + IIF(Errors & 4 = 4, ' class="error"', '') + '>' + ISNULL(CONVERT(VARCHAR(19), LastEntityHistory, 120), ' ') + '</td>' +
|
||||
'<td>' + ISNULL(CONVERT(VARCHAR(19), FirstQueueItem, 120), ' ') + '</td>' +
|
||||
'<td' + IIF(Errors & 16 = 16, ' class="error"', '') + '>' + ISNULL(CAST(QueueLength AS VARCHAR(10)), ' ') + '</td>' +
|
||||
'<td' + IIF(Errors & 8 = 8, ' class="error"', '') + '>' + ISNULL(CAST(QueueEnabled AS VARCHAR(10)), ' ') + '</td>' +
|
||||
'<td' + IIF(Errors & 32 = 32, ' class="error"', '') + '>' + ISNULL(CAST(ProcessActivated AS VARCHAR(10)), ' ') + '</td>' +
|
||||
'<td' + IIF(Errors & 64 = 64, ' class="error"', '') + '>' + ISNULL(CAST(LastHourErrors AS VARCHAR(10)), ' ') + '</td>' +
|
||||
'<td' + IIF(Errors & 128 = 128, ' class="error"', '') + '>' + ISNULL(CAST(LastHourFailedItems AS VARCHAR(10)), ' ') + '</td>' +
|
||||
'<td' + IIF(Errors & 256 = 256, ' class="error"', '') + '>' + ISNULL(CAST(DisabledTriggers AS VARCHAR(10)), ' ') + '</td>' +
|
||||
'<td' + IIF(Errors & 512 = 512, ' class="error"', '') + '>' + ISNULL(CAST(OpenConversations AS VARCHAR(10)), ' ') + '</td>'
|
||||
END +
|
||||
'</tr>'
|
||||
FROM #AsyncActivity
|
||||
WHERE Errors > 0;
|
||||
|
||||
IF @@ROWCOUNT = 0 RETURN;
|
||||
|
||||
SET @result = '
|
||||
<style>
|
||||
p {
|
||||
font-size: 10pt;
|
||||
font-family: Calibri;
|
||||
}
|
||||
th {
|
||||
border:1px solid #EEEEEE;
|
||||
padding: 4px;
|
||||
font-weight: bold;
|
||||
font-size: 10pt;
|
||||
font-family: Calibri;
|
||||
background-color: #EEEEEE;
|
||||
}
|
||||
td {
|
||||
border:1px solid #EEEEEE;
|
||||
padding:4px;
|
||||
text-align: right;
|
||||
font-size: 10pt;
|
||||
font-family: Calibri;
|
||||
nowrap;
|
||||
}
|
||||
td.error {
|
||||
border:1px solid #EEEEEE;
|
||||
padding:4px;
|
||||
text-align: right;
|
||||
font-size: 10pt;
|
||||
font-family: Calibri;
|
||||
color: #FFFFFF;
|
||||
background-color: #FF0000;
|
||||
font-weight: bold;
|
||||
nowrap;
|
||||
}
|
||||
|
||||
</style>
|
||||
<p>Figyelem! Hiba az AUDIT rendszerben a <b>' + @@SERVERNAME + '</b> szerveren:</p>
|
||||
<table style="border-collapse:collapse">
|
||||
<thead>
|
||||
<th>DatabaseName</th>
|
||||
<th>Broker On</th>
|
||||
<th>Last Visit</th>
|
||||
<th>Last History</th>
|
||||
<th>First Queue</th>
|
||||
<th>Queue Items</th>
|
||||
<th>Queue On</th>
|
||||
<th>Process Active</th>
|
||||
<th>Latest Errors</th>
|
||||
<th>Latest Fails</th>
|
||||
<th>Disabled Triggers</th>
|
||||
<th>Open Conversations</th>
|
||||
</thead>
|
||||
' + @result + '
|
||||
</table>
|
||||
<p>További információk és teendők: <a href= "https://ekretapedia.ekreta.hu/main/_layouts/15/WopiFrame.aspx?sourcedoc={9934831a-3b80-4c13-abc1-9274cceed8bb}&action=edit&wd=target%28Checklistek.one%7C2b67a257-f2e8-4e0e-9977-42134b49d577%2FAudit%20kezel%C3%A9se%20%28Audit%202.0%5C%29%7Cc1f02bcc-4bd9-485b-8deb-d98f310d946e%2F%29&wdorigin=703">OneNote|Checklistek\Audit kezelése (Audit 2.0)</a></p>
|
||||
'
|
||||
IF EXISTS(SELECT * FROM #AsyncActivity WHERE Errors & 32 = 32)
|
||||
SET @result += '
|
||||
<p><b>Process Active:</b> Újraindítás a következő paranccsal:</p>
|
||||
<pre style="background-color: #EEEEEE">
|
||||
ALTER QUEUE auditlog.AuditQueue
|
||||
WITH
|
||||
STATUS = ON,
|
||||
ACTIVATION (
|
||||
STATUS = ON,
|
||||
PROCEDURE_NAME = auditlog.usp_AuditProcessing,
|
||||
MAX_QUEUE_READERS = 1,
|
||||
EXECUTE AS ''kreta_tech_user''
|
||||
),
|
||||
POISON_MESSAGE_HANDLING (STATUS = ON);
|
||||
|
||||
</pre>'
|
||||
|
||||
IF EXISTS(SELECT * FROM #AsyncActivity WHERE Errors & 512 = 512)
|
||||
SET @result += '
|
||||
<p><b>Open Conversations:</b>Javítás:</p>
|
||||
<pre style="background-color: #EEEEEE">
|
||||
SELECT * FROM sys.dm_broker_activated_tasks WHERE database_id = DB_ID();
|
||||
SELECT * FROM sys.sysprocesses WHERE spid = $spid;
|
||||
KILL $spid;
|
||||
|
||||
</pre>'
|
||||
|
||||
|
||||
EXEC msdb.dbo.sp_send_dbmail
|
||||
--@profile_name = 'SQL Server Alert Mail Profile',
|
||||
@recipients = @recipient_address
|
||||
,@body = @result
|
||||
,@subject = N'KRÉTA - Audit TRIGGER/QUEUE/PROCESS hiba'
|
||||
,@importance = 'High'
|
||||
,@body_format = 'HTML'
|
|
@ -0,0 +1,35 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
CREATE OR ALTER PROCEDURE auditlog.uspLogError
|
||||
@ErrorLogID int = 0 OUTPUT -- contains the ErrorLogID of the row inserted
|
||||
AS -- by uspLogError in the ErrorLog table
|
||||
DECLARE
|
||||
@error_number INT = ERROR_NUMBER(),
|
||||
@error_severity INT = ERROR_SEVERITY(),
|
||||
@error_state INT = ERROR_STATE(),
|
||||
@error_procedure SYSNAME = ERROR_PROCEDURE(),
|
||||
@error_line INT = ERROR_LINE(),
|
||||
@error_message NVARCHAR(4000) = ERROR_MESSAGE();
|
||||
|
||||
SET NOCOUNT ON;
|
||||
INSERT auditlog.ErrorLog (
|
||||
UserName,
|
||||
ErrorNumber,
|
||||
ErrorSeverity,
|
||||
ErrorState,
|
||||
ErrorProcedure,
|
||||
ErrorLine,
|
||||
ErrorMessage
|
||||
) VALUES (
|
||||
CURRENT_USER,
|
||||
@error_number,
|
||||
@error_severity,
|
||||
@error_state,
|
||||
@error_procedure,
|
||||
@error_line,
|
||||
@error_message
|
||||
);
|
||||
SET @ErrorLogID = SCOPE_IDENTITY();
|
||||
GO
|
|
@ -0,0 +1,165 @@
|
|||
IF NOT EXISTS (SELECT 1 FROM master.dbo.syslogins WHERE name = 'kreta_tech_user' AND dbname = 'master')
|
||||
BEGIN
|
||||
USE [master]
|
||||
CREATE LOGIN [kreta_tech_user] WITH PASSWORD=N'Porcica1.', DEFAULT_DATABASE=[master], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
|
||||
GRANT CREATE ANY DATABASE TO [kreta_tech_user]
|
||||
GRANT ALTER ANY LOGIN TO [kreta_tech_user]
|
||||
END
|
||||
|
||||
GO
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM master.dbo.syslogins WHERE name = 'kreta_db_user' AND dbname = 'master')
|
||||
BEGIN
|
||||
USE [master]
|
||||
CREATE LOGIN [kreta_db_user] WITH PASSWORD=N'Porcica1.', DEFAULT_DATABASE=[master], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
|
||||
END
|
||||
|
||||
GO
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM sys.database_principals WHERE name = 'kreta_tech_user')
|
||||
BEGIN
|
||||
CREATE USER [kreta_tech_user] FOR LOGIN [kreta_tech_user]
|
||||
ALTER ROLE [db_owner] ADD MEMBER [kreta_tech_user]
|
||||
GRANT BACKUP DATABASE TO [kreta_tech_user]
|
||||
GRANT CREATE SCHEMA TO [kreta_tech_user]
|
||||
GRANT EXECUTE TO [kreta_tech_user]
|
||||
END
|
||||
|
||||
GO
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM sys.database_principals WHERE name = 'kreta_db_user')
|
||||
BEGIN
|
||||
CREATE USER [kreta_db_user] FOR LOGIN [kreta_db_user]
|
||||
ALTER ROLE [db_datareader] ADD MEMBER [kreta_db_user]
|
||||
ALTER ROLE [db_datawriter] ADD MEMBER [kreta_db_user]
|
||||
GRANT CREATE SCHEMA TO [kreta_db_user]
|
||||
GRANT EXECUTE TO [kreta_db_user]
|
||||
END
|
||||
|
||||
GO
|
||||
|
||||
IF EXISTS (SELECT 1 FROM sys.services WHERE name = 'AuditServiceTarget') BEGIN
|
||||
DROP SERVICE AuditServiceTarget
|
||||
END
|
||||
GO
|
||||
|
||||
IF EXISTS (SELECT 1 FROM sys.services WHERE name = 'AuditServiceInit') BEGIN
|
||||
DROP SERVICE AuditServiceInit
|
||||
END
|
||||
GO
|
||||
|
||||
IF EXISTS (SELECT 1 FROM sys.services WHERE name = 'AuditService') BEGIN
|
||||
DROP SERVICE [AuditService]
|
||||
END
|
||||
GO
|
||||
|
||||
IF EXISTS (SELECT 1 FROM sys.service_queues WHERE name = 'AuditQueue') BEGIN
|
||||
DROP QUEUE auditlog.AuditQueue
|
||||
END
|
||||
GO
|
||||
|
||||
IF EXISTS (SELECT 1 FROM sys.service_contracts WHERE name = 'AuditContract') BEGIN
|
||||
DROP CONTRACT AuditContract
|
||||
END
|
||||
GO
|
||||
|
||||
IF EXISTS (SELECT 1 FROM sys.service_message_types WHERE name = 'AuditMessage') BEGIN
|
||||
DROP MESSAGE TYPE AuditMessage
|
||||
END
|
||||
GO
|
||||
|
||||
DECLARE @sql nvarchar(max)
|
||||
|
||||
EXEC sp_changedbowner 'sa';
|
||||
|
||||
IF (SELECT is_broker_enabled FROM sys.databases WHERE database_id = DB_ID()) = 0 BEGIN
|
||||
SET @sql = N'ALTER DATABASE ' + DB_NAME() + ' SET SINGLE_USER WITH ROLLBACK IMMEDIATE '
|
||||
EXEC master.sys.sp_executesql @sql
|
||||
|
||||
-- Ha a Service Broker IDja nem egyedi
|
||||
IF EXISTS (SELECT 1 FROM sys.databases x WHERE x.service_broker_guid = (SELECT service_broker_guid FROM sys.databases d WHERE d.database_id = DB_ID()) AND x.database_id <> DB_ID()) BEGIN
|
||||
SET @sql = N'ALTER DATABASE ' + DB_NAME() + ' SET NEW_BROKER'
|
||||
EXEC master.sys.sp_executesql @sql
|
||||
END
|
||||
ELSE BEGIN
|
||||
SET @sql = N'ALTER DATABASE ' + DB_NAME() + ' SET ENABLE_BROKER'
|
||||
EXEC master.sys.sp_executesql @sql
|
||||
END
|
||||
|
||||
SET @sql = N'ALTER DATABASE ' + DB_NAME() + ' SET MULTI_USER'
|
||||
EXEC master.sys.sp_executesql @sql
|
||||
|
||||
END;
|
||||
GO
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM sys.service_message_types WHERE name = 'AuditMessage') BEGIN
|
||||
CREATE MESSAGE TYPE [AuditMessage]
|
||||
VALIDATION = NONE;
|
||||
END
|
||||
GO
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM sys.service_message_types WHERE name = 'EndOfStream') BEGIN
|
||||
CREATE MESSAGE TYPE EndOfStream;
|
||||
END
|
||||
GO
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM sys.service_contracts WHERE name = 'AuditContract') BEGIN
|
||||
CREATE CONTRACT [AuditContract] (
|
||||
[AuditMessage] SENT BY INITIATOR,
|
||||
[EndOfStream] SENT BY INITIATOR
|
||||
);
|
||||
END
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('auditlog.usp_AuditProcessing') IS NULL BEGIN
|
||||
EXEC('CREATE PROCEDURE auditlog.usp_AuditProcessing AS SELECT 1')
|
||||
END
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM sys.service_queues WHERE name = 'AuditQueue') BEGIN
|
||||
CREATE QUEUE auditlog.AuditQueue WITH STATUS=ON, ACTIVATION (
|
||||
STATUS = ON
|
||||
,MAX_QUEUE_READERS = 1
|
||||
,PROCEDURE_NAME = auditlog.usp_AuditProcessing
|
||||
,EXECUTE AS 'kreta_tech_user'
|
||||
);
|
||||
END
|
||||
GO
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM sys.services WHERE name = 'AuditService') BEGIN
|
||||
CREATE SERVICE [AuditService]
|
||||
ON QUEUE auditlog.AuditQueue ([AuditContract]);
|
||||
END
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('auditlog.ErrorLog') IS NOT NULL
|
||||
DROP TABLE [auditlog].[ErrorLog];
|
||||
GO
|
||||
|
||||
CREATE TABLE [auditlog].[ErrorLog](
|
||||
[ErrorLogID] [int] IDENTITY(1,1) NOT NULL,
|
||||
[ErrorTime] [datetime] NOT NULL,
|
||||
[UserName] [sysname] NOT NULL,
|
||||
[ErrorNumber] [int] NOT NULL,
|
||||
[ErrorSeverity] [int] NULL,
|
||||
[ErrorState] [int] NULL,
|
||||
[ErrorProcedure] [nvarchar](126) NULL,
|
||||
[ErrorLine] [int] NULL,
|
||||
[ErrorMessage] [nvarchar](4000) NOT NULL,
|
||||
CONSTRAINT [PK_ErrorLog_ErrorLogID] PRIMARY KEY CLUSTERED ([ErrorLogID] ASC)
|
||||
)
|
||||
GO
|
||||
|
||||
ALTER TABLE [auditlog].[ErrorLog]
|
||||
ADD CONSTRAINT [DF_ErrorLog_ErrorTime]
|
||||
DEFAULT (getdate()) FOR [ErrorTime]
|
||||
GO
|
||||
|
||||
ALTER QUEUE auditLog.[AuditQueue]
|
||||
WITH ACTIVATION
|
||||
(
|
||||
STATUS = ON,
|
||||
PROCEDURE_NAME = auditLog.usp_AuditProcessing,
|
||||
MAX_QUEUE_READERS = 1,
|
||||
EXECUTE AS 'kreta_tech_user'
|
||||
);
|
||||
GO
|
1324
Kreta.DataAccess.Migrations/DBScripts/Database/create.comments.sql
Normal file
1324
Kreta.DataAccess.Migrations/DBScripts/Database/create.comments.sql
Normal file
File diff suppressed because it is too large
Load diff
|
@ -0,0 +1,62 @@
|
|||
DECLARE
|
||||
@tableName nvarchar(50)
|
||||
,@columnName nvarchar(50)
|
||||
,@description nvarchar(2000)
|
||||
|
||||
DECLARE tableCursor CURSOR LOCAL FOR
|
||||
SELECT t.TABLE_NAME, c.COLUMN_NAME
|
||||
FROM INFORMATION_SCHEMA.COLUMNS c
|
||||
INNER JOIN INFORMATION_SCHEMA.TABLES t ON t.TABLE_SCHEMA = c.TABLE_SCHEMA AND t.TABLE_NAME = c.TABLE_NAME
|
||||
WHERE c.TABLE_SCHEMA = 'dbo'
|
||||
AND t.TABLE_TYPE = 'BASE TABLE'
|
||||
AND t.TABLE_NAME LIKE 'T[_]%'
|
||||
AND c.COLUMN_NAME IN (
|
||||
N'ID'
|
||||
,N'C_INTEZMENYID'
|
||||
,N'C_TANEVID'
|
||||
,N'C_ALINTEZMENYID'
|
||||
,N'C_ALTANEVID'
|
||||
,N'TOROLT'
|
||||
,N'SERIAL'
|
||||
,N'LASTCHANGED'
|
||||
,N'CREATED'
|
||||
,N'MODIFIER'
|
||||
,N'CREATOR'
|
||||
,N'ELOZOTANEVIREKORDID'
|
||||
,N'ELOZOTANEVIREKORDIDA'
|
||||
)
|
||||
|
||||
OPEN tableCursor
|
||||
FETCH NEXT FROM tableCursor INTO @tableName, @columnName
|
||||
WHILE @@FETCH_STATUS = 0 BEGIN
|
||||
SET @description =
|
||||
CASE @columnName
|
||||
WHEN N'ID' THEN N'A rekord egyedi azonosítója, generált IDENTITY(1, 1) (kivéve altáblák esetén, ahol a főtábla ID-ját kapja)'
|
||||
WHEN N'C_INTEZMENYID' THEN N'Az intézmény ID-ja, amihez a rekord tartozik'
|
||||
WHEN N'C_TANEVID' THEN N'A tanév ID-ja, amihez a rekord tartozik'
|
||||
WHEN N'C_ALINTEZMENYID' THEN N'Az intézmény ID-ja, amihez a rekord tartozik (altábla esetén)'
|
||||
WHEN N'C_ALTANEVID' THEN N'A tanév ID-ja, amihez a rekord tartozik (altábla esetén)'
|
||||
WHEN N'TOROLT' THEN N'A rekord logikai töröltségét jelző flag'
|
||||
WHEN N'SERIAL' THEN N'Minden C# kódból történő módosítás esetén eggyel nő az értéke. Hogy párhuzamos módosítás esetnán ne íródjanak felül az adatok'
|
||||
WHEN N'LASTCHANGED' THEN N' A rekord utolsó módosításának időpontja'
|
||||
WHEN N'CREATED' THEN N'A rekord létrehozásának időpontja '
|
||||
WHEN N'MODIFIER' THEN N'A rekordot utoljára módosító felhasználó ID-ja'
|
||||
WHEN N'CREATOR' THEN N'A rekordot létrehozó felhasználó ID-ja'
|
||||
WHEN N'ELOZOTANEVIREKORDID' THEN N'A rekord előző tanévben lévő ID-ja'
|
||||
WHEN N'ELOZOTANEVIREKORDIDA' THEN N'A rekord előző tanévben lévő ID-ja (altábla esetén) '
|
||||
ELSE N'A rekord régi, Neptun Naplóban lévő ID-ja. (migrációval került be)'
|
||||
END;
|
||||
|
||||
EXEC sp_addextendedproperty
|
||||
@name = N'MS_Description'
|
||||
,@value = @description
|
||||
,@level0type = N'Schema', @level0name = N'dbo'
|
||||
,@level1type = N'Table', @level1name = @tableName
|
||||
,@level2type = N'Column', @level2name = @columnName;
|
||||
|
||||
FETCH NEXT FROM tableCursor INTO @tableName, @columnName
|
||||
END
|
||||
CLOSE tableCursor
|
||||
DEALLOCATE tableCursor
|
||||
GO
|
||||
|
|
@ -0,0 +1,59 @@
|
|||
-- ==========================================================================================================================================================================
|
||||
-- Adattisztítás szabályok
|
||||
-- ==========================================================================================================================================================================
|
||||
SET IDENTITY_INSERT T_ADATTISZTITASINDIKATOR ON
|
||||
|
||||
INSERT INTO T_ADATTISZTITASINDIKATOR (ID, C_KOD, C_ADATKOR, C_MEZO, C_LEIRAS) VALUES
|
||||
(1, 'A001', 'Alkalmazott', N'Neme', 'A mező tartalma üres.'),
|
||||
(2, 'A002', 'Alkalmazott', N'Családi név', 'A mező tartalma üres vagy 2 karakternél rövidebb.'),
|
||||
(3, 'A003', 'Alkalmazott', N'Utónév', 'A mező tartalma üres vagy 2 karakternél rövidebb.'),
|
||||
(4, 'A004', 'Alkalmazott', N'Születési családi név', 'A mező tartalma üres vagy 2 karakternél rövidebb.'),
|
||||
(5, 'A005', 'Alkalmazott', N'Születési utónév', 'A mező tartalma üres vagy 2 karakternél rövidebb.'),
|
||||
(6, 'A006', 'Alkalmazott', N'Anyja születési családi neve', 'A mező tartalma üres vagy 2 karakternél rövidebb.'),
|
||||
(7, 'A007', 'Alkalmazott', N'Anyja születési utóneve', 'A mező tartalma üres vagy 2 karakternél rövidebb.'),
|
||||
(8, 'A008', 'Alkalmazott', N'Születési hely', 'A mező tartalma üres.'),
|
||||
(9, 'A009', 'Alkalmazott', N'Születési idő', 'A mező tartalma üres vagy a születési dátum 1940 előtti vagy 2002 utáni.'),
|
||||
(10, 'A010', 'Alkalmazott', N'Igazolvány száma', 'Az Igazolvány típusa meg van adva, de az igazolvány száma nincs kitöltve.'),
|
||||
(11, 'A011', 'Alkalmazott', N'Adóazonosító jel', 'Az adóazonosító jel ki van töltve de nem felel meg a hivatalos generálási szabályoknak (CDV).'),
|
||||
(12, 'A012', 'Alkalmazott', N'Cím típusa', 'A mező tartalma üres vagy Na.'),
|
||||
(13, 'A013', 'Alkalmazott', N'Irányítószám', 'A mező tartalma üres.'),
|
||||
(14, 'A014', 'Alkalmazott', N'Irányítószám', 'Az irányítószám nem szerepel a postai nyílvántartásban.'),
|
||||
(15, 'A015', 'Alkalmazott', N'Irányítószám', 'Az irányítószám nem a megadott helységnévhez tartozik.'),
|
||||
(16, 'A016', 'Alkalmazott', N'Helység név', 'A mező tartalma üres.'),
|
||||
(17, 'A017', 'Alkalmazott', N'Helység név', 'A helységénv nem szerepel a postai nyílvántartásban.'),
|
||||
(18, 'A018', 'Alkalmazott', N'Közterület név', 'A mező tartalma üres.'),
|
||||
(19, 'A019', 'Alkalmazott', N'Közterület jellege', 'A mező tartalma üres vagy Na.'),
|
||||
(20, 'A020', 'Alkalmazott', N'Házszám', 'A mező tartalma üres.'),
|
||||
(21, 'A021', 'Alkalmazott', N'Telefonszám', 'A telefonszám hossza 10 számjegynél kevesebb („-„, „/”, stb. nélkül).'),
|
||||
(22, 'A022', 'Alkalmazott', N'Email cím', 'A mezőben lévő érték nem tartalmatartalmaz "@ és/vagy „.” karaktert.'),
|
||||
(23, 'A023', 'Alkalmazott', N'Email típus', 'Az Email cím nem üres, és az ellenőrzött mező tartalma Na vagy üres.'),
|
||||
(24, 'A024', 'Alkalmazott', N'Diákolimpiai jogosultság', 'A mező tartalma üres.'),
|
||||
(25, 'A025', 'Alkalmazott', N'Kezelheti a közösségi szolgálatokat', 'A mező tartalma üres.'),
|
||||
(26, 'A026', 'Alkalmazott', N'Munkakör', 'A mező tartalma üres vagy Na.'),
|
||||
(27, 'A027', 'Alkalmazott', N'Munkakör', 'A értéke nem a legördülő listában - a fenntartó által megjelölt - található értékkészletnek felel meg.'),
|
||||
(28, 'A028', 'Alkalmazott', N'Foglalkoztatási jogviszony', 'A mező tartalma üres vagy Na.'),
|
||||
(29, 'A029', 'Alkalmazott', N'Részmunkaidő százalék', 'A Foglalkoztatás típusa mező tartalma Részmunkaidős de a Részmunkaidő százalék értéke nem 1-99 % közötti.'),
|
||||
(30, 'A030', 'Alkalmazott', N'Alkalmazás kezdete', 'A mező tartalma üres.'),
|
||||
(31, 'A031', 'Alkalmazott', N'Alkalmazás kezdete', 'A Munkakör hittanoktató vagy az előtag tartalmazza a KA vagy BTA vagy KGK megnevezést és az Alkalmazás kezdete mező tartalma nem üres.'),
|
||||
(32, 'A032', 'Alkalmazott', N'Alkalmazás vége', 'A mező tartalma üres.'),
|
||||
(33, 'A033', 'Alkalmazott', N'Alkalmazás vége', 'A Munkakör hittanoktató vagy az előtag tartalmazza a KA vagy BTA vagy KGK megnevezést és az Alkalmazás vége mező tartalma nem üres.'),
|
||||
(34, 'A034', 'Alkalmazott', N'Tartósan távollévő', 'A mező tartalma üres.'),
|
||||
(35, 'A035', 'Alkalmazott', N'Betöltetlen álláshely', 'A jelölőnégyzet be van pipálva de az előtag nem tartalmazza BTA megnevezést. Vagy jelölőnégyzet nincs bepipálva de az előtag tartalmazza BTA megnevezést.'),
|
||||
(36, 'A036', 'Alkalmazott', N'Betöltetlen álláshely', 'A mező tartalma üres.'),
|
||||
(37, 'A037', 'Alkalmazott', N'Főállású', 'A mező tartalma üres.'),
|
||||
(38, 'A038', 'Alkalmazott', N'Nyugdíjas (továbbfoglalkoztatott)', 'A mező tartalma üres.'),
|
||||
(39, 'A039', 'Alkalmazott', N'Szakértői, vagy vizsgaelnöki tevékenységű', 'A mező tartalma üres.'),
|
||||
(40, 'A040', 'Alkalmazott', N'Szakértői, vagy vizsgaelnöki tevékenységű', 'A mező tartalma TRUE és a Pedagógus fokozat Na.'),
|
||||
(41, 'A041', 'Alkalmazott', N'Szakmai továbbképzés', 'A mező tartalma üres.'),
|
||||
(42, 'A042', 'Alkalmazott', N'Szakmai továbbképzés', 'A jelölőnégyzet be van pipálva de a Pedagógus fokozat Na.'),
|
||||
(43, 'A043', 'Alkalmazott', N'Szakvizsga', 'A mező tartalma üres.'),
|
||||
(44, 'A044', 'Alkalmazott', N'Szakvizsga', 'A jelölőnégyzet be van pipálva de a Pedagógus fokozat Na.'),
|
||||
(45, 'A045', 'Alkalmazott', N'Áttanító', 'A mező tartalma üres.'),
|
||||
(46, 'A046', 'Alkalmazott', N'Áttanító', 'A jelölőnégyzet be van pipálva de a Pedagógus fokozat nem Na.'),
|
||||
(47, 'A047', 'Alkalmazott', N'Áttanító más intézménynél', 'A mező tartalma üres.'),
|
||||
(48, 'A048', 'Alkalmazott', N'Áttanító más intézménynél', 'A jelölőnégyzet be van pipálva de a Pedagógus fokozat nem Na.'),
|
||||
(49, 'A049', 'Alkalmazott', N'SZTSZ számok', 'A mező tartalma üres.')
|
||||
|
||||
SET IDENTITY_INSERT T_ADATTISZTITASINDIKATOR OFF
|
||||
GO
|
||||
|
11411
Kreta.DataAccess.Migrations/DBScripts/Database/create.data.amisablon.sql
Normal file
11411
Kreta.DataAccess.Migrations/DBScripts/Database/create.data.amisablon.sql
Normal file
File diff suppressed because it is too large
Load diff
|
@ -0,0 +1,38 @@
|
|||
SET IDENTITY_INSERT [T_CONFIGTIPUS] ON
|
||||
---------------------------------------
|
||||
INSERT INTO T_CONFIGTIPUS ([ID], [C_CONFIG], [C_MODUL], [TOROLT], [SERIAL], [LASTCHANGED], [CREATED], [MODIFIER], [CREATOR], [ELOZOTANEVIREKORDID])
|
||||
VALUES
|
||||
(1, 'IsEnabled', 'ESL', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(2, 'Url', 'ESL', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(3, 'IsEnabled', 'Fokusz', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(4, 'Url', 'Fokusz', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(5, 'IsEnabled', 'HRModul', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(6, 'IsEnabled', 'Eugyintezes', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(7, 'Url', 'Eugyintezes', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(8, 'IsEnabled', 'UzenetModul', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(9, 'Url', 'UzenetModul', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(10, 'IsEnabled', 'eJelentkezes', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(11, 'Url', 'eJelentkezes', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(12, 'IsEnabled', 'Beiratkozas', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(13, 'IsEnabled', 'Nyomtatvany_PedIgHelyettKiall', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(14, 'IsEnabled', 'KozmuAdatszolgaltatas', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(15, 'IsEnabled', 'Leltar', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(16, 'Url', 'Leltar', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(17, 'IsEnabled', 'Konyvtar', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(18, 'Url', 'Konyvtar', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(19, 'IsEnabled', 'Apaczai', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(20, 'IsEnabled', 'Palyavalasztas', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(21, 'Url', 'Palyavalasztas', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(22, 'IsEnabled', 'SzirStatAdatszolgBekuldese', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(23, 'IsEnabled', 'IsKlebelsberg', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(24, 'IsEnabled', 'EszkozKezeles', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(25, 'IsEnabled', 'FeltarGondviselo', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(26, 'IsEnabled', 'FeltarAlkalmazott', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(28, 'Url', 'FeltarASZF', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(29, 'IsEnabled', 'Okosmeres', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(30, 'Url', 'EszkozUgyintezes', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(31, 'Url', 'FeltarASZFGondviselo', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
,(32, 'IsEnabled', 'DualisKepzes', 'F', 0, GETDATE(), GETDATE(), 0, 0, NULL)
|
||||
---------------------------------------
|
||||
SET IDENTITY_INSERT [T_CONFIGTIPUS] OFF
|
||||
GO
|
|
@ -0,0 +1,27 @@
|
|||
/* DashboardUzenetKategoria */
|
||||
SET IDENTITY_INSERT [dbo].[T_DASHBOARDUZENETKATEGORIA] ON
|
||||
|
||||
INSERT [dbo].[T_DASHBOARDUZENETKATEGORIA] ([ID], [C_NEV]) VALUES (0, N'HIBA')
|
||||
GO
|
||||
INSERT [dbo].[T_DASHBOARDUZENETKATEGORIA] ([ID], [C_NEV]) VALUES (1, N'FIGYELMEZTETES')
|
||||
GO
|
||||
INSERT [dbo].[T_DASHBOARDUZENETKATEGORIA] ([ID], [C_NEV]) VALUES (2, N'SIKER')
|
||||
GO
|
||||
INSERT [dbo].[T_DASHBOARDUZENETKATEGORIA] ([ID], [C_NEV]) VALUES (3, N'INFORMACIO')
|
||||
GO
|
||||
INSERT [dbo].[T_DASHBOARDUZENETKATEGORIA] ([ID], [C_NEV]) VALUES (4, N'KIEMELT')
|
||||
GO
|
||||
INSERT [dbo].[T_DASHBOARDUZENETKATEGORIA] ([ID], [C_NEV]) VALUES (5, N'POPUPMEGERTETTEM')
|
||||
GO
|
||||
INSERT [dbo].[T_DASHBOARDUZENETKATEGORIA] ([ID], [C_NEV]) VALUES (6, N'POPUPTOBBSZORIMEGERTETTEM')
|
||||
GO
|
||||
INSERT [dbo].[T_DASHBOARDUZENETKATEGORIA] ([ID], [C_NEV]) VALUES (7, N'POPUPTOVABB')
|
||||
GO
|
||||
INSERT [dbo].[T_DASHBOARDUZENETKATEGORIA] ([ID], [C_NEV]) VALUES (8, N'POPUPKERDOIV')
|
||||
GO
|
||||
INSERT [dbo].[T_DASHBOARDUZENETKATEGORIA] ([ID], [C_NEV]) VALUES (9, N'POPUPNEXTCAPTIONCONFIRM')
|
||||
GO
|
||||
INSERT [dbo].[T_DASHBOARDUZENETKATEGORIA] ([ID], [C_NEV]) VALUES (10, N'POPUPCUSTOMCAPTIONCONFIRM')
|
||||
GO
|
||||
SET IDENTITY_INSERT [dbo].[T_DASHBOARDUZENETKATEGORIA] OFF
|
||||
GO
|
|
@ -0,0 +1,284 @@
|
|||
|
||||
-- ==========================================================================================================================================================================
|
||||
-- LogEventType
|
||||
-- ==========================================================================================================================================================================
|
||||
SET IDENTITY_INSERT [dbo].[T_LOGEVENTTYPE] ON
|
||||
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (0, N'GENERAL', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (1000, N'SYSTEM_EXCEPTION', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (1001, N'CRITICAL_EXCEPTION', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (1002, N'DATAPROVIDER_EXCEPTION', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (1003, N'SCHEDULER_EXCEPTION', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (1004, N'PROGRAMMABILITY_EXCEPTION', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (2000, N'DB_TABLESPACE_WARNING', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (3000, N'LICENSE_SUCCESS', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (3001, N'LICENSE_ERROR', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (3002, N'LICENSE_WARNING', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (4000, N'UPDATE_INFO', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (4001, N'UPDATE_ERROR', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (5000, N'WEB_ERROR_REPORT', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10001, N'FRAMEWORK_GENERAL', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10002, N'FRAMEWORK_CONFIG_INVALIDCONFIG', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10003, N'FRAMEWORK_DB_GENERAL', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10004, N'FRAMEWORK_DB_SERVERNOTFOUND', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10005, N'FRAMEWORK_SESSION_GENERAL', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10006, N'FRAMEWORK_SESSION_CANNOTCREATE', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10007, N'FRAMEWORK_SESSION_INVALID', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10008, N'FRAMEWORK_SESSION_CANNOTSTART', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10009, N'FRAMEWORK_SESSION_CANNOTSTOP', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10010, N'FRAMEWORK_USERCONTEXT_CANNOTCREATE', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10011, N'FRAMEWORK_USERCONTEXT_INVALID', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10012, N'FRAMEWORK_SERVERSTART', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10013, N'FRAMEWORK_SERVERSTOP', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10014, N'FRAMEWORK_CONFIGLOADED', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10015, N'FRAMEWORK_SESSIONCREATED', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10016, N'FRAMEWORK_SESSIONDELETED', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10017, N'FRAMEWORK_SESSIONEXPIRED', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10018, N'FRAMEWORK_EXCEPTION', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10019, N'FRAMEWORK_ENTITYHISTORYFAILED', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10020, N'FRAMEWORK_BEGINTRANSACTION', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10021, N'FRAMEWORK_COMMITTRANSACTION', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10022, N'FRAMEWORK_ROLLBACKTRANSACTION', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10023, N'FRAMEWORK_SERVERLOAD', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10024, N'FRAMEWORK_SESSIONCLEANUP', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10025, N'FRAMEWORK_LOGFAILED', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10026, N'FRAMEWORK_DATAINTEGRITYVIOLATION', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10027, N'FRAMEWORK_NOTINTRANSACTION', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10028, N'FRAMEWORK_SESSIONLIMITREACHED', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10029, N'FRAMEWORK_DB_FOREIGNKEYVIOLATION', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10030, N'FRAMEWORK_DB_UNIQUEKEYVIOLATION', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10031, N'FRAMEWORK_SERVER_STOPPING', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10032, N'FRAMEWORK_LICENSE_ERROR', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10033, N'FRAMEWORK_USER_LOGIN', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10034, N'FRAMEWORK_USER_SETROLE', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (10035, N'FRAMEWORK_DB_DEADLOCK', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (14001, N'MOBILESERVICEERROR', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (20001, N'ACTION_GENERAL', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (20002, N'ACTION_INVALIDREQUEST', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (20003, N'ACTION_INCOMPLETED', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (20004, N'ACTION_NOTFOUND', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (20005, N'ACTION_EXECUTE', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (20006, N'ACTION_INVALID_FIELD_LENGTH', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (21000, N'WindowsServiceExecute', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (21001, N'WindowsServiceError', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (30001, N'ENTITY_GENERAL', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (30002, N'ENTITY_NOTFOUND', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (30003, N'ENTITY_INVALIDDATA', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (30004, N'ENTITY_INVALIDSTATE', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (30005, N'ENTITY_LOAD', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (30006, N'ENTITY_INSERT', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (30007, N'ENTITY_UPDATE', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (30008, N'ENTITY_DELETE', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (30009, N'ENTITY_MODIFY', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (30010, N'ENTITY_EXPIREDVERSION', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (30011, N'ENTITY_READONLYATTRIBUTE', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (30012, N'ENTITY_DELETEFAILED', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (30013, N'ENTITY_READONLY', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (40001, N'SECURITY_GENERAL', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (40002, N'SECURITY_WRITE', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (40003, N'SECURITY_INVALIDOPERATION', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (40004, N'SECURITY_LOGINFAILED', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (40005, N'SECURITY_INVALIDROLE', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (40006, N'SECURITY_COLUMNVIOLATION', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (40007, N'SECURITY_LOGINREQUIREMENTFAILED', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (40008, N'SECURITY_INVALIDSUBEMPLOYEEID', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (40009, N'SECURITY_INVALIDPRIORITY', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (40010, N'SECURITY_ACTIVEDIRECTORY', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (40011, N'SECURITY_ACTIVEDIRECTORY_LOGINFAILED', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (50001, N'SQL_GENERAL', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (50002, N'SQL_EXECUTED', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (60000, N'NEPTUN_GENERAL', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (65000, N'POSZEIDON_GENERAL', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (65001, N'TANUSITOK_NOTHITELESITVEBYUSER', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (65002, N'TANUSITOK_ERVENYTELENTANUSITASVISSZAVONASA', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (65003, N'IKTATOKONYV_UTOLSOFOSZAMMODOSITASIKISERLET', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (65004, N'FAJLSZERVER_REQUESTEDFILESERVERINACTIVE', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (65005, N'ELEKTRONIKUSPELDANY_TAROLOMODOSITAS', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (65006, N'SZTORNOZASIZARADEK_SZTORNOCONDITIONCHECKFAILED', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (65007, N'UGYIRATBANPELDANY_INVALIDOPERATION', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (65008, N'SZETSZERELES_CONDITIONCHECKFAILED', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (65009, N'LEZARAS_CONDITIONCHECKFAILED', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (65010, N'NEPTUN_CONNECTOR_EVENT', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (65011, N'NEPTUN_CONNECTOR_ERROR', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (65012, N'MOREQ2_IMPORT', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (65013, N'MOREQ2', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (65014, N'ENTITYHISTORYMODE', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (65015, N'SCANNER_ERROR ', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (70000, N'FDL_GENERAL', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (70001, N'FDL_BAD_FILTER', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (80000, N'CUSTOM_HANDLABLE', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (80001, N'DEVELOPER_DEFINIED', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (81000, N'SMS_GENERAL', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (82000, N'EMAIL_GENERAL', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (83000, N'USER_COLLAPSE', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (83001, N'USER_COLLPASE_ERROR', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (84000, N'FAJLSZERVER_GENERAL', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (85000, N'MESSAGEMANAGER_GENERAL', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (90001, N'NEPTUN_RELEASE', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (90002, N'NEPTUN_COMPARE', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (90003, N'NEPTUN_SCRIPTS', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (90004, N'NEPTUN_DBCHECK', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (90005, N'NEPTUN_REPORTS', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (90006, N'NEPTUN_PATCH', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (90011, N'NEPTUN_RELEASE_ORA', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (90012, N'NEPTUN_RELEASE_SQL', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (90013, N'NEPTUN_RELEASE_DB2', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (90014, N'NEPTUN_LOGDW_ERROR', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (100000, N'LMS_ERROR', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (110000, N'OM_CODE_CHANGED', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (120000, N'CLIENT_GENERAL', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (130000, N'JOB_SCHEDULE', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (130001, N'JOB_EXECUTE', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (140000, N'MOBILESERVICEEXECUTE', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (150000, N'DIAKIGENY_KONTENER', N'T')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (160000, N'Tanulo_KIR_Import', N'F')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGEVENTTYPE] ([ID], [C_DISPLAYNAME], [C_DELETABLE]) VALUES (160001, N'Tanar_KIR_Import', N'F')
|
||||
GO
|
||||
SET IDENTITY_INSERT [dbo].[T_LOGEVENTTYPE] OFF
|
||||
|
||||
SET IDENTITY_INSERT [dbo].[T_LOGLEVELTYPE] ON
|
||||
|
||||
INSERT [dbo].[T_LOGLEVELTYPE] ([ID], [C_DISPLAYNAME]) VALUES (0, N'UNKNOWN')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGLEVELTYPE] ([ID], [C_DISPLAYNAME]) VALUES (1, N'DEBUG')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGLEVELTYPE] ([ID], [C_DISPLAYNAME]) VALUES (2, N'INFO')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGLEVELTYPE] ([ID], [C_DISPLAYNAME]) VALUES (3, N'WARNING')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGLEVELTYPE] ([ID], [C_DISPLAYNAME]) VALUES (4, N'ERROR')
|
||||
GO
|
||||
INSERT [dbo].[T_LOGLEVELTYPE] ([ID], [C_DISPLAYNAME]) VALUES (5, N'FATAL')
|
||||
GO
|
||||
SET IDENTITY_INSERT [dbo].[T_LOGLEVELTYPE] OFF
|
||||
GO
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
SET IDENTITY_INSERT T_SZIRSTATKONYVTARKATEGORIA ON
|
||||
|
||||
INSERT INTO [dbo].T_SZIRSTATKONYVTARKATEGORIA (ID, C_FOKATEGORIAID, C_NEV) VALUES
|
||||
(1000, NULL, 'Könyvtári egységek')
|
||||
,(1100, 1000, 'könyv, kötet')
|
||||
,(1110, 1100, 'tankönyv, kötet')
|
||||
,(1111, 1110, 'tartós tankönyv, kötet')
|
||||
,(1120, 1100, 'idegennyelvű könyv, kötet')
|
||||
,(1121, 1120, 'nemzetiségi könyv, kötet')
|
||||
,(1200, 1000, 'elektronikus dokumentum, db')
|
||||
,(1210, 1200, 'hanganyag (hanglemez, kazetta, CD), db')
|
||||
,(1220, 1200, 'mozgókép (videokazetta, videodiszk), db')
|
||||
,(1230, 1200, 'számítógépes multimédia anyag, db ')
|
||||
,(2000, NULL, 'Periodika-féleség, db')
|
||||
,(3000, NULL, 'Könyvtári egységek értéke, ezer Ft ')
|
||||
,(4000, NULL, 'Helyben használati eset')
|
||||
,(5000, NULL, 'Könyvtári olvasók (tanulók) száma, fő')
|
||||
,(6000, NULL, 'Kölcsönzések száma')
|
||||
,(6100, 6000, 'tanuló számára kölcsönzött tartós tankönyv, kötet')
|
||||
,(8000, NULL, 'Selejtezett tartós tankönyv, kötet')
|
||||
|
||||
SET IDENTITY_INSERT T_SZIRSTATKONYVTARKATEGORIA OFF
|
||||
GO
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
2784
Kreta.DataAccess.Migrations/DBScripts/Database/create.indexes.sql
Normal file
2784
Kreta.DataAccess.Migrations/DBScripts/Database/create.indexes.sql
Normal file
File diff suppressed because it is too large
Load diff
|
@ -0,0 +1,19 @@
|
|||
IF SCHEMA_ID('dev') IS NULL BEGIN
|
||||
EXEC sp_executesql N'CREATE SCHEMA dev'
|
||||
END
|
||||
GO
|
||||
|
||||
IF SCHEMA_ID('auditlog') IS NULL BEGIN
|
||||
EXEC sp_executesql N'CREATE SCHEMA auditlog'
|
||||
END
|
||||
GO
|
||||
|
||||
IF SCHEMA_ID('core') IS NULL BEGIN
|
||||
EXEC sp_executesql N'CREATE SCHEMA core'
|
||||
END
|
||||
GO
|
||||
|
||||
IF SCHEMA_ID('tmp') IS NULL BEGIN
|
||||
EXEC sp_executesql N'CREATE SCHEMA tmp'
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,186 @@
|
|||
-- ==================================================================================================================================
|
||||
-- T_ENTITYATTRIBUTEHISTORY & T_ENTITYHISTORY & EGYÉB táblák létrehozása
|
||||
-- ==================================================================================================================================
|
||||
CREATE TABLE [dbo].[T_ENTITYHISTORY] (
|
||||
[ID] INT IDENTITY(1, 1) NOT NULL
|
||||
,[C_ALTERATIONDATE] DATETIME NULL
|
||||
,[C_ENTITYID] INT NULL
|
||||
,[C_ENTITYNAME] NVARCHAR(50) NULL
|
||||
,[C_REASON] NVARCHAR(1000) NULL
|
||||
,[C_FELHASZNALOID] INT NULL
|
||||
,[C_INTEZMENYID] INT NULL
|
||||
,[C_TANEVID] INT NULL
|
||||
,[CREATED] DATETIME NOT NULL DEFAULT GETDATE()
|
||||
,[HOSTNAME] VARCHAR(1000) NULL
|
||||
,CONSTRAINT PK_EntityHistory PRIMARY KEY (ID) WITH (DATA_COMPRESSION = PAGE)
|
||||
)
|
||||
GO
|
||||
|
||||
CREATE TABLE [dbo].[T_ENTITYATTRIBUTEHISTORY] (
|
||||
[C_ENTITYHISTORYID] INT NOT NULL,
|
||||
[C_PROPERTYNAME] VARCHAR(1000) NOT NULL,
|
||||
[C_ORIGINALVALUE] NVARCHAR(4000) NULL,
|
||||
[C_CURRENTVALUE] NVARCHAR(4000) NULL,
|
||||
CONSTRAINT FK_EntityAttributeHistory_EntityHistoryId_REF_EntityHistory FOREIGN KEY (C_ENTITYHISTORYID) REFERENCES [dbo].[T_ENTITYHISTORY](ID)
|
||||
)
|
||||
GO
|
||||
|
||||
CREATE CLUSTERED COLUMNSTORE INDEX CCI_ENTITYATTRIBUTEHISTORY ON dbo.T_ENTITYATTRIBUTEHISTORY WITH (DATA_COMPRESSION = COLUMNSTORE_ARCHIVE);
|
||||
GO
|
||||
|
||||
CREATE TABLE [dbo].[T_ENTITYBLOBVALUES](
|
||||
C_ENTITYHISTORYID INT NOT NULL,
|
||||
C_PROPERTYNAME VARCHAR(1000) NOT NULL,
|
||||
C_ORIGINALVALUE NVARCHAR(MAX) NULL,
|
||||
C_CURRENTVALUE NVARCHAR(MAX) NULL,
|
||||
CONSTRAINT PK_EntityBLOBValues PRIMARY KEY CLUSTERED (C_ENTITYHISTORYID, C_PROPERTYNAME),
|
||||
CONSTRAINT FK_EntityBLOBValues FOREIGN KEY (C_ENTITYHISTORYID) REFERENCES dbo.T_ENTITYHISTORY(ID)
|
||||
)
|
||||
GO
|
||||
|
||||
CREATE TABLE T_ORAREND (
|
||||
C_ORARENDIORAID int NOT NULL
|
||||
,C_DATUM datetime NOT NULL
|
||||
,C_TANEVID int NOT NULL
|
||||
,C_INTEZMENYID int NOT NULL
|
||||
,CONSTRAINT PK_Orarend PRIMARY KEY (C_ORARENDIORAID, C_DATUM)
|
||||
);
|
||||
GO
|
||||
|
||||
CREATE INDEX NCI_Orarend_TanevId ON T_ORAREND ( C_TANEVID)
|
||||
CREATE INDEX NCI_Orarend_IntezmenyId ON T_ORAREND ( C_INTEZMENYID)
|
||||
CREATE INDEX NCI_Orarend_Datum_TanevId_IntezmenyId ON T_ORAREND (C_DATUM, C_TANEVID, C_INTEZMENYID)
|
||||
GO
|
||||
|
||||
ALTER TABLE [DBO].T_ORAREND
|
||||
ADD CONSTRAINT FK_Orarend_OrarendiOraId_REF_OrarendiOraId
|
||||
FOREIGN KEY (C_ORARENDIORAID)
|
||||
REFERENCES [DBO].T_ORARENDIORA (ID)
|
||||
|
||||
ALTER TABLE [DBO].T_ORAREND
|
||||
ADD CONSTRAINT FK_Orarend_TanevId_REF_Tanev
|
||||
FOREIGN KEY (C_TANEVID)
|
||||
REFERENCES [DBO].T_TANEV (ID)
|
||||
|
||||
ALTER TABLE [DBO].T_ORAREND
|
||||
ADD CONSTRAINT FK_Orarend_IntezmenyId_REF_Intezmeny
|
||||
FOREIGN KEY (C_INTEZMENYID)
|
||||
REFERENCES [DBO].T_INTEZMENY (ID)
|
||||
GO
|
||||
|
||||
CREATE TABLE [dbo].[T_ORARENDTELJES](
|
||||
[C_INTEZMENYID] [int] NOT NULL,
|
||||
[C_TANEVID] [int] NOT NULL,
|
||||
[C_DATUM] [datetime] NOT NULL,
|
||||
[C_ORARENDIORAID] [int] NOT NULL,
|
||||
[C_ORARENDIORAGROUPID] [int] NULL,
|
||||
[C_OSZTALYCSOPORTID] [int] NULL,
|
||||
[C_FELADATKATEGORIAID] [int] NULL,
|
||||
[C_TANTARGYID] [int] NULL,
|
||||
[C_ISOSZTALYORARENDBENEMLATSZIK] [char](1) NULL,
|
||||
[C_TANARID] [int] NULL,
|
||||
[C_TEREMID] [int] NULL,
|
||||
[C_ORASZAM] [int] NULL,
|
||||
[C_CSENGETESIRENDID] [int] NULL,
|
||||
[C_BONTOTT] [char](1) NULL,
|
||||
[C_HETIREND] [int] NULL,
|
||||
[C_HETNAPJA] [int] NULL,
|
||||
[C_HETSORSZAMA] [int] NULL,
|
||||
[C_NAPDATUMA] [datetime] NULL,
|
||||
[C_ORAERVENYESSEGKEZDETE] [datetime] NULL,
|
||||
[C_ORAERVENYESSEGVEGE] [datetime] NULL,
|
||||
[C_ORAKEZDETE] [datetime] NULL,
|
||||
[C_ORAVEGE] [datetime] NULL,
|
||||
[C_EGYEDINAP] [char](1) NULL,
|
||||
[C_KOZPONTIORAGROUPID] [uniqueidentifier] NULL,
|
||||
[C_KOZPONTILAGTOROLTORAGROUPID] [uniqueidentifier] NULL,
|
||||
[C_HELYETTESTANAROKID] [int] NULL,
|
||||
[C_HELYETTESITESID] [int] NULL,
|
||||
[C_MAXORASZAM] [tinyint] NULL
|
||||
CONSTRAINT PK_OrarendTeljes PRIMARY KEY CLUSTERED (
|
||||
[C_INTEZMENYID] ASC,
|
||||
[C_TANEVID] ASC,
|
||||
[C_DATUM] ASC,
|
||||
[C_ORARENDIORAID] ASC
|
||||
)
|
||||
)
|
||||
GO
|
||||
|
||||
CREATE TABLE [dev].[EnvironmentInfo] (
|
||||
[Key] nvarchar(255) NOT NULL PRIMARY KEY
|
||||
,[Value] nvarchar(1000) NULL
|
||||
,[Description] nvarchar(1000) NULL
|
||||
)
|
||||
GO
|
||||
|
||||
CREATE TABLE [dbo].[VersionInfo](
|
||||
Version bigint NOT NULL PRIMARY KEY
|
||||
,AppliedOn datetime NULL
|
||||
,Description nvarchar(1024) NULL
|
||||
)
|
||||
GO
|
||||
|
||||
CREATE TABLE [dev].[VersionInfoSPFN](
|
||||
[Id] [int] IDENTITY(1,1) NOT NULL PRIMARY KEY,
|
||||
[Name] [nvarchar](255) NULL,
|
||||
[IsProcedure] [bit] NULL,
|
||||
[IsSchemaUpdated] [bit] NULL,
|
||||
[RegisteredAt] [datetime] NULL
|
||||
)
|
||||
GO
|
||||
|
||||
CREATE TABLE [core].[AdatszotarElemek](
|
||||
[Id] [int] IDENTITY(1,1) NOT NULL,
|
||||
[Nev] [nvarchar](128) NOT NULL,
|
||||
[PluszOszlopok] [nvarchar](1000) NULL,
|
||||
[TableName] [nvarchar](128) NULL,
|
||||
[TableSchemaName] [nvarchar](128) NULL,
|
||||
CONSTRAINT [PK_AdatszotarElemek] PRIMARY KEY CLUSTERED (ID)
|
||||
)
|
||||
GO
|
||||
|
||||
CREATE TABLE [auditlog].[Users](
|
||||
[USERID] [int] IDENTITY(-1000, -1) NOT NULL,
|
||||
[USERNAME] [nvarchar](1000) NOT NULL,
|
||||
[CREATED] [datetime] NOT NULL DEFAULT (getdate()),
|
||||
CONSTRAINT [PK_auditlog_Users] PRIMARY KEY CLUSTERED (
|
||||
[USERID] DESC
|
||||
),
|
||||
CONSTRAINT [UK_auditlog_Users] UNIQUE NONCLUSTERED (
|
||||
[USERNAME] ASC
|
||||
)
|
||||
)
|
||||
GO
|
||||
|
||||
CREATE TABLE dbo.T_OSZTONDIJHISTORY(
|
||||
ID INT NOT NULL,
|
||||
C_ENTITYID int NOT NULL,
|
||||
C_TABLEID tinyint NOT NULL,
|
||||
C_ALTERATIONDATE datetime NOT NULL,
|
||||
C_REASONID tinyint NOT NULL, -- 1:(New) INSERT, 2:(Removed) DELETE, 3:(Modified) UPDATE
|
||||
C_FELHASZNALOID int NULL,
|
||||
C_TANULOID int NOT NULL,
|
||||
C_TANEVID int NOT NULL,
|
||||
C_PROPERTYNAME varchar (100) COLLATE Hungarian_CI_AI NOT NULL,
|
||||
C_ORIGINALVALUE nvarchar (2000) COLLATE Hungarian_CI_AI NULL,
|
||||
C_CURRENTVALUE nvarchar (2000) COLLATE Hungarian_CI_AI NULL,
|
||||
CONSTRAINT PK_OsztondijHistory PRIMARY KEY CLUSTERED (C_TANEVID, C_TANULOID, ID, C_PROPERTYNAME)
|
||||
WITH (DATA_COMPRESSION = PAGE, FILLFACTOR = 100)
|
||||
)
|
||||
GO
|
||||
|
||||
CREATE TABLE [dbo].[T_LEGMAGASABBSZINTUFENNTARTO] (
|
||||
[ID] INT IDENTITY (1, 1) NOT NULL,
|
||||
[C_AZONOSITO] INT NOT NULL,
|
||||
[C_GUID] UNIQUEIDENTIFIER NOT NULL,
|
||||
[C_NEV] NVARCHAR (1000) NOT NULL,
|
||||
[TOROLT] CHAR (1) NOT NULL,
|
||||
[SERIAL] INT NOT NULL,
|
||||
[LASTCHANGED] DATETIME NOT NULL,
|
||||
[CREATED] DATETIME NOT NULL,
|
||||
[MODIFIER] INT NULL,
|
||||
[CREATOR] INT NULL,
|
||||
CONSTRAINT [PK_LegmagasabbSzintuFenntarto] PRIMARY KEY CLUSTERED ([ID] ASC),
|
||||
CONSTRAINT [UK_LegmagasabbSzintuFenntarto_Guid] UNIQUE NONCLUSTERED ([C_GUID] ASC),
|
||||
CONSTRAINT [UK_LegmagasabbSzintuFenntarto_Azonosito] UNIQUE NONCLUSTERED ([C_AZONOSITO] ASC)
|
||||
)
|
9450
Kreta.DataAccess.Migrations/DBScripts/Database/create.tables.sql
Normal file
9450
Kreta.DataAccess.Migrations/DBScripts/Database/create.tables.sql
Normal file
File diff suppressed because it is too large
Load diff
|
@ -0,0 +1,36 @@
|
|||
/*EXEC [dbo].[sp_Global_IntezmenyLetrehozas]
|
||||
@fenntartoAzonosito = '800',
|
||||
@intezmenyCime = N'Kiss Ferenc körút 76.',
|
||||
@intezmenyAzonosito = 'BEDO',
|
||||
@intezmenyIranyitoSzam = N'6783',
|
||||
@intezmenyNeve = N'Bedő Albert Erdészeti Szakképző Iskola és Kollégium',
|
||||
@intezmenyOMKod = N'029799',
|
||||
@intezmenyVaros = N'Ásotthalom',
|
||||
@intezmenyIgazgato = N'Andrésiné dr. Ambrus Ildikó',
|
||||
@intezmenyTagkod = N'001',
|
||||
@intezmenyEmail = N'igazgato.bedo@gmail.com',
|
||||
@tanevNeve = N'2016/2017',
|
||||
@kovetkezoTanevNeve = N'2017/2018',
|
||||
@adminJelszo = 'a',
|
||||
@kellABHet = 1,
|
||||
@teljesKreta = 1,
|
||||
@dbJelszo = 'Porcica1.'
|
||||
|
||||
EXEC [dbo].[sp_Global_IntezmenyLetrehozas]
|
||||
@fenntartoAzonosito = '800',
|
||||
@intezmenyCime = N'Dugonics utca 10-12',
|
||||
@intezmenyAzonosito = 'NYIRSZC',
|
||||
@intezmenyIranyitoSzam = N'4400',
|
||||
@intezmenyNeve = N'Nyíregyházi Szakképzési Centrum',
|
||||
@intezmenyOMKod = N'203045',
|
||||
@intezmenyVaros = N'Nyíregyháza',
|
||||
@intezmenyIgazgato = N'Gurbánné Papp Mária',
|
||||
@intezmenyTagkod = N'001',
|
||||
@intezmenyEmail = N'nyirszc@gmail.com',
|
||||
@tanevNeve = N'2016/2017',
|
||||
@kovetkezoTanevNeve = N'2017/2018',
|
||||
@adminJelszo = 'a',
|
||||
@kellABHet = 1,
|
||||
@teljesKreta = 0,
|
||||
@dbJelszo = 'Porcica1.'
|
||||
*/
|
|
@ -0,0 +1,168 @@
|
|||
DROP TRIGGER IF EXISTS [dbo].[tru_TanuloTanugyiAdatok_ElearningFelhasznalo]
|
||||
GO
|
||||
|
||||
CREATE TRIGGER [dbo].[tru_TanuloTanugyiAdatok_ElearningFelhasznalo]
|
||||
ON [dbo].[T_TANULOTANUGYIADATOK]
|
||||
WITH EXECUTE AS 'Kreta_tech_user'
|
||||
AFTER UPDATE
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
IF UPDATE (C_TANULOEVFOLYAMTIPUSID) BEGIN
|
||||
--elearningfelhasznalo beszúrása
|
||||
INSERT INTO T_ELEARNINGFELHASZNALO (
|
||||
C_ELEARNINGELERHETOSEGID
|
||||
,C_FELHASZNALOID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,TOROLT
|
||||
,SERIAL
|
||||
) SELECT
|
||||
ee.ID AS C_ELEARNINGELERHETOSEGID
|
||||
,tcs.C_TANULOID AS C_FELHASZNALOID
|
||||
,ee.C_INTEZMENYID AS C_INTEZMENYID
|
||||
,ee.C_TANEVID AS C_TANEVID
|
||||
,'F' AS TOROLT
|
||||
,0 AS SERIAL
|
||||
FROM Inserted tta
|
||||
INNER JOIN T_ELEARNINGELERHETOSEG ee ON tta.C_TANEVID = ee.C_TANEVID AND ee.TOROLT = 'F'
|
||||
INNER JOIN dev.ElearningKurzusEvfolyamMapping mp ON mp.Azonosito = ee.C_ELEARNINGAZONOSITO AND tta.C_TANULOEVFOLYAMTIPUSID = mp.evfolyamId
|
||||
INNER JOIN T_TANULOCSOPORT tcs ON tcs.ID = tta.C_TANULOCSOPORTID AND tcs.TOROLT = 'F'
|
||||
INNER JOIN T_TANEV tv ON tv.ID = ee.C_TANEVID
|
||||
AND tv.TOROLT='F'
|
||||
AND tv.C_AKTIV = 'T'
|
||||
INNER JOIN T_OSZTALYCSOPORT ocs ON ocs.ID = tcs.C_OSZTALYCSOPORTID AND ocs.TOROLT = 'F'
|
||||
WHERE ee.TOROLT='F'
|
||||
AND ocs.C_FELADATKATEGORIAID = 7553
|
||||
AND NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM T_ELEARNINGFELHASZNALO efh
|
||||
WHERE efh.C_TANEVID = ee.C_TANEVID AND efh.C_ELEARNINGELERHETOSEGID = ee.ID AND efh.C_FELHASZNALOID = tcs.C_TANULOID AND efh.C_GONDVISELOID IS NULL AND efh.TOROLT='F'
|
||||
)
|
||||
END
|
||||
END
|
||||
GO
|
||||
--------------------------------------------------------------------------------------------
|
||||
DROP TRIGGER IF EXISTS [dbo].[tru_TanuloCsoport_ElearningFelhasznalo]
|
||||
GO
|
||||
|
||||
CREATE TRIGGER [dbo].[tru_TanuloCsoport_ElearningFelhasznalo]
|
||||
ON [dbo].[T_TANULOCSOPORT]
|
||||
WITH EXECUTE AS 'Kreta_tech_user'
|
||||
AFTER INSERT
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
IF UPDATE (C_OSZTALYCSOPORTID) BEGIN
|
||||
|
||||
--elearningfelhasznalo beszúrása
|
||||
INSERT INTO T_ELEARNINGFELHASZNALO (
|
||||
C_ELEARNINGELERHETOSEGID
|
||||
,C_FELHASZNALOID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,TOROLT
|
||||
,SERIAL
|
||||
) SELECT
|
||||
ee.ID AS C_ELEARNINGELERHETOSEGID
|
||||
,tcs.C_TANULOID AS C_FELHASZNALOID
|
||||
,tcs.C_INTEZMENYID AS C_INTEZMENYID
|
||||
,tcs.C_TANEVID AS C_TANEVID
|
||||
,'F' AS TOROLT
|
||||
,0 AS SERIAL
|
||||
FROM inserted tcs
|
||||
INNER JOIN T_ELEARNINGELERHETOSEG ee ON ee.C_TANEVID = tcs.C_TANEVID
|
||||
INNER JOIN T_OSZTALYCSOPORT ocs ON tcs.C_OSZTALYCSOPORTID = ocs.ID AND ocs.C_TANEVID = ee.C_TANEVID AND ocs.TOROLT='F'
|
||||
INNER JOIN dev.ElearningKurzusEvfolyamMapping mp ON mp.Azonosito = ee.C_ELEARNINGAZONOSITO AND ocs.C_EVFOLYAMTIPUSA = mp.evfolyamId
|
||||
INNER JOIN T_TANEV tv ON tv.ID = ee.C_TANEVID AND tv.TOROLT = 'F' AND tv.C_AKTIV = 'T'
|
||||
WHERE ee.TOROLT='F'
|
||||
AND ocs.C_FELADATKATEGORIAID = 7553
|
||||
AND NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM T_ELEARNINGFELHASZNALO efh
|
||||
WHERE efh.C_TANEVID = tcs.C_TANEVID AND efh.TOROLT='F' AND efh.C_ELEARNINGELERHETOSEGID = ee.ID AND efh.C_FELHASZNALOID = tcs.C_TANULOID
|
||||
)
|
||||
END
|
||||
END
|
||||
GO
|
||||
--------------------------------------------------------------------------------------------
|
||||
DROP TRIGGER IF EXISTS [dbo].[tru_OsztalyCsoport_ElearningFelhasznalo]
|
||||
GO
|
||||
|
||||
CREATE TRIGGER [dbo].[tru_OsztalyCsoport_ElearningFelhasznalo]
|
||||
ON [dbo].[T_OSZTALYCSOPORT]
|
||||
WITH EXECUTE AS 'Kreta_tech_user'
|
||||
AFTER UPDATE
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
IF UPDATE (C_EVFOLYAMTIPUSA) BEGIN
|
||||
|
||||
--elearningfelhasznalo beszúrása, tanuló
|
||||
INSERT INTO T_ELEARNINGFELHASZNALO (
|
||||
C_ELEARNINGELERHETOSEGID
|
||||
,C_FELHASZNALOID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,TOROLT
|
||||
,SERIAL
|
||||
) SELECT DISTINCT
|
||||
ee.ID AS C_ELEARNINGELERHETOSEGID
|
||||
,tcs.C_TANULOID AS C_FELHASZNALOID
|
||||
,ocs.C_INTEZMENYID AS C_INTEZMENYID
|
||||
,ocs.C_TANEVID AS C_TANEVID
|
||||
,'F' AS TOROLT
|
||||
,0 AS SERIAL
|
||||
FROM Inserted ocs
|
||||
INNER JOIN T_OSZTALY o ON o.ID = ocs.ID AND o.TOROLT = 'F'
|
||||
INNER JOIN T_ELEARNINGELERHETOSEG ee ON ocs.C_TANEVID = ee.C_TANEVID
|
||||
INNER JOIN dev.ElearningKurzusEvfolyamMapping mp ON mp.Azonosito = ee.C_ELEARNINGAZONOSITO AND ocs.C_EVFOLYAMTIPUSA = mp.evfolyamId
|
||||
INNER JOIN T_TANULOCSOPORT tcs ON tcs.TOROLT = 'F' AND tcs.C_TANEVID = ee.C_TANEVID
|
||||
AND tcs.C_OSZTALYCSOPORTID = ocs.ID
|
||||
INNER JOIN T_TANEV tv ON tv.ID = ee.C_TANEVID AND tv.TOROLT = 'F' AND tv.C_AKTIV = 'T'
|
||||
WHERE ocs.TOROLT = 'F'
|
||||
AND ocs.C_FELADATKATEGORIAID = 7553
|
||||
AND NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM T_ELEARNINGFELHASZNALO efh
|
||||
WHERE efh.C_TANEVID = ocs.C_TANEVID AND TOROLT='F' AND efh.C_ELEARNINGELERHETOSEGID = ee.ID AND efh.C_FELHASZNALOID = tcs.C_TANULOID
|
||||
)
|
||||
|
||||
--elearningfelhasznalo beszúrása, tanuló, összevont osztály
|
||||
INSERT INTO T_ELEARNINGFELHASZNALO (
|
||||
C_ELEARNINGELERHETOSEGID
|
||||
,C_FELHASZNALOID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,TOROLT
|
||||
,SERIAL
|
||||
)
|
||||
SELECT DISTINCT
|
||||
ee.ID AS C_ELEARNINGELERHETOSEGID
|
||||
,tcs.C_TANULOID AS C_FELHASZNALOID
|
||||
,ocs.C_INTEZMENYID AS C_INTEZMENYID
|
||||
,ocs.C_TANEVID AS C_TANEVID
|
||||
,'F' AS TOROLT
|
||||
,0 AS SERIAL
|
||||
FROM Inserted ocs
|
||||
INNER JOIN T_OSZTALY o ON o.ID = ocs.ID AND o.TOROLT = 'F'
|
||||
INNER JOIN T_ELEARNINGELERHETOSEG ee ON ocs.C_TANEVID = ee.C_TANEVID AND ee.TOROLT = 'F'
|
||||
INNER JOIN T_TANULOCSOPORT tcs ON tcs.TOROLT = 'F' AND tcs.C_TANEVID = ee.C_TANEVID
|
||||
INNER JOIN T_TANULOTANUGYIADATOK tta ON tta.C_TANULOCSOPORTID = tcs.ID AND tta.TOROLT = 'F'
|
||||
AND tcs.C_OSZTALYCSOPORTID = ocs.ID
|
||||
INNER JOIN dev.ElearningKurzusEvfolyamMapping mp ON mp.Azonosito = ee.C_ELEARNINGAZONOSITO
|
||||
AND tta.C_TANULOEVFOLYAMTIPUSID = mp.evfolyamId
|
||||
INNER JOIN T_TANEV tv ON tv.ID = ee.C_TANEVID AND tv.TOROLT = 'F' AND tv.C_AKTIV = 'T'
|
||||
WHERE ocs.C_EVFOLYAMTIPUSA = 7366
|
||||
AND ocs.C_FELADATKATEGORIAID = 7553
|
||||
AND ocs.TOROLT = 'F'
|
||||
AND NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM T_ELEARNINGFELHASZNALO efh
|
||||
WHERE efh.C_TANEVID = ocs.C_TANEVID AND TOROLT='F' AND efh.C_ELEARNINGELERHETOSEGID = ee.ID AND efh.C_FELHASZNALOID = tcs.C_TANULOID
|
||||
)
|
||||
END
|
||||
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,317 @@
|
|||
-- random szám generálása
|
||||
DROP VIEW IF EXISTS dev.vGetRand;
|
||||
GO
|
||||
|
||||
CREATE VIEW dev.vGetRand AS
|
||||
SELECT RAND(CHECKSUM(NEWID())) AS RandomNumber
|
||||
GO
|
||||
|
||||
DROP VIEW IF EXISTS V_ORARENDIORA
|
||||
GO
|
||||
|
||||
CREATE VIEW V_ORARENDIORA AS
|
||||
SELECT
|
||||
oo.ID
|
||||
,oo.C_ORARENDIORAGROUPID
|
||||
,oo.TOROLT
|
||||
,oo.C_TANTARGYID
|
||||
,tgy.C_NEV AS C_TANTARGYNEV
|
||||
,oo.C_OSZTALYCSOPORTID
|
||||
,ocs.C_NEV AS C_OSZTALYCSOPORTNEV
|
||||
,oo.C_TANARID
|
||||
,pg.C_NYOMTATASINEV AS C_TANARNEV
|
||||
,oo.C_ORAERVENYESSEGKEZDETE
|
||||
,oo.C_ORAERVENYESSEGVEGE
|
||||
,oo.C_ORASZAM
|
||||
,oo.C_ORAKEZDETE
|
||||
,oo.C_ORAVEGE
|
||||
,oo.C_CSENGETESIRENDID
|
||||
,oo.C_CSENGETESIRENDORAID
|
||||
,oo.C_HETIREND
|
||||
,hrt.C_NAME AS C_HETIRENDNEV
|
||||
,oo.C_HETNAPJA
|
||||
,hnt.C_NAME AS C_HETNAPJANEV
|
||||
,oo.C_TEREMID
|
||||
,tr.C_NEV AS C_TEREMNEV
|
||||
,oo.C_TANEVID
|
||||
,oo.C_INTEZMENYID
|
||||
,oo.LASTCHANGED
|
||||
,oo.CREATED
|
||||
,oo.MODIFIER
|
||||
,oo.CREATOR
|
||||
FROM T_ORARENDIORA oo WITH(NOLOCK)
|
||||
LEFT JOIN T_OSZTALYCSOPORT ocs WITH(NOLOCK) ON ocs.ID = oo.C_OSZTALYCSOPORTID
|
||||
LEFT JOIN T_TANTARGY tgy WITH(NOLOCK) ON tgy.ID = oo.C_TANTARGYID
|
||||
LEFT JOIN T_FELHASZNALO pg WITH(NOLOCK) ON pg.ID = oo.C_TANARID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE hrt WITH(NOLOCK) ON hrt.ID = oo.C_HETIREND AND hrt.C_TANEVID = oo.C_TANEVID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE hnt WITH(NOLOCK) ON hnt.ID = oo.C_HETNAPJA AND hnt.C_TANEVID = oo.C_TANEVID
|
||||
LEFT JOIN T_TEREM tr WITH(NOLOCK) ON tr.ID = oo.C_TEREMID
|
||||
GO
|
||||
|
||||
DROP VIEW IF EXISTS V_TANITASIORA
|
||||
GO
|
||||
|
||||
CREATE VIEW V_TANITASIORA AS
|
||||
SELECT
|
||||
tn.ID
|
||||
,tn.C_ORARENDIORAGROUPID
|
||||
,tn.C_DATUM
|
||||
,tn.TOROLT
|
||||
,tn.C_TANTARGYID
|
||||
,tgy.C_NEV AS C_TANTARGYNEV
|
||||
,tn.C_OSZTALYCSOPORTID
|
||||
,ocs.C_NEV AS C_OSZTALYCSOPORTNEV
|
||||
,tn.C_TANARID
|
||||
,pg.C_NYOMTATASINEV AS C_TANARNEV
|
||||
,tn.C_HELYETTESITOTANARID
|
||||
,pgh.C_NYOMTATASINEV AS C_HELYETTESITOTANARNEV
|
||||
,tn.C_ORASZAM
|
||||
,tn.C_TEMA
|
||||
,tn.C_ORAKEZDETE
|
||||
,tn.C_ORAVEGE
|
||||
,tn.C_CSENGETESIRENDID
|
||||
,tn.C_CSENGETESIRENDORAID
|
||||
,tn.C_HETNAPJA
|
||||
,hnt.C_NAME AS C_HETNAPJANEV
|
||||
,tn.C_TEREMID
|
||||
,tr.C_NEV AS C_TEREMNEV
|
||||
,tn.C_TANEVID
|
||||
,tn.C_INTEZMENYID
|
||||
,tn.LASTCHANGED
|
||||
,tn.CREATED
|
||||
,tn.MODIFIER
|
||||
,tn.CREATOR
|
||||
FROM T_TANITASIORA tn WITH(NOLOCK)
|
||||
LEFT JOIN T_OSZTALYCSOPORT ocs WITH(NOLOCK) ON ocs.ID = tn.C_OSZTALYCSOPORTID
|
||||
LEFT JOIN T_TANTARGY tgy WITH(NOLOCK) ON tgy.ID = tn.C_TANTARGYID
|
||||
LEFT JOIN T_FELHASZNALO pg WITH(NOLOCK) ON pg.ID = tn.C_TANARID
|
||||
LEFT JOIN T_FELHASZNALO pgh WITH(NOLOCK) ON pgh.ID = tn.C_HELYETTESITOTANARID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE hnt WITH(NOLOCK) ON hnt.ID = tn.C_HETNAPJA AND hnt.C_TANEVID = tn.C_TANEVID
|
||||
LEFT JOIN T_TEREM tr WITH(NOLOCK) ON tr.ID = tn.C_TEREMID
|
||||
GO
|
||||
|
||||
DROP VIEW IF EXISTS V_TANULOCSOPORT
|
||||
GO
|
||||
|
||||
CREATE VIEW V_TANULOCSOPORT AS
|
||||
SELECT
|
||||
tcs.ID
|
||||
,tcs.TOROLT
|
||||
,tcs.C_TANULOID
|
||||
,dk.C_NYOMTATASINEV AS C_TANULONEV
|
||||
,tcs.C_OSZTALYCSOPORTID
|
||||
,ocs.C_NEV AS C_OSZTALYCSOPORTNEV
|
||||
,IIF(tta.ID IS NULL, 'CSOP', 'OSZT') AS C_OSZTALYCSOPORTTIPUS
|
||||
,ocs.C_FELADATKATEGORIAID
|
||||
,fk.C_NAME AS C_FELADATKATEGORIANEV
|
||||
,tcs.C_BELEPESDATUM
|
||||
,tcs.C_KILEPESDATUM
|
||||
,tcs.C_BEJEGYZESIDOPONTJA
|
||||
,tcs.C_KILEPESROGZITESDATUM
|
||||
,tcs.C_INTEZMENYID
|
||||
,tcs.C_TANEVID
|
||||
,tcs.LASTCHANGED
|
||||
,tcs.CREATED
|
||||
,tcs.MODIFIER
|
||||
,tcs.CREATOR
|
||||
FROM T_TANULOCSOPORT tcs WITH(NOLOCK)
|
||||
LEFT JOIN T_OSZTALYCSOPORT ocs WITH(NOLOCK) ON ocs.ID = tcs.C_OSZTALYCSOPORTID
|
||||
LEFT JOIN T_FELHASZNALO dk WITH(NOLOCK) ON dk.ID = tcs.C_TANULOID
|
||||
LEFT JOIN T_TANULOTANUGYIADATOK tta WITH(NOLOCK) ON tta.C_TANULOCSOPORTID = tcs.ID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE fk WITH(NOLOCK) ON fk.ID = ocs.C_FELADATKATEGORIAID AND fk.C_TANEVID = ocs.C_TANEVID
|
||||
GO
|
||||
|
||||
DROP VIEW IF EXISTS V_ENTITYHISTORYBLOB
|
||||
GO
|
||||
|
||||
CREATE VIEW V_ENTITYHISTORYBLOB AS
|
||||
SELECT
|
||||
e.ID
|
||||
,e.C_ENTITYID
|
||||
,e.C_ENTITYNAME
|
||||
,e.C_ALTERATIONDATE
|
||||
,e.C_REASON
|
||||
,e.C_FELHASZNALOID
|
||||
,e.C_INTEZMENYID
|
||||
,e.C_TANEVID
|
||||
,ev.C_ORIGINALVALUE
|
||||
,ev.C_CURRENTVALUE
|
||||
,ev.C_PROPERTYNAME
|
||||
,COALESCE(f.C_NYOMTATASINEV, u.USERNAME) AS C_FELHASZNALONEV
|
||||
,e.HOSTNAME AS C_HOSTNAME
|
||||
FROM T_ENTITYHISTORY e WITH(NOLOCK)
|
||||
INNER JOIN T_ENTITYBLOBVALUES ev WITH(NOLOCK) ON ev.C_ENTITYHISTORYID = e.ID
|
||||
LEFT JOIN T_FELHASZNALO f WITH(NOLOCK) ON f.ID = e.C_FELHASZNALOID
|
||||
LEFT JOIN auditlog.Users u WITH(NOLOCK) ON u.USERID = e.C_FELHASZNALOID
|
||||
GO
|
||||
|
||||
DROP VIEW IF EXISTS V_ENTITYHISTORY
|
||||
GO
|
||||
|
||||
CREATE VIEW V_ENTITYHISTORY AS
|
||||
-- T_ENTITYBLOBVALUES
|
||||
SELECT
|
||||
e.ID
|
||||
,e.C_ENTITYID
|
||||
,e.C_ENTITYNAME
|
||||
,e.C_ALTERATIONDATE
|
||||
,e.C_REASON
|
||||
,e.C_FELHASZNALOID
|
||||
,e.C_INTEZMENYID
|
||||
,e.C_TANEVID
|
||||
,ev.C_ORIGINALVALUE
|
||||
,ev.C_CURRENTVALUE
|
||||
,ev.C_PROPERTYNAME
|
||||
,COALESCE(f.C_NYOMTATASINEV, u.USERNAME) AS C_FELHASZNALONEV
|
||||
,e.HOSTNAME AS C_HOSTNAME
|
||||
FROM T_ENTITYHISTORY e WITH(NOLOCK)
|
||||
INNER JOIN T_ENTITYBLOBVALUES ev WITH(NOLOCK) ON ev.C_ENTITYHISTORYID = e.ID
|
||||
LEFT JOIN T_FELHASZNALO f WITH(NOLOCK) ON f.ID = e.C_FELHASZNALOID
|
||||
LEFT JOIN auditlog.Users u WITH(NOLOCK) ON u.USERID = e.C_FELHASZNALOID
|
||||
|
||||
UNION ALL
|
||||
|
||||
-- T_ENTITYATTRIBUTEHISTORY
|
||||
SELECT
|
||||
e.ID
|
||||
,e.C_ENTITYID
|
||||
,e.C_ENTITYNAME
|
||||
,e.C_ALTERATIONDATE
|
||||
,e.C_REASON
|
||||
,e.C_FELHASZNALOID
|
||||
,e.C_INTEZMENYID
|
||||
,e.C_TANEVID
|
||||
,ea.C_ORIGINALVALUE
|
||||
,ea.C_CURRENTVALUE
|
||||
,ea.C_PROPERTYNAME
|
||||
,COALESCE(f.C_NYOMTATASINEV, u.USERNAME) AS C_FELHASZNALONEV
|
||||
,e.HOSTNAME AS C_HOSTNAME
|
||||
FROM dbo.T_ENTITYHISTORY e WITH(NOLOCK)
|
||||
LEFT JOIN dbo.T_ENTITYATTRIBUTEHISTORY ea WITH(NOLOCK) ON ea.C_ENTITYHISTORYID = e.ID
|
||||
LEFT JOIN dbo.T_FELHASZNALO f WITH(NOLOCK) ON f.ID = e.C_FELHASZNALOID
|
||||
LEFT JOIN auditlog.Users u WITH(NOLOCK) ON u.USERID = e.C_FELHASZNALOID
|
||||
WHERE EXISTS(SELECT * FROM dbo.T_ENTITYATTRIBUTEHISTORY h WITH(NOLOCK) WHERE h.C_ENTITYHISTORYID = e.ID) -- performancia miatt
|
||||
GO
|
||||
|
||||
DROP VIEW IF EXISTS V_INTEZMENYADATOK
|
||||
GO
|
||||
|
||||
CREATE VIEW V_INTEZMENYADATOK AS
|
||||
SELECT
|
||||
i.ID AS C_INTEZMENYID
|
||||
,tv.ID AS C_TANEVID
|
||||
,i.C_AZONOSITO
|
||||
,i.C_ISARCHIV
|
||||
,tv.C_NEV AS C_TANEVNEV
|
||||
,CASE
|
||||
WHEN tv.C_AKTIV = 'T' THEN 'Akt'
|
||||
WHEN tv.C_KOVETKEZO = 'T' THEN 'Köv'
|
||||
WHEN tvAkt.C_SORSZAM < tv.C_SORSZAM THEN 'Új'
|
||||
ELSE 'Régi' END AS C_TANEVTIPUS
|
||||
,tv.C_AKTIVALVA
|
||||
,i.C_FENNTARTOAZONOSITO
|
||||
,ia.C_NEV
|
||||
,ia.C_IGAZGATONEVE
|
||||
,ia.C_OMKOD
|
||||
,i.C_GUID
|
||||
,tv.C_SORSZAM
|
||||
,tv.C_ISKIVALASZTHATO
|
||||
,ia.C_KRETAESL
|
||||
,ia.C_KRETAEUGYINTEZES
|
||||
,ia.C_ISCSAKLEPKEZELO
|
||||
,ia.C_ISBAISTATUSZAKTIV
|
||||
,ia.C_ISSZIRINTEZMENY
|
||||
,ia.C_ISSZAKKEPZO
|
||||
,ia.C_ISDKTAKTIV
|
||||
,ia.C_ISSZAKKEPZOJUTTATAS
|
||||
,ia.C_ISAKTIVPROJEKTJELENTKEZES
|
||||
FROM T_INTEZMENY i WITH(NOLOCK)
|
||||
LEFT JOIN T_TANEV tvAkt ON tvAkt.C_INTEZMENYID = i.ID AND tvAkt.C_AKTIV = 'T'
|
||||
LEFT JOIN T_TANEV tv WITH(NOLOCK) ON i.ID = tv.C_INTEZMENYID
|
||||
LEFT JOIN T_INTEZMENYADATOK ia WITH(NOLOCK) ON ia.C_TANEVID = tv.ID
|
||||
WHERE tv.TOROLT = 'F'
|
||||
GO
|
||||
|
||||
DROP VIEW IF EXISTS V_TANEVRENDJE
|
||||
GO
|
||||
|
||||
CREATE VIEW V_TANEVRENDJE AS
|
||||
SELECT
|
||||
tr.ID
|
||||
,tr.TOROLT
|
||||
,tr.C_DATUM
|
||||
,tr.C_HETIREND
|
||||
,hr.C_NAME AS C_HETIRENDNEV
|
||||
,tr.C_HETNAPJA
|
||||
,hn.C_NAME AS C_HETNAPJANEV
|
||||
,tr.C_NAPTIPUSA
|
||||
,nt.C_NAME AS C_NAPTIPUSANEV
|
||||
,tr.C_ORARENDINAP
|
||||
,tr.C_OSSZESCSOPORTRAVONATKOZIK
|
||||
,tr.C_EGYEDINAP
|
||||
,tr.C_MEGJEGYZES
|
||||
,tr.C_INTEZMENYID
|
||||
,tr.C_TANEVID
|
||||
,tr.LASTCHANGED
|
||||
,tr.CREATED
|
||||
,tr.MODIFIER
|
||||
,tr.CREATOR
|
||||
FROM T_TANEVRENDJE tr WITH(NOLOCK)
|
||||
LEFT JOIN T_DICTIONARYITEMBASE hr WITH(NOLOCK) ON hr.ID = tr.C_HETIREND AND hr.C_TANEVID = tr.C_TANEVID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE hn WITH(NOLOCK) ON hn.ID = tr.C_HETNAPJA AND hn.C_TANEVID = tr.C_TANEVID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE nt WITH(NOLOCK) ON nt.ID = tr.C_NAPTIPUSA AND nt.C_TANEVID = tr.C_TANEVID
|
||||
GO
|
||||
|
||||
DROP VIEW IF EXISTS V_INTEZMENYCONFIG
|
||||
GO
|
||||
|
||||
CREATE VIEW V_INTEZMENYCONFIG AS
|
||||
SELECT
|
||||
i.ID AS C_INTEZMENYID
|
||||
,i.C_AZONOSITO
|
||||
,c.ID AS C_CONFIGID
|
||||
,c.C_MODUL
|
||||
,c.C_CONFIG
|
||||
,ic.C_ERTEK
|
||||
FROM T_INTEZMENY i
|
||||
LEFT JOIN T_INTEZMENYCONFIG ic ON ic.C_INTEZMENYID = i.ID AND ic.TOROLT = 'F'
|
||||
LEFT JOIN T_CONFIGTIPUS c ON c.ID = ic.C_CONFIGTIPUSID AND c.TOROLT = 'F'
|
||||
GO
|
||||
|
||||
DROP VIEW IF EXISTS dbo.V_TANULOMULASZTAS
|
||||
GO
|
||||
|
||||
CREATE VIEW dbo.V_TANULOMULASZTAS AS
|
||||
SELECT
|
||||
mu.ID
|
||||
,mu.TOROLT
|
||||
,mu.C_IGAZOLT
|
||||
,tn.C_DATUM
|
||||
,tgy.C_NEV AS C_TANTARGYNEV
|
||||
,ocs.C_NEV AS C_OSZTALYCSOPORTNEV
|
||||
,mu.C_KESESPERCBEN
|
||||
,mu.C_TIPUS
|
||||
,d1.C_NAME as C_TIPUSNEV
|
||||
,mu.C_IGAZOLASTIPUSA
|
||||
,d2.C_NAME as C_IGAZOLASTIPUSNEV
|
||||
,mu.C_ISERTESITESELKULDVE
|
||||
,mu.C_INTEZMENYID
|
||||
,mu.C_TANEVID
|
||||
,mu.C_ORATANULOIID
|
||||
,fh.C_NYOMTATASINEV AS C_ORATANULONEV
|
||||
,mu.C_TANITASIORAKID
|
||||
,mu.SERIAL
|
||||
,mu.LASTCHANGED
|
||||
,mu.CREATED
|
||||
,mu.MODIFIER
|
||||
,mu.CREATOR
|
||||
,mu.ELOZOTANEVIREKORDID
|
||||
FROM T_TANULOMULASZTAS mu WITH (NOLOCK)
|
||||
LEFT JOIN T_DICTIONARYITEMBASE d1 WITH (NOLOCK) on d1.ID = mu.C_TIPUS and d1.C_TANEVID = mu.C_TANEVID and d1.C_TYPE = 'MulasztasTipus' and d1.TOROLT = 'F'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE d2 WITH (NOLOCK) on d2.ID = mu.C_IGAZOLASTIPUSA and d2.C_TANEVID = mu.C_TANEVID and d2.C_TYPE = 'IgazolasTipus' and d2.TOROLT = 'F'
|
||||
LEFT JOIN T_FELHASZNALO fh WITH (NOLOCK) on fh.ID = mu.C_ORATANULOIID
|
||||
LEFT JOIN T_TANITASIORA tn WITH (NOLOCK) ON tn.ID = mu.C_TANITASIORAKID
|
||||
LEFT JOIN T_TANTARGY tgy WITH (NOLOCK) ON tgy.ID = tn.C_TANTARGYID
|
||||
LEFT JOIN T_OSZTALYCSOPORT ocs WITH (NOLOCK) ON ocs.ID = tn.C_OSZTALYCSOPORTID
|
||||
GO
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
EXEC dev.uspCreateSchemaViews
|
||||
@pTables = NULL
|
||||
,@pSchemas = 'dbo'
|
||||
,@pDebugMode = 0
|
|
@ -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
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue