diff --git a/GMW/GMW/bin/GMW.dll b/GMW/GMW/bin/GMW.dll index 278bc74f..50d08b90 100644 Binary files a/GMW/GMW/bin/GMW.dll and b/GMW/GMW/bin/GMW.dll differ diff --git a/GMW/GMW/bin/GMW_data.dll b/GMW/GMW/bin/GMW_data.dll index bc186127..ac83aad6 100644 Binary files a/GMW/GMW/bin/GMW_data.dll and b/GMW/GMW/bin/GMW_data.dll differ diff --git a/GMW/GMW/obj/Debug/GMW.dll b/GMW/GMW/obj/Debug/GMW.dll index 681de4b8..50d08b90 100644 Binary files a/GMW/GMW/obj/Debug/GMW.dll and b/GMW/GMW/obj/Debug/GMW.dll differ diff --git a/GMW/GMW/obj/Debug/ResolveAssemblyReference.cache b/GMW/GMW/obj/Debug/ResolveAssemblyReference.cache index 52ab366e..6668378a 100644 Binary files a/GMW/GMW/obj/Debug/ResolveAssemblyReference.cache and b/GMW/GMW/obj/Debug/ResolveAssemblyReference.cache differ diff --git a/GMW/GMW_data/GMW_data.csproj b/GMW/GMW_data/GMW_data.csproj index a74145cc..371d3295 100644 --- a/GMW/GMW_data/GMW_data.csproj +++ b/GMW/GMW_data/GMW_data.csproj @@ -318,6 +318,8 @@ + + diff --git a/GMW/GMW_data/SqlScripts/V2.0/GMW_00451_eventoGian.sql b/GMW/GMW_data/SqlScripts/V2.0/GMW_00451_eventoGian.sql new file mode 100644 index 00000000..924cb655 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V2.0/GMW_00451_eventoGian.sql @@ -0,0 +1,43 @@ +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.AnagTipoEvento + VALUES (N'UDC_MPRQ', N'Modifca UDC MP x Modifica RQ') +go + +commit transaction +go + +set xact_abort on +go + +begin transaction +go + +UPDATE dbo.TabSyncMovMag SET + codMagExtTo=N'6' + WHERE CodCS=N'SP' and CodStatoFrom=N'MP' and CodStatoTo=N'MP' and IdxPosizioneFrom=-6 and IdxPosizioneTo=6 +UPDATE dbo.TabSyncMovMag SET + codMagExtFrom=N'6' + WHERE CodCS=N'SP' and CodStatoFrom=N'MP' and CodStatoTo=N'MP' and IdxPosizioneFrom=6 and IdxPosizioneTo=-6 +INSERT INTO dbo.TabSyncMovMag + VALUES (N'SP', N'MP', N'MP-NA', 6, 6, 0, N'6', N'6', NULL, N'Cambio Stato in MP-NA non Accettata') +INSERT INTO dbo.TabSyncMovMag + VALUES (N'SP', N'MP-NA', N'MP', 6, 6, 0, N'6', N'6', NULL, N'Cambio Stato in MP - Accettata') +go + +commit transaction +go + + + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(451, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V2.0/GMW_00451_storedGian.sql b/GMW/GMW_data/SqlScripts/V2.0/GMW_00451_storedGian.sql new file mode 100644 index 00000000..737c46c6 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V2.0/GMW_00451_storedGian.sql @@ -0,0 +1,224 @@ +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_batch_RapQual_S02 +* +* Esegue lo step 2 (travaso dati RAW in RilPro) per la tab dei rapporti di qualità +* +* Steamware, S.E.L. +* mod: 2011.11.25 +* +****************************************/ +alter PROCEDURE BatchQueue.stp_batch_RapQual_S02 +( + @CodMagMpNONacc NVARCHAR(50) = '6666', + @CodMagMpAcc NVARCHAR(50) = '6', + @CodStatoMpNONacc NVARCHAR(50) = 'MP-NA', + @CodStatoMpAcc NVARCHAR(50) = 'MP' +) + +AS + + SET XACT_ABORT ON; + SET NOCOUNT ON; + -- eseguo UPSERT x tutti i dati disponibili in tab Raw... + BEGIN TRAN; + + -- =============================================================================================== + -- PRIMA DI AGGIORNARE VERIFICO SE CI SONO MODIFICHE DI MP ACCETTATA / NON ACCETTATA + -- =============================================================================================== + --DECLARE @CodMagMpNONacc AS VARCHAR(50) = '6666' -- Setto il Magazzino per MP NON ACCETTATA + --DECLARE @CodMagMpAcc AS VARCHAR(50) = '6' -- Setto il Magazzino per MP ACCETTATA + + DECLARE @CellaOK AS INT + DECLARE @MagAccOK AS INT + DECLARE @MagNNAccOK AS INT + DECLARE @CodEven AS NVARCHAR(10) = 'UDC_MPRQ'; + + -- =============================================================================================== + -- SPOSTAMENTO DI MAGAZZINO DELLA MP che da ACCETTATA diventa NON ACCETTATA + -- =============================================================================================== + -- Controllo che il magazzino dest. NON ACCETTATA sia a cella singola( a terra ), attivo e non pieno + SELECT @MagAccOK = COUNT(*) FROM dbo.Celle AS c INNER JOIN Blocchi b ON c.IdxBlocco=b.IdxBlocco + WHERE b.CodMag = @CodMagMpNONacc AND c.Attiva = 1 AND c.Piena = 0 + + IF @MagAccOK = 1 -- Se mag. NON ACCETTATA è OK + BEGIN + -- Vado a leggere la cella corretta + SELECT @CellaOK = c.IdxCella FROM Celle AS c INNER JOIN Blocchi b ON c.IdxBlocco=b.IdxBlocco + WHERE b.CodMag = @CodMagMpNONacc AND c.Attiva = 1 AND c.Piena = 0 + + -- Se ci sono cartellini di materia prima che sono passati da accettati a non accettati li sposto + UPDATE dbo.PosizioneUdcCorrente + SET IdxCella = @CellaOK, + DataRif = GETDATE() + FROM dbo.PosizioneUdcCorrente AS po + INNER JOIN RilPro.RapQual rq + ON rq.UDC = po.UDC + INNER JOIN RawData.XOGIX00F u + ON u.XNRETI = rq.ProgUDC + INNER JOIN dbo.ElencoCartellini AS el + ON rq.UDC = el.UDC + INNER JOIN Celle c + ON po.IdxCella=c.IdxCella + INNER JOIN Blocchi b + ON c.IdxBlocco=b.IdxBlocco + WHERE ( rq.BenesQual = 'S' AND u.XBENQL = 'N' ) -- da Accettata a NON accettata + AND XMATSC = 'N' -- solo Lega non ancora Scaricata + AND b.CodMag <> @CodMagMpNONacc -- Che non è in Magazzino NON Accettati + + UPDATE dbo.ElencoCartellini + SET CodStato = @CodStatoMpNONacc, + CodEvento= @CodEven, + ModDate = GETDATE() + + FROM dbo.ElencoCartellini AS el + INNER JOIN RilPro.RapQual rq + ON rq.UDC = el.UDC + INNER JOIN RawData.XOGIX00F u + ON u.XNRETI = rq.ProgUDC + WHERE ( rq.BenesQual = 'S' AND u.XBENQL = 'N' ) -- da Accettata a NON accettata + AND XMATSC = 'N' -- solo Lega non ancora Scaricata + AND el.CodStato = @CodStatoMpAcc -- Modifico solo UDC in stato 'MP' (accettata) + AND el.IdxPosizione = 6 -- Modifico solo se cartellini non scaricati Mod. 2012-05 + END + + -- =============================================================================================== + -- SPOSTAMENTO DI MAGAZZINO DELLA MP che da NON ACCETTATA diventa ACCETTATA + -- =============================================================================================== + -- Controllo che il magazzino dest. ACCETTATA sia a cella singola( a terra ), attivo e non pieno + SELECT @MagNNAccOK = COUNT(*) FROM dbo.Celle AS c INNER JOIN Blocchi b ON c.IdxBlocco=b.IdxBlocco + WHERE b.CodMag = @CodMagMpAcc AND c.Attiva = 1 AND c.Piena = 0 + + IF @MagNNAccOK = 1 -- Se mag. ACCETTATA è OK + BEGIN + -- Vado a leggere la cella corretta + SELECT @CellaOK = c.IdxCella FROM Celle AS c INNER JOIN Blocchi b ON c.IdxBlocco=b.IdxBlocco + WHERE b.CodMag = @CodMagMpAcc AND c.Attiva = 1 AND c.Piena = 0 + + -- Se ci sono cartellini di materia prima che sono passati da accettati a non accettati li sposto + UPDATE dbo.PosizioneUdcCorrente + SET IdxCella = @CellaOK, + DataRif = GETDATE() + FROM dbo.PosizioneUdcCorrente AS po + INNER JOIN RilPro.RapQual rq + ON rq.UDC = po.UDC + INNER JOIN RawData.XOGIX00F u + ON u.XNRETI = rq.ProgUDC + INNER JOIN dbo.ElencoCartellini AS el + ON rq.UDC = el.UDC + INNER JOIN Celle c + ON po.IdxCella=c.IdxCella + INNER JOIN Blocchi b + ON c.IdxBlocco=b.IdxBlocco + WHERE ( rq.BenesQual = 'N' AND u.XBENQL = 'S' ) -- da NON Accettata ad Accettata + AND XMATSC = 'N' -- solo Lega non ancora Scaricata + AND b.CodMag <> @CodMagMpAcc -- Modifico solo UDC in stato MP non Accettata + + UPDATE dbo.ElencoCartellini + SET CodStato = @CodStatoMpAcc, + CodEvento= @CodEven, + ModDate = GETDATE() + FROM dbo.ElencoCartellini AS el + INNER JOIN RilPro.RapQual rq + ON rq.UDC = el.UDC + INNER JOIN RawData.XOGIX00F u + ON u.XNRETI = rq.ProgUDC + WHERE ( rq.BenesQual = 'N' AND u.XBENQL = 'S' ) -- da NON Accettata ad Accettata + AND XMATSC = 'N' -- solo Lega non ancora Scaricata + AND el.CodStato = @CodStatoMpNONacc -- Che ha è in stato MP NON accettata + AND el.IdxPosizione = 6 -- Modifico solo se cartellini non scaricati Mod. 2012-05 + END + + -- =============================================================================================== + -- ADESSO POSSO FARE UPDATE DI RilPro.RapQual + -- =============================================================================================== + -- se il dato esiste faccio UPDATE!!! + UPDATE RilPro.RapQual + SET CodFor = RTRIM(u.XCDFOR), + DestTerz = RTRIM(u.XCDTER), + CodLega = RTRIM(u.XCDPAR), +-- DataPrelFus = u.XDTPRO, +-- TurnoPrelFus = u.XTRPRO, -- non lo aggiorno perchè in AS400 è blank nel caso di consumo verso terzista e quindi lo perderei + Qta = u.XQTPRO, -- non lo aggiorno x non perdere il mio dato di scaricamento + DestLega = RTRIM(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 ... + + -- verifico che non ci siano cartellini scaricati in AS400 e non sul mio sistema... + UPDATE RilPro.RapQual + SET CodFor = RTRIM(u.XCDFOR), + DestTerz = RTRIM(u.XCDTER), + CodLega = RTRIM(u.XCDPAR), + DataPrelFus = u.XDTPRO, + TurnoPrelFus = RTRIM(u.XTRPRO), + Qta = u.XQTPRO, + DestLega = RTRIM(u.XDESMT), + LegaScaric = u.XMATSC, + BenesQual = u.XBENQL + FROM RilPro.RapQual rq + INNER JOIN RawData.XOGIX00F u ON u.XNRETI = rq.ProgUDC + WHERE rq.DataPrelFus = 0 AND u.XDTPRO > 0; + + -- 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, + RTRIM(XNRETI) AS ProgUDC, + RTRIM(XCDFOR) AS CodFor, + RTRIM(XCDTER) AS DestTerz, + RTRIM(XCDPAR) AS CodLega, + XDTPRO AS DataPrelFus, + RTRIM(XTRPRO) AS TurnoPrelFus, + XQTPRO AS Qta, + RTRIM(XDESMT) AS DestLega, + XMATSC AS LegaScaric, + XBENQL AS BenesQual + FROM cteInsert + + -- =============================================================================================== + -- DOPO UPDATE aggiorno la QTA nei Cartellini GMW se diversi da quelli in RilPro.RapQual ( AS400 ) + -- =============================================================================================== + UPDATE e + SET + e.Qta = r.Qta + ,e.PesoTot = r.Qta + ,CodEvento= @CodEven + ,ModDate = GETDATE() -- memorizzo la modifica + -- OUTPUT deleted.* INTO dbo.ElencoCartellini_Copy -- deve essere già presente + FROM RilPro.RapQual AS r + INNER JOIN dbo.ElencoCartellini AS e + ON e.UDC = r.UDC + WHERE ( r.Qta <> e.Qta ) -- Solo se la quantità è diversa + + COMMIT TRAN; + +RETURN +go + +commit +go + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(451, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V2.0/GMW_00452_stored.sql b/GMW/GMW_data/SqlScripts/V2.0/GMW_00452_stored.sql new file mode 100644 index 00000000..9e74903f --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V2.0/GMW_00452_stored.sql @@ -0,0 +1,48 @@ +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/***************************************** +* STORED stp_UDC_updateNoteByRQ +* +* Aggiorna note UDC dato il rapp di qualità cui sono legate +* +* Steamware, S.E.L. +* mod: 2012.02.14 +* +****************************************/ +alter PROCEDURE stp_UDC_updateNoteByRQ +( + @nRapQual NUMERIC(6,0), + @note NVARCHAR(500) +) +AS + +UPDATE ElencoCartellini +SET note = @note + ,ModDate=GETDATE(), + CodEvento = 'UDC_RDQ' +FROM ElencoCartellini AS ec INNER JOIN v_RapQualNote AS rq ON ec.UDC = rq.UDC +WHERE (rq.nRapQual = @nRapQual) AND ec.note <> @note + +RETURN +go + +commit +go + + + + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(452, GETDATE()) +GO diff --git a/GMW/GMW_data/bin/Debug/GMW_data.dll b/GMW/GMW_data/bin/Debug/GMW_data.dll index 05072cd4..ac83aad6 100644 Binary files a/GMW/GMW_data/bin/Debug/GMW_data.dll and b/GMW/GMW_data/bin/Debug/GMW_data.dll differ diff --git a/GMW/GMW_data/obj/Debug/GMW_data.dll b/GMW/GMW_data/obj/Debug/GMW_data.dll index 05072cd4..ac83aad6 100644 Binary files a/GMW/GMW_data/obj/Debug/GMW_data.dll and b/GMW/GMW_data/obj/Debug/GMW_data.dll differ