init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,27 @@
|
|||
IF NOT EXISTS (SELECT 1 FROM sys.indexes WHERE [name] = 'NCI_HelyettesitesiIdoszak_HelyettesitesNapja_IntezmenyId_TanevId_HelyettesTanarokId') BEGIN
|
||||
CREATE INDEX NCI_HelyettesitesiIdoszak_HelyettesitesNapja_IntezmenyId_TanevId_HelyettesTanarokId
|
||||
ON T_HELYETTESITESIIDOSZAK (C_HELYETTESITESNAPJA, C_INTEZMENYID, C_TANEVID, C_HELYETTESTANAROKID)
|
||||
INCLUDE (C_HELYETTESITESTIPUS, C_HELYETTESITESOKA, C_HELYETTESITETTORARENDID)
|
||||
WHERE TOROLT = 'F'
|
||||
WITH (FILLFACTOR = 80)
|
||||
END
|
||||
GO
|
||||
|
||||
DROP INDEX IF EXISTS NCI_TanitasiOra_IntezmenyId_TanevId_Datum_TanarId_HelyettesitoTanarId ON T_TANITASIORA
|
||||
GO
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM sys.indexes WHERE name = 'NCI_TanitasiOra_IntezmenyId_TanevId_Datum_TanarId_HelyettesitoTanarId') BEGIN
|
||||
CREATE INDEX NCI_TanitasiOra_IntezmenyId_TanevId_Datum_TanarId_HelyettesitoTanarId
|
||||
ON T_TANITASIORA (
|
||||
C_INTEZMENYID
|
||||
,C_TANEVID
|
||||
,C_DATUM
|
||||
,C_TANARID
|
||||
,C_HELYETTESITOTANARID
|
||||
)
|
||||
INCLUDE(C_HELYETTESITESTIPUSA)
|
||||
WHERE TOROLT = 'F'
|
||||
WITH (FILLFACTOR = 80)
|
||||
END
|
||||
GO
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
DROP PROCEDURE IF EXISTS dev.uspCreateSchemaSPFN
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE dev.uspCreateSchemaSPFN
|
||||
@pRoutinList nvarchar(max) -- Vesszővel elválasztott SP és FN lista (akár vegyesen is), NULL esetén az összeset frissíti
|
||||
,@pSchemaName nvarchar(max) = NULL -- Schema neve, amit frissíteni kell, NULL esetén az összes schemán végigmegy
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
|
||||
DECLARE
|
||||
@spList nvarchar(max)
|
||||
,@fnList nvarchar(max)
|
||||
|
||||
IF @pRoutinList IS NULL BEGIN
|
||||
EXEC dbo.sp_Global_CreateSchemaStoredProcedures @pSchemaName, NULL
|
||||
EXEC dbo.sp_Global_CreateSchemaFunctions @pSchemaName, NULL
|
||||
RETURN
|
||||
END
|
||||
|
||||
SET @spList = (
|
||||
SELECT r.ROUTINE_NAME AS "StoredProcedureName" FROM INFORMATION_SCHEMA.ROUTINES r
|
||||
INNER JOIN STRING_SPLIT (@pRoutinList, N',') s ON LTRIM(RTRIM(s.value)) = r.ROUTINE_NAME
|
||||
WHERE r.ROUTINE_SCHEMA = 'dbo'
|
||||
AND r.ROUTINE_TYPE = 'PROCEDURE'
|
||||
FOR XML PATH(''), ROOT('StoredProcedureNames')
|
||||
)
|
||||
|
||||
SET @fnList = (
|
||||
SELECT r.ROUTINE_NAME AS "FunctionName" FROM INFORMATION_SCHEMA.ROUTINES r
|
||||
INNER JOIN STRING_SPLIT (@pRoutinList, N',') s ON LTRIM(RTRIM(s.value)) = r.ROUTINE_NAME
|
||||
WHERE r.ROUTINE_SCHEMA = 'dbo'
|
||||
AND r.ROUTINE_TYPE = 'FUNCTION'
|
||||
FOR XML PATH(''), ROOT('FunctionNames')
|
||||
)
|
||||
|
||||
IF @spList IS NOT NULL BEGIN
|
||||
EXEC dbo.sp_Global_CreateSchemaStoredProcedures @pSchemaName, @spList
|
||||
END
|
||||
IF @fnList IS NOT NULL BEGIN
|
||||
EXEC dbo.sp_Global_CreateSchemaFunctions @pSchemaName, @fnList
|
||||
END
|
||||
END
|
||||
GO
|
||||
|
|
@ -0,0 +1,231 @@
|
|||
DROP PROCEDURE IF EXISTS uspGetHelyettesitesekListaja
|
||||
GO
|
||||
|
||||
CREATE PROCEDURE uspGetHelyettesitesekListaja
|
||||
@pKezdoDatum datetime = NULL
|
||||
,@pVegDatum datetime = NULL
|
||||
,@pHelyettesitesTipusId int = NULL
|
||||
,@pHelyettesitettId int = NULL
|
||||
,@pHelyettesitoId int = NULL
|
||||
,@pIsNaplozott char(1) = NULL
|
||||
,@pOsztalyCsoportId int = NULL
|
||||
,@pTantargyId int = NULL
|
||||
AS
|
||||
BEGIN
|
||||
SET NOCOUNT ON
|
||||
DECLARE
|
||||
@sql nvarchar(max)
|
||||
,@whereHisz nvarchar(max) = ''
|
||||
,@whereTanora nvarchar(max) = ''
|
||||
|
||||
IF @pKezdoDatum IS NOT NULL BEGIN
|
||||
SET @whereHisz += N'
|
||||
AND hisz.C_HELYETTESITESNAPJA >= @pKezdoDatum'
|
||||
SET @whereTanora += N'
|
||||
AND tn.C_DATUM >= @pKezdoDatum'
|
||||
END
|
||||
|
||||
IF @pVegDatum IS NOT NULL BEGIN
|
||||
SET @whereHisz += N'
|
||||
AND hisz.C_HELYETTESITESNAPJA <= @pVegDatum'
|
||||
SET @whereTanora += N'
|
||||
AND tn.C_DATUM <= @pVegDatum'
|
||||
END
|
||||
|
||||
IF @pHelyettesitesTipusId IS NOT NULL BEGIN
|
||||
SET @whereHisz += N'
|
||||
AND hisz.C_HELYETTESITESTIPUS = @pHelyettesitesTipusId'
|
||||
SET @whereTanora += N'
|
||||
AND tn.C_HELYETTESITESTIPUSA = @pHelyettesitesTipusId'
|
||||
END
|
||||
ELSE BEGIN
|
||||
SET @whereTanora += N'
|
||||
AND tn.C_HELYETTESITESTIPUSA IS NOT NULL'
|
||||
END
|
||||
|
||||
IF @pHelyettesitettId IS NOT NULL BEGIN
|
||||
SET @whereHisz += N'
|
||||
AND oo.C_TANARID = @pHelyettesitettId'
|
||||
SET @whereTanora += N'
|
||||
AND tn.C_TANARID = @pHelyettesitettId'
|
||||
END
|
||||
|
||||
IF @pHelyettesitoId IS NOT NULL BEGIN
|
||||
SET @whereHisz += N'
|
||||
AND hisz.C_HELYETTESTANAROKID = @pHelyettesitoId'
|
||||
SET @whereTanora += N'
|
||||
AND tn.C_HELYETTESITOTANARID = @pHelyettesitoId'
|
||||
END
|
||||
|
||||
IF @pOsztalyCsoportId IS NOT NULL BEGIN
|
||||
SET @whereHisz += N'
|
||||
AND oo.C_OSZTALYCSOPORTID = @pOsztalyCsoportId'
|
||||
SET @whereTanora += N'
|
||||
AND tn.C_OSZTALYCSOPORTID = @pOsztalyCsoportId'
|
||||
END
|
||||
|
||||
IF @pTantargyId IS NOT NULL BEGIN
|
||||
SET @whereHisz += N'
|
||||
AND oo.C_TANTARGYID = @pTantargyId'
|
||||
SET @whereTanora += N'
|
||||
AND tn.C_TANTARGYID = @pTantargyId'
|
||||
END
|
||||
|
||||
SET @sql = N'
|
||||
SELECT DISTINCT helyettesites.HelyettesitesDatum
|
||||
,helyettesites.Ora
|
||||
,helyettesitett.C_NYOMTATASINEV AS Helyettesitett
|
||||
,IIF(helyettesitett.C_NEVSORREND = ''T'',
|
||||
helyettesitett.C_UTONEV + '' '' + helyettesitett.C_VEZETEKNEV,
|
||||
helyettesitett.C_VEZETEKNEV + '' '' + helyettesitett.C_UTONEV) AS HelyettesitettElotagNelkul
|
||||
,helyettesitett.ID AS HelyettesitettId
|
||||
,helyettesites.HelyettesitesTipusId
|
||||
,helyettesites.HelyettesitesOka
|
||||
,helyettesito.C_NYOMTATASINEV AS Helyettesito
|
||||
,IIF(helyettesito.C_NEVSORREND = ''T'',
|
||||
helyettesito.C_UTONEV + '' '' + helyettesito.C_VEZETEKNEV,
|
||||
helyettesito.C_VEZETEKNEV + '' '' + helyettesito.C_UTONEV) AS HelyettesitoElotagNelkul
|
||||
,helyettesito.ID AS HelyettesitoId
|
||||
,ocs.C_NEV AS OsztalyCsoport
|
||||
,ocs.ID AS OsztalyCsoportId
|
||||
,tantargy.C_NEV AS Tantargy
|
||||
,tantargy.ID AS TantargyId
|
||||
,helyettesites.Naplozott
|
||||
,helyettesites.ID
|
||||
FROM ('
|
||||
|
||||
IF @pIsNaplozott = 1 BEGIN
|
||||
SET @sql += N'
|
||||
SELECT
|
||||
tanora.C_HELYETTESITESNAPJA AS HelyettesitesDatum
|
||||
,tanora.Ora AS Ora
|
||||
,tanora.C_TANARID AS HelyettesitettId
|
||||
,tanora.C_HELYETTESITESTIPUSA AS HelyettesitesTipusId
|
||||
,tanora.C_HELYETTESITOTANARID AS HelyettesitoId
|
||||
,tanora.C_OSZTALYCSOPORTID AS OsztalyCsoportId
|
||||
,tanora.C_TANTARGYID AS TantargyId
|
||||
,''T'' AS Naplozott
|
||||
,tanora.ID AS ID
|
||||
,tanora.C_HELYETTESITESOKA AS HelyettesitesOka
|
||||
FROM ('
|
||||
END
|
||||
IF @pIsNaplozott = 0 BEGIN
|
||||
SET @sql += N'
|
||||
SELECT
|
||||
hisz.C_HELYETTESITESNAPJA AS HelyettesitesDatum
|
||||
,hisz.Ora AS Ora
|
||||
,hisz.C_TANARID AS HelyettesitettId
|
||||
,hisz.C_HELYETTESITESTIPUS AS HelyettesitesTipusId
|
||||
,hisz.C_HELYETTESTANAROKID AS HelyettesitoId
|
||||
,hisz.C_OSZTALYCSOPORTID AS OsztalyCsoportId
|
||||
,hisz.C_TANTARGYID AS TantargyId
|
||||
,''F'' AS Naplozott
|
||||
,hisz.ID AS ID
|
||||
,hisz.C_HELYETTESITESOKA AS HelyettesitesOka
|
||||
FROM ('
|
||||
END
|
||||
|
||||
IF @pIsNaplozott IS NULL BEGIN
|
||||
SET @sql += N'
|
||||
SELECT
|
||||
IIF(tanora.ID IS NOT NULL, tanora.C_HELYETTESITESNAPJA, hisz.C_HELYETTESITESNAPJA) AS HelyettesitesDatum
|
||||
,IIF(tanora.ID IS NOT NULL, tanora.Ora, hisz.Ora) AS Ora
|
||||
,IIF(tanora.ID IS NOT NULL, tanora.C_TANARID, hisz.C_TANARID) AS HelyettesitettId
|
||||
,IIF(tanora.ID IS NOT NULL, tanora.C_HELYETTESITESTIPUSA, hisz.C_HELYETTESITESTIPUS) AS HelyettesitesTipusId
|
||||
,IIF(tanora.ID IS NOT NULL, tanora.C_HELYETTESITOTANARID, hisz.C_HELYETTESTANAROKID) AS HelyettesitoId
|
||||
,IIF(tanora.ID IS NOT NULL, tanora.C_OSZTALYCSOPORTID, hisz.C_OSZTALYCSOPORTID) AS OsztalyCsoportId
|
||||
,IIF(tanora.ID IS NOT NULL, tanora.C_TANTARGYID, hisz.C_TANTARGYID) AS TantargyId
|
||||
,IIF(tanora.ID IS NOT NULL, ''T'', ''F'') AS Naplozott
|
||||
,IIF(tanora.ID IS NOT NULL, tanora.ID, hisz.ID) AS ID
|
||||
,IIF(tanora.ID IS NOT NULL, tanora.C_HELYETTESITESOKA, hisz.C_HELYETTESITESOKA) AS HelyettesitesOka
|
||||
FROM ('
|
||||
END
|
||||
|
||||
IF @pIsNaplozott = 1 BEGIN
|
||||
SET @sql += N'
|
||||
SELECT
|
||||
tn.C_DATUM AS C_HELYETTESITESNAPJA
|
||||
,ISNULL(tn.C_ORASZAM, '''') AS Ora
|
||||
,tn.C_TANARID
|
||||
,tn.C_HELYETTESITESTIPUSA
|
||||
,tn.C_HELYETTESITOTANARID
|
||||
,tn.C_OSZTALYCSOPORTID
|
||||
,tn.C_TANTARGYID
|
||||
,tn.C_ORARENDIORAGROUPID
|
||||
,tn.ID
|
||||
,tn.C_HELYETTESITESOKA
|
||||
FROM T_TANITASIORA tn
|
||||
WHERE tn.TOROLT = ''F''
|
||||
' + @whereTanora + '
|
||||
) tanora '
|
||||
END
|
||||
IF @pIsNaplozott IS NULL OR @pIsNaplozott = 0 BEGIN
|
||||
SET @sql += N'
|
||||
SELECT
|
||||
hisz.C_HELYETTESITESNAPJA AS C_HELYETTESITESNAPJA
|
||||
,ISNULL(oo.C_ORASZAM, '''') AS Ora
|
||||
,oo.C_TANARID
|
||||
,hisz.C_HELYETTESITESTIPUS
|
||||
,hisz.C_HELYETTESTANAROKID
|
||||
,oo.C_OSZTALYCSOPORTID
|
||||
,oo.C_TANTARGYID
|
||||
,hisz.C_HELYETTESITETTORARENDID
|
||||
,hisz.ID
|
||||
,hisz.C_HELYETTESITESOKA
|
||||
FROM T_HELYETTESITESIIDOSZAK hisz
|
||||
INNER JOIN T_ORARENDIORA oo ON oo.ID = hisz.C_HELYETTESITETTORARENDID
|
||||
WHERE hisz.TOROLT = ''F''
|
||||
' + @whereHisz + '
|
||||
) hisz
|
||||
FULL JOIN (
|
||||
SELECT
|
||||
tn.C_DATUM AS C_HELYETTESITESNAPJA
|
||||
,IIF(tn.C_TANORANKIVULIFOGLALKOZAS = ''F'', tn.C_ORASZAM, '''') AS Ora
|
||||
,tn.C_TANARID
|
||||
,tn.C_HELYETTESITESTIPUSA
|
||||
,tn.C_HELYETTESITOTANARID
|
||||
,tn.C_OSZTALYCSOPORTID
|
||||
,tn.C_TANTARGYID
|
||||
,tn.C_ORARENDIORAGROUPID
|
||||
,tn.ID
|
||||
,tn.C_HELYETTESITESOKA
|
||||
FROM T_TANITASIORA tn
|
||||
WHERE tn.TOROLT = ''F''
|
||||
' + @whereTanora + '
|
||||
) tanora ON tanora.C_HELYETTESITESNAPJA = hisz.C_HELYETTESITESNAPJA
|
||||
AND tanora.C_OSZTALYCSOPORTID = hisz.C_OSZTALYCSOPORTID
|
||||
AND (
|
||||
tanora.C_TANARID = hisz.C_HELYETTESTANAROKID OR
|
||||
tanora.C_HELYETTESITOTANARID = hisz.C_HELYETTESTANAROKID)
|
||||
AND tanora.C_TANTARGYID = hisz.C_TANTARGYID
|
||||
' + IIF(@pIsNaplozott = 0, 'WHERE tanora.ID IS NULL', '')
|
||||
|
||||
END
|
||||
|
||||
SET @sql += N'
|
||||
) AS helyettesites
|
||||
INNER JOIN T_FELHASZNALO helyettesitett ON helyettesites.HelyettesitettId = helyettesitett.ID
|
||||
INNER JOIN T_FELHASZNALO helyettesito ON helyettesites.HelyettesitoId = helyettesito.ID
|
||||
INNER JOIN T_OSZTALYCSOPORT ocs ON helyettesites.OsztalyCsoportId = ocs.ID AND ocs.C_FELADATKATEGORIAID = (SELECT C_DEFAULTFELADATKATEGORIAID FROM T_TANEV WHERE ID = ocs.C_TANEVID)
|
||||
INNER JOIN T_TANTARGY tantargy ON helyettesites.TantargyId = tantargy.ID
|
||||
'
|
||||
|
||||
EXEC sp_executesql @sql, N'
|
||||
@pKezdoDatum datetime
|
||||
,@pVegDatum datetime
|
||||
,@pHelyettesitesTipusId int
|
||||
,@pHelyettesitettId int
|
||||
,@pHelyettesitoId int
|
||||
,@pIsNaplozott char(1)
|
||||
,@pOsztalyCsoportId int
|
||||
,@pTantargyId int'
|
||||
,@pKezdoDatum = @pKezdoDatum
|
||||
,@pVegDatum = @pVegDatum
|
||||
,@pHelyettesitesTipusId = @pHelyettesitesTipusId
|
||||
,@pHelyettesitettId = @pHelyettesitettId
|
||||
,@pHelyettesitoId = @pHelyettesitoId
|
||||
,@pIsNaplozott = @pIsNaplozott
|
||||
,@pOsztalyCsoportId = @pOsztalyCsoportId
|
||||
,@pTantargyId = @pTantargyId
|
||||
END
|
||||
GO
|
Loading…
Add table
Add a link
Reference in a new issue