init
This commit is contained in:
@@ -0,0 +1 @@
|
||||
DROP PROCEDURE IF EXISTS sp_GetKozossegiSzolgalatokData
|
@@ -0,0 +1,67 @@
|
||||
DROP PROCEDURE IF EXISTS uspGetKozossegiSzolgalatokData
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspGetKozossegiSzolgalatokData
|
||||
@pIntezmenyId int
|
||||
,@pOsztalyCsoportId int
|
||||
,@pIdoszakKezdete datetime
|
||||
,@pIdoszakVege datetime
|
||||
,@pOsszesOraszamKezdete int
|
||||
,@pOsszesOraszamVege int
|
||||
,@pTanuloNeve nvarchar(250)
|
||||
,@pAnyjaNeve nvarchar(250)
|
||||
AS
|
||||
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
SELECT *
|
||||
FROM (
|
||||
SELECT
|
||||
currenttanulo.TanuloId as ID
|
||||
,currenttanulo.TanuloId as TanuloId
|
||||
,currenttanulo.TanuloNev as TanuloNev
|
||||
,IIF(currenttanulo.Nevsorrend = 'T',
|
||||
currenttanulo.TanuloUtonev + ' ' + currenttanulo.TanuloVezeteknev,
|
||||
currenttanulo.TanuloVezeteknev + ' ' + currenttanulo.TanuloUtonev) as TanuloNevElotagNelkul
|
||||
,currenttanulo.AnyjaNeve as AnyjaNeve
|
||||
,currenttanulo.SzuletesiIdo as SzuletesiIdo
|
||||
,currenttanulo.OsztalyNev as OsztalyNev
|
||||
,ISNULL(SUM(kozossegiszolgalat.C_ORASZAM),0) as OsszesOraszam
|
||||
FROM T_FELHASZNALO_OSSZES tanulo
|
||||
LEFT JOIN (
|
||||
SELECT DISTINCT
|
||||
tanulo.C_OKTATASIAZONOSITO as OktatasiAzonosito
|
||||
,tanulo.ID as TanuloId
|
||||
,tanulo.C_NYOMTATASINEV as TanuloNev
|
||||
,tanulo.C_NEVSORREND as Nevsorrend
|
||||
,tanulo.C_VEZETEKNEV as TanuloVezeteknev
|
||||
,tanulo.C_UTONEV as TanuloUtonev
|
||||
,tanulo.C_ANYJANEVE as AnyjaNeve
|
||||
,tanulo.C_SZULETESIDATUM as SzuletesiIdo
|
||||
,osztalycsoport.C_NEV as OsztalyNev
|
||||
FROM T_FELHASZNALO tanulo
|
||||
LEFT JOIN T_TANULOCSOPORT tanulocsoport ON tanulocsoport.C_TANULOID = tanulo.ID
|
||||
AND tanulocsoport.TOROLT = 'F'
|
||||
LEFT JOIN T_OSZTALYCSOPORT osztalycsoport ON osztalycsoport.ID = tanulocsoport.C_OSZTALYCSOPORTID
|
||||
AND osztalycsoport.TOROLT = 'F'
|
||||
WHERE tanulo.TOROLT = 'F'
|
||||
AND osztalycsoport.ID = @pOsztalyCsoportId
|
||||
) currenttanulo ON currenttanulo.OktatasiAzonosito IS NOT NULL
|
||||
AND (@pTanuloNeve IS NULL OR currenttanulo.TanuloNev LIKE ('%'+ @pTanuloNeve +'%'))
|
||||
AND (@pAnyjaNeve IS NULL OR currenttanulo.AnyjaNeve LIKE ('%'+ @pAnyjaNeve +'%'))
|
||||
LEFT JOIN T_TANULOKOZOSSEGISZOLGALAT_OSSZES kozossegiszolgalat ON kozossegiszolgalat.C_TANULOID = Tanulo.ID
|
||||
AND kozossegiszolgalat.C_INTEZMENYID = @pIntezmenyId
|
||||
AND (@pIdoszakKezdete IS NULL OR kozossegiszolgalat.C_INTERVALLUMKEZDETE >= @pIdoszakKezdete)
|
||||
AND (@pIdoszakVege IS NULL OR kozossegiszolgalat.C_INTERVALLUMVEGE <= @pIdoszakVege)
|
||||
AND kozossegiszolgalat.TOROLT = 'F'
|
||||
WHERE tanulo.C_OKTATASIAZONOSITO = currenttanulo.OktatasiAzonosito
|
||||
AND tanulo.C_INTEZMENYID = @pIntezmenyId
|
||||
AND tanulo.TOROLT = 'F'
|
||||
GROUP BY currenttanulo.TanuloId, currenttanulo.TanuloNev, currenttanulo.Nevsorrend, currenttanulo.TanuloVezeteknev,
|
||||
currenttanulo.TanuloUtonev, currenttanulo.AnyjaNeve, currenttanulo.SzuletesiIdo, currenttanulo.OsztalyNev
|
||||
) result
|
||||
WHERE (@pOsszesOraszamKezdete IS NULL OR @pOsszesOraszamKezdete >= result.OsszesOraszam)
|
||||
AND (@pOsszesOraszamVege IS NULL OR @pOsszesOraszamVege <= result.OsszesOraszam)
|
||||
ORDER BY result.TanuloNevElotagNelkul ASC
|
||||
END
|
||||
GO
|
@@ -0,0 +1,117 @@
|
||||
DROP PROCEDURE IF EXISTS uspGetKozossegiSzolgalatokExportData
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspGetKozossegiSzolgalatokExportData
|
||||
@pIntezmenyId int
|
||||
,@pTanevId int
|
||||
,@pOsztalyCsoportId int
|
||||
,@pTanuloIds nvarchar(max) = NULL
|
||||
,@pIntervallumKezdete datetime = NULL
|
||||
,@pIntervallumVege datetime = NULL
|
||||
,@pTeljesitesHelye nvarchar(100) = NULL
|
||||
,@pKozossegiSzolgalatTipusa int = NULL
|
||||
,@pOsszesOraszamKezdete int = NULL
|
||||
,@pOsszesOraszamVege int = NULL
|
||||
,@pTanuloNev nvarchar (250) = NULL
|
||||
,@pAnyjaNeve nvarchar(250) = NULL
|
||||
AS
|
||||
|
||||
BEGIN
|
||||
SET NOCOUNT ON;
|
||||
|
||||
DECLARE
|
||||
@sql nvarchar (max)
|
||||
,@selectSql nvarchar (max)
|
||||
,@whereSql nvarchar (max)
|
||||
,@orderSql nvarchar (max)
|
||||
|
||||
|
||||
SET @selectSql = N'
|
||||
DROP TABLE IF EXISTS #OsszesitoTabla
|
||||
CREATE TABLE #OsszesitoTabla (
|
||||
ID int
|
||||
,TanuloId int
|
||||
,TanuloNev nvarchar(500)
|
||||
,TanuloNevElotagNelkul nvarchar(500)
|
||||
,AnyjaNeve nvarchar(500)
|
||||
,SzuletesiIdo datetime
|
||||
,OsztalyNev nvarchar(200)
|
||||
,OsszesOraszam decimal(18,2)
|
||||
);
|
||||
|
||||
INSERT INTO #OsszesitoTabla (ID,TanuloId, TanuloNev, TanuloNevElotagNelkul,AnyjaNeve,SzuletesiIdo,OsztalyNev,OsszesOraszam)
|
||||
EXEC uspGetKozossegiSzolgalatokData
|
||||
@pIntezmenyId = @pIntezmenyId
|
||||
,@pOsztalyCsoportId = @pOsztalyCsoportId
|
||||
,@pIdoszakKezdete = @pIntervallumKezdete
|
||||
,@pIdoszakVege = @pIntervallumVege
|
||||
,@pOsszesOraszamKezdete = @pOsszesOraszamKezdete
|
||||
,@pOsszesOraszamVege = @pOsszesOraszamVege
|
||||
,@pTanuloNeve = @pTanuloNev
|
||||
,@pAnyjaNeve = @pAnyjaNeve
|
||||
SELECT * FROM #OsszesitoTabla
|
||||
|
||||
SELECT
|
||||
KozossegiSzolgalat.ID AS ID
|
||||
,KozossegiSzolgalat.C_INTERVALLUMKEZDETE AS IntervallumKezdete
|
||||
,KozossegiSzolgalat.C_INTERVALLUMVEGE AS IntervallumVege
|
||||
,KozossegiSzolgalat.C_ROGZITESDATUM AS RogzitesDatuma
|
||||
,KozossegiSzolgalat.C_TELJESITESIHELYE AS TeljesitesiHelye
|
||||
,KozossegiSzolgalat.C_ORASZAM AS Oraszam
|
||||
,KozossegiSzolgalat.C_KOZOSSEGISZOLGALATTIPUSA AS KozossegiSzolgalatTipusa
|
||||
,KozossegiSzolgalat.C_MEGJEGYZES AS Megjegyzes
|
||||
,tmpOsszesito.TanuloId AS TanuloId
|
||||
,tmpOsszesito.TanuloNev AS TanuloNev
|
||||
,tmpOsszesito.OsztalyNev AS OsztalyNev
|
||||
,KozossegiSzolgalat.C_UGYIRATSZAM AS Ugyiratszam
|
||||
FROM #OsszesitoTabla tmpOsszesito
|
||||
INNER JOIN T_TANULOKOZOSSEGISZOLGALAT_OSSZES KozossegiSzolgalat ON KozossegiSzolgalat.C_TANULOID = tmpOsszesito.TanuloId'
|
||||
SET @whereSql = N' WHERE KozossegiSzolgalat.TOROLT = ''F'' '
|
||||
IF @pTanuloIds IS NOT NULL BEGIN
|
||||
SET @whereSql += N' AND tmpOsszesito.TanuloId IN (' + @pTanuloIds + ') '
|
||||
END
|
||||
IF @pIntervallumKezdete IS NOT NULL BEGIN
|
||||
SET @whereSql += N' AND KozossegiSzolgalat.C_INTERVALLUMKEZDETE >= @pIntervallumKezdete'
|
||||
END
|
||||
IF @pIntervallumVege IS NOT NULL BEGIN
|
||||
SET @whereSql += N' AND KozossegiSzolgalat.C_INTERVALLUMVEGE <= @pIntervallumVege'
|
||||
END
|
||||
IF @pTeljesitesHelye IS NOT NULL BEGIN
|
||||
SET @whereSql += N' AND KozossegiSzolgalat.C_TELJESITESIHELYE = @pTeljesitesHelye'
|
||||
END
|
||||
IF @pKozossegiSzolgalatTipusa IS NOT NULL BEGIN
|
||||
SET @whereSql += N' AND KozossegiSzolgalat.C_KOZOSSEGISZOLGALATTIPUSA = @pKozossegiSzolgalatTipusa'
|
||||
END
|
||||
|
||||
SET @orderSql = N' ORDER BY KozossegiSzolgalat.C_INTERVALLUMKEZDETE DESC'
|
||||
|
||||
SET @sql = @selectSql + @whereSql + @orderSql
|
||||
EXEC sp_executesql @sql, N'
|
||||
@pIntezmenyId int
|
||||
,@pTanevId int
|
||||
,@pIntervallumKezdete datetime = NULL
|
||||
,@pIntervallumVege datetime = NULL
|
||||
,@pTeljesitesHelye nvarchar (100) = NULL
|
||||
,@pOsszesOraszamKezdete int = NULL
|
||||
,@pOsszesOraszamVege int = NULL
|
||||
,@pOsztalyCsoportId int
|
||||
,@pKozossegiSzolgalatTipusa int = NULL
|
||||
,@pTanuloNev nvarchar (250) = NULL
|
||||
,@pAnyjaNeve nvarchar(250) = NULL
|
||||
,@pTanuloIds nvarchar(max) = NULL'
|
||||
,@pIntezmenyId = @pIntezmenyId
|
||||
,@pTanevId = @pTanevId
|
||||
,@pIntervallumKezdete = @pIntervallumKezdete
|
||||
,@pIntervallumVege = @pIntervallumVege
|
||||
,@pTeljesitesHelye = @pTeljesitesHelye
|
||||
,@pOsszesOraszamKezdete = @pOsszesOraszamKezdete
|
||||
,@pOsszesOraszamVege = @pOsszesOraszamVege
|
||||
,@pOsztalyCsoportId = @pOsztalyCsoportId
|
||||
,@pKozossegiSzolgalatTipusa = @pKozossegiSzolgalatTipusa
|
||||
,@pTanuloNev = @pTanuloNev
|
||||
,@pAnyjaNeve = @pAnyjaNeve
|
||||
,@pTanuloIds = @pTanuloIds
|
||||
END
|
||||
|
||||
|
||||
GO
|
Reference in New Issue
Block a user