﻿PRINT N'Creating [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET]...';


GO
CREATE TABLE [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET] (
    [ID]                     INT      IDENTITY (1, 1) NOT NULL,
    [C_KOZPONTITAVOLLETID]   INT      NOT NULL,
    [C_SZINKRONIZALVA]       DATETIME NULL,
    [C_IKTATOTTDOKUMENTUMID] INT      NOT NULL,
    [C_INTEZMENYID]          INT      NOT NULL,
    [C_TANEVID]              INT      NOT NULL,
    [TOROLT]                 CHAR (1) NOT NULL,
    [SERIAL]                 INT      NOT NULL,
    [LASTCHANGED]            DATETIME NOT NULL,
    [CREATED]                DATETIME NOT NULL,
    [MODIFIER]               INT      NULL,
    [CREATOR]                INT      NULL,
    [ELOZOTANEVIREKORDID]    INT      NULL,
    [NNID]                   INT      NULL,
    CONSTRAINT [PK_IktatottDokumentumTavollet] PRIMARY KEY CLUSTERED ([ID] ASC)
);


GO
PRINT N'Creating [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET].[NCI_IktatottDokumentumTavollet_IktatottDokumentumId]...';


GO
CREATE NONCLUSTERED INDEX [NCI_IktatottDokumentumTavollet_IktatottDokumentumId]
    ON [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET]([C_IKTATOTTDOKUMENTUMID] ASC);


GO
PRINT N'Creating [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET].[NCI_IktatottDokumentumTavollet_IntezmenyId]...';


GO
CREATE NONCLUSTERED INDEX [NCI_IktatottDokumentumTavollet_IntezmenyId]
    ON [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET]([C_INTEZMENYID] ASC);


GO
PRINT N'Creating [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET].[NCI_IktatottDokumentumTavollet_TanevId]...';


GO
CREATE NONCLUSTERED INDEX [NCI_IktatottDokumentumTavollet_TanevId]
    ON [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET]([C_TANEVID] ASC);


GO
PRINT N'Creating unnamed constraint on [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET]...';


GO
ALTER TABLE [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET]
    ADD DEFAULT ((0)) FOR [SERIAL];


GO
PRINT N'Creating unnamed constraint on [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET]...';


GO
ALTER TABLE [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET]
    ADD DEFAULT (getdate()) FOR [CREATED];


GO
PRINT N'Creating unnamed constraint on [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET]...';


GO
ALTER TABLE [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET]
    ADD DEFAULT ('F') FOR [TOROLT];


GO
PRINT N'Creating unnamed constraint on [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET]...';


GO
ALTER TABLE [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET]
    ADD DEFAULT (getdate()) FOR [LASTCHANGED];


GO
PRINT N'Creating [dbo].[FK_IktatottDokumentumTavollet_IktatottDokumentumId_REF_IktatottDokumentum]...';


GO
ALTER TABLE [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET] WITH NOCHECK
    ADD CONSTRAINT [FK_IktatottDokumentumTavollet_IktatottDokumentumId_REF_IktatottDokumentum] FOREIGN KEY ([C_IKTATOTTDOKUMENTUMID]) REFERENCES [dbo].[T_IKTATOTTDOKUMENTUM] ([ID]);


GO
PRINT N'Creating [dbo].[FK_IktatottDokumentumTavollet_IntezmenyId_REF_Intezmeny]...';


GO
ALTER TABLE [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET] WITH NOCHECK
    ADD CONSTRAINT [FK_IktatottDokumentumTavollet_IntezmenyId_REF_Intezmeny] FOREIGN KEY ([C_INTEZMENYID]) REFERENCES [dbo].[T_INTEZMENY] ([ID]);


GO
PRINT N'Creating [dbo].[FK_IktatottDokumentumTavollet_TanevId_REF_Tanev]...';


GO
ALTER TABLE [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET] WITH NOCHECK
    ADD CONSTRAINT [FK_IktatottDokumentumTavollet_TanevId_REF_Tanev] FOREIGN KEY ([C_TANEVID]) REFERENCES [dbo].[T_TANEV] ([ID]);


GO
PRINT N'Creating [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET].[ID].[MS_Description]...';


GO
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekord egyedi azonosítója, generált IDENTITY(1, 1) (kivéve altáblák esetén, ahol a főtábla ID-ját kapja)', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_IKTATOTTDOKUMENTUMTAVOLLET', @level2type = N'COLUMN', @level2name = N'ID';


GO
PRINT N'Creating [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET].[C_INTEZMENYID].[MS_Description]...';


GO
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'Az intézmény ID-ja, amihez a rekord tartozik', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_IKTATOTTDOKUMENTUMTAVOLLET', @level2type = N'COLUMN', @level2name = N'C_INTEZMENYID';


GO
PRINT N'Creating [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET].[C_TANEVID].[MS_Description]...';


GO
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A tanév ID-ja, amihez a rekord tartozik', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_IKTATOTTDOKUMENTUMTAVOLLET', @level2type = N'COLUMN', @level2name = N'C_TANEVID';


GO
PRINT N'Creating [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET].[TOROLT].[MS_Description]...';


GO
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekord logikai töröltségét jelző flag', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_IKTATOTTDOKUMENTUMTAVOLLET', @level2type = N'COLUMN', @level2name = N'TOROLT';


GO
PRINT N'Creating [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET].[SERIAL].[MS_Description]...';


GO
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'Minden C# kódból történő módosítás esetén eggyel nő az értéke. Hogy párhuzamos módosítás esetnán ne íródjanak felül az adatok', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_IKTATOTTDOKUMENTUMTAVOLLET', @level2type = N'COLUMN', @level2name = N'SERIAL';


GO
PRINT N'Creating [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET].[LASTCHANGED].[MS_Description]...';


GO
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'	A rekord utolsó módosításának időpontja', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_IKTATOTTDOKUMENTUMTAVOLLET', @level2type = N'COLUMN', @level2name = N'LASTCHANGED';


GO
PRINT N'Creating [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET].[CREATED].[MS_Description]...';


GO
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekord létrehozásának időpontja ', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_IKTATOTTDOKUMENTUMTAVOLLET', @level2type = N'COLUMN', @level2name = N'CREATED';


GO
PRINT N'Creating [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET].[MODIFIER].[MS_Description]...';


GO
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekordot utoljára módosító felhasználó ID-ja', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_IKTATOTTDOKUMENTUMTAVOLLET', @level2type = N'COLUMN', @level2name = N'MODIFIER';


GO
PRINT N'Creating [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET].[CREATOR].[MS_Description]...';


GO
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekordot létrehozó felhasználó ID-ja', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_IKTATOTTDOKUMENTUMTAVOLLET', @level2type = N'COLUMN', @level2name = N'CREATOR';


GO
PRINT N'Creating [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET].[ELOZOTANEVIREKORDID].[MS_Description]...';


GO
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekord előző tanévben lévő ID-ja', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_IKTATOTTDOKUMENTUMTAVOLLET', @level2type = N'COLUMN', @level2name = N'ELOZOTANEVIREKORDID';


GO
PRINT N'Creating [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET].[NNID].[MS_Description]...';


GO
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekord régi, Neptun Naplóban lévő ID-ja. (migrációval került be)', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_IKTATOTTDOKUMENTUMTAVOLLET', @level2type = N'COLUMN', @level2name = N'NNID';


GO
PRINT N'Checking existing data against newly created constraints';


GO
ALTER TABLE [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET] WITH CHECK CHECK CONSTRAINT [FK_IktatottDokumentumTavollet_IktatottDokumentumId_REF_IktatottDokumentum];

ALTER TABLE [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET] WITH CHECK CHECK CONSTRAINT [FK_IktatottDokumentumTavollet_IntezmenyId_REF_Intezmeny];

ALTER TABLE [dbo].[T_IKTATOTTDOKUMENTUMTAVOLLET] WITH CHECK CHECK CONSTRAINT [FK_IktatottDokumentumTavollet_TanevId_REF_Tanev];


GO
PRINT N'Update complete.';


GO
