940 lines
18 KiB
Transact-SQL
940 lines
18 KiB
Transact-SQL
-- mod tabella
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
alter table TipoListaPrelievo add
|
|
IdxPosizioneFinal int
|
|
go
|
|
|
|
exec sp_rename 'stp_getTipoListaByCodTipoLista', 'stp_TL_getByCodTipoLista', 'object'
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
-- crea stored
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_getUDC_Older
|
|
*
|
|
* ottiene l'elenco degli UDC più vecchi in ordine asc TRA QUELLI in una data posizione
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.07.06
|
|
*
|
|
****************************************/
|
|
create PROCEDURE stp_getUDC_Older
|
|
(
|
|
@Esponente VARCHAR(50),
|
|
@Particolare VARCHAR (50),
|
|
@IdxPosizione INT
|
|
)
|
|
AS
|
|
|
|
SELECT *
|
|
FROM ElencoCartellini
|
|
WHERE (Esponente = @Esponente) AND (Particolare = @Particolare) AND (IdxPosizione = @IdxPosizione)
|
|
ORDER BY DataFus
|
|
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
-- crea stored
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_getUDC_UnusedOlder
|
|
*
|
|
* ottiene l'elenco degli UDC più vecchi in ordine asc TRA QUELLI NON ANCORA PRELEVATI nè proposti nella lista corrente
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.07.06
|
|
*
|
|
****************************************/
|
|
create PROCEDURE stp_getUDC_UnusedOlder
|
|
(
|
|
@CodLista VARCHAR(12)
|
|
)
|
|
AS
|
|
|
|
-- variabili locali che mi servono
|
|
DECLARE @Figura AS VARCHAR(4)
|
|
DECLARE @Esponente AS VARCHAR(6)
|
|
DECLARE @CodImballo AS VARCHAR(15)
|
|
DECLARE @Particolare AS VARCHAR (50)
|
|
DECLARE @CodTipoLista AS VARCHAR (10)
|
|
DECLARE @IdxPosizione AS INT
|
|
SET @Figura = (SELECT Figura FROM ElencoListePrelievo WHERE CodLista = @CodLista)
|
|
SET @Esponente = (SELECT Esponente FROM ElencoListePrelievo WHERE CodLista = @CodLista)
|
|
SET @CodImballo = (SELECT CodImballo FROM ElencoListePrelievo WHERE CodLista = @CodLista)
|
|
SET @Particolare = (SELECT Particolare FROM ElencoListePrelievo WHERE CodLista = @CodLista)
|
|
SET @CodTipoLista = (SELECT CodTipoLista FROM ElencoListePrelievo WHERE CodLista = @CodLista)
|
|
SET @IdxPosizione = (SELECT IdxPosizione FROM TipoListaPrelievo WHERE CodTipoLista = @CodTipoLista)
|
|
|
|
-- effettuo la selezione
|
|
SELECT *
|
|
FROM ElencoCartellini
|
|
WHERE (Particolare = @Particolare) AND (IdxPosizione = @IdxPosizione) AND
|
|
(Figura = CASE WHEN @Figura = '*' THEN Figura ELSE @Figura END) AND
|
|
(Esponente = CASE WHEN @Esponente = '*' THEN Esponente ELSE @Esponente END) AND
|
|
(CodImballo = CASE WHEN @CodImballo = '*' THEN CodImballo ELSE @CodImballo END)
|
|
AND UDC NOT IN (
|
|
SELECT DISTINCT UDC
|
|
FROM RigheListePrelievo INNER JOIN ElencoListePrelievo
|
|
ON RigheListePrelievo.CodLista = ElencoListePrelievo.CodLista
|
|
WHERE (ElencoListePrelievo.CodLista = @CodLista)
|
|
OR (ElencoListePrelievo.CodLista <> @CodLista AND CodStatoLista > 1 AND Prelevato = 1)
|
|
)
|
|
ORDER BY ElencoCartellini.DataFus
|
|
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
|
|
|
|
-- crea stored
|
|
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_LP_deleteQuery
|
|
*
|
|
* elimina lista di prelievo (e righe lista associate) della list aindicata
|
|
*
|
|
* Steamware, S.E.L. 8 (from Stintino)
|
|
* mod: 2010.07.15
|
|
*
|
|
************************************/
|
|
create PROCEDURE stp_LP_deleteQuery
|
|
(
|
|
@Original_CodLista varchar(12)
|
|
)
|
|
AS
|
|
|
|
-- cancello righe lista
|
|
DELETE FROM RigheListePrelievo
|
|
WHERE CodLista = @Original_CodLista
|
|
|
|
-- cancello record lista
|
|
DELETE FROM ElencoListePrelievo
|
|
WHERE CodLista = @Original_CodLista
|
|
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
|
|
|
|
-- crea stored
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_LP_exportToAs400
|
|
*
|
|
* esporta la lista di prelievo (e le relative righe) verso AS400 andando a copaire nelle relative tabelle _AS
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.07.19
|
|
*
|
|
****************************************/
|
|
create PROCEDURE stp_LP_exportToAs400
|
|
(
|
|
@CodLista NVARCHAR(12)
|
|
)
|
|
AS
|
|
|
|
-- copio la lista (intestazione)
|
|
INSERT INTO ElencoListePrelievo_AS
|
|
SELECT *
|
|
FROM ElencoListePrelievo
|
|
WHERE (CodLista = @CodLista)
|
|
|
|
-- copio le righe lista di dettaglio
|
|
INSERT INTO RigheListePrelievo_AS
|
|
SELECT *
|
|
FROM RigheListePrelievo
|
|
WHERE (CodLista = @CodLista) AND Prelevato = 1
|
|
|
|
-- aggiorno le quantità passate ad AS...
|
|
UPDATE ElencoListePrelievo_AS
|
|
SET QtaTot = ( SELECT SUM(Qta) AS QtaTot FROM RigheListePrelievo WHERE (CodLista =@CodLista) AND Prelevato = 1 )
|
|
WHERE (CodLista = @CodLista)
|
|
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
|
|
|
|
-- crea stored
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_LP_updateUDC
|
|
*
|
|
* modifica l'UDC in una riga di lista prelievo
|
|
*
|
|
* Steamware, S.E.L. 8 (from Stintino)
|
|
* mod: 2010.07.15
|
|
*
|
|
************************************/
|
|
create PROCEDURE stp_LP_updateUDC
|
|
(
|
|
@Original_CodLista VARCHAR(12),
|
|
@Original_UDC VARCHAR(50),
|
|
@UDC VARCHAR(50)
|
|
|
|
)
|
|
AS
|
|
|
|
-- aggiorno lista prelievo con nuovo UDC
|
|
UPDATE RigheListePrelievo
|
|
SET UDC = @UDC, QTA = (SELECT Qta FROM ElencoCartellini WHERE UDC = @UDC)
|
|
WHERE CodLista = @Original_CodLista AND UDC = @Original_UDC
|
|
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
|
|
|
|
-- crea stored
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/*(
|
|
* STORED stp_ParticolariEspByParticolare
|
|
*
|
|
* elenco distinct particolari/esponente da particoalre
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.07.07
|
|
*
|
|
****************************************/
|
|
create PROCEDURE stp_ParticolariEspByParticolare
|
|
(
|
|
@Particolare VARCHAR(50)
|
|
)
|
|
AS
|
|
|
|
SELECT DISTINCT Particolare, DescParticolare, Esponente, Figura, CodImballo
|
|
FROM (
|
|
SELECT TOP (1) @Particolare AS Particolare, '' AS DescParticolare, '*' AS Esponente, '' AS Figura, '' AS CodImballo
|
|
FROM v_particolariEsponenteFigura
|
|
WHERE (Particolare = @Particolare)
|
|
UNION
|
|
SELECT DISTINCT Particolare, '' AS DescParticolare, Esponente, '' AS Figura, '' AS CodImballo
|
|
FROM v_particolariEsponenteFigura
|
|
WHERE Particolare = @Particolare
|
|
) AS derivTab
|
|
|
|
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
|
|
|
|
-- crea stored
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/*(
|
|
* STORED stp_ParticolariFiguraByParticolare
|
|
*
|
|
* elenco distinct particolari/figure da particoalre
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.07.07
|
|
*
|
|
****************************************/
|
|
create PROCEDURE stp_ParticolariFiguraByParticolare
|
|
(
|
|
@Particolare VARCHAR(50)
|
|
)
|
|
AS
|
|
SELECT DISTINCT Particolare, DescParticolare, Esponente, Figura, CodImballo
|
|
FROM (
|
|
SELECT TOP (1) @Particolare AS Particolare, '' AS DescParticolare, '' AS Esponente, '*' AS Figura, '' AS CodImballo
|
|
FROM v_particolariEsponenteFigura
|
|
WHERE (Particolare = @Particolare)
|
|
UNION
|
|
SELECT DISTINCT Particolare, '' AS DescParticolare, '' AS Esponente, Figura, '' AS CodImballo
|
|
FROM v_particolariEsponenteFigura
|
|
WHERE Particolare = @Particolare
|
|
) AS derivTab
|
|
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
|
|
|
|
-- crea stored
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/*(
|
|
* STORED stp_ParticolariImballoByParticolare
|
|
*
|
|
* elenco distinct particolari/imballo da particoalre
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.07.07
|
|
*
|
|
****************************************/
|
|
create PROCEDURE stp_ParticolariImballoByParticolare
|
|
(
|
|
@Particolare VARCHAR(50)
|
|
)
|
|
AS
|
|
SELECT DISTINCT Particolare, DescParticolare, Esponente, Figura, CodImballo
|
|
FROM (
|
|
SELECT TOP (1) @Particolare AS Particolare, '' AS DescParticolare, '' AS Esponente, '' AS Figura, '*' AS CodImballo
|
|
FROM v_particolariEsponenteFigura
|
|
WHERE (Particolare = @Particolare)
|
|
UNION
|
|
SELECT DISTINCT Particolare, '' AS DescParticolare, '' AS Esponente, '' AS Figura, CodImballo
|
|
FROM v_particolariEsponenteFigura AS v_particolariEsponenteFigura_1
|
|
WHERE (Particolare = @Particolare)
|
|
) AS derivTab
|
|
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
|
|
|
|
-- mod stored
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_ParticolariOverviewLike
|
|
*
|
|
* elenco di overview sull'impiego dei particolari (dettaglio a "maglie larghe") - modalità LIKE
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.05.31
|
|
*
|
|
****************************************/
|
|
alter PROCEDURE stp_ParticolariOverviewLike
|
|
(
|
|
@searchVal VARCHAR(50),
|
|
@CodCS VARCHAR(2)
|
|
)
|
|
AS
|
|
|
|
SELECT RilPro.AnagParticolari.Particolare, RilPro.AnagParticolari.DescParticolare, ISNULL(COUNT(ElencoCartellini.UDC), 0) AS NumUDC,
|
|
SUM(ISNULL(ElencoCartellini.Qta, 0)) AS TotQta, ISNULL(COUNT(PosizioneUdcCorrente.IdxCella), 0) AS NumInMag
|
|
FROM RilPro.AnagParticolari LEFT OUTER JOIN
|
|
ElencoCartellini ON RilPro.AnagParticolari.Particolare = ElencoCartellini.Particolare LEFT OUTER JOIN
|
|
PosizioneUdcCorrente ON ElencoCartellini.UDC = PosizioneUdcCorrente.UDC
|
|
WHERE (RilPro.AnagParticolari.CodCS = @CodCS) AND ((RilPro.AnagParticolari.Particolare LIKE '%' + @searchVal + '%') OR (RilPro.AnagParticolari.DescParticolare LIKE '%' + @searchVal + '%'))
|
|
GROUP BY RilPro.AnagParticolari.Particolare, RilPro.AnagParticolari.DescParticolare
|
|
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
|
|
|
|
-- crea stored
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/*(
|
|
* STORED stp_ParticolariOverviewLike
|
|
*
|
|
* elenco di overview sull'impiego dei particolari (dettaglio a "maglie larghe") - modalità LIKE con testo CHE INIZIA per searchVal
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.07.07
|
|
*
|
|
****************************************/
|
|
create PROCEDURE stp_ParticolariOverviewLikePrefix
|
|
(
|
|
@searchVal VARCHAR(50),
|
|
@CodCS VARCHAR(2)
|
|
)
|
|
AS
|
|
|
|
SELECT RilPro.AnagParticolari.Particolare, RilPro.AnagParticolari.DescParticolare, ISNULL(COUNT(ElencoCartellini.UDC), 0) AS NumUDC,
|
|
SUM(ISNULL(ElencoCartellini.Qta, 0)) AS TotQta, ISNULL(COUNT(PosizioneUdcCorrente.IdxCella), 0) AS NumInMag
|
|
FROM RilPro.AnagParticolari LEFT OUTER JOIN
|
|
ElencoCartellini ON RilPro.AnagParticolari.Particolare = ElencoCartellini.Particolare LEFT OUTER JOIN
|
|
PosizioneUdcCorrente ON ElencoCartellini.UDC = PosizioneUdcCorrente.UDC
|
|
WHERE (RilPro.AnagParticolari.CodCS = @CodCS) AND (RilPro.AnagParticolari.Particolare LIKE '%' + @searchVal + '%')
|
|
GROUP BY RilPro.AnagParticolari.Particolare, RilPro.AnagParticolari.DescParticolare
|
|
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
|
|
|
|
-- crea stored
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_posizioniGetByIdxCellaUdc
|
|
*
|
|
* ottiene una singola posizione data la cella richiesta e l'UDC (e quindi verifica se sono associate...)
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.06.12
|
|
*
|
|
****************************************/
|
|
create PROCEDURE stp_posizioniGetByIdxCellaUdc
|
|
(
|
|
@UDC VARCHAR(50),
|
|
@IdxCella INT
|
|
)
|
|
AS
|
|
|
|
SELECT UDC, IdxCella, CodCS, DataRif
|
|
FROM PosizioneUdcCorrente
|
|
WHERE (IdxCella = @IdxCella) AND (UDC = @UDC)
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
|
|
|
|
-- crea stored
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_RigheListePrelievo_eliminaNonPrelevate
|
|
*
|
|
* aggiorna la lista di prelievo ELIMINANDO le righe non ancora prelevate (per poi rigenerare l'elenco)
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.07.06
|
|
*
|
|
************************************/
|
|
create PROCEDURE stp_RigheListePrelievo_eliminaNonPrelevate
|
|
(
|
|
@CodLista AS varchar(12)
|
|
)
|
|
AS
|
|
|
|
DELETE FROM RigheListePrelievo
|
|
WHERE CodLista = @CodLista AND Prelevato = 0
|
|
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
|
|
|
|
-- crea stored
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_righePrelevateByUdc
|
|
*
|
|
* restituisce l'elenco delle righe delle liste di prelievo PRELEVATE dato un UDC
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.07.06
|
|
*
|
|
****************************************/
|
|
create PROCEDURE stp_righePrelevateByUdc
|
|
(
|
|
@UDC VARCHAR(50)
|
|
)
|
|
AS
|
|
|
|
SELECT *
|
|
FROM RigheListePrelievo
|
|
WHERE (UDC = @UDC) AND Prelevato = 1
|
|
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
-- crea stored
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_S2U_getByUtente
|
|
*
|
|
* ottiene record x corrisponenda utente <-> cod soggetto
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.07.16
|
|
*
|
|
****************************************/
|
|
create PROCEDURE stp_S2U_getByUtente
|
|
(
|
|
@USER_NAME VARCHAR(50),
|
|
@DOMINIO VARCHAR(30)
|
|
)
|
|
AS
|
|
|
|
SELECT *
|
|
FROM Soggetti2Utente
|
|
WHERE [USER_NAME] = @USER_NAME AND DOMINIO = @DOMINIO
|
|
|
|
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
|
|
|
|
-- crea stored
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_scaricaUdc
|
|
*
|
|
* elimina dalle posizioni correnti un UDC, salvandone la posizione precedente nella tab storica (per scaricamento / spedizione)
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.07.19
|
|
*
|
|
****************************************/
|
|
create PROCEDURE stp_scaricaUdc
|
|
(
|
|
@CodCS VARCHAR(2),
|
|
@UDC VARCHAR(50),
|
|
@IdxCellaFrom INT,
|
|
@IdxPosizione INT
|
|
)
|
|
AS
|
|
|
|
BEGIN TRAN
|
|
-- inizio mettendo in storico la posizione attuale dell'UDC (SE esiste)
|
|
INSERT INTO PosizioneUdcStorico(UDC, IdxCella, CodCS, DataInizio, DataFine)
|
|
(
|
|
SELECT UDC, IdxCella, CodCS, DataRif as DataInizio, GETDATE() as DataFine
|
|
FROM PosizioneUdcCorrente
|
|
WHERE UDC = @UDC AND IdxCella = @IdxCellaFrom
|
|
)
|
|
|
|
-- libero la posizione attuale dell'UDC (se c'è...)
|
|
DELETE
|
|
FROM PosizioneUdcCorrente
|
|
WHERE UDC = @UDC AND IdxCella = @IdxCellaFrom
|
|
|
|
-- aggiorno l'UDC come posizione finale...
|
|
UPDATE ElencoCartellini
|
|
SET IdxPosizione = @IdxPosizione
|
|
WHERE UDC = @UDC
|
|
|
|
COMMIT TRAN
|
|
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
|
|
|
|
-- crea stored
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_setAnnullaUdcPrelevato
|
|
*
|
|
* Steamware, E.N.
|
|
* mod: 2010.06.25
|
|
*
|
|
************************************/
|
|
create PROCEDURE stp_setAnnullaUdcPrelevato
|
|
(
|
|
@CodLista NVARCHAR(12),
|
|
@UDC NVARCHAR(50)
|
|
)
|
|
AS
|
|
|
|
UPDATE RigheListePrelievo
|
|
SET Prelevato=0
|
|
WHERE (CodLista = @CodLista) AND (UDC = @UDC)
|
|
|
|
SELECT *
|
|
FROM RigheListePrelievo
|
|
WHERE (CodLista = @CodLista) AND (UDC = @UDC)
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
|
|
|
|
-- crea stored
|
|
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_spostaUdc
|
|
*
|
|
* sposta un UDC, salvandone la posizione precedente (se esiste) nella tab storica
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.06.11
|
|
*
|
|
****************************************/
|
|
create PROCEDURE stp_spostaUdc
|
|
(
|
|
@CodCS VARCHAR(2),
|
|
@UDC VARCHAR(50),
|
|
@IdxCellaFrom INT,
|
|
@IdxCellaTo INT
|
|
)
|
|
AS
|
|
|
|
BEGIN TRAN
|
|
-- inizio mettendo in storico la posizione attuale dell'UDC (SE esiste)
|
|
INSERT INTO PosizioneUdcStorico(UDC, IdxCella, CodCS, DataInizio, DataFine)
|
|
(
|
|
SELECT UDC, IdxCella, CodCS, DataRif as DataInizio, GETDATE() as DataFine
|
|
FROM PosizioneUdcCorrente
|
|
WHERE UDC = @UDC AND IdxCella = @IdxCellaFrom
|
|
)
|
|
|
|
-- libero la posizione attuale dell'UDC (se c'è...)
|
|
DELETE
|
|
FROM PosizioneUdcCorrente
|
|
WHERE UDC = @UDC AND IdxCella = @IdxCellaFrom
|
|
|
|
-- creo una nuova posizione per l'UDC
|
|
INSERT INTO PosizioneUdcCorrente(UDC, IdxCella, CodCS, DataRif)
|
|
VALUES(@UDC, @IdxCellaTo, @CodCS, GETDATE())
|
|
|
|
COMMIT TRAN
|
|
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
|
|
|
|
-- crea stored
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_UDC_updateQty
|
|
*
|
|
* aggiorna un cartellino x la sua quantità
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.06.12
|
|
*
|
|
****************************************/
|
|
create PROCEDURE stp_UDC_updateQty
|
|
(
|
|
@UDC VARCHAR(20),
|
|
@CodSoggetto VARCHAR(16),
|
|
@CodTipoDichiaraz CHAR(1),
|
|
@CodEvento VARCHAR(10),
|
|
@Qta DECIMAL(10,2)
|
|
)
|
|
AS
|
|
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
-- 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)
|
|
|
|
-- modifico il record
|
|
UPDATE ElencoCartellini
|
|
SET Qta = @Qta, ModDate = GETDATE()
|
|
WHERE UDC = @UDC
|
|
|
|
COMMIT TRAN
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
------------------------------------------------------------------------------------------------------
|
|
-- restituisco la tab dati con l'udc appena inserito
|
|
------------------------------------------------------------------------------------------------------
|
|
SELECT *
|
|
FROM ElencoCartellini
|
|
WHERE UDC = @UDC
|
|
------------------------------------------------------------------------------------------------------
|
|
|
|
RETURN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
|
|
|
|
-- crea stored
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
/***************************************
|
|
* STORED stp_UDC_upsertPrelevato
|
|
*
|
|
* fa un upsert sulle righe liste prelievo indicando che è stato prelevato un dato udc
|
|
* (upsert: se c'è update, se non c'è insert...)
|
|
*
|
|
* Steamware, S.E.L.
|
|
* mod: 2010.06.29
|
|
*
|
|
************************************/
|
|
create PROCEDURE stp_UDC_upsertPrelevato
|
|
(
|
|
@CodLista NVARCHAR(12),
|
|
@UDC NVARCHAR(50)
|
|
)
|
|
AS
|
|
|
|
-- controllo se ci sia l'UDC tra quelli proposti...
|
|
DECLARE @trovato AS BIT
|
|
|
|
SET @trovato = (SELECT COUNT(*) AS trovati
|
|
FROM RigheListePrelievo
|
|
WHERE (CodLista = @CodLista) AND (UDC = @UDC))
|
|
|
|
-- controllo x scelta upsert
|
|
|
|
IF ( @trovato > 0) -- UPDATE!
|
|
BEGIN
|
|
UPDATE RigheListePrelievo
|
|
SET Prelevato=1
|
|
WHERE (CodLista = @CodLista) AND (UDC = @UDC)
|
|
END
|
|
ELSE -- INSERT!
|
|
BEGIN
|
|
INSERT INTO RigheListePrelievo (CodLista, UDC, Qta, Proposto, Prelevato)
|
|
SELECT @CodLista, @UDC, Qta, 0, 1
|
|
FROM ElencoCartellini
|
|
WHERE (UDC = @UDC)
|
|
END
|
|
|
|
|
|
-- restituisce la tab delle righe di prelievo della lista indicata
|
|
|
|
SELECT *
|
|
FROM RigheListePrelievo
|
|
WHERE (CodLista = @CodLista) AND (UDC = @UDC)
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
-- registro versione...
|
|
INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(110, GETDATE())
|
|
GO
|
|
|
|
|