init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,218 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_GenerateErtekelesekMagatartasSzorgalomTempTabla]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GenerateErtekelesekMagatartasSzorgalomTempTabla]
|
||||
END
|
||||
GO
|
||||
|
||||
-- =============================================
|
||||
-- Description: <Elõszedi a magatartas szorgalom értékeléseket, havi bontásban osztálycsoport alapján>
|
||||
-- NOTE: EZT A NÉGY TÁROLT ELJÁRÁST EGYBEN KELL KEZELNI, HA MÓDOSÍTJUK!!!
|
||||
-- - sp_GenerateErtekelesekTempTabla
|
||||
-- - sp_GenerateErtekelesekTempTablaByFoglalkozas
|
||||
-- - sp_GenerateErtekelesekMagatartasSzorgalomTempTabla
|
||||
-- - sp_GenerateErtekelesekTempTablaByTanulo
|
||||
-- =============================================
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_GenerateErtekelesekMagatartasSzorgalomTempTabla]
|
||||
-- Add the parameters for the stored procedure here
|
||||
@pOsztalyId INT,
|
||||
@pFelevVege DATE,
|
||||
@pEvkozi INT,
|
||||
@pFelevi INT,
|
||||
@pEvvegi INT,
|
||||
@pErtekelesDatum DATE = NULL
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from
|
||||
-- interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
IF @pErtekelesDatum IS NULL
|
||||
SET @pErtekelesDatum = GETDATE()
|
||||
|
||||
DECLARE @TempErtekeles TABLE (
|
||||
ID INT,
|
||||
ErtekelesDatuma NVARCHAR(255),
|
||||
ErtekelesTipusa INT,
|
||||
ErtekelesSzoveg NVARCHAR(MAX),
|
||||
SzovegRovidNev NVARCHAR(3),
|
||||
Honap NVARCHAR(2),
|
||||
TanuloId INT,
|
||||
Nev NVARCHAR(255),
|
||||
Osztalyzat INT,
|
||||
Magatartas INT,
|
||||
Szorgalom INT
|
||||
)
|
||||
|
||||
INSERT INTO @TempErtekeles
|
||||
SELECT DISTINCT *
|
||||
FROM (
|
||||
SELECT
|
||||
tanuloErtekeles.ID ID,
|
||||
tanuloErtekeles.C_ERTEKELESDATUM ErtekelesDatuma,
|
||||
tanuloErtekeles.C_ERTEKELESTIPUSA ErtekelesTipusa,
|
||||
tanuloErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg,
|
||||
tanuloErtekeles.C_SZOVEGROVIDNEV SzovegRovidNev,
|
||||
CASE WHEN tanuloErtekeles.C_ERTEKELESTIPUSA = @pFelevi
|
||||
THEN 'I'
|
||||
WHEN tanuloErtekeles.C_ERTEKELESTIPUSA = @pEvvegi
|
||||
THEN 'II'
|
||||
ELSE
|
||||
CASE
|
||||
WHEN CAST(tanuloErtekeles.C_ERTEKELESDATUM AS DATE) > @pFelevVege
|
||||
THEN CAST(MONTH(tanuloErtekeles.C_ERTEKELESDATUM) + 1 AS NVARCHAR(2))
|
||||
ELSE CAST(MONTH(tanuloErtekeles.C_ERTEKELESDATUM) AS NVARCHAR(2))
|
||||
END
|
||||
END Honap,
|
||||
tanuloCsoport.C_TANULOID TanuloId,
|
||||
felhasznalo.C_NYOMTATASINEV Nev,
|
||||
osztalyzat.C_VALUE Osztalyzat,
|
||||
magatartas.C_Value Magatartas,
|
||||
szorgalom.C_Value Szorgalom
|
||||
FROM (
|
||||
SELECT
|
||||
[C_TANULOID]
|
||||
FROM
|
||||
[T_TANULOCSOPORT]
|
||||
WHERE
|
||||
[TOROLT] = 'F' AND
|
||||
[C_BELEPESDATUM] <= @pErtekelesDatum AND
|
||||
([C_KILEPESDATUM] IS NULL OR [C_KILEPESDATUM] >= @pErtekelesDatum) AND
|
||||
[C_OSZTALYCSOPORTID] = @pOsztalyId
|
||||
) AS tanuloCsoport
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
[ID],
|
||||
[C_NYOMTATASINEV]
|
||||
FROM
|
||||
[T_FELHASZNALO]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
) AS felhasznalo
|
||||
ON felhasznalo.ID = tanuloCsoport.C_TANULOID
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
[ID],
|
||||
[C_ERTEKELESDATUM],
|
||||
[C_ERTEKELESTIPUSA],
|
||||
[C_OSZTALYZAT],
|
||||
[C_ERTEKELESSZOVEG],
|
||||
[C_SZOVEGROVIDNEV],
|
||||
[C_TANULOID]
|
||||
FROM
|
||||
[T_TANULOERTEKELES]
|
||||
WHERE
|
||||
[TOROLT] = 'F' AND
|
||||
[C_TANTARGYID] IS NULL
|
||||
) AS tanuloErtekeles
|
||||
ON tanuloErtekeles.C_TANULOID = tanuloCsoport.C_TANULOID
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
[ID],
|
||||
[C_MAGATARTAS],
|
||||
[C_SZORGALOM]
|
||||
FROM
|
||||
[T_OSZTALYFONOKIERTEKELES]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
) AS osztalyfonokiErtekeles
|
||||
ON osztalyfonokiErtekeles.ID = tanuloErtekeles.ID
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
[ID],
|
||||
[C_VALUE]
|
||||
FROM
|
||||
[T_DICTIONARYITEMBASE]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
) AS osztalyzat
|
||||
ON osztalyzat.ID = tanuloErtekeles.C_OSZTALYZAT
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
[ID],
|
||||
[C_VALUE]
|
||||
FROM
|
||||
[T_DICTIONARYITEMBASE]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
) AS magatartas
|
||||
ON magatartas.ID = osztalyfonokiErtekeles.C_MAGATARTAS
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
[ID],
|
||||
[C_VALUE]
|
||||
FROM
|
||||
[T_DICTIONARYITEMBASE]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
) AS szorgalom
|
||||
ON szorgalom.ID = osztalyfonokiErtekeles.C_SZORGALOM
|
||||
) AS temp
|
||||
|
||||
SELECT *
|
||||
FROM (
|
||||
SELECT
|
||||
pivotErtekelesek.TanuloId ID,
|
||||
Nev Nev,
|
||||
[9] [09],
|
||||
[10] [10],
|
||||
[11] [11],
|
||||
[12] [12],
|
||||
[1] [01I],
|
||||
[2] [01II],
|
||||
[3] [02],
|
||||
[4] [03],
|
||||
[5] [04],
|
||||
[6] [05],
|
||||
[7] [06],
|
||||
[I] [I],
|
||||
[II] [II],
|
||||
'' Ertekeles,
|
||||
'' ErtekelesSzoveg,
|
||||
'' SzovegRovidNev,
|
||||
'' Magatartas,
|
||||
'' Szorgalom
|
||||
FROM (
|
||||
SELECT DISTINCT
|
||||
tempErtekeles1.Nev,
|
||||
STUFF (
|
||||
(SELECT
|
||||
',' +
|
||||
ISNULL(CAST(tempErtekeles2.Osztalyzat AS VARCHAR(1)), '') +
|
||||
ISNULL(CAST(tempErtekeles2.Magatartas AS varchar(15)), '') + ',' + ISNULL(CAST(tempErtekeles2.Szorgalom AS varchar(15)), '') +
|
||||
ISNULL(CAST(
|
||||
CASE
|
||||
WHEN tempErtekeles2.ErtekelesSzoveg IS NULL OR LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(tempErtekeles2.ErtekelesSzoveg, CHAR(9), ''), CHAR(10), ''), CHAR(13), ''))) = ''
|
||||
THEN NULL
|
||||
ELSE
|
||||
ISNULL(tempErtekeles2.SzovegRovidNev, 'sz')
|
||||
END AS VARCHAR(2)), '')
|
||||
FROM
|
||||
@TempErtekeles tempErtekeles2
|
||||
WHERE
|
||||
tempErtekeles1.TanuloId = tempErtekeles2.TanuloId AND
|
||||
tempErtekeles1.Honap = tempErtekeles2.Honap
|
||||
FOR XML PATH ('')
|
||||
), 1, 1, ''
|
||||
) Ertekelesek,
|
||||
tempErtekeles1.Honap,
|
||||
tempErtekeles1.TanuloId
|
||||
FROM
|
||||
@TempErtekeles tempErtekeles1
|
||||
) AS erdemjegyek
|
||||
PIVOT (
|
||||
MAX(Ertekelesek)
|
||||
FOR Honap
|
||||
IN ([I], [II], [9] ,[10] ,[11] ,[12] ,[1] ,[2] ,[3] ,[4] ,[5] ,[6], [7])
|
||||
) AS pivotErtekelesek
|
||||
) AS result
|
||||
|
||||
IF OBJECT_ID('tempdb..#TempErtekeles') IS NOT NULL DROP TABLE #TempErtekeles
|
||||
|
||||
END
|
|
@ -0,0 +1,249 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_GenerateErtekelesekTempTabla]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GenerateErtekelesekTempTabla]
|
||||
END
|
||||
GO
|
||||
|
||||
-- =============================================
|
||||
-- Description: <Elõszedi az értékeléseket, havi bontásban tantárgy és osztálycsoport alapján>
|
||||
-- NOTE: EZT A NÉGY TÁROLT ELJÁRÁST EGYBEN KELL KEZELNI, HA MÓDOSÍTJUK!!!
|
||||
-- - sp_GenerateErtekelesekTempTabla
|
||||
-- - sp_GenerateErtekelesekTempTablaByFoglalkozas
|
||||
-- - sp_GenerateErtekelesekMagatartasSzorgalomTempTabla
|
||||
-- - sp_GenerateErtekelesekTempTablaByTanulo
|
||||
-- =============================================
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_GenerateErtekelesekTempTabla]
|
||||
-- Add the parameters for the stored procedure here
|
||||
@pTantargyId INT,
|
||||
@pOsztalyId INT,
|
||||
@pFelevVege DATE,
|
||||
@pEvkozi INT,
|
||||
@pFelevi INT,
|
||||
@pEvvegi INT,
|
||||
@pErtekelesDatum DATE = NULL
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from
|
||||
-- interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
IF @pErtekelesDatum IS NULL
|
||||
SET @pErtekelesDatum = GETDATE()
|
||||
|
||||
DECLARE @TempErtekeles TABLE (
|
||||
ID INT,
|
||||
ErtekelesDatuma NVARCHAR(255),
|
||||
ErtekelesTipusa INT,
|
||||
ErtekelesSzoveg NVARCHAR(MAX),
|
||||
SzovegRovidNev NVARCHAR(3),
|
||||
Honap NVARCHAR(2),
|
||||
TanuloId INT,
|
||||
Nev NVARCHAR(255),
|
||||
Osztalyzat INT,
|
||||
Szazalek INT,
|
||||
Suly INT
|
||||
)
|
||||
|
||||
INSERT INTO @TempErtekeles
|
||||
SELECT DISTINCT *
|
||||
FROM (
|
||||
SELECT
|
||||
tanuloErtekeles.ID ID,
|
||||
tanuloErtekeles.C_ERTEKELESDATUM ErtekelesDatuma,
|
||||
tanuloErtekeles.C_ERTEKELESTIPUSA ErtekelesTipusa,
|
||||
tanuloErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg,
|
||||
tanuloErtekeles.C_SZOVEGROVIDNEV SzovegRovidNev,
|
||||
CASE WHEN tanuloErtekeles.C_ERTEKELESTIPUSA = @pFelevi
|
||||
THEN 'I'
|
||||
WHEN tanuloErtekeles.C_ERTEKELESTIPUSA = @pEvvegi
|
||||
THEN 'II'
|
||||
ELSE
|
||||
CASE
|
||||
WHEN CAST(tanuloErtekeles.C_ERTEKELESDATUM AS DATE) > @pFelevVege
|
||||
THEN CAST(MONTH(tanuloErtekeles.C_ERTEKELESDATUM) + 1 AS NVARCHAR(2))
|
||||
ELSE CAST(MONTH(tanuloErtekeles.C_ERTEKELESDATUM) AS NVARCHAR(2))
|
||||
END
|
||||
END Honap,
|
||||
tanuloCsoport.C_TANULOID TanuloId,
|
||||
felhasznalo.C_NYOMTATASINEV Nev,
|
||||
osztalyzat.C_VALUE Osztalyzat,
|
||||
osztalyzatErtekeles.C_SZAZALEK Szazalek,
|
||||
tanariAtlagSuly.C_SULY Suly
|
||||
FROM (
|
||||
SELECT
|
||||
[C_TANULOID]
|
||||
FROM
|
||||
[T_TANULOCSOPORT]
|
||||
WHERE
|
||||
[TOROLT] = 'F' AND
|
||||
[C_BELEPESDATUM] <= @pErtekelesDatum AND
|
||||
([C_KILEPESDATUM] IS NULL OR [C_KILEPESDATUM] >= @pErtekelesDatum) AND
|
||||
[C_OSZTALYCSOPORTID] = @pOsztalyId
|
||||
) AS tanuloCsoport
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
[ID],
|
||||
[C_NYOMTATASINEV]
|
||||
FROM
|
||||
[T_FELHASZNALO]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
) AS felhasznalo
|
||||
ON felhasznalo.ID = tanuloCsoport.C_TANULOID
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
[ID],
|
||||
[C_ERTEKELESDATUM],
|
||||
[C_ERTEKELESTIPUSA],
|
||||
[C_OSZTALYZAT],
|
||||
[C_ERTEKELESSZOVEG],
|
||||
[C_SZOVEGROVIDNEV],
|
||||
[C_TANULOID]
|
||||
FROM
|
||||
[T_TANULOERTEKELES]
|
||||
WHERE
|
||||
[TOROLT] = 'F' AND
|
||||
[C_TANTARGYID] = @pTantargyId
|
||||
) AS tanuloErtekeles
|
||||
ON tanuloErtekeles.C_TANULOID = tanuloCsoport.C_TANULOID
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
[ID],
|
||||
[C_SZAZALEK],
|
||||
[C_ERTEKELESMODJA]
|
||||
FROM
|
||||
[T_OSZTALYZATERTEKELES]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
) AS osztalyzatErtekeles
|
||||
ON osztalyzatErtekeles.ID = tanuloErtekeles.ID
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
[ID],
|
||||
[C_VALUE]
|
||||
FROM
|
||||
[T_DICTIONARYITEMBASE]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
) AS osztalyzat
|
||||
ON osztalyzat.ID = tanuloErtekeles.C_OSZTALYZAT
|
||||
LEFT JOIN T_TANARIATLAGSULY tanariAtlagSuly
|
||||
ON tanariAtlagSuly.C_ERTEKELESMODJA = osztalyzatErtekeles.C_ERTEKELESMODJA AND
|
||||
tanuloErtekeles.C_OSZTALYZAT IS NOT NULL AND
|
||||
tanariAtlagSuly.TOROLT = 'F'
|
||||
) AS temp
|
||||
|
||||
SELECT
|
||||
result.*
|
||||
,result2.ErtkelesMentesseg
|
||||
,result2.SzovegesenErtekelheto
|
||||
FROM (
|
||||
SELECT
|
||||
pivotErtekelesek.TanuloId ID,
|
||||
Nev Nev,
|
||||
[9] [09],
|
||||
[10] [10],
|
||||
[11] [11],
|
||||
[12] [12],
|
||||
[1] [01I],
|
||||
[2] [01II],
|
||||
[3] [02],
|
||||
[4] [03],
|
||||
[5] [04],
|
||||
[6] [05],
|
||||
[7] [06],
|
||||
[I] [I],
|
||||
[II] [II],
|
||||
atlag.Jegy Atlag,
|
||||
'' Ertekeles,
|
||||
'' ErtekelesSzoveg,
|
||||
'' SzovegRovidNev,
|
||||
'' Szazalekos,
|
||||
@pTantargyId TantargyId
|
||||
FROM (
|
||||
SELECT DISTINCT
|
||||
tempErtekeles1.Nev,
|
||||
STUFF (
|
||||
(SELECT
|
||||
',' +
|
||||
ISNULL(CAST(tempErtekeles2.Osztalyzat AS VARCHAR(1)), '') +
|
||||
ISNULL(CAST(tempErtekeles2.Szazalek AS VARCHAR(2)), '') +
|
||||
ISNULL(CAST(
|
||||
CASE
|
||||
WHEN tempErtekeles2.ErtekelesSzoveg IS NULL OR LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(tempErtekeles2.ErtekelesSzoveg, CHAR(9), ''), CHAR(10), ''), CHAR(13), ''))) = ''
|
||||
THEN NULL
|
||||
ELSE
|
||||
ISNULL(tempErtekeles2.SzovegRovidNev, 'sz')
|
||||
END AS VARCHAR(2)), '')
|
||||
FROM
|
||||
@TempErtekeles tempErtekeles2
|
||||
WHERE
|
||||
tempErtekeles1.TanuloId = tempErtekeles2.TanuloId AND
|
||||
tempErtekeles1.Honap = tempErtekeles2.Honap
|
||||
FOR XML PATH ('')
|
||||
), 1, 1, ''
|
||||
) Ertekelesek,
|
||||
tempErtekeles1.Honap,
|
||||
tempErtekeles1.TanuloId
|
||||
FROM
|
||||
@TempErtekeles tempErtekeles1
|
||||
) AS erdemjegyek
|
||||
PIVOT (
|
||||
MAX(Ertekelesek)
|
||||
FOR Honap
|
||||
IN ([I], [II], [9] ,[10] ,[11] ,[12] ,[1] ,[2] ,[3] ,[4] ,[5] ,[6], [7])
|
||||
) AS pivotErtekelesek
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
TanuloId TanuloId,
|
||||
ROUND(
|
||||
SUM(CAST(Osztalyzat AS FLOAT) * CAST(ISNULL(Suly, 100) AS FLOAT) / 100) / SUM(CAST(ISNULL(Suly, 100) AS FLOAT) / 100)
|
||||
, 2) Jegy
|
||||
FROM
|
||||
@TempErtekeles
|
||||
WHERE
|
||||
ErtekelesTipusa = @pEvkozi AND
|
||||
Osztalyzat IS NOT NULL
|
||||
GROUP BY
|
||||
TanuloId
|
||||
) AS atlag
|
||||
ON pivotErtekelesek.TanuloId = atlag.TanuloId
|
||||
) AS result
|
||||
JOIN (
|
||||
SELECT
|
||||
felhasznalo.ID ID,
|
||||
tanuloMentesseg.C_ERTEKELESMENTESITES ErtkelesMentesseg,
|
||||
tanuloMentesseg.C_SZOVEGESENERTEKELHETO SzovegesenErtekelheto
|
||||
FROM
|
||||
T_TANULOCSOPORT AS tanuloCsoport
|
||||
INNER JOIN T_FELHASZNALO felhasznalo ON
|
||||
felhasznalo.ID = tanuloCsoport.C_TANULOID
|
||||
LEFT JOIN T_TARGYTANULOATLAG targyTanuloAtlag ON
|
||||
targyTanuloAtlag.C_TANTARGYID = @pTantargyId AND
|
||||
targyTanuloAtlag.C_TANULOID = felhasznalo.ID
|
||||
LEFT JOIN T_TANULOMENTESSEG tanuloMentesseg ON
|
||||
tanuloMentesseg.C_TANULOID = felhasznalo.ID AND
|
||||
tanuloMentesseg.TOROLT = 'F' AND
|
||||
tanuloMentesseg.C_TANTARGYID = @pTantargyId AND
|
||||
(tanuloMentesseg.C_KEZDETE IS NULL OR tanuloMentesseg.C_KEZDETE <= @pErtekelesDatum) AND
|
||||
(tanuloMentesseg.C_VEGE IS NULL OR tanuloMentesseg.C_VEGE >= @pErtekelesDatum)
|
||||
WHERE
|
||||
tanuloCsoport.TOROLT = 'F' AND
|
||||
tanuloCsoport.C_OSZTALYCSOPORTID = @pOsztalyId AND
|
||||
tanuloCsoport.C_BELEPESDATUM <= @pErtekelesDatum AND
|
||||
(tanuloCsoport.C_KILEPESDATUM IS NULL OR tanuloCsoport.C_KILEPESDATUM >= @pErtekelesDatum)
|
||||
) AS result2
|
||||
ON result2.ID = result.ID
|
||||
|
||||
IF OBJECT_ID('tempdb..#TempErtekeles') IS NOT NULL DROP TABLE #TempErtekeles
|
||||
|
||||
END
|
||||
GO
|
||||
|
|
@ -0,0 +1,259 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_GenerateErtekelesekTempTablaByFoglalkozas]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GenerateErtekelesekTempTablaByFoglalkozas]
|
||||
END
|
||||
GO
|
||||
|
||||
-- =============================================
|
||||
-- Description: <Előszedi az értékeléseket, havi bontásban foglalkozás alapján>
|
||||
-- NOTE: EZT A NÉGY TÁROLT ELJÁRÁST EGYBEN KELL KEZELNI, HA MÓDOSÍTJUK!!!
|
||||
-- - sp_GenerateErtekelesekTempTabla
|
||||
-- - sp_GenerateErtekelesekTempTablaByFoglalkozas
|
||||
-- - sp_GenerateErtekelesekMagatartasSzorgalomTempTabla
|
||||
-- - sp_GenerateErtekelesekTempTablaByTanulo
|
||||
-- =============================================
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_GenerateErtekelesekTempTablaByFoglalkozas]
|
||||
-- Add the parameters for the stored procedure here
|
||||
@pFoglalkozasId INT,
|
||||
@pFelevVege DATE,
|
||||
@pEvkozi INT,
|
||||
@pFelevi INT,
|
||||
@pEvvegi INT,
|
||||
@pErtekelesDatum DATE = NULL
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from
|
||||
-- interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
IF @pErtekelesDatum IS NULL
|
||||
SET @pErtekelesDatum = GETDATE()
|
||||
|
||||
DECLARE @OsztalyId INT;
|
||||
DECLARE @TantargyId INT;
|
||||
|
||||
SELECT
|
||||
@OsztalyId = foglalkozas.C_OSZTALYCSOPORTID,
|
||||
@TantargyId = foglalkozas.C_TANTARGYID
|
||||
FROM
|
||||
T_FOGLALKOZAS foglalkozas
|
||||
WHERE
|
||||
foglalkozas.ID = @pFoglalkozasId
|
||||
|
||||
DECLARE @TempErtekeles TABLE (
|
||||
ID INT,
|
||||
ErtekelesDatuma NVARCHAR(255),
|
||||
ErtekelesTipusa INT,
|
||||
ErtekelesSzoveg NVARCHAR(MAX),
|
||||
SzovegRovidNev NVARCHAR(3),
|
||||
Honap NVARCHAR(2),
|
||||
TanuloId INT,
|
||||
Nev NVARCHAR(255),
|
||||
Osztalyzat INT,
|
||||
Szazalek INT,
|
||||
Suly INT
|
||||
)
|
||||
|
||||
INSERT INTO @TempErtekeles
|
||||
SELECT DISTINCT *
|
||||
FROM (
|
||||
SELECT
|
||||
tanuloErtekeles.ID ID,
|
||||
tanuloErtekeles.C_ERTEKELESDATUM ErtekelesDatuma,
|
||||
tanuloErtekeles.C_ERTEKELESTIPUSA ErtekelesTipusa,
|
||||
tanuloErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg,
|
||||
tanuloErtekeles.C_SZOVEGROVIDNEV SzovegRovidNev,
|
||||
CASE WHEN tanuloErtekeles.C_ERTEKELESTIPUSA = @pFelevi
|
||||
THEN 'I'
|
||||
WHEN tanuloErtekeles.C_ERTEKELESTIPUSA = @pEvvegi
|
||||
THEN 'II'
|
||||
ELSE
|
||||
CASE
|
||||
WHEN CAST(tanuloErtekeles.C_ERTEKELESDATUM AS DATE) > @pFelevVege
|
||||
THEN CAST(MONTH(tanuloErtekeles.C_ERTEKELESDATUM) + 1 AS NVARCHAR(2))
|
||||
ELSE CAST(MONTH(tanuloErtekeles.C_ERTEKELESDATUM) AS NVARCHAR(2))
|
||||
END
|
||||
END Honap,
|
||||
tanuloCsoport.C_TANULOID TanuloId,
|
||||
felhasznalo.C_NYOMTATASINEV Nev,
|
||||
osztalyzat.C_VALUE Osztalyzat,
|
||||
osztalyzatErtekeles.C_SZAZALEK Szazalek,
|
||||
tanariAtlagSuly.C_SULY Suly
|
||||
FROM (
|
||||
SELECT
|
||||
[C_TANULOID]
|
||||
FROM
|
||||
[T_TANULOCSOPORT]
|
||||
WHERE
|
||||
[TOROLT] = 'F' AND
|
||||
[C_BELEPESDATUM] <= @pErtekelesDatum AND
|
||||
([C_KILEPESDATUM] IS NULL OR [C_KILEPESDATUM] >= @pErtekelesDatum) AND
|
||||
[C_OSZTALYCSOPORTID] = @OsztalyId
|
||||
) AS tanuloCsoport
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
[ID],
|
||||
[C_NYOMTATASINEV]
|
||||
FROM
|
||||
[T_FELHASZNALO]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
) AS felhasznalo
|
||||
ON felhasznalo.ID = tanuloCsoport.C_TANULOID
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
[ID],
|
||||
[C_ERTEKELESDATUM],
|
||||
[C_ERTEKELESTIPUSA],
|
||||
[C_OSZTALYZAT],
|
||||
[C_ERTEKELESSZOVEG],
|
||||
[C_SZOVEGROVIDNEV],
|
||||
[C_TANULOID]
|
||||
FROM
|
||||
[T_TANULOERTEKELES]
|
||||
WHERE
|
||||
[TOROLT] = 'F' AND
|
||||
[C_TANTARGYID] = @TantargyId
|
||||
) AS tanuloErtekeles
|
||||
ON tanuloErtekeles.C_TANULOID = tanuloCsoport.C_TANULOID
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
[ID],
|
||||
[C_SZAZALEK],
|
||||
[C_ERTEKELESMODJA]
|
||||
FROM
|
||||
[T_OSZTALYZATERTEKELES]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
) AS osztalyzatErtekeles
|
||||
ON osztalyzatErtekeles.ID = tanuloErtekeles.ID
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
[ID],
|
||||
[C_VALUE]
|
||||
FROM
|
||||
[T_DICTIONARYITEMBASE]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
) AS osztalyzat
|
||||
ON osztalyzat.ID = tanuloErtekeles.C_OSZTALYZAT
|
||||
LEFT JOIN T_TANARIATLAGSULY tanariAtlagSuly
|
||||
ON tanariAtlagSuly.C_ERTEKELESMODJA = osztalyzatErtekeles.C_ERTEKELESMODJA AND
|
||||
tanuloErtekeles.C_OSZTALYZAT IS NOT NULL AND
|
||||
tanariAtlagSuly.TOROLT = 'F'
|
||||
) AS temp
|
||||
|
||||
SELECT
|
||||
result.*
|
||||
,result2.ErtkelesMentesseg
|
||||
,result2.SzovegesenErtekelheto
|
||||
FROM (
|
||||
SELECT
|
||||
pivotErtekelesek.TanuloId ID,
|
||||
Nev Nev,
|
||||
[9] [09],
|
||||
[10] [10],
|
||||
[11] [11],
|
||||
[12] [12],
|
||||
[1] [01I],
|
||||
[2] [01II],
|
||||
[3] [02],
|
||||
[4] [03],
|
||||
[5] [04],
|
||||
[6] [05],
|
||||
[7] [06],
|
||||
[I] [I],
|
||||
[II] [II],
|
||||
atlag.Jegy Atlag,
|
||||
'' Ertekeles,
|
||||
'' ErtekelesSzoveg,
|
||||
'' SzovegRovidNev,
|
||||
'' Szazalekos,
|
||||
@TantargyId TantargyId
|
||||
FROM (
|
||||
SELECT DISTINCT
|
||||
tempErtekeles1.Nev,
|
||||
STUFF (
|
||||
(SELECT
|
||||
',' +
|
||||
ISNULL(CAST(tempErtekeles2.Osztalyzat AS VARCHAR(1)), '') +
|
||||
ISNULL(CAST(tempErtekeles2.Szazalek AS VARCHAR(2)), '') +
|
||||
ISNULL(CAST(
|
||||
CASE
|
||||
WHEN tempErtekeles2.ErtekelesSzoveg IS NULL OR LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(tempErtekeles2.ErtekelesSzoveg, CHAR(9), ''), CHAR(10), ''), CHAR(13), ''))) = ''
|
||||
THEN NULL
|
||||
ELSE
|
||||
ISNULL(tempErtekeles2.SzovegRovidNev, 'sz')
|
||||
END AS VARCHAR(2)), '')
|
||||
FROM
|
||||
@TempErtekeles tempErtekeles2
|
||||
WHERE
|
||||
tempErtekeles1.TanuloId = tempErtekeles2.TanuloId AND
|
||||
tempErtekeles1.Honap = tempErtekeles2.Honap
|
||||
FOR XML PATH ('')
|
||||
), 1, 1, ''
|
||||
) Ertekelesek,
|
||||
tempErtekeles1.Honap,
|
||||
tempErtekeles1.TanuloId
|
||||
FROM
|
||||
@TempErtekeles tempErtekeles1
|
||||
) AS erdemjegyek
|
||||
PIVOT (
|
||||
MAX(Ertekelesek)
|
||||
FOR Honap
|
||||
IN ([I], [II], [9] ,[10] ,[11] ,[12] ,[1] ,[2] ,[3] ,[4] ,[5] ,[6], [7])
|
||||
) AS pivotErtekelesek
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
TanuloId TanuloId,
|
||||
ROUND(
|
||||
SUM(CAST(Osztalyzat AS FLOAT) * CAST(ISNULL(Suly, 100) AS FLOAT) / 100) / SUM(CAST(ISNULL(Suly, 100) AS FLOAT) / 100)
|
||||
, 2) Jegy
|
||||
FROM
|
||||
@TempErtekeles
|
||||
WHERE
|
||||
ErtekelesTipusa = @pEvkozi AND
|
||||
Osztalyzat IS NOT NULL
|
||||
GROUP BY
|
||||
TanuloId
|
||||
) AS atlag
|
||||
ON pivotErtekelesek.TanuloId = atlag.TanuloId
|
||||
) AS result
|
||||
JOIN (
|
||||
SELECT
|
||||
felhasznalo.ID ID,
|
||||
tanuloMentesseg.C_ERTEKELESMENTESITES ErtkelesMentesseg,
|
||||
tanuloMentesseg.C_SZOVEGESENERTEKELHETO SzovegesenErtekelheto
|
||||
FROM
|
||||
T_TANULOCSOPORT AS tanuloCsoport
|
||||
INNER JOIN T_FELHASZNALO felhasznalo ON
|
||||
felhasznalo.ID = tanuloCsoport.C_TANULOID
|
||||
LEFT JOIN T_TARGYTANULOATLAG targyTanuloAtlag ON
|
||||
targyTanuloAtlag.C_TANTARGYID = @TantargyId AND
|
||||
targyTanuloAtlag.C_TANULOID = felhasznalo.ID
|
||||
LEFT JOIN T_TANULOMENTESSEG tanuloMentesseg ON
|
||||
tanuloMentesseg.C_TANULOID = felhasznalo.ID AND
|
||||
tanuloMentesseg.TOROLT = 'F' AND
|
||||
tanuloMentesseg.C_TANTARGYID = @TantargyId AND
|
||||
(tanuloMentesseg.C_KEZDETE IS NULL OR tanuloMentesseg.C_KEZDETE <= @pErtekelesDatum) AND
|
||||
(tanuloMentesseg.C_VEGE IS NULL OR tanuloMentesseg.C_VEGE >= @pErtekelesDatum)
|
||||
WHERE
|
||||
tanuloCsoport.TOROLT = 'F' AND
|
||||
tanuloCsoport.C_OSZTALYCSOPORTID = @OsztalyId AND
|
||||
tanuloCsoport.C_BELEPESDATUM <= @pErtekelesDatum AND
|
||||
(tanuloCsoport.C_KILEPESDATUM IS NULL OR tanuloCsoport.C_KILEPESDATUM >= @pErtekelesDatum)
|
||||
) AS result2
|
||||
ON result2.ID = result.ID
|
||||
|
||||
IF OBJECT_ID('tempdb..#TempErtekeles') IS NOT NULL DROP TABLE #TempErtekeles
|
||||
|
||||
END
|
||||
GO
|
||||
|
|
@ -0,0 +1,227 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_GenerateErtekelesekTempTablaByTanulo]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GenerateErtekelesekTempTablaByTanulo]
|
||||
END
|
||||
GO
|
||||
|
||||
-- =============================================
|
||||
-- Description: <Elõszedi az értékeléseket, havi bontásban tantárgy és osztálycsoport alapján>
|
||||
-- NOTE: EZT A NÉGY TÁROLT ELJÁRÁST EGYBEN KELL KEZELNI, HA MÓDOSÍTJUK!!!
|
||||
-- - sp_GenerateErtekelesekTempTabla
|
||||
-- - sp_GenerateErtekelesekTempTablaByFoglalkozas
|
||||
-- - sp_GenerateErtekelesekMagatartasSzorgalomTempTabla
|
||||
-- - sp_GenerateErtekelesekTempTablaByTanulo
|
||||
-- =============================================
|
||||
|
||||
CREATE PROCEDURE [dbo].[sp_GenerateErtekelesekTempTablaByTanulo]
|
||||
-- Add the parameters for the stored procedure here
|
||||
@pTanuloId INT,
|
||||
@pFelevVege DATE,
|
||||
@pEvkozi INT,
|
||||
@pFelevi INT,
|
||||
@pEvvegi INT
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from
|
||||
-- interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE @TempErtekeles TABLE (
|
||||
ID INT,
|
||||
ErtekelesDatuma NVARCHAR(255),
|
||||
ErtekelesTipusa INT,
|
||||
ErtekelesSzoveg NVARCHAR(MAX),
|
||||
Honap NVARCHAR(2),
|
||||
SzovegRovidNev NVARCHAR(3),
|
||||
TantargyId INT,
|
||||
Nev NVARCHAR(255),
|
||||
Osztalyzat INT,
|
||||
Szazalek INT,
|
||||
Suly INT,
|
||||
TantargyKategoria INT
|
||||
)
|
||||
|
||||
INSERT INTO @TempErtekeles
|
||||
SELECT DISTINCT *
|
||||
FROM (
|
||||
SELECT
|
||||
tanuloErtekeles.ID ID,
|
||||
tanuloErtekeles.C_ERTEKELESDATUM ErtekelesDatuma,
|
||||
tanuloErtekeles.C_ERTEKELESTIPUSA ErtekelesTipusa,
|
||||
tanuloErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg,
|
||||
tanuloErtekeles.C_SZOVEGROVIDNEV SzovegRovidNev,
|
||||
CASE WHEN tanuloErtekeles.C_ERTEKELESTIPUSA = @pFelevi
|
||||
THEN 'I'
|
||||
WHEN tanuloErtekeles.C_ERTEKELESTIPUSA = @pEvvegi
|
||||
THEN 'II'
|
||||
ELSE
|
||||
CASE
|
||||
WHEN CAST(tanuloErtekeles.C_ERTEKELESDATUM AS DATE) > @pFelevVege
|
||||
THEN CAST(MONTH(tanuloErtekeles.C_ERTEKELESDATUM) + 1 AS NVARCHAR(2))
|
||||
ELSE CAST(MONTH(tanuloErtekeles.C_ERTEKELESDATUM) AS NVARCHAR(2))
|
||||
END
|
||||
END Honap,
|
||||
tanuloErtekeles.C_TANTARGYID TantargyId,
|
||||
tantargy.C_NEV Nev,
|
||||
osztalyzat.C_VALUE Osztalyzat,
|
||||
osztalyzatErtekeles.C_SZAZALEK Szazalek,
|
||||
tanariAtlagSuly.C_SULY Suly,
|
||||
tantargyKategoria.C_VALUE TantargyKategoria
|
||||
FROM (
|
||||
SELECT
|
||||
[ID],
|
||||
[C_NYOMTATASINEV]
|
||||
FROM
|
||||
[T_FELHASZNALO]
|
||||
WHERE
|
||||
[TOROLT] = 'F' AND
|
||||
[ID] = @pTanuloId
|
||||
) AS felhasznalo
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
[ID],
|
||||
[C_ERTEKELESDATUM],
|
||||
[C_ERTEKELESTIPUSA],
|
||||
[C_OSZTALYZAT],
|
||||
[C_ERTEKELESSZOVEG],
|
||||
[C_SZOVEGROVIDNEV],
|
||||
[C_TANTARGYID],
|
||||
[C_TANULOID]
|
||||
FROM
|
||||
[T_TANULOERTEKELES]
|
||||
WHERE
|
||||
[TOROLT] = 'F' AND
|
||||
[C_TANTARGYID] IS NOT NULL
|
||||
) AS tanuloErtekeles
|
||||
ON tanuloErtekeles.C_TANULOID = @pTanuloId
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
[ID],
|
||||
[C_SZAZALEK],
|
||||
[C_ERTEKELESMODJA]
|
||||
FROM
|
||||
[T_OSZTALYZATERTEKELES]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
) AS osztalyzatErtekeles
|
||||
ON osztalyzatErtekeles.ID = tanuloErtekeles.ID
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
[ID],
|
||||
[C_NEV],
|
||||
[C_TARGYKATEGORIA]
|
||||
FROM
|
||||
[T_TANTARGY]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
) AS tantargy
|
||||
ON tantargy.ID = tanuloErtekeles.C_TANTARGYID
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
[ID],
|
||||
[C_VALUE]
|
||||
FROM
|
||||
[T_DICTIONARYITEMBASE]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
) AS osztalyzat
|
||||
ON osztalyzat.ID = tanuloErtekeles.C_OSZTALYZAT
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
[ID],
|
||||
[C_VALUE]
|
||||
FROM
|
||||
[T_DICTIONARYITEMBASE]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
) AS tantargyKategoria
|
||||
ON tantargyKategoria.ID = tantargy.C_TARGYKATEGORIA
|
||||
LEFT JOIN T_TANARIATLAGSULY tanariAtlagSuly
|
||||
ON tanariAtlagSuly.C_ERTEKELESMODJA = osztalyzatErtekeles.C_ERTEKELESMODJA AND
|
||||
tanuloErtekeles.C_OSZTALYZAT IS NOT NULL AND
|
||||
tanariAtlagSuly.TOROLT = 'F'
|
||||
) AS temp
|
||||
|
||||
SELECT *
|
||||
FROM (
|
||||
SELECT
|
||||
pivotErtekelesek.TantargyId ID,
|
||||
Nev Nev,
|
||||
[9] [09],
|
||||
[10] [10],
|
||||
[11] [11],
|
||||
[12] [12],
|
||||
[1] [01I],
|
||||
[2] [01II],
|
||||
[3] [02],
|
||||
[4] [03],
|
||||
[5] [04],
|
||||
[6] [05],
|
||||
[7] [06],
|
||||
[I] [I],
|
||||
[II] [II],
|
||||
atlag.Jegy Atlag,
|
||||
@pTanuloId TanuloId,
|
||||
pivotErtekelesek.TantargyKategoria TantargyKategoria
|
||||
FROM (
|
||||
SELECT DISTINCT
|
||||
tempErtekeles1.Nev,
|
||||
STUFF (
|
||||
(SELECT
|
||||
',' +
|
||||
ISNULL(CAST(tempErtekeles2.Osztalyzat AS VARCHAR(1)), '') +
|
||||
ISNULL(CAST(tempErtekeles2.Szazalek AS VARCHAR(2)), '') +
|
||||
ISNULL(CAST(
|
||||
CASE
|
||||
WHEN tempErtekeles2.ErtekelesSzoveg IS NULL OR LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(tempErtekeles2.ErtekelesSzoveg, CHAR(9), ''), CHAR(10), ''), CHAR(13), ''))) = ''
|
||||
THEN NULL
|
||||
ELSE
|
||||
ISNULL(tempErtekeles2.SzovegRovidNev, 'sz')
|
||||
END AS VARCHAR(2)), '')
|
||||
FROM
|
||||
@TempErtekeles tempErtekeles2
|
||||
WHERE
|
||||
tempErtekeles1.TantargyId = tempErtekeles2.TantargyId AND
|
||||
tempErtekeles1.Honap = tempErtekeles2.Honap
|
||||
FOR XML PATH ('')
|
||||
), 1, 1, ''
|
||||
) Ertekelesek,
|
||||
tempErtekeles1.Honap,
|
||||
tempErtekeles1.TantargyId,
|
||||
tempErtekeles1.TantargyKategoria
|
||||
FROM
|
||||
@TempErtekeles tempErtekeles1
|
||||
) AS erdemjegyek
|
||||
PIVOT (
|
||||
MAX(Ertekelesek)
|
||||
FOR Honap
|
||||
IN ([I], [II], [9] ,[10] ,[11] ,[12] ,[1] ,[2] ,[3] ,[4] ,[5] ,[6], [7])
|
||||
) AS pivotErtekelesek
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
TantargyId TantargyId,
|
||||
ROUND(
|
||||
SUM(CAST(Osztalyzat AS FLOAT) * CAST(ISNULL(Suly, 100) AS FLOAT) / 100) / SUM(CAST(ISNULL(Suly, 100) AS FLOAT) / 100)
|
||||
, 2) Jegy
|
||||
FROM
|
||||
@TempErtekeles
|
||||
WHERE
|
||||
ErtekelesTipusa = @pEvkozi AND
|
||||
Osztalyzat IS NOT NULL
|
||||
GROUP BY
|
||||
TantargyId
|
||||
) AS atlag
|
||||
ON pivotErtekelesek.TantargyId = atlag.TantargyId
|
||||
) AS result
|
||||
|
||||
IF OBJECT_ID('tempdb..#TempErtekeles') IS NOT NULL DROP TABLE #TempErtekeles
|
||||
|
||||
END
|
||||
GO
|
||||
|
|
@ -0,0 +1,88 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_GetErtekelesMegtekinteseReszletek]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GetErtekelesMegtekinteseReszletek]
|
||||
END
|
||||
GO
|
||||
|
||||
-- =============================================
|
||||
-- Author: <Szikora Zoltán>
|
||||
-- Create date: <2016. 09. 02.>
|
||||
-- Description: <Előszedjük a tanuló értékeléseit részletesen>
|
||||
-- =============================================
|
||||
CREATE PROCEDURE [dbo].[sp_GetErtekelesMegtekinteseReszletek]
|
||||
@pTanuloId INT
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from
|
||||
-- interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
SELECT
|
||||
TanuloErtekeles.ID ID
|
||||
,TanuloErtekeles.C_ERTEKELESDATUM ErtekelesDatuma
|
||||
,TanuloErtekeles.C_ERTEKELESTIPUSA ErtekelesTipusa
|
||||
,TanuloErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg
|
||||
,TanuloErtekeles.C_SZOVEGROVIDNEV SzovegRovidNev
|
||||
,TanuloErtekeles.C_OSZTALYZAT Osztalyzat
|
||||
,TanuloErtekeles.C_TANORAID TanoraID
|
||||
,OsztalyzatErtekeles.C_ERTEKELESMODJA ErtekelesModja
|
||||
,OsztalyzatErtekeles.C_SZAZALEK Szazalek
|
||||
,OsztalyzatErtekeles.C_TEMA Tema
|
||||
,TanuloCsoport.C_TANULOID TanuloId
|
||||
,Felhasznalo.C_NYOMTATASINEV Ertekelo
|
||||
FROM(
|
||||
SELECT DISTINCT
|
||||
[C_TANULOID]
|
||||
FROM
|
||||
[T_TANULOCSOPORT]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
AND [C_TANULOID] = @pTanuloId
|
||||
) AS TanuloCsoport
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
[ID]
|
||||
,[C_ERTEKELESDATUM]
|
||||
,[C_ERTEKELESTIPUSA]
|
||||
,[C_ERTEKELESSZOVEG]
|
||||
,[C_SZOVEGROVIDNEV]
|
||||
,[C_OSZTALYZAT]
|
||||
,[C_TANULOID]
|
||||
,[C_ERTEKELOID]
|
||||
,[C_TANORAID]
|
||||
FROM
|
||||
[T_TANULOERTEKELES]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
) AS TanuloErtekeles
|
||||
ON TanuloCsoport.C_TANULOID = TanuloErtekeles.C_TANULOID
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
[ID]
|
||||
,[C_ERTEKELESMODJA]
|
||||
,[C_SZAZALEK]
|
||||
,[C_TEMA]
|
||||
FROM
|
||||
[T_OSZTALYZATERTEKELES]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
) AS OsztalyzatErtekeles
|
||||
ON OsztalyzatErtekeles.ID = TanuloErtekeles.ID
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
[ID]
|
||||
,[C_NYOMTATASINEV]
|
||||
FROM
|
||||
[T_FELHASZNALO]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
) AS Felhasznalo
|
||||
ON Felhasznalo.ID = TanuloErtekeles.C_ERTEKELOID
|
||||
|
||||
END
|
|
@ -0,0 +1,56 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_GetErtekelesMondatbankData]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GetErtekelesMondatbankData]
|
||||
END
|
||||
GO
|
||||
|
||||
-- =============================================
|
||||
-- Description: <Előszedjük az intézmény értékelés mondatbank adatait a bemenő paraméterek alapján>
|
||||
-- =============================================
|
||||
CREATE PROCEDURE [dbo].[sp_GetErtekelesMondatbankData]
|
||||
@pIntezmenyId INT
|
||||
,@pTanevId INT
|
||||
,@pErtekelesTipusId INT = NULL
|
||||
,@pEvfolyamTipusId INT = NULL
|
||||
,@pTantargyId INT = NULL
|
||||
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from
|
||||
-- interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
SELECT
|
||||
ErtekelesMondatbank.ID ID
|
||||
,ErtekelesMondatbank.C_ROVIDNEV RovidNev
|
||||
,ErtekelesMondatbank.C_SZOVEG Szoveg
|
||||
,ErtekelesMondatbank.C_ERTEKELESTIPUSA ErtekelesTipus
|
||||
,ErtekelesMondatbank.C_EVFOLYAMTIPUSA EvfolyamTipus
|
||||
,Tantargy.C_NEV TantargyNev
|
||||
FROM
|
||||
T_ERTEKELESMONDATBANK_OSSZES ErtekelesMondatbank
|
||||
LEFT JOIN
|
||||
T_TANTARGY_OSSZES Tantargy ON
|
||||
Tantargy.ID = ErtekelesMondatbank.C_TANTARGYID
|
||||
AND Tantargy.C_INTEZMENYID = @pIntezmenyId
|
||||
AND Tantargy.C_TANEVID = @pTanevId
|
||||
AND Tantargy.TOROLT = 'F'
|
||||
WHERE
|
||||
(@pErtekelesTipusId IS NULL OR ErtekelesMondatbank.C_ERTEKELESTIPUSA IS NULL OR ErtekelesMondatbank.C_ERTEKELESTIPUSA = @pErtekelesTipusId)
|
||||
AND (@pEvfolyamTipusId IS NULL OR ErtekelesMondatbank.C_EVFOLYAMTIPUSA IS NULL OR ErtekelesMondatbank.C_EVFOLYAMTIPUSA = @pEvfolyamTipusId)
|
||||
AND (@pTantargyId IS NULL OR ErtekelesMondatbank.C_TANTARGYID IS NULL OR ErtekelesMondatbank.C_TANTARGYID = @pTantargyId)
|
||||
AND ErtekelesMondatbank.C_INTEZMENYID = @pIntezmenyId
|
||||
AND ErtekelesMondatbank.C_TANEVID = @pTanevId
|
||||
AND ErtekelesMondatbank.TOROLT = 'F'
|
||||
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
|
|
@ -0,0 +1,125 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_GetErtekelesReszletek]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GetErtekelesReszletek]
|
||||
END
|
||||
GO
|
||||
|
||||
-- =============================================
|
||||
-- Description: <Előszedjük a tanuló értékeléseit részletesen tantárgy szerint>
|
||||
-- =============================================
|
||||
CREATE PROCEDURE [dbo].[sp_GetErtekelesReszletek]
|
||||
@pIntezmenyId INT,
|
||||
@pTanevId INT,
|
||||
@pTanuloId INT,
|
||||
@pTantargyId INT,
|
||||
@pToroltElemek CHAR = 'F',
|
||||
@pTanarId INT
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from
|
||||
-- interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
SELECT
|
||||
TanuloErtekeles.ID ID
|
||||
,TanuloErtekeles.C_ERTEKELESDATUM ErtekelesDatuma
|
||||
,TanuloErtekeles.C_ERTEKELESTIPUSA ErtekelesTipusa
|
||||
,TanuloErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg
|
||||
,TanuloErtekeles.C_SZOVEGROVIDNEV SzovegRovidNev
|
||||
,TanuloErtekeles.C_OSZTALYZAT Osztalyzat
|
||||
,TanuloErtekeles.C_TANORAID TanoraID
|
||||
,OsztalyzatErtekeles.C_ERTEKELESMODJA ErtekelesModja
|
||||
,OsztalyzatErtekeles.C_SZAZALEK Szazalek
|
||||
,OsztalyzatErtekeles.C_TEMA Tema
|
||||
,TanariAtlagSuly.C_SULY Suly
|
||||
,TanuloErtekeles.TOROLT Torolt
|
||||
,TanuloCsoport.C_TANULOID TanuloId
|
||||
,Felhasznalo.C_NYOMTATASINEV Ertekelo
|
||||
,CASE
|
||||
WHEN TanuloErtekeles.C_ERTEKELOID = @pTanarId
|
||||
THEN 'T'
|
||||
ELSE 'F'
|
||||
END Modosithato
|
||||
|
||||
FROM(
|
||||
SELECT DISTINCT
|
||||
[C_TANULOID]
|
||||
FROM
|
||||
[T_TANULOCSOPORT]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
AND [C_TANULOID] = @pTanuloId
|
||||
AND [C_INTEZMENYID] = @pIntezmenyId
|
||||
AND [C_TANEVID] = @pTanevId
|
||||
) AS TanuloCsoport
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
[ID]
|
||||
,[C_ERTEKELESDATUM]
|
||||
,[C_ERTEKELESTIPUSA]
|
||||
,[C_ERTEKELESSZOVEG]
|
||||
,[C_SZOVEGROVIDNEV]
|
||||
,[C_OSZTALYZAT]
|
||||
,[C_TANULOID]
|
||||
,[C_ERTEKELOID]
|
||||
,[C_TANORAID]
|
||||
,[TOROLT]
|
||||
,[CREATOR]
|
||||
FROM
|
||||
[T_TANULOERTEKELES_OSSZES]
|
||||
WHERE
|
||||
[C_TANTARGYID] = @pTantargyId
|
||||
--Ha a törölt flag True, a törölt elemeket is visszaadjuk
|
||||
AND [TOROLT] = IIF(@pToroltElemek = 'T', [TOROLT], 'F')
|
||||
AND [C_INTEZMENYID] = @pIntezmenyId
|
||||
AND [C_TANEVID] = @pTanevId
|
||||
) AS TanuloErtekeles
|
||||
ON TanuloCsoport.C_TANULOID = TanuloErtekeles.C_TANULOID
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
[ID]
|
||||
,[C_ERTEKELESMODJA]
|
||||
,[C_SZAZALEK]
|
||||
,[C_TEMA]
|
||||
,[TOROLT]
|
||||
FROM
|
||||
[T_OSZTALYZATERTEKELES_OSSZES]
|
||||
WHERE
|
||||
--Ha a törölt flag True, a törölt elemeket is visszaadjuk
|
||||
[TOROLT] = IIF(@pToroltElemek = 'T', [TOROLT], 'F')
|
||||
AND [C_ALINTEZMENYID] = @pIntezmenyId
|
||||
AND [C_ALTANEVID] = @pTanevId
|
||||
) AS OsztalyzatErtekeles
|
||||
ON OsztalyzatErtekeles.ID = TanuloErtekeles.ID
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
[ID]
|
||||
,[C_NYOMTATASINEV]
|
||||
FROM
|
||||
[T_FELHASZNALO]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
AND [C_INTEZMENYID] = @pIntezmenyId
|
||||
AND [C_TANEVID] = @pTanevId
|
||||
) AS Felhasznalo
|
||||
ON Felhasznalo.ID = TanuloErtekeles.C_ERTEKELOID
|
||||
LEFT JOIN (
|
||||
SELECT
|
||||
[C_SULY]
|
||||
,[C_ERTEKELESMODJA]
|
||||
FROM
|
||||
[T_TANARIATLAGSULY_OSSZES]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
AND [C_INTEZMENYID] = @pIntezmenyId
|
||||
AND [C_TANEVID] = @pTanevId
|
||||
) AS TanariAtlagSuly
|
||||
ON TanariAtlagSuly.C_ERTEKELESMODJA = OsztalyzatErtekeles.C_ERTEKELESMODJA
|
||||
|
||||
END
|
|
@ -0,0 +1,107 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_GetMagatartasSzorgalomErtekelesReszletek]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_GetMagatartasSzorgalomErtekelesReszletek]
|
||||
END
|
||||
GO
|
||||
|
||||
-- =============================================
|
||||
-- Description: <Előszedjük a tanuló magatartás, szorgalom értékeléseit részletesen>
|
||||
-- =============================================
|
||||
CREATE PROCEDURE [dbo].[sp_GetMagatartasSzorgalomErtekelesReszletek]
|
||||
@pIntezmenyId INT,
|
||||
@pTanevId INT,
|
||||
@pTanuloId INT,
|
||||
@pToroltElemek CHAR = 'F',
|
||||
@pTanarId INT
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from
|
||||
-- interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
SELECT
|
||||
TanuloErtekeles.ID ID
|
||||
,TanuloErtekeles.C_ERTEKELESDATUM ErtekelesDatuma
|
||||
,TanuloErtekeles.C_ERTEKELESTIPUSA ErtekelesTipusa
|
||||
,TanuloErtekeles.C_ERTEKELESSZOVEG ErtekelesSzoveg
|
||||
,TanuloErtekeles.C_SZOVEGROVIDNEV SzovegRovidNev
|
||||
,TanuloErtekeles.C_OSZTALYZAT Osztalyzat
|
||||
,TanuloErtekeles.C_TANORAID TanoraID
|
||||
,OsztalyfonokiErtekeles.C_MAGATARTAS Magatartas
|
||||
,OsztalyfonokiErtekeles.C_SZORGALOM Szorgalom
|
||||
,TanuloErtekeles.TOROLT Torolt
|
||||
,TanuloCsoport.C_TANULOID TanuloId
|
||||
,Felhasznalo.C_NYOMTATASINEV Ertekelo
|
||||
,CASE
|
||||
WHEN TanuloErtekeles.C_ERTEKELOID = @pTanarId
|
||||
THEN 'T'
|
||||
ELSE 'F'
|
||||
END Modosithato
|
||||
FROM(
|
||||
SELECT DISTINCT
|
||||
[C_TANULOID]
|
||||
FROM
|
||||
[T_TANULOCSOPORT]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
AND [C_TANULOID] = @pTanuloId
|
||||
AND [C_INTEZMENYID] = @pIntezmenyId
|
||||
AND [C_TANEVID] = @pTanevId
|
||||
) AS TanuloCsoport
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
[ID]
|
||||
,[C_ERTEKELESDATUM]
|
||||
,[C_ERTEKELESTIPUSA]
|
||||
,[C_ERTEKELESSZOVEG]
|
||||
,[C_SZOVEGROVIDNEV]
|
||||
,[C_OSZTALYZAT]
|
||||
,[C_TANULOID]
|
||||
,[C_ERTEKELOID]
|
||||
,[C_TANORAID]
|
||||
,[TOROLT]
|
||||
,[CREATOR]
|
||||
FROM
|
||||
[T_TANULOERTEKELES_OSSZES]
|
||||
WHERE
|
||||
--Ha a törölt flag True, a törölt elemeket is visszaadjuk
|
||||
[TOROLT] = IIF(@pToroltElemek = 'T', [TOROLT], 'F')
|
||||
AND [C_INTEZMENYID] = @pIntezmenyId
|
||||
AND [C_TANEVID] = @pTanevId
|
||||
) AS TanuloErtekeles
|
||||
ON TanuloCsoport.C_TANULOID = TanuloErtekeles.C_TANULOID
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
[ID]
|
||||
,[C_MAGATARTAS]
|
||||
,[C_SZORGALOM]
|
||||
,[TOROLT]
|
||||
FROM
|
||||
[T_OSZTALYFONOKIERTEKELES_OSSZES]
|
||||
WHERE
|
||||
--Ha a törölt flag True, a törölt elemeket is visszaadjuk
|
||||
[TOROLT] = IIF(@pToroltElemek = 'T', [TOROLT], 'F')
|
||||
AND [C_ALINTEZMENYID] = @pIntezmenyId
|
||||
AND [C_ALTANEVID] = @pTanevId
|
||||
) AS OsztalyfonokiErtekeles
|
||||
ON OsztalyfonokiErtekeles.ID = TanuloErtekeles.ID
|
||||
INNER JOIN (
|
||||
SELECT
|
||||
[ID]
|
||||
,[C_NYOMTATASINEV]
|
||||
FROM
|
||||
[T_FELHASZNALO]
|
||||
WHERE
|
||||
[TOROLT] = 'F'
|
||||
AND [C_INTEZMENYID] = @pIntezmenyId
|
||||
AND [C_TANEVID] = @pTanevId
|
||||
) AS Felhasznalo
|
||||
ON Felhasznalo.ID = TanuloErtekeles.C_ERTEKELOID
|
||||
|
||||
END
|
|
@ -0,0 +1,101 @@
|
|||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
|
||||
IF OBJECT_ID('[dbo].[sp_ImportErtekelesMondatbank]') IS NOT NULL
|
||||
BEGIN
|
||||
DROP PROCEDURE [dbo].[sp_ImportErtekelesMondatbank]
|
||||
END
|
||||
GO
|
||||
|
||||
-- =============================================
|
||||
-- Description: <Beimportáljuk az értékelés mondatbankot>
|
||||
-- =============================================
|
||||
CREATE PROCEDURE [dbo].[sp_ImportErtekelesMondatbank]
|
||||
@pIntezmenyId INT
|
||||
,@pTanevId INT
|
||||
,@pFelhasznaloId INT
|
||||
,@pErtekelesMondatbankImportDataXml XML
|
||||
,@pErtekelesTipusId INT = NULL
|
||||
,@pEvfolyamTipusId INT = NULL
|
||||
,@pTantargyId INT = NULL
|
||||
AS
|
||||
|
||||
BEGIN
|
||||
|
||||
-- SET NOCOUNT ON added to prevent extra result sets from
|
||||
-- interfering with SELECT statements.
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE @tempErtekelesMondatbankImportData TABLE (
|
||||
RovidNev NVARCHAR(3) NOT NULL
|
||||
,Szoveg NVARCHAR(MAX) NULL
|
||||
)
|
||||
|
||||
DECLARE @currentDateTime DATETIME
|
||||
SET @currentDateTime = (SELECT GETDATE())
|
||||
|
||||
-- XML paraméter értelmezése
|
||||
INSERT INTO
|
||||
@tempErtekelesMondatbankImportData
|
||||
SELECT
|
||||
--Egyszerû import adatok
|
||||
ErtekelesMondatbankItem.value('(RovidNev)[1]', 'NVARCHAR(3)') RovidNev
|
||||
,ErtekelesMondatbankItem.value('(Szoveg)[1]', 'NVARCHAR(MAX)') Szoveg
|
||||
FROM
|
||||
@pErtekelesMondatbankImportDataXml.nodes('/ErtekelesMondatbankImport/ErtekelesMondatbank/ErtekelesMondatbankItem') AS ErtekelesMondatbank(ErtekelesMondatbankItem)
|
||||
|
||||
BEGIN TRY
|
||||
SET XACT_ABORT ON
|
||||
|
||||
BEGIN TRANSACTION
|
||||
INSERT INTO T_ERTEKELESMONDATBANK_OSSZES (
|
||||
--Egyszerû import adatok
|
||||
C_ROVIDNEV
|
||||
,C_SZOVEG
|
||||
,C_ERTEKELESTIPUSA
|
||||
,C_EVFOLYAMTIPUSA
|
||||
,C_TANTARGYID
|
||||
|
||||
--Technikai adatok
|
||||
,C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,TOROLT
|
||||
,LASTCHANGED
|
||||
,CREATED
|
||||
,MODIFIER
|
||||
,CREATOR)
|
||||
SELECT
|
||||
--Egyszerû import adatok
|
||||
tempTable.RovidNev
|
||||
,tempTable.Szoveg
|
||||
,@pErtekelesTipusId
|
||||
,@pEvfolyamTipusId
|
||||
,@pTantargyId
|
||||
|
||||
--Technikai adatok
|
||||
,@pIntezmenyId
|
||||
,@pTanevId
|
||||
,'F'
|
||||
,@currentDateTime
|
||||
,@currentDateTime
|
||||
,@pFelhasznaloId
|
||||
,@pFelhasznaloId
|
||||
FROM
|
||||
@tempErtekelesMondatbankImportData tempTable
|
||||
|
||||
COMMIT TRANSACTION
|
||||
END TRY
|
||||
|
||||
BEGIN CATCH
|
||||
IF @@TRANCOUNT > 0 AND XACT_STATE() <> 0
|
||||
ROLLBACK TRANSACTION;
|
||||
THROW
|
||||
END CATCH
|
||||
|
||||
END
|
||||
|
||||
|
||||
GO
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue