34 lines
1.4 KiB
Transact-SQL
34 lines
1.4 KiB
Transact-SQL
DROP PROCEDURE IF EXISTS uspUpdateAtlagByTanev
|
|
GO
|
|
|
|
CREATE PROCEDURE uspUpdateAtlagByTanev
|
|
@pTanevId int
|
|
,@pIntezmenyId int
|
|
,@pFelhasznaloId int
|
|
AS
|
|
BEGIN
|
|
UPDATE tta SET
|
|
C_SULYOZOTTOSZTALYZATOSSZEGE = x.C_SULYOZOTTOSZTALYZATOSSZEGE
|
|
,C_SULYOZOTTOSZTALYZATSZAMA = x.C_SULYOZOTTOSZTALYZATSZAMA
|
|
,MODIFIER = @pFelhasznaloId
|
|
FROM T_TANULOTANTARGYATLAG_OSSZES tta
|
|
INNER JOIN (
|
|
SELECT
|
|
er.C_TANULOID,
|
|
er.C_TANTARGYID,
|
|
SUM(d.C_VALUE * em.C_SULY) AS C_SULYOZOTTOSZTALYZATOSSZEGE,
|
|
SUM(em.C_SULY) AS C_SULYOZOTTOSZTALYZATSZAMA,
|
|
feh.C_OKTATASINEVELESIFELADATTIPUS AS C_OKTATASNEVELESIFELADATID
|
|
FROM T_TANULOERTEKELES_OSSZES er
|
|
INNER JOIN T_ERTEKELESMOD_OSSZES em ON em.ID = er.C_ERTEKELESMODID AND em.C_ALTANEVID = er.C_TANEVID
|
|
INNER JOIN T_DICTIONARYITEMBASE_OSSZES d ON d.ID = er.C_ERTEKELESOSZTALYZATID AND d.C_TANEVID = er.C_TANEVID
|
|
INNER JOIN T_OSZTALYCSOPORT_OSSZES ocs ON ocs.ID = er.C_OSZTALYCSOPORTID
|
|
INNER JOIN T_FELADATELLATASIHELY_OSSZES feh ON feh.ID = ocs.C_FELADATELLATASIHELYID
|
|
WHERE er.C_TANEVID = @pTanevId
|
|
AND er.C_INTEZMENYID = @pIntezmenyId
|
|
AND er.C_TIPUSID = 1518
|
|
AND er.TOROLT = 'F'
|
|
GROUP BY er.C_TANULOID, er.C_TANTARGYID, feh.C_OKTATASINEVELESIFELADATTIPUS
|
|
) x ON x.C_TANULOID = tta.C_TANULOID AND x.C_TANTARGYID = tta.C_TANTARGYID AND x.C_OKTATASNEVELESIFELADATID = tta.C_OKTATASNEVELESIFELADATID
|
|
END
|
|
GO
|