﻿-- =============================================
-- Author:    <Author,,Name>
-- Create date: <Create Date,,>
-- Description:  <Description,,>
-- =============================================
DROP PROCEDURE IF EXISTS dbo.uspGetCalendarMinMax
GO

CREATE PROCEDURE dbo.uspGetCalendarMinMax
   @pIntezmenyId int,
   @pTanevId int
AS
BEGIN
  SET NOCOUNT ON;
SELECT
  MIN(Ertek) Minimum,
  MAX(Ertek) Maximum
FROM
  (
    SELECT
      CASE
        WHEN MIN(CONVERT(TIME, C_ORAERVENYESSEGKEZDETE)) = '00:00:00.0000000' THEN NULL
        ELSE MIN(CONVERT(TIME, C_ORAERVENYESSEGKEZDETE))
      END C_ORAERVENYESSEGKEZDETE_MIN,
    MIN(CONVERT(TIME, T_CSENGETESIRENDORA_OSSZES.C_KEZDETE)) T_CSENGETESIRENDORA_MIN,
    MIN(CONVERT(TIME, C_ORAKEZDETE)) C_ORAKEZDETE_MIN,
    (SELECT MIN(CONVERT(TIME, C_ORAKEZDETE)) FROM T_TEVEKENYSEG) C_ORAKEZDETE_TEVEKENYSEG_MIN,
      CASE
        WHEN MAX(CONVERT(TIME, C_ORAERVENYESSEGVEGE)) = '00:00:00.0000000' THEN NULL
        ELSE MAX(CONVERT(TIME, C_ORAERVENYESSEGVEGE))
      END C_ORAERVENYESSEGVEGE_MAX,
    MAX(CONVERT(TIME, T_CSENGETESIRENDORA_OSSZES.C_VEGE)) T_CSENGETESIRENDORA_MAX,
    MAX(CONVERT(TIME, C_ORAVEGE)) C_ORAVEGE_MAX,
    (SELECT MAX(CONVERT(TIME, C_ORAVEGE)) FROM T_TEVEKENYSEG) C_ORAVEGE_TEVEKENYSEG_MAX
    FROM
    T_ORARENDIORA_OSSZES
    LEFT JOIN T_CSENGETESIRENDORA_OSSZES ON T_CSENGETESIRENDORA_OSSZES.ID = T_ORARENDIORA_OSSZES.C_CSENGETESIRENDORAID AND T_CSENGETESIRENDORA_OSSZES.C_INTEZMENYID = @pIntezmenyId AND T_CSENGETESIRENDORA_OSSZES.C_TANEVID = @pTanevId AND T_CSENGETESIRENDORA_OSSZES.TOROLT = 'F'
        WHERE  T_ORARENDIORA_OSSZES.C_INTEZMENYID = @pIntezmenyId AND T_ORARENDIORA_OSSZES.C_TANEVID = @pTanevId AND T_ORARENDIORA_OSSZES.TOROLT = 'F'
    
  ) BelsoNev
UNPIVOT (Ertek FOR Nev IN ([C_ORAERVENYESSEGKEZDETE_MIN],[T_CSENGETESIRENDORA_MIN],[C_ORAKEZDETE_MIN],[C_ORAERVENYESSEGVEGE_MAX],[T_CSENGETESIRENDORA_MAX],[C_ORAVEGE_MAX])) KulsoNev

END
GO

