36 lines
No EOL
1.4 KiB
Transact-SQL
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 |