205 lines
6.4 KiB
Transact-SQL
205 lines
6.4 KiB
Transact-SQL
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_UDC_getByTipoDelibera
|
|
*
|
|
* elenco cartellini che possono essere oggetto della delibera indicata
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.07.29
|
|
*
|
|
****************************************/
|
|
alter PROCEDURE stp_UDC_getByTipoDelibera
|
|
(
|
|
@CodTipoDelibera NVARCHAR(50),
|
|
@DataFrom DATETIME,
|
|
@DataTo DATETIME
|
|
)
|
|
AS
|
|
|
|
SELECT *
|
|
FROM ElencoCartellini
|
|
WHERE IdxPosizione IN (
|
|
SELECT TabTranPosizEventi.IdxPosizione
|
|
FROM TabTranPosizEventi INNER JOIN AnagTipoEvento ON TabTranPosizEventi.CodEvento = AnagTipoEvento.CodEvento
|
|
INNER JOIN AnagTipoDelibere ON AnagTipoEvento.CodEvento = AnagTipoDelibere.CodEvento
|
|
WHERE (AnagTipoDelibere.CodTipoDelibera = @CodTipoDelibera)
|
|
) -- vincolo su posizioni accettabili
|
|
AND DataFus BETWEEN @DataFrom AND @DataTo -- vincolo data
|
|
AND UDC NOT IN ( SELECT DISTINCT UDC FROM PosizioneUdcCorrente)
|
|
ORDER BY UDC DESC
|
|
|
|
RETURN
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_UDC_update
|
|
*
|
|
* aggiorna un cartellino dato il suo codice UDC e tutti i parametri da aggiornare
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.04.30
|
|
*
|
|
****************************************/
|
|
alter PROCEDURE stp_UDC_update
|
|
(
|
|
@UDC_edit VARCHAR(20),
|
|
@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 @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 NumCont
|
|
FROM ElencoCartellini
|
|
WHERE (UDC = @UDC_edit)
|
|
)
|
|
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
-- 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
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
-- Ciclo principale x edit record
|
|
------------------------------------------------------------------------------------------------------
|
|
BEGIN TRAN
|
|
/*
|
|
-- registro in StoricoCartellini
|
|
INSERT INTO StoricoCartellini(DataEv, CodEvento, CodTipoDichiaraz, UDC, CodCS,CodCliente, RagSociale, Particolare, DescParticolare,
|
|
DisegnoGrezzo, Esponente, CodImpianto, DescImpianto, CodStampo, Figura, DataFus, TurnoFus, CodImballo, CodSoggetto,
|
|
NumCont, Tara, Qta, CodStato, IdxPosizione, PesoTot, PesoCad)
|
|
SELECT GETDATE() AS DataEv, @CodEvento AS CodEvento, @CodTipoDichiaraz AS CodTipoDichiaraz, UDC, CodCS,
|
|
CodCliente, RagSociale, Particolare, DescParticolare, DisegnoGrezzo, Esponente, CodImpianto, DescImpianto, CodStampo, Figura,
|
|
DataFus, TurnoFus, CodImballo, @CodSoggetto AS CodSoggetto, NumCont, Tara, Qta, CodStato, IdxPosizione, PesoTot, PesoCad
|
|
FROM ElencoCartellini
|
|
WHERE (UDC = @UDC_edit)
|
|
*/
|
|
|
|
-- elimino vecchio record parent/child
|
|
DELETE FROM RelazUDC
|
|
WHERE (UDC_child = @UDC_edit)
|
|
|
|
-- modifico il record
|
|
UPDATE ElencoCartellini
|
|
SET CodCS = @CodCS, CodCliente = @CodCliente, RagSociale = @RagSociale, Particolare = @Particolare, DescParticolare = @DescParticolare,
|
|
DisegnoGrezzo = @DisegnoGrezzo, Esponente = @Esponente, CodImpianto = @CodImpianto, DescImpianto = @DescImpianto, CodStampo = @CodStampo,
|
|
Figura = @Figura, DataFus = @DataFus, TurnoFus = @TurnoFus, CodImballo = @CodImballo, CodSoggetto = @CodSoggetto, NumCont = @NumCont,
|
|
Tara = @Tara, Qta = @Qta, CodStato = @CodStato, IdxPosizione = @IdxPosizione, PesoTot = @PesoTot, PesoCad = @PesoCad, ModDate = GETDATE()
|
|
WHERE UDC = @UDC_edit
|
|
|
|
-- inserisco relazione aprent-child tra UDC vecchio (tara) e nuovo (pesa)
|
|
INSERT INTO RelazUDC(UDC_parent, UDC_child)
|
|
VALUES (@UDC_parent, @UDC_edit)
|
|
COMMIT TRAN
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
-- restituisco la tab dati con l'udc appena inserito
|
|
------------------------------------------------------------------------------------------------------
|
|
SELECT *
|
|
FROM ElencoCartellini
|
|
WHERE UDC = @UDC_edit
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
|
|
|
|
|
|
-- registro versione...
|
|
INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(305, GETDATE())
|
|
GO
|