﻿
EXEC dev.uspDropDefaultConstraint @pTableName = 'T_ALKALMAZOTT', @pColumnName = 'C_BANKSZAMLASZAM'
EXEC dev.uspDropDefaultConstraint @pTableName = 'T_ALKALMAZOTT', @pColumnName = 'C_BANKSZAMLATULAJDONOSTIPUS'
EXEC dev.uspDropDefaultConstraint @pTableName = 'T_ALKALMAZOTT', @pColumnName = 'C_BANKSZAMLATULAJNEVE'
EXEC dev.uspDropDefaultConstraint @pTableName = 'T_MUNKAUGYIADATOK', @pColumnName = 'C_ISNYUGDIJAS'
EXEC dev.uspDropDefaultConstraint @pTableName = 'T_MUNKAUGYIADATOK', @pColumnName = 'C_NYUGDIJKEZDET'
EXEC dev.uspDropDefaultConstraint @pTableName = 'T_MUNKAUGYIADATOK', @pColumnName = 'C_NYUGDIJTIPUS'

GO
PRINT N'Altering Table [dbo].[T_ALKALMAZOTT]...';


GO
ALTER TABLE [dbo].[T_ALKALMAZOTT]
    ADD [C_BANKSZAMLASZAM]            NVARCHAR (24) NULL,
        [C_BANKSZAMLATULAJDONOSTIPUS] INT           NULL,
        [C_BANKSZAMLATULAJNEVE]       NVARCHAR (24) NULL;


GO
PRINT N'Creating Index [dbo].[T_ALKALMAZOTT].[NCI_Alkalmazott_AlintezmenyId_AltanevId_BankszamlaTulajdonosTipus]...';


GO
CREATE NONCLUSTERED INDEX [NCI_Alkalmazott_AlintezmenyId_AltanevId_BankszamlaTulajdonosTipus]
    ON [dbo].[T_ALKALMAZOTT]([C_ALINTEZMENYID] ASC, [C_ALTANEVID] ASC, [C_BANKSZAMLATULAJDONOSTIPUS] ASC);


GO
PRINT N'Altering Table [dbo].[T_MUNKAUGYIADATOK]...';


GO
ALTER TABLE [dbo].[T_MUNKAUGYIADATOK]
    ADD [C_ISNYUGDIJAS]   CHAR (1) DEFAULT ('F') NOT NULL,
        [C_NYUGDIJKEZDET] DATETIME NULL,
        [C_NYUGDIJTIPUS]  INT      NULL;


GO
PRINT N'Creating Index [dbo].[T_MUNKAUGYIADATOK].[NCI_MunkaugyiAdatok_IntezmenyId_TanevId_NyugdijTipus]...';


GO
CREATE NONCLUSTERED INDEX [NCI_MunkaugyiAdatok_IntezmenyId_TanevId_NyugdijTipus]
    ON [dbo].[T_MUNKAUGYIADATOK]([C_INTEZMENYID] ASC, [C_TANEVID] ASC, [C_NYUGDIJTIPUS] ASC);


GO
PRINT N'Creating Table [dbo].[T_NYUGDIJTIPUS]...';


GO
CREATE TABLE [dbo].[T_NYUGDIJTIPUS] (
    [ID]                   INT      NOT NULL,
    [C_ALINTEZMENYID]      INT      NOT NULL,
    [C_ALTANEVID]          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,
    [ELOZOTANEVIREKORDIDA] INT      NULL,
    CONSTRAINT [PK_NyugdijTipus] PRIMARY KEY CLUSTERED ([ID] ASC, [C_ALINTEZMENYID] ASC, [C_ALTANEVID] ASC)
);


GO
PRINT N'Creating Index [dbo].[T_NYUGDIJTIPUS].[NCI_NyugdijTipus_AlIntezmenyId]...';


GO
CREATE NONCLUSTERED INDEX [NCI_NyugdijTipus_AlIntezmenyId]
    ON [dbo].[T_NYUGDIJTIPUS]([C_ALINTEZMENYID] ASC);


GO
PRINT N'Creating Index [dbo].[T_NYUGDIJTIPUS].[NCI_NyugdijTipus_AlTanevId]...';


GO
CREATE NONCLUSTERED INDEX [NCI_NyugdijTipus_AlTanevId]
    ON [dbo].[T_NYUGDIJTIPUS]([C_ALTANEVID] ASC);


GO
PRINT N'Creating Default Constraint unnamed constraint on [dbo].[T_NYUGDIJTIPUS]...';


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


GO
PRINT N'Creating Default Constraint unnamed constraint on [dbo].[T_NYUGDIJTIPUS]...';


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


GO
PRINT N'Creating Default Constraint unnamed constraint on [dbo].[T_NYUGDIJTIPUS]...';


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


GO
PRINT N'Creating Default Constraint unnamed constraint on [dbo].[T_NYUGDIJTIPUS]...';


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


GO
PRINT N'Creating Foreign Key [dbo].[FK_NyugdijTipus_Id_AlintezmenyId_AltanevId_REF_DictionaryItemBase]...';


GO
ALTER TABLE [dbo].[T_NYUGDIJTIPUS] WITH NOCHECK
    ADD CONSTRAINT [FK_NyugdijTipus_Id_AlintezmenyId_AltanevId_REF_DictionaryItemBase] FOREIGN KEY ([ID], [C_ALINTEZMENYID], [C_ALTANEVID]) REFERENCES [dbo].[T_DICTIONARYITEMBASE] ([ID], [C_INTEZMENYID], [C_TANEVID]);


GO
PRINT N'Creating Foreign Key [dbo].[FK_NyugdijTipus_AlIntezmenyId_REF_Intezmeny]...';


GO
ALTER TABLE [dbo].[T_NYUGDIJTIPUS] WITH NOCHECK
    ADD CONSTRAINT [FK_NyugdijTipus_AlIntezmenyId_REF_Intezmeny] FOREIGN KEY ([C_ALINTEZMENYID]) REFERENCES [dbo].[T_INTEZMENY] ([ID]);


GO
PRINT N'Creating Foreign Key [dbo].[FK_NyugdijTipus_AlTanevId_REF_Tanev]...';


GO
ALTER TABLE [dbo].[T_NYUGDIJTIPUS] WITH NOCHECK
    ADD CONSTRAINT [FK_NyugdijTipus_AlTanevId_REF_Tanev] FOREIGN KEY ([C_ALTANEVID]) REFERENCES [dbo].[T_TANEV] ([ID]);


GO
PRINT N'Creating Foreign Key [dbo].[FK_Alkalmazott_BankszamlaTulajdonosTipus_AlintezmenyId_AltanevId_REF_BankszamlaTulajdonosTipus]...';


GO
ALTER TABLE [dbo].[T_ALKALMAZOTT] WITH NOCHECK
    ADD CONSTRAINT [FK_Alkalmazott_BankszamlaTulajdonosTipus_AlintezmenyId_AltanevId_REF_BankszamlaTulajdonosTipus] FOREIGN KEY ([C_BANKSZAMLATULAJDONOSTIPUS], [C_ALINTEZMENYID], [C_ALTANEVID]) REFERENCES [dbo].[T_BANKSZAMLATULAJDONOSTIPUS] ([ID], [C_ALINTEZMENYID], [C_ALTANEVID]);


GO
PRINT N'Creating Foreign Key [dbo].[FK_MunkaugyiAdatok_NyugdijTipus_IntezmenyId_TanevId_REF_NyugdijTipus]...';


GO
ALTER TABLE [dbo].[T_MUNKAUGYIADATOK] WITH NOCHECK
    ADD CONSTRAINT [FK_MunkaugyiAdatok_NyugdijTipus_IntezmenyId_TanevId_REF_NyugdijTipus] FOREIGN KEY ([C_NYUGDIJTIPUS], [C_INTEZMENYID], [C_TANEVID]) REFERENCES [dbo].[T_NYUGDIJTIPUS] ([ID], [C_ALINTEZMENYID], [C_ALTANEVID]);


GO
PRINT N'Creating Extended Property [dbo].[T_NYUGDIJTIPUS].[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_NYUGDIJTIPUS', @level2type = N'COLUMN', @level2name = N'ID';


GO
PRINT N'Creating Extended Property [dbo].[T_NYUGDIJTIPUS].[C_ALINTEZMENYID].[MS_Description]...';


GO
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'Az intézmény ID-ja, amihez a rekord tartozik (altábla esetén)', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_NYUGDIJTIPUS', @level2type = N'COLUMN', @level2name = N'C_ALINTEZMENYID';


GO
PRINT N'Creating Extended Property [dbo].[T_NYUGDIJTIPUS].[C_ALTANEVID].[MS_Description]...';


GO
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A tanév ID-ja, amihez a rekord tartozik (altábla esetén)', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_NYUGDIJTIPUS', @level2type = N'COLUMN', @level2name = N'C_ALTANEVID';


GO
PRINT N'Creating Extended Property [dbo].[T_NYUGDIJTIPUS].[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_NYUGDIJTIPUS', @level2type = N'COLUMN', @level2name = N'TOROLT';


GO
PRINT N'Creating Extended Property [dbo].[T_NYUGDIJTIPUS].[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_NYUGDIJTIPUS', @level2type = N'COLUMN', @level2name = N'SERIAL';


GO
PRINT N'Creating Extended Property [dbo].[T_NYUGDIJTIPUS].[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_NYUGDIJTIPUS', @level2type = N'COLUMN', @level2name = N'LASTCHANGED';


GO
PRINT N'Creating Extended Property [dbo].[T_NYUGDIJTIPUS].[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_NYUGDIJTIPUS', @level2type = N'COLUMN', @level2name = N'CREATED';


GO
PRINT N'Creating Extended Property [dbo].[T_NYUGDIJTIPUS].[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_NYUGDIJTIPUS', @level2type = N'COLUMN', @level2name = N'MODIFIER';


GO
PRINT N'Creating Extended Property [dbo].[T_NYUGDIJTIPUS].[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_NYUGDIJTIPUS', @level2type = N'COLUMN', @level2name = N'CREATOR';


GO
PRINT N'Creating Extended Property [dbo].[T_NYUGDIJTIPUS].[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_NYUGDIJTIPUS', @level2type = N'COLUMN', @level2name = N'ELOZOTANEVIREKORDID';


GO
PRINT N'Creating Extended Property [dbo].[T_NYUGDIJTIPUS].[ELOZOTANEVIREKORDIDA].[MS_Description]...';


GO
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A rekord előző tanévben lévő ID-ja (altábla esetén) ', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_NYUGDIJTIPUS', @level2type = N'COLUMN', @level2name = N'ELOZOTANEVIREKORDIDA';


GO
PRINT N'Creating Extended Property [dbo].[T_ALKALMAZOTT].[C_BANKSZAMLASZAM].[MS_Description]...';


GO
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'Az alkalmazott bankszámlaszáma', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_ALKALMAZOTT', @level2type = N'COLUMN', @level2name = N'C_BANKSZAMLASZAM';


GO
PRINT N'Creating Extended Property [dbo].[T_ALKALMAZOTT].[C_BANKSZAMLATULAJDONOSTIPUS].[MS_Description]...';


GO
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A bankszámla-tulajdonos típusa', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_ALKALMAZOTT', @level2type = N'COLUMN', @level2name = N'C_BANKSZAMLATULAJDONOSTIPUS';


GO
PRINT N'Creating Extended Property [dbo].[T_ALKALMAZOTT].[C_BANKSZAMLATULAJNEVE].[MS_Description]...';


GO
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'Az alkalmazott bankszámlájának tulajdonosa', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_ALKALMAZOTT', @level2type = N'COLUMN', @level2name = N'C_BANKSZAMLATULAJNEVE';


GO
PRINT N'Creating Extended Property [dbo].[T_MUNKAUGYIADATOK].[C_ISNYUGDIJAS].[MS_Description]...';


GO
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'Az alkalmazott nyugdíjas-e', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_MUNKAUGYIADATOK', @level2type = N'COLUMN', @level2name = N'C_ISNYUGDIJAS';


GO
PRINT N'Creating Extended Property [dbo].[T_MUNKAUGYIADATOK].[C_NYUGDIJKEZDET].[MS_Description]...';


GO
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A nyugdíj kezdete', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_MUNKAUGYIADATOK', @level2type = N'COLUMN', @level2name = N'C_NYUGDIJKEZDET';


GO
PRINT N'Creating Extended Property [dbo].[T_MUNKAUGYIADATOK].[C_NYUGDIJTIPUS].[MS_Description]...';


GO
EXECUTE dev.uspAddOrUpdateExtendedProperty @name = N'MS_Description', @value = N'A nyugdíj típusa', @level0type = N'SCHEMA', @level0name = N'dbo', @level1type = N'TABLE', @level1name = N'T_MUNKAUGYIADATOK', @level2type = N'COLUMN', @level2name = N'C_NYUGDIJTIPUS';


GO
ALTER TABLE [dbo].[T_NYUGDIJTIPUS] WITH CHECK CHECK CONSTRAINT [FK_NyugdijTipus_Id_AlintezmenyId_AltanevId_REF_DictionaryItemBase];

ALTER TABLE [dbo].[T_NYUGDIJTIPUS] WITH CHECK CHECK CONSTRAINT [FK_NyugdijTipus_AlIntezmenyId_REF_Intezmeny];

ALTER TABLE [dbo].[T_NYUGDIJTIPUS] WITH CHECK CHECK CONSTRAINT [FK_NyugdijTipus_AlTanevId_REF_Tanev];

ALTER TABLE [dbo].[T_ALKALMAZOTT] WITH CHECK CHECK CONSTRAINT [FK_Alkalmazott_BankszamlaTulajdonosTipus_AlintezmenyId_AltanevId_REF_BankszamlaTulajdonosTipus];

ALTER TABLE [dbo].[T_MUNKAUGYIADATOK] WITH CHECK CHECK CONSTRAINT [FK_MunkaugyiAdatok_NyugdijTipus_IntezmenyId_TanevId_REF_NyugdijTipus];


GO
PRINT N'Update complete.';

EXEC dev.uspCreateSchemaViews 'T_ALKALMAZOTT, T_MUNKAUGYIADATOK, T_NYUGDIJTIPUS'

EXEC dev.sp_Global_GenerateAsyncAuditTriggerAll
GO
