Files
MoonPro.net/SQL Utils/V2.0/MoonPro_00245.sql
T
Samuele E. Locatelli 2b1479f315 spostamento update SQL
2018-05-03 15:06:47 +02:00

539 lines
20 KiB
Transact-SQL

set xact_abort on
go
begin transaction
go
set ANSI_NULLS on
go
-- =============================================
-- TRIGGER trg_kanban4articoloIns
--
-- Author: S.E.L.
-- Create date: 2011.05.17
-- Description: Controlla esistenza etichette kanban per l'articolo creato ed in caso sia necessario le crea
-- =============================================
create TRIGGER trg_kanban4articoloIns
ON AnagArticoli
AFTER INSERT
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- seleziono il nuovo articolo...
DECLARE @kanbanTrovati INT
DECLARE @CodArticolo NVARCHAR(50)
SET @CodArticolo = ( SELECT CodArticolo FROM inserted )
-- ...e cerco se ci sia un kanban x tale articolo tabella
SET @kanbanTrovati = ( SELECT ISNULL(COUNT(*),0) FROM Kanban WHERE CodArticolo = @CodArticolo )
-- se non ne ho trovati creo articolo!
IF(@kanbanTrovati = 0)
BEGIN
-- inserisco nuovo articolo!
INSERT INTO Kanban(MatricolaKanban, KanbanCode, TempoCicloBase, PzPallet, CodArticolo)
VALUES ('KA'+@CodArticolo, @CodArticolo, 1, 1, @CodArticolo)
END
END
go
-- =============================================
-- TRIGGER trg_kanban4articoloUpd
--
-- Author: S.E.L.
-- Create date: 2011.05.17
-- Description: Controlla esistenza etichette kanban per l'articolo modificato ed in caso sia necessario le modifica
-- =============================================
create TRIGGER trg_kanban4articoloUpd
ON AnagArticoli
AFTER UPDATE
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- solo se è stato aggiornato codice articolo...
IF UPDATE(CodArticolo)
BEGIN
-- seleziono l'articolo...
DECLARE @kanbanTrovati INT
DECLARE @CodArticoloOld NVARCHAR(50)
DECLARE @CodArticoloNew NVARCHAR(50)
SET @CodArticoloOld = ( SELECT CodArticolo FROM deleted )
SET @CodArticoloNew = ( SELECT CodArticolo FROM inserted )
-- ...e cerco se ci sia un kanban x tale articolo tabella
SET @kanbanTrovati = ( SELECT ISNULL(COUNT(*),0) FROM Kanban WHERE CodArticolo = @CodArticoloOld )
-- se non ne ho trovati creo articolo!
IF(@kanbanTrovati = 0)
BEGIN
-- inserisco nuovo articolo!
INSERT INTO Kanban(MatricolaKanban, KanbanCode, TempoCicloBase, PzPallet, CodArticolo)
VALUES ('KA'+@CodArticoloNew, @CodArticoloNew, 1, 1, @CodArticoloNew)
END
ELSE -- altrimenti aggiorno!
BEGIN
UPDATE Kanban
SET MatricolaKanban = 'KA'+@CodArticoloNew,
CodArticolo = @CodArticoloNew,
KanbanCode = @CodArticoloNew
WHERE CodArticolo = @CodArticoloOld
END
END
END
go
commit
go
set xact_abort on
go
begin transaction
go
set ANSI_NULLS on
go
create TRIGGER trg_updateKanban
ON EventList
FOR INSERT
AS /* dichiarazione variabili */
DECLARE @IdxTipo INT
DECLARE @TabAzione NVARCHAR(50)
DECLARE @Azione NVARCHAR(50)
DECLARE @IdxMacchina NVARCHAR(50)
DECLARE @MatricolaKanban NVARCHAR(50)
DECLARE @MatricolaKanbanOk NVARCHAR(50)
DECLARE @CodArticolo NVARCHAR(50)
DECLARE @TCMedio DECIMAL(18,8)
DECLARE @DataOra DATETIME
DECLARE @DataOraPrec DATETIME
DECLARE @NumPz INT
/* recupero valori dell'INSERT */
SET @IdxTipo = ( SELECT i.IdxTipo FROM inserted i )
SET @IdxMacchina = ( SELECT i.IdxMacchina FROM inserted i )
/* recupero altri valori */
SET @TabAzione = ( SELECT ISNULL(TabAzione,'') FROM AnagraficaEventi WHERE IdxTipo = @IdxTipo )
SET @Azione = ( SELECT ISNULL(Azione,'') FROM AnagraficaEventi WHERE IdxTipo = @IdxTipo )
/* controllo se l'evento richieda azioni successive */
IF(@TabAzione <> '' AND @Azione <> '')
BEGIN
/* azioni richieste: seconda dei casi eseguo... */
IF(@TabAzione = 'TempiCicloRilevati' AND @Azione = 'Insert')
BEGIN
/* calcolo valori */
SET @DataOra = ( SELECT i.InizioStato FROM inserted i )
SET @MatricolaKanban = ( SELECT i.MatricolaKanban FROM inserted i )
SET @NumPz = ( SELECT CASE WHEN (ISNUMERIC(value)=1) THEN value ELSE 1 END FROM inserted i )
SET @CodArticolo = ( SELECT CodArticolo FROM Kanban WHERE MatricolaKanban = @MatricolaKanban )
/* calcolo tempo tra gli ultimi 2 eventi "contapezzi" */
SET @DataOraPrec = ( SELECT ISNULL((SELECT Top 1 InizioStato FROM EventList WHERE IdxMacchina = @IdxMacchina AND IdxTipo = @IdxTipo AND InizioStato < @DataOra ORDER BY InizioStato DESC), @DataOra ) )
/* è in millisecondi, divido per 60'000.00 x avere minuti centesimali*/
SET @TCMedio = ( SELECT (DATEDIFF(ms, @DataOraPrec, @DataOra) / 60000.00 ) )
/* inserisco riga di tempo ciclo */
INSERT INTO TempiCicloRilevati
VALUES(@IdxMacchina, @CodArticolo, @DataOra, @TCMedio, @NumPz)
END
ELSE IF(@TabAzione = 'TempiCicloRilevati' AND @Azione = 'Stop2StartCiclo')
BEGIN
/* calcolo valori */
SET @DataOra = ( SELECT i.InizioStato FROM inserted i )
SET @MatricolaKanban = ( SELECT i.MatricolaKanban FROM inserted i )
/* prendo la matricola dall'evento inizio (precedente) */
SET @MatricolaKanbanOk = ( SELECT ISNULL((SELECT Top 1 MatricolaKanban FROM EventList WHERE IdxMacchina = @IdxMacchina AND IdxTipo = @IdxTipo - 1 AND InizioStato < @DataOra ORDER BY InizioStato DESC), @MatricolaKanban ) )
-- calcolare num pezzi da codice...
SET @NumPz = ( SELECT CASE WHEN (ISNUMERIC(value)=1) THEN value ELSE 1 END FROM inserted i )
SET @CodArticolo = ( SELECT CodArticolo FROM Kanban WHERE MatricolaKanban = @MatricolaKanbanOk )
/* calcolo tempo tra eventi "contapezzi" inizio - fine NB: idxEvento per fine è idxEvento inizio + 1 ... HARD CODED!!! */
SET @DataOraPrec = ( SELECT ISNULL((SELECT Top 1 InizioStato FROM EventList WHERE IdxMacchina = @IdxMacchina AND IdxTipo = @IdxTipo - 1 AND InizioStato < @DataOra ORDER BY InizioStato DESC), @DataOra ) )
/* è in millisecondi, divido per 60'000.00 x avere minuti centesimali*/
SET @TCMedio = ( SELECT (DATEDIFF(ms, @DataOraPrec, @DataOra) / 60000.00 ) )
/* inserisco riga di tempo ciclo */
INSERT INTO TempiCicloRilevati
VALUES(@IdxMacchina, @CodArticolo, @DataOra, @TCMedio, @NumPz)
END
ELSE IF(@TabAzione = 'TempiCicloRilevati' AND @Azione = 'Stop2StopCiclo')
BEGIN
/* calcolo valori */
SET @DataOra = ( SELECT i.InizioStato FROM inserted i )
SET @MatricolaKanban = ( SELECT i.MatricolaKanban FROM inserted i )
/* prendo la matricola dall'evento inizio (precedente) */
SET @MatricolaKanbanOk = ( SELECT ISNULL((SELECT Top 1 MatricolaKanban FROM EventList WHERE IdxMacchina = @IdxMacchina AND IdxTipo = @IdxTipo AND InizioStato < @DataOra ORDER BY InizioStato DESC), @MatricolaKanban ) )
-- calcolare num pezzi da codice...
SET @NumPz = ( SELECT PzPallet FROM Kanban WHERE MatricolaKanban = @MatricolaKanbanOk )
SET @CodArticolo = ( SELECT CodArticolo FROM Kanban WHERE MatricolaKanban = @MatricolaKanbanOk )
/* calcolo tempo tra eventi "contapezzi" fine - fine NB: idxEvento per fine è idxEvento inizio + 1 ... HARD CODED!!! */
SET @DataOraPrec = ( SELECT ISNULL((SELECT Top 1 InizioStato FROM EventList WHERE IdxMacchina = @IdxMacchina AND IdxTipo = @IdxTipo AND InizioStato < @DataOra ORDER BY InizioStato DESC), @DataOra ) )
/* è in millisecondi, divido per 60'000.00 x avere minuti centesimali*/
SET @TCMedio = ( SELECT (DATEDIFF(ms, @DataOraPrec, @DataOra) / 60000.00 ) )
/* inserisco riga di tempo ciclo */
INSERT INTO TempiCicloRilevati
VALUES(@IdxMacchina, @CodArticolo, @DataOra, @TCMedio, @NumPz)
END
END
go
/***************************************************
* Trigger trg_doActions
*
* processa eventuali azioni legate ad un inserimento evento
*
* modificato: S.E.L.
* 2011.05.18
*
***************************************************/
alter TRIGGER trg_doActions
ON EventList
FOR INSERT
AS /* dichiarazione variabili */
DECLARE @IdxTipo INT
DECLARE @TabAzione NVARCHAR(50)
DECLARE @Azione NVARCHAR(50)
DECLARE @IdxMacchina NVARCHAR(50)
DECLARE @MatricolaKanban NVARCHAR(50)
DECLARE @MatricolaKanbanOk NVARCHAR(50)
DECLARE @CodArticolo NVARCHAR(50)
DECLARE @TCMedio DECIMAL(18,8)
DECLARE @DataOra DATETIME
DECLARE @DataOraPrec DATETIME
DECLARE @NumPz INT
/* recupero valori dell'INSERT */
SET @IdxTipo = ( SELECT i.IdxTipo FROM inserted i )
SET @IdxMacchina = ( SELECT i.IdxMacchina FROM inserted i )
/* recupero altri valori */
SET @TabAzione = ( SELECT ISNULL(TabAzione,'') FROM AnagraficaEventi WHERE IdxTipo = @IdxTipo )
SET @Azione = ( SELECT ISNULL(Azione,'') FROM AnagraficaEventi WHERE IdxTipo = @IdxTipo )
/* controllo se l'evento richieda azioni successive */
IF(@TabAzione <> '' AND @Azione <> '')
BEGIN
/* azioni richieste: seconda dei casi eseguo... */
/******************************************
*
* Calcolo tempo ciclo per INIZIO
*
******************************************/
IF(@TabAzione = 'TempiCicloRilevati' AND @Azione = 'Insert')
BEGIN
/* calcolo valori */
SET @DataOra = ( SELECT i.InizioStato FROM inserted i )
SET @MatricolaKanban = ( SELECT i.MatricolaKanban FROM inserted i )
SET @NumPz = ( SELECT CASE WHEN (ISNUMERIC(value)=1) THEN value ELSE 1 END FROM inserted i )
SET @CodArticolo = ( SELECT CodArticolo FROM Kanban WHERE MatricolaKanban = @MatricolaKanban )
/* calcolo tempo tra gli ultimi 2 eventi "contapezzi" */
SET @DataOraPrec = ( SELECT ISNULL((SELECT Top 1 InizioStato FROM EventList WHERE IdxMacchina = @IdxMacchina AND IdxTipo = @IdxTipo AND InizioStato < @DataOra ORDER BY InizioStato DESC), @DataOra ) )
/* è in millisecondi, divido per 60'000.00 x avere minuti centesimali*/
SET @TCMedio = ( SELECT (DATEDIFF(ms, @DataOraPrec, @DataOra) / 60000.00 ) )
/* inserisco riga di tempo ciclo */
INSERT INTO TempiCicloRilevati
VALUES(@IdxMacchina, @CodArticolo, @DataOra, @TCMedio, @NumPz)
END
/******************************************
*
* Calcolo tempo ciclo con logica stop/start
*
******************************************/
ELSE IF(@TabAzione = 'TempiCicloRilevati' AND @Azione = 'Stop2StartCiclo')
BEGIN
/* calcolo valori */
SET @DataOra = ( SELECT i.InizioStato FROM inserted i )
SET @MatricolaKanban = ( SELECT i.MatricolaKanban FROM inserted i )
/* prendo la matricola dall'evento inizio (precedente) */
SET @MatricolaKanbanOk = ( SELECT ISNULL((SELECT Top 1 MatricolaKanban FROM EventList WHERE IdxMacchina = @IdxMacchina AND IdxTipo = @IdxTipo - 1 AND InizioStato < @DataOra ORDER BY InizioStato DESC), @MatricolaKanban ) )
-- calcolare num pezzi da codice...
SET @NumPz = ( SELECT CASE WHEN (ISNUMERIC(value)=1) THEN value ELSE 1 END FROM inserted i )
SET @CodArticolo = ( SELECT CodArticolo FROM Kanban WHERE MatricolaKanban = @MatricolaKanbanOk )
/* calcolo tempo tra eventi "contapezzi" inizio - fine NB: idxEvento per fine è idxEvento inizio + 1 ... HARD CODED!!! */
SET @DataOraPrec = ( SELECT ISNULL((SELECT Top 1 InizioStato FROM EventList WHERE IdxMacchina = @IdxMacchina AND IdxTipo = @IdxTipo - 1 AND InizioStato < @DataOra ORDER BY InizioStato DESC), @DataOra ) )
/* è in millisecondi, divido per 60'000.00 x avere minuti centesimali*/
SET @TCMedio = ( SELECT (DATEDIFF(ms, @DataOraPrec, @DataOra) / 60000.00 ) )
/* inserisco riga di tempo ciclo */
INSERT INTO TempiCicloRilevati
VALUES(@IdxMacchina, @CodArticolo, @DataOra, @TCMedio, @NumPz)
END
/******************************************
*
* calcolo tempo ciclo con logica stop/stop
*
******************************************/
ELSE IF(@TabAzione = 'TempiCicloRilevati' AND @Azione = 'Stop2StopCiclo')
BEGIN
/* calcolo valori */
SET @DataOra = ( SELECT i.InizioStato FROM inserted i )
SET @MatricolaKanban = ( SELECT i.MatricolaKanban FROM inserted i )
/* prendo la matricola dall'evento inizio (precedente) */
SET @MatricolaKanbanOk = ( SELECT ISNULL((SELECT Top 1 MatricolaKanban FROM EventList WHERE IdxMacchina = @IdxMacchina AND IdxTipo = @IdxTipo AND InizioStato < @DataOra ORDER BY InizioStato DESC), @MatricolaKanban ) )
-- calcolare num pezzi da codice...
SET @NumPz = ( SELECT PzPallet FROM Kanban WHERE MatricolaKanban = @MatricolaKanbanOk )
SET @CodArticolo = ( SELECT CodArticolo FROM Kanban WHERE MatricolaKanban = @MatricolaKanbanOk )
/* calcolo tempo tra eventi "contapezzi" fine - fine NB: idxEvento per fine è idxEvento inizio + 1 ... HARD CODED!!! */
SET @DataOraPrec = ( SELECT ISNULL((SELECT Top 1 InizioStato FROM EventList WHERE IdxMacchina = @IdxMacchina AND IdxTipo = @IdxTipo AND InizioStato < @DataOra ORDER BY InizioStato DESC), @DataOra ) )
/* è in millisecondi, divido per 60'000.00 x avere minuti centesimali*/
SET @TCMedio = ( SELECT (DATEDIFF(ms, @DataOraPrec, @DataOra) / 60000.00 ) )
/* inserisco riga di tempo ciclo */
INSERT INTO TempiCicloRilevati
VALUES(@IdxMacchina, @CodArticolo, @DataOra, @TCMedio, @NumPz)
END
/******************************************
*
* Aggiorno kanban in dati macchine per
* INIZIO ATTREZZAGGIO
*
******************************************/
ELSE IF(@TabAzione = 'DatiMacchine' AND @Azione = 'Inizio')
BEGIN
/* calcolo valori */
SET @MatricolaKanban = ( SELECT i.MatricolaKanban FROM inserted i )
/* aggiorno riga di dati macchina */
UPDATE DatiMacchine
SET kanban_A = @MatricolaKanban,
kanban_B = @MatricolaKanban
WHERE idxMacchina = @IdxMacchina
/* aggiorno stato macchina */
UPDATE StatoMacchine
SET MatricolaKanban = @MatricolaKanban
WHERE idxMacchina = @IdxMacchina
/* aggiorno dati kanban statoMacchine... */
UPDATE StatoMacchine
SET KanbanCode = k.KanbanCode, TempoCicloBase = k.TempoCicloBase, PzPalletProd = k.PzPallet
FROM Kanban AS k INNER JOIN StatoMacchine ON k.MatricolaKanban = StatoMacchine.MatricolaKanban
WHERE (StatoMacchine.idxMacchina = @IdxMacchina)
END
/******************************************
*
* Aggiorno kanban in dati macchine per
* FINE PRODUZIONE
*
******************************************/
ELSE IF(@TabAzione = 'DatiMacchine' AND @Azione = 'Fine')
BEGIN
/* calcolo valori */
SET @MatricolaKanban = 'KAND' -- kanban non definito !!!HARD CODED!!!
/* aggiorno riga di dati macchina */
UPDATE DatiMacchine
SET kanban_A = @MatricolaKanban,
kanban_B = @MatricolaKanban
WHERE idxMacchina = @IdxMacchina
/* aggiorno stato macchina */
UPDATE StatoMacchine
SET MatricolaKanban = @MatricolaKanban
WHERE idxMacchina = @IdxMacchina
/* aggiorno dati kanban statoMacchine... */
UPDATE StatoMacchine
SET KanbanCode = k.KanbanCode, TempoCicloBase = k.TempoCicloBase, PzPalletProd = k.PzPallet
FROM Kanban AS k INNER JOIN StatoMacchine ON k.MatricolaKanban = StatoMacchine.MatricolaKanban
WHERE (StatoMacchine.idxMacchina = @IdxMacchina)
END
END
go
commit
go
set xact_abort on
go
begin transaction
go
set ANSI_NULLS on
go
/*************************************
* Function f_turnoByDate
* calcola il turno in cui cade una data
*
* modif.: S.E.L.
* il: 2011.03.30
**************************************/
create FUNCTION f_oreNdPeriodo
(
@dataFrom DATETIME,
@dataTo DATETIME
)
RETURNS DECIMAL(18,8)
AS
BEGIN
/*
per farlo va reinserito codice come GIM in questo modo...
- tempo totale iniziale c'è...
A) va tolto tempo dell'apertura std
B) vanno tolte le fermate tipo ferie, chiusure...x la loro durata std
*/
RETURN 0.0
END
go
commit
go
set xact_abort on
go
begin transaction
go
set ANSI_NULLS on
go
/*************************************
* STORED PROCEDURE stp_DP_ricalcolaTempi
*
* calcola i tempi
* - T_AutoRun (lavorazione in auto)
* - T_Auto (in auto sia lavora che non lavora)
* - T_fermo (tempo fermata)
* - T_ND (tempo ND)
*
* dato una riga di dichairazione produzione (prendendo come riferimento i tempi from/to)
*
* modif.: S.E.L. - 2011.04.18
**************************************/
alter PROCEDURE stp_DP_ricalcolaTempi
(
@idxConferma INT
)
AS
BEGIN TRAN
-- dichiaro variabili
DECLARE @DataFrom AS DATETIME
DECLARE @DataTo AS DATETIME
DECLARE @IdxMacchina AS NVARCHAR(50)
-- variabili tempo
DECLARE @TempoCron DECIMAL(18,8)
DECLARE @TempoND DECIMAL(18,8)
DECLARE @TempoApertura DECIMAL(18,8)
DECLARE @TempoOFF DECIMAL(18,8)
DECLARE @TempoON DECIMAL(18,8)
DECLARE @TempoFermoON DECIMAL(18,8)
DECLARE @TempoAuto DECIMAL(18,8)
DECLARE @TempoFermoAuto DECIMAL(18,8)
DECLARE @TempoRun DECIMAL(18,8)
-- setto date
SET @DataFrom = ( SELECT DataOraFrom FROM DatiConfermati WHERE IdxConferma = @idxConferma )
SET @DataTo = ( SELECT DataOraTo FROM DatiConfermati WHERE IdxConferma = @idxConferma )
SET @IdxMacchina = ( SELECT IdxMacchina FROM DatiConfermati WHERE IdxConferma = @idxConferma )
-- calcolo i tempi
SET @TempoCron = ( SELECT CAST(ISNULL(DATEDIFF (n, @DataFrom, @DataTo), 0) AS DECIMAL(18,8)) / 60)
SET @TempoND = dbo.f_oreNdPeriodo(@DataFrom, @DataTo)-- 0 -- FARE!!! (SELECT DATEDIFF (n, DataOraFrom, DataOraTo) / 60 FROM DatiConfermati WHERE IdxConferma = @idxConferma )
SET @TempoApertura = @TempoCron - @TempoND
SET @TempoOFF = ( SELECT CAST(ISNULL(SUM(ddb.DurataMinuti),0) AS DECIMAL(18,8)) / 60 AS ore FROM DiarioDiBordo ddb
INNER JOIN AnagraficaStati a ON ddb.IdxStato = a.IdxStato
WHERE (a.ClasseTempo = 'T_OFF')
AND (ddb.IdxMacchina = @IdxMacchina)
AND (ddb.InizioStato >= @DataFrom)
AND (ddb.FineStato <= @DataTo) )-- sistemare eventuali eventi sui bordi inizio/fine
SET @TempoON = @TempoApertura - @TempoOFF
SET @TempoFermoON = ( SELECT CAST(ISNULL(SUM(ddb.DurataMinuti),0) AS DECIMAL(18,8)) / 60 AS ore FROM DiarioDiBordo ddb
INNER JOIN AnagraficaStati a ON ddb.IdxStato = a.IdxStato
WHERE (a.ClasseTempo = 'T_FermoOn')
AND (ddb.IdxMacchina = @IdxMacchina)
AND (ddb.InizioStato >= @DataFrom)
AND (ddb.FineStato <= @DataTo) )-- sistemare eventuali eventi sui bordi inizio/fine
SET @TempoAuto = @TempoON - @TempoFermoON
/* -- lo derivo x riportare eventuali "resti" ed errori riclassifica
SET @TempoFermoAuto = (SELECT SUM(ddb.DurataMinuti) / 60 AS ore FROM DiarioDiBordo ddb INNER JOIN AnagraficaStati a ON ddb.IdxStato = a.IdxStato
WHERE (a.ClasseTempo = 'T_FermoAuto')
AND (ddb.IdxMacchina = @IdxMacchina)
AND (ddb.InizioStato >= @DataFrom)
AND (ddb.FineStato <= @DataTo) )-- sistemare eventuali eventi sui bordi inizio/fine
*/
SET @TempoRun = ( SELECT CAST(ISNULL(SUM(ddb.DurataMinuti),0) AS DECIMAL(18,8)) / 60 AS ore FROM DiarioDiBordo ddb
INNER JOIN AnagraficaStati a ON ddb.IdxStato = a.IdxStato
WHERE (a.ClasseTempo = 'T_Run')
AND (ddb.IdxMacchina = @IdxMacchina)
AND (ddb.InizioStato >= @DataFrom)
AND (ddb.FineStato <= @DataTo) )-- sistemare eventuali eventi sui bordi inizio/fine
SET @TempoFermoAuto = @TempoAuto - @TempoRun
-- aggiorno record
UPDATE DatiConfermati
SET TempoCron = @TempoCron,
TempoND = @TempoND,
TempoApertura = @TempoApertura,
TempoOFF = @TempoOFF,
TempoON = @TempoON,
TempoFermoON = @TempoFermoON,
TempoAuto = @TempoAuto,
TempoFermoAuto = @TempoFermoAuto,
TempoRun = @TempoRun
WHERE idxConferma = @idxConferma
COMMIT TRAN
RETURN
go
commit
go
set xact_abort on
go
begin transaction
go
UPDATE dbo.AnagraficaEventi SET
TabAzione=N'DatiMacchine', Azione=N'Inizio'
WHERE IdxTipo=2
UPDATE dbo.AnagraficaEventi SET
TabAzione=N'DatiMacchine', Azione=N'Fine'
WHERE IdxTipo=7
go
commit transaction
go
set xact_abort on
go
begin transaction
go
INSERT INTO dbo.Kanban
VALUES (N'KAND', N'ND', 1, 1, N'ND')
go
commit transaction
go
-- registro versione...
INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(245, GETDATE())
GO