Files
Rootvin-pluginHDCRTN/_sql/2UT/utObjednavkyMat.sql
2025-06-10 19:43:13 +02:00

595 lines
28 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_Objednavky'
SET @hvwName = 'hvw_Vyroba_ObjednavkyMat'
IF EXISTS (SELECT 1 FROM dbo.TabObecnyPrehled WHERE NazevSys=N'hvw_Vyroba_Micharna_PozadavkyObj')
UPDATE dbo.TabObecnyPrehled SE NazevSys=@hvwName WHERE NazevSys=N'hvw_Vyroba_Micharna_PozadavkyObj'
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'', 'Objednávky na materiál', @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'ID')
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'ID', N'Systémové èíslo', 0, 0, 0, N'', 0, -- 0 = int
NULL, NULL, NULL, 20, N'', 0, 1, 0, 1, 0,
0, 0, N'', N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'ID')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD ID INT IDENTITY(1,1) NOT NULL PRIMARY KEY'
EXEC sp_executesql @sql
END
*/
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'IDPrijataDataJson')
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, 2, N'IDPrijataDataJson', N'ID JSON', 0, 0, 1, N'', 0, -- 0 = int
NULL, NULL, NULL, 20, N'', 0, 0, 0, 1, 0,
1, 0, N'', N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'IDPrijataDataJson')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD IDPrijataDataJson INT NULL'
EXEC sp_executesql @sql
END
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'IdPHIdent')
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'IdPHIdent', N'Identifikace PH', 3, 0, 1, N'', 0, -- 3=bigint
NULL, NULL, NULL, 20, N'', 1, 0, 0, 1, 0,
1, 0, N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'IdPHIdent')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD IdPHIdent BIGINT NULL'
EXEC sp_executesql @sql
END
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'IdPHIdent2')
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'IdPHIdent2', N'Identifikace 2 PH', 3, 0, 1, N'', 0, -- 3=bigint
NULL, NULL, NULL, 20, N'', 1, 0, 0, 1, 0,
1, 0, N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'IdPHIdent')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD IdPHIdent2 BIGINT NULL'
EXEC sp_executesql @sql
END
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'PHOznaceni')
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, 5, N'PHOznaceni', N'Oznaèení PH', 6, 50, 1, N'', 0, -- 6=nvarchar
NULL, NULL, NULL, 20, N'', 1, 0, 0, 1, 0,
1, 0, N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'PHOznaceni')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD PHOznaceni NVARCHAR(50) NULL'
EXEC sp_executesql @sql
END
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'Poznamka')
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, 6, N'Poznamka', N'Poznámka', 6, 255, 1, N'', 0, -- 6=nvarchar
NULL, NULL, NULL, 20, N'', 1, 0, 0, 1, 1,
0, 0, N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'Poznamka')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD Poznamka NVARCHAR(255) NULL'
EXEC sp_executesql @sql
END
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'SkupZbo')
IF (@idCol IS NULL)
INSERT dbo.TabDefTabUzivAtributy
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUHeliosAttr, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
SELECT @idTab, 7, N'SkupZbo', N'TabKmenZbozi.SkupZbo', N'', 6, 3, 1, N'', 0, -- 6=nvarchar
NULL, NULL, NULL, 15, N'', 1, 0, 0, 1, 0,
0, 0, N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'SkupZbo')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD SkupZbo NVARCHAR(3) NULL'
EXEC sp_executesql @sql
END
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'RegCis')
IF (@idCol IS NULL)
INSERT dbo.TabDefTabUzivAtributy
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUHeliosAttr, DTUAtrJmenoVerejne, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
SELECT @idTab, 8, N'RegCis', N'TabKmenZbozi.RegCis', N'', 6, 30, 1, N'', 0, -- 6 = nvarchar, delka 30
NULL, NULL, NULL, 15, N'', 1, 0, 0, 1, 0,
0, 0, N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'RegCis')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD RegCis NVARCHAR(30) NULL'
EXEC sp_executesql @sql
END
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, 9, N'IDKmenZbozi', N'Kmenová karta', 0, 0, 1, N'', 0, -- 0 = int
NULL, NULL, NULL, 20, N'', 0, 0, 0, 1, 0,
0, 0, N'', N''
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 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, 10, N'Mnozstvi', N'Množství', 11, 0, 0, N'0', 0, -- 11 = numeric(19,6)
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
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'MnozVydane')
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, 11, N'MnozVydane', N'Množství na výdejkách', 11, 0, 0, N'0', 0, -- 11 = numeric(19,6)
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'MnozVydane')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD MnozVydane NUMERIC(19,6) NOT NULL DEFAULT 0.0'
EXEC sp_executesql @sql
END
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'PaletovyList')
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, 12, N'PaletovyList', N'Paletový list', 6, 100, 1, N'', 0, -- 6 = nvarchar, delka 100
NULL, NULL, NULL, 15, N'', 1, 0, 0, 1, 0,
0, 0, N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'PaletovyList')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD PaletovyList NVARCHAR(100) NULL'
EXEC sp_executesql @sql
END
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'Sarze')
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, 13, N'Sarze', N'Šarže', 6, 100, 1, N'', 0, -- 6 = nvarchar, delka 100
NULL, NULL, NULL, 15, N'', 1, 0, 0, 1, 0,
0, 0, N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'Sarze')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD Sarze NVARCHAR(100) NULL'
EXEC sp_executesql @sql
END
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'NocniObjednavka')
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, 14, N'NocniObjednavka', N'Noèní objednávka', 5, 0, 0, N'0', 0, -- 5 = bit
NULL, NULL, NULL, 10, N'', 1, 1, 0, 1, 0,
0, 0, N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'NocniObjednavka')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD NocniObjednavka NOT NULL DEFAULT 0'
EXEC sp_executesql @sql
END
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'Storno')
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, 15, N'Storno', N'Storno', 5, 0, 0, N'0', 0, -- 5 = bit
NULL, NULL, NULL, 10, N'', 1, 1, 0, 1, 0,
0, 0, N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'Storno')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD Storno NOT NULL DEFAULT 0'
EXEC sp_executesql @sql
END
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'Vratka')
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, 16, N'Vratka', N'Vratka', 5, 0, 0, N'0', 0, -- 5 = bit
NULL, NULL, NULL, 10, N'', 1, 1, 0, 1, 0,
0, 0, N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'Vratka')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD Vratka NOT NULL DEFAULT 0'
EXEC sp_executesql @sql
END
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'Splneno')
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, 17, N'Splneno', N'Splnìno', 5, 0, 0, N'0', 0, -- 5 = bit
NULL, NULL, NULL, 10, N'', 1, 1, 0, 1, 0,
0, 0, N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'Splneno')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD Splneno NOT NULL DEFAULT 0'
EXEC sp_executesql @sql
END
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'OdmitnutoSkladem')
IF (@idCol IS NULL)
INSERT dbo.TabDefTabUzivAtributy
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrJmenoVerejneZkr, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
SELECT @idTab, 18, N'OdmitnutoSkladem', N'Odmítnuto skladem', N'Odmítnuto', 5, 0, 0, N'0', 0, -- 5 = bit
NULL, NULL, NULL, 10, N'', 1, 1, 0, 1, 0,
0, 0, N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'OdmitnutoSkladem')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD OdmitnutoSkladem BIT NOT NULL DEFAULT 0'
EXEC sp_executesql @sql
END
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'PocetPohybuOZ')
IF (@idCol IS NULL)
INSERT dbo.TabDefTabUzivAtributy
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrJmenoVerejneZkr, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
SELECT @idTab, 19, N'PocetPohybuOZ', N'Poèet pohybù OZ', N'', 1, 0, 0, N'0', 0, -- 1 = smallint
NULL, NULL, NULL, 10, N'', 1, 1, 0, 1, 0,
0, 0, N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'PocetPohybuOZ')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD OdmitnutoSkladem NOT NULL DEFAULT 0'
EXEC sp_executesql @sql
END
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'Blokovano')
IF (@idCol IS NULL)
INSERT dbo.TabDefTabUzivAtributy
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrJmenoVerejneZkr, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
SELECT @idTab, 20, N'Blokovano', N'Blokováno', N'', 5, 0, 0, N'0', 0, -- 5 = bit
NULL, NULL, NULL, 10, N'', 1, 1, 0, 1, 0,
0, 0, N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'Blokovano')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD Blokovano BIT NOT NULL DEFAULT 0'
EXEC sp_executesql @sql
END
/*
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'DatPorizeni')
IF (@idCol IS NULL)
INSERT dbo.TabDefTabUzivAtributy
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrJmenoVerejneZkr, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
SELECT @idTab, 21, N'DatPorizeni', N'', N'TabCisOrg.DatPorizeni', 9, 0, 0, N'GETDATE()', 0, -- 9 = datetime
NULL, NULL, NULL, 18, N'', 1, 1, 0, 1, 0,
0, 0, N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'DatPorizeni')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD DatPorizeni DATETIME NOT NULL DEFAULT GETDATE()'
EXEC sp_executesql @sql
END
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'Autor')
IF (@idCol IS NULL)
INSERT dbo.TabDefTabUzivAtributy
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrJmenoVerejneZkr, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
SELECT @idTab, 22, N'Autor', N'', N'TabCisOrg.Autor', 6, 80, 0, N'SUSER_SNAME()', 0, -- 6 = nvarchar
NULL, NULL, NULL, 20, N'', 1, 1, 0, 1, 0,
0, 0, N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'Autor')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD Autor NVARCHAR(80) NOT NULL DEFAULT SUSER_SNAME()'
EXEC sp_executesql @sql
END
*/
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'DatZpracovani')
IF (@idCol IS NULL)
INSERT dbo.TabDefTabUzivAtributy
(IDDefinice, Poradi, DTUAtrJmenoSys, DTUAtrJmenoVerejne, DTUAtrJmenoVerejneZkr, DTUAtrTyp, DTUAtrDelka, DTUAtrNull, DTUAtrServerDefault, DTUAtrDruh,
DTUAtrPocitany, DTUAtrErrTextStr, DTUAtrKonverze, DTUAtrSirkaSloupce, DTUAtrMaska, DTUAtrVerejny, DTUAtrVyzadovany, DTUAtrSumovat, DTUAtrTisk, DTUEditovatelny,
DTUReadOnly, DTUHromadneZmeny, EdAtrPrenosDPSN)
SELECT @idTab, 23, N'DatZpracovani', N'Datum zpracování', N'', 9, 0, 1, N'', 0, -- 9 = datetime
NULL, NULL, NULL, 18, N'', 1, 0, 0, 1, 0,
0, 0, N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'DatZpracovani')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD DatZpracovani DATETIME NULL'
EXEC sp_executesql @sql
END
SET @idCol = (SELECT ID FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'JeMaterial')
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, 24, N'JeMaterial', N'JeMaterial', 5, 0, 0, N'1', 0, -- 5 = bit
NULL, NULL, NULL, 10, N'', 1, 1, 0, 1, 0,
0, 0, N''
IF NOT EXISTS(SELECT 1 FROM information_schema.COLUMNS where table_name=@sysTabName AND column_name=N'JeMaterial')
BEGIN
SET @sql = N'ALTER TABLE ' + @sysTabName + ' ADD JeMaterial NOT NULL DEFAULT 1'
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''
IF (@idTab IS NOT NULL) AND EXISTS (SELECT 1 FROM dbo.TabDefTabUzivAtributy WHERE IDDefinice=@idTab AND DTUAtrJmenoSys=N'IDPrijataDataJson')
IF NOT EXISTS (SELECT 1 FROM dbo.TabDefTabUzivConstraint WHERE IDDefinice=@idTab AND Typ=0 AND JmenoSys=N'IX__' + @sysTabName + N'__IDPrijataDataJson')
INSERT dbo.TabDefTabUzivConstraint
(IDDefinice, JmenoSys, Typ, MojeAtributy, CiziTabulka, CiziAtributy, IncludedAttr, VazbaNazevMoje, VazbaNazevMojeSys, VazbaNazevCizi, VazbaNazevCiziSys)
SELECT @idTab, N'IX__' + @sysTabName + N'__IDPrijataDataJson', 0, N'IDPrijataDataJson', N'', N'', N'', N'', N'', N'', N''
-- hlavni trigger
IF (@idTab IS NOT NULL) AND EXISTS (SELECT 1 FROM dbo.TabDefTabUzivTabulka WHERE DefiniceTriggeru IS NULL)
UPDATE dbo.TabDefTabUzivTabulka SET DefiniceTriggeru=N'CREATE TRIGGER ht__TabVyroba_Objednavky_DIU ON _TabVyroba_Objednavky
FOR DELETE,INSERT,UPDATE AS
IF (@@ROWCOUNT=0)
RETURN
SET NOCOUNT ON
-- 1..insert, -1..delete, 0..update
DECLARE @JakaAkce INT
SET @JakaAkce = 0
IF EXISTS(SELECT*FROM INSERTED)
SET @JakaAkce = @JakaAkce + 1
IF EXISTS(SELECT*FROM DELETED)
SET @JakaAkce = @JakaAkce - 1
DECLARE
@id INT,
@sz NVARCHAR(3),
@rc NVARCHAR(30),
@idKZ INT,
@sarze NVARCHAR(50)
-- begin: cast insert/update
IF (@JakaAkce=0) OR (@JakaAkce=1)
BEGIN
DECLARE c CURSOR LOCAL FAST_FORWARD FOR
SELECT i.ID, i.SkupZbo, i.RegCis, i.IDKmenZbozi
FROM inserted i
OPEN c
WHILE (1=1)
BEGIN
FETCH NEXT FROM c INTO @id, @sz, @rc, @idKZ
IF (@@FETCH_STATUS<>0) BREAK
IF (@idKZ IS NULL)
BEGIN
SET @idKZ = (SELECT ID FROM dbo.TabKmenZbozi WHERE SkupZbo=@sz AND RegCis=@rc)
IF (@idKZ IS NOT NULL)
UPDATE dbo._TabVyroba_Objednavky SET IDKmenZbozi=@idKZ WHERE ID=@id
END
UPDATE dbo._TabVyroba_Objednavky SET JeMaterial=(SELECT Material FROM dbo.TabKmenZbozi WHERE ID=@idKZ) WHERE ID=@id
END
CLOSE c
DEALLOCATE c
END
-- end: cast insert/update
-- begin: cast delete
IF (@JakaAkce=-1)
BEGIN
DECLARE c CURSOR LOCAL FAST_FORWARD FOR
SELECT d.ID
FROM deleted d
OPEN c
WHILE (1=1)
BEGIN
FETCH NEXT FROM c INTO @id
-- kdyz mazes hlavni zaznam, smaz odkazy na jednotlive polozky OZ
DELETE FROM dbo._TabVyroba_Objednavky_Pol WHERE IDHlava=@id
END
CLOSE c
DEALLOCATE c
-- cisteni seedu tabuly
SET @id = ISNULL( (SELECT MAX(ID) FROM dbo._TabVyroba_Objednavky), 1)
DBCC CHECKIDENT(_TabVyroba_Objednavky, RESEED, @id)
END
-- end: cast delete
' WHERE ID=@idTab