154 lines
6.4 KiB
Transact-SQL
154 lines
6.4 KiB
Transact-SQL
SET NOCOUNT ON
|
|
|
|
DECLARE
|
|
@iTemp INT,
|
|
@sql NVARCHAR(3000),
|
|
@idTab INT,
|
|
@sysTabName NVARCHAR(128),
|
|
@hvwName NVARCHAR(128),
|
|
@idCol INT,
|
|
@trigger NVARCHAR(max)
|
|
|
|
|
|
SET @sysTabName = '_TabVyroba_RamcovyPlan'
|
|
SET @hvwName = 'hvw_Vyroba_RamcovyPlan'
|
|
|
|
|
|
SET @iTemp = ISNULL( (SELECT MAX(ID) FROM dbo.TabDefTabUzivTabulka), 1)
|
|
DBCC CHECKIDENT (TabDefTabUzivTabulka, RESEED, @iTemp)
|
|
SET @iTemp = ISNULL( (SELECT MAX(ID) FROM dbo.TabDefTabUzivAtributy), 1)
|
|
DBCC CHECKIDENT (TabDefTabUzivAtributy, RESEED, @iTemp)
|
|
SET @iTemp = ISNULL( (SELECT MAX(ID) FROM dbo.TabDefTabUzivConstraint), 1)
|
|
DBCC CHECKIDENT (TabDefTabUzivConstraint, RESEED, @iTemp)
|
|
|
|
|
|
|
|
-- tabulka
|
|
SET @idTab = (SELECT ID FROM dbo.TabDefTabUzivTabulka WHERE NazevTabulky=@sysTabName)
|
|
IF (@idTab IS NULL)
|
|
BEGIN
|
|
INSERT dbo.TabDefTabUzivTabulka (Skupina, Popis, NazevTabulky, NazevPrehledu, NastaveniAkceNovy, NastaveniAkceOprava, NastaveniAkceZrusit)
|
|
SELECT N'', 'Rámcový plán', @sysTabName, @hvwName, 1, 1, 1
|
|
SET @idTab = SCOPE_IDENTITY()
|
|
END
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-- sloupce
|
|
IF (@idTab IS NOT NULL)
|
|
BEGIN
|
|
/*
|
|
INSERT dbo.TabDefTabUzivAtributy
|
|
(IDDefinice, Poradi, DTUHeliosAttr, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
|
DTUAtrPocitany, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
|
DTUReadOnly, DTUHromadneZmeny, EdAtrEditor, EdAtrPoradi, EdAtrHlidat, EdAtrPrenosAtr, EdAtrSkrytyPrenos, EdAtrInfoAtr1, EdAtrInfoAtr2, EdAtrPrenosDPSN, EdAtrPrenosIDFiltr, EdAtrPodminka)
|
|
|
|
DTUAtrTyp
|
|
0=INT
|
|
1=SMALLINT
|
|
2=TINYINT
|
|
3=BIGINT
|
|
4=GUID
|
|
5=BIT
|
|
6=NVARCHAR
|
|
7=NTEXT
|
|
8=VARBINARY(MAX)
|
|
9=DATETIME
|
|
10=NUMERIC(5,2)
|
|
11=NUMERIC(19,6)
|
|
12=FLOAT
|
|
13=VARCHAR
|
|
14=NVARCHAR(MAX)
|
|
*/
|
|
|
|
|
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'IDKmenZbozi')
|
|
IF (@idCol IS NULL)
|
|
INSERT dbo.TabDefTabUzivAtributy
|
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN, EdAtrPrenosAtr)
|
|
SELECT @idTab, 1, N'IDKmenZbozi', N'ID kmenové karty', 0, 0, 0, N'', 0, -- 0 = int
|
|
NULL, NULL, NULL, 20, N'', 0, 1, 0, 1, 1,
|
|
0, 0, N'2', N'ID'
|
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'IDKmenZbozi')
|
|
BEGIN
|
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD IDKmenZbozi INT NOT NULL'
|
|
EXEC sp_executesql @sql
|
|
END
|
|
|
|
|
|
|
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'Rok')
|
|
IF (@idCol IS NULL)
|
|
INSERT dbo.TabDefTabUzivAtributy
|
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
|
SELECT @idTab, 2, N'Rok', N'Rok', 1, 0, 0, N'', 0,
|
|
NULL, NULL, NULL, 50, N'', 1, 1, 0, 1, 1,
|
|
0, 0, N''
|
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'Rok')
|
|
BEGIN
|
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD Rok SMALLINT NOT NULL'
|
|
EXEC sp_executesql @sql
|
|
END
|
|
|
|
|
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'Mesic')
|
|
IF (@idCol IS NULL)
|
|
INSERT dbo.TabDefTabUzivAtributy
|
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
|
SELECT @idTab, 3, N'Mesic', N'Mìsíc', 2, 0, 0, N'', 0,
|
|
NULL, NULL, NULL, 50, N'', 1, 1, 0, 1, 1,
|
|
0, 0, N''
|
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'Mesic')
|
|
BEGIN
|
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD Mesic TINYINT NOT NULL'
|
|
EXEC sp_executesql @sql
|
|
END
|
|
|
|
|
|
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'Mnozstvi')
|
|
IF (@idCol IS NULL)
|
|
INSERT dbo.TabDefTabUzivAtributy
|
|
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
|
|
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
|
|
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
|
|
SELECT @idTab, 4, N'Mnozstvi', N'Množství', 11, 0, 0, N'0', 0,
|
|
NULL, NULL, NULL, 70, N'#,##0.##', 1, 1, 1, 1, 1,
|
|
0, 0, N''
|
|
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'Mnozstvi')
|
|
BEGIN
|
|
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD Mnozstvi NUMERIC(19,6) NOT NULL DEFAULT 0.0'
|
|
EXEC sp_executesql @sql
|
|
END
|
|
|
|
|
|
END -- @idTab IS NOT NULL
|
|
|
|
|
|
|
|
|
|
-- indexy
|
|
IF (@idTab IS NOT NULL)
|
|
IF NOT EXISTS (SELECT 1 FROM dbo.TabDefTabUzivConstraint WHERE IDDefinice=@idTab AND Typ=1 AND JmenoSys=N'PK__' + @sysTabName + N'__ID')
|
|
INSERT dbo.TabDefTabUzivConstraint
|
|
(IDDefinice, JmenoSys, Typ, MojeAtributy, CiziTabulka, CiziAtributy, IncludedAttr, VazbaNazevMoje, VazbaNazevMojeSys, VazbaNazevCizi, VazbaNazevCiziSys)
|
|
SELECT @idTab, N'PK__' + @sysTabName + N'__ID', 1, N'ID', N'', N'', N'', N'', N'', N'', N''
|
|
|
|
IF (@idTab IS NOT NULL) AND EXISTS (SELECT 1 FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'IDKmenZbozi')
|
|
IF NOT EXISTS (SELECT 1 FROM dbo.TabDefTabUzivConstraint WHERE IDDefinice=@idTab AND Typ=0 AND JmenoSys=N'IX__' + @sysTabName + N'__IDKmenZbozi')
|
|
INSERT dbo.TabDefTabUzivConstraint
|
|
(IDDefinice, JmenoSys, Typ, MojeAtributy, CiziTabulka, CiziAtributy, IncludedAttr, VazbaNazevMoje, VazbaNazevMojeSys, VazbaNazevCizi, VazbaNazevCiziSys)
|
|
SELECT @idTab, N'IX__' + @sysTabName + N'__IDKmenZbozi', 0, N'IDKmenZbozi', N'', N'', N'', N'', N'', N'', N''
|
|
|
|
|
|
|