init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,625 @@
|
|||
GO
|
||||
SET ANSI_NULLS, ANSI_PADDING, ANSI_WARNINGS, ARITHABORT, CONCAT_NULL_YIELDS_NULL, QUOTED_IDENTIFIER ON;
|
||||
|
||||
SET NUMERIC_ROUNDABORT OFF;
|
||||
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Dropping [dbo].[T_ORARENDIORA].[C_TANORANKIVULIFOGLALKOZAS].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE sp_dropextendedproperty @name = N'MS_Description', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_ORARENDIORA', @level2type = N'COLUMN', @level2name = N'C_TANORANKIVULIFOGLALKOZAS';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Dropping [dbo].[T_OSZTALY].[C_TECHNIKAIOSZTALY].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE sp_dropextendedproperty @name = N'MS_Description', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_OSZTALY', @level2type = N'COLUMN', @level2name = N'C_TECHNIKAIOSZTALY';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Dropping [dbo].[T_TANITASIORA].[C_TANORANKIVULIFOGLALKOZAS].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE sp_dropextendedproperty @name = N'MS_Description', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANITASIORA', @level2type = N'COLUMN', @level2name = N'C_TANORANKIVULIFOGLALKOZAS';
|
||||
|
||||
|
||||
GO
|
||||
DECLARE @sql NVARCHAR(MAX) = ''
|
||||
|
||||
SELECT @sql += 'ALTER TABLE ' + tables.name + ' DROP CONSTRAINT IF EXISTS ' + default_constraints.name + ';' + char(13) + char(10)
|
||||
FROM sys.all_columns
|
||||
INNER JOIN sys.tables ON all_columns.object_id = tables.object_id
|
||||
INNER JOIN sys.schemas ON tables.schema_id = schemas.schema_id
|
||||
INNER JOIN sys.default_constraints ON all_columns.default_object_id = default_constraints.object_id
|
||||
WHERE schemas.name = 'dbo'
|
||||
AND tables.name = 'T_ORARENDIORA'
|
||||
AND all_columns.name IN ('C_TANORANKIVULIFOGLALKOZAS')
|
||||
|
||||
SELECT @sql += 'ALTER TABLE ' + tables.name + ' DROP CONSTRAINT IF EXISTS ' + default_constraints.name + ';' + char(13) + char(10)
|
||||
FROM sys.all_columns
|
||||
INNER JOIN sys.tables ON all_columns.object_id = tables.object_id
|
||||
INNER JOIN sys.schemas ON tables.schema_id = schemas.schema_id
|
||||
INNER JOIN sys.default_constraints ON all_columns.default_object_id = default_constraints.object_id
|
||||
WHERE schemas.name = 'dbo'
|
||||
AND tables.name = 'T_TANULO'
|
||||
AND all_columns.name IN ('C_SNILETSZAMSULY')
|
||||
|
||||
SELECT @sql += 'ALTER TABLE ' + tables.name + ' DROP CONSTRAINT IF EXISTS ' + default_constraints.name + ';' + char(13) + char(10)
|
||||
FROM sys.all_columns
|
||||
INNER JOIN sys.tables ON all_columns.object_id = tables.object_id
|
||||
INNER JOIN sys.schemas ON tables.schema_id = schemas.schema_id
|
||||
INNER JOIN sys.default_constraints ON all_columns.default_object_id = default_constraints.object_id
|
||||
WHERE schemas.name = 'dbo'
|
||||
AND tables.name = 'T_TANITASIORA'
|
||||
AND all_columns.name IN ('C_TANORANKIVULIFOGLALKOZAS')
|
||||
|
||||
SELECT @sql += 'ALTER TABLE ' + tables.name + ' DROP CONSTRAINT IF EXISTS ' + default_constraints.name + ';' + char(13) + char(10)
|
||||
FROM sys.all_columns
|
||||
INNER JOIN sys.tables ON all_columns.object_id = tables.object_id
|
||||
INNER JOIN sys.schemas ON tables.schema_id = schemas.schema_id
|
||||
INNER JOIN sys.default_constraints ON all_columns.default_object_id = default_constraints.object_id
|
||||
WHERE schemas.name = 'dbo'
|
||||
AND tables.name = 'T_OSZTALY'
|
||||
AND all_columns.name IN ('C_TECHNIKAIOSZTALY')
|
||||
|
||||
|
||||
EXEC sp_executesql @sql
|
||||
|
||||
GO
|
||||
PRINT N'Altering [dbo].[T_FELHASZNALO]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_FELHASZNALO]
|
||||
ADD [C_MEGJEGYZES] NVARCHAR (500) NULL;
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Altering [dbo].[T_ORARENDIORA]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_ORARENDIORA] DROP COLUMN [C_TANORANKIVULIFOGLALKOZAS];
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Altering [dbo].[T_OSZTALYCSOPORT]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_OSZTALYCSOPORT]
|
||||
ADD [C_ISTECHNIKAI] CHAR (1) DEFAULT ('F') NOT NULL;
|
||||
|
||||
GO
|
||||
UPDATE ocs
|
||||
SET ocs.C_ISTECHNIKAI = o.C_TECHNIKAIOSZTALY
|
||||
FROM T_OSZTALYCSOPORT ocs
|
||||
INNER JOIN T_OSZTALY o ON o.ID = ocs.ID
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Altering [dbo].[T_OSZTALY]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_OSZTALY] DROP COLUMN [C_TECHNIKAIOSZTALY];
|
||||
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Altering [dbo].[T_TANITASIORA]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_TANITASIORA] DROP COLUMN [C_TANORANKIVULIFOGLALKOZAS];
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Altering [dbo].[T_TANTARGY]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_TANTARGY]
|
||||
ADD [C_MEGJEGYZES] NVARCHAR (500) NULL,
|
||||
[C_MUFAJTANSZAKID] INT DEFAULT ((7815)) NOT NULL,
|
||||
[C_SORSZAM] INT DEFAULT ((1000)) NOT NULL;
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Altering [dbo].[T_TANULO]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_TANULO] ALTER COLUMN [C_SNILETSZAMSULY] INT NOT NULL;
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_TANULO]
|
||||
ADD [C_TANTERVIJELLEMZOID] INT NULL;
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Altering [dbo].[T_TANULOTANUGYIADATOK]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_TANULOTANUGYIADATOK]
|
||||
ADD [C_TANTERVIJELLEMZOID] INT NULL;
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Altering [dbo].[T_TEREM]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_TEREM]
|
||||
ADD [C_MEGJEGYZES] NVARCHAR (500) NULL;
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_MUFAJTANSZAKTIPUS]...';
|
||||
|
||||
|
||||
GO
|
||||
CREATE TABLE [dbo].[T_MUFAJTANSZAKTIPUS] (
|
||||
[ID] INT NOT NULL,
|
||||
[C_ALINTEZMENYID] INT NOT NULL,
|
||||
[C_ALTANEVID] INT 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,
|
||||
[ELOZOTANEVIREKORDID] INT NULL,
|
||||
[ELOZOTANEVIREKORDIDA] INT NULL,
|
||||
[NNID] INT NULL,
|
||||
CONSTRAINT [PK_MufajTanszakTipus] PRIMARY KEY CLUSTERED ([ID] ASC, [C_ALINTEZMENYID] ASC, [C_ALTANEVID] ASC)
|
||||
);
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_TANTERVIJELLEMZOTIPUS]...';
|
||||
|
||||
|
||||
GO
|
||||
CREATE TABLE [dbo].[T_TANTERVIJELLEMZOTIPUS] (
|
||||
[ID] INT NOT NULL,
|
||||
[C_ALINTEZMENYID] INT NOT NULL,
|
||||
[C_ALTANEVID] INT 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,
|
||||
[ELOZOTANEVIREKORDID] INT NULL,
|
||||
[ELOZOTANEVIREKORDIDA] INT NULL,
|
||||
[NNID] INT NULL,
|
||||
CONSTRAINT [PK_TanterviJellemzoTipus] PRIMARY KEY CLUSTERED ([ID] ASC, [C_ALINTEZMENYID] ASC, [C_ALTANEVID] ASC)
|
||||
);
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating unnamed constraint on [dbo].[T_TANULO]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_TANULO]
|
||||
ADD DEFAULT ((1)) FOR [C_SNILETSZAMSULY];
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating unnamed constraint on [dbo].[T_MUFAJTANSZAKTIPUS]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_MUFAJTANSZAKTIPUS]
|
||||
ADD DEFAULT ('F') FOR [TOROLT];
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating unnamed constraint on [dbo].[T_MUFAJTANSZAKTIPUS]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_MUFAJTANSZAKTIPUS]
|
||||
ADD DEFAULT ((0)) FOR [SERIAL];
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating unnamed constraint on [dbo].[T_MUFAJTANSZAKTIPUS]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_MUFAJTANSZAKTIPUS]
|
||||
ADD DEFAULT (getdate()) FOR [CREATED];
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating unnamed constraint on [dbo].[T_MUFAJTANSZAKTIPUS]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_MUFAJTANSZAKTIPUS]
|
||||
ADD DEFAULT (getdate()) FOR [LASTCHANGED];
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating unnamed constraint on [dbo].[T_TANTERVIJELLEMZOTIPUS]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_TANTERVIJELLEMZOTIPUS]
|
||||
ADD DEFAULT ((0)) FOR [SERIAL];
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating unnamed constraint on [dbo].[T_TANTERVIJELLEMZOTIPUS]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_TANTERVIJELLEMZOTIPUS]
|
||||
ADD DEFAULT (getdate()) FOR [LASTCHANGED];
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating unnamed constraint on [dbo].[T_TANTERVIJELLEMZOTIPUS]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_TANTERVIJELLEMZOTIPUS]
|
||||
ADD DEFAULT ('F') FOR [TOROLT];
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating unnamed constraint on [dbo].[T_TANTERVIJELLEMZOTIPUS]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_TANTERVIJELLEMZOTIPUS]
|
||||
ADD DEFAULT (getdate()) FOR [CREATED];
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[FK_MufajTanszakTipus_Id_AlintezmenyId_AltanevId_REF_DictionaryItemBase]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_MUFAJTANSZAKTIPUS] WITH NOCHECK
|
||||
ADD CONSTRAINT [FK_MufajTanszakTipus_Id_AlintezmenyId_AltanevId_REF_DictionaryItemBase] FOREIGN KEY ([ID], [C_ALINTEZMENYID], [C_ALTANEVID]) REFERENCES [dbo].[T_DICTIONARYITEMBASE] ([ID], [C_INTEZMENYID], [C_TANEVID]);
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[FK_MufajTanszakTipus_AlIntezmenyId_REF_Intezmeny]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_MUFAJTANSZAKTIPUS] WITH NOCHECK
|
||||
ADD CONSTRAINT [FK_MufajTanszakTipus_AlIntezmenyId_REF_Intezmeny] FOREIGN KEY ([C_ALINTEZMENYID]) REFERENCES [dbo].[T_INTEZMENY] ([ID]);
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[FK_MufajTanszakTipus_AlTanevId_REF_Tanev]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_MUFAJTANSZAKTIPUS] WITH NOCHECK
|
||||
ADD CONSTRAINT [FK_MufajTanszakTipus_AlTanevId_REF_Tanev] FOREIGN KEY ([C_ALTANEVID]) REFERENCES [dbo].[T_TANEV] ([ID]);
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[FK_TanterviJellemzoTipus_Id_AlintezmenyId_AltanevId_REF_DictionaryItemBase]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_TANTERVIJELLEMZOTIPUS] WITH NOCHECK
|
||||
ADD CONSTRAINT [FK_TanterviJellemzoTipus_Id_AlintezmenyId_AltanevId_REF_DictionaryItemBase] FOREIGN KEY ([ID], [C_ALINTEZMENYID], [C_ALTANEVID]) REFERENCES [dbo].[T_DICTIONARYITEMBASE] ([ID], [C_INTEZMENYID], [C_TANEVID]);
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[FK_TanterviJellemzoTipus_AlIntezmenyId_REF_Intezmeny]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_TANTERVIJELLEMZOTIPUS] WITH NOCHECK
|
||||
ADD CONSTRAINT [FK_TanterviJellemzoTipus_AlIntezmenyId_REF_Intezmeny] FOREIGN KEY ([C_ALINTEZMENYID]) REFERENCES [dbo].[T_INTEZMENY] ([ID]);
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[FK_TanterviJellemzoTipus_AlTanevId_REF_Tanev]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_TANTERVIJELLEMZOTIPUS] WITH NOCHECK
|
||||
ADD CONSTRAINT [FK_TanterviJellemzoTipus_AlTanevId_REF_Tanev] FOREIGN KEY ([C_ALTANEVID]) REFERENCES [dbo].[T_TANEV] ([ID]);
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[FK_Tantargy_MufajTanszakId_IntezmenyId_TanevId_REF_MufajTanszakTipus]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_TANTARGY] WITH NOCHECK
|
||||
ADD CONSTRAINT [FK_Tantargy_MufajTanszakId_IntezmenyId_TanevId_REF_MufajTanszakTipus] FOREIGN KEY ([C_MUFAJTANSZAKID], [C_INTEZMENYID], [C_TANEVID]) REFERENCES [dbo].[T_MUFAJTANSZAKTIPUS] ([ID], [C_ALINTEZMENYID], [C_ALTANEVID]);
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[FK_Tanulo_TanterviJellemzoId_AlintezmenyId_AltanevId_REF_TanterviJellemzoTipus]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_TANULO] WITH NOCHECK
|
||||
ADD CONSTRAINT [FK_Tanulo_TanterviJellemzoId_AlintezmenyId_AltanevId_REF_TanterviJellemzoTipus] FOREIGN KEY ([C_TANTERVIJELLEMZOID], [C_ALINTEZMENYID], [C_ALTANEVID]) REFERENCES [dbo].[T_TANTERVIJELLEMZOTIPUS] ([ID], [C_ALINTEZMENYID], [C_ALTANEVID]);
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[FK_TanuloTanugyiAdatok_TanterviJellemzoId_IntezmenyId_TanevId_REF_TanterviJellemzoTipus]...';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_TANULOTANUGYIADATOK] WITH NOCHECK
|
||||
ADD CONSTRAINT [FK_TanuloTanugyiAdatok_TanterviJellemzoId_IntezmenyId_TanevId_REF_TanterviJellemzoTipus] FOREIGN KEY ([C_TANTERVIJELLEMZOID], [C_INTEZMENYID], [C_TANEVID]) REFERENCES [dbo].[T_TANTERVIJELLEMZOTIPUS] ([ID], [C_ALINTEZMENYID], [C_ALTANEVID]);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_MUFAJTANSZAKTIPUS].[ID].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = 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)', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_MUFAJTANSZAKTIPUS', @level2type = N'COLUMN', @level2name = N'ID';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_MUFAJTANSZAKTIPUS].[C_ALINTEZMENYID].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'Az intézmény ID-ja, amihez a rekord tartozik (altábla esetén)', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_MUFAJTANSZAKTIPUS', @level2type = N'COLUMN', @level2name = N'C_ALINTEZMENYID';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_MUFAJTANSZAKTIPUS].[C_ALTANEVID].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A tanév ID-ja, amihez a rekord tartozik (altábla esetén)', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_MUFAJTANSZAKTIPUS', @level2type = N'COLUMN', @level2name = N'C_ALTANEVID';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_MUFAJTANSZAKTIPUS].[TOROLT].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekord logikai töröltségét jelző flag', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_MUFAJTANSZAKTIPUS', @level2type = N'COLUMN', @level2name = N'TOROLT';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_MUFAJTANSZAKTIPUS].[SERIAL].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = 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', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_MUFAJTANSZAKTIPUS', @level2type = N'COLUMN', @level2name = N'SERIAL';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_MUFAJTANSZAKTIPUS].[LASTCHANGED].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N' A rekord utolsó módosításának időpontja', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_MUFAJTANSZAKTIPUS', @level2type = N'COLUMN', @level2name = N'LASTCHANGED';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_MUFAJTANSZAKTIPUS].[CREATED].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekord létrehozásának időpontja ', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_MUFAJTANSZAKTIPUS', @level2type = N'COLUMN', @level2name = N'CREATED';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_MUFAJTANSZAKTIPUS].[MODIFIER].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekordot utoljára módosító felhasználó ID-ja', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_MUFAJTANSZAKTIPUS', @level2type = N'COLUMN', @level2name = N'MODIFIER';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_MUFAJTANSZAKTIPUS].[CREATOR].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekordot létrehozó felhasználó ID-ja', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_MUFAJTANSZAKTIPUS', @level2type = N'COLUMN', @level2name = N'CREATOR';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_MUFAJTANSZAKTIPUS].[ELOZOTANEVIREKORDID].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekord előző tanévben lévő ID-ja', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_MUFAJTANSZAKTIPUS', @level2type = N'COLUMN', @level2name = N'ELOZOTANEVIREKORDID';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_MUFAJTANSZAKTIPUS].[ELOZOTANEVIREKORDIDA].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekord előző tanévben lévő ID-ja (altábla esetén) ', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_MUFAJTANSZAKTIPUS', @level2type = N'COLUMN', @level2name = N'ELOZOTANEVIREKORDIDA';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_MUFAJTANSZAKTIPUS].[NNID].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekord régi, Neptun Naplóban lévő ID-ja. (migrációval került be)', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_MUFAJTANSZAKTIPUS', @level2type = N'COLUMN', @level2name = N'NNID';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_TANTERVIJELLEMZOTIPUS].[ID].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = 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)', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANTERVIJELLEMZOTIPUS', @level2type = N'COLUMN', @level2name = N'ID';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_TANTERVIJELLEMZOTIPUS].[C_ALINTEZMENYID].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'Az intézmény ID-ja, amihez a rekord tartozik (altábla esetén)', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANTERVIJELLEMZOTIPUS', @level2type = N'COLUMN', @level2name = N'C_ALINTEZMENYID';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_TANTERVIJELLEMZOTIPUS].[C_ALTANEVID].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A tanév ID-ja, amihez a rekord tartozik (altábla esetén)', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANTERVIJELLEMZOTIPUS', @level2type = N'COLUMN', @level2name = N'C_ALTANEVID';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_TANTERVIJELLEMZOTIPUS].[TOROLT].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekord logikai töröltségét jelző flag', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANTERVIJELLEMZOTIPUS', @level2type = N'COLUMN', @level2name = N'TOROLT';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_TANTERVIJELLEMZOTIPUS].[SERIAL].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = 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', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANTERVIJELLEMZOTIPUS', @level2type = N'COLUMN', @level2name = N'SERIAL';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_TANTERVIJELLEMZOTIPUS].[LASTCHANGED].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N' A rekord utolsó módosításának időpontja', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANTERVIJELLEMZOTIPUS', @level2type = N'COLUMN', @level2name = N'LASTCHANGED';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_TANTERVIJELLEMZOTIPUS].[CREATED].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekord létrehozásának időpontja ', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANTERVIJELLEMZOTIPUS', @level2type = N'COLUMN', @level2name = N'CREATED';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_TANTERVIJELLEMZOTIPUS].[MODIFIER].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekordot utoljára módosító felhasználó ID-ja', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANTERVIJELLEMZOTIPUS', @level2type = N'COLUMN', @level2name = N'MODIFIER';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_TANTERVIJELLEMZOTIPUS].[CREATOR].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekordot létrehozó felhasználó ID-ja', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANTERVIJELLEMZOTIPUS', @level2type = N'COLUMN', @level2name = N'CREATOR';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_TANTERVIJELLEMZOTIPUS].[ELOZOTANEVIREKORDID].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekord előző tanévben lévő ID-ja', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANTERVIJELLEMZOTIPUS', @level2type = N'COLUMN', @level2name = N'ELOZOTANEVIREKORDID';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_TANTERVIJELLEMZOTIPUS].[ELOZOTANEVIREKORDIDA].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekord előző tanévben lévő ID-ja (altábla esetén) ', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANTERVIJELLEMZOTIPUS', @level2type = N'COLUMN', @level2name = N'ELOZOTANEVIREKORDIDA';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_TANTERVIJELLEMZOTIPUS].[NNID].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekord régi, Neptun Naplóban lévő ID-ja. (migrációval került be)', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_TANTERVIJELLEMZOTIPUS', @level2type = N'COLUMN', @level2name = N'NNID';
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Creating [dbo].[T_OSZTALYCSOPORT].[C_TECHNIKAIOSZTALY].[MS_Description]...';
|
||||
|
||||
|
||||
GO
|
||||
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'Jelölés, hogy az osztály csak technikai jellegu (például jogviszonyszünetelo tanulóknak)', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_OSZTALYCSOPORT', @level2type = N'COLUMN', @level2name = N'C_ISTECHNIKAI';
|
||||
|
||||
|
||||
GO
|
||||
EXEC dev.uspCreateDictionaryItems @IntezmenyId = NULL, @pTanevNev = NULL
|
||||
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Checking existing data against newly created constraints';
|
||||
|
||||
|
||||
GO
|
||||
ALTER TABLE [dbo].[T_MUFAJTANSZAKTIPUS] WITH CHECK CHECK CONSTRAINT [FK_MufajTanszakTipus_Id_AlintezmenyId_AltanevId_REF_DictionaryItemBase];
|
||||
|
||||
ALTER TABLE [dbo].[T_MUFAJTANSZAKTIPUS] WITH CHECK CHECK CONSTRAINT [FK_MufajTanszakTipus_AlIntezmenyId_REF_Intezmeny];
|
||||
|
||||
ALTER TABLE [dbo].[T_MUFAJTANSZAKTIPUS] WITH CHECK CHECK CONSTRAINT [FK_MufajTanszakTipus_AlTanevId_REF_Tanev];
|
||||
|
||||
ALTER TABLE [dbo].[T_TANTERVIJELLEMZOTIPUS] WITH CHECK CHECK CONSTRAINT [FK_TanterviJellemzoTipus_Id_AlintezmenyId_AltanevId_REF_DictionaryItemBase];
|
||||
|
||||
ALTER TABLE [dbo].[T_TANTERVIJELLEMZOTIPUS] WITH CHECK CHECK CONSTRAINT [FK_TanterviJellemzoTipus_AlIntezmenyId_REF_Intezmeny];
|
||||
|
||||
ALTER TABLE [dbo].[T_TANTERVIJELLEMZOTIPUS] WITH CHECK CHECK CONSTRAINT [FK_TanterviJellemzoTipus_AlTanevId_REF_Tanev];
|
||||
|
||||
ALTER TABLE [dbo].[T_TANTARGY] WITH CHECK CHECK CONSTRAINT [FK_Tantargy_MufajTanszakId_IntezmenyId_TanevId_REF_MufajTanszakTipus];
|
||||
|
||||
ALTER TABLE [dbo].[T_TANULO] WITH CHECK CHECK CONSTRAINT [FK_Tanulo_TanterviJellemzoId_AlintezmenyId_AltanevId_REF_TanterviJellemzoTipus];
|
||||
|
||||
ALTER TABLE [dbo].[T_TANULOTANUGYIADATOK] WITH CHECK CHECK CONSTRAINT [FK_TanuloTanugyiAdatok_TanterviJellemzoId_IntezmenyId_TanevId_REF_TanterviJellemzoTipus];
|
||||
|
||||
|
||||
GO
|
||||
PRINT N'Update complete.';
|
||||
|
||||
GO
|
||||
EXEC dev.uspCreateSchemaViews 'T_MUFAJTANSZAKTIPUS, T_TANTERVIJELLEMZOTIPUS ,T_TANULO, T_FELHASZNALO, T_TANTARGY, T_TANULOTANUGYIADATOK, T_OSZTALY, T_OSZTALYCSOPORT, T_ORARENDIORA, T_TANITASIORA, T_TEREM'
|
||||
|
||||
|
||||
GO
|
||||
EXEC dev.sp_Global_GenerateAsyncAuditTriggerAll
|
||||
|
||||
|
||||
GO
|
||||
|
||||
ALTER QUEUE auditLog.[AuditQueue]
|
||||
WITH ACTIVATION (
|
||||
STATUS = ON,
|
||||
PROCEDURE_NAME = auditLog.usp_AuditProcessing,
|
||||
MAX_QUEUE_READERS = 10,
|
||||
EXECUTE AS 'Kreta_tech_user'
|
||||
);
|
||||
|
||||
|
||||
GO
|
|
@ -0,0 +1,127 @@
|
|||
IF OBJECT_ID('dbo.sp_CsengetesiRendOrakTorles') IS NOT NULL BEGIN
|
||||
DROP PROCEDURE dbo.sp_CsengetesiRendOrakTorles
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_CsengetesiRendOrakTorles]
|
||||
@TanevId int,
|
||||
@xml xml
|
||||
AS
|
||||
BEGIN
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from
|
||||
-- interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE @torlendoCsengetesiRendek TABLE (id int);
|
||||
|
||||
INSERT INTO @torlendoCsengetesiRendek
|
||||
SELECT
|
||||
sor.value('.', 'int') AS id
|
||||
FROM @xml.nodes('/CsengetesiRendOraTorles/IdLista/Id') as sorok(sor)
|
||||
|
||||
SELECT
|
||||
ID oraId,
|
||||
csengrendOraId,
|
||||
newCsengrendOraId,
|
||||
newOraKezdete,
|
||||
newOraVege,
|
||||
ISNULL(newOraszam, 0) newOraszam,
|
||||
newCsengrendId,
|
||||
IsTanora,
|
||||
UpdateVegeDate,
|
||||
UpdateKezdeteDate,
|
||||
UpdateType
|
||||
INTO #TEMPmodositandoOrak
|
||||
from (
|
||||
select kapcsolodoOrak.ID,
|
||||
kapcsolodoOrak.C_CSENGETESIRENDID,
|
||||
kapcsolodoOrak.C_CSENGETESIRENDORAID csengrendOraId,
|
||||
kapcsolodoOrak.C_ORASZAM,
|
||||
alapcsora.C_KEZDETE,
|
||||
alapcsora.C_VEGE,
|
||||
kapcsolodoOrak.C_ORAKEZDETE,
|
||||
kapcsolodoOrak.C_ORAVEGE,
|
||||
kapcsolodoOrak.Tanora IsTanora,
|
||||
csengrend.ID newCsengrendOraId,
|
||||
csengrend.C_CSENGETESIRENDID newCsengrendId,
|
||||
csengrend.C_KEZDETE newOraKezdete,
|
||||
csengrend.C_VEGE newOraVege,
|
||||
csengrend.C_ORASZAM newOraszam
|
||||
,IIF(kapcsolodoOrak.Tanora = 0 and cast(alapcsora.C_VEGE as time) = cast(kapcsolodoOrak.C_ORAVEGE as time) and csengrend.C_VEGE is not null, 1, 0) UpdateVegeDate
|
||||
,IIF(kapcsolodoOrak.Tanora = 0 and cast(alapcsora.C_KEZDETE as time) = cast(kapcsolodoOrak.C_ORAKEZDETE as time) and csengrend.C_KEZDETE is not null, 1, 0) UpdateKezdeteDate
|
||||
,IIF(csengrend.ID is null, 1, 0) UpdateType
|
||||
from (
|
||||
select
|
||||
x.ID,
|
||||
C_CSENGETESIRENDID,
|
||||
C_CSENGETESIRENDORAID,
|
||||
C_ORASZAM,
|
||||
C_ORAKEZDETE,
|
||||
C_ORAVEGE,
|
||||
Tanora
|
||||
from(
|
||||
select ID,
|
||||
C_CSENGETESIRENDID,
|
||||
C_CSENGETESIRENDORAID,
|
||||
C_ORASZAM,
|
||||
C_ORAKEZDETE,
|
||||
C_ORAVEGE,
|
||||
0 Tanora
|
||||
from T_ORARENDIORA_OSSZES
|
||||
union
|
||||
select ID,
|
||||
C_CSENGETESIRENDID,
|
||||
C_CSENGETESIRENDORAID,
|
||||
C_ORASZAM,
|
||||
C_ORAKEZDETE,
|
||||
C_ORAVEGE,
|
||||
1 Tanora
|
||||
from T_TANITASIORA_OSSZES
|
||||
) x
|
||||
inner join @torlendoCsengetesiRendek torlendoIdk on torlendoIdk.id = x.C_CSENGETESIRENDORAID
|
||||
) kapcsolodoOrak
|
||||
left join (
|
||||
select
|
||||
ID,
|
||||
C_KEZDETE,
|
||||
C_VEGE
|
||||
from T_CSENGETESIRENDORA_OSSZES) alapcsora on alapcsora.ID = kapcsolodoOrak.C_CSENGETESIRENDORAID
|
||||
left join (select csora.ID,
|
||||
csora.C_CSENGETESIRENDID,
|
||||
csora.C_KEZDETE,
|
||||
csora.C_VEGE,
|
||||
csora.C_ORASZAM
|
||||
from T_CSENGETESIRENDORA_OSSZES csora
|
||||
inner join T_CSENGETESIREND_OSSZES on csora.C_CSENGETESIRENDID = T_CSENGETESIREND_OSSZES.ID And T_CSENGETESIREND_OSSZES.C_AKTIV = 'T'
|
||||
where csora.C_TANEVID = @TanevId)csengrend on csengrend.C_ORASZAM = kapcsolodoOrak.C_ORASZAM and csengrend.ID != kapcsolodoOrak.C_CSENGETESIRENDORAID
|
||||
)t
|
||||
|
||||
UPDATE o
|
||||
SET
|
||||
o.C_ORAVEGE = IIF(temp.UpdateVegeDate = 1,
|
||||
DATEADD(HOUR, datepart(hour, temp.newOraVege),DATEADD(MINUTE,datepart(minute, temp.newOraVege),CAST(CAST(o.C_ORAVEGE AS DATE) as datetime))),
|
||||
o.C_ORAVEGE),
|
||||
o.C_ORAKEZDETE = IIF(temp.UpdateKezdeteDate = 1,
|
||||
DATEADD(HOUR, datepart(hour, temp.newOraVege),DATEADD(MINUTE,datepart(minute, temp.newOraVege),CAST(CAST(o.C_ORAKEZDETE AS DATE) as datetime))),
|
||||
o.C_ORAKEZDETE),
|
||||
o.C_CSENGETESIRENDID = temp.newCsengrendId,
|
||||
o.C_CSENGETESIRENDORAID = temp.newCsengrendOraId,
|
||||
o.C_ORASZAM = temp.newOraszam
|
||||
from T_ORARENDIORA_OSSZES o
|
||||
inner join #TEMPmodositandoOrak temp on temp.csengrendOraId = o.C_CSENGETESIRENDORAID and temp.IsTanora = 0
|
||||
|
||||
UPDATE t
|
||||
SET
|
||||
t.C_CSENGETESIRENDID = temp.newCsengrendId,
|
||||
t.C_CSENGETESIRENDORAID = temp.newCsengrendOraId,
|
||||
t.C_ORASZAM = temp.newOraszam
|
||||
from T_TANITASIORA_OSSZES t
|
||||
inner join #TEMPmodositandoOrak temp on temp.csengrendOraId = t.C_CSENGETESIRENDORAID and temp.IsTanora = 1
|
||||
|
||||
DELETE csro
|
||||
FROM T_CSENGETESIRENDORA_OSSZES csro
|
||||
inner join @torlendoCsengetesiRendek torlendoIdk on torlendoIdk.id = csro.ID
|
||||
|
||||
DROP TABLE #TEMPmodositandoOrak
|
||||
|
||||
END
|
|
@ -0,0 +1,84 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_GetOsztalyTanuloinakHaviMulasztasaiOsszesitoje]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GetOsztalyTanuloinakHaviMulasztasaiOsszesitoje]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_GetOsztalyTanuloinakHaviMulasztasaiOsszesitoje]
|
||||
@pTanevId INT,
|
||||
@pIntezmenyId INT,
|
||||
@pOsztalyId INT,
|
||||
@pElmeletgyakorlat BIT = 0,
|
||||
@pMulasztandoOrakszamaTeljesNaposMulasztashoz INT = 3
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
DECLARE @honapok TABLE(honap INT, honapnev NVARCHAR(max));
|
||||
|
||||
INSERT INTO @honapok
|
||||
SELECT DISTINCT (3 + d.c_value) % 12 + 1 AS c_value, d.c_name as Honap
|
||||
FROM T_DICTIONARYITEMBASE_OSSZES d
|
||||
WHERE c_type LIKE 'honap%'
|
||||
ORDER BY c_value;
|
||||
|
||||
SELECT honapnev FROM @honapok;
|
||||
|
||||
DECLARE honap_cursor CURSOR FOR
|
||||
SELECT DISTINCT (3 + d.c_value) % 12 + 1 AS honap_sorrend, d.c_value AS honap
|
||||
FROM T_DICTIONARYITEMBASE_OSSZES d
|
||||
WHERE c_type LIKE 'honap%'
|
||||
ORDER BY honap_sorrend;
|
||||
|
||||
DECLARE @honap_sorrend INT, @honap INT;
|
||||
OPEN honap_cursor
|
||||
FETCH NEXT FROM honap_cursor
|
||||
INTO @honap_sorrend, @honap;
|
||||
WHILE @@FETCH_STATUS = 0
|
||||
BEGIN
|
||||
EXEC [sp_GetOsztalyTanuloinakHaviMulasztasaiOsszesitoje_honapra] @pTanevId, @pIntezmenyId, @pOsztalyId, @honap, @pElmeletgyakorlat, @pMulasztandoOrakszamaTeljesNaposMulasztashoz
|
||||
FETCH NEXT FROM honap_cursor
|
||||
INTO @honap_sorrend, @honap
|
||||
END
|
||||
CLOSE honap_cursor
|
||||
DEALLOCATE honap_cursor
|
||||
|
||||
SELECT
|
||||
ocs.ID AS OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA AS EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
,o.C_OSZTALYFONOKID AS OsztalyfonokId
|
||||
,o.C_TANTERVID AS TantervId
|
||||
,ocs.C_KEPZESIFORMA AS KepzesiForma
|
||||
,o.C_AGAZAT AS Agazat
|
||||
,o.C_SZAKMACSOPORT AS SzakmaCsoport
|
||||
,o.C_SZAKKEPESITES Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,ocs.C_ISTECHNIKAI OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI OJIsGyogypedagogiaiLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.ID
|
||||
WHERE ocs.ID = @pOsztalyId
|
||||
AND ocs.C_TANEVID = @pTanevId
|
||||
AND ocs.C_INTEZMENYID = @pIntezmenyId
|
||||
AND ocs.TOROLT = 'F'
|
||||
END
|
||||
|
||||
SELECT
|
||||
tanuloID AS TanuloId
|
||||
,tanuloNeve AS TanuloNeve
|
||||
,oktAzon AS OktAzon
|
||||
FROM fnGetDokumentumTanuloiAlapadatok(@pOsztalyId, @pTanevId, 'T')
|
||||
|
||||
GO
|
|
@ -0,0 +1,252 @@
|
|||
DROP PROCEDURE IF EXISTS sp_GetTanuloiAdatlapAdatok
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_GetTanuloiAdatlapAdatok]
|
||||
@osztCsopID INT,
|
||||
@TanevId INT
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
CREATE TABLE #JogviszonyVege (TanuloId int,Datum date)
|
||||
INSERT INTO #JogviszonyVege
|
||||
SELECT
|
||||
TanuloId
|
||||
,MAX(C_KILEPESDATUM)
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztCsopID, 'T') Tanulok
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES TanuloCsoport ON TanuloCsoport.C_TANULOID = Tanulok.TanuloId AND TanuloCsoport.TOROLT = 'F' AND TanuloCsoport.C_TANEVID = @TanevId
|
||||
INNER JOIN T_OSZTALY_OSSZES Osztaly ON Osztaly.ID = TanuloCsoport.C_OSZTALYCSOPORTID AND Osztaly.TOROLT = 'F' AND C_ALTANEVID = @TanevId
|
||||
GROUP BY TanuloId
|
||||
|
||||
DECLARE @DefaultFeladatKategoriaId int = (SELECT C_FELADATKATEGORIAID FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @osztCsopID)
|
||||
--Fejléc
|
||||
SELECT
|
||||
T_INTEZMENYADATOK_OSSZES.C_NEV IntezmenyNeve,
|
||||
T_INTEZMENYADATOK_OSSZES.C_VAROS IntezmenyVaros,
|
||||
dbo.fnGetDokumentumIntezmenyCime(@tanevId) IntezmenyCime,
|
||||
T_INTEZMENYADATOK_OSSZES.C_OMKOD OMKod,
|
||||
T_INTEZMENYADATOK_OSSZES.C_TELEFONSZAM TELEFON,
|
||||
T_INTEZMENYADATOK_OSSZES.C_EMAILCIM EMAILCIM,
|
||||
T_TANEV_OSSZES.C_NEV TANEV,
|
||||
o.C_OSZTALYFONOKID PartnerID,
|
||||
f.C_NYOMTATASINEV OSZTALYFONOK,
|
||||
ocs.C_NEV OSZTALYNEV
|
||||
,@osztCsopID OsztalyId
|
||||
FROM T_INTEZMENYADATOK_OSSZES
|
||||
INNER JOIN T_TANEV_OSSZES on T_TANEV_OSSZES.ID = T_INTEZMENYADATOK_OSSZES.C_TANEVID and T_TANEV_OSSZES.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = @osztCsopID AND ocs.TOROLT = 'F' AND ocs.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
LEFT JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.ID AND o.TOROLT = 'F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = o.C_OSZTALYFONOKID AND f.TOROLT = 'F'
|
||||
WHERE
|
||||
T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
|
||||
AND T_INTEZMENYADATOK_OSSZES.C_TANEVID = @TanevId
|
||||
|
||||
CREATE TABLE #EmailCimTableTemp (FelhasznaloId INT, EmailCim NVARCHAR(MAX))
|
||||
INSERT INTO #EmailCimTableTemp
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_EMAILCIM
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztCsopID, 'T') tanulo
|
||||
INNER JOIN T_EMAIL_OSSZES email ON email.C_FELHASZNALOID = TanuloId
|
||||
WHERE
|
||||
email.TOROLT = 'F'
|
||||
AND email.C_TANEVID = @TanevId
|
||||
AND LEN(C_EMAILCIM) > 0
|
||||
|
||||
CREATE TABLE #EmailCimTable (FelhasznaloId INT, EmailCim NVARCHAR(MAX))
|
||||
INSERT INTO #EmailCimTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(Btemp.EmailCim AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM #EmailCimTableTemp btemp
|
||||
WHERE
|
||||
temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'') Email
|
||||
FROM #EmailCimTableTemp temp
|
||||
|
||||
CREATE TABLE #TelefonszamTableTemp (FelhasznaloId INT, Telefonszam NVARCHAR(MAX))
|
||||
INSERT INTO #TelefonszamTableTemp
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_TELEFONSZAM
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztCsopID, 'T') tanulo
|
||||
INNER JOIN T_TELEFON_OSSZES telefon ON telefon.C_FELHASZNALOID = TanuloId
|
||||
WHERE
|
||||
telefon.TOROLT = 'F'
|
||||
AND telefon.C_TANEVID = @TanevId
|
||||
AND LEN(C_TELEFONSZAM) > 0
|
||||
|
||||
CREATE TABLE #TelefonszamTable (FelhasznaloId INT, Telefonszam NVARCHAR(MAX))
|
||||
INSERT INTO #TelefonszamTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(Btemp.Telefonszam AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM #TelefonszamTableTemp btemp
|
||||
WHERE
|
||||
temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'') Telefonszam
|
||||
FROM #TelefonszamTableTemp temp
|
||||
|
||||
CREATE TABLE #TanuloCimTable (FelhasznaloId INT, Cim NVARCHAR(MAX), Cimtipusa INT)
|
||||
INSERT INTO #TanuloCimTable
|
||||
SELECT DISTINCT
|
||||
TanuloId
|
||||
,STUFF((
|
||||
SELECT CAST(Btemp.Cim AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim(0, @tanevId, @osztCsopID) btemp
|
||||
WHERE
|
||||
temp.TanuloId = btemp.TanuloId
|
||||
AND temp.CimTipusa = btemp.CimTipusa
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'') Cim
|
||||
,temp.CimTipusa
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim(0, @tanevId, @osztCsopID) temp
|
||||
|
||||
CREATE TABLE #GondviselokTableTemp (FelhasznaloId INT, Gondviselo NVARCHAR(MAX))
|
||||
INSERT INTO #GondviselokTableTemp
|
||||
SELECT
|
||||
Gondviselo.TanuloId TanuloId
|
||||
,Gondviselo.GondviseloNev + ISNULL('('+rokonsagiFoka.C_NAME+')', '') Gondviselo
|
||||
FROM fnGetDokumentumGondviselok (@osztCsopID, @tanevId, 'F', 'T') Gondviselo
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES rokonsagiFoka ON Gondviselo.RokonsagifokId = rokonsagiFoka.ID AND rokonsagiFoka.C_TANEVID = @TanevId
|
||||
|
||||
CREATE TABLE #GondviselokTable (FelhasznaloId INT, Gondviselo NVARCHAR(MAX))
|
||||
INSERT INTO #GondviselokTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,STUFF((
|
||||
SELECT ', ' + btemp.Gondviselo
|
||||
FROM #GondviselokTableTemp btemp
|
||||
WHERE
|
||||
temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,2,'') Gondviselo
|
||||
FROM #GondviselokTableTemp temp
|
||||
|
||||
|
||||
--Tanulók Adatai
|
||||
SELECT DISTINCT
|
||||
tta.C_BEIRASINAPLOSORSZAM,
|
||||
tta.C_NAPLOSORSZAM NaploSorszam,
|
||||
tta.C_TORZSLAPSZAM TorzslapSzam,
|
||||
T_TANEV_OSSZES.C_NEV TANEV,
|
||||
T_OSZTALYCSOPORT_OSSZES.C_NEV OSZTALYNEV,
|
||||
T_OSZTALYCSOPORT_OSSZES.C_KEPZESIFORMA Kepzesiforma,
|
||||
T_FELHASZNALO_OSSZES.C_NYOMTATASINEV NEV,
|
||||
gondviselo.Gondviselo GONDVISELO,
|
||||
T_FELHASZNALO_OSSZES.C_SZULETESINEV SZULETESINEV,
|
||||
T_FELHASZNALO_OSSZES.C_ANYJANEVE ANYJANEVE,
|
||||
T_FELHASZNALO_OSSZES.C_OKTATASIAZONOSITO,
|
||||
T_FELHASZNALO_OSSZES.C_SZULETESIHELY,
|
||||
T_FELHASZNALO_OSSZES.C_SZULETESIORSZAG Szuletesiorszag,
|
||||
FORMAT(T_FELHASZNALO_OSSZES.C_SZULETESIDATUM, 'yyyy.MM.dd.') C_SZULETESIDATUM,
|
||||
T_FELHASZNALO_OSSZES.C_ALLAMPOLGARSAGA Allampolgarsag,
|
||||
T_FELHASZNALO_OSSZES.C_ANYANYELVE Anyanyelv,
|
||||
tta.C_NYILVANTARTASKEZDETE,
|
||||
tta.C_TANKOTELEZETT Tankotelezett,
|
||||
tta.C_TANKOTELEZETTSEGVEGE,
|
||||
tta.C_JOGVISZONYVARHATOBEFEJEZESE,
|
||||
T_TANULO_OSSZES.C_DIAKIGAZOLVANYSZAM,
|
||||
T_TANULO_OSSZES.C_DIAKIGAZOLVANYKELTE,
|
||||
T_TANULO_OSSZES.C_BANKSZAMLASZAM,
|
||||
AllandoLakcim.Cim,
|
||||
TartozkodasiHely.CIM TartozkodasiHely,
|
||||
telefon.Telefonszam C_TELEFONSZAM,
|
||||
email.EmailCim C_EMAILCIM,
|
||||
tta.C_BEJARO Bejaro,
|
||||
tta.C_SZAKMAIGYAKORLATON Szakmaigyak,
|
||||
tta.C_VENDEG Vendeg,
|
||||
tta.C_JOGVISZONYATSZUNETELTETO Jogviszonyszunetelteto,
|
||||
tta.C_MAGANTANULO Magantanulo,
|
||||
maganTanuloOk.C_NAME as C_MAGANTANULOSAGANAKOKA,
|
||||
tta.C_MAGANTANULOSAGKEZDETE,
|
||||
T_TANULO_OSSZES.C_SZAKKEPESITESSZAMA,
|
||||
T_TANULO_OSSZES.C_TANULOIJOGVISZONYOSELTARTOTT,
|
||||
T_TANULO_OSSZES.C_TOBBGYERMEKIGAZOLASSZAMA,
|
||||
tta.C_EVISMETLO Evismetlo,
|
||||
T_TANULO_OSSZES.C_SZOCIALISTAMOGATAS Szoctam,
|
||||
T_TANULO_OSSZES.C_HATRANYOSHELYZETU,
|
||||
T_TANULO_OSSZES.C_VESZELYEZTETETT Veszelyeztetett,
|
||||
T_TANULO_OSSZES.C_HALMOZOTTANFOGYATEKOS Halmfogyatekos,
|
||||
T_TANULO_OSSZES.C_ETKEZESIKEDVEZMENY,
|
||||
tta.C_TERITESIDIJATFIZETO Teriteses,
|
||||
tta.C_TANDIJATFIZETO Tandijas,
|
||||
T_TANULO_OSSZES.C_INGYENESTANKONVYELLATASA,
|
||||
tta.C_TANULOSZERZODESES Tanszerzodeses,
|
||||
tta.C_POLGARISZERZODESES Polgszerzodeses,
|
||||
T_TANULO_OSSZES.C_RENDSZERESGYERMEKVEDELMIKEDV,
|
||||
T_TANULO_OSSZES.C_ALLAMIGONDOZOTT Allamigond,
|
||||
T_TANULO_OSSZES.C_KOLLEGIUMIELLATASOS Kollegiumi,
|
||||
T_TANULO_OSSZES.C_TARTOSGYOGYKEZELESSZAMA,
|
||||
T_TANULO_OSSZES.C_SAJATOSNEVELESU Sajatosnevelesu,
|
||||
T_TANULO_OSSZES.C_SNILETSZAMSULY,
|
||||
T_TANULO_OSSZES.C_SNIKIALLITOINTEZMENY,
|
||||
FORMAT(T_TANULO_OSSZES.C_SNIOKMANYERVENYESSEGKEZDETE, 'yyyy.MM.dd.') C_SNIOKMANYERVENYESSEGKEZDETE,
|
||||
T_TANULO_OSSZES.C_BTMPROBLEMAS Btmproblemas,
|
||||
T_TANULO_OSSZES.C_BTMLETSZAMSULY,
|
||||
T_TANULO_OSSZES.C_BTMHATAROZATOKMANYSZAM,
|
||||
FORMAT(T_TANULO_OSSZES.C_BTMOKMANYERVENYESSEGKEZDETE, 'yyyy.MM.dd.') C_BTMOKMANYERVENYESSEGKEZDETE,
|
||||
T_TANULO_OSSZES.C_BTMKIALLITOINTEZMENY,
|
||||
T_TANULO_OSSZES.C_ELSOINTEZMENYOMKOD,
|
||||
T_FELHASZNALO_OSSZES.C_IGAZOLVANYSZAM,
|
||||
igazolvanyTipusa.C_NAME AS IgazolvanyTipusa
|
||||
,T_TANULO_OSSZES.ID AS TanuloId
|
||||
,@osztCsopID AS OsztalyId
|
||||
,JogviszonyVege.Datum JogviszonyVege
|
||||
,STUFF((SELECT ', ' + Tartalom
|
||||
FROM fnGetDokumentumTanulokFeljegyzesei(@tanevId, @osztCsopID, null)
|
||||
WHERE TanuloId = T_FELHASZNALO_OSSZES.ID
|
||||
AND Tipusa = 1545 --KRETA2-3028
|
||||
FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)'),1,2,'') AS Bejegyzes
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES on T_TANULOCSOPORT_OSSZES.C_TANULOID = T_FELHASZNALO_OSSZES.ID AND T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID = @osztCsopID
|
||||
INNER JOIN T_TANULO_OSSZES on T_TANULO_OSSZES.ID = T_FELHASZNALO_OSSZES.ID
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES on T_OSZTALYCSOPORT_OSSZES.ID = T_TANULOCSOPORT_OSSZES.C_OSZTALYCSOPORTID AND T_OSZTALYCSOPORT_OSSZES.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
INNER JOIN T_OSZTALY_OSSZES on T_OSZTALY_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.ID
|
||||
INNER JOIN fnGetOsztalyCsoportTanuloinakTanugyiAdatai (@osztCsopID,default) tta ON tta.TanuloId=T_FELHASZNALO_OSSZES.ID
|
||||
INNER JOIN T_TANEV_OSSZES on T_TANEV_OSSZES.ID = T_OSZTALYCSOPORT_OSSZES.C_TANEVID
|
||||
LEFT JOIN #TelefonszamTable telefon on telefon.FelhasznaloId = T_FELHASZNALO_OSSZES.ID
|
||||
LEFT JOIN #EmailCimTable email on email.FelhasznaloId = T_FELHASZNALO_OSSZES.ID
|
||||
LEFT JOIN #GondviselokTable gondviselo on gondviselo.FelhasznaloId = T_FELHASZNALO_OSSZES.ID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES igazolvanyTipusa ON T_FELHASZNALO_OSSZES.C_IGAZOLVANYTIPUSA = igazolvanyTipusa.ID AND igazolvanyTipusa.C_TANEVID = @TanevId
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES maganTanuloOk ON tta.C_MAGANTANULOSAGANAKOKAID = maganTanuloOk.ID AND maganTanuloOk.C_TANEVID = @TanevId AND maganTanuloOk.TOROLT='F'
|
||||
LEFT JOIN #TanuloCimTable AllandoLakcim ON AllandoLakcim.FelhasznaloId = T_FELHASZNALO_OSSZES.ID AND AllandoLakcim.Cimtipusa = 907
|
||||
LEFT JOIN #TanuloCimTable TartozkodasiHely ON TartozkodasiHely.FelhasznaloId = T_FELHASZNALO_OSSZES.ID AND TartozkodasiHely.Cimtipusa = 909
|
||||
INNER JOIN #JogviszonyVege JogviszonyVege ON JogviszonyVege.TanuloId = T_TANULOCSOPORT_OSSZES.C_TANULOID
|
||||
WHERE
|
||||
T_FELHASZNALO_OSSZES.TOROLT = 'F'
|
||||
AND T_TANEV_OSSZES.TOROLT = 'F'
|
||||
AND T_TANULOCSOPORT_OSSZES.TOROLT = 'F'
|
||||
AND T_OSZTALYCSOPORT_OSSZES.TOROLT = 'F'
|
||||
ORDER BY T_FELHASZNALO_OSSZES.C_NYOMTATASINEV
|
||||
|
||||
SELECT
|
||||
o.ID AS OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA AS EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
,ocs.C_KEPZESIFORMA AS KepzesiForma
|
||||
,o.C_OSZTALYFONOKID AS OsztalyfonokId
|
||||
,o.C_TANTERVID AS TantervId
|
||||
,o.C_SZAKMACSOPORT AS SzakmaCsoport
|
||||
,o.C_AGAZAT AS Agazat
|
||||
,o.C_SZAKKEPESITES AS Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES AS Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,ocs.C_ISTECHNIKAI OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI OJIsGyogypedagogiaiLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
FROM T_OSZTALY_OSSZES AS o
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID AND ocs.TOROLT = 'F'
|
||||
WHERE o.ID = @osztCsopID
|
||||
END
|
||||
|
||||
GO
|
|
@ -0,0 +1,87 @@
|
|||
DROP PROCEDURE IF EXISTS dbo.sp_GetTanulokFeljegyzesekReszletezese
|
||||
GO
|
||||
|
||||
-- =============================================
|
||||
-- Author: Dőrr Tamás
|
||||
-- Create date: 2015.12.15.
|
||||
-- Description: sp_GetTanulokFeljegyzesekReszletezese
|
||||
-- =============================================
|
||||
CREATE PROCEDURE [dbo].[sp_GetTanulokFeljegyzesekReszletezese]
|
||||
@pOsztalyId int,
|
||||
@pTanevId int
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE @feladatKategoriaId int = (SELECT C_FELADATKATEGORIAID FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyId)
|
||||
|
||||
SELECT DISTINCT
|
||||
@pOsztalyId AS OsztalyId
|
||||
,ocs.C_NEV AS OSZTALYCSOPORT_NEV
|
||||
,ofo.C_NYOMTATASINEV AS OSZTFO_NEV
|
||||
,i.C_IGAZGATONEVE AS INT_IGAZGATO_NEV
|
||||
,i.C_NEV AS INT_NEV
|
||||
,i.C_IRANYITOSZAM AS INT_IRSZAM
|
||||
,i.C_VAROS AS INT_VAROS
|
||||
,dbo.fnGetDokumentumIntezmenyCime(@pTanevId) AS INT_CIM
|
||||
,i.C_OMKOD AS INT_OMKOD
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON ocs.ID = o.ID AND o.torolt='F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES ofo ON ofo.ID = o.C_OSZTALYFONOKID AND ofo.TOROLT = 'F'
|
||||
INNER JOIN T_INTEZMENYADATOK_OSSZES i on i.C_INTEZMENYID=ocs.C_INTEZMENYID AND i.C_TANEVID = ocs.C_TANEVID AND i.Torolt = 'F'
|
||||
WHERE
|
||||
ocs.ID = @pOsztalyId
|
||||
AND ocs.C_FELADATKATEGORIAID = @feladatKategoriaId
|
||||
|
||||
SELECT
|
||||
Datum as KEZDET
|
||||
,d.C_NAME AS C_TIPUS
|
||||
,tcs.C_TANULOID AS TANULO_ID
|
||||
,ft.C_NYOMTATASINEV AS TANULO_NEV
|
||||
,FeljegyzoNeve AS FELJEGYZO_NEV
|
||||
,Tartalom AS TARTALOM
|
||||
,Megjegyzes AS MEGJEGYZES
|
||||
,ft.C_NYOMTATASINEV + ' ' + CAST(tcs.C_TANULOID AS NVARCHAR) AS GROUPPARAMETER
|
||||
,@pOsztalyId AS OsztalyId
|
||||
,ft.C_OKTATASIAZONOSITO AS TanuloOktAzon
|
||||
,esemenyek.FeljegyzoId AS FeljegyzoId
|
||||
,ff.C_OKTATASIAZONOSITO AS FeljegyzoOktAzon
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = tcs.C_OSZTALYCSOPORTID AND ocs.C_FELADATKATEGORIAID = @feladatKategoriaId AND ocs.TOROLT = 'F'
|
||||
LEFT JOIN fnGetDokumentumTanulokFeljegyzesei(@pTanevId, @pOsztalyId, 0) esemenyek ON esemenyek.TanuloId = tcs.C_TANULOID AND esemenyek.Tipusa != 1534
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES ft ON ft.ID = tcs.C_TANULOID AND ft.TOROLT = 'F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES ff ON ff.ID = esemenyek.FeljegyzoId AND ff.TOROLT = 'F'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES d ON d.id = Tipusa AND d.C_TANEVID = ft.C_TANEVID AND d.C_INTEZMENYID = ft.C_INTEZMENYID AND d.TOROLT = 'F'
|
||||
WHERE tcs.C_OSZTALYCSOPORTID = @pOsztalyId
|
||||
AND tcs.C_TANEVID = @pTanevId
|
||||
AND tcs.TOROLT= 'F'
|
||||
ORDER BY ft.C_NYOMTATASINEV
|
||||
|
||||
SELECT
|
||||
o.ID AS OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA AS EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
,ocs.C_KEPZESIFORMA AS KepzesiForma
|
||||
,o.C_OSZTALYFONOKID AS OsztalyfonokId
|
||||
,o.C_TANTERVID AS TantervId
|
||||
,o.C_SZAKMACSOPORT AS SzakmaCsoport
|
||||
,o.C_AGAZAT AS Agazat
|
||||
,o.C_SZAKKEPESITES AS Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES AS Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES AS OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM AS CSJVegzosEvfolyamu
|
||||
,ocs.C_ISTECHNIKAI AS OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI AS OJNemzetisegi
|
||||
,o.C_KETTANNYELVU AS OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO AS OJNyelviElokeszito
|
||||
,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI AS OJIsGyogypedagogiaiLogopediai
|
||||
,o.C_SPORT AS OJSportOsztaly
|
||||
,o.C_AJPROGRAM AS OJAranyJanosProgram
|
||||
FROM T_OSZTALY_OSSZES AS o
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID AND ocs.TOROLT = 'F' AND ocs.C_FELADATKATEGORIAID = @feladatKategoriaId
|
||||
WHERE
|
||||
o.ID = @pOsztalyId
|
||||
|
||||
END
|
||||
|
||||
GO
|
|
@ -0,0 +1,509 @@
|
|||
DROP PROCEDURE IF EXISTS [dbo].sp_Nyomtatvany_Excel_IdoszakiOsztalyStatisztika
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_Nyomtatvany_Excel_IdoszakiOsztalyStatisztika]
|
||||
@pTanevId int,
|
||||
@pOsztalyId int,
|
||||
@pIntezmenyId int,
|
||||
@pErtekelestipusaId int,
|
||||
@pLezaroNaptipusId int,
|
||||
@pMulasztasTipusIdKeses int = 1499,
|
||||
@pMulasztasTipusIdHianyzas int = 1500,
|
||||
@pTanevrendjeTanevKezdeteNaptipusId int = 1394, --Tanévrendje első nap típus
|
||||
@pTanoraiDicseretTipusId int = 1536, -- Tanórai dicséret
|
||||
@pFelszereleshianyTipusId int = 6324, -- Felszereléshiány
|
||||
@pHaziFeladatHianyTipusId int = 6325, -- Házi feladat hiány
|
||||
@pAtsoroltTanuloAdatok int = 1,
|
||||
@pElmeletgyakorlat bit = 0
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
--Const
|
||||
DECLARE
|
||||
@ElsoFelveVege int = 1400
|
||||
,@IneVege int = 1403
|
||||
,@IIIneVege int = 1404
|
||||
,@UtolsoTanitasiNap int = 1395
|
||||
,@VegzosUtolsoTanitasiNap int = 1402
|
||||
,@kesespercHianyzashoz int = 45
|
||||
,@kesespercGyakHianyzashoz int = 45
|
||||
,@iskolaErdekuParam int = 1683
|
||||
,@idoszakEleje date
|
||||
,@idoszakVege date
|
||||
--Iskolaerdeku tavollet szamit
|
||||
DECLARE
|
||||
@iskolaErdekuSzamit bit = [dbo].fnGetRendszerbeallitasEnumBool(@iskolaErdekuParam, @pIntezmenyId, @pTanevId)
|
||||
--Osztaly jellemzo
|
||||
,@keresztFeleves bit = (SELECT IIF(C_KERESZTFELEVES = 'T', 1, 0) FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyId)
|
||||
,@vegzosEvfolyamu bit = (SELECT IIF(C_VEGZOSEVFOLYAM = 'T', 1, 0) FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyId)
|
||||
|
||||
--Osztalyjellemzok alapjan a lezaro naptipus csereje
|
||||
SET @pLezaroNaptipusId = (
|
||||
SELECT CASE
|
||||
WHEN @keresztFeleves = 0 AND @vegzosEvfolyamu = 1 AND @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @VegzosUtolsoTanitasiNap
|
||||
WHEN @keresztFeleves = 0 THEN @pLezaroNaptipusId
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @UtolsoTanitasiNap
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @IIIneVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @IneVege
|
||||
END
|
||||
)
|
||||
|
||||
CREATE TABLE #aktualisOsztalyCsoportok (
|
||||
OSZTALYCSOPORTID int
|
||||
)
|
||||
CREATE TABLE #osztalyTanulok (
|
||||
TANULOID int PRIMARY KEY
|
||||
,BELEPESDATUM DATE
|
||||
,KILEPESDATUM DATE
|
||||
)
|
||||
CREATE TABLE #szurtErtekeles (
|
||||
T_TANULOERTEKELES_ID int PRIMARY KEY
|
||||
,C_TANULOID int
|
||||
,ERTEKELES nvarchar(max)
|
||||
,ERTEKELES_SZOVEG_MEGJEGYZES nvarchar(max)
|
||||
,C_ERTEKELESDATUM DATETIME
|
||||
,C_TANTARGYID int
|
||||
,TANTARGY_NEV nvarchar(255) COLLATE DATABASE_DEFAULT
|
||||
,TARGYKATEGORIA_NEV nvarchar(255) COLLATE DATABASE_DEFAULT
|
||||
,TARGYKATEGORIA_SORSZAM int
|
||||
,T_TANTARGY_C_FOTARGYE char(1) COLLATE DATABASE_DEFAULT
|
||||
,T_TANTARGY_C_ALTANTARGYKENTNYOMTATVANYBAN char(1) COLLATE DATABASE_DEFAULT
|
||||
,C_OSZTALYCSOPORTID int
|
||||
)
|
||||
CREATE TABLE #szurtMulasztas (
|
||||
TIPUS_CHAR char(1)
|
||||
,C_TIPUS int
|
||||
,C_IGAZOLT char(1) COLLATE DATABASE_DEFAULT
|
||||
,C_TANULOID int
|
||||
,C_GYAKORLATI char(1) COLLATE DATABASE_DEFAULT
|
||||
,KESESPERC int
|
||||
,MULASZTASOK_SZAMA int
|
||||
,HOZOTTIGAZOLTMULTASZTASOK_SZAMA int
|
||||
,HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA int
|
||||
,FELDOLGOZATLANOK_SZAMA int
|
||||
)
|
||||
CREATE TABLE #Tanulok (
|
||||
TanuloId int
|
||||
)
|
||||
CREATE TABLE #Tipusok (
|
||||
Tipus_Char char(1)
|
||||
,Igazolt char(1)
|
||||
,Tipus int
|
||||
,Gyakorlati char(1)
|
||||
)
|
||||
|
||||
SELECT TOP 1 @idoszakEleje =
|
||||
ISNULL(tr.C_DATUM,te.C_KEZDONAP)
|
||||
FROM T_TANEV_OSSZES te
|
||||
LEFT JOIN T_TANEVRENDJE_OSSZES tr ON tr.C_TANEVID = te.ID AND tr.TOROLT='F' AND tr.C_NAPTIPUSA = @pTanevrendjeTanevKezdeteNaptipusId
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON ocstr.C_TANEVRENDJEID = tr.ID
|
||||
AND (ocstr.C_OSZTALYCSOPORTID IS NULL OR ocstr.C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
WHERE te.ID = @pTanevId
|
||||
ORDER BY ocstr.C_OSZTALYCSOPORTID DESC
|
||||
|
||||
SELECT @idoszakVege= ISNULL(
|
||||
(
|
||||
SELECT TOP 1
|
||||
C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES tr
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON tr.ID = ocstr.C_TANEVRENDJEID
|
||||
AND (ocstr.C_OSZTALYCSOPORTID IS NULL OR ocstr.C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
WHERE tr.C_TANEVID = @pTanevId AND tr.C_NAPTIPUSA = @pLezaroNaptipusId AND tr.TOROLT = 'F'
|
||||
ORDER BY ocstr.C_OSZTALYCSOPORTID DESC
|
||||
)
|
||||
,GETDATE()
|
||||
)
|
||||
|
||||
IF @pAtsoroltTanuloAdatok IN (0,1)
|
||||
BEGIN
|
||||
INSERT INTO #aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyId, @pTanevId, DEFAULT)
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO #aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT KapcsOszt.ID
|
||||
FROM fnGetKapcsolodoOsztalycsoportokByDate(@pOsztalyId, @idoszakEleje, @idoszakVege) KapcsOszt
|
||||
WHERE (ID IN (
|
||||
SELECT ID
|
||||
FROM T_OSZTALY_OSSZES
|
||||
UNION
|
||||
SELECT ID
|
||||
FROM T_CSOPORT_OSSZES
|
||||
WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId))
|
||||
)
|
||||
)
|
||||
END
|
||||
|
||||
-- TANULÓK insert
|
||||
INSERT INTO #osztalyTanulok (
|
||||
TANULOID
|
||||
,BELEPESDATUM
|
||||
,KILEPESDATUM
|
||||
)
|
||||
SELECT
|
||||
fh.ID
|
||||
,tcs.C_BELEPESDATUM
|
||||
,tcs.C_KILEPESDATUM
|
||||
FROM T_FELHASZNALO_OSSZES fh
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_TANULOID = fh.ID AND tcs.TOROLT='F'
|
||||
AND tcs.C_BELEPESDATUM < @idoszakVege
|
||||
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM >= @idoszakVege) AND tcs.C_OSZTALYCSOPORTID = @pOsztalyId
|
||||
WHERE fh.TOROLT = 'F' AND fh.C_TANEVID = @pTanevId
|
||||
|
||||
-- ÉRTÉKELÉS insert
|
||||
INSERT INTO #szurtErtekeles (
|
||||
T_TANULOERTEKELES_ID
|
||||
,C_TANULOID
|
||||
,ERTEKELES
|
||||
,ERTEKELES_SZOVEG_MEGJEGYZES
|
||||
,C_ERTEKELESDATUM
|
||||
,C_TANTARGYID
|
||||
,TANTARGY_NEV
|
||||
,TARGYKATEGORIA_NEV
|
||||
,TARGYKATEGORIA_SORSZAM
|
||||
,T_TANTARGY_C_FOTARGYE
|
||||
,T_TANTARGY_C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
,C_OSZTALYCSOPORTID
|
||||
)
|
||||
SELECT
|
||||
ROW_NUMBER() OVER (ORDER BY TanuloId)
|
||||
,TanuloId
|
||||
,COALESCE(CAST(ErtekelesOsztalyzatValue AS nvarchar(max)),
|
||||
IIF(ErtekelesSzoveg IS NOT NULL, CASE WHEN ErtekelesSzovegRovidNev IN ('1', '2', '3', '4', '5') THEN 'Sz' ELSE ErtekelesSzovegRovidNev END, NULL),
|
||||
'%')
|
||||
,ISNULL(ErtekelesSzoveg, ISNULL(ErtekelesSzazalek + ' ', '') + ISNULL(ErtekelesTema, ''))
|
||||
,Datum
|
||||
,TantargyId
|
||||
,COALESCE(TantargyNevNyomtatvanyban, TantargyNev) AS TANTARGY_NEV
|
||||
,dib.C_NAME
|
||||
,dib.C_VALUE
|
||||
,FotargyE
|
||||
,Altantargy
|
||||
,OsztalyCsoportId
|
||||
FROM fnGetDokumentumErtekelesekOsztalyonkent (@pTanevId, @pOsztalyId, @pErtekelestipusaId, DEFAULT, DEFAULT, @pAtsoroltTanuloAdatok, DEFAULT) AS ERTEKELESEK
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES dib ON dib.ID = ERTEKELESEK.TargyKategoriaId AND dib.C_TANEVID = @pTanevId
|
||||
WHERE TantargyId IS NOT NULL AND (FotargyE = 'T' OR Altantargy = 'T')
|
||||
|
||||
--MULASZTÁS insert
|
||||
INSERT INTO #Tipusok (Tipus_Char,Igazolt,Tipus,Gyakorlati)VALUES
|
||||
('H','T',1500,'T'),('H','F',1500,'T'),('K','T',1499,'T'),('K','F',1499,'T'),
|
||||
('H','T',1500,'F'),('H','F',1500,'F'),('K','T',1499,'F'),('K','F',1499,'F')
|
||||
,('H','-',1500,'T'),('H','-',1500,'F'),('K','-',1499,'T'),('K','-',1499,'F')
|
||||
|
||||
INSERT INTO #Tanulok
|
||||
SELECT DISTINCT
|
||||
tcs.C_TANULOID
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
WHERE tcs.C_OSZTALYCSOPORTID = @pOsztalyId AND tcs.TOROLT = 'F' AND tcs.C_TANEVID = @pTanevId
|
||||
|
||||
INSERT INTO #szurtMulasztas (TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, C_GYAKORLATI,KESESPERC,MULASZTASOK_SZAMA, HOZOTTIGAZOLTMULTASZTASOK_SZAMA, HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA, FELDOLGOZATLANOK_SZAMA)
|
||||
SELECT Tipus_Char, Tipus,Igazolt,TanuloId, Gyakorlati,0,0,0,0,0
|
||||
FROM #Tanulok
|
||||
CROSS APPLY #Tipusok
|
||||
|
||||
UPDATE szm SET
|
||||
KESESPERC = m.KesesPercben
|
||||
,MULASZTASOK_SZAMA = m.MULASZTASOK_SZAMA
|
||||
,HOZOTTIGAZOLTMULTASZTASOK_SZAMA = ISNULL(IIF(szm.C_IGAZOLT = 'T',hianyzas.HOZOTTIGAZOLTHIANYZAS,0),0)
|
||||
,HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA = ISNULL(IIF(szm.C_IGAZOLT = 'F',hianyzas.HOZOTTIGAZOLATLANHIANYZAS,0),0)
|
||||
FROM #szurtMulasztas szm
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
m.Tipusa
|
||||
,m.Igazolt
|
||||
,m.TanuloId
|
||||
,m.Gyakorlati
|
||||
,SUM(ISNULL(KesesPercben,0)) as KesesPercben
|
||||
,ISNULL(COUNT(m.Tipusa),0) AS MULASZTASOK_SZAMA
|
||||
FROM fnGetDokumentumMulasztasokOsztalyonkentReszletes (@pTanevId, @pOsztalyId, @iskolaErdekuSzamit, 0, IIF(@pAtsoroltTanuloAdatok > 0, 1, 0), @idoszakEleje, @idoszakVege, DEFAULT) m
|
||||
WHERE m.Igazolt IS NOT NULL
|
||||
AND m.Tipusa BETWEEN @pMulasztasTipusIdKeses AND @pMulasztasTipusIdHianyzas
|
||||
GROUP BY m.Tipusa, m.Igazolt, m.TanuloId, m.Gyakorlati
|
||||
) m ON m.Gyakorlati = szm.C_GYAKORLATI
|
||||
AND m.Tipusa = szm.C_TIPUS
|
||||
AND m.Igazolt = szm.C_IGAZOLT
|
||||
AND m.TanuloId = szm.C_TANULOID
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
tcs.C_TANULOID
|
||||
,SUM(tta.C_HOZOTTIGAZOLTHIANYZAS) as HOZOTTIGAZOLTHIANYZAS
|
||||
,SUM(tta.C_HOZOTTIGAZOLATLANHIANYZAS) as HOZOTTIGAZOLATLANHIANYZAS
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_TANULOTANUGYIADATOK_OSSZES tta ON tta.C_TANULOCSOPORTID = tcs.ID
|
||||
AND tta.C_TANEVID = @pTanevId AND tta.TOROLT = 'F'
|
||||
WHERE tcs.C_OSZTALYCSOPORTID = @pOsztalyId
|
||||
AND tcs.C_TANEVID = @pTanevId
|
||||
AND tcs.C_BELEPESDATUM < @idoszakVege
|
||||
AND tcs.TOROLT = 'F'
|
||||
GROUP BY tcs.C_TANULOID
|
||||
) hianyzas on hianyzas.C_TANULOID = szm.C_TANULOID
|
||||
AND szm.TIPUS_CHAR = 'H'
|
||||
AND szm.C_GYAKORLATI = 'F'
|
||||
|
||||
UPDATE szm SET
|
||||
FELDOLGOZATLANOK_SZAMA = IIF(m.Tipusa = 1500, ISNULL(m.MULASZTASOK_SZAMA, 0), ISNULL(m.KesesPercben, 0))
|
||||
FROM #szurtMulasztas szm
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
m.Tipusa
|
||||
,m.Igazolt
|
||||
,m.TanuloId
|
||||
,m.Gyakorlati
|
||||
,SUM(ISNULL(KesesPercben,0)) as KesesPercben
|
||||
,ISNULL(COUNT(m.Tipusa),0) AS MULASZTASOK_SZAMA
|
||||
FROM fnGetDokumentumMulasztasokOsztalyonkentReszletes (@pTanevId, @pOsztalyId, @iskolaErdekuSzamit, 0, IIF(@pAtsoroltTanuloAdatok > 0, 1, 0), @idoszakEleje, @idoszakVege, DEFAULT) m
|
||||
WHERE m.Igazolt IS NULL
|
||||
AND m.Tipusa BETWEEN @pMulasztasTipusIdKeses AND @pMulasztasTipusIdHianyzas
|
||||
GROUP BY m.Tipusa, m.Igazolt, m.TanuloId, m.Gyakorlati
|
||||
) m ON m.Gyakorlati = szm.C_GYAKORLATI
|
||||
AND m.Tipusa = szm.C_TIPUS
|
||||
AND (m.Igazolt IS NULL AND szm.C_IGAZOLT='-')
|
||||
AND m.TanuloId = szm.C_TANULOID
|
||||
|
||||
--==================== SELECTEK ==========================
|
||||
-- OSZTÁLY
|
||||
SELECT
|
||||
o.ID
|
||||
,ocs.C_NEV
|
||||
,ocs.C_VEGZOSEVFOLYAM
|
||||
,fh.C_NYOMTATASINEV
|
||||
,o.C_OSZTALYNAPLOMEGNYITASA
|
||||
,o.C_OSZTALYNAPLOZARASA
|
||||
,o.C_OSZTALYFONOKID
|
||||
FROM T_OSZTALY_OSSZES o
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID AND ocs.TOROLT='F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES fh ON o.C_OSZTALYFONOKID = fh.ID AND fh.TOROLT='F'
|
||||
INNER JOIN T_FELADATELLATASIHELY_OSSZES felh ON felh.ID = ocs.C_FELADATELLATASIHELYID AND felh.TOROLT='F'
|
||||
WHERE ocs.ID = @pOsztalyId
|
||||
--TANULÓK LISTA
|
||||
SELECT
|
||||
fh.ID as C_TANULOID
|
||||
,fh.C_NYOMTATASINEV as TANULONEV
|
||||
,fh.C_ANYJANEVE as ANYJANEVE
|
||||
,fh.C_OKTATASIAZONOSITO as OKTATASIAZONOSITO
|
||||
,BELEPESDATUM as BELEPESDATUM
|
||||
,KILEPESDATUM as KILEPESDATUM
|
||||
FROM T_FELHASZNALO_OSSZES fh
|
||||
INNER JOIN #osztalyTanulok AS ot ON ot.TANULOID = fh.ID
|
||||
WHERE fh.TOROLT='F'
|
||||
ORDER BY fh.C_NYOMTATASINEV;
|
||||
-- TANTÁRGYAK (TANTÁRGYFELOSZTÁS, ÉRTÉKELÉS)
|
||||
SELECT DISTINCT
|
||||
C_TANTARGYID
|
||||
,TANTARGY_NEV
|
||||
,TARGYKATEGORIA_NEV
|
||||
,TARGYKATEGORIA_SORSZAM
|
||||
,C_FOTARGYE
|
||||
,C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM (
|
||||
SELECT DISTINCT
|
||||
f.C_TANTARGYID
|
||||
,COALESCE(tgy.C_NEVNYOMTATVANYBAN, tgy.C_NEV) as TANTARGY_NEV
|
||||
,dib.C_NAME as TARGYKATEGORIA_NEV
|
||||
,dib.C_VALUE as TARGYKATEGORIA_SORSZAM
|
||||
,tgy.C_FOTARGYE
|
||||
,tgy.C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_FOGLALKOZAS_OSSZES f
|
||||
INNER JOIN #aktualisOsztalyCsoportok ocs ON ocs.OSZTALYCSOPORTID = f.C_OSZTALYCSOPORTID
|
||||
INNER JOIN T_TANTARGY_OSSZES tgy ON tgy.ID = f.C_TANTARGYID AND tgy.C_TANEVID = @pTanevId
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES dib ON dib.ID = tgy.C_TARGYKATEGORIA AND dib.C_TANEVID = @pTanevId AND dib.C_DICTIONARYTYPEID = 36 AND dib.TOROLT='F'
|
||||
WHERE f.TOROLT = 'F' AND (tgy.C_FOTARGYE = 'T' OR tgy.C_ALTANTARGYKENTNYOMTATVANYBAN = 'T')
|
||||
UNION
|
||||
SELECT DISTINCT
|
||||
C_TANTARGYID
|
||||
,TANTARGY_NEV
|
||||
,TARGYKATEGORIA_NEV
|
||||
,TARGYKATEGORIA_SORSZAM
|
||||
,T_TANTARGY_C_FOTARGYE AS C_FOTARGYE
|
||||
,T_TANTARGY_C_ALTANTARGYKENTNYOMTATVANYBAN AS C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM #szurtErtekeles
|
||||
WHERE (@pAtsoroltTanuloAdatok = 2 OR C_OSZTALYCSOPORTID IN (SELECT OSZTALYCSOPORTID FROM #aktualisOsztalyCsoportok))
|
||||
) AS TANTARGYAK
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
-- ÉRTÉKELÉS lista
|
||||
SELECT *
|
||||
FROM #szurtErtekeles;
|
||||
--MAGATARTÁS-SZORGALOM
|
||||
SELECT
|
||||
ROW_NUMBER() OVER (ORDER BY TanuloId) AS ID
|
||||
,TanuloId AS C_TANULOID
|
||||
,COALESCE(CAST(MagatartasOsztalyzatValue AS nvarchar(6)), CAST(MagatartasErtekOsztalyzatkent AS nvarchar(6)), MagatartasSzovegRovidNev) AS MagatartasOsztalyzat
|
||||
,MagatartasErtek
|
||||
,COALESCE(CAST(SzorgalomOsztalyzatValue AS nvarchar(6)), CAST(SzorgalomErtekOsztalyzatkent AS nvarchar(6)), SzorgalomSzovegRovidNev) AS SzorgalomOsztalyzat
|
||||
,SzorgalomErtek
|
||||
,ErtekelesSzoveg AS C_ERTEKELESSZOVEG
|
||||
,Datum AS C_ERTEKELESDATUM
|
||||
,'F' AS TOROLT -- y tho?
|
||||
FROM fnGetDokumentumErtekelesekOsztalyonkent (@pTanevId, @pOsztalyId, @pErtekelestipusaId, DEFAULT, DEFAULT, @pAtsoroltTanuloAdatok, DEFAULT) AS ERTEKELESEK
|
||||
WHERE TantargyId IS NULL AND (@pAtsoroltTanuloAdatok > 0 OR OsztalyCsoportId IN (SELECT OSZTALYCSOPORTID FROM #aktualisOsztalyCsoportok));
|
||||
--MULASZTÁS stat
|
||||
IF @pElmeletgyakorlat=0
|
||||
BEGIN
|
||||
SELECT
|
||||
szm.TIPUS_CHAR
|
||||
,szm.C_TIPUS
|
||||
,szm.C_IGAZOLT
|
||||
,szm.C_TANULOID
|
||||
,szm.KESESPERC
|
||||
,szm.KESESORA
|
||||
,ISNULL(szm.MULASZTASOK_SZAMA,0) +
|
||||
IIF(szm.TIPUS_CHAR = 'K',0,IIF(szm.C_IGAZOLT = 'T',szm.HOZOTTIGAZOLTMULTASZTASOK_SZAMA,szm.HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA))
|
||||
AS MULASZTASOK_SZAMA
|
||||
,IIF(szm.TIPUS_CHAR = 'K',0,IIF(szm.C_IGAZOLT = 'T',szm.HOZOTTIGAZOLTMULTASZTASOK_SZAMA,szm.HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA))
|
||||
AS HOZOTTMULASZTASOK_SZAMA
|
||||
,szm.FELDOLGOZATLANOK_SZAMA
|
||||
FROM (
|
||||
SELECT
|
||||
TIPUS_CHAR
|
||||
,C_TIPUS
|
||||
,C_IGAZOLT
|
||||
,C_TANULOID
|
||||
,SUM(KESESPERC) AS KESESPERC
|
||||
,SUM(KESESPERC)/@kesespercHianyzashoz AS KESESORA
|
||||
,SUM(ISNULL(MULASZTASOK_SZAMA,0)) AS MULASZTASOK_SZAMA
|
||||
,SUM(HOZOTTIGAZOLTMULTASZTASOK_SZAMA) AS HOZOTTIGAZOLTMULTASZTASOK_SZAMA
|
||||
,SUM(HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA) AS HOZOTTIGAZOLATLANTMULTASZTASOK_SZAMA
|
||||
,SUM(FELDOLGOZATLANOK_SZAMA) AS FELDOLGOZATLANOK_SZAMA
|
||||
FROM #szurtMulasztas
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID) AS szm
|
||||
ORDER BY szm.C_TANULOID, szm.C_TIPUS DESC, szm.C_IGAZOLT DESC
|
||||
|
||||
SELECT
|
||||
C_IGAZOLT
|
||||
,C_TANULOID
|
||||
,SUM(MULASZTASOK_SZAMA) AS MULASZTASOK_SZAMA
|
||||
FROM (
|
||||
SELECT
|
||||
TIPUS_CHAR
|
||||
,C_TIPUS
|
||||
,C_IGAZOLT
|
||||
,C_TANULOID
|
||||
,SUM(KESESPERC)/@kesespercHianyzashoz AS MULASZTASOK_SZAMA
|
||||
FROM #szurtMulasztas
|
||||
WHERE TIPUS_CHAR = 'K'
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID
|
||||
UNION ALL
|
||||
SELECT
|
||||
TIPUS_CHAR
|
||||
,C_TIPUS
|
||||
,C_IGAZOLT
|
||||
,C_TANULOID
|
||||
,SUM(MULASZTASOK_SZAMA) AS MULASZTASOK_SZAMA
|
||||
FROM #szurtMulasztas
|
||||
WHERE TIPUS_CHAR = 'H'
|
||||
GROUP BY TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID
|
||||
) AS KM
|
||||
GROUP BY C_IGAZOLT, C_TANULOID
|
||||
ORDER BY C_TANULOID, C_IGAZOLT DESC
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SELECT
|
||||
szm.TIPUS_CHAR,
|
||||
szm.C_TIPUS,
|
||||
szm.C_IGAZOLT,
|
||||
szm.C_TANULOID,
|
||||
szm.KESESPERC,
|
||||
szm.KESESORA,
|
||||
ISNULL(szm.MULASZTASOK_SZAMA,0) +
|
||||
IIF(szm.TIPUS_CHAR = 'K' OR szm.C_GYAKORLATI = 'T',0,IIF( tcs.C_BELEPESDATUM < @idoszakVege,IIF(szm.C_IGAZOLT = 'T',tta.C_HOZOTTIGAZOLTHIANYZAS,tta.C_HOZOTTIGAZOLATLANHIANYZAS),0))
|
||||
AS MULASZTASOK_SZAMA,
|
||||
IIF(szm.TIPUS_CHAR = 'K',0,IIF( tcs.C_BELEPESDATUM < @idoszakVege,IIF(szm.C_IGAZOLT = 'T',tta.C_HOZOTTIGAZOLTHIANYZAS,tta.C_HOZOTTIGAZOLATLANHIANYZAS),0))
|
||||
AS HOZOTTMULASZTASOK_SZAMA,
|
||||
szm.C_GYAKORLATI
|
||||
,szm.FELDOLGOZATLANOK_SZAMA
|
||||
FROM (
|
||||
SELECT
|
||||
TIPUS_CHAR,
|
||||
C_TIPUS,
|
||||
C_IGAZOLT,
|
||||
C_TANULOID,
|
||||
KESESPERC,
|
||||
KESESPERC/(CASE WHEN C_GYAKORLATI = 'T' THEN @kesespercGyakHianyzashoz ELSE @kesespercHianyzashoz END) AS KESESORA,
|
||||
MULASZTASOK_SZAMA,
|
||||
C_GYAKORLATI
|
||||
,FELDOLGOZATLANOK_SZAMA
|
||||
FROM #szurtMulasztas ) AS szm
|
||||
INNER JOIN T_TANULOCSOPORT tcs ON tcs.C_TANULOID = szm.C_TANULOID AND tcs.C_OSZTALYCSOPORTID = @pOsztalyId AND tcs.C_TANEVID = @pTanevId AND tcs.TOROLT = 'F'
|
||||
INNER JOIN T_TANULOTANUGYIADATOK tta ON tta.C_TANULOCSOPORTID = tcs.ID AND tta.C_TANEVID = @pTanevId AND tta.TOROLT = 'F'
|
||||
ORDER BY szm.C_TANULOID, szm.C_TIPUS DESC, szm.C_IGAZOLT DESC
|
||||
SELECT C_IGAZOLT, C_TANULOID, SUM(MULASZTASOK_SZAMA) AS MULASZTASOK_SZAMA, C_GYAKORLATI
|
||||
FROM (
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, KESESPERC/(CASE WHEN C_GYAKORLATI = 'T' THEN @kesespercGyakHianyzashoz ELSE @kesespercHianyzashoz END) AS MULASZTASOK_SZAMA, C_GYAKORLATI
|
||||
FROM #szurtMulasztas
|
||||
WHERE TIPUS_CHAR = 'K'
|
||||
UNION ALL
|
||||
SELECT TIPUS_CHAR, C_TIPUS, C_IGAZOLT, C_TANULOID, MULASZTASOK_SZAMA, C_GYAKORLATI
|
||||
FROM #szurtMulasztas
|
||||
WHERE TIPUS_CHAR = 'H'
|
||||
) AS KM
|
||||
GROUP BY C_IGAZOLT, C_TANULOID, C_GYAKORLATI
|
||||
ORDER BY C_TANULOID, C_IGAZOLT DESC;
|
||||
END
|
||||
--TANÓRAI FELJEGYZÉSEK
|
||||
SELECT
|
||||
C_TANULOID
|
||||
,SUM(IIF(C_TIPUS = @pTanoraiDicseretTipusId, 1, 0)) AS TanoraiDicseret
|
||||
,SUM(IIF(C_TIPUS = @pFelszereleshianyTipusId, 1, 0)) AS FelszerelesHiany
|
||||
,SUM(IIF(C_TIPUS = @pHaziFeladatHianyTipusId, 1, 0)) AS HaziFeladatHiany
|
||||
,'F' AS TOROLT
|
||||
FROM T_TANULOESEMENY_OSSZES AS TANULOESEMENY
|
||||
INNER JOIN T_TANITASIORA_OSSZES AS TANITASIORA ON TANITASIORA.ID = TANULOESEMENY.C_TANITASIORAID
|
||||
INNER JOIN T_TANULO_TANULOESEMENY AS TANULO_TANULOE ON TANULO_TANULOE.C_TANULOESEMENYID = TANULOESEMENY.ID
|
||||
INNER JOIN T_DICTIONARYITEMBASE AS TIPUS ON TIPUS.ID = TANULOESEMENY.C_TIPUS AND TIPUS.C_TANEVID = TANULOESEMENY.C_TANEVID
|
||||
INNER JOIN #osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = TANULO_TANULOE.C_TANULOID
|
||||
INNER JOIN #aktualisOsztalyCsoportok AS OSZTALYCSOPORT ON OSZTALYCSOPORT.OSZTALYCSOPORTID = TANITASIORA.C_OSZTALYCSOPORTID
|
||||
LEFT JOIN T_CSOPORT_OSSZES AS CSOPORT ON CSOPORT.ID = OSZTALYCSOPORT.OSZTALYCSOPORTID
|
||||
LEFT JOIN T_OSZTALY_OSSZES AS OSZTALY ON OSZTALY.ID = OSZTALYCSOPORT.OSZTALYCSOPORTID
|
||||
WHERE TANULOESEMENY.TOROLT = 'F' AND TANITASIORA.TOROLT = 'F' AND TANULOESEMENY.C_TANEVID = @pTanevId AND C_TANITASIORAID IS NOT NULL
|
||||
AND TANITASIORA.C_DATUM BETWEEN @idoszakEleje AND @idoszakVege
|
||||
AND TANITASIORA.C_OSZTALYCSOPORTID IN (SELECT OSZTALYCSOPORTID FROM #aktualisOsztalyCsoportok)
|
||||
GROUP BY C_TANULOID
|
||||
-- Osztály adatok az iktatáshoz
|
||||
SELECT
|
||||
f.C_NYOMTATASINEV Osztalyfonok
|
||||
,f.ID OsztalyfonokId
|
||||
,ocs.C_NEV Osztalynev
|
||||
,@pOsztalyId OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,o.C_TANTERVID TantervId
|
||||
,ocs.C_KEPZESIFORMA KepzesiForma
|
||||
,o.C_AGAZAT Agazat
|
||||
,o.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,o.C_SZAKKEPESITES Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,ocs.C_ISTECHNIKAI OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI OJIsGyogypedagogiaiLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.id
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = o.C_OSZTALYFONOKID
|
||||
WHERE ocs.ID = @pOsztalyId AND ocs.C_TANEVID = @pTanevId AND ocs.TOROLT = 'F';
|
||||
|
||||
SELECT
|
||||
C_TANULOID
|
||||
,[D] AS Dicseret
|
||||
,[K] AS Kituno
|
||||
FROM (
|
||||
SELECT
|
||||
C_TANULOID
|
||||
,T_TANULOERTEKELES_ID
|
||||
,LEFT(ERTEKELES_SZOVEG_MEGJEGYZES, 1) AS Szoveg
|
||||
FROM #szurtErtekeles
|
||||
WHERE ERTEKELES = '5'
|
||||
AND LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(ERTEKELES_SZOVEG_MEGJEGYZES,char(160),char(32)),char(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',char(32)))) IN ( 'Dicséret', 'Kitűnő' )
|
||||
) AS s
|
||||
PIVOT(COUNT(T_TANULOERTEKELES_ID) FOR Szoveg IN ([D], [K])) piv
|
||||
ORDER BY C_TANULOID
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,197 @@
|
|||
DROP PROCEDURE IF EXISTS sp_Nyomtatvany_Excel_IdoszakiOsztalyokCsoportokTantargyiStatisztika
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_Nyomtatvany_Excel_IdoszakiOsztalyokCsoportokTantargyiStatisztika]
|
||||
@pTanevId INT,
|
||||
@pErtekelestipusaId INT,
|
||||
@pTanevrendjeTanevKezdeteNaptipusId INT = 1394, --Tanévrendje első nap típus
|
||||
@pLezaroNaptipusId INT,
|
||||
@pAtsoroltTanuloAdatok INT = 1
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
DECLARE @ElsoFelveVege INT = 1400
|
||||
DECLARE @IneVege INT = 1403
|
||||
DECLARE @IIIneVege INT = 1404
|
||||
DECLARE @UtolsoTanitasiNap INT = 1395
|
||||
DECLARE @VegzosUtolsoTanitasiNap INT = 1402
|
||||
|
||||
DECLARE @osztalyok TABLE(OSZTALYID INT, NEV NVARCHAR(MAX), EVFOLYAM INT, SORREND INT);
|
||||
DECLARE @tantargyak TABLE(TANTARGYID INT, TANTARGY_NEV NVARCHAR(MAX), TARGYKATEGORIA_NEV NVARCHAR(MAX), TARGYKATEGORIA_SORSZAM INT, C_FOTARGYE CHAR(1), C_ALTANTARGYKENTNYOMTATVANYBAN CHAR(1));
|
||||
DECLARE @osztalyokCsoportokErtekeles TABLE (TECHNIKAIID NVARCHAR(MAX), OSZTALYCSOPORTID INT, OSZTALYCSOPORTNEV NVARCHAR(MAX), SORREND INT, TANTARGYID INT, TANTARGYNEV NVARCHAR(MAX), AKTUALISLETSZAM INT, ATLAG FLOAT);
|
||||
DECLARE @osztalyTanulok TABLE (TANULOID INT PRIMARY KEY, BELEPESDATUM DATE, KILEPESDATUM DATE);
|
||||
|
||||
DECLARE @DefaultFeladatKategoriaId int = 7553 /*OktNevelesiKategoriaEnum.Alapkepzes*/
|
||||
|
||||
INSERT INTO @tantargyak (TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN)
|
||||
SELECT TANTARGYAK.ID AS TANTARGYID, COALESCE(TANTARGYAK.C_NEVNYOMTATVANYBAN, TANTARGYAK.C_NEV) AS TANTARGY_NEV, TARGYKATEG.C_NAME AS TARGYKATEGORIA_NEV, TARGYKATEG.C_VALUE AS TARGYKATEGORIA_SORSZAM, TANTARGYAK.C_FOTARGYE, TANTARGYAK.C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_TANTARGY_OSSZES AS TANTARGYAK
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = TANTARGYAK.C_TARGYKATEGORIA AND TARGYKATEG.C_TANEVID = TANTARGYAK.C_TANEVID
|
||||
WHERE TANTARGYAK.TOROLT = 'F' AND TANTARGYAK.C_TANEVID = @pTanevId
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
|
||||
SELECT CAST(OSZTALYCSOPORT.ID AS nvarchar(MAX)) + '_' + CAST(OSZTALYCSOPORT.ID AS nvarchar(MAX)) AS TECHNIKAIID, OSZTALYCSOPORT.ID AS OSZTALYID, OSZTALYCSOPORT.C_NEV AS NEV,
|
||||
OSZTALYCSOPORT.C_EVFOLYAMTIPUSA AS EVFOLYAM, EVFOLYAM.C_ORDER AS SORREND, (SELECT COUNT(TanuloId) FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, OSZTALYCSOPORT.ID, 0)) AS AKTUALISLETSZAM,
|
||||
C_KERESZTFELEVES AS KERESZTFELEVES, C_VEGZOSEVFOLYAM AS VEGZOSEVFOLYAM,
|
||||
ROW_NUMBER() OVER(ORDER BY EVFOLYAM.C_ORDER ASC, OSZTALYCSOPORT.C_NEV ASC) AS Row#
|
||||
,@pTanevId TanevId
|
||||
,OSZTALY.C_OSZTALYFONOKID OsztalyfonokId
|
||||
,OSZTALYCSOPORT.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,OSZTALY.C_TANTERVID TantervId
|
||||
,OSZTALYCSOPORT.C_KEPZESIFORMA KepzesiForma
|
||||
,OSZTALY.C_AGAZAT Agazat
|
||||
,OSZTALY.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,OSZTALY.C_SZAKKEPESITES Szakkepesites
|
||||
,OSZTALY.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,OSZTALYCSOPORT.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,OSZTALYCSOPORT.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,OSZTALYCSOPORT.C_ISTECHNIKAI OJTechnikaiOsztaly
|
||||
,OSZTALY.C_NEMZETISEGI OJNemzetisegi
|
||||
,OSZTALY.C_KETTANNYELVU OJKettannyelvu
|
||||
,OSZTALY.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,OSZTALYCSOPORT.C_ISGYOGYPEDAGOGIAILOGOPEDIAI OJIsGyogypedagogiaiLogopediai
|
||||
,OSZTALY.C_SPORT OJSportOsztaly
|
||||
,OSZTALY.C_AJPROGRAM OJAranyJanosProgram
|
||||
INTO #tempOsztalyok
|
||||
FROM T_OSZTALY_OSSZES AS OSZTALY
|
||||
JOIN T_OSZTALYCSOPORT_OSSZES AS OSZTALYCSOPORT ON OSZTALY.ID = OSZTALYCSOPORT.ID AND OSZTALYCSOPORT.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
JOIN T_DICTIONARYITEMBASE_OSSZES AS EVFOLYAM ON EVFOLYAM.ID = OSZTALYCSOPORT.C_EVFOLYAMTIPUSA AND EVFOLYAM.TOROLT = 'F' AND EVFOLYAM.C_TANEVID = OSZTALY.C_ALTANEVID
|
||||
WHERE OSZTALYCSOPORT.TOROLT = 'F' AND OSZTALY.C_ALTANEVID = @pTanevId
|
||||
ORDER BY Row#;
|
||||
|
||||
DECLARE @pOsztalyId INT = 0;
|
||||
DECLARE @sorrend INT = 0;
|
||||
DECLARE @keresztFeleves BIT = 0;
|
||||
DECLARE @vegzosEvfolyamu BIT = 0;
|
||||
WHILE (1 = 1)
|
||||
BEGIN
|
||||
SELECT TOP 1 @pOsztalyId = OSZTALYID, @sorrend = Row#, @keresztFeleves = IIF(KERESZTFELEVES = 'T', 1, 0), @vegzosEvfolyamu = IIF(VEGZOSEVFOLYAM = 'T', 1, 0)
|
||||
FROM #tempOsztalyok
|
||||
WHERE @sorrend < Row#
|
||||
ORDER BY Row#;
|
||||
IF @@ROWCOUNT = 0
|
||||
BEGIN
|
||||
BREAK;
|
||||
END
|
||||
|
||||
|
||||
--Osztalyjellemzok alapjan a nyito/lezaro naptipus csereje
|
||||
DECLARE @pKezdeteOsztalyNaptipusId INT = (
|
||||
IIF(@keresztFeleves = 0, @pTanevrendjeTanevKezdeteNaptipusId,
|
||||
CASE
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @pTanevrendjeTanevKezdeteNaptipusId
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @pTanevrendjeTanevKezdeteNaptipusId
|
||||
END)
|
||||
)
|
||||
|
||||
DECLARE @pLezaroOsztalyNaptipusId INT = (
|
||||
IIF(@keresztFeleves = 0, IIF(@vegzosEvfolyamu = 1 AND @pLezaroNaptipusId = @UtolsoTanitasiNap, @VegzosUtolsoTanitasiNap, @pLezaroNaptipusId),
|
||||
CASE
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @UtolsoTanitasiNap
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @IIIneVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @IneVege
|
||||
END)
|
||||
)
|
||||
|
||||
DECLARE @idoszakEleje DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pKezdeteOsztalyNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
(SELECT TOP 1 C_KEZDONAP FROM T_TANEV_OSSZES WHERE ID = @pTanevId))
|
||||
);
|
||||
|
||||
DECLARE @idoszakVege DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pLezaroOsztalyNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
GETDATE())
|
||||
);
|
||||
|
||||
|
||||
INSERT INTO @osztalyTanulok (TANULOID, BELEPESDATUM, KILEPESDATUM) (
|
||||
SELECT T_FELHASZNALO_OSSZES.ID AS TANULOID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
INNER JOIN (
|
||||
SELECT tcs.C_TANULOID, tcs.C_OSZTALYCSOPORTID, tcs.C_BELEPESDATUM, tcs.C_KILEPESDATUM
|
||||
FROM T_TANULOCSOPORT_OSSZES tcs
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID=tcs.C_OSZTALYCSOPORTID AND ocs.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId AND ocs.TOROLT='F'
|
||||
WHERE tcs.TOROLT = 'F' AND tcs.C_BELEPESDATUM < @idoszakVege
|
||||
AND (tcs.C_KILEPESDATUM IS NULL OR tcs.C_KILEPESDATUM >= @idoszakVege)
|
||||
) AS TANCSOPORT ON TANCSOPORT.C_TANULOID = T_FELHASZNALO_OSSZES.ID
|
||||
WHERE T_FELHASZNALO_OSSZES.TOROLT = 'F' AND TANCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND T_FELHASZNALO_OSSZES.C_TANEVID = @pTanevId
|
||||
);
|
||||
|
||||
INSERT INTO @osztalyokCsoportokErtekeles(TECHNIKAIID, OSZTALYCSOPORTID, OSZTALYCSOPORTNEV, SORREND, TANTARGYID, TANTARGYNEV, AKTUALISLETSZAM, ATLAG)
|
||||
SELECT CAST(@pOsztalyId AS nvarchar(MAX)) + '_' + CAST(OsztalyCsoportId AS nvarchar(MAX)) AS TechnikaiId, OsztalyCsoportId, OSZTALYCSOPORT.C_NEV + (IIF(CSOPORT.ID IS NOT NULL, ' (' + (SELECT C_NEV FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyId) + ')', '')) AS OsztalyCsoportNev, @sorrend,
|
||||
TantargyId, TantargyNev,
|
||||
(SELECT COUNT(TanuloId) FROM (
|
||||
SELECT TanuloId FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, OsztalyCsoportId, 0)
|
||||
INTERSECT
|
||||
SELECT TanuloId FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 0)) AS T) AS Aktualisletszam,
|
||||
AVG(CAST (ErtekelesOsztalyzatValue AS float)) AS Atlag
|
||||
FROM fnGetDokumentumErtekelesekOsztalyonkent(@pTanevId, @pOsztalyId, @pErtekelestipusaId, DEFAULT, DEFAULT, 1, DEFAULT) AS ERTEKELESEK
|
||||
INNER JOIN @osztalyTanulok AS OSZTALYTANULOK ON OSZTALYTANULOK.TANULOID = ERTEKELESEK.TanuloId
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES AS OSZTALYCSOPORT ON OSZTALYCSOPORT.ID = OsztalyCsoportId AND OSZTALYCSOPORT.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
LEFT JOIN T_CSOPORT_OSSZES AS CSOPORT ON CSOPORT.ID = OSZTALYCSOPORT.ID
|
||||
WHERE IsMagatartasSzorgalom = 'F'
|
||||
GROUP BY OsztalyCsoportId, OSZTALYCSOPORT.C_NEV, TantargyId, TantargyNev, CSOPORT.ID
|
||||
END
|
||||
|
||||
SELECT *
|
||||
FROM (
|
||||
SELECT DISTINCT TECHNIKAIID, OSZTALYCSOPORTID, OSZTALYCSOPORTNEV, AKTUALISLETSZAM, SORREND
|
||||
FROM @osztalyokCsoportokErtekeles
|
||||
UNION
|
||||
SELECT TECHNIKAIID, OSZTALYID AS OSZTALYCSOPORTID, NEV AS OSZTALYCSOPORTNEV, AKTUALISLETSZAM, Row# AS SORREND
|
||||
FROM #tempOsztalyok
|
||||
) AS OSZTALYOKCSOPORTOK
|
||||
ORDER BY SORREND, OSZTALYCSOPORTNEV;
|
||||
|
||||
SELECT DISTINCT TANTARGYID, TANTARGY_NEV
|
||||
FROM @tantargyak;
|
||||
|
||||
SELECT *
|
||||
FROM @osztalyokCsoportokErtekeles;
|
||||
|
||||
select OSZTALYID AS OsztalyId
|
||||
,EVFOLYAM AS EvfolyamTipusa
|
||||
,FeladatEllatasiHelyId
|
||||
,KepzesiForma
|
||||
,OsztalyfonokId
|
||||
,TantervId
|
||||
,OJAranyJanosProgram
|
||||
,OJCSJKeresztfeleves
|
||||
,OJKettannyelvu
|
||||
,OJIsGyogypedagogiaiLogopediai
|
||||
,OJNemzetisegi
|
||||
,OJNyelviElokeszito
|
||||
,OJSportOsztaly
|
||||
,OJTechnikaiOsztaly
|
||||
,SzakmaCsoport
|
||||
,Agazat
|
||||
,Szakkepesites
|
||||
,Reszszakkepesites from #tempOsztalyok;
|
||||
|
||||
select cs.ID CsoportId
|
||||
,cs.C_CSOPORTVEZETOID as Csoportvezeto
|
||||
,cs.C_TIPUSA as CsoportTipus
|
||||
,ocs.C_KERESZTFELEVES as OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM as CSJVegzosEvfolyamu
|
||||
from T_CSOPORT_OSSZES cs
|
||||
inner join @osztalyokCsoportokErtekeles ocse on ocse.OSZTALYCSOPORTID = cs.iD
|
||||
inner join T_OSZTALYCSOPORT_OSSZES ocs on ocs.ID = cs.ID;
|
||||
|
||||
IF OBJECT_ID('tempdb..#tempOsztalyok') IS NOT NULL DROP TABLE #tempOsztalyok
|
||||
IF OBJECT_ID('tempdb..#tempErtekeles') IS NOT NULL DROP TABLE #tempErtekeles
|
||||
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,456 @@
|
|||
DROP PROCEDURE IF EXISTS [dbo].[sp_Nyomtatvany_Excel_IdoszakiOsztalyokTantargyiStatisztika]
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_Nyomtatvany_Excel_IdoszakiOsztalyokTantargyiStatisztika]
|
||||
@pTanevId int
|
||||
,@pIntezmenyId int
|
||||
,@pErtekelestipusaId int
|
||||
,@pLezaroNaptipusId int
|
||||
,@pTanoraiCsoportTipusIds int = 1034
|
||||
,@pMulasztasTipusIdKeses int = 1499
|
||||
,@pMulasztasTipusIdHianyzas int = 1500
|
||||
,@pNemMulasztaIgazolasTipusIds int = 1532 -- Iskola érdekű távollét
|
||||
,@pTanevrendjeTanevKezdeteNaptipusId int = 1394 --Tanévrendje első nap típus
|
||||
,@pAtsoroltTanuloAdatok int = 1
|
||||
,@pElmeletgyakorlat bit = 0
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
--Const
|
||||
DECLARE
|
||||
@ElsoFelveVege int = 1400
|
||||
,@IneVege int = 1403
|
||||
,@IIIneVege int = 1404
|
||||
,@UtolsoTanitasiNap int = 1395
|
||||
,@VegzosUtolsoTanitasiNap int = 1402
|
||||
,@iskolaErdekuSzamit bit = dbo.fnGetRendszerbeallitasEnumBool(1683, @pIntezmenyId, @pTanevId)
|
||||
,@DefaultFeladatKategoriaId int = 7553 /*OktNevelesiKategoriaEnum.Alapkepzes*/
|
||||
|
||||
CREATE TABLE #tantargyak (
|
||||
TantargyId int
|
||||
,TantargyNev nvarchar(255)
|
||||
,TargykategoriaSorszam int
|
||||
)
|
||||
|
||||
CREATE TABLE #osztalyokTanulokszama (
|
||||
OsztalyId int
|
||||
,TanulokSzama int
|
||||
)
|
||||
CREATE TABLE #osztalyokErtekeles (
|
||||
OsztalyId int
|
||||
,TantargyId int
|
||||
,Atlag float
|
||||
)
|
||||
CREATE TABLE #osztalyokMagszorg (
|
||||
OsztalyId int
|
||||
,MagAtlag float
|
||||
,SzorgAtlag float
|
||||
)
|
||||
CREATE TABLE #osztalyokMulasztas (
|
||||
OsztalyId int
|
||||
,TIPUS_CHAR char(1)
|
||||
,C_TIPUS int
|
||||
,C_IGAZOLT char(1)
|
||||
,MulasztasokSzama int
|
||||
,C_GYAKORLATI char(1)
|
||||
,DESCR char(3)
|
||||
)
|
||||
CREATE TABLE #szurtMulasztas (
|
||||
TIPUS_CHAR char(1)
|
||||
,C_TIPUS int
|
||||
,C_IGAZOLT char(1)
|
||||
,C_TANULOID int
|
||||
,C_GYAKORLATI char(1)
|
||||
,KESESPERC int
|
||||
,MulasztasokSzama int
|
||||
)
|
||||
CREATE TABLE #tempMulasztas (
|
||||
TIPUS int
|
||||
,IGAZOLT char(1)
|
||||
,GYAKORLATI char(1)
|
||||
,KESESPERC int
|
||||
,MulasztasokSzama int
|
||||
,OsztalyId int
|
||||
)
|
||||
CREATE TABLE #csopTip (
|
||||
ID int PRIMARY KEY CLUSTERED
|
||||
)
|
||||
CREATE TABLE #OsztalyokTanulok(
|
||||
OsztalyId int
|
||||
,TanuloId int
|
||||
,BelepesDatum datetime
|
||||
,KilepesDatum datetime
|
||||
INDEX IX_OT CLUSTERED (TanuloId)
|
||||
)
|
||||
CREATE TABLE #tempOsztalyok(
|
||||
OsztalyId int
|
||||
,OsztalyNev nvarchar(255)
|
||||
,Sorrend int
|
||||
,KereszFeleves char(1)
|
||||
,VegzosEVfolyam char(1)
|
||||
,Letszam int
|
||||
,IdoszakKezdeteNaptipusId int
|
||||
,IdoszakVegeNaptipusId int
|
||||
,IdoszakKezdete datetime
|
||||
,IdoszakVege datetime
|
||||
INDEX IX_tmpO CLUSTERED(OsztalyId)
|
||||
)
|
||||
CREATE TABLE #tempOsztalyErtekelesek(
|
||||
TantargyId int
|
||||
,Osztalyzat int
|
||||
,TanuloId int
|
||||
,OsztalyId int
|
||||
,MagatartasOsztalyzat int
|
||||
,SzorgalomOsztalyzat int
|
||||
INDEX IX_tmpO_tgy CLUSTERED(TantargyId)
|
||||
)
|
||||
|
||||
-- TANTÁRGYAK
|
||||
INSERT INTO #tantargyak (
|
||||
TantargyId
|
||||
,TantargyNev
|
||||
,TargyKategoriaSorszam
|
||||
)
|
||||
SELECT
|
||||
tgy.ID AS TantargyId
|
||||
,COALESCE(tgy.C_NEVNYOMTATVANYBAN, tgy.C_NEV) AS TantargyNev
|
||||
,ISNULL(dibKat.C_VALUE,0)
|
||||
FROM T_TANTARGY_OSSZES tgy
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES AS dibKat ON dibKat.ID = tgy.C_TARGYKATEGORIA AND dibKat.C_TANEVID = tgy.C_TANEVID
|
||||
WHERE tgy.TOROLT = 'F' AND tgy.C_TANEVID = @pTanevId
|
||||
|
||||
INSERT INTO #tantargyak(
|
||||
TantargyId
|
||||
,TantargyNev
|
||||
,TargyKategoriaSorszam
|
||||
)
|
||||
VALUES(-1,'Magatartás',-2),(-2,'Szorgalom',-1)
|
||||
|
||||
|
||||
-- OSZTÁLYOK
|
||||
INSERT INTO #tempOsztalyok(
|
||||
OsztalyId
|
||||
,OsztalyNev
|
||||
,Sorrend
|
||||
,KereszFeleves
|
||||
,VegzosEVfolyam
|
||||
,Letszam
|
||||
,IdoszakKezdeteNaptipusId
|
||||
,IdoszakVegeNaptipusId
|
||||
)
|
||||
SELECT
|
||||
ocs.ID AS OsztalyId
|
||||
,ocs.C_NEV AS OsztalyNev
|
||||
,dibEvf.C_ORDER AS Sorrend
|
||||
,ocs.C_KERESZTFELEVES AS KereszFeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM AS VegzosEVfolyam
|
||||
,0 Letszam
|
||||
,IIF(ocs.C_KERESZTFELEVES = 'F', @pTanevrendjeTanevKezdeteNaptipusId,
|
||||
CASE
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @pTanevrendjeTanevKezdeteNaptipusId
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @pTanevrendjeTanevKezdeteNaptipusId
|
||||
END) IdoszakKezdeteNaptipusId
|
||||
,IIF(ocs.C_KERESZTFELEVES = 'F', IIF(ocs.C_VEGZOSEVFOLYAM = 'T' AND @pLezaroNaptipusId = @UtolsoTanitasiNap, @VegzosUtolsoTanitasiNap, @pLezaroNaptipusId),
|
||||
CASE
|
||||
WHEN @pLezaroNaptipusId = @ElsoFelveVege THEN @UtolsoTanitasiNap
|
||||
WHEN @pLezaroNaptipusId = @UtolsoTanitasiNap THEN @ElsoFelveVege
|
||||
WHEN @pLezaroNaptipusId = @IneVege THEN @IIIneVege
|
||||
WHEN @pLezaroNaptipusId = @IIIneVege THEN @IneVege
|
||||
END) IdoszakVegeNaptipusId
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.ID
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES AS dibEvf ON dibEvf.ID = ocs.C_EVFOLYAMTIPUSA AND dibEvf.TOROLT = 'F'
|
||||
AND dibEvf.C_TANEVID = ocs.C_TANEVID
|
||||
WHERE ocs.TOROLT = 'F'
|
||||
AND ocs.C_TANEVID = @pTanevId
|
||||
AND ocs.C_FELADATKATEGORIAID = @DefaultFeladatKategoriaId
|
||||
|
||||
UPDATE #tempOsztalyok SET
|
||||
IdoszakKezdete = ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES tr
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON tr.ID = ocstr.C_TANEVRENDJEID
|
||||
WHERE tr.C_TANEVID = @pTanevId AND tr.C_NAPTIPUSA = IdoszakKezdeteNaptipusId AND tr.TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = OsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
(SELECT TOP 1 C_KEZDONAP FROM T_TANEV_OSSZES WHERE ID = @pTanevId))
|
||||
,IdoszakVege = ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES tr
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON tr.ID = ocstr.C_TANEVRENDJEID
|
||||
WHERE tr.C_TANEVID = @pTanevId AND tr.C_NAPTIPUSA = IdoszakVegeNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = OsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
GETDATE())
|
||||
|
||||
UPDATE #tempOsztalyok SET Letszam = DB FROM (
|
||||
SELECT
|
||||
COUNT(*) db
|
||||
,o.OsztalyId
|
||||
FROM #tempOsztalyok o
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcso ON tcso.C_OSZTALYCSOPORTID = o.OsztalyId
|
||||
AND tcso.TOROLT='F'
|
||||
AND o.IdoszakVege BETWEEN tcso.C_BELEPESDATUM AND ISNULL(tcso.C_KILEPESDATUM,'22000101')
|
||||
GROUP BY o.OsztalyId) x
|
||||
WHERE x.OsztalyId = #tempOsztalyok.OsztalyId
|
||||
|
||||
INSERT INTO #OsztalyokTanulok(
|
||||
OsztalyId
|
||||
,TanuloId
|
||||
,BelepesDatum
|
||||
,KilepesDatum
|
||||
)
|
||||
SELECT DISTINCT
|
||||
o.OsztalyId
|
||||
,tcso.C_TANULOID
|
||||
,tcso.C_BELEPESDATUM
|
||||
,tcso.C_KILEPESDATUM
|
||||
FROM T_TANULOCSOPORT_OSSZES tcso
|
||||
INNER JOIN #tempOsztalyok o ON o.OsztalyId = tcso.C_OSZTALYCSOPORTID
|
||||
WHERE tcso.TOROLT='F' AND tcso.C_TANEVID = @pTanevId
|
||||
AND o.IdoszakVege BETWEEN tcso.C_BELEPESDATUM AND ISNULL(tcso.C_KILEPESDATUM,'22000101')
|
||||
|
||||
INSERT INTO #csopTip(ID)
|
||||
SELECT Id FROM fnGetDokumentumOsztalyVagyTanoraiCsoport (@pTanevId)
|
||||
|
||||
INSERT INTO #tempMulasztas(
|
||||
TIPUS
|
||||
,IGAZOLT
|
||||
,GYAKORLATI
|
||||
,KESESPERC
|
||||
,MulasztasokSzama
|
||||
,OsztalyId
|
||||
)
|
||||
SELECT
|
||||
tm.C_TIPUS -- 1500 hiányzás, 1499 késés
|
||||
,tm.C_IGAZOLT
|
||||
,tgy.C_GYAKORLATI
|
||||
,SUM(tm.C_KESESPERCBEN)
|
||||
,COUNT(tm.ID) AS MulasztasokSzama
|
||||
,o.OsztalyId
|
||||
FROM T_TANULOMULASZTAS_OSSZES tm
|
||||
INNER JOIN T_TANITASIORA_OSSZES tao ON tao.ID = tm.C_TANITASIORAKID
|
||||
AND tao.TOROLT = 'F'
|
||||
AND tao.C_MEGTARTOTT = 'T'
|
||||
AND tao.C_TANEVID = @pTanevId
|
||||
INNER JOIN #OsztalyokTanulok ot ON ot.TanuloId = tm.C_ORATANULOIID
|
||||
INNER JOIN #tempOsztalyok o ON o.OsztalyId = ot.OsztalyId
|
||||
AND tao.C_DATUM <= o.IdoszakVege
|
||||
INNER JOIN T_TANTARGY_OSSZES tgy ON tgy.ID = tao.C_TANTARGYID AND tgy.TOROLT='F'
|
||||
INNER JOIN #csopTip csop ON csop.ID=tao.C_OSZTALYCSOPORTID
|
||||
WHERE tm.C_TIPUS BETWEEN 1499 AND 1500
|
||||
AND ot.BelepesDatum <= tao.C_DATUM AND (ot.KilepesDatum IS NULL OR ot.KilepesDatum >= tao.C_DATUM)
|
||||
AND (@iskolaErdekuSzamit = 1 OR ISNULL(C_IGAZOLASTIPUSA,0)<>1533)
|
||||
AND tm.TOROLT = 'F' AND tm.C_IGAZOLT IS NOT NULL
|
||||
AND tm.C_TANEVID = @pTanevId
|
||||
GROUP BY C_TIPUS, C_IGAZOLT, C_GYAKORLATI, o.OsztalyId
|
||||
|
||||
--ÉRTÉKELÉS LISTA
|
||||
INSERT INTO #tempOsztalyErtekelesek(
|
||||
TantargyId
|
||||
,Osztalyzat
|
||||
,TanuloId
|
||||
,OsztalyId
|
||||
,MagatartasOsztalyzat
|
||||
,SzorgalomOsztalyzat
|
||||
)
|
||||
SELECT
|
||||
te.C_TANTARGYID as TantargyId
|
||||
,ertekelesOsztalyzat.C_VALUE Osztalyzat
|
||||
,te.C_TANULOID TanuloId
|
||||
,o.OsztalyId OsztalyId
|
||||
,ISNULL(magatartasOsztalyzat.C_VALUE,magatartasErtek.C_VALUE + 1) MagatartasOsztalyzat
|
||||
,ISNULL(szorgalomOsztalyzat.C_VALUE,szorgalomErtek.C_VALUE+1) SzorgalomOsztalyzat
|
||||
FROM T_TANULOERTEKELES_OSSZES te
|
||||
INNER JOIN #OsztalyokTanulok t ON t.TanuloId = te.C_TANULOID
|
||||
INNER JOIN #tempOsztalyok o ON o.OsztalyId = t.OsztalyId
|
||||
INNER JOIN #csopTip tanorai ON tanorai.ID = te.C_OSZTALYCSOPORTID
|
||||
LEFT JOIN T_TANTARGY_OSSZES tgy ON tgy.ID= te.C_TANTARGYID AND tgy.TOROLT='F'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES ertekelesOsztalyzat ON ertekelesOsztalyzat.ID = te.C_ERTEKELESOSZTALYZATID
|
||||
AND ertekelesOsztalyzat.C_TANEVID = @pTanevId
|
||||
AND ertekelesOsztalyzat.C_TYPE = 'OsztalyzatTipus'
|
||||
AND ertekelesOsztalyzat.TOROLT='F'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES magatartasOsztalyzat ON magatartasOsztalyzat.ID = te.C_MAGATARTASOSZTALYZATID
|
||||
AND magatartasOsztalyzat.C_TANEVID = @pTanevId
|
||||
AND magatartasOsztalyzat.C_TYPE = 'OsztalyzatTipus'
|
||||
AND magatartasOsztalyzat.TOROLT='F'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES szorgalomOsztalyzat ON szorgalomOsztalyzat.ID = te.C_SZORGALOMOSZTALYZATID
|
||||
AND szorgalomOsztalyzat.C_TANEVID = @pTanevId
|
||||
AND szorgalomOsztalyzat.C_TYPE = 'OsztalyzatTipus'
|
||||
AND szorgalomOsztalyzat.TOROLT='F'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES magatartasErtek ON magatartasErtek.ID = te.C_MAGATARTASERTEKID
|
||||
AND magatartasErtek.C_TANEVID = @pTanevId
|
||||
AND magatartasErtek.C_TYPE = 'MagatartasErtekelesTipus'
|
||||
AND magatartasErtek.TOROLT='F'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES szorgalomErtek ON szorgalomErtek.ID = te.C_SZORGALOMERTEKID
|
||||
AND szorgalomErtek.C_TANEVID = @pTanevId
|
||||
AND szorgalomErtek.C_TYPE = 'SzorgalomErtekelesTipus'
|
||||
AND szorgalomErtek.TOROLT='F'
|
||||
WHERE te.C_TANEVID = @pTanevId
|
||||
AND te.TOROLT = 'F'
|
||||
AND C_TIPUSID = @pErtekelestipusaId
|
||||
AND ISNULL(tgy.C_TARGYKATEGORIA,0) <> 1248
|
||||
|
||||
INSERT INTO #osztalyokErtekeles (
|
||||
OSZTALYID
|
||||
,TANTARGYID
|
||||
,ATLAG
|
||||
)
|
||||
SELECT
|
||||
OsztalyId
|
||||
,TantargyId
|
||||
,ROUND(AVG(CAST(Osztalyzat AS float)), 2) AS ATLAG
|
||||
FROM #tempOsztalyErtekelesek AS ERTEKELESEK
|
||||
WHERE TantargyId IS NOT NULL
|
||||
AND Osztalyzat IS NOT NULL
|
||||
GROUP BY OsztalyId,TantargyId
|
||||
|
||||
--MAGATARTAS-SZORGALOM LISTA
|
||||
INSERT INTO #osztalyokMagszorg (
|
||||
OSZTALYID
|
||||
,MAGATLAG
|
||||
,SZORGATLAG
|
||||
)
|
||||
SELECT
|
||||
OsztalyId
|
||||
,ROUND(AVG(CAST(MagatartasOsztalyzat AS float)), 2) AS MAGATLAG
|
||||
,ROUND(AVG(CAST(SzorgalomOsztalyzat AS float)), 2) AS SZORGATLAG
|
||||
FROM #tempOsztalyErtekelesek AS ERTEKELESEK
|
||||
WHERE TantargyId IS NULL
|
||||
AND SzorgalomOsztalyzat IS NOT NULL
|
||||
AND MagatartasOsztalyzat IS NOT NULL
|
||||
GROUP BY OsztalyId
|
||||
|
||||
CREATE TABLE #OsztalyHozottMulasztas (
|
||||
OsztalyID int
|
||||
,Gyakorlati char(1)
|
||||
,HozottIgazolt int
|
||||
,HozottIgazolatlan int
|
||||
)
|
||||
|
||||
INSERT INTO #OsztalyHozottMulasztas (
|
||||
OsztalyID
|
||||
,HozottIgazolt
|
||||
,HozottIgazolatlan
|
||||
)
|
||||
SELECT
|
||||
o.OsztalyId
|
||||
,SUM(IIF(tcs.C_BELEPESDATUM < IdoszaKVege,ISNULL(tta.C_HOZOTTIGAZOLTHIANYZAS,0),0))
|
||||
,SUM(IIF(tcs.C_BELEPESDATUM < IdoszaKVege,ISNULL(tta.C_HOZOTTIGAZOLATLANHIANYZAS,0),0))
|
||||
FROM #tempOsztalyok o
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.OsztalyId AND ocs.TOROLT = 'F'
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = ocs.ID AND ocs.C_TANEVID = @pTanevId AND tcs.TOROLT = 'F'
|
||||
INNER JOIN T_TANULOTANUGYIADATOK tta ON tta.C_TANULOCSOPORTID = tcs.ID AND tta.C_TANEVID = @pTanevId AND tta.TOROLT = 'F'
|
||||
GROUP BY o.OsztalyId
|
||||
|
||||
UPDATE mul
|
||||
SET MulasztasokSzama += hmul.HozottIgazolt
|
||||
FROM #OsztalyHozottMulasztas hmul
|
||||
INNER JOIN #tempMulasztas mul on hmul.OsztalyID = mul.OsztalyId
|
||||
WHERE mul.Gyakorlati = 'F' AND mul.IGAZOLT = 'T' AND mul.TIPUS = 1500
|
||||
|
||||
UPDATE mul
|
||||
SET MulasztasokSzama += hmul.HozottIgazolatlan
|
||||
FROM #OsztalyHozottMulasztas hmul
|
||||
INNER JOIN #tempMulasztas mul on hmul.OsztalyID = mul.OsztalyId
|
||||
WHERE mul.Gyakorlati = 'F' AND mul.IGAZOLT = 'F' AND mul.TIPUS = 1500
|
||||
|
||||
UPDATE #tempMulasztas SET
|
||||
MulasztasokSzama = NULL
|
||||
WHERE KESESPERC IS NOT NULL
|
||||
|
||||
SELECT
|
||||
OsztalyId
|
||||
,OsztalyNev
|
||||
,Letszam
|
||||
FROM #tempOsztalyok
|
||||
ORDER BY Sorrend,OsztalyNev
|
||||
|
||||
SELECT
|
||||
TantargyId
|
||||
,TantargyNev
|
||||
FROM #tantargyak
|
||||
ORDER BY TargyKategoriaSorszam,TantargyNev
|
||||
|
||||
SELECT
|
||||
tgy.TantargyId
|
||||
,o.Osztalyid
|
||||
,o.OsztalyNev
|
||||
,tgy.TantargyNev
|
||||
,ert.Atlag
|
||||
FROM #tantargyak tgy
|
||||
INNER JOIN #osztalyokErtekeles ert ON ert.TantargyId = tgy.TantargyId
|
||||
INNER JOIN #tempOsztalyok o ON o.OsztalyId = ert.OsztalyId
|
||||
UNION
|
||||
SELECT
|
||||
tgy.TantargyId
|
||||
,o.Osztalyid
|
||||
,o.OsztalyNev
|
||||
,tgy.TantargyNev
|
||||
,mag.MagAtlag
|
||||
FROM #tantargyak tgy
|
||||
INNER JOIN #osztalyokMagszorg mag ON tgy.TantargyId = -1
|
||||
INNER JOIN #tempOsztalyok o ON o.OsztalyId = mag.OsztalyId
|
||||
UNION
|
||||
SELECT
|
||||
tgy.TantargyId
|
||||
,o.Osztalyid
|
||||
,o.OsztalyNev
|
||||
,tgy.TantargyNev
|
||||
,szorg.SzorgAtlag
|
||||
FROM #tantargyak tgy
|
||||
INNER JOIN #osztalyokMagszorg szorg ON tgy.TantargyId = -2
|
||||
INNER JOIN #tempOsztalyok o ON o.OsztalyId = szorg.OsztalyId
|
||||
|
||||
IF @pElmeletgyakorlat = 0
|
||||
BEGIN
|
||||
SELECT
|
||||
OsztalyId
|
||||
,Tipus
|
||||
,Igazolt
|
||||
,SUM(KESESPERC)/45 as Késés
|
||||
,SUM(MulasztasokSzama) as Mulasztás
|
||||
FROM #tempMulasztas
|
||||
GROUP BY OsztalyId,Tipus,Igazolt
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SELECT
|
||||
OsztalyId
|
||||
,Tipus
|
||||
,Igazolt
|
||||
,Gyakorlati
|
||||
,SUM(KESESPERC)/45 as Késés
|
||||
,SUM(MulasztasokSzama) as Mulasztás
|
||||
FROM #tempMulasztas
|
||||
GROUP BY OsztalyId,Tipus,Igazolt,Gyakorlati
|
||||
END
|
||||
|
||||
-- iktatási adatok (ez maradjon az utolsó tábla)
|
||||
SELECT
|
||||
tempo.OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA AS EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
,ocs.C_KEPZESIFORMA AS KepzesiForma
|
||||
,o.C_OSZTALYFONOKID AS OsztalyfonokId
|
||||
,o.C_TANTERVID AS TantervId
|
||||
,o.C_AJPROGRAM AS OJAranyJanosProgram
|
||||
,ocs.C_KERESZTFELEVES AS OJCSJKeresztfeleves
|
||||
,o.C_KETTANNYELVU AS OJKettannyelvu
|
||||
,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI AS OJIsGyogypedagogiaiLogopediai
|
||||
,o.C_NEMZETISEGI AS OJNemzetisegi
|
||||
,o.C_NYELVIELOKESZITO AS OJNyelviElokeszito
|
||||
,o.C_SPORT AS OJSportOsztaly
|
||||
,ocs.C_ISTECHNIKAI AS OJTechnikaiOsztaly
|
||||
,o.C_SZAKMACSOPORT AS SzakmaCsoport
|
||||
,o.C_AGAZAT AS Agazat
|
||||
,o.C_SZAKKEPESITES AS Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES AS Reszszakkepesites
|
||||
FROM #tempOsztalyok tempo
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = tempo.OsztalyId
|
||||
AND ocs.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.ID
|
||||
AND o.TOROLT ='F'
|
||||
-- iktatási adatok vége
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,173 @@
|
|||
DROP PROCEDURE IF EXISTS [dbo].[sp_Nyomtatvany_Excel_OsztalyTanuloinakGyakorlatiOraMulasztasiSzazalekStatisztika]
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_Nyomtatvany_Excel_OsztalyTanuloinakGyakorlatiOraMulasztasiSzazalekStatisztika]
|
||||
@pTanevId INT,
|
||||
@pOsztalyId INT,
|
||||
@pMulasztasTipusIdKeses INT = 1499,
|
||||
@pMulasztasTipusIdHianyzas INT = 1500,
|
||||
@pTanevrendjeTanevKezdeteNaptipusId INT = 1394, --Tanévrendje első nap típus
|
||||
@pMegtartottVagyMegtarthato INT = 1,
|
||||
@pAtsoroltTanuloAdatok INT = 1,
|
||||
@tanitasiHetekSzamaVegzos INT,
|
||||
@tanitasiHetekSzamaNemVegzos INT,
|
||||
@isAltantargyBeszamitasa BIT
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
DECLARE @iskolaErdekuParam INT = 1683;
|
||||
DECLARE @iskolaErdekuSzamit BIT = dbo.fnGetRendszerbeallitasEnumBool(@iskolaErdekuParam, (SELECT C_INTEZMENYID FROM T_TANEV_OSSZES WHERE ID = @pTanevId), @pTanevId);
|
||||
DECLARE @idoszakEleje DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pTanevrendjeTanevKezdeteNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
(SELECT TOP 1 C_KEZDONAP FROM T_TANEV_OSSZES WHERE ID = @pTanevId))
|
||||
);
|
||||
DECLARE @idoszakVege DATE = GETDATE();
|
||||
DECLARE @osztalyTanulok TABLE (TANULOID INT PRIMARY KEY, TANULONEV NVARCHAR(MAX), BELEPESDATUM DATE, KILEPESDATUM DATE, OKTATASIAZONOSITO NVARCHAR(20));
|
||||
DECLARE @tantargyak TABLE(TANTARGYID INT, TANTARGY_NEV NVARCHAR(MAX), TARGYKATEGORIA_NEV NVARCHAR(MAX), TARGYKATEGORIA_SORSZAM INT, C_FOTARGYE CHAR(1), C_ALTANTARGYKENTNYOMTATVANYBAN CHAR(1));
|
||||
INSERT INTO @osztalyTanulok (TANULOID, TANULONEV, BELEPESDATUM, KILEPESDATUM, OKTATASIAZONOSITO)
|
||||
SELECT FELHASZNALO.ID AS TANULOID, C_NYOMTATASINEV, C_BELEPESDATUM, C_KILEPESDATUM, C_OKTATASIAZONOSITO
|
||||
FROM T_FELHASZNALO_OSSZES AS FELHASZNALO
|
||||
INNER JOIN (
|
||||
SELECT C_TANULOID, C_OSZTALYCSOPORTID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_TANULOCSOPORT_OSSZES AS TANULOCSOPORT
|
||||
WHERE TANULOCSOPORT.TOROLT = 'F' AND TANULOCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND TANULOCSOPORT.C_BELEPESDATUM < @idoszakVege
|
||||
AND (TANULOCSOPORT.C_KILEPESDATUM IS NULL OR TANULOCSOPORT.C_KILEPESDATUM >= @idoszakVege)
|
||||
) AS TANCSOPORT ON TANCSOPORT.C_TANULOID = FELHASZNALO.ID
|
||||
WHERE FELHASZNALO.TOROLT = 'F' AND TANCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND FELHASZNALO.C_TANEVID = @pTanevId;
|
||||
|
||||
DECLARE @aktualisOsztalyCsoportok TABLE (OSZTALYCSOPORTID INT);
|
||||
IF @pAtsoroltTanuloAdatok = 0
|
||||
BEGIN
|
||||
INSERT INTO @aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyId, @pTanevId, DEFAULT)
|
||||
END
|
||||
ELSE IF @pAtsoroltTanuloAdatok = 1
|
||||
BEGIN
|
||||
INSERT INTO @aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyId, @pTanevId, DEFAULT)
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO @aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetKapcsolodoOsztalycsoportokByDate(@pOsztalyId, @idoszakEleje, @idoszakVege)
|
||||
WHERE (ID IN (SELECT ID FROM T_OSZTALY_OSSZES) OR ID IN (SELECT ID FROM T_CSOPORT_OSSZES WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId))));
|
||||
END
|
||||
|
||||
INSERT INTO @tantargyak (TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN)
|
||||
SELECT DISTINCT TANTARGYAK.ID AS TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM (
|
||||
SELECT DISTINCT C_TANTARGYID AS ID, COALESCE(TANTARGY.C_NEVNYOMTATVANYBAN, TANTARGY.C_NEV) AS TANTARGY_NEV, TARGYKATEG.C_NAME AS TARGYKATEGORIA_NEV, TARGYKATEG.C_VALUE AS TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_FOGLALKOZAS_OSSZES
|
||||
INNER JOIN @aktualisOsztalyCsoportok AS OSZTALYCSOPORT ON OSZTALYCSOPORT.OSZTALYCSOPORTID = T_FOGLALKOZAS_OSSZES.C_OSZTALYCSOPORTID
|
||||
INNER JOIN T_TANTARGY_OSSZES AS TANTARGY ON TANTARGY.ID = T_FOGLALKOZAS_OSSZES.C_TANTARGYID AND TANTARGY.C_TANEVID = T_FOGLALKOZAS_OSSZES.C_TANEVID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = TANTARGY.C_TARGYKATEGORIA AND TARGYKATEG.C_TANEVID = @pTanevId
|
||||
WHERE T_FOGLALKOZAS_OSSZES.TOROLT = 'F' AND TANTARGY.C_GYAKORLATI = 'T'
|
||||
UNION
|
||||
SELECT DISTINCT C_TANTARGYID AS ID, COALESCE(TANTARGY.C_NEVNYOMTATVANYBAN, TANTARGY.C_NEV) AS TANTARGY_NEV, TARGYKATEG.C_NAME AS TARGYKATEGORIA_NEV, TARGYKATEG.C_VALUE AS TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_TANITASIORA_OSSZES
|
||||
INNER JOIN T_TANTARGY_OSSZES AS TANTARGY ON TANTARGY.ID = T_TANITASIORA_OSSZES.C_TANTARGYID AND TANTARGY.C_TANEVID = T_TANITASIORA_OSSZES.C_TANEVID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = TANTARGY.C_TARGYKATEGORIA AND TARGYKATEG.C_TANEVID = @pTanevId
|
||||
WHERE T_TANITASIORA_OSSZES.TOROLT = 'F' AND C_OSZTALYCSOPORTID IN (SELECT OSZTALYCSOPORTID FROM @aktualisOsztalyCsoportok) AND TANTARGY.C_GYAKORLATI = 'T'
|
||||
) AS TANTARGYAK
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
|
||||
|
||||
SELECT DISTINCT TANULOID, TANULONEV, OKTATASIAZONOSITO
|
||||
FROM @osztalyTanulok
|
||||
ORDER BY TANULONEV;
|
||||
SELECT DISTINCT TANTARGYID, TANTARGY_NEV
|
||||
FROM @tantargyak;
|
||||
SELECT * INTO #tempMulasztas FROM fnGetDokumentumMulasztasokOsztalyonkentReszletes (@pTanevId, @pOsztalyId, @iskolaErdekuSzamit, DEFAULT, @pAtsoroltTanuloAdatok, DEFAULT, DEFAULT, DEFAULT) WHERE Tipusa IN (@pMulasztasTipusIdKeses, @pMulasztasTipusIdHianyzas)
|
||||
CREATE TABLE #tempTanorak (Orakszama INT, TanuloId INT, TantargyId INT, TantargyNev NVARCHAR(MAX) COLLATE Hungarian_CI_AI, Fotargye CHAR(1) COLLATE Hungarian_CI_AI, Altargye CHAR(1) COLLATE Hungarian_CI_AI, Gyakorlati CHAR(1) COLLATE Hungarian_CI_AI)
|
||||
IF @pMegtartottVagyMegtarthato = 1
|
||||
BEGIN
|
||||
INSERT INTO #tempTanorak
|
||||
SELECT Orakszama, TanuloId, TantargyId, TantargyNev, Fotargye, Altargye, Gyakorlati
|
||||
FROM fnGetDokumentumOsztalyTanuloinakMegtarthatoOrakTantargyankent (@pTanevId, @pOsztalyId, @pAtsoroltTanuloAdatok, @tanitasiHetekSzamaVegzos, @tanitasiHetekSzamaNemVegzos, @isAltantargyBeszamitasa)
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO #tempTanorak
|
||||
SELECT Orakszama, TanuloId, TantargyId, TantargyNev, Fotargye, Altargye, Gyakorlati
|
||||
FROM fnGetDokumentumOsztalyTanuloinakMegtartottOrakTantargyankent (@pTanevId, @pOsztalyId)
|
||||
END
|
||||
SELECT MegtartottOrak.TanuloId, MegtartottOrak.TantargyId, MegtartottOrak.Gyakorlati,
|
||||
CAST(Mulasztasokszam AS float) / Orakszama AS MulasztasArany, CAST(Mulasztasokszam AS float) / Orakszama * 100 AS MulasztasSzazalek,
|
||||
CAST(Mulasztasokszam AS NVARCHAR) + '/' + CAST(Orakszama AS NVARCHAR) AS Info
|
||||
FROM (
|
||||
SELECT SUM(CAST(IIF(Tipusa = @pMulasztasTipusIdHianyzas, 1, IIF(Tipusa = @pMulasztasTipusIdKeses,CAST(KesesPercben AS FLOAT) / 45, 0)) AS FLOAT)) AS Mulasztasokszam, TanuloId, TantargyId, Gyakorlati
|
||||
FROM #tempMulasztas
|
||||
WHERE Gyakorlati = 'T'
|
||||
GROUP BY TanuloId, TantargyId, Gyakorlati
|
||||
) AS Mulasztasok
|
||||
INNER JOIN (
|
||||
SELECT Orakszama, Tanuloid, TantargyId, Gyakorlati, TantargyNev
|
||||
FROM #tempTanorak
|
||||
WHERE Gyakorlati = 'T'
|
||||
) AS MegtartottOrak
|
||||
ON MegtartottOrak.TantargyId = Mulasztasok.TantargyId
|
||||
AND MegtartottOrak.TanuloId = Mulasztasok.TanuloId
|
||||
AND MegtartottOrak.Gyakorlati = Mulasztasok.Gyakorlati
|
||||
ORDER BY TanuloId, TantargyId
|
||||
SELECT MegtartottOrak.TanuloId, MegtartottOrak.Gyakorlati,
|
||||
CAST(Mulasztasokszam AS float) / Orakszama AS MulasztasArany, CAST(Mulasztasokszam AS float) / Orakszama * 100 AS MulasztasSzazalek,
|
||||
CAST(Mulasztasokszam AS NVARCHAR) + '/' + CAST(Orakszama AS NVARCHAR) AS Info
|
||||
FROM (
|
||||
SELECT SUM(CAST(IIF(Tipusa = @pMulasztasTipusIdHianyzas, 1, IIF(Tipusa = @pMulasztasTipusIdKeses,CAST(KesesPercben AS FLOAT) / 45, 0)) AS FLOAT)) AS Mulasztasokszam, TanuloId, Gyakorlati
|
||||
FROM #tempMulasztas
|
||||
WHERE Gyakorlati = 'T'
|
||||
GROUP BY TanuloId, Gyakorlati
|
||||
) AS Mulasztasok
|
||||
INNER JOIN (
|
||||
SELECT Tanuloid, Gyakorlati, SUM(Orakszama) as Orakszama
|
||||
FROM #tempTanorak
|
||||
WHERE Gyakorlati = 'T'
|
||||
GROUP BY Tanuloid, Gyakorlati
|
||||
) AS MegtartottOrak
|
||||
ON
|
||||
MegtartottOrak.TanuloId = Mulasztasok.TanuloId
|
||||
AND MegtartottOrak.Gyakorlati = Mulasztasok.Gyakorlati
|
||||
ORDER BY TanuloId
|
||||
IF OBJECT_ID('tempdb..#tempTanorak') IS NOT NULL DROP TABLE #tempTanorak
|
||||
IF OBJECT_ID('tempdb..#tempMulasztas') IS NOT NULL DROP TABLE #tempMulasztas
|
||||
|
||||
-- Osztály adatok az iktatáshoz
|
||||
SELECT
|
||||
f.C_NYOMTATASINEV Osztalyfonok
|
||||
,f.ID OsztalyfonokId
|
||||
,ocs.C_NEV Osztalynev
|
||||
,@pOsztalyId OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,o.C_TANTERVID TantervId
|
||||
,ocs.C_KEPZESIFORMA KepzesiForma
|
||||
,o.C_AGAZAT Agazat
|
||||
,o.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,o.C_SZAKKEPESITES Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,ocs.C_ISTECHNIKAI OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI OJIsGyogypedagogiaiLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.id
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = o.C_OSZTALYFONOKID
|
||||
WHERE
|
||||
ocs.ID = @pOsztalyId AND ocs.C_TANEVID = @pTanevId AND ocs.TOROLT = 'F';
|
||||
END;
|
||||
|
||||
|
||||
GO
|
|
@ -0,0 +1,185 @@
|
|||
DROP PROCEDURE IF EXISTS [dbo].[sp_Nyomtatvany_Excel_OsztalyTanuloinakMulasztasiSzazalekStatisztika]
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_Nyomtatvany_Excel_OsztalyTanuloinakMulasztasiSzazalekStatisztika]
|
||||
@pTanevId INT,
|
||||
@pOsztalyId INT,
|
||||
@pMulasztasTipusIdKeses INT = 1499,
|
||||
@pMulasztasTipusIdHianyzas INT = 1500,
|
||||
@pTanevrendjeTanevKezdeteNaptipusId INT = 1394, --Tanévrendje első nap típus
|
||||
@pMegtartottVagyMegtarthato INT = 1,
|
||||
@pAtsoroltTanuloAdatok INT = 1,
|
||||
@tanitasiHetekSzamaVegzos INT = 32,
|
||||
@tanitasiHetekSzamaNemVegzos INT = 36,
|
||||
@isAltantargyBeszamitasa BIT
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
DECLARE @tanevrendjeTanevUtolsoTanitasiNapNaptipusId INT
|
||||
|
||||
DECLARE @iskolaErdekuParam INT = 1683;
|
||||
DECLARE @iskolaErdekuSzamit BIT = dbo.fnGetRendszerbeallitasEnumBool(@iskolaErdekuParam, (SELECT C_INTEZMENYID FROM T_TANEV_OSSZES WHERE ID = @pTanevId), @pTanevId);
|
||||
DECLARE @osztId INT,
|
||||
@osztNev NVARCHAR(50),
|
||||
@isKeresztfeleves CHAR(1),
|
||||
@isVegzos CHAR(1);
|
||||
|
||||
SELECT TOP(1)
|
||||
@osztId = ocs.ID
|
||||
,@osztNev = ocs.C_NEV
|
||||
,@isKeresztfeleves = ocs.C_KERESZTFELEVES
|
||||
,@isVegzos = ocs.C_VEGZOSEVFOLYAM
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
WHERE ocs.TOROLT = 'F'
|
||||
AND ocs.ID = @pOsztalyId
|
||||
AND ocs.C_TANEVID = @pTanevId
|
||||
|
||||
DECLARE @idoszakEleje DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @pTanevrendjeTanevKezdeteNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)
|
||||
ORDER BY C_OSZTALYCSOPORTID DESC),
|
||||
(SELECT TOP 1 C_KEZDONAP FROM T_TANEV_OSSZES WHERE ID = @pTanevId AND TOROLT = 'F'))
|
||||
);
|
||||
|
||||
SET @tanevrendjeTanevUtolsoTanitasiNapNaptipusId = (
|
||||
CASE
|
||||
WHEN @isVegzos = 'T' THEN 1402 -- Utolsó tanítási nap a végzős évfolyamokon
|
||||
WHEN @isKeresztfeleves = 'T' AND @isVegzos = 'T' THEN 7602 --Utolsó tanítási nap a végzős évfolyamokon (keresztféléves képzésben)
|
||||
ELSE 1395 --Utolsó tanítási nap
|
||||
END
|
||||
)
|
||||
|
||||
DECLARE @idoszakVege DATE = (
|
||||
SELECT ISNULL(
|
||||
(SELECT TOP 1 C_DATUM
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
LEFT JOIN T_OSZTALYCSOPORT_TANEVRENDJE ON T_TANEVRENDJE_OSSZES.ID = T_OSZTALYCSOPORT_TANEVRENDJE.C_TANEVRENDJEID
|
||||
WHERE C_TANEVID = @pTanevId AND C_NAPTIPUSA = @tanevrendjeTanevUtolsoTanitasiNapNaptipusId AND TOROLT = 'F' AND (C_OSZTALYCSOPORTID IS NULL OR C_OSZTALYCSOPORTID = @pOsztalyId)),
|
||||
GETDATE())
|
||||
);
|
||||
|
||||
DECLARE @osztalyTanulok TABLE (TANULOID INT PRIMARY KEY, TANULONEV NVARCHAR(MAX), BELEPESDATUM DATE, KILEPESDATUM DATE, OKTATASIAZONOSITO NVARCHAR(20));
|
||||
DECLARE @tantargyak TABLE(TANTARGYID INT, TANTARGY_NEV NVARCHAR(MAX), TARGYKATEGORIA_NEV NVARCHAR(MAX), TARGYKATEGORIA_SORSZAM INT, C_FOTARGYE CHAR(1), C_ALTANTARGYKENTNYOMTATVANYBAN CHAR(1));
|
||||
INSERT INTO @osztalyTanulok (TANULOID, TANULONEV, BELEPESDATUM, KILEPESDATUM, OKTATASIAZONOSITO)
|
||||
SELECT FELHASZNALO.ID AS TANULOID, C_NYOMTATASINEV, C_BELEPESDATUM, C_KILEPESDATUM, C_OKTATASIAZONOSITO
|
||||
FROM T_FELHASZNALO_OSSZES AS FELHASZNALO
|
||||
INNER JOIN (
|
||||
SELECT C_TANULOID, C_OSZTALYCSOPORTID, C_BELEPESDATUM, C_KILEPESDATUM
|
||||
FROM T_TANULOCSOPORT_OSSZES AS TANULOCSOPORT
|
||||
WHERE TANULOCSOPORT.TOROLT = 'F' AND TANULOCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND C_TANEVID = @pTanevId AND TANULOCSOPORT.C_BELEPESDATUM < @idoszakVege
|
||||
AND (TANULOCSOPORT.C_KILEPESDATUM IS NULL OR TANULOCSOPORT.C_KILEPESDATUM >= @idoszakVege)
|
||||
) AS TANCSOPORT ON TANCSOPORT.C_TANULOID = FELHASZNALO.ID
|
||||
WHERE FELHASZNALO.TOROLT = 'F' AND TANCSOPORT.C_OSZTALYCSOPORTID = @pOsztalyId AND FELHASZNALO.C_TANEVID = @pTanevId;
|
||||
|
||||
DECLARE @aktualisOsztalyCsoportok TABLE (OSZTALYCSOPORTID INT);
|
||||
IF @pAtsoroltTanuloAdatok = 0
|
||||
BEGIN
|
||||
INSERT INTO @aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyId, @pTanevId, DEFAULT)
|
||||
END
|
||||
ELSE IF @pAtsoroltTanuloAdatok = 1
|
||||
BEGIN
|
||||
INSERT INTO @aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@pOsztalyId, @pTanevId, DEFAULT)
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO @aktualisOsztalyCsoportok (OSZTALYCSOPORTID)
|
||||
SELECT ID
|
||||
FROM fnGetKapcsolodoOsztalycsoportokByDate(@pOsztalyId, @idoszakEleje, @idoszakVege)
|
||||
WHERE (ID IN (SELECT ID FROM T_OSZTALY_OSSZES) OR ID IN (SELECT ID FROM T_CSOPORT_OSSZES WHERE C_TIPUSA IN (SELECT ID FROM fnGetTanoraiCeluCsoportTipusok(@pTanevId))));
|
||||
END
|
||||
|
||||
INSERT INTO @tantargyak (TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN)
|
||||
SELECT DISTINCT TANTARGYAK.ID AS TANTARGYID, TANTARGY_NEV, TARGYKATEGORIA_NEV, TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM (
|
||||
SELECT DISTINCT C_TANTARGYID AS ID, COALESCE(TANTARGY.C_NEVNYOMTATVANYBAN, TANTARGY.C_NEV) AS TANTARGY_NEV, TARGYKATEG.C_NAME AS TARGYKATEGORIA_NEV, TARGYKATEG.C_VALUE AS TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_FOGLALKOZAS_OSSZES
|
||||
INNER JOIN @aktualisOsztalyCsoportok AS OSZTALYCSOPORT ON OSZTALYCSOPORT.OSZTALYCSOPORTID = T_FOGLALKOZAS_OSSZES.C_OSZTALYCSOPORTID
|
||||
INNER JOIN T_TANTARGY_OSSZES AS TANTARGY ON TANTARGY.ID = T_FOGLALKOZAS_OSSZES.C_TANTARGYID AND TANTARGY.C_TANEVID = T_FOGLALKOZAS_OSSZES.C_TANEVID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = TANTARGY.C_TARGYKATEGORIA AND TARGYKATEG.C_TANEVID = @pTanevId
|
||||
WHERE T_FOGLALKOZAS_OSSZES.TOROLT = 'F'
|
||||
UNION
|
||||
SELECT DISTINCT C_TANTARGYID AS ID, COALESCE(TANTARGY.C_NEVNYOMTATVANYBAN, TANTARGY.C_NEV) AS TANTARGY_NEV, TARGYKATEG.C_NAME AS TARGYKATEGORIA_NEV, TARGYKATEG.C_VALUE AS TARGYKATEGORIA_SORSZAM, C_FOTARGYE, C_ALTANTARGYKENTNYOMTATVANYBAN
|
||||
FROM T_TANITASIORA_OSSZES
|
||||
INNER JOIN T_TANTARGY_OSSZES AS TANTARGY ON TANTARGY.ID = T_TANITASIORA_OSSZES.C_TANTARGYID AND TANTARGY.C_TANEVID = T_TANITASIORA_OSSZES.C_TANEVID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS TARGYKATEG ON TARGYKATEG.ID = TANTARGY.C_TARGYKATEGORIA AND TARGYKATEG.C_TANEVID = @pTanevId
|
||||
WHERE T_TANITASIORA_OSSZES.TOROLT = 'F' AND C_OSZTALYCSOPORTID IN (SELECT OSZTALYCSOPORTID FROM @aktualisOsztalyCsoportok)
|
||||
) AS TANTARGYAK
|
||||
ORDER BY TARGYKATEGORIA_SORSZAM, TANTARGY_NEV;
|
||||
|
||||
SELECT DISTINCT TANULOID, TANULONEV, OKTATASIAZONOSITO
|
||||
FROM @osztalyTanulok
|
||||
ORDER BY TANULONEV;
|
||||
SELECT DISTINCT TANTARGYID, TANTARGY_NEV
|
||||
FROM @tantargyak;
|
||||
SELECT * INTO #tempMulasztas FROM fnGetDokumentumMulasztasokOsztalyonkentReszletes (@pTanevId, @pOsztalyId, @iskolaErdekuSzamit, DEFAULT, @pAtsoroltTanuloAdatok, DEFAULT, DEFAULT, DEFAULT) WHERE Tipusa IN (@pMulasztasTipusIdKeses, @pMulasztasTipusIdHianyzas)
|
||||
CREATE TABLE #tempTanorak (Orakszama INT, TanuloId INT, TantargyId INT, TantargyNev NVARCHAR(MAX) COLLATE Hungarian_CI_AI, Fotargye CHAR(1) COLLATE Hungarian_CI_AI, Altargye CHAR(1) COLLATE Hungarian_CI_AI, Gyakorlati CHAR(1) COLLATE Hungarian_CI_AI)
|
||||
IF @pMegtartottVagyMegtarthato = 1
|
||||
BEGIN
|
||||
INSERT INTO #tempTanorak
|
||||
SELECT Orakszama, TanuloId, TantargyId, TantargyNev, Fotargye, Altargye, Gyakorlati
|
||||
FROM fnGetDokumentumOsztalyTanuloinakMegtarthatoOrakTantargyankent (@pTanevId, @pOsztalyId, @pAtsoroltTanuloAdatok, @tanitasiHetekSzamaVegzos, @tanitasiHetekSzamaNemVegzos, @isAltantargyBeszamitasa)
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
INSERT INTO #tempTanorak
|
||||
SELECT Orakszama, TanuloId, TantargyId, TantargyNev, Fotargye, Altargye, Gyakorlati
|
||||
FROM fnGetDokumentumOsztalyTanuloinakMegtartottOrakTantargyankent (@pTanevId, @pOsztalyId)
|
||||
END
|
||||
SELECT MegtartottOrak.TanuloId, MegtartottOrak.TantargyId, MegtartottOrak.Gyakorlati,
|
||||
IIF(ISNULL(Orakszama,0) = 0, 0, ROUND((CAST(Mulasztasokszam AS float) / Orakszama), 2, 1)) AS MulasztasArany,
|
||||
IIF(ISNULL(Orakszama,0) = 0, 0, ROUND((CAST(Mulasztasokszam AS float) / Orakszama * 100), 2, 1)) AS MulasztasSzazalek,
|
||||
CAST(Mulasztasokszam AS NVARCHAR) + '/' + CAST(Orakszama AS NVARCHAR) AS Info
|
||||
FROM (
|
||||
SELECT SUM(CAST(IIF(Tipusa = @pMulasztasTipusIdHianyzas, 1, IIF(Tipusa = @pMulasztasTipusIdKeses,CAST(KesesPercben AS FLOAT) / 45, 0)) AS FLOAT)) AS Mulasztasokszam, TanuloId, TantargyId, Gyakorlati
|
||||
FROM #tempMulasztas
|
||||
GROUP BY TanuloId, TantargyId, Gyakorlati
|
||||
) AS Mulasztasok
|
||||
INNER JOIN (
|
||||
SELECT Orakszama, Tanuloid, TantargyId, Gyakorlati, TantargyNev
|
||||
FROM #tempTanorak
|
||||
) AS MegtartottOrak
|
||||
ON MegtartottOrak.TantargyId = Mulasztasok.TantargyId
|
||||
AND MegtartottOrak.TanuloId = Mulasztasok.TanuloId
|
||||
AND MegtartottOrak.Gyakorlati = Mulasztasok.Gyakorlati
|
||||
INNER JOIN T_FELHASZNALO_OSSZES ON T_FELHASZNALO_OSSZES.ID = MegtartottOrak.TanuloId
|
||||
IF OBJECT_ID('tempdb..#tempTanorak') IS NOT NULL DROP TABLE #tempTanorak
|
||||
IF OBJECT_ID('tempdb..#tempMulasztas') IS NOT NULL DROP TABLE #tempMulasztas
|
||||
|
||||
-- Osztály adatok az iktatáshoz
|
||||
SELECT
|
||||
f.C_NYOMTATASINEV Osztalyfonok
|
||||
,f.ID OsztalyfonokId
|
||||
,ocs.C_NEV Osztalynev
|
||||
,@pOsztalyId OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,o.C_TANTERVID TantervId
|
||||
,ocs.C_KEPZESIFORMA KepzesiForma
|
||||
,o.C_AGAZAT Agazat
|
||||
,o.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,o.C_SZAKKEPESITES Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,ocs.C_ISTECHNIKAI OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI OJIsGyogypedagogiaiLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.id
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = o.C_OSZTALYFONOKID
|
||||
WHERE
|
||||
ocs.ID = @pOsztalyId AND ocs.C_TANEVID = @pTanevId AND ocs.TOROLT = 'F';
|
||||
END;
|
||||
|
||||
GO
|
|
@ -0,0 +1,124 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_PedagogusNemBejegyzettOrai]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_PedagogusNemBejegyzettOrai]
|
||||
END
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_PedagogusNemBejegyzettOrai]
|
||||
@tanevID INT,
|
||||
@mindenHeten INT,
|
||||
@tanarID INT
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE @vegzosUtolsoNapDatuma DATE = (SELECT C_DATUM FROM T_TANEVRENDJE_OSSZES WHERE C_TANEVID = @tanevId AND TOROLT = 'F' AND C_NAPTIPUSA = 1402)
|
||||
|
||||
DECLARE @OsztalyCsoportokTanevRendje TABLE (OsztalyCsoportId INT, Datum DATE, isOrarendiNap NVARCHAR(1))
|
||||
INSERT INTO @OsztalyCsoportokTanevRendje
|
||||
SELECT
|
||||
C_OSZTALYCSOPORTID
|
||||
,C_DATUM
|
||||
,C_ORARENDINAP
|
||||
FROM T_OSZTALYCSOPORT_TANEVRENDJE ocstr
|
||||
INNER JOIN T_TANEVRENDJE_OSSZES tr ON tr.Id = ocstr.C_TANEVRENDJEID
|
||||
WHERE
|
||||
TOROLT = 'F'
|
||||
AND tr.C_OSSZESCSOPORTRAVONATKOZIK = 'F'
|
||||
AND tr.C_ORARENDINAP = 'F'
|
||||
|
||||
SELECT
|
||||
CONVERT(NVARCHAR(10),ROW_NUMBER() OVER (ORDER BY Napdatuma ))+'.' COLUMN440
|
||||
,FORMAT(Napdatuma, 'yyyy.MM.dd.') COLUMN273
|
||||
,Oraszam COLUMN274
|
||||
,OsztalyNev COLUMN673
|
||||
,TanarNev COLUMN456
|
||||
,TantargyNev COLUMN252
|
||||
,TeremNev COLUMN2477
|
||||
,Hetirend COLUMN4252
|
||||
FROM (
|
||||
SELECT
|
||||
naptar.C_NAPDATUMA Napdatuma
|
||||
,oo.C_ORASZAM Oraszam
|
||||
,ocs.C_NEV OsztalyNev
|
||||
,f.C_NYOMTATASINEV TanarNev
|
||||
,t.C_NEV TantargyNev
|
||||
,ter.C_NEV TeremNev
|
||||
,d.C_NAME Hetirend
|
||||
FROM T_ORARENDIORA_OSSZES oo
|
||||
INNER JOIN T_NAPTARINAP_OSSZES naptar ON ((naptar.C_NAPDATUMA >= oo.C_ORAERVENYESSEGKEZDETE
|
||||
AND oo.C_ORAERVENYESSEGVEGE> naptar.C_NAPDATUMA) OR (naptar.C_NAPDATUMA=oo.C_ORAERVENYESSEGKEZDETE AND naptar.C_NAPDATUMA=oo.C_ORAERVENYESSEGVEGE))
|
||||
AND (naptar.C_HETIREND = oo.C_HETIREND OR oo.C_HETIREND = @mindenHeten)
|
||||
AND oo.C_HETNAPJA=naptar.C_HETNAPJA
|
||||
AND (naptar.C_NAPTIPUSA NOT IN (1386,1387,1389,1391,1392,1396,1397,1398,1399,1401))
|
||||
LEFT JOIN T_TANEVRENDJE_OSSZES tr ON tr.C_DATUM = naptar.C_NAPDATUMA AND tr.C_TANEVID = naptar.C_TANEVID AND tr.TOROLT = 'F' AND tr.C_OSSZESCSOPORTRAVONATKOZIK = 'T'
|
||||
LEFT JOIN @OsztalyCsoportokTanevRendje OsztalyCsoportokTanevRendje ON OsztalyCsoportokTanevRendje.Datum = naptar.C_NAPDATUMA AND OsztalyCsoportokTanevRendje.OsztalyCsoportId = oo.C_OSZTALYCSOPORTID
|
||||
LEFT JOIN T_TANITASIORA_OSSZES tao ON
|
||||
naptar.C_NAPDATUMA=tao.C_DATUM
|
||||
AND tao.C_OSZTALYCSOPORTID = oo.C_OSZTALYCSOPORTID
|
||||
AND tao.C_TANTARGYID = oo.C_TANTARGYID
|
||||
AND oo.C_TANARID IN (tao.C_TANARID, tao.C_HELYETTESITOTANARID, tao.C_ORATULAJDONOSID)
|
||||
AND tao.C_HETNAPJA = oo.C_HETNAPJA
|
||||
AND tao.C_ORASZAM = oo.C_ORASZAM
|
||||
AND tao.C_DATUM BETWEEN oo.C_ORAERVENYESSEGKEZDETE AND oo.C_ORAERVENYESSEGVEGE
|
||||
AND tao.TOROLT='F'
|
||||
LEFT JOIN T_HELYETTESITESIIDOSZAK_OSSZES hely ON hely.C_HELYETTESITETTORARENDID = oo.ID AND CAST(hely.C_HELYETTESITESNAPJA AS DATE) = naptar.C_NAPDATUMA
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON f.ID = oo.C_TANARID
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = oo.C_OSZTALYCSOPORTID
|
||||
INNER JOIN T_TANTARGY_OSSZES t ON t.ID = oo.C_TANTARGYID
|
||||
INNER JOIN T_TEREM_OSSZES ter ON ter.ID = oo.C_TEREMID
|
||||
INNER JOIN (SELECT DISTINCT ID, C_NAME FROM T_DICTIONARYITEMBASE_OSSZES) d ON d.ID = oo.C_HETIREND
|
||||
WHERE
|
||||
oo.C_TANEVID=@tanevId
|
||||
AND oo.TOROLT='F'
|
||||
AND oo.C_TANARID = @tanarID
|
||||
AND naptar.C_NAPDATUMA <= IIF(C_VEGZOSEVFOLYAM = 'T' AND @vegzosUtolsoNapDatuma < GETDATE(), @vegzosUtolsoNapDatuma, GETDATE())
|
||||
AND tao.ID IS NULL
|
||||
AND hely.ID IS NULL
|
||||
AND oo.TOROLT='F'
|
||||
AND oo.C_CSENGETESIRENDID IS NOT NULL
|
||||
AND naptar.C_TANEVID = @tanevID
|
||||
AND (tr.C_ORARENDINAP = 'T' OR tr.C_ORARENDINAP IS NULL)
|
||||
AND (OsztalyCsoportokTanevRendje.isOrarendiNap = 'T' OR OsztalyCsoportokTanevRendje.isOrarendiNap IS NULL)
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
naptar.C_NAPDATUMA
|
||||
,oo.C_ORASZAM
|
||||
,ocs.C_NEV
|
||||
,f.C_NYOMTATASINEV
|
||||
,t.C_NEV
|
||||
,ter.C_NEV
|
||||
,d.C_NAME
|
||||
FROM T_HELYETTESITESIIDOSZAK_OSSZES hi
|
||||
INNER JOIN T_ORARENDIORA_OSSZES oo on oo.Id=hi.C_HELYETTESITETTORARENDID
|
||||
INNER JOIN T_NAPTARINAP_OSSZES naptar on naptar.C_NAPDATUMA = CAST(hi.C_HELYETTESITESNAPJA AS DATE) AND naptar.C_TANEVID=hi.C_TANEVID AND naptar.C_INTEZMENYID=hi.C_INTEZMENYID
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON oo.C_TANARID = f.ID
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES fh ON hi.C_HELYETTESTANAROKID = f.ID
|
||||
LEFT JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID=oo.C_OSZTALYCSOPORTID
|
||||
LEFT JOIN T_TANTARGY_OSSZES t ON t.ID=oo.C_TANTARGYID
|
||||
LEFT JOIN T_TEREM_OSSZES ter ON ter.ID=oo.C_TEREMID
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES d on d.id=oo.C_HETIREND AND d.C_TANEVID=oo.C_TANEVID AND d.C_INTEZMENYID=oo.C_INTEZMENYID
|
||||
WHERE
|
||||
hi.C_HELYETTESITESNAPJA <= IIF(C_VEGZOSEVFOLYAM = 'T', @vegzosUtolsoNapDatuma, GETDATE())
|
||||
AND hi.TOROLT='F'
|
||||
AND oo.C_CSENGETESIRENDID IS NOT NULL
|
||||
AND oo.TOROLT='F'
|
||||
AND hi.C_HELYETTESTANAROKID = @tanarID
|
||||
AND NOT EXISTS (
|
||||
SELECT 1 FROM T_ORARENDIORA ooo
|
||||
JOIN T_TANITASIORA tao ON tao.C_ORARENDIORAGROUPID = ooo.C_ORARENDIORAGROUPID AND tao.C_DATUM BETWEEN ooo.C_ORAERVENYESSEGKEZDETE AND ooo.C_ORAERVENYESSEGVEGE
|
||||
WHERE tao.C_DATUM = CAST(hi.C_HELYETTESITESNAPJA AS DATE) AND ooo.ID=hi.C_HELYETTESITETTORARENDID AND tao.TOROLT='F'
|
||||
)
|
||||
) orak
|
||||
ORDER BY Napdatuma, Oraszam
|
||||
|
||||
END
|
||||
GO
|
File diff suppressed because it is too large
Load diff
|
@ -0,0 +1,382 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
DROP PROCEDURE IF EXISTS uspGetErtesitesAltEsMulAdatok
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspGetErtesitesAltEsMulAdatok
|
||||
@pOsztalyId INT,
|
||||
@pTanevId INT,
|
||||
@pTankoteles BIT,
|
||||
@pIskolaErdekuSzamit BIT,
|
||||
@pIsSzulonek BIT = 1,
|
||||
@pIgazolatlanOrakSzama INT
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
--Mulasztasok
|
||||
DECLARE @Mulasztasok TABLE (
|
||||
TanuloId INT
|
||||
,TanuloCsoportId INT
|
||||
,Igazolt INT
|
||||
,Igazolatlan INT
|
||||
,ElmeletIgazolt INT
|
||||
,ElmeletIgazolatlan INT
|
||||
,GyakorlatIgazolt INT
|
||||
,GyakorlatIgazolatlan INT
|
||||
,ElmeletOsszes INT
|
||||
,GyakorlatOsszes INT
|
||||
,Osszes INT
|
||||
)
|
||||
DECLARE @Gondviselok TABLE (TanuloId INT, GondviseloId INT, RokonsagiFokId INT, GondviseloNev NVARCHAR(MAX))
|
||||
DECLARE @TanuloCimTable TABLE (FelhasznaloId INT, Cim NVARCHAR(MAX), Cimtipusa INT)
|
||||
DECLARE @GondViseloCimTable TABLE (GondviseloId INT, Cim NVARCHAR(MAX), Cimtipusa INT)
|
||||
DECLARE @EmailCimTableTemp TABLE (FelhasznaloId INT, EmailCim NVARCHAR(MAX), GondviseloId INT)
|
||||
DECLARE @EmailCimTanuloTable TABLE (FelhasznaloId INT, EmailCim NVARCHAR(MAX))
|
||||
DECLARE @EmailCimGondviseloTable TABLE (FelhasznaloId INT, GondviseloId INT, EmailCim NVARCHAR(MAX))
|
||||
DECLARE @TelefonTableTemp TABLE (FelhasznaloId INT, Telefon NVARCHAR(MAX), GondviseloId INT)
|
||||
DECLARE @TanuloTelefonTable TABLE (FelhasznaloId INT, Telefon NVARCHAR(MAX))
|
||||
DECLARE @GondviseloTelefonTable TABLE (FelhasznaloID INT, GondviseloId INT, Telefon NVARCHAR(MAX))
|
||||
DECLARE @IktatasAdatok TABLE (
|
||||
OsztalyId INT
|
||||
,Evfolyam INT
|
||||
,FeladatEllatasiHelyId INT
|
||||
,KepzesiForma INT
|
||||
,OsztalyFonokId INT
|
||||
,TantervId INT
|
||||
,SzakmaCsoport INT
|
||||
,Agazat INT
|
||||
,Szakkepesites INT
|
||||
,Reszszakkepesites INT
|
||||
,OJCSJKeresztfeleves CHAR
|
||||
,OJTechnikaiOsztaly CHAR
|
||||
,OJNemzetisegi CHAR
|
||||
,OJKettannyelvu CHAR
|
||||
,OJNyelviElokeszito CHAR
|
||||
,OJIsGyogypedagogiaiLogopediai CHAR
|
||||
,OJSportOsztaly CHAR
|
||||
,OJAranyJanosProgram CHAR
|
||||
)
|
||||
|
||||
CREATE TABLE #tanuloiAdatok (
|
||||
TanuloId int
|
||||
,TanuloCsoportId int
|
||||
,TANULONEV nvarchar(510)
|
||||
,ANYJANEVE nvarchar(128)
|
||||
,SZULETESIHELY nvarchar(100)
|
||||
,SZULETESIDATUM datetime
|
||||
,TorzslapSzam nvarchar(100)
|
||||
,INT_IGAZGATO_NEV nvarchar(510)
|
||||
,INT_NEV nvarchar(510)
|
||||
,INT_OMKOD nvarchar(40)
|
||||
,INT_VAROS nvarchar(510)
|
||||
,INT_CIM nvarchar(MAX)
|
||||
,OSZTALYCSOPORT_NEV nvarchar(510)
|
||||
,OSZTFO_NEV nvarchar(510)
|
||||
,IGAZOLT int
|
||||
,IGAZOLATLAN int
|
||||
,TanuloAllandoCim nvarchar(MAX)
|
||||
,TanuloTartozkodasiCim nvarchar(MAX)
|
||||
,TanuloOktAzon nvarchar(40)
|
||||
,HozottIgazolt int
|
||||
,HozottIgazolatlan int
|
||||
,HozottIgazoltKeses int
|
||||
,HozottIgazolatlanKeses int
|
||||
,BelepesDatum datetime
|
||||
)
|
||||
|
||||
INSERT INTO @Mulasztasok
|
||||
EXEC sp_GetDokumentumMulasztasok
|
||||
@osztalyID = @pOsztalyId,
|
||||
@tanevId = @pTanevId,
|
||||
@elmeletiOraPercben = 45,
|
||||
@gyakorlatiOraPercben = 45,
|
||||
@ertekelesTipus = 1520, --évvégi
|
||||
@iskolaErdekuSzamit = @pIskolaErdekuSzamit
|
||||
|
||||
SELECT
|
||||
TanuloId Id
|
||||
,TanuloCsoportId
|
||||
,BelepesDatum
|
||||
,ISNULL(KilepesDatum, GETDATE()) KilepesDatum
|
||||
INTO #students
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T')
|
||||
|
||||
INSERT INTO @Gondviselok
|
||||
SELECT
|
||||
TanuloId
|
||||
,GondviseloId
|
||||
,RokonsagifokId
|
||||
,GondviseloNev
|
||||
FROM fnGetDokumentumGondviselok (@pOsztalyId, @pTanevId, 'F', 'T')
|
||||
|
||||
INSERT INTO @TanuloCimTable
|
||||
SELECT DISTINCT
|
||||
TanuloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(btemp.Cim AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim (0, @pTanevId, @pOsztalyId) btemp
|
||||
WHERE temp.TanuloId = btemp.TanuloId
|
||||
AND temp.CimTipusa = btemp.CimTipusa
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'')
|
||||
,temp.CimTipusa
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim (0, @pTanevId, @pOsztalyId) temp
|
||||
|
||||
INSERT INTO @GondViseloCimTable
|
||||
SELECT DISTINCT
|
||||
GondviseloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(btemp.Cim AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim (1, @pTanevId, @pOsztalyId) btemp
|
||||
WHERE temp.GondviseloId = btemp.GondviseloId
|
||||
AND temp.CimTipusa = btemp.CimTipusa
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'')
|
||||
,temp.CimTipusa
|
||||
FROM fnGetDokumentumTanuloOrGondviseloCim (1, @pTanevId, @pOsztalyId) temp
|
||||
|
||||
INSERT INTO @EmailCimTableTemp
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_EMAILCIM
|
||||
,C_GONDVISELOID
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') tanulo
|
||||
INNER JOIN T_EMAIL_OSSZES email ON email.C_FELHASZNALOID = TanuloId
|
||||
WHERE email.TOROLT = 'F'
|
||||
AND email.C_TANEVID = @pTanevId
|
||||
AND LEN(C_EMAILCIM) > 0
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_EMAILCIM
|
||||
,GondviseloId
|
||||
FROM @Gondviselok
|
||||
INNER JOIN T_EMAIL_OSSZES email ON email.C_GONDVISELOID = GondviseloId
|
||||
WHERE email.TOROLT = 'F'
|
||||
AND email.C_TANEVID = @pTanevId
|
||||
AND LEN(C_EMAILCIM) > 0
|
||||
|
||||
INSERT INTO @EmailCimTanuloTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(btemp.EmailCim AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM @EmailCimTableTemp btemp
|
||||
WHERE temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
AND btemp.GondviseloId IS NULL
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'') Email
|
||||
FROM @EmailCimTableTemp temp
|
||||
WHERE GondviseloId IS NULL
|
||||
|
||||
INSERT INTO @EmailCimGondviseloTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,GondviseloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(btemp.EmailCim AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM @EmailCimTableTemp btemp
|
||||
WHERE temp.GondviseloId = btemp.GondviseloId
|
||||
AND btemp.GondviseloId IS NOT NULL
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'') Email
|
||||
FROM @EmailCimTableTemp temp
|
||||
WHERE GondviseloId IS NOT NULL
|
||||
|
||||
INSERT INTO @TelefonTableTemp
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_TELEFONSZAM
|
||||
,C_GONDVISELOID
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') tanulo
|
||||
INNER JOIN T_TELEFON_OSSZES telefon ON telefon.C_FELHASZNALOID = TanuloId
|
||||
WHERE telefon.TOROLT = 'F'
|
||||
AND telefon.C_TANEVID = @pTanevId
|
||||
AND LEN(telefon.C_TELEFONSZAM) > 0
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
TanuloId
|
||||
,C_TELEFONSZAM
|
||||
,GondviseloId
|
||||
FROM @Gondviselok gondviselo
|
||||
INNER JOIN T_TELEFON_OSSZES telefon ON telefon.C_GONDVISELOID = GondviseloId
|
||||
WHERE telefon.TOROLT = 'F'
|
||||
AND telefon.C_TANEVID = @pTanevId
|
||||
AND LEN(telefon.C_TELEFONSZAM) > 0
|
||||
|
||||
INSERT INTO @TanuloTelefonTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(btemp.Telefon AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM @TelefonTableTemp btemp
|
||||
WHERE temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
AND GondviseloId IS NULL
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'')
|
||||
FROM @TelefonTableTemp temp
|
||||
WHERE GondviseloId IS NULL
|
||||
|
||||
INSERT INTO @GondviseloTelefonTable
|
||||
SELECT DISTINCT
|
||||
FelhasznaloId
|
||||
,GondviseloId
|
||||
,STUFF((
|
||||
SELECT DISTINCT CAST(btemp.Telefon AS NVARCHAR(MAX)) + CHAR(13) + CHAR(10)
|
||||
FROM @TelefonTableTemp btemp
|
||||
WHERE temp.FelhasznaloId = btemp.FelhasznaloId
|
||||
AND temp.GondviseloId = btemp.GondviseloId
|
||||
AND GondviseloId IS NOT NULL
|
||||
FOR XML PATH(''), TYPE)
|
||||
.value('.','NVARCHAR(MAX)'),1,0,'')
|
||||
FROM @TelefonTableTemp temp
|
||||
WHERE GondviseloId IS NOT NULL
|
||||
|
||||
SELECT
|
||||
TanuloId
|
||||
,Gondviselok.GondviseloId
|
||||
,Gondviselok.GondviseloNev GondviseloNev
|
||||
,Cim GondviseloAllandoCim
|
||||
,Telefon GondviseloTelefon
|
||||
,RokonsagiFok.C_NAME GondviseloRokonsagiFoka
|
||||
INTO #GondviseloAdatok
|
||||
FROM @Gondviselok Gondviselok
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES RokonsagiFok ON RokonsagiFok.Id = Gondviselok.RokonsagiFokId AND RokonsagiFok.C_TANEVID = @pTanevId
|
||||
LEFT JOIN @GondViseloCimTable GondviseloCim ON GondviseloCim.GondviseloId = Gondviselok.GondviseloId
|
||||
LEFT JOIN @GondviseloTelefonTable GondviseloTelefon ON GondviseloTelefon.GondviseloId = Gondviselok.GondviseloId
|
||||
ORDER BY TanuloId
|
||||
|
||||
--Tanulói adatok
|
||||
INSERT INTO #tanuloiAdatok
|
||||
SELECT
|
||||
TanuloAdatok.ID AS TanuloId
|
||||
,OsztalyTanuloi.TanuloCsoportId
|
||||
,TanuloAdatok.C_NYOMTATASINEV TANULONEV
|
||||
,TanuloAdatok.C_ANYJANEVE ANYJANEVE
|
||||
,TanuloAdatok.C_SZULETESIHELY SZULETESIHELY
|
||||
,TanuloAdatok.C_SZULETESIDATUM SZULETESIDATUM
|
||||
,TanuloAdatok.C_NYILVANTARTASISZAM TorzslapSzam
|
||||
,IntezmenyAdatok.C_IGAZGATONEVE INT_IGAZGATO_NEV
|
||||
,IntezmenyAdatok.C_NEV INT_NEV
|
||||
,IntezmenyAdatok.C_OMKOD INT_OMKOD
|
||||
,IntezmenyAdatok.C_VAROS INT_VAROS
|
||||
,dbo.fnGetDokumentumIntezmenyCime(@pTanevId) INT_CIM
|
||||
,(SELECT C_NEV FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyId) OSZTALYCSOPORT_NEV
|
||||
,Osztalyfonok.C_NYOMTATASINEV OSZTFO_NEV
|
||||
,ISNULL(Mulasztas.Igazolt,0) IGAZOLT
|
||||
,ISNULL(Mulasztas.Igazolatlan,0) IGAZOLATLAN
|
||||
,TanuloAllandoCimTable.CIM TanuloAllandoCim
|
||||
,TanuloTartozkodasiCimTable.Cim TanuloTartozkodasiCim
|
||||
,TanuloAdatok.C_OKTATASIAZONOSITO AS TanuloOktAzon
|
||||
,TanugyiAdatok.C_HOZOTTIGAZOLTHIANYZAS AS HozottIgazolt
|
||||
,TanugyiAdatok.C_HOZOTTIGAZOLATLANHIANYZAS AS HozottIgazolatlan
|
||||
,TanugyiAdatok.C_HOZOTTIGAZOLTKESESPERCBEN AS HozottIgazoltKeses
|
||||
,TanugyiAdatok.C_HOZOTTIGAZOLATLANKESESPERCBE AS HozottIgazolatlanKeses
|
||||
,OsztalyTanuloi.BelepesDatum AS BelepesDatum
|
||||
FROM #students OsztalyTanuloi
|
||||
INNER JOIN T_FELHASZNALO_OSSZES TanuloAdatok ON TanuloAdatok.ID = OsztalyTanuloi.ID AND TanuloAdatok.TOROLT = 'F'
|
||||
INNER JOIN T_TANULO_OSSZES Tanulo ON Tanulo.ID = TanuloAdatok.ID AND Tanulo.TOROLT = 'F'
|
||||
INNER JOIN T_INTEZMENYADATOK_OSSZES IntezmenyAdatok ON IntezmenyAdatok.C_TANEVID = TanuloAdatok.C_TANEVID
|
||||
AND IntezmenyAdatok.TOROLT = 'F'
|
||||
INNER JOIN T_TANULOTANUGYIADATOK_OSSZES AS TanugyiAdatok ON TanugyiAdatok.C_TANULOCSOPORTID = OsztalyTanuloi.TanuloCsoportId
|
||||
LEFT JOIN T_OSZTALY_OSSZES Osztaly ON Osztaly.ID = @pOsztalyId AND Osztaly.TOROLT = 'F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES Osztalyfonok ON Osztalyfonok.ID = Osztaly.C_OSZTALYFONOKID AND Osztalyfonok.TOROLT = 'F'
|
||||
LEFT JOIN @Mulasztasok Mulasztas ON Mulasztas.TanuloId = TanuloAdatok.ID
|
||||
AND Mulasztas.TanuloCsoportId = OsztalyTanuloi.TanuloCsoportId
|
||||
LEFT JOIN @TanuloCimTable TanuloAllandoCimTable ON TanuloAllandoCimTable.FelhasznaloId = OsztalyTanuloi.ID
|
||||
AND TanuloAllandoCimTable.Cimtipusa = 907
|
||||
LEFT JOIN @TanuloCimTable TanuloTartozkodasiCimTable ON TanuloTartozkodasiCimTable.FelhasznaloId = OsztalyTanuloi.ID
|
||||
AND TanuloTartozkodasiCimTable.Cimtipusa = 909
|
||||
WHERE TanugyiAdatok.C_TANKOTELEZETT = IIF(@pTankoteles = 0, 'F', 'T')
|
||||
ORDER BY TanuloAdatok.C_NYOMTATASINEV
|
||||
|
||||
IF @pIsSzulonek = 1 BEGIN
|
||||
SELECT DISTINCT
|
||||
ta.*
|
||||
,GondviseloAdatok.GondviseloNev
|
||||
,GondviseloAdatok.GondviseloAllandoCim
|
||||
,GondviseloAdatok.GondviseloTelefon
|
||||
,GondviseloRokonsagiFoka
|
||||
FROM #tanuloiAdatok AS ta
|
||||
LEFT JOIN #GondviseloAdatok GondviseloAdatok ON GondviseloAdatok.TanuloId = ta.TanuloId
|
||||
WHERE ta.IGAZOLATLAN >= @pIgazolatlanOrakSzama
|
||||
ORDER BY TANULONEV
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT DISTINCT
|
||||
ta.*
|
||||
FROM #tanuloiAdatok AS ta
|
||||
WHERE ta.Igazolatlan >= @pIgazolatlanOrakSzama
|
||||
ORDER BY TANULONEV
|
||||
END
|
||||
|
||||
--Mulasztások részletezése
|
||||
SELECT
|
||||
Mulasztasok.TanuloId
|
||||
,Mulasztasok.TanuloCsoportId
|
||||
,Mulasztasok.OsztalyCsoportId
|
||||
,Mulasztasok.OsztalyCsoportNev
|
||||
,MulasztasTipus.C_NAME Tipusa
|
||||
,Mulasztasok.Igazolt
|
||||
,Mulasztasok.IgazolasTipusa
|
||||
,Mulasztasok.KesesPercben
|
||||
,Mulasztasok.Datum
|
||||
,Mulasztasok.Oraszam
|
||||
,Mulasztasok.TantargyId
|
||||
,Mulasztasok.TantargyNev
|
||||
FROM fnGetDokumentumMulasztasokOsztalyonkentReszletes(@pTanevId, @pOsztalyId, @pIskolaErdekuSzamit, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT) Mulasztasok
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES MulasztasTipus ON MulasztasTipus.Id = Mulasztasok.Tipusa
|
||||
AND MulasztasTipus.C_TANEVID = @pTanevId
|
||||
INNER JOIN #tanuloiAdatok AS ta ON ta.TanuloId = Mulasztasok.TanuloId
|
||||
AND ta.IGAZOLATLAN >= @pIgazolatlanOrakSzama
|
||||
WHERE Mulasztasok.Igazolt = 'F'
|
||||
|
||||
--Gondviselo adatok
|
||||
SELECT * from #GondviseloAdatok AS Gondviselok
|
||||
LEFT JOIN @Mulasztasok Mulasztasok ON Mulasztasok.TanuloId = Gondviselok.TanuloId
|
||||
INNER JOIN #tanuloiAdatok AS ta ON ta.TanuloId = Mulasztasok.TanuloId
|
||||
AND ta.IGAZOLATLAN >= @pIgazolatlanOrakSzama
|
||||
|
||||
--Iktatási adatok
|
||||
INSERT INTO @IktatasAdatok
|
||||
SELECT
|
||||
@pOsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA
|
||||
,ocs.C_FELADATELLATASIHELYID
|
||||
,ocs.C_KEPZESIFORMA
|
||||
,o.C_OSZTALYFONOKID
|
||||
,o.C_TANTERVID
|
||||
,o.C_SZAKMACSOPORT
|
||||
,o.C_AGAZAT
|
||||
,o.C_SZAKKEPESITES
|
||||
,o.C_RESZSZAKKEPESITES
|
||||
,ocs.C_KERESZTFELEVES
|
||||
,ocs.C_ISTECHNIKAI as C_TECHNIKAIOSZTALY
|
||||
,o.C_NEMZETISEGI
|
||||
,o.C_KETTANNYELVU
|
||||
,o.C_NYELVIELOKESZITO
|
||||
,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI
|
||||
,o.C_SPORT
|
||||
,o.C_AJPROGRAM
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.ID
|
||||
WHERE ocs.ID = @pOsztalyId AND ocs.TOROLT = 'F'
|
||||
AND ocs.C_TANEVID = @pTanevId;
|
||||
|
||||
SELECT * from @IktatasAdatok;
|
||||
|
||||
DROP TABLE #GondviseloAdatok
|
||||
DROP TABLE #tanuloiAdatok
|
||||
DROP TABLE #students
|
||||
|
||||
END
|
||||
|
||||
GO
|
|
@ -0,0 +1,506 @@
|
|||
DROP PROCEDURE IF EXISTS [dbo].[uspGetErtesitoNyomtatvany]
|
||||
GO
|
||||
|
||||
-- =====================================================================
|
||||
-- Description: értesítõ nyomtatvány (félévi, év végi, I. negyedévi...)
|
||||
-- =====================================================================
|
||||
CREATE PROCEDURE [dbo].[uspGetErtesitoNyomtatvany]
|
||||
@pOsztalyId int
|
||||
,@pTanevId int
|
||||
,@pErtekelesTipus int
|
||||
,@pElmeletGyakorlat bit = 0
|
||||
,@pKesesTipus int = 1499
|
||||
,@pElmeletiOraPercben int = 45
|
||||
,@pGyakorlatiOraPercben int = 45
|
||||
,@pIskolaErdekuSzamit bit
|
||||
,@pIsKozossegiSzolgalat bit
|
||||
,@pTanuloId int = NULL
|
||||
,@pIsMuveszetOktatasi bit = 0
|
||||
,@pIsShowTanuloiAtlag bit = 0
|
||||
,@tanitasiHetekSzamaVegzos int = 32
|
||||
,@tanitasiHetekSzamaNemVegzos int = 36
|
||||
,@isAltantargyBeszamitasa bit = 0
|
||||
,@nyomtatvanyNyelvEnum int = 0
|
||||
,@kiiratkozottTanulokMegjelenitese bit = 1
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE
|
||||
@EsemenyTipus int
|
||||
,@IdoszakVegeTanevRendje int
|
||||
,@IdoszakVege date
|
||||
,@OsztalycsoportVezeto nvarchar(max)
|
||||
,@OsztalycsoportNev nvarchar(max)
|
||||
|
||||
|
||||
SET @EsemenyTipus =
|
||||
CASE @pErtekelesTipus
|
||||
WHEN 1519 THEN 1547 --félévi
|
||||
WHEN 1520 THEN 1548 --év végi
|
||||
WHEN 1522 THEN 1549 --I. negyedévi
|
||||
WHEN 1524 THEN 1550 --II. negyedévi
|
||||
WHEN 1523 THEN 1551 --III. negyedévi
|
||||
END
|
||||
|
||||
SET @IdoszakVegeTanevRendje =
|
||||
CASE @pErtekelesTipus
|
||||
WHEN 1519 THEN 1400 --félévi
|
||||
WHEN 1520 THEN 1395 --év végi
|
||||
WHEN 1522 THEN 1403 --I. negyedévi
|
||||
WHEN 1524 THEN 1400 --II. negyedévi
|
||||
WHEN 1523 THEN 1404 --III. negyedévi
|
||||
END
|
||||
|
||||
CREATE TABLE #ErtekelesResult (
|
||||
TanuloId int
|
||||
,TanuloCsoportId int
|
||||
,Targy nvarchar(max)
|
||||
,Jegyzet nvarchar(max)
|
||||
,Ertekeles nvarchar(max)
|
||||
,ErtekelesValue int
|
||||
,ErtekelesJegyzettel nvarchar(max)
|
||||
,Oraszam float
|
||||
,RENDEZ1 int
|
||||
,RENDEZ2 nvarchar(max)
|
||||
,RENDEZ3 int
|
||||
,RENDEZ4 int
|
||||
,RENDEZ5 nvarchar(max)
|
||||
/*nemzetiségi törzslaphoz kell*/
|
||||
,ErtekelesTemaIdegenNyelven nvarchar(max)
|
||||
,ErtekelesSzovegIdegenNyelven nvarchar(max)
|
||||
,ErtekelesValueIdegenNyelven nvarchar(max)
|
||||
,ErtekelesOsztalyzatIdegenNyelven nvarchar(max)
|
||||
,ErtekelesSzazalek nvarchar(max)
|
||||
,Jeloles nvarchar(max)
|
||||
,TantargyNevIdegenNyelven nvarchar(max)
|
||||
/**/
|
||||
,TantargyId int
|
||||
,INDEX IX_01 CLUSTERED (TanuloId, TanuloCsoportId)
|
||||
)
|
||||
|
||||
CREATE TABLE #MulasztasResult (
|
||||
TanuloId int
|
||||
,TanuloCsoportId int
|
||||
,Igazolt int
|
||||
,Igazolatlan int
|
||||
,ElmeletIgazolt int
|
||||
,ElmeletIgazolatlan int
|
||||
,GyakorlatIgazolt int
|
||||
,GyakorlatIgazolatlan int
|
||||
,ElmeletOsszes int
|
||||
,GyakorlatOsszes int
|
||||
,Osszes int
|
||||
,INDEX IX_01 CLUSTERED (TanuloId, TanuloCsoportId)
|
||||
)
|
||||
|
||||
CREATE TABLE #TanuloResult (
|
||||
TANULOID int
|
||||
,TanuloCsoportId int
|
||||
,BelepesDatum date
|
||||
,KilepesDatum date
|
||||
,TANULONEV nvarchar(max)
|
||||
,OKTATASIAZONOSITO nvarchar(max)
|
||||
,TORZSLAPSZAM nvarchar(max)
|
||||
,SZULHELY nvarchar(max)
|
||||
,SZULIDO nvarchar(max)
|
||||
,ANYJANEVE nvarchar(max)
|
||||
,PRIMARY KEY (TANULOID, TanuloCsoportId, BelepesDatum)
|
||||
)
|
||||
|
||||
SET @IdoszakVege = (SELECT TOP 1 ISNULL(C_DATUM, GETDATE()) FROM T_TANEVRENDJE_OSSZES tr WHERE C_NAPTIPUSA = @IdoszakVegeTanevRendje AND C_TANEVID = @pTanevId AND TOROLT = 'F')
|
||||
SET @OsztalycsoportNev = (SELECT C_NEV FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyId)
|
||||
|
||||
IF (@pIsMuveszetOktatasi = 0) BEGIN
|
||||
SET @OsztalycsoportVezeto = (SELECT C_NYOMTATASINEV FROM T_OSZTALY_OSSZES Osztaly INNER JOIN T_FELHASZNALO_OSSZES felhasznalo ON Osztaly.C_OSZTALYFONOKID = felhasznalo.ID WHERE Osztaly.ID = @pOsztalyId)
|
||||
END
|
||||
ELSE BEGIN
|
||||
SET @OsztalycsoportVezeto = (SELECT C_NYOMTATASINEV FROM T_CSOPORT_OSSZES Csoport INNER JOIN T_FELHASZNALO_OSSZES felhasznalo ON Csoport.C_CSOPORTVEZETOID = felhasznalo.ID WHERE Csoport.ID = @pOsztalyId)
|
||||
END
|
||||
|
||||
-- Fejléc
|
||||
IF @pIsMuveszetOktatasi = 0 BEGIN
|
||||
SELECT
|
||||
ia.C_NEV AS IntezmenyNeve
|
||||
,ia.C_VAROS AS IntezmenyVaros
|
||||
,dbo.fnGetDokumentumIntezmenyCime(@pTanevId) AS IntezmenyCime
|
||||
,ia.C_IGAZGATONEVE AS IntezmenyVezeto
|
||||
,ia.C_OMKOD AS OMKod
|
||||
,ia.C_TELEFONSZAM AS TELEFON
|
||||
,ia.C_EMAILCIM AS EMAILCIM
|
||||
,tv.C_NEV AS TANEV
|
||||
,ia.C_VAROS AS VAROS
|
||||
,ofo.C_NYOMTATASINEV AS OSZTALYFONOK
|
||||
,ofo.ID AS OsztalyFonokId
|
||||
,ocs.C_NEV AS OSZTALYNEV
|
||||
,@pOsztalyId AS OsztalyId
|
||||
,GETDATE() AS Datum
|
||||
,ocs.C_EVFOLYAMTIPUSA AS EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
,o.C_TANTERVID AS TantervId
|
||||
,ocs.C_KEPZESIFORMA AS KepzesiForma
|
||||
,o.C_AGAZAT AS Agazat
|
||||
,o.C_SZAKMACSOPORT AS SzakmaCsoport
|
||||
,o.C_SZAKKEPESITES AS Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES AS Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES AS OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM AS CSJVegzosEvfolyamu
|
||||
,ocs.C_isTECHNIKAI AS OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI AS OJNemzetisegi
|
||||
,o.C_KETTANNYELVU AS OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO AS OJNyelviElokeszito
|
||||
,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI AS OJIsGyogypedagogiaiLogopediai
|
||||
,o.C_SPORT AS OJSportOsztaly
|
||||
,o.C_AJPROGRAM AS OJAranyJanosProgram
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_INTEZMENYADATOK_OSSZES ia ON ocs.C_TANEVID = ia.C_TANEVID and ocs.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON ocs.ID = o.ID AND o.TOROLT = 'F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES ofo on ofo.ID = o.C_OSZTALYFONOKID
|
||||
INNER JOIN T_TANEV_OSSZES tv ON tv.ID = ocs.C_TANEVID AND tv.TOROLT = 'F'
|
||||
WHERE ia.TOROLT = 'F'
|
||||
AND tv.ID = @pTanevId
|
||||
AND ocs.id = @pOsztalyId
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT
|
||||
T_INTEZMENYADATOK_OSSZES.C_NEV AS IntezmenyNeve
|
||||
,T_INTEZMENYADATOK_OSSZES.C_VAROS AS IntezmenyVaros
|
||||
,dbo.fnGetDokumentumIntezmenyCime(@pTanevId) AS IntezmenyCime
|
||||
,T_INTEZMENYADATOK_OSSZES.C_IGAZGATONEVE AS IntezmenyVezeto
|
||||
,T_INTEZMENYADATOK_OSSZES.C_OMKOD AS OMKod
|
||||
,T_INTEZMENYADATOK_OSSZES.C_TELEFONSZAM AS TELEFON
|
||||
,T_INTEZMENYADATOK_OSSZES.C_EMAILCIM AS EMAILCIM
|
||||
,T_TANEV_OSSZES.C_NEV AS TANEV
|
||||
,T_INTEZMENYADATOK_OSSZES.C_VAROS AS VAROS
|
||||
,ofo.C_NYOMTATASINEV AS CsoportVezeto
|
||||
,ofo.ID AS CsoportVezetoId
|
||||
,ocs.C_NEV AS OSZTALYNEV
|
||||
,@pOsztalyId AS CsoportId
|
||||
,GETDATE() AS Datum
|
||||
,ocs.C_EVFOLYAMTIPUSA AS EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
,o.C_TIPUSA AS CsoportTipusa
|
||||
,ocs.C_KERESZTFELEVES AS OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM AS CSJVegzosEvfolyamu
|
||||
FROM T_INTEZMENYADATOK_OSSZES
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs on ocs.id = @pOsztalyId and ocs.C_INTEZMENYID = T_INTEZMENYADATOK_OSSZES.C_INTEZMENYID and ocs.C_TANEVID = T_INTEZMENYADATOK_OSSZES.C_TANEVID and ocs.TOROLT = 'F'
|
||||
INNER JOIN T_CSOPORT_OSSZES o ON ocs.ID = o.ID AND o.torolt='F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES ofo on ofo.ID = o.C_CSOPORTVEZETOID
|
||||
INNER JOIN T_TANEV_OSSZES ON T_TANEV_OSSZES.ID = T_INTEZMENYADATOK_OSSZES.C_TANEVID AND T_TANEV_OSSZES.C_INTEZMENYID = T_INTEZMENYADATOK_OSSZES.C_INTEZMENYID AND T_TANEV_OSSZES.TOROLT = 'F'
|
||||
WHERE T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
|
||||
AND T_TANEV_OSSZES.ID = @pTanevId
|
||||
END
|
||||
|
||||
--PRINT ' TANULÓK ---------------------------------------------------------------'
|
||||
|
||||
IF @pTanuloId IS NOT NULL BEGIN
|
||||
INSERT INTO #TanuloResult
|
||||
SELECT
|
||||
dk.TanuloId
|
||||
,dk.TanuloCsoportId
|
||||
,dk.BelepesDatum
|
||||
,dk.KilepesDatum
|
||||
,IIF(@nyomtatvanyNyelvEnum = 0, fh.C_NYOMTATASINEV, fh.C_UTONEV + ' ' + fh.C_VEZETEKNEV)
|
||||
,fh.C_OKTATASIAZONOSITO
|
||||
,dk.Torzslapszam
|
||||
,fh.C_SZULETESIHELY
|
||||
,dbo.fnGetDokumentumDatumFormatum(fh.C_SZULETESIDATUM)
|
||||
,fh.C_ANYJANEVE
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') dk
|
||||
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.Id = dk.TanuloId
|
||||
WHERE dk.TanuloId = @pTanuloId
|
||||
AND (@kiiratkozottTanulokMegjelenitese = 1 OR (KilepesDatum IS NULL OR KilepesDatum >= @IdoszakVege))
|
||||
|
||||
SELECT
|
||||
TANULOID
|
||||
,TanuloCsoportId
|
||||
,BelepesDatum
|
||||
,KilepesDatum
|
||||
,TANULONEV
|
||||
,OKTATASIAZONOSITO
|
||||
,TORZSLAPSZAM
|
||||
,SZULHELY
|
||||
,SZULIDO
|
||||
,ANYJANEVE
|
||||
,@OsztalycsoportNev AS Osztaly
|
||||
,@pOsztalyId AS OsztalyId
|
||||
,@OsztalycsoportVezeto AS Osztalyfonok
|
||||
FROM #TanuloResult
|
||||
ORDER BY TANULONEV
|
||||
END
|
||||
ELSE BEGIN
|
||||
INSERT INTO #TanuloResult
|
||||
SELECT
|
||||
dk.TanuloId
|
||||
,dk.TanuloCsoportId
|
||||
,dk.BelepesDatum
|
||||
,dk.KilepesDatum
|
||||
,IIF(@nyomtatvanyNyelvEnum = 0, fh.C_NYOMTATASINEV, fh.C_UTONEV + ' ' + fh.C_VEZETEKNEV)
|
||||
,fh.C_OKTATASIAZONOSITO
|
||||
,dk.Torzslapszam
|
||||
,fh.C_SZULETESIHELY
|
||||
,dbo.fnGetDokumentumDatumFormatum(fh.C_SZULETESIDATUM)
|
||||
,fh.C_ANYJANEVE
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') dk
|
||||
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.Id = dk.TanuloId
|
||||
WHERE @kiiratkozottTanulokMegjelenitese = 1 OR (KilepesDatum IS NULL OR KilepesDatum >= @IdoszakVege)
|
||||
|
||||
SELECT
|
||||
TANULOID
|
||||
,TanuloCsoportId
|
||||
,BelepesDatum
|
||||
,KilepesDatum
|
||||
,TANULONEV
|
||||
,OKTATASIAZONOSITO
|
||||
,TORZSLAPSZAM
|
||||
,SZULHELY
|
||||
,SZULIDO
|
||||
,ANYJANEVE
|
||||
,@OsztalycsoportNev AS Osztaly
|
||||
,@pOsztalyId AS OsztalyId
|
||||
,@OsztalycsoportVezeto AS Osztalyfonok
|
||||
FROM #TanuloResult
|
||||
ORDER BY TANULONEV
|
||||
|
||||
END
|
||||
|
||||
--PRINT ' ÉRTÉKELÉSEK ---------------------------------------------------------------'
|
||||
|
||||
|
||||
INSERT INTO #ErtekelesResult (
|
||||
TanuloId
|
||||
,TanuloCsoportId
|
||||
,Targy
|
||||
,Jegyzet
|
||||
,Ertekeles
|
||||
,ErtekelesValue
|
||||
,ErtekelesJegyzettel
|
||||
,Oraszam
|
||||
,RENDEZ1
|
||||
,RENDEZ2
|
||||
,RENDEZ3
|
||||
,RENDEZ4
|
||||
,RENDEZ5
|
||||
,ErtekelesTemaIdegenNyelven
|
||||
,ErtekelesSzovegIdegenNyelven
|
||||
,ErtekelesValueIdegenNyelven
|
||||
,ErtekelesOsztalyzatIdegenNyelven
|
||||
,ErtekelesSzazalek
|
||||
,Jeloles
|
||||
,TantargyNevIdegenNyelven
|
||||
,TantargyId
|
||||
) EXEC uspGetDokumentumErtekelesek
|
||||
@osztalyId = @pOsztalyId
|
||||
,@tanevId = @pTanevId
|
||||
,@ertekelesTipus = @pErtekelesTipus
|
||||
,@isMuveszetOktatasi = @pIsMuveszetOktatasi
|
||||
,@tanitasiHetekSzamaVegzos = @tanitasiHetekSzamaVegzos
|
||||
,@tanitasiHetekSzamaNemVegzos = @tanitasiHetekSzamaNemVegzos
|
||||
,@isAltantargyBeszamitasa = @isAltantargyBeszamitasa
|
||||
,@nyomtatvanyNyelvEnum = @nyomtatvanyNyelvEnum
|
||||
,@idegenNyelvId = 0
|
||||
|
||||
SELECT
|
||||
ertekeles.TanuloId
|
||||
,ertekeles.TanuloCsoportId
|
||||
,Targy
|
||||
,TantargyId
|
||||
,Jegyzet
|
||||
,Ertekeles
|
||||
,ErtekelesValue
|
||||
,ErtekelesJegyzettel
|
||||
,Oraszam
|
||||
,RENDEZ1
|
||||
,RENDEZ2
|
||||
,RENDEZ3
|
||||
,RENDEZ4
|
||||
,RENDEZ5
|
||||
,'' TanarNev
|
||||
FROM #ErtekelesResult ertekeles
|
||||
INNER JOIN #TanuloResult Tanulok ON Tanulok.TANULOID = ertekeles.TanuloId AND Tanulok.TanuloCsoportId = ertekeles.TanuloCsoportId
|
||||
ORDER BY ertekeles.TanuloId, RENDEZ1, RENDEZ2, RENDEZ3, RENDEZ4, RENDEZ5
|
||||
|
||||
IF(@pIsShowTanuloiAtlag = 1) BEGIN
|
||||
PRINT 'Tanuló Átlaga'
|
||||
SELECT
|
||||
atlag.TanuloId TanuloId
|
||||
,atlag.TanuloCsoportId
|
||||
,REPLACE(CAST(AVG(ErtekelesValue * 1.0) AS DECIMAL(10,2)), '.', ',') ErtekelesAtlag
|
||||
FROM #ErtekelesResult atlag
|
||||
INNER JOIN #TanuloResult Tanulok ON Tanulok.TANULOID = atlag.TanuloId AND Tanulok.TanuloCsoportId = atlag.TanuloCsoportId
|
||||
GROUP BY atlag.TanuloId, atlag.TanuloCsoportId
|
||||
END
|
||||
|
||||
|
||||
--PRINT 'MULASZTÁSOK ---------------------------------------------------------------'
|
||||
INSERT INTO #MulasztasResult (
|
||||
TanuloId
|
||||
,TanuloCsoportId
|
||||
,Igazolt
|
||||
,Igazolatlan
|
||||
,ElmeletIgazolt
|
||||
,ElmeletIgazolatlan
|
||||
,GyakorlatIgazolt
|
||||
,GyakorlatIgazolatlan
|
||||
,ElmeletOsszes
|
||||
,GyakorlatOsszes
|
||||
,Osszes
|
||||
) EXEC sp_GetDokumentumMulasztasok
|
||||
@osztalyId = @pOsztalyId
|
||||
,@tanevId = @pTanevId
|
||||
,@elmeletiOraPercben = @pElmeletiOraPercben
|
||||
,@gyakorlatiOraPercben = @pGyakorlatiOraPercben
|
||||
,@ertekelesTipus = @pErtekelesTipus
|
||||
,@iskolaErdekuSzamit = @pIskolaErdekuSzamit
|
||||
,@isMuveszetOktatasi = @pIsMuveszetOktatasi
|
||||
|
||||
SELECT
|
||||
mu.TanuloId
|
||||
,mu.TanuloCsoportId
|
||||
,Igazolt
|
||||
,Igazolatlan
|
||||
,ElmeletIgazolt
|
||||
,ElmeletIgazolatlan
|
||||
,GyakorlatIgazolt
|
||||
,GyakorlatIgazolatlan
|
||||
,ElmeletOsszes
|
||||
,GyakorlatOsszes
|
||||
,Osszes
|
||||
FROM #MulasztasResult mu
|
||||
INNER JOIN #TanuloResult Tanulok ON Tanulok.TANULOID = mu.TanuloId AND Tanulok.TanuloCsoportId = mu.TanuloCsoportId
|
||||
|
||||
--PRINT 'MENTESSÉGEK ---------------------------------------------------------------'
|
||||
SELECT
|
||||
Mentessegek.TanuloId
|
||||
,Mentessegek.TanuloCsoportId
|
||||
,TantargyNev
|
||||
,MentessegOka
|
||||
FROM fnGetDokumentumTanuloMentessegei(@pTanevId, @pOsztalyId, DEFAULT) Mentessegek
|
||||
INNER JOIN #TanuloResult Tanulok ON Tanulok.TANULOID = Mentessegek.TanuloId AND Tanulok.TanuloCsoportId = Mentessegek.TanuloCsoportId
|
||||
|
||||
--PRINT 'TANULÓ elérhetőségei ---------------------------------------------------------------'
|
||||
SELECT
|
||||
GondviseloNev GondviseloNeve
|
||||
,Gondviselo.TanuloId
|
||||
FROM fnGetDokumentumGondviselok (@pOsztalyId, @pTanevId, 'F', 'T') Gondviselo
|
||||
INNER JOIN #TanuloResult Tanulok ON Tanulok.TANULOID = Gondviselo.TanuloId
|
||||
|
||||
SELECT DISTINCT
|
||||
TanuloTable.TanuloId AS tanuloID
|
||||
,C_IRANYITOSZAM + ' ' + C_VAROS + ', ' + C_KOZTERULET + ' ' + kozterulet.C_NAME + ' ' + C_HAZSZAM AS CimText
|
||||
,cimTipus.C_NAME AS CimTipusa
|
||||
FROM #TanuloResult TanuloTable
|
||||
INNER JOIN T_CIM_OSSZES cim ON cim.C_FELHASZNALOID = TanuloTable.TanuloId
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES kozterulet ON kozterulet.Id = C_KOZTERULETJELLEGE AND kozterulet.C_TANEVID = @pTanevId
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES cimTipus ON cim.C_CIMTIPUSA = cimTipus.ID AND cimTipus.C_TANEVID = @pTanevId
|
||||
WHERE cim.TOROLT = 'F'
|
||||
AND cim.C_GONDVISELOID IS NULL
|
||||
AND cim.C_ALAPERTELMEZETT = 'T'
|
||||
AND cim.C_TANEVID = @pTanevId
|
||||
|
||||
--Tanuló összefüggő szakmai gyakorlat
|
||||
SELECT
|
||||
SzakmaiGyakorlat.TanuloId
|
||||
,SzakmaiGyakorlat.TanuloCsoportId
|
||||
,isTeljesitett
|
||||
,Ertekeles
|
||||
,Megjegyzes
|
||||
,Datum
|
||||
FROM fnGetDokumentumOsszefuggoSzakmaiGyakorlat(@pTanevId, @pOsztalyId) SzakmaiGyakorlat
|
||||
INNER JOIN #TanuloResult Tanulok ON Tanulok.TANULOID = SzakmaiGyakorlat.TanuloId AND Tanulok.TanuloCsoportId = SzakmaiGyakorlat.TanuloCsoportId
|
||||
|
||||
--PRINT 'Osztály adatok az iktatáshoz ---------------------------------------------------------------'
|
||||
IF @pIsMuveszetOktatasi = 0 BEGIN
|
||||
SELECT
|
||||
f.C_NYOMTATASINEV AS Osztalyfonok
|
||||
,f.ID AS OsztalyfonokId
|
||||
,ocs.C_NEV AS Osztalynev
|
||||
,@pOsztalyId AS OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA AS EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
,o.C_TANTERVID AS TantervId
|
||||
,ocs.C_KEPZESIFORMA AS KepzesiForma
|
||||
,o.C_AGAZAT AS Agazat
|
||||
,o.C_SZAKMACSOPORT AS SzakmaCsoport
|
||||
,o.C_SZAKKEPESITES AS Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES AS Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES AS OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM AS CSJVegzosEvfolyamu
|
||||
,ocs.C_isTECHNIKAI AS OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI AS OJNemzetisegi
|
||||
,o.C_KETTANNYELVU AS OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO AS OJNyelviElokeszito
|
||||
,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI AS OJIsGyogypedagogiaiLogopediai
|
||||
,o.C_SPORT AS OJSportOsztaly
|
||||
,o.C_AJPROGRAM AS OJAranyJanosProgram
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.id
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = o.C_OSZTALYFONOKID
|
||||
WHERE ocs.ID = @pOsztalyId
|
||||
AND ocs.C_TANEVID = @pTanevId
|
||||
AND ocs.TOROLT = 'F';
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT
|
||||
f.C_NYOMTATASINEV AS CsoportVezeto
|
||||
,f.ID AS CsoportVezetoId
|
||||
,ocs.C_NEV AS OSZTALYNEV
|
||||
,@pOsztalyId AS CsoportId
|
||||
,ocs.C_EVFOLYAMTIPUSA AS EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
,ocs.C_KERESZTFELEVES AS OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM AS CSJVegzosEvfolyamu
|
||||
,cs.C_TIPUSA AS CsoportTipusa
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_CSOPORT_OSSZES cs ON cs.ID = ocs.id
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = cs.C_CSOPORTVEZETOID
|
||||
WHERE ocs.ID = @pOsztalyId
|
||||
AND ocs.C_TANEVID = @pTanevId
|
||||
AND ocs.TOROLT = 'F';
|
||||
END
|
||||
|
||||
--Bejegyzések
|
||||
SELECT
|
||||
TanuloTable.TanuloId
|
||||
,TanuloTable.TanuloCsoportId
|
||||
,'A tanév során ' + CAST(SUM(Oraszam) AS nvarchar(max)) + ' óra közösségi szolgálatot teljesített.' AS Bejegyzes
|
||||
FROM fnGetDokumentumKozossegiSzolgalatOsztalyonkent (@pTanevId, @pOsztalyId, 0) bejegyzes
|
||||
INNER JOIN #TanuloResult TanuloTable ON bejegyzes.TanuloId = TanuloTable.TanuloId AND bejegyzes.TanuloCsoportId = TanuloTable.TanuloCsoportId
|
||||
WHERE @pIsKozossegiSzolgalat = 1
|
||||
-- AND ((@IdoszakVegeTanevRendje = 1395) OR (IntervallumVege <= @IdoszakVege OR @IdoszakVege BETWEEN IntervallumKezdete AND IntervallumVege))
|
||||
GROUP BY TanuloTable.TanuloId, TanuloTable.TanuloCsoportId
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
bejegyzes.TanuloId AS TanuloId
|
||||
,TanuloCsoportId
|
||||
,Tartalom AS Bejegyzes
|
||||
FROM fnGetDokumentumTanulokFeljegyzesei(@pTanevId, @pOsztalyId, 0) bejegyzes
|
||||
INNER JOIN #TanuloResult TanuloTable ON bejegyzes.TanuloId = TanuloTable.TanuloId
|
||||
WHERE Tipusa IN (1546, @EsemenyTipus)
|
||||
AND BelepesDatum <= Datum
|
||||
AND (KilepesDatum IS NULL OR KilepesDatum > Datum)
|
||||
|
||||
-- Zaradekok
|
||||
IF (@pErtekelesTipus IN (1519, 1520))
|
||||
BEGIN
|
||||
EXEC dbo.uspGetDokumentumTanuloZaradekai
|
||||
@tanevId = @pTanevId
|
||||
,@osztalyId = @pOsztalyId
|
||||
,@kellVegzaradek = 1
|
||||
,@kellAtsorolasiZaradek = 1
|
||||
,@idegenNyelvId = 0
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SELECT
|
||||
NULL AS TanuloId
|
||||
,NULL AS TanuloCsoportId
|
||||
,'' AS Bejegyzes
|
||||
,'' AS BejegyzesIdegenNyelven
|
||||
END
|
||||
|
||||
END
|
||||
GO
|
||||
|
|
@ -0,0 +1,262 @@
|
|||
DROP PROCEDURE IF EXISTS [dbo].[uspGetHaladasiNaploAdatok]
|
||||
GO
|
||||
CREATE PROCEDURE [dbo].[uspGetHaladasiNaploAdatok]
|
||||
@tanevID int,
|
||||
@osztalyID int = null,
|
||||
@tanarID int = null,
|
||||
@feladatKategoriaId int = null
|
||||
AS
|
||||
BEGIN
|
||||
DECLARE @cTantargyId INT = 0
|
||||
DECLARE @cOsztalyCsoportId INT = 0
|
||||
DECLARE @cTanarId INT = 0
|
||||
DECLARE @foglalkozasNev VARCHAR(255)
|
||||
|
||||
SET NOCOUNT ON;
|
||||
CREATE TABLE #Foglalkozasok (
|
||||
Nev nvarchar(511) COLLATE Hungarian_CI_AI
|
||||
,C_TANTARGYID int
|
||||
,C_OSZTALYCSOPORTID int
|
||||
,C_INTEZMENYID int
|
||||
,C_TANARID int
|
||||
,VanTTF char(1)
|
||||
)
|
||||
|
||||
INSERT INTO #Foglalkozasok
|
||||
SELECT DISTINCT
|
||||
ocs.C_NEV + ' - ' + tt.C_NEV AS Nev
|
||||
,tn.C_TANTARGYID
|
||||
,tn.C_OSZTALYCSOPORTID
|
||||
,tn.C_INTEZMENYID
|
||||
,tn.C_TANARID AS C_TANARID
|
||||
,IIF(f.ID IS NULL,'F','T') AS VanTTF
|
||||
FROM T_TANITASIORA_OSSZES tn
|
||||
LEFT JOIN T_FOGLALKOZAS_OSSZES f ON f.C_TANTARGYID = tn.C_TANTARGYID AND f.C_OSZTALYCSOPORTID = tn.C_OSZTALYCSOPORTID AND f.C_TANARID = tn.C_TANARID AND f.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES OCS on OCS.ID = tn.C_OSZTALYCSOPORTID and OCS.TOROLT = 'F' AND (OCS.C_FELADATKATEGORIAID = @feladatKategoriaId OR @feladatKategoriaId IS NULL)
|
||||
INNER JOIN T_TANTARGY_OSSZES tt on tt.ID = tn.C_TANTARGYID and tt.TOROLT = 'F'
|
||||
LEFT JOIN (SELECT ID FROM fnGetDokumentumKapcsolodoOsztalycsoportok(@osztalyID, @tanevID, 0)) kocs ON kocs.ID = ocs.ID AND @osztalyID IS NOT NULL
|
||||
WHERE tn.TOROLT = 'F'
|
||||
AND tn.C_TANEVID = @tanevID
|
||||
AND (
|
||||
((@osztalyID IS NOT NULL) AND (kocs.ID IS NOT NULL))
|
||||
OR
|
||||
((@tanarID IS NOT NULL) AND tn.C_TANARID = @tanarID)
|
||||
)
|
||||
ORDER BY VanTTF DESC, Nev ASC
|
||||
|
||||
SELECT
|
||||
IIF(fog.VanTTF = 'F','Egyedi-','') + Nev + ' - ' + felh.C_NYOMTATASINEV AS Nev
|
||||
,fog.VanTTF AS VanTTF
|
||||
FROM #Foglalkozasok fog
|
||||
INNER JOIN T_FELHASZNALO_OSSZES felh on fog.C_TANARID = felh.ID
|
||||
ORDER BY fog.VanTTF DESC, Nev ASC
|
||||
|
||||
DECLARE @sorszamTable TABLE (
|
||||
tanitasiOraId int-- PRIMARY KEY
|
||||
,evesOraszam int
|
||||
,foglalkozasId int
|
||||
)
|
||||
|
||||
INSERT INTO @sorszamTable (tanitasiOraId, evesOraszam)
|
||||
SELECT s.Id, s.EvesSorszam FROM #Foglalkozasok f
|
||||
CROSS APPLY dbo.fnGetEvesOraszamLista(
|
||||
f.C_TANTARGYID
|
||||
,f.C_OSZTALYCSOPORTID
|
||||
,f.C_TANARID
|
||||
,GETDATE()
|
||||
,f.C_INTEZMENYID
|
||||
,@tanevID
|
||||
)s
|
||||
|
||||
|
||||
DECLARE foglalkozasCursor CURSOR FOR
|
||||
SELECT C_TANTARGYID, C_OSZTALYCSOPORTID, C_TANARID FROM #Foglalkozasok ORDER BY VanTTF DESC, Nev ASC
|
||||
|
||||
OPEN foglalkozasCursor
|
||||
FETCH NEXT FROM foglalkozasCursor into @cTantargyId, @cOsztalyCsoportId, @cTanarId
|
||||
|
||||
WHILE @@FETCH_STATUS = 0 BEGIN
|
||||
SELECT DISTINCT
|
||||
CASE
|
||||
WHEN tn.C_MEGTARTOTT = 'T' THEN CAST(s.evesOraszam AS nvarchar(max))
|
||||
ELSE '-'
|
||||
END AS OraSorszam
|
||||
,fh.C_NYOMTATASINEV AS TanarNev
|
||||
,fh.C_OKTATASIAZONOSITO AS TanarOktAzon
|
||||
,tn.C_TEMA AS Tema
|
||||
,IIF(tn.C_HELYETTESITOTANARID IS NOT NULL, 'T', 'F') AS Helyettesitett
|
||||
,FORMAT(tn.C_DATUM, 'yyyy.MM.dd.') AS Datum
|
||||
,tn.C_ORASZAM AS OraSzam
|
||||
,tn.C_MEGJEGYZES AS Megjegyzes
|
||||
,ISNULL(tn.C_HAZIFELADAT,hf.C_FELADATSZOVEGE) AS HaziFeladat
|
||||
,tn.C_TULORA AS TulOra
|
||||
,tn.C_TAMOPORA AS TamopOra
|
||||
,tn.C_NEMSZAKRENDSZERUORA AS NemszakrendszeruOra
|
||||
,tn.C_IKTTANORA AS IktOra
|
||||
,tn.C_NEMZETISEGIORA AS NemzetisegiOra
|
||||
,tn.C_ISFELNOTTOKTATASISZERZODES AS IsFelnottoktatasiSzerzodes
|
||||
,tn.C_MINDENNAPOSTESTNEVELES AS TestnevelesOra
|
||||
,tn.C_IPRTANORA AS IprOra
|
||||
,tn.C_DIFFERENCIALT AS DifferencialtOra
|
||||
,tn.C_KOOPERATIV AS KooperativOra
|
||||
,tn.C_MERES AS MeresOra
|
||||
,tn.C_DRAMA AS DramaOra
|
||||
,tn.C_PARHUZAMOSORA AS ParhuzamosOra
|
||||
,tn.C_TIOP12 AS TiopOra
|
||||
,tn.C_VEKOP73317 AS VEKOP73317
|
||||
,tn.C_KAPORA AS KAPOra
|
||||
,tn.C_BONTOTT AS Bontott
|
||||
,tn.C_MULTIKULTURALISORA AS Multikulturalis
|
||||
,tn.C_EFOP32317 AS EFOP32317
|
||||
,tn.C_GINOP623 AS GINOP623
|
||||
,tn.C_EFOP31716 AS EFOP31716
|
||||
,tn.C_EFOP33717 AS EFOP33717
|
||||
,tn.C_TIOP1111212012001 AS TIOP1111212012001
|
||||
,tn.C_EFOP23517 AS EFOP23517
|
||||
-- Komplex alapprogram adatok
|
||||
,tn.C_ISDFHTORA AS DFHTora
|
||||
,tn.C_ISDFHTKIPORA AS DFHTKIPora
|
||||
,tn.C_KIPORA KIPOra
|
||||
,tn.C_ISTEORAD AS TEorad
|
||||
,tn.C_ISRAHANGOLODAS AS Rahangolodas
|
||||
,tn.C_KOMPLEXORA AS Komplexora
|
||||
,tn.C_ISDIGITALISALAPUALPROGRAM AS DigitalisAlapuAlprogram
|
||||
,tn.C_ISTESTMOZGASALAPUALPROGRAM AS TestmozgasAlapuAlprogram
|
||||
,tn.C_ISELETGYAKORLATALAPUALPROGRA AS EletGyakorlatAlapuAlprogram
|
||||
,tn.C_ISMUVESZETALAPUALPROGRAM AS MuveszetAlapuAlprogram
|
||||
,tn.C_ISLOGIKAALAPUALPROGRAM AS LogikaiAlapuAlprogram
|
||||
FROM T_TANITASIORA_OSSZES tn
|
||||
INNER JOIN T_FELHASZNALO_OSSZES fh ON fh.ID = tn.C_TANARID
|
||||
LEFT JOIN @sorszamTable s ON s.tanitasiOraId = tn.ID
|
||||
LEFT JOIN T_HAZIFELADATOK_OSSZES hf ON hf.C_TANITASIORAID = tn.ID AND hf.TOROLT = 'F'
|
||||
WHERE
|
||||
tn.TOROLT = 'F'
|
||||
AND tn.C_TANEVID = @tanevID
|
||||
AND tn.C_TANARID = @cTanarId
|
||||
AND tn.C_TANTARGYID = @cTantargyId
|
||||
AND tn.C_OSZTALYCSOPORTID = @cOsztalyCsoportId
|
||||
ORDER BY Datum
|
||||
|
||||
FETCH NEXT FROM foglalkozasCursor
|
||||
INTO @cTantargyId, @cOsztalyCsoportId, @cTanarId
|
||||
END
|
||||
|
||||
CLOSE foglalkozasCursor
|
||||
DEALLOCATE foglalkozasCursor
|
||||
|
||||
IF (SELECT COUNT(Nev) FROM #Foglalkozasok) = 0 BEGIN
|
||||
DECLARE @nincsAdat TABLE (
|
||||
OraSorszam nvarchar(max)
|
||||
,TanarNev nvarchar(1)
|
||||
,TanarOktAzon nvarchar(1)
|
||||
,Tema nvarchar(1)
|
||||
,Helyettesitett nvarchar(1)
|
||||
,Datum datetime
|
||||
,OraSzam int
|
||||
,Megjegyzes nvarchar(1)
|
||||
,HaziFeladat nvarchar(1)
|
||||
,TulOra char
|
||||
,TamopOra char
|
||||
,NemszakrendszeruOra char
|
||||
,IktOra char
|
||||
,NemzetisegiOra char
|
||||
,TestnevelesOra char
|
||||
,IprOra char
|
||||
,DifferencialtOra char
|
||||
,KooperativOra char
|
||||
,MeresOra char
|
||||
,DramaOra char
|
||||
,ParhuzamosOra char
|
||||
,TiopOra char
|
||||
,VEKOP73317 char
|
||||
,KAPOra char
|
||||
,Bontott char
|
||||
,Multikulturalis char
|
||||
,EFOP32317 char
|
||||
,GINOP623 char
|
||||
,EFOP31716 char
|
||||
,EFOP33717 char
|
||||
,TIOP1111212012001 char
|
||||
,EFOP23517 char
|
||||
-- Komplex alapprogram adatok
|
||||
,DFHTora char
|
||||
,DFHTKIPora char
|
||||
,KIPOra char
|
||||
,TEorad char
|
||||
,Rahangolodas char
|
||||
,Komplexora char
|
||||
,DigitalisAlapuAlprogram char
|
||||
,TestmozgasAlapuAlprogram char
|
||||
,EletGyakorlatAlapuAlprogram char
|
||||
,MuveszetAlapuAlprogram char
|
||||
,LogikaiAlapuAlprogram char
|
||||
)
|
||||
SELECT * FROM @nincsAdat;
|
||||
END
|
||||
|
||||
-- Iktatás adatok
|
||||
IF @tanarID IS NOT NULL BEGIN
|
||||
SELECT
|
||||
f.ID AS PedagogusId
|
||||
,f.C_OKTATASIAZONOSITO AS PedagogusOktAzon
|
||||
,mua.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
FROM T_FELHASZNALO_OSSZES AS f
|
||||
LEFT JOIN T_MUNKAUGYIADATOK_OSSZES AS mua ON mua.C_ALKALMAZOTTID = f.ID
|
||||
WHERE f.ID = @tanarID
|
||||
AND f.C_TANEVID = @tanevID
|
||||
END
|
||||
IF @osztalyID IS NOT NULL BEGIN
|
||||
DECLARE @isCsoport INT = (SELECT COUNT(ID) FROM T_CSOPORT_OSSZES WHERE ID = @osztalyID)
|
||||
IF @isCsoport = 0 BEGIN
|
||||
SELECT
|
||||
ocs.ID AS OsztalyId
|
||||
,o.C_OSZTALYFONOKID AS OsztalyfonokId
|
||||
,ocs.C_EVFOLYAMTIPUSA AS EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
,o.C_TANTERVID AS TantervId
|
||||
,ocs.C_KEPZESIFORMA AS KepzesiForma
|
||||
,o.C_AGAZAT AS Agazat
|
||||
,o.C_SZAKMACSOPORT AS SzakmaCsoport
|
||||
,o.C_SZAKKEPESITES AS Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES AS Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES AS OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM AS CSJVegzosEvfolyamu
|
||||
,ocs.C_ISTECHNIKAI AS OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI AS OJNemzetisegi
|
||||
,o.C_KETTANNYELVU AS OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO AS OJNyelviElokeszito
|
||||
,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI AS OJIsGyogypedagogiaiLogopediai
|
||||
,o.C_SPORT AS OJSportOsztaly
|
||||
,o.C_AJPROGRAM AS OJAranyJanosProgram
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES AS o ON ocs.id = o.ID
|
||||
WHERE ocs.TOROLT='F'
|
||||
AND ocs.ID = @osztalyId
|
||||
AND ocs.C_TANEVID = @tanevId
|
||||
END
|
||||
ELSE BEGIN
|
||||
SELECT
|
||||
ocs.ID AS CsoportId
|
||||
,cs.C_CSOPORTVEZETOID AS CsoportvezetoId
|
||||
,cs.C_TIPUSA AS CsoportTipusa
|
||||
,ISNULL(ocs.C_EVFOLYAMTIPUSA, 1296) AS EvfolyamTipusa -- 1296 = Na
|
||||
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
,ocs.C_KERESZTFELEVES AS OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM AS CSJVegzosEvfolyamu
|
||||
FROM T_OSZTALYCSOPORT_OSSZES AS ocs
|
||||
INNER JOIN T_CSOPORT_OSSZES cs ON cs.ID = ocs.ID
|
||||
WHERE ocs.TOROLT = 'F'
|
||||
AND ocs.ID = @osztalyID
|
||||
AND ocs.C_TANEVID = @tanevID
|
||||
END
|
||||
SELECT DISTINCT
|
||||
felh.ID AS TanarId
|
||||
,felh.C_OKTATASIAZONOSITO AS TanarOktAzon
|
||||
FROM #Foglalkozasok fogl
|
||||
INNER JOIN T_FELHASZNALO_OSSZES felh ON felh.ID = fogl.C_TANARID
|
||||
END
|
||||
|
||||
DROP TABLE #Foglalkozasok
|
||||
END
|
||||
|
||||
GO
|
|
@ -0,0 +1,92 @@
|
|||
DROP PROCEDURE IF EXISTS uspGetIskolalatogatasiIgazolas
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspGetIskolalatogatasiIgazolas
|
||||
@osztalyId int
|
||||
,@tanevId int
|
||||
AS BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
-- fejléc
|
||||
SELECT
|
||||
IntezmenyAdatok.C_NEV AS IntezmenyNeve
|
||||
,IntezmenyAdatok.C_IGAZGATONEVE AS IGAZGATONEVE
|
||||
,IntezmenyAdatok.C_VAROS AS IntezmenyVaros
|
||||
,dbo.fnGetDokumentumIntezmenyCime(@tanevId) AS IntezmenyCime
|
||||
,C_OSZTALYFONOKID AS PartnerID
|
||||
,KepzesTipus.C_NAME AS KepzesForma
|
||||
,Tanev.C_NEV AS TANEV
|
||||
,ocs.C_NEV AS Osztaly
|
||||
,ocs.ID AS OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA AS EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
,ocs.C_KEPZESIFORMA AS KepzesiForma
|
||||
,Osztaly.C_OSZTALYFONOKID AS OsztalyFonokId
|
||||
,Osztaly.C_TANTERVID AS TantervId
|
||||
,ocs.C_KERESZTFELEVES AS OJCSJKeresztfeleves
|
||||
,ocs.C_ISTECHNIKAI AS OJTechnikaiOsztaly
|
||||
,Osztaly.C_NEMZETISEGI AS OJNemzetisegi
|
||||
,Osztaly.C_KETTANNYELVU AS OJKettannyelvu
|
||||
,Osztaly.C_NYELVIELOKESZITO AS OJNyelviElokeszito
|
||||
,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI AS OJIsGyogypedagogiaiLogopediai
|
||||
,Osztaly.C_SPORT AS OJSportOsztaly
|
||||
,Osztaly.C_AJPROGRAM AS OJAranyJanosProgram
|
||||
,Osztaly.C_SZAKMACSOPORT AS SzakmaCsoport
|
||||
,Osztaly.C_AGAZAT AS Agazat
|
||||
,Osztaly.C_SZAKKEPESITES AS Szakkepesites
|
||||
,Osztaly.C_RESZSZAKKEPESITES AS Reszszakkepesites
|
||||
FROM T_INTEZMENYADATOK_OSSZES IntezmenyAdatok
|
||||
INNER JOIN T_TANEV_OSSZES Tanev ON Tanev.ID = IntezmenyAdatok.C_TANEVID
|
||||
AND Tanev.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = @osztalyId
|
||||
AND ocs.C_TANEVID = IntezmenyAdatok.C_TANEVID
|
||||
AND ocs.TOROLT = 'F'
|
||||
INNER JOIN T_OSZTALY_OSSZES Osztaly ON Osztaly.C_ALTANEVID = IntezmenyAdatok.C_TANEVID
|
||||
AND Osztaly.ID = ocs.ID
|
||||
AND Osztaly.TOROLT = 'F'
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES KepzesTipus ON KepzesTipus.ID = ocs.C_KEPZESIFORMA
|
||||
AND KepzesTipus.C_TANEVID = IntezmenyAdatok.C_TANEVID
|
||||
AND KepzesTipus.TOROLT = 'F'
|
||||
WHERE IntezmenyAdatok.TOROLT = 'F'
|
||||
AND IntezmenyAdatok.C_TANEVID = @tanevId
|
||||
|
||||
-- tanulók
|
||||
SELECT
|
||||
Felhasznalo.C_NYOMTATASINEV AS TanuloNev
|
||||
,Felhasznalo.C_OKTATASIAZONOSITO AS OktatasiAzonosito
|
||||
,dbo.fnGetDokumentumDatumFormatum(Felhasznalo.C_SZULETESIDATUM) AS SzuletesiIdo
|
||||
,Felhasznalo.C_SZULETESIHELY AS SzuletesiHely
|
||||
,Felhasznalo.C_ANYJANEVE AS AnyjaNeve
|
||||
,dbo.fnGetDokumentumDatumFormatum(TanugyiAdatok.C_NYILVANTARTASKEZDETE) AS JogviszonyKezdete
|
||||
,dbo.fnGetDokumentumDatumFormatum(TanugyiAdatok.C_JOGVISZONYVARHATOBEFEJEZESE) AS JogviszonyVarhatoBefejezese
|
||||
,dbo.fnGetDokumentumDatumFormatum(TanuloCsoport.C_KILEPESDATUM) AS KilepesDatum
|
||||
,IIF(TanuloCsoport.C_KILEPESDATUM IS NOT NULL AND TanuloCsoport.C_KILEPESDATUM < GETDATE(), 'T', 'F') AS IsKilepett
|
||||
,Felhasznalo.ID AS TanuloId
|
||||
,ocs.ID AS OsztalyId
|
||||
,ocs.C_NEV AS Osztaly
|
||||
,KepzesTipus.C_NAME AS KepzesForma
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') s
|
||||
INNER JOIN T_FELHASZNALO_OSSZES Felhasznalo ON Felhasznalo.Id = s.TanuloId
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES TanuloCsoport ON TanuloCsoport.c_tanuloid = s.TanuloId
|
||||
AND TanuloCsoport.ID = s.TanuloCsoportId
|
||||
AND TanuloCsoport.TOROLT = 'F'
|
||||
AND TanuloCsoport.C_TANEVID = @tanevId
|
||||
AND TanuloCsoport.C_OSZTALYCSOPORTID = @osztalyId
|
||||
AND TanuloCsoport.C_BELEPESDATUM < GETDATE()
|
||||
INNER JOIN T_TANULOTANUGYIADATOK_OSSZES TanugyiAdatok ON TanugyiAdatok.C_TANULOCSOPORTID = TanuloCsoport.Id
|
||||
AND TanugyiAdatok.TOROLT = 'F'
|
||||
AND TanugyiAdatok.C_TANEVID = @tanevId
|
||||
INNER JOIN T_OSZTALY_OSSZES Osztaly ON Osztaly.ID = TanuloCsoport.C_OSZTALYCSOPORTID
|
||||
AND Osztaly.TOROLT = 'F'
|
||||
AND Osztaly.C_ALTANEVID = TanuloCsoport.C_TANEVID
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = TanuloCsoport.C_OSZTALYCSOPORTID
|
||||
AND ocs.TOROLT = 'F'
|
||||
AND ocs.C_TANEVID = TanuloCsoport.C_TANEVID
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES KepzesTipus ON KepzesTipus.ID = ocs.C_KEPZESIFORMA
|
||||
AND KepzesTipus.C_TANEVID = TanuloCsoport.C_TANEVID
|
||||
AND KepzesTipus.TOROLT = 'F'
|
||||
ORDER BY Felhasznalo.C_NYOMTATASINEV
|
||||
|
||||
END
|
||||
|
||||
GO
|
|
@ -0,0 +1,176 @@
|
|||
DROP PROCEDURE IF EXISTS uspGetNemNaplozottOrarendiOrak
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspGetNemNaplozottOrarendiOrak
|
||||
@IntezmenyId int
|
||||
,@TanevId int
|
||||
,@IdoszakKezdete datetime
|
||||
,@IdoszakVege datetime
|
||||
,@TanarId int = NULL
|
||||
,@OsztalyCsoportId int = NULL
|
||||
,@TantargyId int = NULL
|
||||
,@CsakAHelyettesiteseim bit = 0
|
||||
,@HelyettesitettOraimIs bit = 0
|
||||
,@pFeladatKategoriaId int = NULL
|
||||
,@pDatum datetime = NULL
|
||||
,@pOraszam int = NULL
|
||||
,@pIdopont datetime = NULL
|
||||
,@pFeladatEllatasiHelyId int = NULL
|
||||
AS BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
CREATE TABLE #NemNaplozottOrak (
|
||||
Id int
|
||||
,ORARENDIID int
|
||||
,Bontott char (1)
|
||||
,Hetirend int
|
||||
,HetNapja int
|
||||
,HetSorszam int
|
||||
,ErvenyessegKezdete datetime
|
||||
,ErvenyessegVege datetime
|
||||
,OraKezdete datetime
|
||||
,OraKezdeteDate date
|
||||
,OraKezdeteTimeText varchar(5)
|
||||
,OraVege datetime
|
||||
,Oraszam int
|
||||
,TargyNev nvarchar (300)
|
||||
,TargyNevForMobile nvarchar (300)
|
||||
,TargyNevForNyomtatvany nvarchar (300)
|
||||
,TargykategoriaID int
|
||||
,Megtartott char (1)
|
||||
,CsengetesiRendOraID int
|
||||
,CsengetesiRendID int
|
||||
,MaxNapiOraszam int
|
||||
,OsztalyNev nvarchar (255)
|
||||
,MegjelenesOka nvarchar (300)
|
||||
,TanarNev nvarchar (255)
|
||||
,TanarOktAzon nvarchar (20)
|
||||
,TeremNev nvarchar (255)
|
||||
,OraTipus nvarchar (200)
|
||||
,Hianyzas char (1)
|
||||
,Keses char (1)
|
||||
,Ures char (1)
|
||||
,HelyettesitoTanarID int
|
||||
,HelyettesitoTanarNev nvarchar (255)
|
||||
,HelyettesitesId int
|
||||
,TanarID int
|
||||
,AdminAltalKiirt char (1)
|
||||
,GroupId int
|
||||
,Tema nvarchar (max)
|
||||
,TantargyId int
|
||||
,OsztCsopId int
|
||||
,HelyettesitettPedagogusNev nvarchar (255)
|
||||
,OraKezdeteDateST nvarchar (25)
|
||||
,HetNapjaValos int
|
||||
,Datum datetime
|
||||
,HelyettesitoTanarOktAzon nvarchar (20)
|
||||
)
|
||||
|
||||
EXEC uspGetNemNaplozottOrarendiOrak_Core
|
||||
@IntezmenyId = @IntezmenyId
|
||||
,@TanevId = @TanevId
|
||||
,@IdoszakKezdete = @IdoszakKezdete
|
||||
,@IdoszakVege = @IdoszakVege
|
||||
,@TanarId = @TanarId
|
||||
,@OsztalyCsoportId = @OsztalyCsoportId
|
||||
,@TantargyId = @TantargyId
|
||||
,@CsakAHelyettesiteseim = @CsakAHelyettesiteseim
|
||||
,@HelyettesitettOraimIs = @HelyettesitettOraimIs
|
||||
,@pFeladatKategoriaId = @pFeladatKategoriaId
|
||||
,@pDatum = @pDatum
|
||||
,@pOraszam = @pOraszam
|
||||
,@pIdopont = @pIdopont
|
||||
,@pFeladatEllatasiHelyId = @pFeladatEllatasiHelyId
|
||||
|
||||
SELECT
|
||||
Id
|
||||
,ORARENDIID
|
||||
,Bontott
|
||||
,Hetirend
|
||||
,HetNapja
|
||||
,HetSorszam
|
||||
,ErvenyessegKezdete
|
||||
,ErvenyessegVege
|
||||
,OraKezdete
|
||||
,OraKezdeteDate
|
||||
,OraKezdeteTimeText
|
||||
,OraVege
|
||||
,Oraszam
|
||||
,TargyNev
|
||||
,TargyNevForMobile
|
||||
,TargyNevForNyomtatvany
|
||||
,TargykategoriaID
|
||||
,Megtartott
|
||||
,CsengetesiRendOraID
|
||||
,CsengetesiRendID
|
||||
,MaxNapiOraszam
|
||||
,OsztalyNev
|
||||
,MegjelenesOka
|
||||
,TanarNev
|
||||
,TanarOktAzon
|
||||
,TeremNev
|
||||
,OraTipus
|
||||
,Hianyzas
|
||||
,Keses
|
||||
,Ures
|
||||
,HelyettesitoTanarID
|
||||
,HelyettesitoTanarNev
|
||||
,HelyettesitesId
|
||||
,TanarID
|
||||
,AdminAltalKiirt
|
||||
,GroupId
|
||||
,Tema
|
||||
,TantargyId
|
||||
,OsztCsopId
|
||||
,HelyettesitettPedagogusNev
|
||||
,OraKezdeteDateST
|
||||
,HetNapjaValos
|
||||
,Datum
|
||||
,HelyettesitoTanarOktAzon
|
||||
FROM #NemNaplozottOrak
|
||||
|
||||
-- Iktatás adatok
|
||||
SELECT
|
||||
@OsztalyCsoportId AS OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA AS Evfolyam
|
||||
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
,ocs.C_KEPZESIFORMA AS KepzesiForma
|
||||
,o.C_OSZTALYFONOKID AS OsztalyFonokId
|
||||
,o.C_TANTERVID AS TantervId
|
||||
,o.C_SZAKMACSOPORT AS SzakmaCsoport
|
||||
,o.C_AGAZAT AS Agazat
|
||||
,o.C_SZAKKEPESITES AS Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES AS Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES AS OJCSJKeresztfeleves
|
||||
,ocs.C_ISTECHNIKAI AS OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI AS OJNemzetisegi
|
||||
,o.C_KETTANNYELVU AS OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO AS OJNyelviElokeszito
|
||||
,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI AS OJIsGyogypedagogiaiLogopediai
|
||||
,o.C_SPORT AS OJSportOsztaly
|
||||
,o.C_AJPROGRAM AS OJAranyJanosProgram
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.ID AND o.TOROLT = 'F'
|
||||
AND o.C_ALTANEVID = ocs.C_TANEVID
|
||||
AND o.C_ALINTEZMENYID = ocs.C_INTEZMENYID
|
||||
WHERE ocs.ID = @OsztalyCsoportId
|
||||
AND ocs.TOROLT = 'F'
|
||||
AND ocs.C_TANEVID = @TanevId
|
||||
AND ocs.C_INTEZMENYID = @IntezmenyId
|
||||
|
||||
-- Tanár iktatás adatok
|
||||
SELECT DISTINCT
|
||||
f.ID AS TanarId
|
||||
,f.C_OKTATASIAZONOSITO AS TanarOktAzon
|
||||
FROM T_ALKALMAZOTT_OSSZES a
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON f.ID = a.ID AND f.TOROLT = 'F'
|
||||
AND a.C_ALTANEVID = f.C_TANEVID
|
||||
AND a.C_ALINTEZMENYID = f.C_INTEZMENYID
|
||||
LEFT JOIN #NemNaplozottOrak orak ON orak.TanarID = f.ID
|
||||
WHERE a.TOROLT = 'F'
|
||||
AND a.C_ALINTEZMENYID = @IntezmenyId
|
||||
AND a.C_ALTANEVID = @TanevId
|
||||
AND (@TanarId IS NULL OR f.ID = @TanarId)
|
||||
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,367 @@
|
|||
DROP PROCEDURE IF EXISTS uspGetNyomtatvanyokOrarendOsszes
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspGetNyomtatvanyokOrarendOsszes
|
||||
@intezmenyId int
|
||||
,@tanevID int
|
||||
,@pIdoszakKezdete datetime
|
||||
,@pIdoszakVege datetime
|
||||
,@pTanarId int = NULL
|
||||
,@pIsHelyettesitesNelkul bit = 0
|
||||
,@pOsztalyCsoportId int = NULL
|
||||
,@pTanuloId int = NULL
|
||||
,@pTantargyId int = NULL
|
||||
,@pTeremId int = NULL
|
||||
,@pCsakOrarendiOrak bit = 0
|
||||
,@pIsNapirend bit /* 0 csak orarendi ora, 1 csak napirend, NULL mindkettő */
|
||||
,@pKapcsolodoCsoportokMegjelenitese bit = NULL
|
||||
,@pOsztalyBontasokMegjelenitese bit = NULL
|
||||
,@pFeladatKategoriaId int = NULL
|
||||
AS BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE
|
||||
@intezmenyNev nvarchar(510)
|
||||
,@hetirend int
|
||||
|
||||
CREATE TABLE #OrarendiOrak (
|
||||
Id int
|
||||
,ORARENDIID int
|
||||
,Datum datetime
|
||||
,Bontott char (1)
|
||||
,Hetirend int
|
||||
,HetNapja int
|
||||
,HetSorszam int
|
||||
,ErvenyessegKezdete datetime
|
||||
,ErvenyessegVege datetime
|
||||
,OraKezdete datetime
|
||||
,OraVege datetime
|
||||
,Oraszam int
|
||||
,TargyNev nvarchar (300)
|
||||
,TargyNevForMobile nvarchar (300)
|
||||
,TargykategoriaID int
|
||||
,Megtartott char (1)
|
||||
,CsengetesiRendOraID int
|
||||
,CsengetesiRendID int
|
||||
,MaxNapiOraszam int
|
||||
,OsztalyNev nvarchar (255)
|
||||
,TanevRendOsztalyCsoportId int
|
||||
,MegjelenesOka nvarchar (300)
|
||||
,TanarNev nvarchar (255)
|
||||
,TeremNev nvarchar (255)
|
||||
,TeremId int
|
||||
,OraTipus nvarchar (200)
|
||||
,Hianyzas char (1)
|
||||
,Keses char (1)
|
||||
,Ures char (1)
|
||||
,HelyettesitoTanarID int
|
||||
,HelyettesitoTanarNev nvarchar (255)
|
||||
,HelyettesitesId int
|
||||
,TanarID int
|
||||
,AdminAltalKiirt char (1)
|
||||
,GroupId int
|
||||
,Tema nvarchar (max)
|
||||
,TantargyId int
|
||||
,OsztCsopId int
|
||||
,IsEgyediNap char(1)
|
||||
,TeremTobbOratLehetTartani char(1)
|
||||
,KozpontiOraGroupId uniqueidentifier NULL
|
||||
,KozpontilagToroltOraGroupId uniqueidentifier NULL
|
||||
,INDEX IX1 CLUSTERED(Datum, HetNapja, Oraszam, TanevRendOsztalyCsoportId, TantargyId, TanarID)
|
||||
)
|
||||
|
||||
CREATE TABLE #Oraszamok (
|
||||
Oraszam int
|
||||
,PRIMARY KEY(Oraszam)
|
||||
)
|
||||
|
||||
SELECT TOP 1
|
||||
@intezmenyNev = i.C_NEV
|
||||
FROM T_INTEZMENYADATOK_OSSZES i
|
||||
WHERE i.C_INTEZMENYID = @intezmenyId
|
||||
AND i.C_TANEVID = @tanevID
|
||||
AND i.TOROLT = 'F'
|
||||
|
||||
INSERT INTO #OrarendiOrak (
|
||||
Id
|
||||
,ORARENDIID
|
||||
,Datum
|
||||
,Bontott
|
||||
,Hetirend
|
||||
,HetNapja
|
||||
,HetSorszam
|
||||
,ErvenyessegKezdete
|
||||
,ErvenyessegVege
|
||||
,OraKezdete
|
||||
,OraVege
|
||||
,Oraszam
|
||||
,TargyNev
|
||||
,TargyNevForMobile
|
||||
,TargykategoriaID
|
||||
,Megtartott
|
||||
,CsengetesiRendOraID
|
||||
,CsengetesiRendID
|
||||
,MaxNapiOraszam
|
||||
,OsztalyNev
|
||||
,TanevRendOsztalyCsoportId
|
||||
,MegjelenesOka
|
||||
,TanarNev
|
||||
,TeremNev
|
||||
,TeremId
|
||||
,OraTipus
|
||||
,Hianyzas
|
||||
,Keses
|
||||
,Ures
|
||||
,HelyettesitoTanarID
|
||||
,HelyettesitoTanarNev
|
||||
,HelyettesitesId
|
||||
,TanarID
|
||||
,AdminAltalKiirt
|
||||
,GroupId
|
||||
,Tema
|
||||
,TantargyId
|
||||
,OsztCsopId
|
||||
,IsEgyediNap
|
||||
,TeremTobbOratLehetTartani
|
||||
,KozpontiOraGroupId
|
||||
,KozpontilagToroltOraGroupId
|
||||
)
|
||||
EXEC sp_GetOrarend
|
||||
@pIntezmenyId = @intezmenyId
|
||||
,@pTanevId = @tanevID
|
||||
,@pIdoszakKezdete = @pIdoszakKezdete
|
||||
,@pIdoszakVege = @pIdoszakVege
|
||||
,@pTanarId = @pTanarId
|
||||
,@pIsHelyettesitesNelkul = @pIsHelyettesitesNelkul
|
||||
,@pOsztalyCsoportId = @pOsztalyCsoportId
|
||||
,@pTanuloId = @pTanuloId
|
||||
,@pTantargyId = @pTantargyId
|
||||
,@pTeremId = @pTeremId
|
||||
,@pCsakOrarendiOrak = @pCsakOrarendiOrak
|
||||
,@pIsNapirend = @pIsNapirend
|
||||
,@pFeladatKategoriaId = @pFeladatKategoriaId
|
||||
|
||||
-- a lekért órarendben a minden héten órákat átállítjuk a hétsorszámnak megfelelő hetirendre
|
||||
UPDATE orak
|
||||
SET orak.Hetirend = ISNULL(hr.Hetirend, orak.Hetirend)
|
||||
FROM #OrarendiOrak orak
|
||||
LEFT JOIN (
|
||||
SELECT DISTINCT
|
||||
o.Hetirend
|
||||
,o.HetSorszam
|
||||
FROM #OrarendiOrak o
|
||||
WHERE Hetirend <> 1554
|
||||
) hr ON hr.HetSorszam = orak.HetSorszam
|
||||
WHERE orak.Hetirend = 1554
|
||||
|
||||
-- kapcsolódó csoportok óráinak törlése
|
||||
IF @pKapcsolodoCsoportokMegjelenitese IS NOT NULL AND @pKapcsolodoCsoportokMegjelenitese = 0
|
||||
DELETE orak
|
||||
FROM #OrarendiOrak orak
|
||||
INNER JOIN T_CSOPORT_OSSZES cs ON cs.TOROLT = 'F'
|
||||
AND cs.ID = orak.OsztCsopId
|
||||
AND cs.C_OSZTALYBONTASID IS NULL
|
||||
INNER JOIN T_CSOPORTTIPUS_OSSZES cst ON cst.C_ALTANEVID = cs.C_ALTANEVID AND cst.TOROLT = 'F'
|
||||
AND cst.ID = cs.C_TIPUSA
|
||||
AND cst.C_ISTANORAICELU = 'F'
|
||||
WHERE OsztCsopId != @pOsztalyCsoportId
|
||||
|
||||
-- osztálybontott csoportok óráinak törlése
|
||||
IF @pOsztalyBontasokMegjelenitese IS NOT NULL AND @pOsztalyBontasokMegjelenitese = 0
|
||||
DELETE orak
|
||||
FROM #OrarendiOrak orak
|
||||
INNER JOIN T_CSOPORT_OSSZES cs ON cs.ID = orak.OsztCsopId
|
||||
AND cs.C_OSZTALYBONTASID IS NOT NULL
|
||||
WHERE orak.OsztCsopId != @pOsztalyCsoportId
|
||||
|
||||
-- egyedi napok esetén ne a megtartott napon, hanem az alap hét napján jelenjen meg
|
||||
UPDATE orak SET orak.HetNapja=nn.C_ALAPHETNAPJA
|
||||
FROM #OrarendiOrak orak
|
||||
INNER JOIN T_NAPTARINAP_OSSZES nn ON nn.C_NAPDATUMA = orak.Datum AND nn.C_TANEVID = @tanevID AND nn.TOROLT = 'F'
|
||||
WHERE orak.IsEgyediNap = 'T'
|
||||
|
||||
INSERT INTO #Oraszamok (Oraszam)
|
||||
SELECT DISTINCT
|
||||
ora.C_ORASZAM AS Oraszam
|
||||
FROM T_ORARENDIORA_OSSZES ora
|
||||
WHERE ora.C_INTEZMENYID = @intezmenyId
|
||||
AND ora.C_TANEVID = @tanevID
|
||||
AND ora.C_ORASZAM IS NOT NULL
|
||||
|
||||
SET @hetirend = (SELECT TOP 1 Hetirend FROM #OrarendiOrak)
|
||||
|
||||
SELECT DISTINCT
|
||||
COALESCE(@pTanarId, @pTeremId, @pOsztalyCsoportId) AS Id
|
||||
,STUFF(
|
||||
(
|
||||
SELECT DISTINCT
|
||||
', ' + IIF(@pTanarId IS NOT NULL, bo.TanarNev, IIF(@pTeremId IS NOT NULL, bo.TeremNev, IIF(@pOsztalyCsoportId IS NOT NULL, bo.OsztalyNev,'')))
|
||||
FROM #OrarendiOrak bo
|
||||
WHERE bo.Hetirend = o.Hetirend
|
||||
FOR XML PATH(''), TYPE
|
||||
).value
|
||||
('.', 'NVARCHAR(MAX)') ,1 , 2, ''
|
||||
) AS Nev
|
||||
,@intezmenyNev AS IntezmenyNev
|
||||
,STUFF(
|
||||
(
|
||||
SELECT DISTINCT
|
||||
', ' + dic.C_NAME
|
||||
FROM #OrarendiOrak qw
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES dic ON dic.C_TANEVID = @tanevID
|
||||
AND dic.TOROLT = 'F'
|
||||
AND dic.ID = qw.Hetirend
|
||||
WHERE o.Hetirend = qw.Hetirend
|
||||
FOR XML PATH(''), TYPE
|
||||
).value
|
||||
('(./text())[1]', 'VARCHAR(MAX)'), 1, 2, ''
|
||||
) AS Hetirend
|
||||
FROM #OrarendiOrak o
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES dic ON o.Hetirend = dic.ID
|
||||
AND dic.C_TANEVID = @tanevID
|
||||
AND dic.TOROLT = 'F'
|
||||
|
||||
SELECT
|
||||
COALESCE(@pTanarId, @pTeremId, @pOsztalyCsoportId) AS Id
|
||||
,IIF(@pIsNapirend = 0, CAST(t.Oraszam AS nvarchar(3)), ISNULL(t.OraKezdete + ' - ' + t.OraVege, '')) AS Ora
|
||||
,t.Hetirend AS HetirendId
|
||||
,[1408] AS Hetfo
|
||||
,[1409] AS Kedd
|
||||
,[1410] AS Szerda
|
||||
,[1411] AS Csutortok
|
||||
,[1412] AS Pentek
|
||||
,[1413] AS Szombat
|
||||
,[1414] AS Vasarnap
|
||||
,t.HetirendNev AS HetirendNev
|
||||
FROM (
|
||||
SELECT
|
||||
*
|
||||
FROM (
|
||||
SELECT
|
||||
STUFF(
|
||||
(
|
||||
SELECT
|
||||
CONVERT(nvarchar(max),
|
||||
'--------------------' + nchar(13) + nchar(10)
|
||||
+ bo.TargyNev + nchar(13) + nchar(10) + bo.OsztalyNev +
|
||||
IIF(@pTeremId IS NOT NULL OR @pOsztalyCsoportId IS NOT NULL, nchar(13) + nchar(10) + bo.TanarNev, '') + nchar(13) + nchar(10) + bo.TeremNev + nchar(13) + nchar(10))
|
||||
FROM #OrarendiOrak bo
|
||||
WHERE
|
||||
(@pIsNapirend = 0 AND bo.Oraszam = osz.Oraszam and o.HetNapja = bo.HetNapja)
|
||||
OR
|
||||
(ISNULL(@pIsNapirend, 1) <> 0 AND bo.OraKezdete = o.OraKezdete AND bo.OraVege = o.OraVege and o.HetNapja = bo.HetNapja)
|
||||
FOR XML PATH(''), TYPE
|
||||
).value
|
||||
('.', 'NVARCHAR(MAX)'), 1, 22, ''
|
||||
) AS TargyNev
|
||||
,o.HetNapja
|
||||
,osz.Oraszam
|
||||
,IIF(ISNULL(@pIsNapirend, 1) <> 0, CONVERT(char(5), o.OraKezdete, 108), NULL) AS OraKezdete
|
||||
,IIF(ISNULL(@pIsNapirend, 1) <> 0, CONVERT(char(5), o.OraVege, 108), NULL) AS OraVege
|
||||
,dic.C_NAME AS HetirendNev
|
||||
,@hetirend AS Hetirend
|
||||
FROM #OrarendiOrak AS o
|
||||
FULL JOIN #Oraszamok AS osz ON osz.Oraszam = o.Oraszam AND ISNULL(@pIsNapirend, 1) = 0
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES AS dic ON dic.C_TANEVID = @tanevID
|
||||
AND dic.TOROLT = 'F'
|
||||
AND dic.ID = @hetirend
|
||||
) ot PIVOT(MAX(ot.TargyNev) FOR ot.HetNapja IN(
|
||||
[1408]
|
||||
,[1409]
|
||||
,[1410]
|
||||
,[1411]
|
||||
,[1412]
|
||||
,[1413]
|
||||
,[1414])
|
||||
) AS pv
|
||||
) AS t
|
||||
WHERE @pIsNapirend = 0 OR (t.OraKezdete IS NOT NULL AND t.OraVege IS NOT NULL)
|
||||
ORDER BY
|
||||
HetirendNev
|
||||
,CASE WHEN @pIsNapirend = 0 THEN t.Oraszam ELSE CAST(t.OraKezdete AS datetime) END
|
||||
|
||||
-- Iktatási adatok
|
||||
IF @pOsztalyCsoportId IS NOT NULL
|
||||
BEGIN
|
||||
-- Osztály adatok
|
||||
SELECT
|
||||
@pOsztalyCsoportId AS OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA AS Evfolyam
|
||||
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
,ocs.C_KEPZESIFORMA AS KepzesiForma
|
||||
,o.C_OSZTALYFONOKID AS OsztalyFonokId
|
||||
,o.C_TANTERVID AS TantervId
|
||||
,o.C_SZAKMACSOPORT AS SzakmaCsoport
|
||||
,o.C_AGAZAT AS Agazat
|
||||
,o.C_SZAKKEPESITES AS Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES AS Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES AS OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM AS CSJVegzosEvfolyamu
|
||||
,ocs.C_ISTECHNIKAI AS OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI AS OJNemzetisegi
|
||||
,o.C_KETTANNYELVU AS OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO AS OJNyelviElokeszito
|
||||
,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI AS OJIsGyogypedagogiaiLogopediai
|
||||
,o.C_SPORT AS OJSportOsztaly
|
||||
,o.C_AJPROGRAM AS OJAranyJanosProgram
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.ID AND o.TOROLT = 'F'
|
||||
AND o.C_ALTANEVID = ocs.C_TANEVID
|
||||
AND o.C_ALINTEZMENYID = ocs.C_INTEZMENYID
|
||||
WHERE ocs.ID = @pOsztalyCsoportId
|
||||
AND ocs.TOROLT = 'F'
|
||||
AND ocs.C_TANEVID = @tanevID
|
||||
AND ocs.C_INTEZMENYID = @intezmenyId
|
||||
|
||||
-- Osztály csoportok
|
||||
SELECT DISTINCT
|
||||
ot.OsztCsopId AS CsoportId
|
||||
FROM #OrarendiOrak ot
|
||||
INNER JOIN T_CSOPORT_OSSZES cs ON cs.ID = ot.OsztCsopId
|
||||
AND cs.TOROLT = 'F'
|
||||
|
||||
-- Alkalmazottak
|
||||
SELECT DISTINCT
|
||||
ot.TanarID AS TanarId
|
||||
,f.C_OKTATASIAZONOSITO AS TanarOktAzon
|
||||
FROM #OrarendiOrak ot
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = ot.TanarID
|
||||
AND f.TOROLT = 'F'
|
||||
|
||||
-- Tanulók
|
||||
SELECT DISTINCT
|
||||
f.ID AS TanuloId
|
||||
,f.C_NYOMTATASINEV AS TanuloNeve
|
||||
,f.C_OKTATASIAZONOSITO AS TanuloOktAzon
|
||||
FROM #OrarendiOrak ot
|
||||
INNER JOIN T_TANULOCSOPORT_OSSZES tcs ON tcs.C_OSZTALYCSOPORTID = ot.OsztCsopId
|
||||
AND tcs.C_TANEVID = @tanevID
|
||||
AND tcs.TOROLT = 'F'
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON f.ID = tcs.C_TANULOID
|
||||
AND f.TOROLT = 'F'
|
||||
|
||||
END
|
||||
ELSE
|
||||
IF @pTanarId IS NOT NULL
|
||||
-- Alkalmazottak
|
||||
SELECT DISTINCT
|
||||
orak.TanarID AS TanarId
|
||||
,f.C_OKTATASIAZONOSITO AS TanarOktAzon
|
||||
,mua.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
FROM #OrarendiOrak orak
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES f ON f.ID = orak.TanarID
|
||||
AND f.TOROLT = 'F'
|
||||
INNER JOIN T_MUNKAUGYIADATOK_OSSZES mua ON mua.C_ALKALMAZOTTID = orak.TanarID
|
||||
AND mua.TOROLT = 'F'
|
||||
|
||||
ELSE
|
||||
IF @pTeremId IS NOT NULL
|
||||
SELECT
|
||||
t.ID AS TeremId
|
||||
,t.C_MUKODESIHELYID AS FeladatEllatasiHelyId
|
||||
FROM T_TEREM_OSSZES t
|
||||
WHERE t.ID = @pTeremId
|
||||
AND t.TOROLT = 'F'
|
||||
|
||||
END
|
||||
GO
|
|
@ -0,0 +1,82 @@
|
|||
DROP PROCEDURE IF EXISTS [dbo].[uspGetOrarendExcelExportData]
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[uspGetOrarendExcelExportData]
|
||||
@pTanevId int
|
||||
,@pErvenyessegKezdete date
|
||||
,@pErvenyessegVege date
|
||||
,@pIsOraErvenyessegiIdovel bit
|
||||
,@pIsNapiredExport bit
|
||||
,@pIsIdoszakonKivuliElemekMegjelenitese bit
|
||||
AS
|
||||
BEGIN
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
DECLARE @sql nvarchar(max)
|
||||
|
||||
SET @sql = N'
|
||||
SELECT '
|
||||
IF @pIsOraErvenyessegiIdovel = 1 BEGIN
|
||||
SET @sql += N'
|
||||
oo.C_ORAERVENYESSEGKEZDETE AS ''Óra érvényességének kezdete'',
|
||||
oo.C_ORAERVENYESSEGVEGE AS ''Óra érvényességének vége'', '
|
||||
END
|
||||
|
||||
SET @sql += N'
|
||||
hr.C_NAME As ''Hetirend'',
|
||||
hn.C_NAME AS ''Nap'', '
|
||||
IF @pIsNapiredExport = 0 BEGIN
|
||||
SET @sql += N' oo.C_ORASZAM AS ''Óra (adott napon belül)'', '
|
||||
END
|
||||
ELSE BEGIN
|
||||
SET @sql += N'
|
||||
oo.C_ORAKEZDETE AS ''Foglalkozás kezdete'',
|
||||
oo.C_ORAVEGE AS ''Foglalkozás vége'', '
|
||||
END
|
||||
SET @sql += N'
|
||||
IIF(o.ID IS NOT NULL,ocs.C_NEV,'''') AS ''Osztály'',
|
||||
IIF(cs.ID IS NOT NULL,ocs.C_NEV,'''') AS ''Csoport'',
|
||||
tgy.C_NEV as ''Tantárgy'',
|
||||
f.C_NYOMTATASINEV as ''Tanár'',
|
||||
t.C_NEV AS ''Helyiség'' '
|
||||
|
||||
SET @sql += N'
|
||||
FROM T_ORARENDIORA_OSSZES oo
|
||||
INNER JOIN T_TEREM_OSSZES t ON t.ID = oo.C_TEREMID AND t.TOROLT = ''F''
|
||||
INNER JOIN T_TANTARGY_OSSZES tgy ON tgy.ID = oo.C_TANTARGYID AND tgy.TOROLT = ''F''
|
||||
INNER JOIN T_FELHASZNALO_OSSZES f ON f.ID = oo.C_TANARID AND f.TOROLT = ''F''
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES hr ON hr.ID = oo.C_HETIREND AND hr.TOROLT = ''F'' AND hr.C_TANEVID = @pTanevId
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES hn ON hn.ID = oo.C_HETNAPJA AND hn.TOROLT = ''F'' AND hn.C_TANEVID = @pTanevId
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = oo.C_OSZTALYCSOPORTID AND ocs.TOROLT = ''F''
|
||||
LEFT JOIN T_OSZTALY_OSSZES o ON ocs.ID = o.ID AND o.TOROLT = ''F''
|
||||
LEFT JOIN T_CSOPORT_OSSZES cs ON ocs.ID = cs.ID AND cs.TOROLT = ''F'''
|
||||
IF @pIsIdoszakonKivuliElemekMegjelenitese = 0 BEGIN
|
||||
SET @sql += N'
|
||||
WHERE oo.TOROLT = ''F''
|
||||
AND oo.C_ORAERVENYESSEGKEZDETE >= @pErvenyessegKezdete
|
||||
AND (oo.C_ORAERVENYESSEGVEGE <= @pErvenyessegVege OR oo.C_ORAERVENYESSEGVEGE IS NULL)
|
||||
AND oo.C_TANEVID = @pTanevId '
|
||||
END
|
||||
ELSE BEGIN
|
||||
SET @sql += N'
|
||||
WHERE oo.TOROLT = ''F''
|
||||
AND oo.C_TANEVID = @pTanevId
|
||||
AND (oo.C_ORAERVENYESSEGVEGE > @pErvenyessegKezdete AND oo.C_ORAERVENYESSEGKEZDETE <= @pErvenyessegVege)'
|
||||
|
||||
END
|
||||
IF @pIsNapiredExport = 0 BEGIN
|
||||
SET @sql += N' AND oo.C_CSENGETESIRENDID IS NOT NULL '
|
||||
END
|
||||
ELSE BEGIN
|
||||
SET @sql += N' AND oo.C_CSENGETESIRENDID IS NULL '
|
||||
END
|
||||
EXEC sp_executesql @sql, N'
|
||||
@pTanevId int
|
||||
,@pErvenyessegKezdete date
|
||||
,@pErvenyessegVege date'
|
||||
,@pTanevId = @pTanevId
|
||||
,@pErvenyessegKezdete = @pErvenyessegKezdete
|
||||
,@pErvenyessegVege = @pErvenyessegVege
|
||||
|
||||
END
|
||||
GO
|
File diff suppressed because it is too large
Load diff
|
@ -0,0 +1,112 @@
|
|||
DROP PROCEDURE IF EXISTS dbo.sp_GetTanulokFelmentesekHatarozatok
|
||||
DROP PROCEDURE IF EXISTS dbo.uspGetTanulokFelmentesekHatarozatok
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE dbo.[uspGetTanulokFelmentesekHatarozatok]
|
||||
@OsztalyId INT,
|
||||
@TanevId INT
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
/*Alap adatok*/
|
||||
SELECT DISTINCT
|
||||
@OsztalyId OsztalyId
|
||||
,ocs.C_NEV OSZTALYCSOPORT_NEV
|
||||
,ofo.C_NYOMTATASINEV OSZTFO_NEV
|
||||
,i.C_IGAZGATONEVE INT_IGAZGATO_NEV
|
||||
,i.C_NEV INT_NEV
|
||||
,i.C_IRANYITOSZAM INT_IRSZAM
|
||||
,i.C_VAROS INT_VAROS
|
||||
,dbo.fnGetDokumentumIntezmenyCime(@TanevId) INT_CIM
|
||||
,i.C_OMKOD INT_OMKOD
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON ocs.ID = o.ID AND o.torolt='F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES ofo ON ofo.ID = o.C_OSZTALYFONOKID
|
||||
INNER JOIN T_INTEZMENYADATOK_OSSZES i on i.C_INTEZMENYID=ocs.C_INTEZMENYID AND i.C_TANEVID = ocs.C_TANEVID AND i.Torolt = 'F'
|
||||
WHERE ocs.ID = @OsztalyId
|
||||
|
||||
/*Mentességek*/
|
||||
SELECT
|
||||
tt.C_NEV TANTARGY
|
||||
,tm.C_MENTESSEGOKA MENTESSEG_OKA
|
||||
,IIF(C_ERTEKELESMENTESITES = 'T', 'Értékelés alóli felmentés,', '')
|
||||
+ IIF(C_ORAMENTESITES = 'T', 'Tanóra látogatása alóli felmentés,', '')
|
||||
+ IIF(C_SZOVEGESENERTEKELHETO = 'T', 'Szövegesen értékelhető,', '') TIPUSA
|
||||
,dbo.fnGetDokumentumDatumFormatum(tm.C_KEZDETE) Kezdete
|
||||
,dbo.fnGetDokumentumDatumFormatum(tm.C_VEGE) Vege
|
||||
,ft.ID TANULO_ID
|
||||
,ft.C_NYOMTATASINEV AS TANULO_NEV
|
||||
,ft.C_NYOMTATASINEV + ' ' + CAST(ft.ID AS NVARCHAR) GROUPPARAMETER
|
||||
,@OsztalyId AS OsztalyId
|
||||
,ft.C_OKTATASIAZONOSITO AS TanuloOktAzon
|
||||
,feljegyzo.ID AS FeljegyzoId
|
||||
,feljegyzo.C_NYOMTATASINEV AS FeljegyzoNeve
|
||||
,feljegyzo.C_OKTATASIAZONOSITO AS FeljegyzoOktAzon
|
||||
,CASE WHEN tt.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, tt.C_NEV) as RENDEZ2
|
||||
,ISNULL(tt.C_FOTARGYID, tt.ID) as RENDEZ3
|
||||
,tt.C_FOTARGYID as RENDEZ4
|
||||
,ISNULL(tt.C_NEVNYOMTATVANYBAN, tt.C_NEV) as RENDEZ5
|
||||
INTO #TanuloMentesseg
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@TanevId, @OsztalyId, 'T') Tanulok
|
||||
INNER JOIN T_FELHASZNALO_OSSZES ft ON ft.ID = Tanulok.TanuloId AND ft.TOROLT = 'F'
|
||||
LEFT JOIN T_TANULOMENTESSEG_OSSZES tm ON tm.C_TANULOID = ft.ID AND tm.TOROLT = 'F'
|
||||
LEFT JOIN T_TANTARGY_OSSZES tt ON tt.ID = tm.C_TANTARGYID AND tt.TOROLT = 'F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES feljegyzo ON feljegyzo.ID = tm.CREATOR AND feljegyzo.TOROLT = 'F'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES TargyKategoriaDictionary ON TargyKategoriaDictionary.Id = tt.C_TARGYKATEGORIA
|
||||
AND TargyKategoriaDictionary.TOROLT = 'F'
|
||||
AND TargyKategoriaDictionary.C_TANEVID = @tanevId
|
||||
LEFT JOIN T_TANTARGY_OSSZES FotargyTable ON tt.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
|
||||
ORDER BY ft.C_NYOMTATASINEV
|
||||
|
||||
SELECT
|
||||
TANTARGY
|
||||
,MENTESSEG_OKA
|
||||
,IIF(TIPUSA = '', '', LEFT(TIPUSA, LEN(TIPUSA) - 1)) TIPUSA
|
||||
,Kezdete
|
||||
,Vege
|
||||
,TANULO_ID
|
||||
,TANULO_NEV
|
||||
,GROUPPARAMETER
|
||||
,OsztalyId
|
||||
,TanuloOktAzon
|
||||
,FeljegyzoId
|
||||
,FeljegyzoNeve
|
||||
,FeljegyzoOktAzon
|
||||
FROM #TanuloMentesseg
|
||||
ORDER BY TANULO_ID, RENDEZ1, RENDEZ2, RENDEZ3, RENDEZ4, RENDEZ5, Kezdete
|
||||
|
||||
/* Osztály adatok */
|
||||
SELECT
|
||||
o.ID AS OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA AS EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
,ocs.C_KEPZESIFORMA AS KepzesiForma
|
||||
,o.C_OSZTALYFONOKID AS OsztalyfonokId
|
||||
,o.C_TANTERVID AS TantervId
|
||||
,o.C_SZAKMACSOPORT AS SzakmaCsoport
|
||||
,o.C_AGAZAT AS Agazat
|
||||
,o.C_SZAKKEPESITES AS Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES AS Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,ocs.C_ISTECHNIKAI OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI OJIsGyogypedagogiaiLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
FROM T_OSZTALY_OSSZES AS o
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID AND ocs.TOROLT = 'F'
|
||||
WHERE o.ID = @OsztalyId
|
||||
|
||||
DROP TABLE #TanuloMentesseg
|
||||
|
||||
END
|
||||
|
||||
GO
|
|
@ -0,0 +1,183 @@
|
|||
DROP PROCEDURE IF EXISTS dbo.sp_GetTanulokJegyeiReszletezes
|
||||
DROP PROCEDURE IF EXISTS dbo.uspGetTanulokJegyeiReszletezes
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[uspGetTanulokJegyeiReszletezes]
|
||||
@OsztalyId int
|
||||
,@TanevId int
|
||||
,@isNemet int = 0
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
SELECT DISTINCT
|
||||
@osztalyId OsztalyId
|
||||
,ocs.C_NEV OsztalyNev
|
||||
,o.C_OSZTALYNAPLOLEIRASA OsztalyMegjegyzes
|
||||
,o.C_OSZTALYFONOKID PartnerID
|
||||
,ofo.C_NYOMTATASINEV Osztalyfonok
|
||||
,i.C_IGAZGATONEVE IntezmenyVezeto
|
||||
,i.C_NEV IntezmenyNeve
|
||||
,i.C_IRANYITOSZAM IntezmenyIranyitoszam
|
||||
,i.C_VAROS IntezmenyVaros
|
||||
,dbo.fnGetDokumentumIntezmenyCime(@tanevId) IntezmenyCime
|
||||
,i.C_OMKOD IntezmenyOMKod
|
||||
FROM T_OSZTALYCSOPORT_OSSZES ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES o ON ocs.ID = o.ID AND o.torolt='F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES ofo ON ofo.ID = o.C_OSZTALYFONOKID
|
||||
INNER JOIN T_INTEZMENYADATOK_OSSZES i on i.C_INTEZMENYID=ocs.C_INTEZMENYID AND i.C_TANEVID = ocs.C_TANEVID AND i.Torolt = 'F'
|
||||
WHERE ocs.ID = @osztalyId
|
||||
|
||||
SELECT
|
||||
dbo.fnGetDokumentumDatumFormatum(Datum) Datum
|
||||
,CASE
|
||||
WHEN (CAST(ErtekelesOsztalyzatValue AS NVARCHAR(MAX)) IS NOT NULL
|
||||
OR ErtekelesSzovegFormazott IS NOT NULL
|
||||
OR ErtekelesSzazalek IS NOT NULL)
|
||||
THEN TantargyNevZarojellel
|
||||
WHEN (CAST(MagatartasOsztalyzatNev AS NVARCHAR(MAX)) IS NOT NULL
|
||||
OR MagatartasErtek IS NOT NULL
|
||||
OR MagatartasSzovegFormazott IS NOT NULL)
|
||||
THEN 'Magatartás'
|
||||
WHEN (CAST(SzorgalomOsztalyzatNev AS NVARCHAR(MAX)) IS NOT NULL
|
||||
OR SzorgalomErtek IS NOT NULL
|
||||
OR SzorgalomSzovegFormazott IS NOT NULL)
|
||||
THEN 'Szorgalom'
|
||||
END AS Tantargy
|
||||
,ErtekelesTipusDictionary.C_NAME ErtTip
|
||||
,ErtekelesModjaDictionary.C_NAME ErtMod
|
||||
,ErtekelesTable.ErtekelesTema Tema
|
||||
,ErtekeloNeve.C_NYOMTATASINEV ErtekeloNev
|
||||
,COALESCE(
|
||||
CAST(ErtekelesTable.ErtekelesOsztalyzatValue AS NVARCHAR(MAX))
|
||||
,ErtekelesTable.ErtekelesSzoveg
|
||||
,ErtekelesTable.ErtekelesSzazalek
|
||||
,ErtekelesTable.MagatartasOsztalyzatNev
|
||||
,ErtekelesTable.MagatartasErtek
|
||||
,ErtekelesTable.MagatartasSzoveg
|
||||
,ErtekelesTable.SzorgalomOsztalyzatNev
|
||||
,ErtekelesTable.SzorgalomErtek
|
||||
,ErtekelesTable.SzorgalomSzoveg
|
||||
) Osztalyzat
|
||||
,TanuloNeve.C_NYOMTATASINEV TanuloNev
|
||||
,TanuloNeve.C_NYOMTATASINEV + CAST(Tanulok.TanuloId AS NVARCHAR(MAX)) GroupParameter
|
||||
,Tanulok.TanuloId AS TanuloId
|
||||
,TanuloNeve.C_OKTATASIAZONOSITO AS TanuloOktAzon
|
||||
,ErtekelesTable.ErtekeloId AS ErtekeloId
|
||||
,ErtekeloNeve.C_OKTATASIAZONOSITO AS ErtekeloOktAzon
|
||||
,@OsztalyId AS OsztalyId
|
||||
,dbo.fnGetDokumentumDatumFormatum(ErtekelesTable.RogzitesDatum) AS RogzitesDatum
|
||||
,ErtekelesTable.RENDEZ1 AS RENDEZ1
|
||||
,ErtekelesTable.RENDEZ2 AS RENDEZ2
|
||||
,ErtekelesTable.RENDEZ3 AS RENDEZ3
|
||||
,ErtekelesTable.RENDEZ4 AS RENDEZ4
|
||||
,ErtekelesTable.RENDEZ5 AS RENDEZ5
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@TanevId, @OsztalyId, 'F') AS Tanulok
|
||||
LEFT JOIN fnGetDokumentumErtekelesekOsztalyonkent(@TanevId, @OsztalyId, DEFAULT, 0, DEFAULT, DEFAULT, DEFAULT) ErtekelesTable ON ErtekelesTable.TanuloId = Tanulok.TanuloId AND ErtekelesTable.IsMagatartasSzorgalom = 'F'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES ErtekelesTipusDictionary ON ErtekelesTipusDictionary.ID = ErtekelesTable.TipusId AND ErtekelesTipusDictionary.C_TANEVID = @TanevId
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES ErtekelesModjaDictionary ON ErtekelesModjaDictionary.ID = ErtekelesTable.ErtekelesModjaId AND ErtekelesModjaDictionary.C_TANEVID = @TanevId
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES ErtekeloNeve ON ErtekeloNeve.Id = ErtekelesTable.ErtekeloId
|
||||
INNER JOIN T_FELHASZNALO_OSSZES TanuloNeve ON TanuloNeve.Id = Tanulok.TanuloId
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
dbo.fnGetDokumentumDatumFormatum(Datum) Datum
|
||||
,'Magatartás' Tantargy
|
||||
,ErtekelesTipusDictionary.C_NAME ErtTip
|
||||
,ErtekelesModjaDictionary.C_NAME ErtMod
|
||||
,ErtekelesTema Tema
|
||||
,ErtekeloNeve.C_NYOMTATASINEV ErtekeloNev
|
||||
,COALESCE(
|
||||
ErtekelesTable.MagatartasOsztalyzatNev
|
||||
,ErtekelesTable.MagatartasErtek
|
||||
,ErtekelesTable.MagatartasSzoveg
|
||||
) Osztalyzat
|
||||
,TanuloNeve.C_NYOMTATASINEV TanuloNev
|
||||
,TanuloNeve.C_NYOMTATASINEV + CAST(Tanulok.TanuloId AS NVARCHAR(MAX)) GroupParameter
|
||||
,Tanulok.TanuloId AS TanuloId
|
||||
,TanuloNeve.C_OKTATASIAZONOSITO AS TanuloOktAzon
|
||||
,ErtekelesTable.ErtekeloId AS ErtekeloId
|
||||
,ErtekeloNeve.C_OKTATASIAZONOSITO AS ErtekeloOktAzon
|
||||
,@OsztalyId AS OsztalyId
|
||||
,dbo.fnGetDokumentumDatumFormatum(ErtekelesTable.RogzitesDatum) AS RogzitesDatum
|
||||
,0 AS RENDEZ1
|
||||
,'' AS RENDEZ2
|
||||
,0 AS RENDEZ3
|
||||
,0 AS RENDEZ4
|
||||
,'' AS RENDEZ5
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@TanevId, @OsztalyId, 'F') AS Tanulok
|
||||
LEFT JOIN fnGetDokumentumErtekelesekOsztalyonkent(@TanevId, @OsztalyId, DEFAULT, 0, DEFAULT, DEFAULT, DEFAULT) ErtekelesTable ON ErtekelesTable.TanuloId = Tanulok.TanuloId AND ErtekelesTable.IsMagatartasSzorgalom = 'T'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES ErtekelesTipusDictionary ON ErtekelesTipusDictionary.ID = ErtekelesTable.TipusId AND ErtekelesTipusDictionary.C_TANEVID = @TanevId
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES ErtekelesModjaDictionary ON ErtekelesModjaDictionary.ID = ErtekelesTable.ErtekelesModjaId AND ErtekelesModjaDictionary.C_TANEVID = @TanevId
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES ErtekeloNeve ON ErtekeloNeve.Id = ErtekelesTable.ErtekeloId
|
||||
INNER JOIN T_FELHASZNALO_OSSZES TanuloNeve ON TanuloNeve.Id = Tanulok.TanuloId
|
||||
WHERE
|
||||
MagatartasOsztalyzatNev IS NOT NULL OR MagatartasErtek IS NOT NULL OR MagatartasSzoveg IS NOT NULL
|
||||
|
||||
UNION
|
||||
|
||||
SELECT
|
||||
dbo.fnGetDokumentumDatumFormatum(Datum) Datum
|
||||
,'Szorgalom' Tantargy
|
||||
,ErtekelesTipusDictionary.C_NAME ErtTip
|
||||
,ErtekelesModjaDictionary.C_NAME ErtMod
|
||||
,ErtekelesTema Tema
|
||||
,ErtekeloNeve.C_NYOMTATASINEV ErtekeloNev
|
||||
,COALESCE(
|
||||
ErtekelesTable.SzorgalomOsztalyzatNev
|
||||
,ErtekelesTable.SzorgalomErtek
|
||||
,ErtekelesTable.SzorgalomSzoveg
|
||||
) Osztalyzat
|
||||
,TanuloNeve.C_NYOMTATASINEV TanuloNev
|
||||
,TanuloNeve.C_NYOMTATASINEV + CAST(Tanulok.TanuloId AS NVARCHAR(MAX)) GroupParameter
|
||||
,Tanulok.TanuloId AS TanuloId
|
||||
,TanuloNeve.C_OKTATASIAZONOSITO AS TanuloOktAzon
|
||||
,ErtekelesTable.ErtekeloId AS ErtekeloId
|
||||
,ErtekeloNeve.C_OKTATASIAZONOSITO AS ErtekeloOktAzon
|
||||
,@OsztalyId AS OsztalyId
|
||||
,dbo.fnGetDokumentumDatumFormatum(ErtekelesTable.RogzitesDatum) AS RogzitesDatum
|
||||
,1 AS RENDEZ1
|
||||
,'' AS RENDEZ2
|
||||
,0 AS RENDEZ3
|
||||
,0 AS RENDEZ4
|
||||
,'' AS RENDEZ5
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@TanevId, @OsztalyId, 'F') AS Tanulok
|
||||
LEFT JOIN fnGetDokumentumErtekelesekOsztalyonkent(@TanevId, @OsztalyId, DEFAULT, 0, DEFAULT, DEFAULT, DEFAULT) ErtekelesTable ON ErtekelesTable.TanuloId = Tanulok.TanuloId AND ErtekelesTable.IsMagatartasSzorgalom = 'T'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES ErtekelesTipusDictionary ON ErtekelesTipusDictionary.ID = ErtekelesTable.TipusId AND ErtekelesTipusDictionary.C_TANEVID = @TanevId
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES ErtekelesModjaDictionary ON ErtekelesModjaDictionary.ID = ErtekelesTable.ErtekelesModjaId AND ErtekelesModjaDictionary.C_TANEVID = @TanevId
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES ErtekeloNeve ON ErtekeloNeve.Id = ErtekelesTable.ErtekeloId
|
||||
INNER JOIN T_FELHASZNALO_OSSZES TanuloNeve ON TanuloNeve.Id = Tanulok.TanuloId
|
||||
WHERE
|
||||
SzorgalomOsztalyzatNev IS NOT NULL OR SzorgalomErtek IS NOT NULL OR SzorgalomSzoveg IS NOT NULL
|
||||
ORDER BY TanuloNeve.C_NYOMTATASINEV, RENDEZ1, RENDEZ2, RENDEZ3, RENDEZ4, RENDEZ5, Datum
|
||||
|
||||
/* Osztály adatok */
|
||||
SELECT
|
||||
o.ID AS OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA AS EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId
|
||||
,ocs.C_KEPZESIFORMA AS KepzesiForma
|
||||
,o.C_OSZTALYFONOKID AS OsztalyfonokId
|
||||
,o.C_TANTERVID AS TantervId
|
||||
,o.C_SZAKMACSOPORT AS SzakmaCsoport
|
||||
,o.C_AGAZAT AS Agazat
|
||||
,o.C_SZAKKEPESITES AS Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES AS Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,ocs.C_ISTECHNIKAI OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI OJIsGyogypedagogiaiLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
FROM T_OSZTALY_OSSZES AS o
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID AND ocs.TOROLT = 'F'
|
||||
WHERE o.ID = @OsztalyId
|
||||
|
||||
END
|
||||
|
||||
GO
|
|
@ -0,0 +1,158 @@
|
|||
DROP PROCEDURE IF EXISTS dbo.sp_GetTanulokTantargyMulasztasokReszletezese
|
||||
DROP PROCEDURE IF EXISTS dbo.uspGetTanulokTantargyMulasztasokReszletezese
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[uspGetTanulokTantargyMulasztasokReszletezese]
|
||||
@pOsztalyId int
|
||||
,@pTanevId int
|
||||
,@pIskolaErdekuSzamit bit
|
||||
|
||||
AS BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
CREATE TABLE #MulasztasOsztalyonkent(
|
||||
TantargyId int
|
||||
,Tipusa int
|
||||
,IgazolasTipusa int
|
||||
,OsztalyCsoportId int
|
||||
,TanuloId int
|
||||
,TantargyNev nvarchar(1000)
|
||||
,OsztalyCsoportNev nvarchar(510)
|
||||
,Igazolt char(1)
|
||||
,KesesPercben int
|
||||
,Datum date
|
||||
,OraszamWithOrakezdeteVege nvarchar(50)
|
||||
,RENDEZ1 INT
|
||||
,RENDEZ2 NVARCHAR(510)
|
||||
,RENDEZ3 INT
|
||||
,RENDEZ4 INT
|
||||
,RENDEZ5 NVARCHAR(510)
|
||||
)
|
||||
|
||||
INSERT INTO #MulasztasOsztalyonkent(
|
||||
TantargyId
|
||||
,Tipusa
|
||||
,IgazolasTipusa
|
||||
,OsztalyCsoportId
|
||||
,TanuloID
|
||||
,TantargyNev
|
||||
,OsztalyCsoportNev
|
||||
,Igazolt
|
||||
,KesesPercben
|
||||
,Datum
|
||||
,OraszamWithOrakezdeteVege
|
||||
,RENDEZ1
|
||||
,RENDEZ2
|
||||
,RENDEZ3
|
||||
,RENDEZ4
|
||||
,RENDEZ5
|
||||
) SELECT
|
||||
TantargyId
|
||||
,Tipusa
|
||||
,IgazolasTipusa
|
||||
,OsztalyCsoportId
|
||||
,TanuloID
|
||||
,TantargyNev
|
||||
,OsztalyCsoportNev
|
||||
,Igazolt
|
||||
,KesesPercben
|
||||
,Datum
|
||||
,OraszamWithOrakezdeteVege
|
||||
,RENDEZ1
|
||||
,RENDEZ2
|
||||
,RENDEZ3
|
||||
,RENDEZ4
|
||||
,RENDEZ5
|
||||
FROM fnGetDokumentumMulasztasokOsztalyonkentReszletes (@pTanevId, @pOsztalyId, @pIskolaErdekuSzamit, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT)
|
||||
|
||||
/*FEJLEC*/
|
||||
SELECT
|
||||
IntezmenyAdat.C_NEV as IntezmenyNeve
|
||||
,IntezmenyAdat.C_OMKOD as IntezmenyOMKod
|
||||
,IntezmenyAdat.C_IGAZGATONEVE IntezmenyVezeto
|
||||
,dbo.fnGetDokumentumIntezmenyCime(@pTanevId) as IntezmenyCime
|
||||
,IntezmenyAdat.C_VAROS as IntezmenyVaros
|
||||
,(SELECT C_NEV FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalyId) as OsztalyCsoportNev
|
||||
,@pOsztalyId as OsztalyId
|
||||
,ofo.C_NYOMTATASINEV as OsztalyfonokNev
|
||||
FROM T_INTEZMENYADATOK_OSSZES IntezmenyAdat
|
||||
INNER JOIN T_OSZTALY_OSSZES AS o ON o.ID = @pOsztalyId AND o.TOROLT='F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES AS ofo ON ofo.ID = o.C_OSZTALYFONOKID AND ofo.TOROLT='F'
|
||||
WHERE INTEZMENYADAT.C_TANEVID = @pTanevId AND IntezmenyAdat.TOROLT='F'
|
||||
|
||||
/*TANULOK*/
|
||||
SELECT
|
||||
TanuloId
|
||||
,Felhasznalo.C_NYOMTATASINEV as TanuloNev
|
||||
,@pOsztalyId as OsztalyCsoportId
|
||||
,Felhasznalo.C_OKTATASIAZONOSITO as TanuloOktAzon
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@pTanevId, @pOsztalyId, 'T') Tanulok
|
||||
INNER JOIN T_FELHASZNALO_OSSZES Felhasznalo ON Felhasznalo.ID = Tanulok.TanuloId AND Felhasznalo.TOROLT='F'
|
||||
ORDER BY Felhasznalo.C_NYOMTATASINEV
|
||||
|
||||
/*MULASZTOTT TANTARGY*/
|
||||
SELECT DISTINCT
|
||||
TanuloId
|
||||
,OsztalyCsoportId
|
||||
,TantargyId
|
||||
,TantargyNev as TantargyNev
|
||||
,COUNT(1) as COUNT
|
||||
,RENDEZ1
|
||||
,RENDEZ2
|
||||
,RENDEZ3
|
||||
,RENDEZ4
|
||||
,RENDEZ5
|
||||
FROM #MulasztasOsztalyonkent MulasztasokOsztalyonkent
|
||||
INNER JOIN T_TANTARGY_OSSZES Tantargy ON Tantargy.ID = MulasztasokOsztalyonkent.TantargyId AND Tantargy.TOROLT='F'
|
||||
GROUP BY TanuloId, OsztalyCsoportId, TantargyId, TantargyNev, RENDEZ1, RENDEZ2, RENDEZ3, RENDEZ4, RENDEZ5
|
||||
ORDER BY TanuloId, RENDEZ1, RENDEZ2, RENDEZ3, RENDEZ4, RENDEZ5
|
||||
|
||||
SELECT
|
||||
TanuloId
|
||||
,OsztalyCsoportId
|
||||
,OsztalyCsoportNev as OsztalyCsoportNev
|
||||
,CASE
|
||||
WHEN Igazolt = 'T' THEN 'Igen'
|
||||
WHEN Igazolt = 'F' THEN 'Nem'
|
||||
ELSE ''
|
||||
END as Igazolt
|
||||
,MulasztasTipus.C_NAME as Tipusa
|
||||
,IgazolasTipus.C_NAME as IgazolasTipusa
|
||||
,KesesPercben as Keses
|
||||
,Datum as Datum
|
||||
,OraszamWithOrakezdeteVege as Oraszam
|
||||
,TantargyId
|
||||
,Felhasznalo.C_NYOMTATASINEV as OsztalyfonokNev
|
||||
FROM #MulasztasOsztalyonkent MulasztasokOsztalyonkent
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES MulasztasTipus ON MulasztasokOsztalyonkent.Tipusa = MulasztasTipus.ID AND MulasztasTipus.C_TANEVID = @pTanevId AND MulasztasTipus.TOROLT='F'
|
||||
LEFT JOIN T_DICTIONARYITEMBASE_OSSZES IgazolasTipus ON MulasztasokOsztalyonkent.IgazolasTipusa = IgazolasTipus.ID AND IgazolasTipus.C_TANEVID = @pTanevId AND IgazolasTipus.TOROLT='F'
|
||||
LEFT JOIN T_OSZTALY_OSSZES Osztaly ON MulasztasokOsztalyonkent.OsztalyCsoportId = Osztaly.ID AND Osztaly.TOROLT='F'
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES Felhasznalo ON Osztaly.C_OSZTALYFONOKID = Felhasznalo.ID AND Felhasznalo.TOROLT='F'
|
||||
ORDER BY Datum, RENDEZ1, RENDEZ2, RENDEZ3, RENDEZ4, RENDEZ5
|
||||
|
||||
SELECT
|
||||
o.ID as OsztalyId
|
||||
,ocs.C_EVFOLYAMTIPUSA as EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID as FeladatEllatasiHelyId
|
||||
,ocs.C_KEPZESIFORMA as KepzesiForma
|
||||
,o.C_OSZTALYFONOKID as OsztalyfonokId
|
||||
,o.C_TANTERVID as TantervId
|
||||
,o.C_SZAKMACSOPORT as SzakmaCsoport
|
||||
,o.C_AGAZAT as Agazat
|
||||
,o.C_SZAKKEPESITES as Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES as Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES as OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM as CSJVegzosEvfolyamu
|
||||
,ocs.C_ISTECHNIKAI as OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI as OJNemzetisegi
|
||||
,o.C_KETTANNYELVU as OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO as OJNyelviElokeszito
|
||||
,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI as OJIsGyogypedagogiaiLogopediai
|
||||
,o.C_SPORT as OJSportOsztaly
|
||||
,o.C_AJPROGRAM as OJAranyJanosProgram
|
||||
FROM T_OSZTALY_OSSZES as o
|
||||
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = o.ID AND ocs.TOROLT = 'F'
|
||||
WHERE o.ID = @pOsztalyId AND o.TOROLT='F'
|
||||
END
|
||||
GO
|
||||
|
|
@ -0,0 +1,247 @@
|
|||
DROP PROCEDURE IF EXISTS dbo.sp_GetUzenofuzetErtekelolap
|
||||
DROP PROCEDURE IF EXISTS dbo.uspGetUzenofuzetErtekelolap
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE [dbo].[uspGetUzenofuzetErtekelolap]
|
||||
@osztalyId INT
|
||||
,@tanevId INT
|
||||
,@intezmenyId INT
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
CREATE TABLE #szovegesTemp (
|
||||
TanuloId int
|
||||
,TanuloCsoportId int
|
||||
,Honap nvarchar(100)
|
||||
,Tantargy nvarchar(510)
|
||||
,Ertekeles nvarchar(MAX)
|
||||
,Tipus nvarchar(500)
|
||||
,RogzitesDatum datetime
|
||||
,RendezHonap int
|
||||
)
|
||||
|
||||
--Intézmény, tanév
|
||||
SELECT
|
||||
T_INTEZMENYADATOK_OSSZES.C_NEV IntezmenyNeve
|
||||
,T_INTEZMENYADATOK_OSSZES.C_VAROS IntezmenyVaros
|
||||
,dbo.fnGetDokumentumIntezmenyCime(@tanevId) IntezmenyCime
|
||||
,T_INTEZMENYADATOK_OSSZES.C_TELEFONSZAM TELEFON
|
||||
,T_INTEZMENYADATOK_OSSZES.C_EMAILCIM EMAILCIM
|
||||
,T_INTEZMENYADATOK_OSSZES.C_OMKOD IntezmenyOMKod
|
||||
,T_INTEZMENYADATOK_OSSZES.C_IGAZGATONEVE Intezmenyvezeto
|
||||
,(SELECT C_OSZTALYFONOKID FROM T_OSZTALY_OSSZES WHERE T_OSZTALY_OSSZES.ID = @osztalyId AND T_OSZTALY_OSSZES.C_ALTANEVID = @tanevId AND T_OSZTALY_OSSZES.TOROLT = 'F') PartnerID
|
||||
,T_TANEV_OSSZES.C_NEV TANEV
|
||||
,@osztalyId AS OsztalyId
|
||||
FROM T_INTEZMENYADATOK_OSSZES
|
||||
INNER JOIN T_TANEV_OSSZES on T_TANEV_OSSZES.ID = T_INTEZMENYADATOK_OSSZES.C_TANEVID AND T_TANEV_OSSZES.C_INTEZMENYID = T_INTEZMENYADATOK_OSSZES.C_INTEZMENYID AND T_TANEV_OSSZES.TOROLT = 'F'
|
||||
WHERE T_INTEZMENYADATOK_OSSZES.TOROLT = 'F'
|
||||
AND T_TANEV_OSSZES.ID = @tanevId
|
||||
|
||||
--Osztály, évfolyam
|
||||
SELECT
|
||||
ocs.C_NEV
|
||||
,ocs.C_EVFOLYAMTIPUSA
|
||||
,f.C_NYOMTATASINEV Osztalyfonok
|
||||
,ocs.ID AS OsztalyId
|
||||
,f.ID AS OsztalyfonokId
|
||||
,ocs.C_EVFOLYAMTIPUSA EvfolyamTipusa
|
||||
,ocs.C_FELADATELLATASIHELYID FeladatEllatasiHelyId
|
||||
,o.C_TANTERVID TantervId
|
||||
,ocs.C_KEPZESIFORMA KepzesiForma
|
||||
,o.C_AGAZAT Agazat
|
||||
,o.C_SZAKMACSOPORT SzakmaCsoport
|
||||
,o.C_SZAKKEPESITES Szakkepesites
|
||||
,o.C_RESZSZAKKEPESITES Reszszakkepesites
|
||||
,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves
|
||||
,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu
|
||||
,ocs.C_ISTECHNIKAI OJTechnikaiOsztaly
|
||||
,o.C_NEMZETISEGI OJNemzetisegi
|
||||
,o.C_KETTANNYELVU OJKettannyelvu
|
||||
,o.C_NYELVIELOKESZITO OJNyelviElokeszito
|
||||
,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI OJIsGyogypedagogiaiLogopediai
|
||||
,o.C_SPORT OJSportOsztaly
|
||||
,o.C_AJPROGRAM OJAranyJanosProgram
|
||||
FROM T_OSZTALYCSOPORT_OSSZES AS ocs
|
||||
INNER JOIN T_OSZTALY_OSSZES AS o ON ocs.id = o.ID
|
||||
LEFT JOIN T_FELHASZNALO_OSSZES AS f ON f.id = o.c_osztalyfonokid
|
||||
WHERE ocs.TOROLT='F'
|
||||
AND ocs.ID = @osztalyId
|
||||
AND ocs.C_TANEVID = @tanevId
|
||||
|
||||
--Tanuló adatai
|
||||
SELECT
|
||||
TanuloId Id
|
||||
,TanuloCsoportId TanuloCsoportId
|
||||
,OsztalyTanuloi.BelepesDatum BelepesDatum
|
||||
,OsztalyTanuloi.KilepesDatum KilepesDatum
|
||||
INTO #studentsWithTanuloCsoport
|
||||
FROM fnGetDokumentumOsztalyokCsoportokTanuloi(@tanevId, @osztalyId, 'T') OsztalyTanuloi
|
||||
|
||||
SELECT
|
||||
T_FELHASZNALO_OSSZES.ID TanuloId
|
||||
,TanuloCsoportId
|
||||
,T_FELHASZNALO_OSSZES.C_NYOMTATASINEV TANULONEV
|
||||
,T_FELHASZNALO_OSSZES.C_OKTATASIAZONOSITO OKTATASIAZONOSITO
|
||||
,@osztalyId AS OsztalyId
|
||||
FROM T_FELHASZNALO_OSSZES
|
||||
INNER JOIN #studentsWithTanuloCsoport Tanulok ON Tanulok.Id = T_FELHASZNALO_OSSZES.Id
|
||||
ORDER BY T_FELHASZNALO_OSSZES.C_NYOMTATASINEV
|
||||
|
||||
SELECT
|
||||
Datum
|
||||
,RogzitesDatum
|
||||
,TipusId
|
||||
,ErtekelesSzoveg
|
||||
,ErtekelesSzovegFormazott
|
||||
,ErtekelesSzovegRovidNev
|
||||
,ErtekelesOsztalyzatId
|
||||
,ErtekelesOsztalyzatValue
|
||||
,ErtekelesOsztalyzatNev
|
||||
,ErtekelesSzazalek
|
||||
,MagatartasOsztalyzatId
|
||||
,MagatartasOsztalyzatNev
|
||||
,MagatartasSzoveg
|
||||
,MagatartasSzovegRovidNev
|
||||
,MagatartasErtekId
|
||||
,MagatartasErtek
|
||||
,SzorgalomOsztalyzatId
|
||||
,SzorgalomOsztalyzatNev
|
||||
,SzorgalomSzoveg
|
||||
,SzorgalomSzovegRovidNev
|
||||
,SzorgalomErtekId
|
||||
,SzorgalomErtek
|
||||
,TanuloId
|
||||
,TanuloCsoportId
|
||||
,OsztalyCsoportId
|
||||
,TantargyId
|
||||
,TantargyNevZarojellel
|
||||
,TantargyNev
|
||||
,TantargyNevNyomtatvanyban
|
||||
,TargyKategoriaId
|
||||
,FotargyE
|
||||
,FotargyId
|
||||
,Altantargy
|
||||
,ErtekelesTema
|
||||
,Jeloles
|
||||
,JelolesAndErtekelesTema
|
||||
,isMagatartasSzorgalom
|
||||
,RENDEZ1
|
||||
,RENDEZ2
|
||||
,RENDEZ3
|
||||
,RENDEZ4
|
||||
,RENDEZ5
|
||||
INTO #ErtekelesekTemp
|
||||
FROM fnGetDokumentumErtekelesekOsztalyonkent (@tanevId, @osztalyId, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT)
|
||||
|
||||
CREATE TABLE #Tantargyak(
|
||||
ID INT
|
||||
,C_FOTARGYID INT
|
||||
,C_NEV NVARCHAR(255) COLLATE DATABASE_DEFAULT
|
||||
,C_NEVNYOMTATVANYBAN NVARCHAR(255) COLLATE DATABASE_DEFAULT
|
||||
,C_TARGYKATEGORIA INT
|
||||
,c_tanuloid int
|
||||
,c_tanulocsoportid int
|
||||
,RENDEZ1 int
|
||||
,RENDEZ2 nvarchar(255) COLLATE DATABASE_DEFAULT
|
||||
,RENDEZ3 int
|
||||
,RENDEZ4 int
|
||||
,RENDEZ5 nvarchar(255) COLLATE DATABASE_DEFAULT
|
||||
,C_INTEZMENYID INT
|
||||
,C_TANEVID INT
|
||||
);
|
||||
EXEC uspGetDokumentumErtekelesekIdoszakonkent
|
||||
@tanevId = @tanevId
|
||||
,@osztalyCsoportId = @osztalyId
|
||||
,@ertekelesTipusa = NULL
|
||||
,@csakTanorai = 1
|
||||
,@csakKivalasztottOsztalyCsoport = 0
|
||||
,@atsoroltTanuloErtekelesek = 0
|
||||
,@fuggolegesTantargyak = 0
|
||||
,@isMegjegyzesMegjelenjen = 0
|
||||
,@intezmenyId = @intezmenyId
|
||||
|
||||
/*Szöveges minősítések*/
|
||||
INSERT INTO #szovegesTemp
|
||||
SELECT
|
||||
a.tanuloId
|
||||
,a.TanuloCsoportId
|
||||
,a.Honap
|
||||
,a.Tantargy
|
||||
,a.Ertekeles
|
||||
,a.Tipus
|
||||
,a.RogzitesDatum
|
||||
,a.RendezHonap
|
||||
FROM (
|
||||
SELECT
|
||||
s.Id tanuloId
|
||||
,s.TanuloCsoportId
|
||||
,szoveges.Honap
|
||||
,szoveges.Tantargy
|
||||
,szoveges.Ertekeles
|
||||
,szoveges.Tipus
|
||||
,szoveges.RendezHonap
|
||||
,szoveges.RogzitesDatum
|
||||
FROM #studentsWithTanuloCsoport s
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
TanuloId tanuloId
|
||||
,TanuloCsoportId
|
||||
,'[' + CONVERT(nvarchar (max), DATEPART(MONTH, Datum)) + '. hónap]' AS Honap
|
||||
,IIF(TantargyNev <> TantargyNevNyomtatvanyban AND TantargyNevNyomtatvanyban IS NOT NULL, TantargyNevNyomtatvanyban + ' (' + TantargyNev + ')', TantargyNev) AS Tantargy
|
||||
,IIF(Jeloles IS NOT NULL AND TipusId = 1518, 'sz' + Jeloles + ' ', '') + ErtekelesSzovegFormazott + ISNULL(' *' + ErtekelesTema, '') Ertekeles
|
||||
,ErtekelesTipusDictionary.C_NAME AS Tipus
|
||||
,CASE
|
||||
WHEN DATEPART(MONTH, Datum) = 1 THEN 5
|
||||
WHEN DATEPART(MONTH, Datum) = 2 THEN 6
|
||||
WHEN DATEPART(MONTH, Datum) = 3 THEN 7
|
||||
WHEN DATEPART(MONTH, Datum) = 4 THEN 8
|
||||
WHEN DATEPART(MONTH, Datum) = 5 THEN 9
|
||||
WHEN DATEPART(MONTH, Datum) = 6 THEN 10
|
||||
WHEN DATEPART(MONTH, Datum) = 7 THEN 11
|
||||
WHEN DATEPART(MONTH, Datum) = 8 THEN 12
|
||||
WHEN DATEPART(MONTH, Datum) = 9 THEN 1
|
||||
WHEN DATEPART(MONTH, Datum) = 10 THEN 2
|
||||
WHEN DATEPART(MONTH, Datum) = 11 THEN 3
|
||||
WHEN DATEPART(MONTH, Datum) = 12 THEN 4
|
||||
END AS RendezHonap
|
||||
,RogzitesDatum
|
||||
FROM #ErtekelesekTemp ErtekelesTemp
|
||||
INNER JOIN T_DICTIONARYITEMBASE_OSSZES ErtekelesTipusDictionary ON ErtekelesTipusDictionary.ID = ErtekelesTemp.TipusId
|
||||
AND ErtekelesTipusDictionary.C_TANEVID = @tanevId
|
||||
WHERE ErtekelesSzoveg IS NOT NULL
|
||||
) szoveges ON szoveges.TANULOID = s.Id
|
||||
AND s.TanuloCsoportId = szoveges.TanuloCsoportId
|
||||
) a
|
||||
|
||||
SELECT DISTINCT
|
||||
kulso.TanuloId
|
||||
,kulso.TanuloCsoportId
|
||||
,kulso.Honap
|
||||
,kulso.Tantargy
|
||||
,STUFF(((
|
||||
SELECT
|
||||
'<br>|' + belso.Ertekeles
|
||||
FROM #szovegesTemp belso
|
||||
WHERE kulso.TanuloId = belso.TanuloId
|
||||
AND kulso.TanuloCsoportId = belso.TanuloCsoportId
|
||||
AND kulso.Honap = belso.Honap
|
||||
AND kulso.Tantargy = belso.Tantargy
|
||||
AND kulso.Tipus = belso.Tipus
|
||||
ORDER BY
|
||||
belso.RendezHonap ASC
|
||||
,belso.Tantargy ASC
|
||||
,belso.RogzitesDatum ASC
|
||||
FOR XML PATH(''), TYPE).value('.', 'nvarchar(max)'))
|
||||
,1
|
||||
,5
|
||||
,'') AS Ertekeles
|
||||
,kulso.Tipus
|
||||
FROM #szovegesTemp kulso
|
||||
|
||||
DROP TABLE #studentsWithTanuloCsoport
|
||||
DROP TABLE #Tantargyak
|
||||
END
|
||||
|
||||
GO
|
|
@ -0,0 +1,258 @@
|
|||
DROP PROCEDURE IF EXISTS uspInsertEgyediNap
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspInsertEgyediNap
|
||||
@pIntezmenyId INT
|
||||
,@pTanevId INT
|
||||
,@pTanevRendjeId INT
|
||||
AS BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
DECLARE
|
||||
@elteroNapDatuma DATETIME
|
||||
,@ujDatum DATETIME
|
||||
,@csengetesiRendId INT
|
||||
,@isOsszesCsoportraVonatkozik CHAR(1)
|
||||
,@creator INT
|
||||
,@hetnapja INT
|
||||
,@hetirend INT
|
||||
|
||||
SELECT
|
||||
@elteroNapDatuma = C_ELTERONAPDATUMA
|
||||
,@ujDatum = C_DATUM
|
||||
,@csengetesiRendId = C_CSENGETESIRENDID
|
||||
,@isOsszesCsoportraVonatkozik = C_OSSZESCSOPORTRAVONATKOZIK
|
||||
,@creator = CREATOR
|
||||
,@hetnapja = C_HETNAPJA
|
||||
,@hetirend = C_HETIREND
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
WHERE ID = @pTanevRendjeId
|
||||
|
||||
IF @isOsszesCsoportraVonatkozik = 'T' BEGIN
|
||||
INSERT INTO T_ORARENDIORA (
|
||||
C_DIFFERENCIALT
|
||||
,C_DRAMA
|
||||
,C_HETIREND
|
||||
,C_HETNAPJA
|
||||
,C_IKTTANORA
|
||||
,C_IPRTANORA
|
||||
,C_KOOPERATIV
|
||||
,C_MERES
|
||||
,C_MINDENNAPOSTESTNEVELES
|
||||
,C_NEMSZAKRENDSZERUORA
|
||||
,C_NEMZETISEGIORA
|
||||
,C_ISFELNOTTOKTATASISZERZODES
|
||||
,C_ORASZAM
|
||||
,C_SORSZAMOZANDO
|
||||
,C_TAMOPORA
|
||||
,C_TULORA
|
||||
,C_BONTOTT
|
||||
,C_ORAERVENYESSEGKEZDETE
|
||||
,C_ORAERVENYESSEGVEGE
|
||||
,C_PARHUZAMOSORA
|
||||
,C_TIOP12
|
||||
,C_ORAKEZDETE
|
||||
,C_ORAVEGE
|
||||
,C_IMPORTALT
|
||||
,C_CSENGETESIRENDID
|
||||
,C_CSENGETESIRENDORAID
|
||||
,C_ORARENDIORAGROUPID
|
||||
,C_EFOP32317
|
||||
,C_MULTIKULTURALISORA
|
||||
,C_KOMPLEXORA
|
||||
,C_KIPORA
|
||||
,C_VEKOP73317
|
||||
,C_KAPORA
|
||||
,C_TEREMID
|
||||
,C_FOGLALKOZASID
|
||||
,C_TANTARGYID
|
||||
,C_OSZTALYCSOPORTID
|
||||
,C_TANARID
|
||||
,C_ORATULAJDONOSID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,TOROLT
|
||||
,SERIAL
|
||||
,LASTCHANGED
|
||||
,CREATED
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
,ELOZOTANEVIREKORDID
|
||||
,NNID
|
||||
,C_EGYEDINAP
|
||||
) SELECT
|
||||
oo.C_DIFFERENCIALT AS C_DIFFERENCIALT -- C_DIFFERENCIALT - char(1)
|
||||
,oo.C_DRAMA AS C_DRAMA -- C_DRAMA - char(1)
|
||||
,1554 AS C_HETIREND -- C_HETIREND - int
|
||||
,oo.C_HETNAPJA AS C_HETNAPJA -- C_HETNAPJA - int
|
||||
,oo.C_IKTTANORA AS C_IKTTANORA -- C_IKTTANORA - char(1)
|
||||
,oo.C_IPRTANORA AS C_IPRTANORA -- C_IPRTANORA - char(1)
|
||||
,oo.C_KOOPERATIV AS C_KOOPERATIV -- C_KOOPERATIV - char(1)
|
||||
,oo.C_MERES AS C_MERES -- C_MERES - char(1)
|
||||
,oo.C_MINDENNAPOSTESTNEVELES AS C_MINDENNAPOSTESTNEVELES -- C_MINDENNAPOSTESTNEVELES - char(1)
|
||||
,oo.C_NEMSZAKRENDSZERUORA AS C_NEMSZAKRENDSZERUORA -- C_NEMSZAKRENDSZERUORA - char(1)
|
||||
,oo.C_NEMZETISEGIORA AS C_NEMZETISEGIORA -- C_NEMZETISEGIORA - char(1)
|
||||
,oo.C_ISFELNOTTOKTATASISZERZODES AS C_ISFELNOTTOKTATASISZERZODES -- C_ISFELNOTTOKTATASISZERZODES - char(1)
|
||||
,oo.C_ORASZAM AS C_ORASZAM -- C_ORASZAM - int
|
||||
,oo.C_SORSZAMOZANDO AS C_SORSZAMOZANDO -- C_SORSZAMOZANDO - char(1)
|
||||
,oo.C_TAMOPORA AS C_TAMOPORA -- C_TAMOPORA - char(1)
|
||||
,oo.C_TULORA AS C_TULORA -- C_TULORA - char(1)
|
||||
,oo.C_BONTOTT AS C_BONTOTT -- C_BONTOTT - char(1)
|
||||
,@ujDatum AS C_ORAERVENYESSEGKEZDETE -- C_ORAERVENYESSEGKEZDETE - datetime
|
||||
,@ujDatum AS C_ORAERVENYESSEGVEGE -- C_ORAERVENYESSEGVEGE - datetime
|
||||
,oo.C_PARHUZAMOSORA AS C_PARHUZAMOSORA -- C_PARHUZAMOSORA - char(1)
|
||||
,oo.C_TIOP12 AS C_TIOP12 -- C_TIOP12 - char(1)
|
||||
,ISNULL(csro.C_KEZDETE, oo.C_ORAKEZDETE) AS C_ORAKEZDETE -- C_ORAKEZDETE - datetime
|
||||
,ISNULL(csro.C_VEGE, oo.C_ORAVEGE) AS C_ORAVEGE -- C_ORAVEGE - datetime
|
||||
,'F' AS C_IMPORTALT -- C_IMPORTALT - char(1)
|
||||
,ISNULL(csro.C_CSENGETESIRENDID, oo.C_CSENGETESIRENDID) AS C_CSENGETESIRENDID -- C_CSENGETESIRENDID - int
|
||||
,ISNULL(csro.ID, oo.C_CSENGETESIRENDORAID) AS C_CSENGETESIRENDORAID -- C_CSENGETESIRENDORAID - int
|
||||
,oo.C_ORARENDIORAGROUPID AS C_ORARENDIORAGROUPID -- C_ORARENDIORAGROUPID - int
|
||||
,oo.C_EFOP32317 AS C_EFOP32317 -- C_EFOP32317 - char(1)
|
||||
,oo.C_MULTIKULTURALISORA AS C_MULTIKULTURALISORA -- C_MULTIKULTURALISORA - char(1)
|
||||
,oo.C_KOMPLEXORA AS C_KOMPLEXORA -- C_KOMPLEXORA - char(1)
|
||||
,oo.C_KIPORA AS C_KIPORA -- C_KIPORA - char(1)
|
||||
,oo.C_VEKOP73317 AS C_VEKOP73317 -- C_VEKOP73317 - char(1)
|
||||
,oo.C_KAPORA AS C_KAPORA -- C_KAPORA - char(1)
|
||||
,oo.C_TEREMID AS C_TEREMID -- C_TEREMID - int
|
||||
,oo.C_FOGLALKOZASID AS C_FOGLALKOZASID -- C_FOGLALKOZASID - int
|
||||
,oo.C_TANTARGYID AS C_TANTARGYID -- C_TANTARGYID - int
|
||||
,oo.C_OSZTALYCSOPORTID AS C_OSZTALYCSOPORTID -- C_OSZTALYCSOPORTID - int
|
||||
,oo.C_TANARID AS C_TANARID -- C_TANARID - int
|
||||
,oo.C_ORATULAJDONOSID AS C_ORATULAJDONOSID -- C_ORATULAJDONOSID - int
|
||||
,oo.C_INTEZMENYID AS C_INTEZMENYID -- C_INTEZMENYID - int
|
||||
,oo.C_TANEVID AS C_TANEVID -- C_TANEVID - int
|
||||
,'F' AS TOROLT -- TOROLT - char(1)
|
||||
,0 AS SERIAL -- SERIAL - int
|
||||
,GETDATE() AS LASTCHANGED -- LASTCHANGED - datetime
|
||||
,GETDATE() AS CREATED -- CREATED - datetime
|
||||
,@creator AS MODIFIER -- MODIFIER - int
|
||||
,@creator AS CREATOR -- CREATOR - int
|
||||
,NULL AS ELOZOTANEVIREKORDID -- ELOZOTANEVIREKORDID - int
|
||||
,NULL AS NNID -- NNID - int
|
||||
,'T' AS C_EGYEDINAP -- C_EGYEDINAP - char(1)
|
||||
FROM T_ORARENDIORA_OSSZES oo
|
||||
LEFT JOIN T_CSENGETESIRENDORA_OSSZES csro ON csro.C_ORASZAM = oo.C_ORASZAM AND csro.C_CSENGETESIRENDID = @csengetesiRendId AND csro.TOROLT = 'F'
|
||||
WHERE ((C_ORAERVENYESSEGKEZDETE <= @elteroNapDatuma AND (C_ORAERVENYESSEGVEGE IS NULL OR C_ORAERVENYESSEGVEGE > @elteroNapDatuma)) OR (C_ORAERVENYESSEGKEZDETE = @elteroNapDatuma AND C_ORAERVENYESSEGVEGE = @elteroNapDatuma))
|
||||
AND oo.C_TANEVID = @pTanevId
|
||||
AND oo.C_INTEZMENYID = @pIntezmenyId
|
||||
AND oo.TOROLT = 'F'
|
||||
AND oo.C_EGYEDINAP = 'F'
|
||||
AND oo.C_HETNAPJA = @hetnapja AND (oo.C_HETIREND = 1554 OR oo.C_HETIREND = @hetirend)
|
||||
END
|
||||
ELSE BEGIN
|
||||
INSERT INTO T_ORARENDIORA (
|
||||
C_DIFFERENCIALT
|
||||
,C_DRAMA
|
||||
,C_HETIREND
|
||||
,C_HETNAPJA
|
||||
,C_IKTTANORA
|
||||
,C_IPRTANORA
|
||||
,C_KOOPERATIV
|
||||
,C_MERES
|
||||
,C_MINDENNAPOSTESTNEVELES
|
||||
,C_NEMSZAKRENDSZERUORA
|
||||
,C_NEMZETISEGIORA
|
||||
,C_ISFELNOTTOKTATASISZERZODES
|
||||
,C_ORASZAM
|
||||
,C_SORSZAMOZANDO
|
||||
,C_TAMOPORA
|
||||
,C_TULORA
|
||||
,C_BONTOTT
|
||||
,C_ORAERVENYESSEGKEZDETE
|
||||
,C_ORAERVENYESSEGVEGE
|
||||
,C_PARHUZAMOSORA
|
||||
,C_TIOP12
|
||||
,C_ORAKEZDETE
|
||||
,C_ORAVEGE
|
||||
,C_IMPORTALT
|
||||
,C_CSENGETESIRENDID
|
||||
,C_CSENGETESIRENDORAID
|
||||
,C_ORARENDIORAGROUPID
|
||||
,C_EFOP32317
|
||||
,C_MULTIKULTURALISORA
|
||||
,C_KOMPLEXORA
|
||||
,C_KIPORA
|
||||
,C_VEKOP73317
|
||||
,C_KAPORA
|
||||
,C_TEREMID
|
||||
,C_FOGLALKOZASID
|
||||
,C_TANTARGYID
|
||||
,C_OSZTALYCSOPORTID
|
||||
,C_TANARID
|
||||
,C_ORATULAJDONOSID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,TOROLT
|
||||
,SERIAL
|
||||
,LASTCHANGED
|
||||
,CREATED
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
,ELOZOTANEVIREKORDID
|
||||
,NNID
|
||||
,C_EGYEDINAP
|
||||
) SELECT
|
||||
oo.C_DIFFERENCIALT AS C_DIFFERENCIALT -- C_DIFFERENCIALT - char(1)
|
||||
,oo.C_DRAMA AS C_DRAMA -- C_DRAMA - char(1)
|
||||
,1554 AS C_HETIREND -- C_HETIREND - int
|
||||
,oo.C_HETNAPJA AS C_HETNAPJA -- C_HETNAPJA - int
|
||||
,oo.C_IKTTANORA AS C_IKTTANORA -- C_IKTTANORA - char(1)
|
||||
,oo.C_IPRTANORA AS C_IPRTANORA -- C_IPRTANORA - char(1)
|
||||
,oo.C_KOOPERATIV AS C_KOOPERATIV -- C_KOOPERATIV - char(1)
|
||||
,oo.C_MERES AS C_MERES -- C_MERES - char(1)
|
||||
,oo.C_MINDENNAPOSTESTNEVELES AS C_MINDENNAPOSTESTNEVELES -- C_MINDENNAPOSTESTNEVELES - char(1)
|
||||
,oo.C_NEMSZAKRENDSZERUORA AS C_NEMSZAKRENDSZERUORA -- C_NEMSZAKRENDSZERUORA - char(1)
|
||||
,oo.C_NEMZETISEGIORA AS C_NEMZETISEGIORA -- C_NEMZETISEGIORA - char(1)
|
||||
,oo.C_ISFELNOTTOKTATASISZERZODES AS C_ISFELNOTTOKTATASISZERZODES -- C_ISFELNOTTOKTATASISZERZODES - char(1)
|
||||
,oo.C_ORASZAM AS C_ORASZAM -- C_ORASZAM - int
|
||||
,oo.C_SORSZAMOZANDO AS C_SORSZAMOZANDO -- C_SORSZAMOZANDO - char(1)
|
||||
,oo.C_TAMOPORA AS C_TAMOPORA -- C_TAMOPORA - char(1)
|
||||
,oo.C_TULORA AS C_TULORA -- C_TULORA - char(1)
|
||||
,oo.C_BONTOTT AS C_BONTOTT -- C_BONTOTT - char(1)
|
||||
,@ujDatum AS C_ORAERVENYESSEGKEZDETE -- C_ORAERVENYESSEGKEZDETE - datetime
|
||||
,@ujDatum AS C_ORAERVENYESSEGVEGE -- C_ORAERVENYESSEGVEGE - datetime
|
||||
,oo.C_PARHUZAMOSORA AS C_PARHUZAMOSORA -- C_PARHUZAMOSORA - char(1)
|
||||
,oo.C_TIOP12 AS C_TIOP12 -- C_TIOP12 - char(1)
|
||||
,ISNULL(csro.C_KEZDETE, oo.C_ORAKEZDETE) AS C_ORAKEZDETE -- C_ORAKEZDETE - datetime
|
||||
,ISNULL(csro.C_VEGE, oo.C_ORAVEGE) AS C_ORAVEGE -- C_ORAVEGE - datetime
|
||||
,'F' AS C_IMPORTALT -- C_IMPORTALT - char(1)
|
||||
,ISNULL(csro.C_CSENGETESIRENDID, oo.C_CSENGETESIRENDID) AS C_CSENGETESIRENDID -- C_CSENGETESIRENDID - int
|
||||
,ISNULL(csro.ID, oo.C_CSENGETESIRENDORAID) AS C_CSENGETESIRENDORAID -- C_CSENGETESIRENDORAID - int
|
||||
,oo.C_ORARENDIORAGROUPID AS C_ORARENDIORAGROUPID -- C_ORARENDIORAGROUPID - int
|
||||
,oo.C_EFOP32317 AS C_EFOP32317 -- C_EFOP32317 - char(1)
|
||||
,oo.C_MULTIKULTURALISORA AS C_MULTIKULTURALISORA -- C_MULTIKULTURALISORA - char(1)
|
||||
,oo.C_KOMPLEXORA AS C_KOMPLEXORA -- C_KOMPLEXORA - char(1)
|
||||
,oo.C_KIPORA AS C_KIPORA -- C_KIPORA - char(1)
|
||||
,oo.C_VEKOP73317 AS C_VEKOP73317 -- C_VEKOP73317 - char(1)
|
||||
,oo.C_KAPORA AS C_KAPORA -- C_KAPORA - char(1)
|
||||
,oo.C_TEREMID AS C_TEREMID -- C_TEREMID - int
|
||||
,oo.C_FOGLALKOZASID AS C_FOGLALKOZASID -- C_FOGLALKOZASID - int
|
||||
,oo.C_TANTARGYID AS C_TANTARGYID -- C_TANTARGYID - int
|
||||
,oo.C_OSZTALYCSOPORTID AS C_OSZTALYCSOPORTID -- C_OSZTALYCSOPORTID - int
|
||||
,oo.C_TANARID AS C_TANARID -- C_TANARID - int
|
||||
,oo.C_ORATULAJDONOSID AS C_ORATULAJDONOSID -- C_ORATULAJDONOSID - int
|
||||
,oo.C_INTEZMENYID AS C_INTEZMENYID -- C_INTEZMENYID - int
|
||||
,oo.C_TANEVID AS C_TANEVID -- C_TANEVID - int
|
||||
,'F' AS TOROLT -- TOROLT - char(1)
|
||||
,0 AS SERIAL -- SERIAL - int
|
||||
,GETDATE() AS LASTCHANGED -- LASTCHANGED - datetime
|
||||
,GETDATE() AS CREATED -- CREATED - datetime
|
||||
,@creator AS MODIFIER -- MODIFIER - int
|
||||
,@creator AS CREATOR -- CREATOR - int
|
||||
,NULL AS ELOZOTANEVIREKORDID -- ELOZOTANEVIREKORDID - int
|
||||
,NULL AS NNID -- NNID - int
|
||||
,'T' AS C_EGYEDINAP -- C_EGYEDINAP - char(1)
|
||||
FROM T_ORARENDIORA_OSSZES oo
|
||||
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON oo.C_OSZTALYCSOPORTID = ocstr.C_OSZTALYCSOPORTID AND ocstr.C_TANEVRENDJEID = @pTanevRendjeId
|
||||
LEFT JOIN T_CSENGETESIRENDORA_OSSZES csro ON csro.C_ORASZAM = oo.C_ORASZAM AND csro.C_CSENGETESIRENDID = @csengetesiRendId AND csro.TOROLT = 'F'
|
||||
WHERE ((C_ORAERVENYESSEGKEZDETE <= @elteroNapDatuma AND (C_ORAERVENYESSEGVEGE IS NULL OR C_ORAERVENYESSEGVEGE > @elteroNapDatuma)) OR (C_ORAERVENYESSEGKEZDETE = @elteroNapDatuma AND C_ORAERVENYESSEGVEGE = @elteroNapDatuma))
|
||||
AND oo.C_TANEVID = @pTanevId
|
||||
AND oo.C_INTEZMENYID = @pIntezmenyId
|
||||
AND oo.TOROLT = 'F'
|
||||
AND oo.C_EGYEDINAP = 'F'
|
||||
AND oo.C_HETNAPJA = @hetnapja AND (oo.C_HETIREND = 1554 OR oo.C_HETIREND = @hetirend)
|
||||
END
|
||||
|
||||
|
||||
END
|
|
@ -0,0 +1,188 @@
|
|||
DROP PROCEDURE IF EXISTS uspInsertEgyediNapOsztalycsoport
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspInsertEgyediNapOsztalycsoport
|
||||
@pIntezmenyId int
|
||||
,@pTanevId int
|
||||
,@pTanevRendjeId INT
|
||||
,@pOsztalycsoportId INT
|
||||
,@pIsKapcsolodoCsoportokIs CHAR(1)
|
||||
AS BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
DECLARE
|
||||
@elteroNapDatuma datetime
|
||||
,@ujDatum datetime
|
||||
,@csengetesiRendId int
|
||||
,@creator INT
|
||||
,@hetnapja INT
|
||||
,@hetirend INT
|
||||
|
||||
SELECT
|
||||
@elteroNapDatuma = C_ELTERONAPDATUMA
|
||||
,@ujDatum = C_DATUM
|
||||
,@csengetesiRendId = C_CSENGETESIRENDID
|
||||
,@creator = CREATOR
|
||||
,@hetnapja = C_HETNAPJA
|
||||
,@hetirend = C_HETIREND
|
||||
FROM T_TANEVRENDJE_OSSZES
|
||||
WHERE ID = @pTanevRendjeId
|
||||
|
||||
|
||||
DECLARE @sql NVARCHAR(MAX) = '';
|
||||
|
||||
SET @sql += N'
|
||||
|
||||
INSERT INTO T_ORARENDIORA (
|
||||
C_DIFFERENCIALT
|
||||
,C_DRAMA
|
||||
,C_HETIREND
|
||||
,C_HETNAPJA
|
||||
,C_IKTTANORA
|
||||
,C_IPRTANORA
|
||||
,C_KOOPERATIV
|
||||
,C_MERES
|
||||
,C_MINDENNAPOSTESTNEVELES
|
||||
,C_NEMSZAKRENDSZERUORA
|
||||
,C_NEMZETISEGIORA
|
||||
,C_ISFELNOTTOKTATASISZERZODES
|
||||
,C_ORASZAM
|
||||
,C_SORSZAMOZANDO
|
||||
,C_TAMOPORA
|
||||
,C_TULORA
|
||||
,C_BONTOTT
|
||||
,C_ORAERVENYESSEGKEZDETE
|
||||
,C_ORAERVENYESSEGVEGE
|
||||
,C_PARHUZAMOSORA
|
||||
,C_TIOP12
|
||||
,C_ORAKEZDETE
|
||||
,C_ORAVEGE
|
||||
,C_IMPORTALT
|
||||
,C_CSENGETESIRENDID
|
||||
,C_CSENGETESIRENDORAID
|
||||
,C_ORARENDIORAGROUPID
|
||||
,C_EFOP32317
|
||||
,C_MULTIKULTURALISORA
|
||||
,C_KOMPLEXORA
|
||||
,C_KIPORA
|
||||
,C_VEKOP73317
|
||||
,C_KAPORA
|
||||
,C_TEREMID
|
||||
,C_FOGLALKOZASID
|
||||
,C_TANTARGYID
|
||||
,C_OSZTALYCSOPORTID
|
||||
,C_TANARID
|
||||
,C_ORATULAJDONOSID
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,TOROLT
|
||||
,SERIAL
|
||||
,LASTCHANGED
|
||||
,CREATED
|
||||
,MODIFIER
|
||||
,CREATOR
|
||||
,ELOZOTANEVIREKORDID
|
||||
,NNID
|
||||
,C_EGYEDINAP
|
||||
) SELECT
|
||||
oo.C_DIFFERENCIALT AS C_DIFFERENCIALT -- C_DIFFERENCIALT - char(1)
|
||||
,oo.C_DRAMA AS C_DRAMA -- C_DRAMA - char(1)
|
||||
,1554 AS C_HETIREND -- C_HETIREND - int
|
||||
,oo.C_HETNAPJA AS C_HETNAPJA -- C_HETNAPJA - int
|
||||
,oo.C_IKTTANORA AS C_IKTTANORA -- C_IKTTANORA - char(1)
|
||||
,oo.C_IPRTANORA AS C_IPRTANORA -- C_IPRTANORA - char(1)
|
||||
,oo.C_KOOPERATIV AS C_KOOPERATIV -- C_KOOPERATIV - char(1)
|
||||
,oo.C_MERES AS C_MERES -- C_MERES - char(1)
|
||||
,oo.C_MINDENNAPOSTESTNEVELES AS C_MINDENNAPOSTESTNEVELES -- C_MINDENNAPOSTESTNEVELES - char(1)
|
||||
,oo.C_NEMSZAKRENDSZERUORA AS C_NEMSZAKRENDSZERUORA -- C_NEMSZAKRENDSZERUORA - char(1)
|
||||
,oo.C_NEMZETISEGIORA AS C_NEMZETISEGIORA -- C_NEMZETISEGIORA - char(1)
|
||||
,oo.C_ISFELNOTTOKTATASISZERZODES AS C_ISFELNOTTOKTATASISZERZODES -- C_ISFELNOTTOKTATASISZERZODES - char(1)
|
||||
,oo.C_ORASZAM AS C_ORASZAM -- C_ORASZAM - int
|
||||
,oo.C_SORSZAMOZANDO AS C_SORSZAMOZANDO -- C_SORSZAMOZANDO - char(1)
|
||||
,oo.C_TAMOPORA AS C_TAMOPORA -- C_TAMOPORA - char(1)
|
||||
,oo.C_TULORA AS C_TULORA -- C_TULORA - char(1)
|
||||
,oo.C_BONTOTT AS C_BONTOTT -- C_BONTOTT - char(1)
|
||||
,@ujDatum AS C_ORAERVENYESSEGKEZDETE -- C_ORAERVENYESSEGKEZDETE - datetime
|
||||
,@ujDatum AS C_ORAERVENYESSEGVEGE -- C_ORAERVENYESSEGVEGE - datetime
|
||||
,oo.C_PARHUZAMOSORA AS C_PARHUZAMOSORA -- C_PARHUZAMOSORA - char(1)
|
||||
,oo.C_TIOP12 AS C_TIOP12 -- C_TIOP12 - char(1)
|
||||
,ISNULL(csro.C_KEZDETE, oo.C_ORAKEZDETE) AS C_ORAKEZDETE -- C_ORAKEZDETE - datetime
|
||||
,ISNULL(csro.C_VEGE, oo.C_ORAVEGE) AS C_ORAVEGE -- C_ORAVEGE - datetime
|
||||
,''F'' AS C_IMPORTALT -- C_IMPORTALT - char(1)
|
||||
,ISNULL(csro.C_CSENGETESIRENDID, oo.C_CSENGETESIRENDID) AS C_CSENGETESIRENDID -- C_CSENGETESIRENDID - int
|
||||
,ISNULL(csro.ID, oo.C_CSENGETESIRENDORAID) AS C_CSENGETESIRENDORAID -- C_CSENGETESIRENDORAID - int
|
||||
,oo.C_ORARENDIORAGROUPID AS C_ORARENDIORAGROUPID -- C_ORARENDIORAGROUPID - int
|
||||
,oo.C_EFOP32317 AS C_EFOP32317 -- C_EFOP32317 - char(1)
|
||||
,oo.C_MULTIKULTURALISORA AS C_MULTIKULTURALISORA -- C_MULTIKULTURALISORA - char(1)
|
||||
,oo.C_KOMPLEXORA AS C_KOMPLEXORA -- C_KOMPLEXORA - char(1)
|
||||
,oo.C_KIPORA AS C_KIPORA -- C_KIPORA - char(1)
|
||||
,oo.C_VEKOP73317 AS C_VEKOP73317 -- C_VEKOP73317 - char(1)
|
||||
,oo.C_KAPORA AS C_KAPORA -- C_KAPORA - char(1)
|
||||
,oo.C_TEREMID AS C_TEREMID -- C_TEREMID - int
|
||||
,oo.C_FOGLALKOZASID AS C_FOGLALKOZASID -- C_FOGLALKOZASID - int
|
||||
,oo.C_TANTARGYID AS C_TANTARGYID -- C_TANTARGYID - int
|
||||
,oo.C_OSZTALYCSOPORTID AS C_OSZTALYCSOPORTID -- C_OSZTALYCSOPORTID - int
|
||||
,oo.C_TANARID AS C_TANARID -- C_TANARID - int
|
||||
,oo.C_ORATULAJDONOSID AS C_ORATULAJDONOSID -- C_ORATULAJDONOSID - int
|
||||
,oo.C_INTEZMENYID AS C_INTEZMENYID -- C_INTEZMENYID - int
|
||||
,oo.C_TANEVID AS C_TANEVID -- C_TANEVID - int
|
||||
,''F'' AS TOROLT -- TOROLT - char(1)
|
||||
,0 AS SERIAL -- SERIAL - int
|
||||
,GETDATE() AS LASTCHANGED -- LASTCHANGED - datetime
|
||||
,GETDATE() AS CREATED -- CREATED - datetime
|
||||
,@creator AS MODIFIER -- MODIFIER - int
|
||||
,@creator AS CREATOR -- CREATOR - int
|
||||
,NULL AS ELOZOTANEVIREKORDID -- ELOZOTANEVIREKORDID - int
|
||||
,NULL AS NNID -- NNID - int
|
||||
,''T'' AS C_EGYEDINAP -- C_EGYEDINAP - char(1)
|
||||
FROM T_ORARENDIORA_OSSZES oo
|
||||
INNER JOIN T_OSZTALYCSOPORT_TANEVRENDJE ocstr ON oo.C_OSZTALYCSOPORTID = ocstr.C_OSZTALYCSOPORTID AND ocstr.C_TANEVRENDJEID = @pTanevRendjeId
|
||||
LEFT JOIN T_CSENGETESIRENDORA_OSSZES csro ON csro.C_ORASZAM = oo.C_ORASZAM AND csro.C_CSENGETESIRENDID = @csengetesiRendId AND csro.TOROLT = ''F''
|
||||
WHERE ((C_ORAERVENYESSEGKEZDETE <= @elteroNapDatuma AND (C_ORAERVENYESSEGVEGE IS NULL OR C_ORAERVENYESSEGVEGE > @elteroNapDatuma)) OR (C_ORAERVENYESSEGKEZDETE = @elteroNapDatuma AND C_ORAERVENYESSEGVEGE = @elteroNapDatuma))
|
||||
AND oo.C_TANEVID = @pTanevId
|
||||
AND oo.C_INTEZMENYID = @pIntezmenyId
|
||||
AND oo.TOROLT = ''F''
|
||||
AND oo.C_HETNAPJA = @hetnapja AND (oo.C_HETIREND = 1554 OR oo.C_HETIREND = @hetirend)'
|
||||
|
||||
|
||||
IF(@pIsKapcsolodoCsoportokIs = 'T')
|
||||
BEGIN
|
||||
SET @sql += N'
|
||||
AND ocstr.C_OSZTALYCSOPORTID IN
|
||||
(SELECT ID FROM T_OSZTALYCSOPORT_OSSZES WHERE ID = @pOsztalycsoportId AND TOROLT = ''F''
|
||||
UNION
|
||||
SELECT ID FROM T_CSOPORT_OSSZES WHERE C_OSZTALYBONTASID = @pOsztalycsoportId AND TOROLT = ''F'')
|
||||
'
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
SET @sql += N'
|
||||
AND ocstr.C_OSZTALYCSOPORTID = @pOsztalycsoportId
|
||||
'
|
||||
END
|
||||
|
||||
EXEC sp_executesql @sql, N'
|
||||
@pIntezmenyId INT
|
||||
,@pTanevId INT
|
||||
,@pTanevRendjeId INT
|
||||
,@pOsztalycsoportId INT
|
||||
,@pIsKapcsolodoCsoportokIs CHAR(1)
|
||||
,@elteroNapDatuma DATETIME
|
||||
,@ujDatum DATETIME
|
||||
,@csengetesiRendId INT
|
||||
,@creator INT
|
||||
,@hetnapja INT
|
||||
,@hetirend INT'
|
||||
,@pIntezmenyId = @pIntezmenyId
|
||||
,@pTanevId = @pTanevId
|
||||
,@pTanevRendjeId = @pTanevRendjeId
|
||||
,@pOsztalycsoportId = @pOsztalycsoportId
|
||||
,@pIsKapcsolodoCsoportokIs = @pIsKapcsolodoCsoportokIs
|
||||
,@elteroNapDatuma = @elteroNapDatuma
|
||||
,@ujDatum = @ujDatum
|
||||
,@csengetesiRendId = @csengetesiRendId
|
||||
,@creator = @creator
|
||||
,@hetnapja = @hetnapja
|
||||
,@hetirend = @hetirend
|
||||
|
||||
END
|
|
@ -0,0 +1,353 @@
|
|||
DROP PROCEDURE IF EXISTS uspOrarendImport
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspOrarendImport
|
||||
@pIntezmenyId int
|
||||
,@pTanevId int
|
||||
,@pUserId int
|
||||
,@pImportJson nvarchar(max)
|
||||
,@pIsTorles bit
|
||||
,@pIsModositas bit
|
||||
,@pIsNapirendImport bit
|
||||
,@pOrarendiOraLezarasDateTime datetime = NULL
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE
|
||||
@tableNameList nvarchar(2000) = 'T_TEREM_OSSZES'
|
||||
,@actualJson nvarchar(max) = ''
|
||||
,@lastChangedDateTime datetime = GETDATE()
|
||||
|
||||
--Ha törlés van, akkor a kapcsolódások törlésével kell kezdenünk!
|
||||
IF (@pIsTorles = 1) BEGIN
|
||||
--Órarendi óra kapcsolatainak törlése
|
||||
UPDATE tao SET
|
||||
tao.C_ORARENDIORAID = NULL
|
||||
,tao.SERIAL = tao.SERIAL + 1
|
||||
,tao.LASTCHANGED = @lastChangedDateTime
|
||||
,tao.MODIFIER = @pUserId
|
||||
FROM T_TANITASIORA_OSSZES tao
|
||||
WHERE tao.C_INTEZMENYID = @pIntezmenyId
|
||||
AND tao.C_TANEVID = @pTanevId
|
||||
AND tao.TOROLT = 'F'
|
||||
AND EXISTS (
|
||||
SELECT TOP 1 ID
|
||||
FROM T_ORARENDIORA_OSSZES oo
|
||||
WHERE oo.ID = tao.C_ORARENDIORAID
|
||||
AND oo.C_INTEZMENYID = @pIntezmenyId
|
||||
AND oo.C_TANEVID = @pTanevId
|
||||
AND oo.TOROLT = 'F'
|
||||
AND oo.C_IMPORTALT = 'T'
|
||||
AND ((@pIsNapirendImport = 0 AND oo.C_CSENGETESIRENDID IS NOT NULL)
|
||||
OR (@pIsNapirendImport = 1 AND oo.C_CSENGETESIRENDID IS NULL))
|
||||
)
|
||||
|
||||
UPDATE hf SET
|
||||
hf.TOROLT = 'T'
|
||||
,hf.SERIAL = hf.SERIAL + 1
|
||||
,hf.LASTCHANGED = @lastChangedDateTime
|
||||
,hf.MODIFIER = @pUserId
|
||||
FROM T_HAZIFELADATOK_OSSZES hf
|
||||
WHERE hf.C_INTEZMENYID = @pIntezmenyId
|
||||
AND hf.C_TANEVID = @pTanevId
|
||||
AND hf.TOROLT = 'F'
|
||||
AND EXISTS (
|
||||
SELECT TOP 1 ID
|
||||
FROM T_ORARENDIORA_OSSZES oo
|
||||
WHERE oo.ID = hf.C_ORARENDIORAID
|
||||
AND oo.C_INTEZMENYID = @pIntezmenyId
|
||||
AND oo.C_TANEVID = @pTanevId
|
||||
AND oo.TOROLT = 'F'
|
||||
AND oo.C_IMPORTALT = 'T'
|
||||
AND ((@pIsNapirendImport = 0 AND oo.C_CSENGETESIRENDID IS NOT NULL)
|
||||
OR (@pIsNapirendImport = 1 AND oo.C_CSENGETESIRENDID IS NULL))
|
||||
)
|
||||
|
||||
UPDATE oot SET
|
||||
oot.C_ORARENDIORAID = NULL
|
||||
,oot.SERIAL = oot.SERIAL + 1
|
||||
,oot.LASTCHANGED = @lastChangedDateTime
|
||||
,oot.MODIFIER = @pUserId
|
||||
FROM T_ORARENDIORATULAJDONSAG oot
|
||||
WHERE oot.C_INTEZMENYID = @pIntezmenyId
|
||||
AND oot.C_TANEVID = @pTanevId
|
||||
AND oot.TOROLT = 'F'
|
||||
AND EXISTS (
|
||||
SELECT TOP 1 ID
|
||||
FROM T_ORARENDIORA_OSSZES oo
|
||||
WHERE oo.ID = oot.C_ORARENDIORAID
|
||||
AND oo.C_INTEZMENYID = @pIntezmenyId
|
||||
AND oo.C_TANEVID = @pTanevId
|
||||
AND oo.TOROLT = 'F'
|
||||
AND oo.C_IMPORTALT = 'T'
|
||||
AND ((@pIsNapirendImport = 0 AND oo.C_CSENGETESIRENDID IS NOT NULL)
|
||||
OR (@pIsNapirendImport = 1 AND oo.C_CSENGETESIRENDID IS NULL))
|
||||
)
|
||||
|
||||
DELETE hi
|
||||
FROM T_HELYETTESITESIIDOSZAK_OSSZES hi
|
||||
WHERE EXISTS (
|
||||
SELECT TOP 1 ID
|
||||
FROM T_ORARENDIORA_OSSZES oo
|
||||
WHERE oo.ID = hi.C_HELYETTESITETTORARENDID
|
||||
AND oo.C_INTEZMENYID = @pIntezmenyId
|
||||
AND oo.C_TANEVID = @pTanevId
|
||||
AND oo.TOROLT = 'F'
|
||||
AND oo.C_IMPORTALT = 'T'
|
||||
AND ((@pIsNapirendImport = 0 AND oo.C_CSENGETESIRENDID IS NOT NULL)
|
||||
OR (@pIsNapirendImport = 1 AND oo.C_CSENGETESIRENDID IS NULL))
|
||||
)
|
||||
|
||||
--Órarendi órák törlése
|
||||
UPDATE oo SET
|
||||
oo.TOROLT = 'T'
|
||||
,oo.SERIAL = oo.SERIAL + 1
|
||||
,oo.LASTCHANGED = @lastChangedDateTime
|
||||
,oo.MODIFIER = @pUserId
|
||||
FROM T_ORARENDIORA_OSSZES oo
|
||||
WHERE oo.C_INTEZMENYID = @pIntezmenyId
|
||||
AND oo.C_TANEVID = @pTanevId
|
||||
AND oo.TOROLT = 'F'
|
||||
AND oo.C_IMPORTALT = 'T'
|
||||
AND oo.C_ORAERVENYESSEGVEGE <> oo.C_ORAERVENYESSEGKEZDETE
|
||||
AND ((@pIsNapirendImport = 0 AND oo.C_CSENGETESIRENDID IS NOT NULL)
|
||||
OR (@pIsNapirendImport = 1 AND oo.C_CSENGETESIRENDID IS NULL))
|
||||
END
|
||||
|
||||
--Ha módosítás van, akkor a már létező órarendi órák módosításával kell kezdenünk!
|
||||
IF (@pIsModositas = 1) BEGIN
|
||||
--Korábbi órarendi órák lezárása
|
||||
UPDATE oo SET
|
||||
oo.C_ORAERVENYESSEGVEGE = @pOrarendiOraLezarasDateTime
|
||||
,oo.SERIAL = oo.SERIAL + 1
|
||||
,oo.LASTCHANGED = @lastChangedDateTime
|
||||
,oo.MODIFIER = @pUserId
|
||||
FROM T_ORARENDIORA_OSSZES oo
|
||||
WHERE oo.C_INTEZMENYID = @pIntezmenyId
|
||||
AND oo.C_TANEVID = @pTanevId
|
||||
AND oo.TOROLT = 'F'
|
||||
AND (oo.C_ORAERVENYESSEGVEGE IS NULL
|
||||
OR oo.C_ORAERVENYESSEGVEGE > @pOrarendiOraLezarasDateTime)
|
||||
AND oo.C_ORAERVENYESSEGVEGE <> oo.C_ORAERVENYESSEGKEZDETE
|
||||
AND oo.C_ORAERVENYESSEGKEZDETE < @pOrarendiOraLezarasDateTime
|
||||
AND ((@pIsNapirendImport = 0 AND oo.C_CSENGETESIRENDID IS NOT NULL)
|
||||
OR (@pIsNapirendImport = 1 AND oo.C_CSENGETESIRENDID IS NULL))
|
||||
|
||||
--A korábban felvett, de későbbi időpontra importált órarendi órák törlése
|
||||
UPDATE oo SET
|
||||
oo.TOROLT = 'T'
|
||||
,oo.SERIAL = oo.SERIAL + 1
|
||||
,oo.LASTCHANGED = @lastChangedDateTime
|
||||
,oo.MODIFIER = @pUserId
|
||||
FROM T_ORARENDIORA_OSSZES oo
|
||||
WHERE oo.C_INTEZMENYID = @pIntezmenyId
|
||||
AND oo.C_TANEVID = @pTanevId
|
||||
AND oo.TOROLT = 'F'
|
||||
AND oo.C_IMPORTALT = 'T'
|
||||
AND oo.C_ORAERVENYESSEGVEGE <> oo.C_ORAERVENYESSEGKEZDETE
|
||||
AND oo.C_ORAERVENYESSEGKEZDETE >= @pOrarendiOraLezarasDateTime
|
||||
AND ((@pIsNapirendImport = 0 AND oo.C_CSENGETESIRENDID IS NOT NULL)
|
||||
OR (@pIsNapirendImport = 1 AND oo.C_CSENGETESIRENDID IS NULL))
|
||||
END
|
||||
|
||||
EXECUTE uspTantargyfelosztasImport @pIntezmenyId, @pTanevId, @pUserId, @pImportJson, @pIsTorles
|
||||
|
||||
--NOTE: A törlés azért false, mert a T_TEREM_OSSZES view-ból nem törlünk importnál!
|
||||
EXECUTE uspDynamicImportJsonSplit @pIntezmenyId = @pIntezmenyId, @pTanevId = @pTanevId, @pUserId = @pUserId, @pImportJson = @pImportJson, @pIsTorles = 0, @pIsSubTable = 0, @pTableNameList = @tableNameList
|
||||
|
||||
--NOTE: Órarendi óra temp tábla incializálása
|
||||
CREATE TABLE #OrarendiOraTempTable (
|
||||
ID int
|
||||
,C_TANARID int
|
||||
,C_TANTARGYID int
|
||||
,C_OSZTALYCSOPORTID int
|
||||
,C_TEREMID int
|
||||
,C_FOGLALKOZASID int
|
||||
,C_HETIREND int
|
||||
,C_HETNAPJA int
|
||||
,C_ORASZAM int
|
||||
,C_ORAERVENYESSEGKEZDETE datetime
|
||||
,C_ORAERVENYESSEGVEGE datetime
|
||||
,C_EGYEDINAP char(1)
|
||||
,C_ISKEZZELFELVETTEGYEDINAp char(1)
|
||||
,C_CSENGETESIRENDID int
|
||||
,C_CSENGETESIRENDORAID int
|
||||
,C_ORAKEZDETE datetime
|
||||
,C_ORAVEGE datetime
|
||||
,C_BONTOTT char(1)
|
||||
,C_ORATULAJDONOSID int
|
||||
|
||||
,C_IMPORTALT char(1)
|
||||
,C_INTEZMENYID int
|
||||
,C_TANEVID int
|
||||
,TOROLT char(1)
|
||||
,SERIAL int
|
||||
,LASTCHANGED datetime
|
||||
,CREATED datetime
|
||||
,MODIFIER int
|
||||
,CREATOR int
|
||||
,ELOZOTANEVIREKORDID int
|
||||
,NNID int
|
||||
,Operation int
|
||||
)
|
||||
|
||||
INSERT INTO #OrarendiOraTempTable
|
||||
SELECT
|
||||
oo.ID
|
||||
,oo.C_TANARID
|
||||
,tt.ID AS C_TANTARGYID
|
||||
,ocs.ID AS C_OSZTALYCSOPORTID
|
||||
,t.ID AS C_TEREMID
|
||||
,fg.ID AS C_FOGLALKOZASID
|
||||
,oo.C_HETIREND
|
||||
,oo.C_HETNAPJA
|
||||
,oo.C_ORASZAM
|
||||
,oo.C_ORAERVENYESSEGKEZDETE
|
||||
,oo.C_ORAERVENYESSEGVEGE
|
||||
,oo.C_EGYEDINAP
|
||||
,oo.C_ISKEZZELFELVETTEGYEDINAP
|
||||
,oo.C_CSENGETESIRENDID
|
||||
,oo.C_CSENGETESIRENDORAID
|
||||
,oo.C_ORAKEZDETE
|
||||
,oo.C_ORAVEGE
|
||||
,oo.C_BONTOTT
|
||||
,oo.C_ORATULAJDONOSID
|
||||
|
||||
,oo.C_IMPORTALT
|
||||
,oo.C_INTEZMENYID
|
||||
,oo.C_TANEVID
|
||||
,oo.TOROLT
|
||||
,oo.SERIAL
|
||||
,oo.LASTCHANGED
|
||||
,oo.CREATED
|
||||
,oo.MODIFIER
|
||||
,oo.CREATOR
|
||||
,oo.ELOZOTANEVIREKORDID
|
||||
,oo.NNID
|
||||
,oo.Operation
|
||||
FROM OPENJSON(@pImportJson, N'lax $.ImportJson.T_ORARENDIORA_OSSZES')
|
||||
WITH (
|
||||
ID int '$.ID'
|
||||
,C_TANARID int '$.C_TANARID'
|
||||
,C_HETIREND int '$.C_HETIREND'
|
||||
,C_HETNAPJA int '$.C_HETNAPJA'
|
||||
,C_ORASZAM int '$.C_ORASZAM'
|
||||
,C_ORAERVENYESSEGKEZDETE datetime '$.C_ORAERVENYESSEGKEZDETE'
|
||||
,C_ORAERVENYESSEGVEGE datetime '$.C_ORAERVENYESSEGVEGE'
|
||||
,C_EGYEDINAP char(1) '$.C_EGYEDINAP'
|
||||
,C_ISKEZZELFELVETTEGYEDINAP char(1) '$.C_ISKEZZELFELVETTEGYEDINAP'
|
||||
,C_CSENGETESIRENDID int '$.C_CSENGETESIRENDID'
|
||||
,C_CSENGETESIRENDORAID int '$.C_CSENGETESIRENDORAID'
|
||||
,C_ORAKEZDETE datetime '$.C_ORAKEZDETE'
|
||||
,C_ORAVEGE datetime '$.C_ORAVEGE'
|
||||
,C_BONTOTT char(1) '$.C_BONTOTT'
|
||||
,C_ORATULAJDONOSID int '$.C_ORATULAJDONOSID'
|
||||
|
||||
,C_IMPORTALT char(1) '$.C_IMPORTALT'
|
||||
,C_INTEZMENYID int '$.C_INTEZMENYID'
|
||||
,C_TANEVID int '$.C_TANEVID'
|
||||
,TOROLT char(1) '$.TOROLT'
|
||||
,SERIAL int '$.SERIAL'
|
||||
,LASTCHANGED datetime '$.LASTCHANGED'
|
||||
,CREATED datetime '$.CREATED'
|
||||
,MODIFIER int '$.MODIFIER'
|
||||
,CREATOR int '$.CREATOR'
|
||||
,ELOZOTANEVIREKORDID int '$.ELOZOTANEVIREKORDID'
|
||||
,NNID int '$.NNID'
|
||||
,Operation int '$.Operation'
|
||||
|
||||
,TantargyNev nvarchar(255) '$.TantargyNev'
|
||||
,OsztalyCsoportNev nvarchar(255) '$.OsztalyCsoportNev'
|
||||
,TeremNev nvarchar(255) '$.TeremNev'
|
||||
) oo
|
||||
LEFT JOIN T_TANTARGY_OSSZES tt ON
|
||||
--NOTE: A leküldött adat már teljesen jól formázott, de a db-ben lehetnek rossz adatok. Az összehasonlításhoz ezt csináljuk:
|
||||
-- Kisbetűsítjük -> Lecseréljük a NO BREAK SPACE-eket, SPACE-ekre -> Lecseréljük az összes többszörös szóközt egyre -> Trimmelünk
|
||||
LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(tt.C_NEV),CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))) = LOWER(oo.TantargyNev)
|
||||
AND tt.C_INTEZMENYID = @pIntezmenyId
|
||||
AND tt.C_TANEVID = @pTanevId
|
||||
AND tt.TOROLT = 'F'
|
||||
LEFT JOIN T_OSZTALYCSOPORT_OSSZES ocs ON
|
||||
--NOTE: A leküldött adat már teljesen jól formázott, de a db-ben lehetnek rossz adatok. Az összehasonlításhoz ezt csináljuk:
|
||||
-- Kisbetűsítjük -> Lecseréljük a NO BREAK SPACE-eket, SPACE-ekre -> Lecseréljük az összes többszörös szóközt egyre -> Trimmelünk
|
||||
LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(ocs.C_NEV),CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))) = LOWER(oo.OsztalyCsoportNev)
|
||||
AND ocs.C_INTEZMENYID = @pIntezmenyId
|
||||
AND ocs.C_TANEVID = @pTanevId
|
||||
AND ocs.TOROLT = 'F'
|
||||
LEFT JOIN T_TEREM_OSSZES t ON
|
||||
--NOTE: A leküldött adat már teljesen jól formázott, de a db-ben lehetnek rossz adatok. Az összehasonlításhoz ezt csináljuk:
|
||||
-- Kisbetűsítjük -> Lecseréljük a NO BREAK SPACE-eket, SPACE-ekre -> Lecseréljük az összes többszörös szóközt egyre -> Trimmelünk
|
||||
LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(t.C_NEV),CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))) = LOWER(oo.TeremNev)
|
||||
AND t.C_INTEZMENYID = @pIntezmenyId
|
||||
AND t.C_TANEVID = @pTanevId
|
||||
AND t.TOROLT = 'F'
|
||||
LEFT JOIN T_FOGLALKOZAS_OSSZES fg ON
|
||||
fg.C_OSZTALYCSOPORTID = ocs.ID
|
||||
AND fg.C_TANARID = oo.C_TANARID
|
||||
AND fg.C_TANTARGYID = tt.ID
|
||||
AND fg.C_INTEZMENYID = @pIntezmenyId
|
||||
AND fg.C_TANEVID = @pTanevId
|
||||
AND fg.TOROLT = 'F'
|
||||
|
||||
--Órarendi órák beszúrása
|
||||
SET @actualJson = ' { "ImportJson":{ "T_ORARENDIORA_OSSZES":' + (
|
||||
SELECT
|
||||
oo.ID
|
||||
,oo.C_TANARID
|
||||
,oo.C_TANTARGYID
|
||||
,oo.C_OSZTALYCSOPORTID
|
||||
,oo.C_TEREMID
|
||||
,oo.C_FOGLALKOZASID
|
||||
,oo.C_HETIREND
|
||||
,oo.C_HETNAPJA
|
||||
,oo.C_ORASZAM
|
||||
,oo.C_ORAERVENYESSEGKEZDETE
|
||||
,oo.C_ORAERVENYESSEGVEGE
|
||||
,oo.C_EGYEDINAP
|
||||
,oo.C_ISKEZZELFELVETTEGYEDINAP
|
||||
,oo.C_CSENGETESIRENDID
|
||||
,oo.C_CSENGETESIRENDORAID
|
||||
,oo.C_ORAKEZDETE
|
||||
,oo.C_ORAVEGE
|
||||
,oo.C_BONTOTT
|
||||
,oo.C_ORATULAJDONOSID
|
||||
|
||||
,oo.C_IMPORTALT
|
||||
,oo.C_INTEZMENYID
|
||||
,oo.C_TANEVID
|
||||
,oo.TOROLT
|
||||
,oo.SERIAL
|
||||
,oo.LASTCHANGED
|
||||
,oo.CREATED
|
||||
,oo.MODIFIER
|
||||
,oo.CREATOR
|
||||
,oo.ELOZOTANEVIREKORDID
|
||||
,oo.NNID
|
||||
,oo.Operation
|
||||
FROM #OrarendiOraTempTable AS oo
|
||||
FOR JSON PATH,INCLUDE_NULL_VALUES
|
||||
)
|
||||
|
||||
SET @actualJson = @actualJson + ' } }'
|
||||
|
||||
--NOTE: A törlés azért false, mert a T_ORARENDIORA_OSSZES view-ból korábban elvégeztük a törlést, mivel egyéb feltélek is kellettek hozzá, ami nem szerepel a uspDynamicImport-ban.
|
||||
EXECUTE uspDynamicImport @pIntezmenyId = @pIntezmenyId, @pTanevId = @pTanevId, @pUserId = @pUserId, @pImportJson = @actualJson, @pIsTorles = 0, @pIsSubTable = 0
|
||||
DROP TABLE IF EXISTS #OrarendiOraTempTable
|
||||
|
||||
--NOTE: Update-elnünk kell a órarendi óráknak a groud id-ját!
|
||||
UPDATE oo SET
|
||||
oo.C_ORARENDIORAGROUPID = ID
|
||||
FROM T_ORARENDIORA_OSSZES oo
|
||||
WHERE oo.C_INTEZMENYID = @pIntezmenyId
|
||||
AND oo.C_TANEVID = @pTanevId
|
||||
AND oo.TOROLT = 'F'
|
||||
AND oo.C_IMPORTALT = 'T'
|
||||
AND ((@pIsNapirendImport = 0 AND oo.C_CSENGETESIRENDID IS NOT NULL)
|
||||
OR (@pIsNapirendImport = 1 AND oo.C_CSENGETESIRENDID IS NULL))
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
|
|
@ -0,0 +1,444 @@
|
|||
DROP PROCEDURE IF EXISTS uspTantargyfelosztasImport
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspTantargyfelosztasImport
|
||||
@pIntezmenyId int
|
||||
,@pTanevId int
|
||||
,@pUserId int
|
||||
,@pImportJson nvarchar(max)
|
||||
,@pIsTorles bit
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE
|
||||
@tableNameList nvarchar(2000) = 'T_TANTARGY_OSSZES,T_OSZTALYCSOPORT_OSSZES'
|
||||
,@actualJson nvarchar(max) = ''
|
||||
,@lastChangedDateTime datetime = GETDATE()
|
||||
|
||||
--Ha törlés van, akkor a kapcsolódások törlésével kell kezdenünk!
|
||||
IF (@pIsTorles = 1) BEGIN
|
||||
--Foglalkozás kapcsolatainak törlése
|
||||
UPDATE oo SET
|
||||
oo.C_FOGLALKOZASID = NULL
|
||||
,oo.SERIAL = oo.SERIAL + 1
|
||||
,oo.LASTCHANGED = @lastChangedDateTime
|
||||
,oo.MODIFIER = @pUserId
|
||||
FROM T_ORARENDIORA_OSSZES oo
|
||||
WHERE oo.C_INTEZMENYID = @pIntezmenyId
|
||||
AND oo.C_TANEVID = @pTanevId
|
||||
AND oo.TOROLT = 'F'
|
||||
AND EXISTS (
|
||||
SELECT TOP 1 ID
|
||||
FROM T_FOGLALKOZAS_OSSZES fg
|
||||
WHERE fg.ID = oo.C_FOGLALKOZASID
|
||||
AND fg.C_INTEZMENYID = @pIntezmenyId
|
||||
AND fg.C_TANEVID = @pTanevId
|
||||
AND fg.TOROLT = 'F'
|
||||
AND fg.C_IMPORTALT = 'T'
|
||||
)
|
||||
|
||||
UPDATE tao SET
|
||||
tao.C_FOGLALKOZASID = NULL
|
||||
,tao.SERIAL = tao.SERIAL + 1
|
||||
,tao.LASTCHANGED = @lastChangedDateTime
|
||||
,tao.MODIFIER = @pUserId
|
||||
FROM T_TANITASIORA_OSSZES tao
|
||||
WHERE tao.C_INTEZMENYID = @pIntezmenyId
|
||||
AND tao.C_TANEVID = @pTanevId
|
||||
AND tao.TOROLT = 'F'
|
||||
AND EXISTS (
|
||||
SELECT TOP 1 ID
|
||||
FROM T_FOGLALKOZAS_OSSZES fg
|
||||
WHERE fg.ID = tao.C_FOGLALKOZASID
|
||||
AND fg.C_INTEZMENYID = @pIntezmenyId
|
||||
AND fg.C_TANEVID = @pTanevId
|
||||
AND fg.TOROLT = 'F'
|
||||
AND fg.C_IMPORTALT = 'T'
|
||||
)
|
||||
|
||||
UPDATE tms SET
|
||||
tms.C_TARGYMULASZTASSTATISZTIKAIID = NULL
|
||||
,tms.SERIAL = tms.SERIAL + 1
|
||||
,tms.LASTCHANGED = @lastChangedDateTime
|
||||
,tms.MODIFIER = @pUserId
|
||||
FROM T_TANULOTARGYMULASZTASSTATISZT_OSSZES tms
|
||||
WHERE tms.C_INTEZMENYID = @pIntezmenyId
|
||||
AND tms.C_TANEVID = @pTanevId
|
||||
AND tms.TOROLT = 'F'
|
||||
AND EXISTS (
|
||||
SELECT TOP 1 ID
|
||||
FROM T_FOGLALKOZAS_OSSZES fg
|
||||
WHERE fg.ID = tms.C_TARGYMULASZTASSTATISZTIKAIID
|
||||
AND fg.C_INTEZMENYID = @pIntezmenyId
|
||||
AND fg.C_TANEVID = @pTanevId
|
||||
AND fg.TOROLT = 'F'
|
||||
AND fg.C_IMPORTALT = 'T'
|
||||
)
|
||||
|
||||
DELETE tfg
|
||||
FROM T_TEREM_FOGLALKOZAS tfg
|
||||
WHERE EXISTS (
|
||||
SELECT TOP 1 ID
|
||||
FROM T_FOGLALKOZAS_OSSZES fg
|
||||
WHERE fg.ID = tfg.C_FOGLALKOZASID
|
||||
AND fg.C_INTEZMENYID = @pIntezmenyId
|
||||
AND fg.C_TANEVID = @pTanevId
|
||||
AND fg.TOROLT = 'F'
|
||||
AND fg.C_IMPORTALT = 'T'
|
||||
)
|
||||
END
|
||||
|
||||
--NOTE: A törlés azért false, mert a T_TANTARGY_OSSZES és a T_OSZTALYCSOPORT_OSSZES view-ból nem törlünk importnál!
|
||||
EXECUTE uspDynamicImportJsonSplit @pIntezmenyId = @pIntezmenyId, @pTanevId = @pTanevId, @pUserId = @pUserId, @pImportJson = @pImportJson, @pIsTorles = 0, @pIsSubTable = 0, @pTableNameList = @tableNameList
|
||||
|
||||
--NOTE: Osztály temp tábla incializálása
|
||||
CREATE TABLE #OsztalyTempTable (
|
||||
ID int
|
||||
,C_KETTANNYELVU char(1)
|
||||
,C_NEMZETISEGI char(1)
|
||||
,C_NYELVIELOKESZITO char(1)
|
||||
,C_SPORT char(1)
|
||||
|
||||
,C_ALINTEZMENYID int
|
||||
,C_ALTANEVID int
|
||||
,TOROLT char(1)
|
||||
,SERIAL int
|
||||
,LASTCHANGED datetime
|
||||
,CREATED datetime
|
||||
,MODIFIER int
|
||||
,CREATOR int
|
||||
,ELOZOTANEVIREKORDID int
|
||||
,NNID int
|
||||
,Operation int
|
||||
)
|
||||
|
||||
INSERT INTO #OsztalyTempTable
|
||||
SELECT
|
||||
ocs.ID
|
||||
,o.C_KETTANNYELVU
|
||||
,o.C_NEMZETISEGI
|
||||
,o.C_NYELVIELOKESZITO
|
||||
,o.C_SPORT
|
||||
|
||||
,o.C_ALINTEZMENYID
|
||||
,o.C_ALTANEVID
|
||||
,o.TOROLT
|
||||
,o.SERIAL
|
||||
,o.LASTCHANGED
|
||||
,o.CREATED
|
||||
,o.MODIFIER
|
||||
,o.CREATOR
|
||||
,o.ELOZOTANEVIREKORDID
|
||||
,o.NNID
|
||||
,o.Operation
|
||||
FROM OPENJSON(@pImportJson, N'lax $.ImportJson.T_OSZTALY_OSSZES')
|
||||
WITH (
|
||||
ID int '$.ID'
|
||||
,C_KETTANNYELVU char(1) '$.C_KETTANNYELVU'
|
||||
,C_NEMZETISEGI char(1) '$.C_NEMZETISEGI'
|
||||
,C_NYELVIELOKESZITO char(1) '$.C_NYELVIELOKESZITO'
|
||||
,C_SPORT char(1) '$.C_SPORT'
|
||||
|
||||
,C_ALINTEZMENYID int '$.C_INTEZMENYID'
|
||||
,C_ALTANEVID int '$.C_TANEVID'
|
||||
,TOROLT char(1) '$.TOROLT'
|
||||
,SERIAL int '$.SERIAL'
|
||||
,LASTCHANGED datetime '$.LASTCHANGED'
|
||||
,CREATED datetime '$.CREATED'
|
||||
,MODIFIER int '$.MODIFIER'
|
||||
,CREATOR int '$.CREATOR'
|
||||
,ELOZOTANEVIREKORDID int '$.ELOZOTANEVIREKORDID'
|
||||
,NNID int '$.NNID'
|
||||
,Operation int '$.Operation'
|
||||
|
||||
,OsztalyCsoportNev nvarchar(255) '$.OsztalyCsoportNev'
|
||||
) o
|
||||
LEFT JOIN T_OSZTALYCSOPORT_OSSZES ocs ON
|
||||
--NOTE: A leküldött adat már teljesen jól formázott, de a db-ben lehetnek rossz adatok. Az összehasonlításhoz ezt csináljuk:
|
||||
-- Kisbetűsítjük -> Lecseréljük a NO BREAK SPACE-eket, SPACE-ekre -> Lecseréljük az összes többszörös szóközt egyre -> Trimmelünk
|
||||
LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(ocs.C_NEV),CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))) = LOWER(o.OsztalyCsoportNev)
|
||||
AND ocs.C_INTEZMENYID = @pIntezmenyId
|
||||
AND ocs.C_TANEVID = @pTanevId
|
||||
AND ocs.TOROLT = 'F'
|
||||
AND o.ID IS NULL
|
||||
|
||||
--NOTE: Csoport temp tábla incializálása
|
||||
CREATE TABLE #CsoportTempTable (
|
||||
ID int
|
||||
,C_TIPUSA int
|
||||
,C_OSZTALYBONTASID int
|
||||
|
||||
,C_ALINTEZMENYID int
|
||||
,C_ALTANEVID int
|
||||
,TOROLT char(1)
|
||||
,SERIAL int
|
||||
,LASTCHANGED datetime
|
||||
,CREATED datetime
|
||||
,MODIFIER int
|
||||
,CREATOR int
|
||||
,ELOZOTANEVIREKORDID int
|
||||
,NNID int
|
||||
,Operation int
|
||||
)
|
||||
|
||||
INSERT INTO #CsoportTempTable
|
||||
SELECT
|
||||
ocs.ID
|
||||
,cs.C_TIPUSA
|
||||
,ob.ID
|
||||
|
||||
,cs.C_ALINTEZMENYID
|
||||
,cs.C_ALTANEVID
|
||||
,cs.TOROLT
|
||||
,cs.SERIAL
|
||||
,cs.LASTCHANGED
|
||||
,cs.CREATED
|
||||
,cs.MODIFIER
|
||||
,cs.CREATOR
|
||||
,cs.ELOZOTANEVIREKORDID
|
||||
,cs.NNID
|
||||
,cs.Operation
|
||||
FROM OPENJSON(@pImportJson, N'lax $.ImportJson.T_CSOPORT_OSSZES')
|
||||
WITH (
|
||||
ID int '$.ID'
|
||||
,C_TIPUSA int '$.C_TIPUSA'
|
||||
,C_OSZTALYBONTASID int '$.C_OSZTALYBONTASID'
|
||||
|
||||
,C_ALINTEZMENYID int '$.C_INTEZMENYID'
|
||||
,C_ALTANEVID int '$.C_TANEVID'
|
||||
,TOROLT char(1) '$.TOROLT'
|
||||
,SERIAL int '$.SERIAL'
|
||||
,LASTCHANGED datetime '$.LASTCHANGED'
|
||||
,CREATED datetime '$.CREATED'
|
||||
,MODIFIER int '$.MODIFIER'
|
||||
,CREATOR int '$.CREATOR'
|
||||
,ELOZOTANEVIREKORDID int '$.ELOZOTANEVIREKORDID'
|
||||
,NNID int '$.NNID'
|
||||
,Operation int '$.Operation'
|
||||
|
||||
,OsztalyCsoportNev nvarchar(255) '$.OsztalyCsoportNev'
|
||||
,OsztalybontasNev nvarchar(255) '$.OsztalybontasNev'
|
||||
) cs
|
||||
LEFT JOIN T_OSZTALYCSOPORT_OSSZES ocs ON
|
||||
--NOTE: A leküldött adat már teljesen jól formázott, de a db-ben lehetnek rossz adatok. Az összehasonlításhoz ezt csináljuk:
|
||||
-- Kisbetűsítjük -> Lecseréljük a NO BREAK SPACE-eket, SPACE-ekre -> Lecseréljük az összes többszörös szóközt egyre -> Trimmelünk
|
||||
LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(ocs.C_NEV),CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))) = LOWER(cs.OsztalyCsoportNev)
|
||||
AND ocs.C_INTEZMENYID = @pIntezmenyId
|
||||
AND ocs.C_TANEVID = @pTanevId
|
||||
AND ocs.TOROLT = 'F'
|
||||
AND cs.ID IS NULL
|
||||
LEFT JOIN T_OSZTALYCSOPORT_OSSZES ob ON
|
||||
--NOTE: A leküldött adat már teljesen jól formázott, de a db-ben lehetnek rossz adatok. Az összehasonlításhoz ezt csináljuk:
|
||||
-- Kisbetűsítjük -> Lecseréljük a NO BREAK SPACE-eket, SPACE-ekre -> Lecseréljük az összes többszörös szóközt egyre -> Trimmelünk
|
||||
LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(ob.C_NEV),CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))) = LOWER(cs.OsztalybontasNev)
|
||||
AND ob.C_INTEZMENYID = @pIntezmenyId
|
||||
AND ob.C_TANEVID = @pTanevId
|
||||
AND ob.TOROLT = 'F'
|
||||
AND cs.ID IS NULL
|
||||
|
||||
--NOTE: Foglalkozas temp tábla incializálása
|
||||
CREATE TABLE #FoglalkozasTempTable (
|
||||
ID int
|
||||
,C_TANARID int
|
||||
,C_TANTARGYID int
|
||||
,C_OSZTALYCSOPORTID int
|
||||
,C_FOGLALKOZASTIPUSA int
|
||||
,C_ORASZAM numeric(10,2)
|
||||
,C_NEV nvarchar(255)
|
||||
,C_ERTEKELESKELL char(1)
|
||||
,C_MULASZTASKELL char(1)
|
||||
,C_TANARFELVEHETI char(1)
|
||||
,C_TULORASZAM numeric(10,2)
|
||||
,C_ISOSSZEVONTORA char(1)
|
||||
,C_ISNEMZETISEGI char(1)
|
||||
,C_MEGBIZASIORASZAM numeric(10,2)
|
||||
|
||||
,C_IMPORTALT char(1)
|
||||
,C_INTEZMENYID int
|
||||
,C_TANEVID int
|
||||
,TOROLT char(1)
|
||||
,SERIAL int
|
||||
,LASTCHANGED datetime
|
||||
,CREATED datetime
|
||||
,MODIFIER int
|
||||
,CREATOR int
|
||||
,ELOZOTANEVIREKORDID int
|
||||
,NNID int
|
||||
,Operation int
|
||||
)
|
||||
|
||||
INSERT INTO #FoglalkozasTempTable
|
||||
SELECT
|
||||
fg.ID
|
||||
,fg.C_TANARID
|
||||
,tt.ID
|
||||
,ocs.ID
|
||||
,fg.C_FOGLALKOZASTIPUSA
|
||||
,fg.C_ORASZAM
|
||||
,fg.C_NEV
|
||||
,fg.C_ERTEKELESKELL
|
||||
,fg.C_MULASZTASKELL
|
||||
,fg.C_TANARFELVEHETI
|
||||
,fg.C_TULORASZAM
|
||||
,fg.C_ISOSSZEVONTORA
|
||||
,fg.C_ISNEMZETISEGI
|
||||
,fg.C_MEGBIZASIORASZAM
|
||||
|
||||
,fg.C_IMPORTALT
|
||||
,fg.C_INTEZMENYID
|
||||
,fg.C_TANEVID
|
||||
,fg.TOROLT
|
||||
,fg.SERIAL
|
||||
,fg.LASTCHANGED
|
||||
,fg.CREATED
|
||||
,fg.MODIFIER
|
||||
,fg.CREATOR
|
||||
,fg.ELOZOTANEVIREKORDID
|
||||
,fg.NNID
|
||||
,fg.Operation
|
||||
FROM OPENJSON(@pImportJson, N'lax $.ImportJson.T_FOGLALKOZAS_OSSZES')
|
||||
WITH (
|
||||
ID int '$.ID'
|
||||
,C_TANARID int '$.C_TANARID'
|
||||
,C_FOGLALKOZASTIPUSA int '$.C_FOGLALKOZASTIPUSA'
|
||||
,C_ORASZAM numeric(10,2) '$.C_ORASZAM'
|
||||
,C_NEV nvarchar(255) '$.C_NEV'
|
||||
,C_ERTEKELESKELL char(1) '$.C_ERTEKELESKELL'
|
||||
,C_MULASZTASKELL char(1) '$.C_MULASZTASKELL'
|
||||
,C_TANARFELVEHETI char(1) '$.C_TANARFELVEHETI'
|
||||
,C_TULORASZAM numeric(10,2) '$.C_TULORASZAM'
|
||||
,C_ISOSSZEVONTORA char(1) '$.C_ISOSSZEVONTORA'
|
||||
,C_ISNEMZETISEGI char(1) '$.C_ISNEMZETISEGI'
|
||||
,C_MEGBIZASIORASZAM numeric(10,2) '$.C_MEGBIZASIORASZAM'
|
||||
|
||||
,C_IMPORTALT char(1) '$.C_IMPORTALT'
|
||||
,C_INTEZMENYID int '$.C_INTEZMENYID'
|
||||
,C_TANEVID int '$.C_TANEVID'
|
||||
,TOROLT char(1) '$.TOROLT'
|
||||
,SERIAL int '$.SERIAL'
|
||||
,LASTCHANGED datetime '$.LASTCHANGED'
|
||||
,CREATED datetime '$.CREATED'
|
||||
,MODIFIER int '$.MODIFIER'
|
||||
,CREATOR int '$.CREATOR'
|
||||
,ELOZOTANEVIREKORDID int '$.ELOZOTANEVIREKORDID'
|
||||
,NNID int '$.NNID'
|
||||
,Operation int '$.Operation'
|
||||
|
||||
,TantargyNev nvarchar(255) '$.TantargyNev'
|
||||
,OsztalyCsoportNev nvarchar(255) '$.OsztalyCsoportNev'
|
||||
) fg
|
||||
LEFT JOIN T_TANTARGY_OSSZES tt ON
|
||||
--NOTE: A leküldött adat már teljesen jól formázott, de a db-ben lehetnek rossz adatok. Az összehasonlításhoz ezt csináljuk:
|
||||
-- Kisbetűsítjük -> Lecseréljük a NO BREAK SPACE-eket, SPACE-ekre -> Lecseréljük az összes többszörös szóközt egyre -> Trimmelünk
|
||||
LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(tt.C_NEV),CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))) = LOWER(fg.TantargyNev)
|
||||
AND tt.C_INTEZMENYID = @pIntezmenyId
|
||||
AND tt.C_TANEVID = @pTanevId
|
||||
AND tt.TOROLT = 'F'
|
||||
LEFT JOIN T_OSZTALYCSOPORT_OSSZES ocs ON
|
||||
--NOTE: A leküldött adat már teljesen jól formázott, de a db-ben lehetnek rossz adatok. Az összehasonlításhoz ezt csináljuk:
|
||||
-- Kisbetűsítjük -> Lecseréljük a NO BREAK SPACE-eket, SPACE-ekre -> Lecseréljük az összes többszörös szóközt egyre -> Trimmelünk
|
||||
LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(REPLACE(LOWER(ocs.C_NEV),CHAR(160),CHAR(32)),CHAR(32),'(¤¤)'),'¤)(¤',''),'(¤¤)',CHAR(32)))) = LOWER(fg.OsztalyCsoportNev)
|
||||
AND ocs.C_INTEZMENYID = @pIntezmenyId
|
||||
AND ocs.C_TANEVID = @pTanevId
|
||||
AND ocs.TOROLT = 'F'
|
||||
|
||||
--Osztályok beszúrása
|
||||
SET @actualJson = ' { "ImportJson":{ "T_OSZTALY_OSSZES":' + (
|
||||
SELECT
|
||||
o.ID
|
||||
,o.C_KETTANNYELVU
|
||||
,o.C_NEMZETISEGI
|
||||
,o.C_NYELVIELOKESZITO
|
||||
,o.C_SPORT
|
||||
|
||||
,o.C_ALINTEZMENYID
|
||||
,o.C_ALTANEVID
|
||||
,o.TOROLT
|
||||
,o.SERIAL
|
||||
,o.LASTCHANGED
|
||||
,o.CREATED
|
||||
,o.MODIFIER
|
||||
,o.CREATOR
|
||||
,o.ELOZOTANEVIREKORDID
|
||||
,o.NNID
|
||||
,o.Operation
|
||||
FROM #OsztalyTempTable AS o
|
||||
FOR JSON PATH,INCLUDE_NULL_VALUES
|
||||
)
|
||||
|
||||
SET @actualJson = @actualJson + ' } }'
|
||||
|
||||
--NOTE: A törlés azért false, mert a T_OSZTALY_OSSZES view-ból nem törlünk importnál!
|
||||
EXECUTE uspDynamicImport @pIntezmenyId = @pIntezmenyId, @pTanevId = @pTanevId, @pUserId = @pUserId, @pImportJson = @actualJson, @pIsTorles = 0, @pIsSubTable = 1
|
||||
|
||||
--Csoportok beszúrása
|
||||
SET @actualJson = ' { "ImportJson":{ "T_CSOPORT_OSSZES":' + (
|
||||
SELECT
|
||||
cs.ID
|
||||
,cs.C_TIPUSA
|
||||
,cs.C_OSZTALYBONTASID
|
||||
|
||||
,cs.C_ALINTEZMENYID
|
||||
,cs.C_ALTANEVID
|
||||
,cs.TOROLT
|
||||
,cs.SERIAL
|
||||
,cs.LASTCHANGED
|
||||
,cs.CREATED
|
||||
,cs.MODIFIER
|
||||
,cs.CREATOR
|
||||
,cs.ELOZOTANEVIREKORDID
|
||||
,cs.NNID
|
||||
,cs.Operation
|
||||
FROM #CsoportTempTable AS cs
|
||||
FOR JSON PATH,INCLUDE_NULL_VALUES
|
||||
)
|
||||
|
||||
SET @actualJson = @actualJson + ' } }'
|
||||
|
||||
--NOTE: A törlés azért false, mert a T_CSOPORT_OSSZES view-ból nem törlünk importnál!
|
||||
EXECUTE uspDynamicImport @pIntezmenyId = @pIntezmenyId, @pTanevId = @pTanevId, @pUserId = @pUserId, @pImportJson = @actualJson, @pIsTorles = 0, @pIsSubTable = 1
|
||||
|
||||
--Foglalkozások beszúrása
|
||||
SET @actualJson = ' { "ImportJson":{ "T_FOGLALKOZAS_OSSZES":' + (
|
||||
SELECT
|
||||
fg.ID
|
||||
,fg.C_TANARID
|
||||
,fg.C_TANTARGYID
|
||||
,fg.C_OSZTALYCSOPORTID
|
||||
,fg.C_FOGLALKOZASTIPUSA
|
||||
,fg.C_ORASZAM
|
||||
,fg.C_NEV
|
||||
,fg.C_ERTEKELESKELL
|
||||
,fg.C_MULASZTASKELL
|
||||
,fg.C_TANARFELVEHETI
|
||||
,fg.C_TULORASZAM
|
||||
,fg.C_ISOSSZEVONTORA
|
||||
,fg.C_ISNEMZETISEGI
|
||||
,fg.C_MEGBIZASIORASZAM
|
||||
|
||||
,fg.C_IMPORTALT
|
||||
,fg.C_INTEZMENYID
|
||||
,fg.C_TANEVID
|
||||
,fg.TOROLT
|
||||
,fg.SERIAL
|
||||
,fg.LASTCHANGED
|
||||
,fg.CREATED
|
||||
,fg.MODIFIER
|
||||
,fg.CREATOR
|
||||
,fg.ELOZOTANEVIREKORDID
|
||||
,fg.NNID
|
||||
,fg.Operation
|
||||
FROM #FoglalkozasTempTable AS fg
|
||||
FOR JSON PATH,INCLUDE_NULL_VALUES
|
||||
)
|
||||
|
||||
SET @actualJson = @actualJson + ' } }'
|
||||
|
||||
EXECUTE uspDynamicImport @pIntezmenyId = @pIntezmenyId, @pTanevId = @pTanevId, @pUserId = @pUserId, @pImportJson = @actualJson, @pIsTorles = @pIsTorles, @pIsSubTable = 0
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue