DROP PROCEDURE IF EXISTS [dbo].[sp_GetOsztalyTanuloinakHaviMulasztasaiOsszesitoje] GO CREATE PROCEDURE [dbo].[sp_GetOsztalyTanuloinakHaviMulasztasaiOsszesitoje] @pTanevId int ,@pIntezmenyId int ,@pOsztalyId int ,@pElmeletgyakorlat bit = 0 ,@pMulasztandoOrakszamaTeljesNaposMulasztashoz int = 3 ,@pHonapAdatszotarTypeId int = 55 AS BEGIN SET NOCOUNT ON; DECLARE @honapok TABLE(honap INT, honapnev NVARCHAR(max)); INSERT INTO @honapok SELECT DISTINCT (3 + d.c_value) % 12 + 1 AS c_value, d.c_name as Honap FROM T_DICTIONARYITEMBASE_OSSZES d WHERE d.C_DICTIONARYTYPEID = @pHonapAdatszotarTypeId ORDER BY c_value; SELECT honapnev FROM @honapok; DECLARE honap_cursor CURSOR FOR SELECT DISTINCT (3 + d.c_value) % 12 + 1 AS honap_sorrend, d.c_value AS honap FROM T_DICTIONARYITEMBASE_OSSZES d WHERE d.C_DICTIONARYTYPEID = @pHonapAdatszotarTypeId ORDER BY honap_sorrend; DECLARE @honap_sorrend INT, @honap INT; OPEN honap_cursor FETCH NEXT FROM honap_cursor INTO @honap_sorrend, @honap; WHILE @@FETCH_STATUS = 0 BEGIN EXEC [sp_GetOsztalyTanuloinakHaviMulasztasaiOsszesitoje_honapra] @pTanevId, @pIntezmenyId, @pOsztalyId, @honap, @pElmeletgyakorlat, @pMulasztandoOrakszamaTeljesNaposMulasztashoz FETCH NEXT FROM honap_cursor INTO @honap_sorrend, @honap END CLOSE honap_cursor DEALLOCATE honap_cursor SELECT ocs.ID AS OsztalyId ,ocs.C_EVFOLYAMTIPUSA AS EvfolyamTipusa ,ocs.C_FELADATELLATASIHELYID AS FeladatEllatasiHelyId ,o.C_OSZTALYFONOKID AS OsztalyfonokId ,o.C_TANTERVID AS TantervId ,ocs.C_KEPZESIFORMA AS KepzesiForma ,o.C_AGAZAT AS Agazat ,o.C_SZAKMACSOPORT AS SzakmaCsoport ,o.C_SZAKKEPESITES Szakkepesites ,o.C_RESZSZAKKEPESITES Reszszakkepesites ,o.C_AGAZATUJSZKTTIPUSID AS UjSzktAgazat ,o.C_SZAKMATIPUSID AS UjSzktSzakma ,o.C_SZAKMAIRANYTIPUSID AS UjSzktSzakmairany ,o.C_TANULMANYITERULETNKTTIPUSID AS NktTanulmanyiTerulet ,o.C_SZAKKEPESITESNKTTIPUSID AS NktSzakkepesites ,o.C_SZAKIRANYNKTTIPUSID AS NktSzakirany ,ocs.C_KERESZTFELEVES OJCSJKeresztfeleves ,ocs.C_VEGZOSEVFOLYAM CSJVegzosEvfolyamu ,ocs.C_ISTECHNIKAI OJTechnikaiOsztaly ,o.C_NEMZETISEGI OJNemzetisegi ,o.C_KETTANNYELVU OJKettannyelvu ,o.C_NYELVIELOKESZITO OJNyelviElokeszito ,ocs.C_ISGYOGYPEDAGOGIAILOGOPEDIAI OJIsGyogypedagogiaiLogopediai ,o.C_SPORT OJSportOsztaly ,o.C_AJPROGRAM OJAranyJanosProgram FROM T_OSZTALYCSOPORT_OSSZES ocs INNER JOIN T_OSZTALY_OSSZES o ON o.ID = ocs.ID WHERE ocs.ID = @pOsztalyId AND ocs.C_TANEVID = @pTanevId AND ocs.C_INTEZMENYID = @pIntezmenyId AND ocs.TOROLT = 'F' END SELECT tanuloID AS TanuloId ,tanuloNeve AS TanuloNeve ,oktAzon AS OktAzon FROM fnGetDokumentumTanuloiAlapadatok(@pOsztalyId, @pTanevId, 'T') GO