kreta/Kreta.DataAccess.Migrations/Scripts/Archive/20170327110702_Init/Stored procedures/sp_GetHianyzoOrabeirasok.sql
2024-03-13 00:33:46 +01:00

61 lines
2.1 KiB
Transact-SQL

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
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]
-- Add the parameters for the stored procedure here
@pIdoszakVege DateTime
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
-- :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_ORARENDIORAID = T_ORARENDIORA.ID
AND T_TANITASIORA.C_DATUM = T_NAPTARINAP.C_NAPDATUMA
AND T_TANITASIORA.TOROLT = 'F'
WHERE
T_TANITASIORA.C_MEGTARTOTT IS NULL
END
GO