698 lines
19 KiB
Transact-SQL
698 lines
19 KiB
Transact-SQL
--- alter degli schema AS400 --> RawData (caricamento dati grezzi)
|
|
|
|
create schema RawData authorization db_accessadmin
|
|
go
|
|
|
|
-- creo schema x gestione richieste batch
|
|
create schema BatchQueue authorization db_accessadmin
|
|
go
|
|
|
|
|
|
-- lascio in schema As400 i dati attuali, creo tab nuove RAW
|
|
create table RawData.XOGIX00F(
|
|
XRPQLN numeric(6,0) not null constraint DF_XOGIX00F_XRPQLN default (0),
|
|
XRPQLD numeric(8,0) not null constraint DF_XOGIX00F_XRPQLD default (0),
|
|
XNRETI char(10) not null constraint DF_XOGIX00F_XNRETI default (''),
|
|
XCDFOR char(6) not null constraint DF_XOGIX00F_XCDFOR default (''),
|
|
XCDTER char(6) not null constraint DF_XOGIX00F_XCDTER default (''),
|
|
XCDPAR char(15) not null constraint DF_XOGIX00F_XCDPAR default (''),
|
|
XDTPRO numeric(8,0) not null constraint DF_XOGIX00F_XDTPRO default (0),
|
|
XTRPRO char(5) not null constraint DF_XOGIX00F_XTRPRO default (''),
|
|
XQTPRO numeric(5,0) not null constraint DF_XOGIX00F_XQTPRO default (0),
|
|
XDESMT char(3) not null constraint DF_XOGIX00F_XDESMT default (''),
|
|
XMATSC char(1) not null constraint DF_XOGIX00F_XMATSC default (''),
|
|
XBENQL char(1) not null
|
|
)
|
|
go
|
|
|
|
|
|
|
|
|
|
|
|
-- travaso dati da tab As400 a RawData
|
|
INSERT INTO RawData.XOGIX00F
|
|
SELECT *
|
|
FROM As400.t_XOGIX00F
|
|
GO
|
|
|
|
-- aggiungo tab rilpro
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
create table RilPro.RapQual(
|
|
nRapQual numeric(6,0) not null,
|
|
DataRapQual numeric(8,0) not null,
|
|
ProgUDC nvarchar(10) not null constraint PK_RapQual primary key,
|
|
CodFor nvarchar(6) not null,
|
|
DestTerz nvarchar(6) not null,
|
|
CodLega nvarchar(15) not null,
|
|
DataPrelFus numeric(8,0) not null,
|
|
TurnoPrelFus nvarchar(5) not null,
|
|
Qta numeric(5,0) not null,
|
|
DestLega nvarchar(3) not null,
|
|
LegaScaric nvarchar(1) not null,
|
|
BenesQual nvarchar(1) not null,
|
|
UDC nvarchar(13)
|
|
)
|
|
go
|
|
|
|
create index i_numRap on RilPro.RapQual(nRapQual)
|
|
go
|
|
|
|
create index i_dataRap on RilPro.RapQual(DataRapQual)
|
|
go
|
|
|
|
create index i_numDataRap on RilPro.RapQual(nRapQual,DataRapQual)
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
-- aggiungo stored di travaso!
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
create schema BatchQueue authorization db_accessadmin
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_batch_RapQual_S01
|
|
*
|
|
* Esegue lo step 1 (caricamento dati RAW da AS400) per la tab dei rapporti di qualità
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.09.23
|
|
*
|
|
****************************************/
|
|
create PROCEDURE BatchQueue.stp_batch_RapQual_S01
|
|
(
|
|
@minNumRapQual INT
|
|
)
|
|
AS
|
|
-- BOZZA DA COMPLETARE A CURA MAZZUCCONI!!!
|
|
|
|
DECLARE @SQL AS NVARCHAR(1000)
|
|
|
|
-- svuoto tab raw attuale
|
|
/*
|
|
DELETE FROM RawData.XOGIX00F
|
|
*/
|
|
|
|
|
|
-- INSERISCO DA AS400
|
|
/*
|
|
INSERT INTO RawData.XOGIX00F
|
|
(
|
|
SET @SQL =
|
|
N'SELECT
|
|
XRPQLN
|
|
,XRPQLD
|
|
,XNRETI
|
|
,XCDFOR
|
|
,XCDTER
|
|
,XCDPAR
|
|
,XDTPRO
|
|
,XTRPRO
|
|
,XQTPRO
|
|
,XDESMT
|
|
,XMATSC
|
|
,XBENQL
|
|
FROM OPENQUERY( P65220DC, ''SELECT * FROM MAZZT_DTV3.XOGIX00F WHERE XRPQLN >= '
|
|
SET @SQL = @SQL + @minNumRapQual + ''' )'
|
|
|
|
EXEC dbo.sp_executesql @SQL
|
|
)
|
|
*/
|
|
|
|
RETURN
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_batch_RapQual_S01
|
|
*
|
|
* Esegue lo step 2 (travaso dati RAW in RilPro) per la tab dei rapporti di qualità
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.09.23
|
|
*
|
|
****************************************/
|
|
create PROCEDURE BatchQueue.stp_batch_RapQual_S02
|
|
AS
|
|
-- eseguo UPSERT x tutti i dati disponibili in tab Raw...
|
|
|
|
-- se il dato esiste faccio UPDATE!!!
|
|
UPDATE RilPro.RapQual
|
|
SET CodFor = u.XCDFOR,
|
|
DestTerz = u.XCDTER,
|
|
CodLega = u.XCDPAR,
|
|
DataPrelFus = u.XDTPRO,
|
|
TurnoPrelFus= u.XTRPRO,
|
|
Qta = u.XQTPRO,
|
|
DestLega = u.XDESMT,
|
|
LegaScaric = u.XMATSC,
|
|
BenesQual = u.XBENQL
|
|
FROM RilPro.RapQual rq
|
|
INNER JOIN RawData.XOGIX00F u ON u.XNRETI = rq.ProgUDC; -- AND u.XRPQLN = rq.nRapQual AND u.XRPQLD = rq.DataRapQual; -- se XNRETI è univoco ...
|
|
|
|
|
|
-- creo tab temporanea x i dati inesistenti..
|
|
WITH cteInsert AS
|
|
(SELECT x.*
|
|
FROM RawData.XOGIX00F x LEFT OUTER JOIN RilPro.RapQual rq
|
|
ON x.XNRETI = rq.ProgUDC -- AND u.XRPQLN = rq.nRapQual AND u.XRPQLD = rq.DataRapQual; -- se XNRETI è univoco ...
|
|
WHERE rq.ProgUDC IS NULL )
|
|
|
|
-- se il dato non c'è faccio INSERT!!!
|
|
INSERT INTO RilPro.RapQual(nRapQual, DataRapQual, ProgUDC, CodFor, DestTerz, CodLega, DataPrelFus, TurnoPrelFus, Qta, DestLega, LegaScaric, BenesQual)
|
|
SELECT XRPQLN AS nRapQual,
|
|
XRPQLD AS DataRapQual,
|
|
XNRETI AS ProgUDC,
|
|
XCDFOR AS CodFor,
|
|
XCDTER AS DestTerz,
|
|
XCDPAR AS CodLega,
|
|
XDTPRO AS DataPrelFus,
|
|
XTRPRO AS TurnoPrelFus,
|
|
XQTPRO AS Qta,
|
|
XDESMT AS DestLega,
|
|
XMATSC AS LegaScaric,
|
|
XBENQL AS BenesQual
|
|
FROM cteInsert
|
|
|
|
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
- nuove functions
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* function componiUdc
|
|
*
|
|
* compone il cod UDC a partire da
|
|
* - CodCS (codice company sito, 2 char)
|
|
* - Flusso (codice flusso-bilancia 2 char)
|
|
* - @Anno (anno, 2 char)
|
|
* - @numUdc (progr annuale, 2 char)
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.09.23
|
|
*
|
|
****************************************/
|
|
create FUNCTION componiUdc
|
|
(
|
|
@CodCS NVARCHAR(2),
|
|
@Flusso NVARCHAR(2),
|
|
@Anno NVARCHAR(2),
|
|
@numUdc INT
|
|
)
|
|
RETURNS NVARCHAR(13)
|
|
AS
|
|
BEGIN
|
|
|
|
DECLARE @answ AS NVARCHAR(50)
|
|
|
|
SET @answ = 'U' + @CodCS + @Flusso + @Anno + dbo.f_padLeft(CAST(@numUdc AS VARCHAR(6)), 6, '0')
|
|
|
|
RETURN @answ
|
|
END
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* function getUdcComp
|
|
*
|
|
* effettua la "compattazione" dell'UDC, andando a prendere un sottoinsieme dei dati iniziali (UAAxxxx dove AA = anno...)
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.09.23
|
|
*
|
|
****************************************/
|
|
create FUNCTION getUdcComp
|
|
(
|
|
@fullUDC NVARCHAR(50),
|
|
@maxLen INTEGER
|
|
)
|
|
RETURNS NVARCHAR(20)
|
|
AS
|
|
BEGIN
|
|
-- calcolo lunghezza originale
|
|
DECLARE @fullLen AS INT
|
|
SET @fullLen = LEN(@fullUDC)
|
|
|
|
-- dichiaro stringa out (max 20 char)
|
|
DECLARE @answ NVARCHAR(20)
|
|
|
|
-- recupero parte finale (ultimi @maxLen caratteri...)
|
|
|
|
|
|
-- compongo codice
|
|
SET @answ = 'U' + RIGHT(LEFT(@fullUDC, 7), 2) + RIGHT(@fullUDC,@maxLen-3) -- tolgo 3 char: U + anno...
|
|
|
|
RETURN @answ
|
|
END
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
|
|
|
|
|
|
-- altre stored
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_rappQualAssociaUdc
|
|
*
|
|
* Associa l'UDC (creato) ad un rapp qualità di AS esistente SOLO SE UDC è NULL
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.09.23
|
|
*
|
|
****************************************/
|
|
create PROCEDURE stp_rappQualAssociaUdc
|
|
(
|
|
@ProgUDC NVARCHAR(10),
|
|
@UDC NVARCHAR(13)
|
|
)
|
|
AS
|
|
UPDATE RilPro.RapQual
|
|
SET UDC = @UDC
|
|
WHERE (ProgUDC = @ProgUDC) AND (UDC IS NULL)
|
|
|
|
-- restituisce la riga aggiornata
|
|
SELECT *
|
|
FROM RilPro.RapQual
|
|
WHERE ProgUDC = @ProgUDC
|
|
|
|
RETURN
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_rappQualGetByNumRapQual
|
|
*
|
|
* Ottiene l'elenco dei record di rapp qualità di AS dato il numero del rapporto di qualità che NON HANNO UDC
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.09.23
|
|
*
|
|
****************************************/
|
|
create PROCEDURE stp_rappQualGetByNumRapQual
|
|
(
|
|
@nRapQual INT
|
|
)
|
|
AS
|
|
-- restituisce le righe richieste
|
|
SELECT *
|
|
FROM RilPro.RapQual
|
|
WHERE (nRapQual = @nRapQual) AND (UDC IS NULL)
|
|
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
|
|
|
|
-- update stored
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_UDC_insNew
|
|
*
|
|
* crea un nuovo record nella TabStatoOdpUdc e restituisce il codice UDC appena creato
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.04.28
|
|
*
|
|
****************************************/
|
|
alter PROCEDURE stp_UDC_insNew
|
|
(
|
|
@CodCS VARCHAR(2),
|
|
@Flusso VARCHAR(2),
|
|
@Anno VARCHAR(2),
|
|
@Tara FLOAT,
|
|
@CodImballo AS VARCHAR(50),
|
|
@CodTipoDichiaraz CHAR(1),
|
|
@CodOperatore AS VARCHAR(50),
|
|
@CodEvento VARCHAR(10)
|
|
)
|
|
AS
|
|
|
|
-- DECLARE iniziali
|
|
DECLARE @UDC AS VARCHAR(20)
|
|
DECLARE @numFlu AS INT
|
|
DECLARE @numUdc AS INT
|
|
DECLARE @nextUdc AS INT
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
-- Flusso
|
|
------------------------------------------------------------------------------------------------------
|
|
-- controllo se esiste il flusso (bilancia)...
|
|
SET @numFlu = (
|
|
SELECT count(*)
|
|
FROM AnagBilance
|
|
WHERE CodBilancia = @Flusso
|
|
)
|
|
-- ...sennò lo creo...
|
|
IF(@numFlu = 0)
|
|
BEGIN
|
|
-- se c'è inserisco in tab
|
|
INSERT INTO AnagBilance(CodBilancia, DescrImpianto, CodCS)
|
|
VALUES (@Flusso, @Flusso, @CodCS)
|
|
END
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
-- UDC
|
|
------------------------------------------------------------------------------------------------------
|
|
-- controllo se ci sia già un UDC per company / flusso anno
|
|
BEGIN TRAN
|
|
-- cerco nella tab contatori UDC l'ultimo valido
|
|
SET @numUdc = (
|
|
SELECT count(*)
|
|
FROM ContatoriUdc
|
|
WHERE CodCS = @CodCS
|
|
AND Flusso = @Flusso
|
|
AND Anno = @Anno
|
|
)
|
|
-- controllo se record c'è...
|
|
IF(@numUdc > 0)
|
|
BEGIN
|
|
-- se c'è incremento di 1 in tab
|
|
UPDATE ContatoriUdc
|
|
SET LastIdx = LastIdx + 1
|
|
WHERE CodCS = @CodCS
|
|
AND Flusso = @Flusso
|
|
AND Anno = @Anno
|
|
END
|
|
ELSE
|
|
BEGIN
|
|
-- lo creo!
|
|
INSERT INTO ContatoriUdc(CodCS, Flusso, Anno, LastIdx)
|
|
VALUES (@CodCS, @Flusso, @Anno, 1)
|
|
END
|
|
-- aggiorno numero UDC
|
|
SET @numUdc = (
|
|
SELECT LastIdx
|
|
FROM ContatoriUdc
|
|
WHERE CodCS = @CodCS
|
|
AND Flusso = @Flusso
|
|
AND Anno = @Anno
|
|
)
|
|
COMMIT TRAN
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
-- Ciclo principale x inserimento nuovo record
|
|
------------------------------------------------------------------------------------------------------
|
|
-- ottengo il nuovo codice UDC completo
|
|
--SET @UDC = 'U' + @CodCS + @Flusso + @Anno + dbo.f_padLeft(CAST(@numUdc AS VARCHAR(6)), 6, '0')
|
|
SET @UDC = dbo.componiUdc(@CodCS, @Flusso, @Anno, @numUdc)
|
|
|
|
-- inserisco un nuovo record
|
|
INSERT INTO ElencoCartellini(CodCS, UDC, Tara, IdxPosizione, Qta, CodImballo, CreateDate, ModDate)
|
|
VALUES (@CodCS, @UDC, @Tara, 0, 0, @CodImballo, GETDATE(), GETDATE())
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
-- restituisco la tab dati con l'udc appena inserito
|
|
------------------------------------------------------------------------------------------------------
|
|
SELECT *
|
|
FROM ElencoCartellini
|
|
WHERE UDC = @UDC
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
RETURN
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_UDC_insNewFull
|
|
*
|
|
* crea un nuovo record nella TabStatoOdpUdc FULL (con pesi, qta...) e restituisce il codice UDC appena creato
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.04.28
|
|
*
|
|
****************************************/
|
|
alter PROCEDURE stp_UDC_insNewFull
|
|
(
|
|
@CodCS VARCHAR(2),
|
|
@Flusso VARCHAR(2),
|
|
@Anno VARCHAR(2),
|
|
@CodCliente VARCHAR(6),
|
|
@Particolare VARCHAR(15),
|
|
@CodImpianto AS VARCHAR(50),
|
|
@CodStampo VARCHAR(8),
|
|
@Esponente VARCHAR(6),
|
|
@Figura VARCHAR(4),
|
|
@DataFus DATETIME,
|
|
@TurnoFus INT,
|
|
@CodImballo VARCHAR(15),
|
|
@CodSoggetto VARCHAR(17),
|
|
@Tara FLOAT,
|
|
@IdxPosizione INT,
|
|
@CodTipoDichiaraz CHAR(1),
|
|
@CodEvento VARCHAR(10),
|
|
@Qta DECIMAL(10,2),
|
|
@PesoTot FLOAT,
|
|
@PesoCad FLOAT,
|
|
@CodStato VARCHAR(50),
|
|
@UDC_parent VARCHAR(20)
|
|
)
|
|
AS
|
|
|
|
-- DECLARE iniziali
|
|
DECLARE @UDC AS VARCHAR(20)
|
|
DECLARE @RagSociale AS VARCHAR(35)
|
|
DECLARE @DescParticolare AS VARCHAR(30)
|
|
DECLARE @DescImpianto AS VARCHAR(50)
|
|
DECLARE @DisegnoGrezzo AS VARCHAR(30)
|
|
DECLARE @NumCont AS INT
|
|
DECLARE @numFlu AS INT
|
|
DECLARE @numUdc AS INT
|
|
DECLARE @nextUdc AS INT
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
-- Caricamento Dati da anagrafica
|
|
------------------------------------------------------------------------------------------------------
|
|
-- cerco la ragione sociale...
|
|
SET @RagSociale = (
|
|
SELECT ISNULL(RagSociale, 'ND') AS RagSociale
|
|
FROM RilPro.AnagClienti
|
|
WHERE (CodCliente = @CodCliente)
|
|
)
|
|
|
|
-- Cerco descrizione del particolare...
|
|
SET @DescParticolare = (
|
|
SELECT ISNULL(DescParticolare, 'ND') AS DescParticolare
|
|
FROM RilPro.AnagParticolari
|
|
WHERE (Particolare = @Particolare)
|
|
)
|
|
|
|
-- cerco codice disegno grezzo
|
|
SET @DisegnoGrezzo = (
|
|
SELECT ISNULL(DisegnoGrezzo, 'ND') AS DescParticolare
|
|
FROM RilPro.AnagParticolari
|
|
WHERE (Particolare = @Particolare)
|
|
)
|
|
|
|
-- cerco descrizione Impianto
|
|
SET @DescImpianto = (
|
|
SELECT ISNULL(DescImpianto, 'ND') AS DescImpianto
|
|
FROM AnagImpianti
|
|
WHERE (CodImpianto = @CodImpianto)
|
|
)
|
|
|
|
|
|
|
|
-- Calcolo contatore intero successivo x il contenitore...
|
|
SET @NumCont = (
|
|
SELECT ISNULL(MAX(NumCont), 0) + 1 AS NumCont
|
|
FROM ElencoCartellini
|
|
WHERE (Particolare = @Particolare)
|
|
AND (DataFus = @DataFus)
|
|
AND (TurnoFus = @TurnoFus)
|
|
AND (CodImpianto = @CodImpianto)
|
|
AND (CodStampo = @CodStampo)
|
|
AND (Figura = @Figura)
|
|
)
|
|
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
-- Flusso
|
|
------------------------------------------------------------------------------------------------------
|
|
-- controllo se esiste il flusso (bilancia)...
|
|
SET @numFlu = (
|
|
SELECT count(*)
|
|
FROM AnagBilance
|
|
WHERE CodBilancia = @Flusso
|
|
)
|
|
-- ...sennò lo creo...
|
|
IF(@numFlu = 0)
|
|
BEGIN
|
|
-- se c'è inserisco in tab
|
|
INSERT INTO AnagBilance(CodBilancia, DescrImpianto, CodCS)
|
|
VALUES (@Flusso, @Flusso, @CodCS)
|
|
END
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
-- UDC
|
|
------------------------------------------------------------------------------------------------------
|
|
-- controllo se ci sia già un UDC per company / flusso anno
|
|
BEGIN TRAN
|
|
-- cerco nella tab contatori UDC l'ultimo valido
|
|
SET @numUdc = (
|
|
SELECT count(*)
|
|
FROM ContatoriUdc
|
|
WHERE CodCS = @CodCS
|
|
AND Flusso = @Flusso
|
|
AND Anno = @Anno
|
|
)
|
|
-- controllo se record c'è...
|
|
IF(@numUdc > 0)
|
|
BEGIN
|
|
-- se c'è incremento di 1 in tab
|
|
UPDATE ContatoriUdc
|
|
SET LastIdx = LastIdx + 1
|
|
WHERE CodCS = @CodCS
|
|
AND Flusso = @Flusso
|
|
AND Anno = @Anno
|
|
END
|
|
ELSE
|
|
BEGIN
|
|
-- lo creo!
|
|
INSERT INTO ContatoriUdc(CodCS, Flusso, Anno, LastIdx)
|
|
VALUES (@CodCS, @Flusso, @Anno, 1)
|
|
END
|
|
-- aggiorno numero UDC
|
|
SET @numUdc = (
|
|
SELECT LastIdx
|
|
FROM ContatoriUdc
|
|
WHERE CodCS = @CodCS
|
|
AND Flusso = @Flusso
|
|
AND Anno = @Anno
|
|
)
|
|
COMMIT TRAN
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
-- Ciclo principale x inserimento nuovo record
|
|
------------------------------------------------------------------------------------------------------
|
|
BEGIN TRAN
|
|
-- ottengo il nuovo codice UDC completo
|
|
--SET @UDC = 'U' + @CodCS + @Flusso + @Anno + dbo.f_padLeft(CAST(@numUdc AS VARCHAR(6)), 6, '0')
|
|
SET @UDC = dbo.componiUdc(@CodCS, @Flusso, @Anno, @numUdc)
|
|
|
|
|
|
-- inserisco un nuovo record
|
|
INSERT INTO ElencoCartellini(UDC, CodCS, CodCliente, RagSociale, Particolare, DescParticolare, DisegnoGrezzo, Esponente, CodImpianto, DescImpianto, CodStampo, Figura, DataFus, TurnoFus, CodImballo, CodSoggetto, NumCont, Tara, Qta, CodStato, IdxPosizione, PesoTot, PesoCad, CreateDate, ModDate)
|
|
VALUES (@UDC, @CodCS, @CodCliente, @RagSociale, @Particolare, @DescParticolare, @DisegnoGrezzo, @Esponente, @CodImpianto, @DescImpianto, @CodStampo, @Figura, @DataFus, @TurnoFus, @CodImballo, @CodSoggetto, @NumCont, @Tara, @Qta, @CodStato, @IdxPosizione, @PesoTot, @PesoCad, GETDATE(), GETDATE())
|
|
|
|
-- inserisco relazione aprent-child tra UDC vecchio (tara) e nuovo (pesa)
|
|
INSERT INTO RelazUDC(UDC_parent, UDC_child)
|
|
VALUES (@UDC_parent, @UDC)
|
|
COMMIT TRAN
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
/*
|
|
------------------------------------------------------------------------------------------------------
|
|
-- Salvataggio dati evento in tab StoricoEventi
|
|
------------------------------------------------------------------------------------------------------
|
|
INSERT INTO StoricoEventi(DataEv, CodEvento, CodOperatore, CodTipoDichiaraz, CodCS, UDC, Qta, PesoTot, PesoCad, Particolare, CodStato, CodStampo, Figura, FiguraIncisa)
|
|
VALUES (GETDATE(), @CodEvento, @CodOperatore, @CodTipoDichiaraz, @CodCS, @UDC, @Qta, @PesoTot, @PesoCad, @Particolare, @CodStato, @CodStampo, @Figura, @FiguraIncisa)
|
|
------------------------------------------------------------------------------------------------------
|
|
*/
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
-- restituisco la tab dati con l'udc appena inserito
|
|
------------------------------------------------------------------------------------------------------
|
|
SELECT *
|
|
FROM ElencoCartellini
|
|
WHERE UDC = @UDC
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
-- aggiungo stato MP
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
INSERT INTO dbo.AnagStatiProdotto
|
|
VALUES (N'MP', N'Materia Prima')
|
|
go
|
|
|
|
commit transaction
|
|
go
|
|
|
|
|
|
|
|
|
|
|
|
-- registro versione...
|
|
INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(257, GETDATE())
|
|
GO |