51 lines
2.1 KiB
Transact-SQL
51 lines
2.1 KiB
Transact-SQL
DROP PROCEDURE IF EXISTS [dbo].[sp_GetHianyzoOrabeirasok]
|
|
GO
|
|
-- =============================================
|
|
-- Author: <Zsiga Attila>
|
|
-- Create date: <2016.03.09.>
|
|
-- Description: <Hiányzó órabeírások (órarendióra, ami nem lett lenaplózva tanításiórává) értesítés generáláshoz>
|
|
-- =============================================
|
|
Create PROCEDURE [dbo].[sp_GetHianyzoOrabeirasok]
|
|
@pIdoszakVege DateTime
|
|
AS
|
|
BEGIN
|
|
SET NOCOUNT ON;
|
|
|
|
-- :TOKNOW:
|
|
-- 1608: Hiányzó óra naplózás
|
|
-- 1554: Minden héten
|
|
|
|
DECLARE @pIdoszakKezdete DateTime;
|
|
SET @pIdoszakKezdete =
|
|
(
|
|
SELECT
|
|
TOP 1 CREATED LastCreated
|
|
FROM
|
|
T_ERTESITES
|
|
WHERE
|
|
T_ERTESITES.C_TIPUS = 1608
|
|
ORDER BY
|
|
T_ERTESITES.CREATED DESC
|
|
);
|
|
|
|
DECLARE @pLastCreated DateTime;
|
|
SET @pLastCreated = @pIdoszakKezdete;
|
|
|
|
SELECT
|
|
T_ORARENDIORA.ID OrarendiOraID,
|
|
T_NAPTARINAP.C_NAPDATUMA Datum,
|
|
T_ORARENDIORA.C_ORASZAM Oraszam
|
|
FROM
|
|
(SELECT * FROM T_ORARENDIORA WHERE T_ORARENDIORA.TOROLT = 'F' AND ((T_ORARENDIORA.C_ORAERVENYESSEGVEGE >= @pIdoszakKezdete AND T_ORARENDIORA.C_ORAERVENYESSEGKEZDETE <= @pIdoszakVege) OR (T_ORARENDIORA.CREATED > @pLastCreated AND T_ORARENDIORA.C_ORAERVENYESSEGKEZDETE <= @pIdoszakVege))) T_ORARENDIORA
|
|
LEFT JOIN T_NAPTARINAP ON
|
|
T_NAPTARINAP.C_NAPDATUMA >= CONVERT(DATE, T_ORARENDIORA.C_ORAERVENYESSEGKEZDETE) AND T_NAPTARINAP.C_NAPDATUMA <= CONVERT(DATE, T_ORARENDIORA.C_ORAERVENYESSEGVEGE)
|
|
AND ((T_NAPTARINAP.C_NAPDATUMA >= @pIdoszakKezdete AND T_NAPTARINAP.C_NAPDATUMA <= @pIdoszakVege) OR (T_ORARENDIORA.CREATED > @pLastCreated AND T_NAPTARINAP.C_NAPDATUMA <= @pIdoszakVege))
|
|
AND T_NAPTARINAP.C_HETNAPJA = T_ORARENDIORA.C_HETNAPJA
|
|
AND (T_ORARENDIORA.C_HETIREND = 1554 OR T_NAPTARINAP.C_HETIREND = T_ORARENDIORA.C_HETIREND)
|
|
AND T_NAPTARINAP.TOROLT = 'F'
|
|
LEFT JOIN T_TANITASIORA ON T_TANITASIORA.C_ORARENDIORAGROUPID = T_ORARENDIORA.C_ORARENDIORAGROUPID AND T_TANITASIORA.C_DATUM BETWEEN T_ORARENDIORA.C_ORAERVENYESSEGKEZDETE AND T_ORARENDIORA.C_ORAERVENYESSEGVEGE AND T_TANITASIORA.C_DATUM = T_NAPTARINAP.C_NAPDATUMA AND T_TANITASIORA.TOROLT = 'F'
|
|
WHERE
|
|
T_TANITASIORA.C_MEGTARTOTT IS NULL
|
|
|
|
END
|
|
GO
|