kreta/Kreta.DataAccess.Migrations/DBScripts/Database/dbo/Stored procedures/uspUpdateDktFeladatHelyettesitoAlkalmazott.sql
2024-03-13 00:33:46 +01:00

36 lines
No EOL
1.4 KiB
Transact-SQL

DROP PROCEDURE IF EXISTS uspUpdateDktFeladatHelyettesitoAlkalmazott
GO
CREATE PROCEDURE uspUpdateDktFeladatHelyettesitoAlkalmazott
@pOrarendiOraId int
,@pHelyettesitesNapja datetime
,@pHelyettesitoAlkalmazottId int = NULL
AS
BEGIN
SET NOCOUNT ON;
DECLARE @ooAlkalmazottId int, @ooOsztalyCsoportId int, @ooTantargyId int, @ooOraszam int, @ooOraKezdete datetime;
SELECT
@ooAlkalmazottId = oo.C_TANARID, @ooOsztalyCsoportId = oo.C_OSZTALYCSOPORTID, @ooTantargyId = oo.C_TANTARGYID
,@ooOraszam = oo.C_ORASZAM, @ooOraKezdete = oo.C_ORAERVENYESSEGKEZDETE
FROM T_ORARENDIORA oo
WHERE
oo.ID = @pOrarendiOraId AND TOROLT = 'F'
AND ((@pHelyettesitesNapja >= oo.C_ORAERVENYESSEGKEZDETE AND @pHelyettesitesNapja < oo.C_ORAERVENYESSEGVEGE)
OR
(oo.C_ORAERVENYESSEGKEZDETE = oo.C_ORAERVENYESSEGVEGE AND oo.C_ORAERVENYESSEGKEZDETE = @pHelyettesitesNapja))
UPDATE dktFeladat
SET
C_HELYETTESITOALKALMAZOTTID = @pHelyettesitoAlkalmazottId
FROM T_DKT_FELADAT dktFeladat
WHERE
dktFeladat.C_DATUM = @pHelyettesitesNapja
AND dktFeladat.TOROLT = 'F'
AND dktFeladat.C_ALKALMAZOTTID = @ooAlkalmazottId
AND dktFeladat.C_OSZTALYCSOPORTID = @ooOsztalyCsoportId
AND dktFeladat.C_TANTARGYID = @ooTantargyId
AND (dktFeladat.C_ORASZAM = @ooOraszam OR @pHelyettesitesNapja + @ooOraKezdete = dktFeladat.C_IDOPONT)
END
GO