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