diff --git a/GMW/GMW/Web.config b/GMW/GMW/Web.config index 62bed826..4a378813 100644 --- a/GMW/GMW/Web.config +++ b/GMW/GMW/Web.config @@ -184,7 +184,7 @@ - + diff --git a/GMW/GMW/WebUserControls/mod_anagBlocchi.ascx b/GMW/GMW/WebUserControls/mod_anagBlocchi.ascx index b800a8f0..9caa5647 100644 --- a/GMW/GMW/WebUserControls/mod_anagBlocchi.ascx +++ b/GMW/GMW/WebUserControls/mod_anagBlocchi.ascx @@ -46,7 +46,7 @@ @@ -127,7 +127,7 @@ diff --git a/GMW/GMW/WebUserControls/mod_anagBlocchi.ascx.designer.cs b/GMW/GMW/WebUserControls/mod_anagBlocchi.ascx.designer.cs index e04e0376..61de8f28 100644 --- a/GMW/GMW/WebUserControls/mod_anagBlocchi.ascx.designer.cs +++ b/GMW/GMW/WebUserControls/mod_anagBlocchi.ascx.designer.cs @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version:2.0.50727.4927 +// Runtime Version:2.0.50727.4963 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/GMW/GMW/WebUserControls/mod_anagCelle.ascx b/GMW/GMW/WebUserControls/mod_anagCelle.ascx index 669f0657..7e422d08 100644 --- a/GMW/GMW/WebUserControls/mod_anagCelle.ascx +++ b/GMW/GMW/WebUserControls/mod_anagCelle.ascx @@ -59,7 +59,7 @@ @@ -190,7 +190,7 @@ diff --git a/GMW/GMW/WebUserControls/mod_anagCelle.ascx.designer.cs b/GMW/GMW/WebUserControls/mod_anagCelle.ascx.designer.cs index f46fb662..02a4a48d 100644 --- a/GMW/GMW/WebUserControls/mod_anagCelle.ascx.designer.cs +++ b/GMW/GMW/WebUserControls/mod_anagCelle.ascx.designer.cs @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version:2.0.50727.4927 +// Runtime Version:2.0.50727.4963 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/GMW/GMW/WebUserControls/mod_anagMagazzini.ascx b/GMW/GMW/WebUserControls/mod_anagMagazzini.ascx index 43054d5c..e0c53e9f 100644 --- a/GMW/GMW/WebUserControls/mod_anagMagazzini.ascx +++ b/GMW/GMW/WebUserControls/mod_anagMagazzini.ascx @@ -35,7 +35,7 @@ @@ -94,7 +94,7 @@ diff --git a/GMW/GMW/WebUserControls/mod_anagMagazzini.ascx.designer.cs b/GMW/GMW/WebUserControls/mod_anagMagazzini.ascx.designer.cs index 244c1e65..bbaafc50 100644 --- a/GMW/GMW/WebUserControls/mod_anagMagazzini.ascx.designer.cs +++ b/GMW/GMW/WebUserControls/mod_anagMagazzini.ascx.designer.cs @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version:2.0.50727.4927 +// Runtime Version:2.0.50727.4963 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/GMW/GMW/WebUserControls/mod_tipoCella.ascx b/GMW/GMW/WebUserControls/mod_tipoCella.ascx index 6a1feb0f..23f9a7a7 100644 --- a/GMW/GMW/WebUserControls/mod_tipoCella.ascx +++ b/GMW/GMW/WebUserControls/mod_tipoCella.ascx @@ -40,7 +40,7 @@ @@ -171,7 +171,7 @@ diff --git a/GMW/GMW/WebUserControls/mod_tipoCella.ascx.designer.cs b/GMW/GMW/WebUserControls/mod_tipoCella.ascx.designer.cs index 44840e15..a9571017 100644 --- a/GMW/GMW/WebUserControls/mod_tipoCella.ascx.designer.cs +++ b/GMW/GMW/WebUserControls/mod_tipoCella.ascx.designer.cs @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version:2.0.50727.4927 +// Runtime Version:2.0.50727.4963 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/GMW/GMW/bin/GMW.dll b/GMW/GMW/bin/GMW.dll index 31cc6bdd..80f90e99 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 bc5bc0a5..2d1f1686 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/Release/GMW.dll b/GMW/GMW/obj/Release/GMW.dll index 31cc6bdd..80f90e99 100644 Binary files a/GMW/GMW/obj/Release/GMW.dll and b/GMW/GMW/obj/Release/GMW.dll differ diff --git a/GMW/GMW/obj/Release/ResolveAssemblyReference.cache b/GMW/GMW/obj/Release/ResolveAssemblyReference.cache index 44daf2bf..f1a2d18d 100644 Binary files a/GMW/GMW/obj/Release/ResolveAssemblyReference.cache and b/GMW/GMW/obj/Release/ResolveAssemblyReference.cache differ diff --git a/GMW/GMW_data/GMW_data.csproj b/GMW/GMW_data/GMW_data.csproj index 10606d67..a42ed46c 100644 --- a/GMW/GMW_data/GMW_data.csproj +++ b/GMW/GMW_data/GMW_data.csproj @@ -191,70 +191,73 @@ SettingsSingleFileGenerator Settings.Designer.cs - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 80 +SET @IdxCella= (SELECT IdxCella FROM Celle c INNER JOIN Blocchi b ON c.IdxBlocco=b.IdxBlocco WHERE CodMag='80') + +insert into PosizioneUdcCorrente +select ec.UDC, @IdxCella as idxCella, 'MA' as codCS, GETDATE() as datarif +from ElencoCartellini ec +left outer join PosizioneUdcCorrente puc on ec.UDC= puc.UDC +where puc.IdxCella is null and IdxPosizione=0 + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +alter VIEW v_UdcDetail +AS +SELECT dbo.ElencoCartellini.UDC, dbo.ElencoCartellini.RagSociale, dbo.ElencoCartellini.Particolare, dbo.ElencoCartellini.DescParticolare, + dbo.ElencoCartellini.DisegnoGrezzo, dbo.ElencoCartellini.Esponente, dbo.ElencoCartellini.DescImpianto, dbo.ElencoCartellini.DataFus, + dbo.ElencoCartellini.TurnoFus, dbo.ElencoCartellini.CodImballo, dbo.ElencoCartellini.Qta, dbo.AnagStatiProdotto.DescStato, dbo.ElencoCartellini.ModDate, + ISNULL(dbo.Blocchi.CodMag, N'') AS CodMag, ISNULL(dbo.Blocchi.CodBlocco, N'') AS CodBlocco, ISNULL(dbo.Celle.CodCella, N'') AS CodCella, + ISNULL(dbo.Celle.IdxCella, 0) AS IdxCella, ISNULL(dbo.Celle.X, 0) AS X, ISNULL(dbo.Celle.Y, 0) AS Y, ISNULL(dbo.Celle.Z, 0) AS Z, + dbo.ElencoCartellini.IdxPosizione +FROM dbo.AnagStatiProdotto RIGHT OUTER JOIN + dbo.ElencoCartellini ON dbo.AnagStatiProdotto.CodStato = dbo.ElencoCartellini.CodStato AND + dbo.AnagStatiProdotto.CodStato = dbo.ElencoCartellini.CodStato LEFT OUTER JOIN + dbo.Celle INNER JOIN + dbo.PosizioneUdcCorrente ON dbo.Celle.IdxCella = dbo.PosizioneUdcCorrente.IdxCella AND dbo.Celle.IdxCella = dbo.PosizioneUdcCorrente.IdxCella AND + dbo.Celle.IdxCella = dbo.PosizioneUdcCorrente.IdxCella INNER JOIN + dbo.Blocchi ON dbo.Celle.IdxBlocco = dbo.Blocchi.IdxBlocco INNER JOIN + dbo.AnagMag ON dbo.Blocchi.CodMag = dbo.AnagMag.CodMag AND dbo.Blocchi.CodCS = dbo.AnagMag.CodCS AND + dbo.Blocchi.CodMag = dbo.AnagMag.CodMag AND dbo.Blocchi.CodCS = dbo.AnagMag.CodCS AND dbo.Blocchi.CodMag = dbo.AnagMag.CodMag AND + dbo.Blocchi.CodCS = dbo.AnagMag.CodCS ON dbo.ElencoCartellini.UDC = dbo.PosizioneUdcCorrente.UDC +go + +exec sp_updateextendedproperty 'MS_DiagramPane1', '[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00] +Begin DesignProperties = + Begin PaneConfigurations = + Begin PaneConfiguration = 0 + NumPanes = 4 + Configuration = "(H (1[40] 4[20] 2[20] 3) )" + End + Begin PaneConfiguration = 1 + NumPanes = 3 + Configuration = "(H (1 [50] 4 [25] 3))" + End + Begin PaneConfiguration = 2 + NumPanes = 3 + Configuration = "(H (1 [50] 2 [25] 3))" + End + Begin PaneConfiguration = 3 + NumPanes = 3 + Configuration = "(H (4 [30] 2 [40] 3))" + End + Begin PaneConfiguration = 4 + NumPanes = 2 + Configuration = "(H (1 [56] 3))" + End + Begin PaneConfiguration = 5 + NumPanes = 2 + Configuration = "(H (2 [66] 3))" + End + Begin PaneConfiguration = 6 + NumPanes = 2 + Configuration = "(H (4 [50] 3))" + End + Begin PaneConfiguration = 7 + NumPanes = 1 + Configuration = "(V (3))" + End + Begin PaneConfiguration = 8 + NumPanes = 3 + Configuration = "(H (1[56] 4[18] 2) )" + End + Begin PaneConfiguration = 9 + NumPanes = 2 + Configuration = "(H (1 [75] 4))" + End + Begin PaneConfiguration = 10 + NumPanes = 2 + Configuration = "(H (1[66] 2) )" + End + Begin PaneConfiguration = 11 + NumPanes = 2 + Configuration = "(H (4 [60] 2))" + End + Begin PaneConfiguration = 12 + NumPanes = 1 + Configuration = "(H (1) )" + End + Begin PaneConfiguration = 13 + NumPanes = 1 + Configuration = "(V (4))" + End + Begin PaneConfiguration = 14 + NumPanes = 1 + Configuration = "(V (2))" + End + ActivePaneConfig = 0 + End + Begin DiagramPane = + Begin Origin = + Top = 0 + Left = 0 + End + Begin Tables = + Begin Table = "AnagStatiProdotto" + Begin Extent = + Top = 6 + Left = 38 + Bottom = 101 + Right = 208 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "ElencoCartellini" + Begin Extent = + Top = 6 + Left = 246 + Bottom = 309 + Right = 416 + End + DisplayFlags = 280 + TopColumn = 11 + End + Begin Table = "Celle" + Begin Extent = + Top = 27 + Left = 818 + Bottom = 156 + Right = 988 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "PosizioneUdcCorrente" + Begin Extent = + Top = 71 + Left = 548 + Bottom = 200 + Right = 718 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "Blocchi" + Begin Extent = + Top = 70 + Left = 1080 + Bottom = 199 + Right = 1250 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "AnagMag" + Begin Extent = + Top = 188 + Left = 799 + Bottom = 334 + Right = 969 + End + DisplayFlags = 280 + TopColumn = 0 + End + End + End + Begin SQLPane = + End + Begin DataPane = + Begin ParameterDefaults = "" + End + Begin ColumnWidths = 21 + Width = 284 + Width = 15', 'SCHEMA', 'dbo', 'VIEW', 'v_UdcDetail' +go + +exec sp_updateextendedproperty 'MS_DiagramPane2', '00 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + End + End + Begin CriteriaPane = + Begin ColumnWidths = 11 + Column = 1440 + Alias = 900 + Table = 1170 + Output = 720 + Append = 1400 + NewValue = 1170 + SortType = 1350 + SortOrder = 1410 + GroupBy = 1350 + Filter = 1350 + Or = 1350 + Or = 1350 + Or = 1350 + End + End +End +', 'SCHEMA', 'dbo', 'VIEW', 'v_UdcDetail' +go + +commit +go + + +-- + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_getUdcDetailFullCode +* +* ottiene l'elenco degli UDC con i dati significativi partendo da un codice UDC COMPLETO +* +* Steamware, S.E.L. +* mod: 2010.05.24 +* +****************************************/ +alter PROCEDURE stp_getUdcDetailFullCode +( + @UDC VARCHAR(50), + @CodCS VARCHAR(2) +) +AS + +SELECT ElencoCartellini.UDC, ElencoCartellini.RagSociale, ElencoCartellini.Particolare, ElencoCartellini.DescParticolare, ElencoCartellini.DisegnoGrezzo, + ElencoCartellini.Esponente, ElencoCartellini.DescImpianto, ElencoCartellini.DataFus, ElencoCartellini.TurnoFus, ElencoCartellini.CodImballo, + ElencoCartellini.Qta, AnagStatiProdotto.DescStato, ElencoCartellini.ModDate, ISNULL(Blocchi.CodMag, N'') AS CodMag, + ISNULL(Blocchi.CodBlocco, N'') AS CodBlocco, ISNULL(Celle.CodCella, N'') AS CodCella, ISNULL(dbo.Celle.IdxCella, 0) AS IdxCella, + ISNULL(Celle.X, 0) AS X, ISNULL(Celle.Y, 0) AS Y, ISNULL(Celle.Z, 0) AS Z, ElencoCartellini.IdxPosizione +FROM AnagStatiProdotto RIGHT OUTER JOIN + ElencoCartellini ON AnagStatiProdotto.CodStato = ElencoCartellini.CodStato AND AnagStatiProdotto.CodStato = ElencoCartellini.CodStato + LEFT OUTER JOIN Celle INNER JOIN PosizioneUdcCorrente ON Celle.IdxCella = PosizioneUdcCorrente.IdxCella + AND Celle.IdxCella = PosizioneUdcCorrente.IdxCella AND Celle.IdxCella = PosizioneUdcCorrente.IdxCella + INNER JOIN Blocchi ON Celle.IdxBlocco = Blocchi.IdxBlocco INNER JOIN AnagMag ON Blocchi.CodMag = AnagMag.CodMag + AND Blocchi.CodCS = AnagMag.CodCS AND Blocchi.CodMag = AnagMag.CodMag AND Blocchi.CodCS = AnagMag.CodCS AND Blocchi.CodMag = AnagMag.CodMag + AND Blocchi.CodCS = AnagMag.CodCS ON ElencoCartellini.UDC = PosizioneUdcCorrente.UDC +WHERE (ElencoCartellini.UDC = @UDC) AND (ElencoCartellini.CodCS = @CodCS) + +RETURN +go + +commit +go + + +-- + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_getUdcDetailFullCode +* +* ottiene l'elenco degli UDC con i dati significativi partendo da un valore da cercare come LIKE in +* - UDC +* - Particolare +* +* Steamware, S.E.L. +* mod: 2010.05.24 +* +****************************************/ +alter PROCEDURE stp_getUdcDetailLikeSearch +( + @searchVal VARCHAR(50), + @CodCS VARCHAR(2) +) +AS + +SELECT ElencoCartellini.UDC, ElencoCartellini.RagSociale, ElencoCartellini.Particolare, ElencoCartellini.DescParticolare, + ElencoCartellini.DisegnoGrezzo, ElencoCartellini.Esponente, ElencoCartellini.DescImpianto, ElencoCartellini.DataFus, + ElencoCartellini.TurnoFus, ElencoCartellini.CodImballo, ElencoCartellini.Qta, AnagStatiProdotto.DescStato, ElencoCartellini.ModDate, + ISNULL(Blocchi.CodMag, N'') AS CodMag, ISNULL(Blocchi.CodBlocco, N'') AS CodBlocco, ISNULL(Celle.CodCella, N'') AS CodCella, + ISNULL(dbo.Celle.IdxCella, 0) AS IdxCella, ISNULL(Celle.X, 0) AS X, ISNULL(Celle.Y, 0) AS Y, ISNULL(Celle.Z, 0) AS Z, ElencoCartellini.IdxPosizione +FROM AnagStatiProdotto RIGHT OUTER JOIN ElencoCartellini + ON AnagStatiProdotto.CodStato = ElencoCartellini.CodStato AND AnagStatiProdotto.CodStato = ElencoCartellini.CodStato + LEFT OUTER JOIN Celle INNER JOIN PosizioneUdcCorrente + ON Celle.IdxCella = PosizioneUdcCorrente.IdxCella AND Celle.IdxCella = PosizioneUdcCorrente.IdxCella AND + Celle.IdxCella = PosizioneUdcCorrente.IdxCella INNER JOIN + Blocchi ON Celle.IdxBlocco = Blocchi.IdxBlocco INNER JOIN + AnagMag ON Blocchi.CodMag = AnagMag.CodMag AND Blocchi.CodCS = AnagMag.CodCS AND Blocchi.CodMag = AnagMag.CodMag AND + Blocchi.CodCS = AnagMag.CodCS AND Blocchi.CodMag = AnagMag.CodMag AND Blocchi.CodCS = AnagMag.CodCS ON + ElencoCartellini.UDC = PosizioneUdcCorrente.UDC +WHERE (ElencoCartellini.CodCS = @CodCS) AND + ((ElencoCartellini.UDC like '%'+ @searchVal+'%') OR (ElencoCartellini.Particolare like '%'+ @searchVal+'%') OR + (ElencoCartellini.RagSociale like '%'+ @searchVal+'%')) + +RETURN +go + +commit +go + + +-- + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_UdcDetailGetByIdxBlocco +* +* ottiene l'elenco degli UDC con dettaglio posizioni OCCUPATE associati ad un dato blocco di magazzino +* +* Steamware, S.E.L. +* mod: 2010.07.19 +* +****************************************/ +alter PROCEDURE stp_UdcDetailGetByIdxBlocco +( + @IdxBlocco INT +) +AS + +SELECT ElencoCartellini.UDC, ElencoCartellini.RagSociale, ElencoCartellini.Particolare, ElencoCartellini.DescParticolare, + ElencoCartellini.DisegnoGrezzo, ElencoCartellini.Esponente, ElencoCartellini.DescImpianto, ElencoCartellini.DataFus, + ElencoCartellini.TurnoFus, ElencoCartellini.CodImballo, ElencoCartellini.Qta, AnagStatiProdotto.DescStato, + ElencoCartellini.ModDate, ISNULL(Blocchi.CodMag, N'') AS CodMag, ISNULL(Blocchi.CodBlocco, N'') AS CodBlocco, + ISNULL(Celle.CodCella, N'') AS CodCella, ISNULL(dbo.Celle.IdxCella, 0) AS IdxCella, + ISNULL(Celle.X, 0) AS X, ISNULL(Celle.Y, 0) AS Y, ISNULL(Celle.Z, 0) AS Z, ElencoCartellini.IdxPosizione +FROM Celle INNER JOIN + PosizioneUdcCorrente ON Celle.IdxCella = PosizioneUdcCorrente.IdxCella AND Celle.IdxCella = PosizioneUdcCorrente.IdxCella AND + Celle.IdxCella = PosizioneUdcCorrente.IdxCella INNER JOIN + Blocchi ON Celle.IdxBlocco = Blocchi.IdxBlocco INNER JOIN + AnagMag ON Blocchi.CodMag = AnagMag.CodMag AND Blocchi.CodCS = AnagMag.CodCS AND Blocchi.CodMag = AnagMag.CodMag AND + Blocchi.CodCS = AnagMag.CodCS AND Blocchi.CodMag = AnagMag.CodMag AND Blocchi.CodCS = AnagMag.CodCS INNER JOIN + ElencoCartellini ON PosizioneUdcCorrente.UDC = ElencoCartellini.UDC LEFT OUTER JOIN + AnagStatiProdotto ON ElencoCartellini.CodStato = AnagStatiProdotto.CodStato AND ElencoCartellini.CodStato = AnagStatiProdotto.CodStato +WHERE (Celle.IdxBlocco = @IdxBlocco) + +RETURN +go + +commit +go + +-- + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_UdcDetailGetByIdxBloccoCodMagLog +* +* ottiene l'elenco degli UDC con dettaglio posizioni OCCUPATE associati ad un dato blocco di magazzino ed ad un dato STATO LOGICO +* +* Steamware, S.E.L. +* mod: 2010.09.15 +* +****************************************/ +alter PROCEDURE stp_UdcDetailGetByIdxBloccoCodMagLog +( + @IdxBlocco INT, + @CodMagLog INT +) +AS + +SELECT ElencoCartellini.UDC, ElencoCartellini.RagSociale, ElencoCartellini.Particolare, ElencoCartellini.DescParticolare, + ElencoCartellini.DisegnoGrezzo, ElencoCartellini.Esponente, ElencoCartellini.DescImpianto, ElencoCartellini.DataFus, + ElencoCartellini.TurnoFus, ElencoCartellini.CodImballo, ElencoCartellini.Qta, AnagStatiProdotto.DescStato, + ElencoCartellini.ModDate, ISNULL(Blocchi.CodMag, N'') AS CodMag, ISNULL(Blocchi.CodBlocco, N'') AS CodBlocco, + ISNULL(Celle.CodCella, N'') AS CodCella, ISNULL(dbo.Celle.IdxCella, 0) AS IdxCella, + ISNULL(Celle.X, 0) AS X, ISNULL(Celle.Y, 0) AS Y, ISNULL(Celle.Z, 0) AS Z, ElencoCartellini.IdxPosizione +FROM Celle INNER JOIN + PosizioneUdcCorrente ON Celle.IdxCella = PosizioneUdcCorrente.IdxCella AND Celle.IdxCella = PosizioneUdcCorrente.IdxCella AND + Celle.IdxCella = PosizioneUdcCorrente.IdxCella INNER JOIN + Blocchi ON Celle.IdxBlocco = Blocchi.IdxBlocco INNER JOIN + AnagMag ON Blocchi.CodMag = AnagMag.CodMag AND Blocchi.CodCS = AnagMag.CodCS AND Blocchi.CodMag = AnagMag.CodMag AND + Blocchi.CodCS = AnagMag.CodCS AND Blocchi.CodMag = AnagMag.CodMag AND Blocchi.CodCS = AnagMag.CodCS INNER JOIN + ElencoCartellini ON PosizioneUdcCorrente.UDC = ElencoCartellini.UDC LEFT OUTER JOIN + AnagStatiProdotto ON ElencoCartellini.CodStato = AnagStatiProdotto.CodStato AND ElencoCartellini.CodStato = AnagStatiProdotto.CodStato +WHERE (Celle.IdxBlocco = @IdxBlocco) AND ElencoCartellini.IdxPosizione = @CodMagLog + +RETURN +go + +commit +go + + +-- + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_UdcDetailGetByIdxCella +* +* ottiene l'elenco degli UDC con dettaglio per una data cella +* +* Steamware, S.E.L. +* mod: 2010.07.20 +* +****************************************/ +alter PROCEDURE stp_UdcDetailGetByIdxCella +( + @IdxCella INT +) +AS + +SELECT ElencoCartellini.UDC, ElencoCartellini.RagSociale, ElencoCartellini.Particolare, ElencoCartellini.DescParticolare, + ElencoCartellini.DisegnoGrezzo, ElencoCartellini.Esponente, ElencoCartellini.DescImpianto, ElencoCartellini.DataFus, + ElencoCartellini.TurnoFus, ElencoCartellini.CodImballo, ElencoCartellini.Qta, AnagStatiProdotto.DescStato, + ElencoCartellini.ModDate, ISNULL(Blocchi.CodMag, N'') AS CodMag, ISNULL(Blocchi.CodBlocco, N'') AS CodBlocco, + ISNULL(Celle.CodCella, N'') AS CodCella, ISNULL(dbo.Celle.IdxCella, 0) AS IdxCella, + ISNULL(Celle.X, 0) AS X, ISNULL(Celle.Y, 0) AS Y, ISNULL(Celle.Z, 0) AS Z, ElencoCartellini.IdxPosizione +FROM Celle INNER JOIN + PosizioneUdcCorrente ON Celle.IdxCella = PosizioneUdcCorrente.IdxCella AND Celle.IdxCella = PosizioneUdcCorrente.IdxCella AND + Celle.IdxCella = PosizioneUdcCorrente.IdxCella INNER JOIN + Blocchi ON Celle.IdxBlocco = Blocchi.IdxBlocco INNER JOIN + AnagMag ON Blocchi.CodMag = AnagMag.CodMag AND Blocchi.CodCS = AnagMag.CodCS AND Blocchi.CodMag = AnagMag.CodMag AND + Blocchi.CodCS = AnagMag.CodCS AND Blocchi.CodMag = AnagMag.CodMag AND Blocchi.CodCS = AnagMag.CodCS INNER JOIN + ElencoCartellini ON PosizioneUdcCorrente.UDC = ElencoCartellini.UDC LEFT OUTER JOIN + AnagStatiProdotto ON ElencoCartellini.CodStato = AnagStatiProdotto.CodStato AND ElencoCartellini.CodStato = AnagStatiProdotto.CodStato +WHERE (Celle.IdxCella = @IdxCella) + +RETURN +go + +commit +go + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(250, GETDATE()) +GO \ No newline at end of file diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00255.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00255.sql new file mode 100644 index 00000000..1ae81278 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00255.sql @@ -0,0 +1,292 @@ +--- nuovi eventi x gestione triggers variazioni quantità magazzino AS +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.AnagTipoEvento + VALUES (N'UDC_DEL', N'Eliminato un UDC (per movimento AS400)') +INSERT INTO dbo.AnagTipoEvento + VALUES (N'UDC_MOV', N'Movimentazione contabile tra magazzini UDC') +INSERT INTO dbo.AnagTipoEvento + VALUES (N'UDC_NEW', N'Creato un nuovo UDC (per movimento AS400)') +INSERT INTO dbo.AnagTipoEvento + VALUES (N'UDC_NOQTY', N'Rettifica qta UDC creato se già in AS') +INSERT INTO dbo.AnagTipoEvento + VALUES (N'UDC_POS', N'Spostamento posizilne logica UDC') +go + +commit transaction +go + + +-- tab x gestioen batch AS400 +set xact_abort on +go + +begin transaction +go + +create table AS400_BatchMovimenti( + DataIns datetime not null, + CodEvento nvarchar(10) not null, + Particolare nvarchar(15) not null, + CodMagAS nvarchar(50) not null, + Quantita decimal(10,2) not null, + DataBatch datetime, + DataVerifica datetime, + + constraint PK_AS400_BatchMovimenti primary key(DataIns,CodEvento,Particolare,CodMagAS) +) +go + +alter table AS400_BatchMovimenti add + constraint FK_AS400_BatchMovimenti_AnagTipoEvento foreign key(CodEvento) references AnagTipoEvento(CodEvento) on update cascade +go + +exec sp_addextendedproperty 'MS_Description', 'dataora inserimento in coda caricamento', 'SCHEMA', 'dbo', 'TABLE', 'AS400_BatchMovimenti', 'COLUMN', 'DataIns' +go + +exec sp_addextendedproperty 'MS_Description', 'NON MODIFICARE: nel codice si usano questi campi x chiamate...', 'SCHEMA', 'dbo', 'TABLE', 'AS400_BatchMovimenti', 'COLUMN', 'CodEvento' +go + +exec sp_addextendedproperty 'MS_Description', 'dataora di caricamento batch verso AS', 'SCHEMA', 'dbo', 'TABLE', 'AS400_BatchMovimenti', 'COLUMN', 'DataBatch' +go + +exec sp_addextendedproperty 'MS_Description', N'dataora in cui è stato verificato il caricamento su AS', 'SCHEMA', 'dbo', 'TABLE', 'AS400_BatchMovimenti', 'COLUMN', 'DataVerifica' +go + +create table AS400_MagCont( + CodMagAS nvarchar(50) not null constraint PK_AS400_MagCont primary key, + Descrizione nvarchar(50), + Attivo bit +) +go + +alter table AS400_BatchMovimenti add + constraint FK_AS400_BatchMovimenti_AS400_MagCont foreign key(CodMagAS) references AS400_MagCont(CodMagAS) on update cascade +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.AS400_MagCont + VALUES (N'54', N'Finiti', 1) +INSERT INTO dbo.AS400_MagCont + VALUES (N'56', N'Materia Prima', 1) +INSERT INTO dbo.AS400_MagCont + VALUES (N'80', N'Fusi', 1) +INSERT INTO dbo.AS400_MagCont + VALUES (N'84', N'WIP', 1) +INSERT INTO dbo.AS400_MagCont + VALUES (N'88', N'Rientro da terzista', 1) +go + +commit transaction +go + + +-- triggers! +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2009-09-20 +-- Description: trigger x inserimento movimenti +-- nella coda di trasferimento batch +-- verso AS400 x UPDATE UDC +-- ============================================= +create TRIGGER trg_updMovAS + ON ElencoCartellini + AFTER UPDATE +AS +BEGIN + + -- setup variabili e verbosità + SET NOCOUNT ON; + DECLARE @partOk AS BIT + DECLARE @IdxPosFrom AS INT + DECLARE @IdxPosTo AS INT + DECLARE @magFrom AS NVARCHAR(50) + DECLARE @magTo AS NVARCHAR(50) + DECLARE @qta AS DECIMAL(10,2) + + -- controllo che CI SIA il particolare (altrimenti non eseguo) + SET @partOk = (SELECT CASE WHEN ISNULL(Particolare,'n.d.') = 'n.d.' THEN 0 ELSE 1 END FROM deleted) + + IF(@partOk = 1) + SET @qta = (SELECT Qta FROM inserted) + -- se c'è stata modifica di quantità inizio a rettificare quella + IF UPDATE(Qta) + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOD', Particolare, CAST(IdxPosizione AS NVARCHAR(50)), @qta-Qta + FROM deleted + ) + END + + -- controllo poi se sia cambiato il magazzino, altrimenti non lo inserisco + IF UPDATE(IdxPosizione) + BEGIN + -- Prendo le posizioni di magazzino precedente e nuova + SET @IdxPosFrom = (SELECT IdxPosizione FROM deleted) + SET @IdxPosTo = (SELECT IdxPosizione FROM inserted) + -- Le trasformo nelle equivalenti stringhe del codMag SE attive + SET @magFrom = (SELECT ISNULL(CodMagAS,'---') FROM AS400_MagCont WHERE Attivo = 1 AND CodMagAs = CAST(@IdxPosFrom AS NVARCHAR(50))) + SET @magTo = (SELECT ISNULL(CodMagAS,'---') FROM AS400_MagCont WHERE Attivo = 1 AND CodMagAs = CAST(@IdxPosTo AS NVARCHAR(50))) + + -- inserisco un movimento di deposito verso mag nuovo (SE attivo) + IF (@magFrom <> '---') + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOV', Particolare, CAST(IdxPosizione AS NVARCHAR(50)), -@qta + FROM deleted + ) + END + -- inserisco un movimento di prelievo verso mag vecchio (SE attivo) + IF (@magTo <> '---') + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOV', Particolare, CAST(IdxPosizione AS NVARCHAR(50)), @qta + FROM inserted + ) + END + END + +END +go + +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2009-09-20 +-- Description: trigger x inserimento movimenti +-- nella coda di trasferimento batch +-- verso AS400 x DELETE UDC +-- ============================================= +create TRIGGER trg_DelMovAS + ON ElencoCartellini + AFTER DELETE +AS +BEGIN + + -- setup variabili e verbosità + SET NOCOUNT ON; + DECLARE @partOk AS BIT + + -- controllo che CI SIA il particoalre (altrimenti non eseguo) + SET @partOk = (SELECT CASE WHEN ISNULL(Particolare,'n.d.') = 'n.d.' THEN 0 ELSE 1 END FROM deleted) + + IF(@partOk = 1) + BEGIN + -- metto in storico la posizione attuale dell'UDC (SE esiste) CANCELLATO + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_DEL', Particolare, CAST(IdxPosizione AS NVARCHAR(50)), -Qta + FROM deleted + ) + END + +END +go + +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2009-09-20 +-- Description: trigger x inserimento movimenti +-- nella coda di trasferimento batch +-- verso AS400 x INSERT UDC +-- ============================================= +create TRIGGER trg_InsMovAS + ON ElencoCartellini + AFTER INSERT +AS +BEGIN + + -- setup variabili e verbosità + SET NOCOUNT ON; + DECLARE @partOk AS BIT + + -- controllo che CI SIA il particoalre (altrimenti non eseguo) + SET @partOk = (SELECT CASE WHEN ISNULL(Particolare,'n.d.') = 'n.d.' THEN 0 ELSE 1 END FROM inserted) + + IF(@partOk = 1) + BEGIN + -- metto in storico la posizione attuale dell'UDC (SE esiste) CANCELLATO + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_NEW', Particolare, CAST(IdxPosizione AS NVARCHAR(50)), Qta + FROM inserted + ) + END + +END +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_rettMovAs400 +* +* inserisce nella tabella per i trasferimenti batch verso magazzino AS una quantità di rettifica (con segno - )per UDC eventualmente già scaricati a sistema +* +* Steamware, S.E.L. +* mod: 2010.09.20 +* +****************************************/ +create PROCEDURE stp_rettMovAs400 +( + @Particolare NVARCHAR(50), + @CodMagAS NVARCHAR(50), + @Qta DECIMAL(10,2) +) +AS + +BEGIN + + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, CodMagAS, Quantita) + VALUES (GETDATE(), 'UDC_NOQTY', @Particolare, @CodMagAS, -@Qta) + +END + +RETURN +go + +commit +go + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(255, GETDATE()) +GO \ No newline at end of file diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00257.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00257.sql new file mode 100644 index 00000000..93e1fb1d --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00257.sql @@ -0,0 +1,698 @@ +--- 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 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 \ No newline at end of file diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00258.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00258.sql new file mode 100644 index 00000000..96b7740a --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00258.sql @@ -0,0 +1,132 @@ +-- svuotamento tabelle e dati test da UDC, posizioni e storici +-- eliminazione posizioni storiche +delete from PosizioneUdcStorico +go + +-- eliminazione posizioni attuali +delete from PosizioneUdcCorrente +go + +-- eliminazione posizioni storiche +delete from PosizioneUdcStorico +go + + +-- elimino da tab batch AS400 +delete from AS400_BatchMovimenti +go + + +-- elimino storico cartellini +delete from StoricoCartellini +go + +-- elimino righe liste di prelievo AS +delete from RigheListePrelievo_AS +go + +-- elimino righe liste di prelievo +delete from RigheListePrelievo +go + +-- elimino liste di prelievo AS +delete from ElencoListePrelievo_as +go + +-- elimino liste di prelievo +delete from ElencoListePrelievo +go + +-- elimino da delibere +delete from Delibere +go + +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2009-09-20 +-- Description: trigger x inserimento movimenti +-- nella coda di trasferimento batch +-- verso AS400 x DELETE UDC +-- ============================================= +ALTER TRIGGER dbo.trg_DelMovAS + ON dbo.ElencoCartellini + AFTER DELETE +AS +BEGIN + + -- setup variabili e verbosità + SET NOCOUNT ON; + DECLARE @partOk AS BIT + + -- rifare: se c'è delete in blocco DEVE andare ad operare 1 riga alla volta... + + /* + -- controllo che CI SIA il particolare (altrimenti non eseguo) + SET @partOk = (SELECT CASE WHEN ISNULL(Particolare,'n.d.') = 'n.d.' THEN 0 ELSE 1 END FROM deleted) + + IF(@partOk = 1) + BEGIN + -- metto in storico la posizione attuale dell'UDC (SE esiste) CANCELLATO + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_DEL', Particolare, CAST(IdxPosizione AS NVARCHAR(50)), -Qta + FROM deleted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + */ +END + + +-- elimino cartellini correnti +delete from ElencoCartellini +go + +-- rimetto trigger +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2009-09-20 +-- Description: trigger x inserimento movimenti +-- nella coda di trasferimento batch +-- verso AS400 x DELETE UDC +-- ============================================= +ALTER TRIGGER dbo.trg_DelMovAS + ON dbo.ElencoCartellini + AFTER DELETE +AS +BEGIN + + -- setup variabili e verbosità + SET NOCOUNT ON; + -- inserisco movimenti AS + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_DEL', Particolare, CAST(IdxPosizione AS NVARCHAR(50)), -Qta + FROM deleted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) AND ((CASE WHEN ISNULL(Particolare,'n.d.') = 'n.d.' THEN 0 ELSE 1 END) = 1) + ) + +END +go + + +-- elimino storico cartellini +DELETE FROM StoricoCartellini +go + +-- indico tutte celle vuote! +update Celle +set Piena = 0 +GO + +-- resetto contatori! +delete from ContatoriListePrelievo +go + +delete from ContatoriUdc +go + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(258, GETDATE()) +GO \ No newline at end of file diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00259.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00259.sql new file mode 100644 index 00000000..c349dd55 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00259.sql @@ -0,0 +1,694 @@ +-- update tab transizione eventi + +update AnagTipoDelibere +set CodEvento='DelWipPost' +where CodTipoDelibera='DelibWipPost' +go + +-- aggiunta valori nuovi in AnagTipoEvento e TabTranPosizEventi +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.AnagTipoEvento + VALUES (N'UDC_CONS', N'Consumo UDC') +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.AnagPosizioni + VALUES (-84, N'AM - WIP consumati') +INSERT INTO dbo.AnagPosizioni + VALUES (-56, N'AM - MP consumati') +go + +commit transaction +go + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.TabTranPosizEventi + VALUES (N'UDC_CONS', 56, -56) +INSERT INTO dbo.TabTranPosizEventi + VALUES (N'UDC_CONS', 84, -84) +go + +commit transaction +go + + +--- update tabelle varie: anag mag! +set xact_abort on +go + +begin transaction +go + +alter table AnagMag add + Nascosto bit constraint DF_AnagMag_Nascosto default (0) +go + +update AnagMag set Nascosto=0 +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_ParticolariOverview +* +* elenco di overview sullo stato dei magazzini (dettaglio a "maglie larghe") +* +* Steamware, S.E.L. +* mod: 2010.06.02 +* +****************************************/ +alter PROCEDURE stp_magazzinoOverview +( + @CodCS VARCHAR(2) +) +AS + + SELECT AnagMag.CodCS, AnagMag.CodMag, AnagMag.DescMag, Blocchi.IdxBlocco, Blocchi.CodBlocco, + TipoCella.Capienza * Blocchi.NumX * Blocchi.NumY * Blocchi.NumZ AS TotCelle, + TipoCella.Capienza * COUNT(DISTINCT Celle.IdxCella) AS CelleAttive, + COUNT(PosizioneUdcCorrente.UDC) AS CelleOccupate, + TipoCella.Capienza * COUNT(DISTINCT Celle.IdxCella) - COUNT(PosizioneUdcCorrente.UDC) AS CelleLibere, + ISNULL(MIN(PosizioneUdcCorrente.DataRif), GETDATE()) AS Oldest, ISNULL(MAX(PosizioneUdcCorrente.DataRif), GETDATE()) AS Newest +FROM TipoCella INNER JOIN + AnagMag INNER JOIN + Blocchi ON AnagMag.CodMag = Blocchi.CodMag AND AnagMag.CodCS = Blocchi.CodCS ON TipoCella.CodMag = AnagMag.CodMag AND + TipoCella.CodCS = AnagMag.CodCS LEFT OUTER JOIN + Celle ON TipoCella.IdxTipoCella = Celle.IdxTipoCella AND Blocchi.IdxBlocco = Celle.IdxBlocco LEFT OUTER JOIN + PosizioneUdcCorrente ON Celle.IdxCella = PosizioneUdcCorrente.IdxCella +WHERE (Celle.Attiva = 1) AND (AnagMag.CodCS = @CodCS) AND (ISNULL(AnagMag.Nascosto, 0) = 0) +GROUP BY AnagMag.CodCS, AnagMag.CodMag, AnagMag.DescMag, Blocchi.IdxBlocco, Blocchi.CodBlocco, Blocchi.NumX, Blocchi.NumY, Blocchi.NumZ, + TipoCella.Capienza +ORDER BY AnagMag.CodMag, Blocchi.CodBlocco + +RETURN +go + +/*************************************** +* STORED stp_ParticolariOverview +* +* elenco di overview sullo stato dei magazzini LOGICI (dettaglio a "maglie larghe") +* +* Steamware, S.E.L. +* mod: 2010.09.15 +* +****************************************/ +alter PROCEDURE stp_magazzinoLogicoOverview +( + @CodCS VARCHAR(2) +) +AS + +SELECT ElencoCartellini.CodCS, AnagPosizioni.IdxPosizione AS CodMagLogico, AnagPosizioni.DescPosizione AS DescMagLogico, Blocchi.IdxBlocco, AnagMag.CodMag, + Blocchi.CodBlocco, COUNT(ElencoCartellini.UDC) AS CelleOccupate, ISNULL(MIN(PosizioneUdcCorrente.DataRif), GETDATE()) AS Oldest, + ISNULL(MAX(PosizioneUdcCorrente.DataRif), GETDATE()) AS Newest +FROM Celle INNER JOIN + Blocchi INNER JOIN + AnagMag ON Blocchi.CodMag = AnagMag.CodMag AND Blocchi.CodCS = AnagMag.CodCS ON Celle.IdxBlocco = Blocchi.IdxBlocco INNER JOIN + ElencoCartellini INNER JOIN + PosizioneUdcCorrente ON ElencoCartellini.UDC = PosizioneUdcCorrente.UDC INNER JOIN + AnagPosizioni ON ElencoCartellini.IdxPosizione = AnagPosizioni.IdxPosizione ON Celle.IdxCella = PosizioneUdcCorrente.IdxCella +WHERE (ElencoCartellini.CodCS = @CodCS) AND (ISNULL(AnagMag.Nascosto, 0) = 0) +GROUP BY ElencoCartellini.CodCS, AnagPosizioni.IdxPosizione, AnagPosizioni.DescPosizione, Blocchi.IdxBlocco, Blocchi.CodBlocco, AnagMag.CodMag +ORDER BY CodMagLogico, Blocchi.CodBlocco + +RETURN +go + +commit +go + + +-- update triggers cartellini +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2009-09-20 +-- Description: trigger x inserimento movimenti +-- nella coda di trasferimento batch +-- verso AS400 x UPDATE UDC +-- ============================================= +alter TRIGGER trg_updMovAS + ON ElencoCartellini + AFTER UPDATE +AS +BEGIN + + -- setup variabili e verbosità + SET NOCOUNT ON; + DECLARE @partOk AS BIT + DECLARE @IdxPosFrom AS INT + DECLARE @IdxPosTo AS INT + DECLARE @magFrom AS NVARCHAR(50) + DECLARE @magTo AS NVARCHAR(50) + DECLARE @qta AS DECIMAL(10,2) + + -- controllo che CI SIA il particolare (altrimenti non eseguo) + SET @partOk = (SELECT CASE WHEN ISNULL(Particolare,'n.d.') = 'n.d.' THEN 0 ELSE 1 END FROM deleted) + + IF(@partOk = 1) + SET @qta = (SELECT Qta FROM inserted) + -- se c'è stata modifica di quantità inizio a rettificare quella + IF UPDATE(Qta) + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOD', Particolare, CAST(IdxPosizione AS NVARCHAR(50)), @qta-Qta + FROM deleted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + + -- controllo poi se sia cambiato il magazzino, altrimenti non lo inserisco + IF UPDATE(IdxPosizione) + BEGIN + -- Prendo le posizioni di magazzino precedente e nuova + SET @IdxPosFrom = (SELECT IdxPosizione FROM deleted) + SET @IdxPosTo = (SELECT IdxPosizione FROM inserted) + -- Le trasformo nelle equivalenti stringhe del codMag SE attive + SET @magFrom = (SELECT ISNULL(CodMagAS,'---') FROM AS400_MagCont WHERE Attivo = 1 AND CodMagAs = CAST(@IdxPosFrom AS NVARCHAR(50))) + SET @magTo = (SELECT ISNULL(CodMagAS,'---') FROM AS400_MagCont WHERE Attivo = 1 AND CodMagAs = CAST(@IdxPosTo AS NVARCHAR(50))) + + -- inserisco un movimento di deposito verso mag nuovo (SE attivo) + IF (@magFrom <> '---') + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOV', Particolare, CAST(IdxPosizione AS NVARCHAR(50)), -@qta + FROM deleted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + -- inserisco un movimento di prelievo verso mag vecchio (SE attivo) + IF (@magTo <> '---') + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOV', Particolare, CAST(IdxPosizione AS NVARCHAR(50)), @qta + FROM inserted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + END + +END +go + +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2009-09-20 +-- Description: trigger x inserimento movimenti +-- nella coda di trasferimento batch +-- verso AS400 x DELETE UDC +-- ============================================= +alter TRIGGER trg_DelMovAS + ON ElencoCartellini + AFTER DELETE +AS +BEGIN + + -- setup variabili e verbosità + SET NOCOUNT ON; + -- inserisco movimenti AS + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_DEL', Particolare, CAST(IdxPosizione AS NVARCHAR(50)), -Qta + FROM deleted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) AND ((CASE WHEN ISNULL(Particolare,'n.d.') = 'n.d.' THEN 0 ELSE 1 END) = 1) + ) + +END +go + +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2009-09-20 +-- Description: trigger x inserimento movimenti +-- nella coda di trasferimento batch +-- verso AS400 x INSERT UDC +-- ============================================= +alter TRIGGER trg_InsMovAS + ON ElencoCartellini + AFTER INSERT +AS +BEGIN + + -- setup variabili e verbosità + SET NOCOUNT ON; + DECLARE @partOk AS BIT + + -- controllo che CI SIA il particoalre (altrimenti non eseguo) + SET @partOk = (SELECT CASE WHEN ISNULL(Particolare,'n.d.') = 'n.d.' THEN 0 ELSE 1 END FROM inserted) + + IF(@partOk = 1) + BEGIN + -- metto in storico la posizione attuale dell'UDC (SE esiste) CANCELLATO + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_NEW', Particolare, CAST(IdxPosizione AS NVARCHAR(50)), Qta + FROM inserted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + +END +go + +commit +go + + +-- fix dei codSoggetto + +set xact_abort on +go + +begin transaction +go + +alter table StoricoCartellini alter column + CodSoggetto nchar(17) +go + +commit +go + +-- aggiungo vista +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +create VIEW v_posizioniDelibere +AS +SELECT DISTINCT tpe.IdxPosizione, atd.CodTipoDelibera +FROM dbo.TabTranPosizEventi AS tpe INNER JOIN + dbo.AnagTipoEvento AS ate ON tpe.CodEvento = ate.CodEvento INNER JOIN + dbo.AnagTipoDelibere AS atd ON ate.CodEvento = atd.CodEvento +go + +exec sp_addextendedproperty 'MS_DiagramPane1', '[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00] +Begin DesignProperties = + Begin PaneConfigurations = + Begin PaneConfiguration = 0 + NumPanes = 4 + Configuration = "(H (1[40] 4[20] 2[20] 3) )" + End + Begin PaneConfiguration = 1 + NumPanes = 3 + Configuration = "(H (1 [50] 4 [25] 3))" + End + Begin PaneConfiguration = 2 + NumPanes = 3 + Configuration = "(H (1 [50] 2 [25] 3))" + End + Begin PaneConfiguration = 3 + NumPanes = 3 + Configuration = "(H (4 [30] 2 [40] 3))" + End + Begin PaneConfiguration = 4 + NumPanes = 2 + Configuration = "(H (1 [56] 3))" + End + Begin PaneConfiguration = 5 + NumPanes = 2 + Configuration = "(H (2 [66] 3))" + End + Begin PaneConfiguration = 6 + NumPanes = 2 + Configuration = "(H (4 [50] 3))" + End + Begin PaneConfiguration = 7 + NumPanes = 1 + Configuration = "(V (3))" + End + Begin PaneConfiguration = 8 + NumPanes = 3 + Configuration = "(H (1[56] 4[18] 2) )" + End + Begin PaneConfiguration = 9 + NumPanes = 2 + Configuration = "(H (1 [75] 4))" + End + Begin PaneConfiguration = 10 + NumPanes = 2 + Configuration = "(H (1[66] 2) )" + End + Begin PaneConfiguration = 11 + NumPanes = 2 + Configuration = "(H (4 [60] 2))" + End + Begin PaneConfiguration = 12 + NumPanes = 1 + Configuration = "(H (1) )" + End + Begin PaneConfiguration = 13 + NumPanes = 1 + Configuration = "(V (4))" + End + Begin PaneConfiguration = 14 + NumPanes = 1 + Configuration = "(V (2))" + End + ActivePaneConfig = 0 + End + Begin DiagramPane = + Begin Origin = + Top = 0 + Left = 0 + End + Begin Tables = + Begin Table = "tpe" + Begin Extent = + Top = 6 + Left = 38 + Bottom = 118 + Right = 208 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "ate" + Begin Extent = + Top = 6 + Left = 246 + Bottom = 101 + Right = 416 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "atd" + Begin Extent = + Top = 6 + Left = 454 + Bottom = 118 + Right = 632 + End + DisplayFlags = 280 + TopColumn = 0 + End + End + End + Begin SQLPane = + End + Begin DataPane = + Begin ParameterDefaults = "" + End + Begin ColumnWidths = 9 + Width = 284 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + End + End + Begin CriteriaPane = + Begin ColumnWidths = 11 + Column = 1440 + Alias = 900 + Table = 1170 + Output = 720 + Append = 1400 + NewValue = 1170 + SortType = 1350 + SortOrder = 1410 + GroupBy = 1350 + Filter = 1350 + Or = 1350 + Or = 1350 + Or = 1350 + End + End +End +', 'SCHEMA', 'dbo', 'VIEW', 'v_posizioniDelibere' +go + +exec sp_addextendedproperty 'MS_DiagramPaneCount', 1, 'SCHEMA', 'dbo', 'VIEW', 'v_posizioniDelibere' +go + +commit +go + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +alter VIEW v_UdcDetail +AS +SELECT dbo.ElencoCartellini.UDC, ISNULL(dbo.ElencoCartellini.RagSociale, N'') AS RagSociale, ISNULL(dbo.ElencoCartellini.Particolare, N'') AS Particolare, + ISNULL(dbo.ElencoCartellini.DescParticolare, N'') AS DescParticolare, ISNULL(dbo.ElencoCartellini.DisegnoGrezzo, N'') AS DisegnoGrezzo, + ISNULL(dbo.ElencoCartellini.Esponente, N'') AS Esponente, ISNULL(dbo.ElencoCartellini.DescImpianto, N'') AS DescImpianto, ISNULL(dbo.ElencoCartellini.DataFus, + N'') AS DataFus, ISNULL(dbo.ElencoCartellini.TurnoFus, 0) AS TurnoFus, dbo.ElencoCartellini.CodImballo, dbo.ElencoCartellini.Qta, + ISNULL(dbo.AnagStatiProdotto.DescStato, N'') AS DescStato, dbo.ElencoCartellini.ModDate, ISNULL(dbo.Blocchi.CodMag, N'') AS CodMag, + ISNULL(dbo.Blocchi.CodBlocco, N'') AS CodBlocco, ISNULL(dbo.Celle.CodCella, N'') AS CodCella, ISNULL(dbo.Celle.IdxCella, 0) AS IdxCella, ISNULL(dbo.Celle.X, 0) + AS X, ISNULL(dbo.Celle.Y, 0) AS Y, ISNULL(dbo.Celle.Z, 0) AS Z, dbo.ElencoCartellini.IdxPosizione +FROM dbo.AnagStatiProdotto RIGHT OUTER JOIN + dbo.ElencoCartellini ON dbo.AnagStatiProdotto.CodStato = dbo.ElencoCartellini.CodStato AND + dbo.AnagStatiProdotto.CodStato = dbo.ElencoCartellini.CodStato LEFT OUTER JOIN + dbo.Celle INNER JOIN + dbo.PosizioneUdcCorrente ON dbo.Celle.IdxCella = dbo.PosizioneUdcCorrente.IdxCella AND dbo.Celle.IdxCella = dbo.PosizioneUdcCorrente.IdxCella AND + dbo.Celle.IdxCella = dbo.PosizioneUdcCorrente.IdxCella INNER JOIN + dbo.Blocchi ON dbo.Celle.IdxBlocco = dbo.Blocchi.IdxBlocco INNER JOIN + dbo.AnagMag ON dbo.Blocchi.CodMag = dbo.AnagMag.CodMag AND dbo.Blocchi.CodCS = dbo.AnagMag.CodCS AND + dbo.Blocchi.CodMag = dbo.AnagMag.CodMag AND dbo.Blocchi.CodCS = dbo.AnagMag.CodCS AND dbo.Blocchi.CodMag = dbo.AnagMag.CodMag AND + dbo.Blocchi.CodCS = dbo.AnagMag.CodCS ON dbo.ElencoCartellini.UDC = dbo.PosizioneUdcCorrente.UDC +go + +exec sp_updateextendedproperty 'MS_DiagramPane1', '[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00] +Begin DesignProperties = + Begin PaneConfigurations = + Begin PaneConfiguration = 0 + NumPanes = 4 + Configuration = "(H (1[40] 4[20] 2[20] 3) )" + End + Begin PaneConfiguration = 1 + NumPanes = 3 + Configuration = "(H (1 [50] 4 [25] 3))" + End + Begin PaneConfiguration = 2 + NumPanes = 3 + Configuration = "(H (1 [50] 2 [25] 3))" + End + Begin PaneConfiguration = 3 + NumPanes = 3 + Configuration = "(H (4 [30] 2 [40] 3))" + End + Begin PaneConfiguration = 4 + NumPanes = 2 + Configuration = "(H (1 [56] 3))" + End + Begin PaneConfiguration = 5 + NumPanes = 2 + Configuration = "(H (2 [66] 3))" + End + Begin PaneConfiguration = 6 + NumPanes = 2 + Configuration = "(H (4 [50] 3))" + End + Begin PaneConfiguration = 7 + NumPanes = 1 + Configuration = "(V (3))" + End + Begin PaneConfiguration = 8 + NumPanes = 3 + Configuration = "(H (1[56] 4[18] 2) )" + End + Begin PaneConfiguration = 9 + NumPanes = 2 + Configuration = "(H (1 [75] 4))" + End + Begin PaneConfiguration = 10 + NumPanes = 2 + Configuration = "(H (1[66] 2) )" + End + Begin PaneConfiguration = 11 + NumPanes = 2 + Configuration = "(H (4 [60] 2))" + End + Begin PaneConfiguration = 12 + NumPanes = 1 + Configuration = "(H (1) )" + End + Begin PaneConfiguration = 13 + NumPanes = 1 + Configuration = "(V (4))" + End + Begin PaneConfiguration = 14 + NumPanes = 1 + Configuration = "(V (2))" + End + ActivePaneConfig = 0 + End + Begin DiagramPane = + Begin Origin = + Top = 0 + Left = 0 + End + Begin Tables = + Begin Table = "AnagStatiProdotto" + Begin Extent = + Top = 6 + Left = 38 + Bottom = 101 + Right = 208 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "ElencoCartellini" + Begin Extent = + Top = 6 + Left = 246 + Bottom = 309 + Right = 416 + End + DisplayFlags = 280 + TopColumn = 11 + End + Begin Table = "Celle" + Begin Extent = + Top = 27 + Left = 818 + Bottom = 156 + Right = 988 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "PosizioneUdcCorrente" + Begin Extent = + Top = 71 + Left = 548 + Bottom = 200 + Right = 718 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "Blocchi" + Begin Extent = + Top = 70 + Left = 1080 + Bottom = 199 + Right = 1250 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "AnagMag" + Begin Extent = + Top = 188 + Left = 799 + Bottom = 334 + Right = 969 + End + DisplayFlags = 280 + TopColumn = 0 + End + End + End + Begin SQLPane = + End + Begin DataPane = + Begin ParameterDefaults = "" + End + Begin ColumnWidths = 22 + Width = 284 + Width = 15', 'SCHEMA', 'dbo', 'VIEW', 'v_UdcDetail' +go + +exec sp_updateextendedproperty 'MS_DiagramPane2', '00 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + End + End + Begin CriteriaPane = + Begin ColumnWidths = 11 + Column = 1440 + Alias = 900 + Table = 1170 + Output = 720 + Append = 1400 + NewValue = 1170 + SortType = 1350 + SortOrder = 1410 + GroupBy = 1350 + Filter = 1350 + Or = 1350 + Or = 1350 + Or = 1350 + End + End +End +', 'SCHEMA', 'dbo', 'VIEW', 'v_UdcDetail' +go + +commit +go + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(259, GETDATE()) +GO \ No newline at end of file diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00260.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00260.sql new file mode 100644 index 00000000..622334c3 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00260.sql @@ -0,0 +1,1103 @@ +-- update stored varie + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_consumaMP +* +* Salva il movimento di consumo dell'UDC di MP indicato +* +* Steamware, S.E.L. +* mod: 2010.09.24 +* +****************************************/ +create PROCEDURE BatchQueue.stp_consumaMP +( + @XRPQLN INT, --è il num rap qualità + @XNRETI NVARCHAR(10), -- è il numRapQual + @XDTPRO INT, -- data 8 cifre aaaammgg + @XTRPRO NVARCHAR(5) -- turno +) +AS + -- BOZZA DA COMPLETARE A CURA MAZZUCCONI!!! + + DECLARE @SQL AS NVARCHAR(1000) + + -- Faccio chiamata su AS400 + + SET @SQL = N' OPENQUERY( P65220DC, ''UPDATE MAZZT_DTV3.XOGIX00F' + SET @SQL = @SQL + 'SET XDTPRO = ' + @XDTPRO + ', XTRPRO = ' + @XTRPRO + SET @SQL = @SQL + ', XDESMT = ''F01'', XMATSC=''S'' ' + SET @SQL = @SQL + 'WHERE XRPQLN =' + @XRPQLN + ' AND XNRETI = ' + @XNRETI + ''' )' + + EXEC sp_executesql @SQL + +RETURN +go + +/*************************************** +* STORED stp_annullaUDC +* +* annulla un UDC +* +* Steamware, S.E.L. +* mod: 2010.04.28 +* +****************************************/ +alter PROCEDURE stp_annullaUDC +( + @UDC VARCHAR(20), + @CodSoggetto VARCHAR(17) +) +AS + +DECLARE @CodEvento VARCHAR(10) +DECLARE @CodTipoDichiaraz VARCHAR(1) + +SET @CodEvento = 'UDC_ANN' +SET @CodTipoDichiaraz = 'U' + +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) + + -- faccio update + UPDATE ElencoCartellini + SET IdxPosizione = 0 + WHERE UDC = @UDC + + +COMMIT TRAN + +RETURN +go + +commit +go + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_getUdcDetailFullCode +* +* ottiene l'elenco degli UDC con i dati significativi partendo da un codice UDC COMPLETO +* +* Steamware, S.E.L. +* mod: 2010.05.24 +* +****************************************/ +alter PROCEDURE stp_getUdcDetailFullCode +( + @UDC VARCHAR(50), + @CodCS VARCHAR(2) +) +AS + +SELECT ElencoCartellini.UDC, ISNULL(ElencoCartellini.RagSociale, N'') AS RagSociale, ISNULL(ElencoCartellini.Particolare, N'') AS Particolare, + ISNULL(ElencoCartellini.DescParticolare, N'') AS DescParticolare, ISNULL(ElencoCartellini.DisegnoGrezzo, N'') AS DisegnoGrezzo, + ISNULL(ElencoCartellini.Esponente, N'') AS Esponente, ISNULL(ElencoCartellini.DescImpianto, N'') AS DescImpianto, + ISNULL(ElencoCartellini.DataFus, N'') AS DataFus, ISNULL(ElencoCartellini.TurnoFus, 0) AS TurnoFus, ElencoCartellini.CodImballo, + ElencoCartellini.Qta, ISNULL(AnagStatiProdotto.DescStato, N'') AS DescStato, ElencoCartellini.ModDate, + ISNULL(Blocchi.CodMag, N'') AS CodMag, + ISNULL(Blocchi.CodBlocco, N'') AS CodBlocco, ISNULL(Celle.CodCella, N'') AS CodCella, ISNULL(dbo.Celle.IdxCella, 0) AS IdxCella, + ISNULL(Celle.X, 0) AS X, ISNULL(Celle.Y, 0) AS Y, ISNULL(Celle.Z, 0) AS Z, ElencoCartellini.IdxPosizione +FROM AnagStatiProdotto RIGHT OUTER JOIN + ElencoCartellini ON AnagStatiProdotto.CodStato = ElencoCartellini.CodStato AND AnagStatiProdotto.CodStato = ElencoCartellini.CodStato + LEFT OUTER JOIN Celle INNER JOIN PosizioneUdcCorrente ON Celle.IdxCella = PosizioneUdcCorrente.IdxCella + AND Celle.IdxCella = PosizioneUdcCorrente.IdxCella AND Celle.IdxCella = PosizioneUdcCorrente.IdxCella + INNER JOIN Blocchi ON Celle.IdxBlocco = Blocchi.IdxBlocco INNER JOIN AnagMag ON Blocchi.CodMag = AnagMag.CodMag + AND Blocchi.CodCS = AnagMag.CodCS AND Blocchi.CodMag = AnagMag.CodMag AND Blocchi.CodCS = AnagMag.CodCS AND Blocchi.CodMag = AnagMag.CodMag + AND Blocchi.CodCS = AnagMag.CodCS ON ElencoCartellini.UDC = PosizioneUdcCorrente.UDC +WHERE (ElencoCartellini.UDC = @UDC) AND (ElencoCartellini.CodCS = @CodCS) + +RETURN +go + +/*************************************** +* STORED stp_getUdcDetailFullCode +* +* ottiene l'elenco degli UDC con i dati significativi partendo da un valore da cercare come LIKE in +* - UDC +* - Particolare +* +* Steamware, S.E.L. +* mod: 2010.05.24 +* +****************************************/ +alter PROCEDURE stp_getUdcDetailLikeSearch +( + @searchVal VARCHAR(50), + @CodCS VARCHAR(2) +) +AS + +SELECT ElencoCartellini.UDC, ISNULL(ElencoCartellini.RagSociale, N'') AS RagSociale, ISNULL(ElencoCartellini.Particolare, N'') AS Particolare, + ISNULL(ElencoCartellini.DescParticolare, N'') AS DescParticolare, ISNULL(ElencoCartellini.DisegnoGrezzo, N'') AS DisegnoGrezzo, + ISNULL(ElencoCartellini.Esponente, N'') AS Esponente, ISNULL(ElencoCartellini.DescImpianto, N'') AS DescImpianto, + ISNULL(ElencoCartellini.DataFus, N'') AS DataFus, ISNULL(ElencoCartellini.TurnoFus, 0) AS TurnoFus, ElencoCartellini.CodImballo, + ElencoCartellini.Qta, ISNULL(AnagStatiProdotto.DescStato, N'') AS DescStato, ElencoCartellini.ModDate, + ISNULL(Blocchi.CodMag, N'') AS CodMag, ISNULL(Blocchi.CodBlocco, N'') AS CodBlocco, ISNULL(Celle.CodCella, N'') AS CodCella, + ISNULL(dbo.Celle.IdxCella, 0) AS IdxCella, ISNULL(Celle.X, 0) AS X, ISNULL(Celle.Y, 0) AS Y, ISNULL(Celle.Z, 0) AS Z, ElencoCartellini.IdxPosizione +FROM AnagStatiProdotto RIGHT OUTER JOIN ElencoCartellini + ON AnagStatiProdotto.CodStato = ElencoCartellini.CodStato AND AnagStatiProdotto.CodStato = ElencoCartellini.CodStato + LEFT OUTER JOIN Celle INNER JOIN PosizioneUdcCorrente + ON Celle.IdxCella = PosizioneUdcCorrente.IdxCella AND Celle.IdxCella = PosizioneUdcCorrente.IdxCella AND + Celle.IdxCella = PosizioneUdcCorrente.IdxCella INNER JOIN + Blocchi ON Celle.IdxBlocco = Blocchi.IdxBlocco INNER JOIN + AnagMag ON Blocchi.CodMag = AnagMag.CodMag AND Blocchi.CodCS = AnagMag.CodCS AND Blocchi.CodMag = AnagMag.CodMag AND + Blocchi.CodCS = AnagMag.CodCS AND Blocchi.CodMag = AnagMag.CodMag AND Blocchi.CodCS = AnagMag.CodCS ON + ElencoCartellini.UDC = PosizioneUdcCorrente.UDC +WHERE (ElencoCartellini.CodCS = @CodCS) AND + ((ElencoCartellini.UDC like '%'+ @searchVal+'%') OR (ElencoCartellini.Particolare like '%'+ @searchVal+'%') OR + (ElencoCartellini.RagSociale like '%'+ @searchVal+'%')) + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +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 +* +****************************************/ +alter PROCEDURE stp_rappQualGetByNumRapQual +( + @nRapQual INT +) +AS + -- restituisce le righe richieste + SELECT * + FROM RilPro.RapQual + WHERE (nRapQual = @nRapQual)-- AND (UDC IS NULL) + +RETURN +go + +/*************************************** +* STORED stp_sbloccaUdc +* +* sblocca un dato UDC per modifica +* +* Steamware, S.E.L. +* mod: 2010.04.28 +* +****************************************/ +alter PROCEDURE stp_sbloccaUdc +( + @UDC VARCHAR(20), + @CodSoggetto VARCHAR(17) +) +AS + +DECLARE @CodEvento VARCHAR(10) +DECLARE @CodTipoDichiaraz VARCHAR(1) + +SET @CodEvento = 'UDC_SBL' +SET @CodTipoDichiaraz = 'U' + +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) + + -- faccio update + UPDATE ElencoCartellini + SET ModDate = GETDATE() + WHERE UDC = @UDC + +COMMIT TRAN + +RETURN +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.09.28 +* +****************************************/ +alter PROCEDURE stp_scaricaUdc +( + @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 + + +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), + @CodSoggetto VARCHAR(17) +) +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), + @DoDeleteUdcParent BIT +) +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 +DECLARE @IdxCella 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 parent-child tra UDC vecchio (tara) e nuovo (pesa) + INSERT INTO RelazUDC(UDC_parent, UDC_child) + VALUES (@UDC_parent, @UDC) +COMMIT TRAN + +------------------------------------------------------------------------------------------------------ + +------------------------------------------------------------------------------------------------------ +-- Ciclo secondario x eventuale cancelalzione UDC tara parent e inserimento in posizione +------------------------------------------------------------------------------------------------------ + -- se richiesto elimino l'UDC parent (tara) + IF(@DoDeleteUdcParent = 1) + BEGIN + DELETE FROM ElencoCartellini WHERE UDC = @UDC_parent + END + + -- calcolo la prima cella della posizione indicata.. + SET @IdxCella = ( + SELECT TOP 1 c.IdxCella + FROM Celle c INNER JOIN Blocchi b ON c.IdxBlocco=b.IdxBlocco + WHERE b.CodMag = CAST(@IdxPosizione AS NVARCHAR(50)) + ) + -- inserisco il cartellino nella prima cella della posizione indicata.. + INSERT INTO PosizioneUdcCorrente + VALUES (@UDC, @IdxCella, @CodCS, GETDATE()) +------------------------------------------------------------------------------------------------------ + +/* +------------------------------------------------------------------------------------------------------ +-- 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 + +/*************************************** +* 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 + +/*************************************** +* STORED stp_UDC_updateIdxPosizione +* +* aggiorna un cartellino x la sua posizione logica +* +* Steamware, S.E.L. +* mod: 2010.06.12 +* +****************************************/ +alter PROCEDURE stp_UDC_updateIdxPosizione +( + @UDC VARCHAR(20), + @CodSoggetto VARCHAR(17), + @CodTipoDichiaraz CHAR(1), + @CodEvento VARCHAR(10), + @IdxPosizione INT +) +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 IdxPosizione = @IdxPosizione, ModDate = GETDATE() + WHERE UDC = @UDC + +COMMIT TRAN +------------------------------------------------------------------------------------------------------ + +------------------------------------------------------------------------------------------------------ +-- restituisco la tab dati con l'udc appena inserito +------------------------------------------------------------------------------------------------------ +SELECT * +FROM ElencoCartellini +WHERE UDC = @UDC +------------------------------------------------------------------------------------------------------ + +RETURN +go + +/*************************************** +* STORED stp_UDC_updateQty +* +* aggiorna un cartellino x la sua quantità +* +* Steamware, S.E.L. +* mod: 2010.06.12 +* +****************************************/ +alter PROCEDURE stp_UDC_updateQty +( + @UDC VARCHAR(20), + @CodSoggetto VARCHAR(17), + @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 + + +-- ulteriori fix + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.AnagBilance + VALUES (N'MP', N'MP', N'MA') +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +UPDATE dbo.AnagTipoDelibere SET + CodEvento=N'DelWipPost' + WHERE CodTipoDelibera=N'DelibWipPost' +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +DELETE FROM dbo.AS400_MagCont WHERE CodMagAS=N'56' +go + +commit transaction +go + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.Permessi + VALUES ('LAB', 'menu.aspx', 3, 0, 'GestLaboratorioMP', 'GestLaboratorioMPExpl') +INSERT INTO dbo.Permessi + VALUES ('LAB_consumaUdc', 'LabConsumaUdc.aspx', 3, 2, 'ConsUDC', 'ConsUDCExpl') +INSERT INTO dbo.Permessi + VALUES ('LAB_stampaUdc', 'LabStampaUdc.aspx', 3, 1, 'AcqPrntUdc', 'AcqPrntUdcExpl') +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.Permessi2Funzione + VALUES ('LAB', N'GMW_lab', 'S') +INSERT INTO dbo.Permessi2Funzione + VALUES ('LAB_consumaUdc', N'GMW_lab', 'S') +INSERT INTO dbo.Permessi2Funzione + VALUES ('LAB_stampaUdc', N'GMW_lab', 'S') +go + +commit transaction +go + + + +/****** Object: StoredProcedure [dbo].[stp_UDC_insNew] Script Date: 09/29/2010 14:53:58 ******/ +SET ANSI_NULLS ON +GO + +SET QUOTED_IDENTIFIER 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 [dbo].[stp_UDC_insNew] +( + @CodCS VARCHAR(2), + @Flusso VARCHAR(2), + @Anno VARCHAR(2), + @Tara FLOAT, + @CodImballo AS VARCHAR(50), + @CodTipoDichiaraz CHAR(1), + @CodSoggetto VARCHAR(17) +) +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, CodSoggetto, CreateDate, ModDate) +VALUES (@CodCS, @UDC, @Tara, 0, 0, @CodImballo, @CodSoggetto, GETDATE(), GETDATE()) +------------------------------------------------------------------------------------------------------ + +------------------------------------------------------------------------------------------------------ +-- restituisco la tab dati con l'udc appena inserito +------------------------------------------------------------------------------------------------------ +SELECT * +FROM ElencoCartellini +WHERE UDC = @UDC +------------------------------------------------------------------------------------------------------ + +RETURN + +GO + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(260, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00265.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00265.sql new file mode 100644 index 00000000..d5de3376 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00265.sql @@ -0,0 +1,435 @@ +-- update + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* function dateToAsFormat +* +* converte le date da DATETIME al formato AS 8 cifre AAAAMMGG +* +* Steamware, S.E.L. +* mod: 2010.09.29 +* +****************************************/ +create FUNCTION dateToAsFormat +( + @data DATETIME +) +RETURNS NVARCHAR(8) +AS + BEGIN + RETURN CONVERT(NVARCHAR(8), @data, 112) + END +go + +commit +go + + + + + +set xact_abort on +go + +begin transaction +go + +alter table PosizioneUdcStorico drop + constraint FK_PosizioneUdcStorico_ElencoCartellini +go + +exec sp_rename 'PK_PosizioneUdcStorico_1', 'tmp__PK_PosizioneUdcStorico_1', 'OBJECT' +go + +exec sp_rename 'PosizioneUdcStorico', 'tmp__PosizioneUdcStorico_0', 'OBJECT' +go + +create table PosizioneUdcStorico( + UDC nvarchar(50) not null, + IdxCella int not null, + DataInizio datetime not null, + CodCS nchar(2) not null, + DataFine datetime, + + constraint PK_PosizioneUdcStorico_1 primary key(UDC,IdxCella,DataInizio) +) +go + +alter table PosizioneUdcStorico add + constraint FK_PosizioneUdcStorico_ElencoCartellini foreign key(UDC) references ElencoCartellini(UDC) on update cascade +go + +insert into PosizioneUdcStorico(UDC,IdxCella,DataInizio,CodCS,DataFine) select UDC,IdxCella,DataInizio,CodCS,DataFine from tmp__PosizioneUdcStorico_0 +go + +drop table tmp__PosizioneUdcStorico_0 +go + +commit +go + + +create index [] on RilPro.RapQual(DataRapQual) + include(nRapQual,CodFor,CodLega,Qta,BenesQual,UDC) +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +create VIEW v_RapQualSunto +AS +SELECT TOP (100) PERCENT CAST(nRapQual AS NVARCHAR(20)) AS nRapQual, DataRapQual, CodFor, CodLega, SUM(Qta) AS Qta, BenesQual, COUNT(*) AS UdcTot, + COUNT(UDC) AS UdcAssoc +FROM RilPro.RapQual +GROUP BY nRapQual, DataRapQual, CodFor, CodLega, BenesQual +ORDER BY nRapQual +go + +exec sp_addextendedproperty 'MS_DiagramPane1', '[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00] +Begin DesignProperties = + Begin PaneConfigurations = + Begin PaneConfiguration = 0 + NumPanes = 4 + Configuration = "(H (1[40] 4[20] 2[20] 3) )" + End + Begin PaneConfiguration = 1 + NumPanes = 3 + Configuration = "(H (1 [50] 4 [25] 3))" + End + Begin PaneConfiguration = 2 + NumPanes = 3 + Configuration = "(H (1 [50] 2 [25] 3))" + End + Begin PaneConfiguration = 3 + NumPanes = 3 + Configuration = "(H (4 [30] 2 [40] 3))" + End + Begin PaneConfiguration = 4 + NumPanes = 2 + Configuration = "(H (1 [56] 3))" + End + Begin PaneConfiguration = 5 + NumPanes = 2 + Configuration = "(H (2 [66] 3))" + End + Begin PaneConfiguration = 6 + NumPanes = 2 + Configuration = "(H (4 [50] 3))" + End + Begin PaneConfiguration = 7 + NumPanes = 1 + Configuration = "(V (3))" + End + Begin PaneConfiguration = 8 + NumPanes = 3 + Configuration = "(H (1[56] 4[18] 2) )" + End + Begin PaneConfiguration = 9 + NumPanes = 2 + Configuration = "(H (1 [75] 4))" + End + Begin PaneConfiguration = 10 + NumPanes = 2 + Configuration = "(H (1[66] 2) )" + End + Begin PaneConfiguration = 11 + NumPanes = 2 + Configuration = "(H (4 [60] 2))" + End + Begin PaneConfiguration = 12 + NumPanes = 1 + Configuration = "(H (1) )" + End + Begin PaneConfiguration = 13 + NumPanes = 1 + Configuration = "(V (4))" + End + Begin PaneConfiguration = 14 + NumPanes = 1 + Configuration = "(V (2))" + End + ActivePaneConfig = 0 + End + Begin DiagramPane = + Begin Origin = + Top = 0 + Left = 0 + End + Begin Tables = + Begin Table = "RapQual (RilPro)" + Begin Extent = + Top = 6 + Left = 38 + Bottom = 314 + Right = 208 + End + DisplayFlags = 280 + TopColumn = 0 + End + End + End + Begin SQLPane = + End + Begin DataPane = + Begin ParameterDefaults = "" + End + Begin ColumnWidths = 9 + Width = 284 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + End + End + Begin CriteriaPane = + Begin ColumnWidths = 12 + Column = 1440 + Alias = 1305 + Table = 1170 + Output = 720 + Append = 1400 + NewValue = 1170 + SortType = 1350 + SortOrder = 1410 + GroupBy = 1350 + Filter = 1350 + Or = 1350 + Or = 1350 + Or = 1350 + End + End +End +', 'SCHEMA', 'dbo', 'VIEW', 'v_RapQualSunto' +go + +exec sp_addextendedproperty 'MS_DiagramPaneCount', 1, 'SCHEMA', 'dbo', 'VIEW', 'v_RapQualSunto' +go + +alter VIEW v_selMagLogico +AS +SELECT DISTINCT TOP (100) PERCENT CAST(IdxPosizione AS NVARCHAR(20)) AS value, 'Mag. ' + CAST(IdxPosizione AS NVARCHAR(20)) AS label, CodCS AS conditio +FROM dbo.ElencoCartellini +WHERE (IdxPosizione > 0) +ORDER BY label +go + +commit +go + + +set xact_abort on +go + +begin transaction +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 +* +****************************************/ +alter PROCEDURE BatchQueue.stp_batch_RapQual_S01 +( + @minData DATETIME +) +AS + -- BOZZA DA COMPLETARE A CURA MAZZUCCONI!!! + + DECLARE @SQL AS NVARCHAR(1000) + DECLARE @dataAs400 AS VARCHAR(8) + + SET @dataAs400 = (SELECT dbo.dateToAsFormat(@minData)) + + -- 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 XRPQLD >= ' + SET @SQL = @SQL + @dataAs400 + ''' )' + + EXEC sp_executesql @SQL + ) + */ + +RETURN +go + +commit +go + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_rappQualSuntoGetByDataRange +* +* Ottiene l'elenco dei record di rapp qualità di AS dato il range delle date +* +* Steamware, S.E.L. +* mod: 2010.09.29 +* +****************************************/ +create PROCEDURE stp_rappQualSuntoGetByDataRange +( + @dataFrom DATETIME, + @dataTo DATETIME +) +AS + -- restituisce le righe richieste + SELECT * + FROM v_RapQualSunto + WHERE (DataRapQual > dbo.dateToAsFormat(@dataFrom)) AND (DataRapQual < dbo.dateToAsFormat(@dataTo)) + ORDER BY nRapQual +RETURN +go + +/*************************************** +* STORED stp_rappQualSuntoGetByNumRap +* +* Ottiene il record di rapp qualità di AS dato il numero del rapporto di qualità +* +* Steamware, S.E.L. +* mod: 2010.09.29 +* +****************************************/ +create PROCEDURE stp_rappQualSuntoGetByNumRap +( + @nRapQual NVARCHAR(20) +) +AS + -- restituisce le righe richieste + SELECT * + FROM v_RapQualSunto + WHERE (nRapQual = @nRapQual) +RETURN +go + +/*************************************** +* STORED stp_spostaUdc +* +* sposta un UDC, salvandone la posizione precedente (se esiste) nella tab storica +* +* Steamware, S.E.L. +* mod: 2010.06.11 +* +****************************************/ +alter PROCEDURE stp_spostaUdc +( + @CodCS VARCHAR(2), + @UDC VARCHAR(50), + @IdxCellaTo INT +) +AS + +BEGIN TRAN + + -- DICHIARAZIONI iniziali variabili + DECLARE @IdxCellaFrom INT + DECLARE @capienza INT + DECLARE @numUdc INT + + -- controllo cella di partenza + SET @IdxCellaFrom = (SELECT IdxCella FROM PosizioneUdcCorrente WHERE UDC = @UDC) + -- controllo se la cella di dest vada indicata come piena + SET @capienza = ( + SELECT tc.Capienza + FROM TipoCella TC INNER JOIN Celle c ON TC.IdxTipoCella=c.IdxTipoCella + WHERE c.IdxCella = @IdxCellaFrom + ) + SET @numUdc = (SELECT COUNT(*) FROM PosizioneUdcCorrente WHERE IdxCella = @IdxCellaFrom) + -- se capienza raggiunta aggiorno... + IF(@numUdc -1 < @capienza) + BEGIN + EXEC stp_celle_updPiena @IdxCellaFrom, 0 + END + + -- cancello posizione occupata + DELETE + FROM PosizioneUdcCorrente + WHERE UDC = @UDC + + -- creo una nuova posizione per l'UDC + INSERT INTO PosizioneUdcCorrente(UDC, IdxCella, CodCS, DataRif) + VALUES(@UDC, @IdxCellaTo, @CodCS, GETDATE()) + + -- controllo se la cella di dest vada indicata come piena + SET @capienza = ( + SELECT tc.Capienza + FROM TipoCella TC INNER JOIN Celle c ON TC.IdxTipoCella=c.IdxTipoCella + WHERE c.IdxCella = @IdxCellaTo + ) + SET @numUdc = (SELECT COUNT(*) FROM PosizioneUdcCorrente WHERE IdxCella = @IdxCellaTo) + -- se capienza raggiunta aggiorno... + IF(@numUdc >= @capienza) + BEGIN + EXEC stp_celle_updPiena @IdxCellaTo, 1 + END + +COMMIT TRAN + +RETURN +go + +commit +go + + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(265, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00270.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00270.sql new file mode 100644 index 00000000..c4a72242 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00270.sql @@ -0,0 +1,425 @@ +-- svuoto tab x procedere... +delete from AS400_BatchMovimenti +GO + + + +set xact_abort on +go + +begin transaction +go + +alter table AS400_BatchMovimenti drop + constraint FK_AS400_BatchMovimenti_AS400_MagCont , + constraint FK_AS400_BatchMovimenti_AnagTipoEvento +go + +exec sp_rename 'PK_AS400_BatchMovimenti', 'tmp__PK_AS400_BatchMovimenti', 'OBJECT' +go + +exec sp_rename 'AS400_BatchMovimenti', 'tmp__AS400_BatchMovimenti_1', 'OBJECT' +go + +create table AS400_BatchMovimenti( + DataIns datetime not null, + CodEvento nvarchar(10) not null, + Particolare nvarchar(15) not null, + UDC nvarchar(50) not null, + CodMagAS nvarchar(50) not null, + Quantita decimal(10,2) not null, + DataBatch datetime, + DataVerifica datetime, + + constraint PK_AS400_BatchMovimenti primary key(DataIns,CodEvento,Particolare,UDC,CodMagAS) +) +go + +alter table AS400_BatchMovimenti add + constraint FK_AS400_BatchMovimenti_AnagTipoEvento foreign key(CodEvento) references AnagTipoEvento(CodEvento) on update cascade, + constraint FK_AS400_BatchMovimenti_AS400_MagCont foreign key(CodMagAS) references AS400_MagCont(CodMagAS) on update cascade +go + +exec sp_addextendedproperty 'MS_Description', 'dataora inserimento in coda caricamento', 'SCHEMA', 'dbo', 'TABLE', 'AS400_BatchMovimenti', 'COLUMN', 'DataIns' +go + +exec sp_addextendedproperty 'MS_Description', 'NON MODIFICARE: nel codice si usano questi campi x chiamate...', 'SCHEMA', 'dbo', 'TABLE', 'AS400_BatchMovimenti', 'COLUMN', 'CodEvento' +go + +exec sp_addextendedproperty 'MS_Description', 'dataora di caricamento batch verso AS', 'SCHEMA', 'dbo', 'TABLE', 'AS400_BatchMovimenti', 'COLUMN', 'DataBatch' +go + +exec sp_addextendedproperty 'MS_Description', N'dataora in cui è stato verificato il caricamento su AS', 'SCHEMA', 'dbo', 'TABLE', 'AS400_BatchMovimenti', 'COLUMN', 'DataVerifica' +go + +insert into AS400_BatchMovimenti(DataIns,CodEvento,Particolare,UDC,CodMagAS,Quantita,DataBatch,DataVerifica) select DataIns,CodEvento,Particolare,N'',CodMagAS,Quantita,DataBatch,DataVerifica from tmp__AS400_BatchMovimenti_1 +go + +drop table tmp__AS400_BatchMovimenti_1 +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2009-09-20 +-- Description: trigger x inserimento movimenti +-- nella coda di trasferimento batch +-- verso AS400 x UPDATE UDC +-- ============================================= +alter TRIGGER trg_updMovAS + ON ElencoCartellini + AFTER UPDATE +AS +BEGIN + + -- setup variabili e verbosità + SET NOCOUNT ON; + DECLARE @partOk AS BIT + DECLARE @IdxPosFrom AS INT + DECLARE @IdxPosTo AS INT + DECLARE @magFrom AS NVARCHAR(50) + DECLARE @magTo AS NVARCHAR(50) + DECLARE @qta AS DECIMAL(10,2) + + -- controllo che CI SIA il particolare (altrimenti non eseguo) + SET @partOk = (SELECT CASE WHEN ISNULL(Particolare,'n.d.') = 'n.d.' THEN 0 ELSE 1 END FROM deleted) + + IF(@partOk = 1) + SET @qta = (SELECT Qta FROM inserted) + -- se c'è stata modifica di quantità inizio a rettificare quella + IF UPDATE(Qta) + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOD', Particolare, UDC, CAST(IdxPosizione AS NVARCHAR(50)), @qta-Qta + FROM deleted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + + -- controllo poi se sia cambiato il magazzino, altrimenti non lo inserisco + IF UPDATE(IdxPosizione) + BEGIN + -- Prendo le posizioni di magazzino precedente e nuova + SET @IdxPosFrom = (SELECT IdxPosizione FROM deleted) + SET @IdxPosTo = (SELECT IdxPosizione FROM inserted) + -- Le trasformo nelle equivalenti stringhe del codMag SE attive + SET @magFrom = (SELECT ISNULL(CodMagAS,'---') FROM AS400_MagCont WHERE Attivo = 1 AND CodMagAs = CAST(@IdxPosFrom AS NVARCHAR(50))) + SET @magTo = (SELECT ISNULL(CodMagAS,'---') FROM AS400_MagCont WHERE Attivo = 1 AND CodMagAs = CAST(@IdxPosTo AS NVARCHAR(50))) + + -- inserisco un movimento di deposito verso mag nuovo (SE attivo) + IF (@magFrom <> '---') + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOV', Particolare, UDC, CAST(IdxPosizione AS NVARCHAR(50)), -@qta + FROM deleted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + -- inserisco un movimento di prelievo verso mag vecchio (SE attivo) + IF (@magTo <> '---') + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOV', Particolare, UDC, CAST(IdxPosizione AS NVARCHAR(50)), @qta + FROM inserted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + END + +END +go + +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2009-09-20 +-- Description: trigger x inserimento movimenti +-- nella coda di trasferimento batch +-- verso AS400 x INSERT UDC +-- ============================================= +alter TRIGGER trg_InsMovAS + ON ElencoCartellini + AFTER INSERT +AS +BEGIN + + -- setup variabili e verbosità + SET NOCOUNT ON; + DECLARE @partOk AS BIT + + -- controllo che CI SIA il particoalre (altrimenti non eseguo) + SET @partOk = (SELECT CASE WHEN ISNULL(Particolare,'n.d.') = 'n.d.' THEN 0 ELSE 1 END FROM inserted) + + IF(@partOk = 1) + BEGIN + -- metto in storico la posizione attuale dell'UDC (SE esiste) CANCELLATO + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_NEW', Particolare, UDC, CAST(IdxPosizione AS NVARCHAR(50)), Qta + FROM inserted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + +END +go + +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2009-09-20 +-- Description: trigger x inserimento movimenti +-- nella coda di trasferimento batch +-- verso AS400 x DELETE UDC +-- ============================================= +alter TRIGGER trg_DelMovAS + ON ElencoCartellini + AFTER DELETE +AS +BEGIN + + -- setup variabili e verbosità + SET NOCOUNT ON; + -- inserisco movimenti AS + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_DEL', Particolare, UDC, CAST(IdxPosizione AS NVARCHAR(50)), -Qta + FROM deleted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) AND ((CASE WHEN ISNULL(Particolare,'n.d.') = 'n.d.' THEN 0 ELSE 1 END) = 1) + ) + +END +go + +commit +go + +set xact_abort on +go + +begin transaction +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 +* +****************************************/ +alter PROCEDURE BatchQueue.stp_batch_RapQual_S01 +( + @minData DATETIME +) +AS + -- BOZZA DA COMPLETARE A CURA MAZZUCCONI!!! + + DECLARE @SQL AS NVARCHAR(1000) + DECLARE @dataAs400 AS VARCHAR(8) + + SET @dataAs400 = (SELECT dbo.dateToAsFormat(@minData)) + + -- 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 XRPQLD >= ' + SET @SQL = @SQL + @dataAs400 + ''' )' + + EXEC sp_executesql @SQL + ) + */ + +RETURN +go + +commit +go + + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_rappQualSuntoGetByDataRange +* +* Ottiene l'elenco dei record di rapp qualità di AS dato il range delle date +* +* Steamware, S.E.L. +* mod: 2010.09.29 +* +****************************************/ +create PROCEDURE stp_rappQualSuntoGetByDataRange +( + @dataFrom DATETIME, + @dataTo DATETIME +) +AS + -- restituisce le righe richieste + SELECT * + FROM v_RapQualSunto + WHERE (DataRapQual > dbo.dateToAsFormat(@dataFrom)) AND (DataRapQual < dbo.dateToAsFormat(@dataTo)) + ORDER BY nRapQual +RETURN +go + +/*************************************** +* STORED stp_rappQualSuntoGetByNumRap +* +* Ottiene il record di rapp qualità di AS dato il numero del rapporto di qualità +* +* Steamware, S.E.L. +* mod: 2010.09.29 +* +****************************************/ +create PROCEDURE stp_rappQualSuntoGetByNumRap +( + @nRapQual NVARCHAR(20) +) +AS + -- restituisce le righe richieste + SELECT * + FROM v_RapQualSunto + WHERE (nRapQual = @nRapQual) +RETURN +go + +commit +go + + +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 +* +****************************************/ +alter PROCEDURE stp_spostaUdc +( + @CodCS VARCHAR(2), + @UDC VARCHAR(50), + @IdxCellaTo INT +) +AS + +BEGIN TRAN + + -- DICHIARAZIONI iniziali variabili + DECLARE @IdxCellaFrom INT + DECLARE @capienza INT + DECLARE @numUdc INT + + -- controllo cella di partenza + SET @IdxCellaFrom = (SELECT IdxCella FROM PosizioneUdcCorrente WHERE UDC = @UDC) + -- controllo se la cella di dest vada indicata come piena + SET @capienza = ( + SELECT tc.Capienza + FROM TipoCella TC INNER JOIN Celle c ON TC.IdxTipoCella=c.IdxTipoCella + WHERE c.IdxCella = @IdxCellaFrom + ) + SET @numUdc = (SELECT COUNT(*) FROM PosizioneUdcCorrente WHERE IdxCella = @IdxCellaFrom) + -- se capienza raggiunta aggiorno... + IF(@numUdc -1 < @capienza) + BEGIN + EXEC stp_celle_updPiena @IdxCellaFrom, 0 + END + + -- cancello posizione occupata + DELETE + FROM PosizioneUdcCorrente + WHERE UDC = @UDC + + -- creo una nuova posizione per l'UDC + INSERT INTO PosizioneUdcCorrente(UDC, IdxCella, CodCS, DataRif) + VALUES(@UDC, @IdxCellaTo, @CodCS, GETDATE()) + + -- controllo se la cella di dest vada indicata come piena + SET @capienza = ( + SELECT tc.Capienza + FROM TipoCella TC INNER JOIN Celle c ON TC.IdxTipoCella=c.IdxTipoCella + WHERE c.IdxCella = @IdxCellaTo + ) + SET @numUdc = (SELECT COUNT(*) FROM PosizioneUdcCorrente WHERE IdxCella = @IdxCellaTo) + -- se capienza raggiunta aggiorno... + IF(@numUdc >= @capienza) + BEGIN + EXEC stp_celle_updPiena @IdxCellaTo, 1 + END + +COMMIT TRAN + +RETURN +go + +commit +go + + + + + + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(270, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00275.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00275.sql new file mode 100644 index 00000000..d29cdc26 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00275.sql @@ -0,0 +1,443 @@ +set xact_abort on +go + +begin transaction +go + +drop index [] on RilPro.RapQual +go + +alter table RilPro.RapQual alter column + UDC nvarchar(50) +go + +create index [] on RilPro.RapQual(DataRapQual) + include(nRapQual,CodFor,CodLega,Qta,BenesQual,UDC) +go + +create index i_dataPrelievo on RilPro.RapQual(DataPrelFus) +go + +commit +go + + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_prtCartMatPrimaByUDC +* +* ottiene il record del Cartellino Materia Prima dato l'UDC richiesto x la sstampa +* +****************************************/ +create PROCEDURE stp_prtCartMatPrimaByUDC +( + @UDC VARCHAR(50) +) +AS +SELECT + RQ.nRapQual, + RQ.DataRapQual, + RQ.ProgUDC, + RQ.CodFor, + RQ.DestTerz, + RQ.CodLega, + RQ.DataPrelFus, + RQ.TurnoPrelFus, + RQ.Qta, + RQ.DestLega, + RQ.LegaScaric, + RQ.BenesQual, + RQ.UDC, + Fo.DescFornitore, + Fo.DescFornitore2, + Le.CodLega AS CodLega2, + Le.DescLega, + Le.DescLega2 +FROM GMW.RilPro.RapQual AS RQ +INNER JOIN ReportAs400.RilPro.AnagFornitori AS Fo + ON RQ.CodFor = Fo.CodFornitore +INNER JOIN ReportAs400.RilPro.AnagLeghe Le + ON RQ.CodLega = 'L' + Le.CodLega +WHERE RQ.UDC = RTRIM(@UDC) -- 'UB31000000001' +RETURN +go + +/*************************************** +* STORED stp_rappQualConsumabili +* +* Ottiene l'elenco dei record di rapp qualità (e quindi degli UDC) di AS non ancora consumati per range di data di approvazione +* +* Steamware, S.E.L. +* mod: 2010.10.05 +* +****************************************/ +create PROCEDURE stp_rappQualConsumabili +( + @dataFrom DATETIME, + @dataTo DATETIME +) + +AS + -- restituisce le righe richieste + SELECT * + FROM RilPro.RapQual + WHERE ((DataPrelFus IS NULL) OR (DataPrelFus = 0)) AND -- condizione sul NON aver fatto ancora il prelievo + ((DataRapQual > dbo.dateToAsFormat(@dataFrom)) AND (DataRapQual < dbo.dateToAsFormat(@dataTo))) -- cond data RQ + +RETURN +go + +/*************************************** +* STORED stp_rappQualSuntoGetByDataRange +* +* Ottiene l'elenco dei record di rapp qualità di AS dato il range delle date +* +* Steamware, S.E.L. +* mod: 2010.09.29 +* +****************************************/ +create PROCEDURE stp_rappQualSuntoGetByDataRange +( + @dataFrom DATETIME, + @dataTo DATETIME +) +AS + -- restituisce le righe richieste + SELECT * + FROM v_RapQualSunto + WHERE (DataRapQual > dbo.dateToAsFormat(@dataFrom)) AND (DataRapQual < dbo.dateToAsFormat(@dataTo)) + ORDER BY nRapQual +RETURN +go + +/*************************************** +* STORED stp_rappQualSuntoGetByNumRap +* +* Ottiene il record di rapp qualità di AS dato il numero del rapporto di qualità +* +* Steamware, S.E.L. +* mod: 2010.09.29 +* +****************************************/ +create PROCEDURE stp_rappQualSuntoGetByNumRap +( + @nRapQual NVARCHAR(20) +) +AS + -- restituisce le righe richieste + SELECT * + FROM v_RapQualSunto + WHERE (nRapQual = @nRapQual) +RETURN +go + +commit +go + + +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 +* +****************************************/ +alter PROCEDURE stp_spostaUdc +( + @CodCS VARCHAR(2), + @UDC VARCHAR(50), + @IdxCellaTo INT +) +AS + +BEGIN TRAN + + -- DICHIARAZIONI iniziali variabili + DECLARE @IdxCellaFrom INT + DECLARE @capienza INT + DECLARE @numUdc INT + + -- controllo cella di partenza + SET @IdxCellaFrom = (SELECT IdxCella FROM PosizioneUdcCorrente WHERE UDC = @UDC) + -- controllo se la cella di dest vada indicata come piena + SET @capienza = ( + SELECT tc.Capienza + FROM TipoCella TC INNER JOIN Celle c ON TC.IdxTipoCella=c.IdxTipoCella + WHERE c.IdxCella = @IdxCellaFrom + ) + SET @numUdc = (SELECT COUNT(*) FROM PosizioneUdcCorrente WHERE IdxCella = @IdxCellaFrom) + -- se capienza raggiunta aggiorno... + IF(@numUdc -1 < @capienza) + BEGIN + EXEC stp_celle_updPiena @IdxCellaFrom, 0 + END + + -- cancello posizione occupata + DELETE + FROM PosizioneUdcCorrente + WHERE UDC = @UDC + + -- creo una nuova posizione per l'UDC + INSERT INTO PosizioneUdcCorrente(UDC, IdxCella, CodCS, DataRif) + VALUES(@UDC, @IdxCellaTo, @CodCS, GETDATE()) + + -- controllo se la cella di dest vada indicata come piena + SET @capienza = ( + SELECT tc.Capienza + FROM TipoCella TC INNER JOIN Celle c ON TC.IdxTipoCella=c.IdxTipoCella + WHERE c.IdxCella = @IdxCellaTo + ) + SET @numUdc = (SELECT COUNT(*) FROM PosizioneUdcCorrente WHERE IdxCella = @IdxCellaTo) + -- se capienza raggiunta aggiorno... + IF(@numUdc >= @capienza) + BEGIN + EXEC stp_celle_updPiena @IdxCellaTo, 1 + END + +COMMIT TRAN + +RETURN +go + +commit +go + +set xact_abort on +go + +begin transaction +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 +* +****************************************/ +alter PROCEDURE BatchQueue.stp_batch_RapQual_S01 +( + @minData DATETIME +) +AS + -- BOZZA DA COMPLETARE A CURA MAZZUCCONI!!! + + DECLARE @SQL AS NVARCHAR(1000) + DECLARE @dataAs400 AS VARCHAR(8) + + SET @dataAs400 = (SELECT dbo.dateToAsFormat(@minData)) + + -- 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 XRPQLD >= ' + SET @SQL = @SQL + @dataAs400 + ''' )' + + EXEC sp_executesql @SQL + ) + */ + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +create table RilPro.AnagFornitori( + CodFornitore nvarchar(6) not null constraint PK_AnagFornitori primary key, + DescFornitore nvarchar(35), + DescFornitore2 nvarchar(35) +) +go + +create table RilPro.AnagLeghe( + CodLega nvarchar(12) not null constraint PK_AnagLeghe primary key, + CodLega2 nvarchar(12), + DescLega nvarchar(25), + DescLega2 nvarchar(25) +) +go + +commit +go + +set xact_abort on +go + +begin transaction +go + +alter table AS400_BatchMovimenti drop + constraint FK_AS400_BatchMovimenti_AS400_MagCont , + constraint FK_AS400_BatchMovimenti_AnagTipoEvento +go + +exec sp_rename 'PK_AS400_BatchMovimenti', 'tmp__PK_AS400_BatchMovimenti', 'OBJECT' +go + +exec sp_rename 'AS400_BatchMovimenti', 'tmp__AS400_BatchMovimenti_0', 'OBJECT' +go + +create table AS400_BatchMovimenti( + DataIns datetime not null, + CodEvento nvarchar(10) not null, + Particolare nvarchar(15) not null, + UDC nvarchar(50) not null, + CodMagAS nvarchar(50) not null, + Quantita decimal(10,2) not null, + DataBatch datetime, + DataVerifica datetime, + + constraint PK_AS400_BatchMovimenti primary key(DataIns,CodEvento,Particolare,UDC,CodMagAS) +) +go + +alter table AS400_BatchMovimenti add + constraint FK_AS400_BatchMovimenti_AnagTipoEvento foreign key(CodEvento) references AnagTipoEvento(CodEvento) on update cascade, + constraint FK_AS400_BatchMovimenti_AS400_MagCont foreign key(CodMagAS) references AS400_MagCont(CodMagAS) on update cascade +go + +exec sp_addextendedproperty 'MS_Description', 'dataora inserimento in coda caricamento', 'SCHEMA', 'dbo', 'TABLE', 'AS400_BatchMovimenti', 'COLUMN', 'DataIns' +go + +exec sp_addextendedproperty 'MS_Description', 'NON MODIFICARE: nel codice si usano questi campi x chiamate...', 'SCHEMA', 'dbo', 'TABLE', 'AS400_BatchMovimenti', 'COLUMN', 'CodEvento' +go + +exec sp_addextendedproperty 'MS_Description', 'dataora di caricamento batch verso AS', 'SCHEMA', 'dbo', 'TABLE', 'AS400_BatchMovimenti', 'COLUMN', 'DataBatch' +go + +exec sp_addextendedproperty 'MS_Description', N'dataora in cui è stato verificato il caricamento su AS', 'SCHEMA', 'dbo', 'TABLE', 'AS400_BatchMovimenti', 'COLUMN', 'DataVerifica' +go + +insert into AS400_BatchMovimenti(DataIns,CodEvento,Particolare,UDC,CodMagAS,Quantita,DataBatch,DataVerifica) select DataIns,CodEvento,Particolare,N'',CodMagAS,Quantita,DataBatch,DataVerifica from tmp__AS400_BatchMovimenti_0 +go + +drop table tmp__AS400_BatchMovimenti_0 +go + +commit +go + + + + + + + +set xact_abort on +go + +begin transaction +go + +alter table AS400_BatchMovimenti drop + constraint FK_AS400_BatchMovimenti_AS400_MagCont , + constraint FK_AS400_BatchMovimenti_AnagTipoEvento +go + +exec sp_rename 'PK_AS400_BatchMovimenti', 'tmp__PK_AS400_BatchMovimenti', 'OBJECT' +go + +exec sp_rename 'AS400_BatchMovimenti', 'tmp__AS400_BatchMovimenti_0', 'OBJECT' +go + +create table AS400_BatchMovimenti( + DataIns datetime not null, + CodEvento nvarchar(10) not null, + Particolare nvarchar(15) not null, + UDC nvarchar(50) not null, + CodMagAS nvarchar(50) not null, + Quantita decimal(10,2) not null, + DataBatch datetime, + DataVerifica datetime, + + constraint PK_AS400_BatchMovimenti primary key(DataIns,CodEvento,Particolare,UDC,CodMagAS) +) +go + +alter table AS400_BatchMovimenti add + constraint FK_AS400_BatchMovimenti_AnagTipoEvento foreign key(CodEvento) references AnagTipoEvento(CodEvento) on update cascade, + constraint FK_AS400_BatchMovimenti_AS400_MagCont foreign key(CodMagAS) references AS400_MagCont(CodMagAS) on update cascade +go + +exec sp_addextendedproperty 'MS_Description', 'dataora inserimento in coda caricamento', 'SCHEMA', 'dbo', 'TABLE', 'AS400_BatchMovimenti', 'COLUMN', 'DataIns' +go + +exec sp_addextendedproperty 'MS_Description', 'NON MODIFICARE: nel codice si usano questi campi x chiamate...', 'SCHEMA', 'dbo', 'TABLE', 'AS400_BatchMovimenti', 'COLUMN', 'CodEvento' +go + +exec sp_addextendedproperty 'MS_Description', 'dataora di caricamento batch verso AS', 'SCHEMA', 'dbo', 'TABLE', 'AS400_BatchMovimenti', 'COLUMN', 'DataBatch' +go + +exec sp_addextendedproperty 'MS_Description', N'dataora in cui è stato verificato il caricamento su AS', 'SCHEMA', 'dbo', 'TABLE', 'AS400_BatchMovimenti', 'COLUMN', 'DataVerifica' +go + +insert into AS400_BatchMovimenti(DataIns,CodEvento,Particolare,UDC,CodMagAS,Quantita,DataBatch,DataVerifica) select DataIns,CodEvento,Particolare,N'',CodMagAS,Quantita,DataBatch,DataVerifica from tmp__AS400_BatchMovimenti_0 +go + +drop table tmp__AS400_BatchMovimenti_0 +go + +commit +go + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(275, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00276.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00276.sql new file mode 100644 index 00000000..b3428038 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00276.sql @@ -0,0 +1,268 @@ +create table AS400_BatchConsumoMP( + ProgUDC char(10) not null constraint PK_AS400_BatchPrelievoMP primary key, + UDC nvarchar(50) not null, + DataPrelFus numeric(8,0) not null, + TurnoPrelFus char(5) not null, + DestLega char(3), + DestTerz char(6), + DataInvioAs datetime +) +go + + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2009-09-20 +-- Description: trigger x inserimento movimenti +-- nella coda di trasferimento batch +-- verso AS400 x UPDATE UDC +-- ============================================= +alter TRIGGER trg_updMovAS + ON ElencoCartellini + AFTER UPDATE +AS +BEGIN + + -- setup variabili e verbosità + SET NOCOUNT ON; + DECLARE @partOk AS BIT + DECLARE @IdxPosFrom AS INT + DECLARE @IdxPosTo AS INT + DECLARE @magFrom AS NVARCHAR(50) + DECLARE @magTo AS NVARCHAR(50) + DECLARE @qta AS DECIMAL(10,2) + DECLARE @qtaOld AS DECIMAL(10,2) + + -- controllo che CI SIA il particolare (altrimenti non eseguo) + SET @partOk = (SELECT CASE WHEN ISNULL(Particolare,'n.d.') = 'n.d.' THEN 0 ELSE 1 END FROM deleted) + + IF(@partOk = 1) + SET @qta = (SELECT Qta FROM inserted) + SET @qtaOld = (SELECT Qta FROM deleted) + -- se c'è stata modifica di quantità inizio a rettificare quella + IF (UPDATE(Qta)) AND(@qta <> @qtaOld) + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOD', Particolare, UDC, CAST(IdxPosizione AS NVARCHAR(50)), @qta-Qta + FROM deleted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + + -- controllo poi se sia cambiato il magazzino, altrimenti non lo inserisco + IF UPDATE(IdxPosizione) + BEGIN + -- Prendo le posizioni di magazzino precedente e nuova + SET @IdxPosFrom = (SELECT IdxPosizione FROM deleted) + SET @IdxPosTo = (SELECT IdxPosizione FROM inserted) + -- Le trasformo nelle equivalenti stringhe del codMag SE attive + SET @magFrom = (SELECT ISNULL(CodMagAS,'---') FROM AS400_MagCont WHERE Attivo = 1 AND CodMagAs = CAST(@IdxPosFrom AS NVARCHAR(50))) + SET @magTo = (SELECT ISNULL(CodMagAS,'---') FROM AS400_MagCont WHERE Attivo = 1 AND CodMagAs = CAST(@IdxPosTo AS NVARCHAR(50))) + + -- inserisco un movimento di deposito verso mag nuovo (SE attivo) + IF (@magFrom <> '---') + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOV', Particolare, UDC, CAST(IdxPosizione AS NVARCHAR(50)), -@qta + FROM deleted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + -- inserisco un movimento di prelievo verso mag vecchio (SE attivo) + IF (@magTo <> '---') + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOV', Particolare, UDC, CAST(IdxPosizione AS NVARCHAR(50)), @qta + FROM inserted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + END + +END +go + +commit +go + + +create index i_update on As400.t_CQNOC98L(NumDocRNC,TipoInterv,CodArticolo,MatrPezzo) +go + +set xact_abort on +go + +begin transaction +go + +create index i_update on As400.t_MOMA200F(NumSessione,NumMovimento) +go + +create index i_update on As400.t_MWMV200F(NomeUtente,CodCausale,CodParticolare,CodMagazzino,QtaMovimento,DataMovimento) +go + +create index i_update on As400.t_PACKL00F(CodStabilimento,ProgUDC,CodParticolare,CodContenitore,MatrContenitore) +go + +alter table As400.t_XOGIX00F add + XRPQLN numeric(6,0) not null constraint DFX_03434E4C default(0), + XRPQLD numeric(8,0) not null constraint DFX_03452060 default(0), + XNRETI char(10) not null constraint DFX_03434DA4 default(''), + XCDFOR char(6) not null constraint DFX_03463944 default(''), + XCDTER char(6) not null constraint DFX_03460E6C default(''), + XCDPAR char(15) not null constraint DFX_0345A2BC default(''), + XDTPRO numeric(8,0) not null constraint DFX_0345CC28 default(0), + XTRPRO char(5) not null constraint DFX_03434DDC default(''), + XQTPRO numeric(5,0) not null constraint DFX_034583E0 default(0), + XDESMT char(3) not null constraint DFX_037522B8 default(''), + XMATSC char(1) not null constraint DFX_03453C08 default(''), + XBENQL char(1) not null constraint DFX_03E1D3BC default('') +go + +alter table As400.t_XOGIX00F drop + column nRapQual, + column DataRapQual, + column ProgUDC, + column CodFor, + column DestTerz, + column CodLega, + column DataPrelFus, + column TurnoPrelFus, + column Qta, + column DestLega, + column LegaScaric, + column BenesQual +go + +create index i_update on As400.t_XOGIX00F(XRPQLN,XRPQLD,XNRETI) +go + +alter table As400.t_XOGIX00F drop + constraint DFX_03E1D3BC, + constraint DFX_03453C08, + constraint DFX_037522B8, + constraint DFX_034583E0, + constraint DFX_03434DDC, + constraint DFX_0345CC28, + constraint DFX_0345A2BC, + constraint DFX_03460E6C, + constraint DFX_03463944, + constraint DFX_03434DA4, + constraint DFX_03452060, + constraint DFX_03434E4C +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_accodaConsumoUdcMP +* +* Accoda alla tab Batch il consumo di un UDC +* +* Steamware, S.E.L. +* mod: 2010.10.10 +* +****************************************/ +create PROCEDURE stp_accodaConsumoUdcMP +( + @UDC NVARCHAR(50), + @DataPrelFus DATETIME, + @TurnoPrelFus CHAR(5), + @DestLega CHAR(3), + @DestTerz CHAR(3) + +) +AS + +BEGIN TRAN + + -- registro movimento da riconciliare + INSERT INTO AS400_BatchConsumoMP(ProgUDC, UDC, DataPrelFus, TurnoPrelFus, DestLega, DestTerz) + SELECT ProgUdc, UDC, dbo.dateToAsFormat(@DataPrelFus), @TurnoPrelFus, @DestLega, @DestTerz FROM RilPro.RapQual WHERE UDC = @UDC + + -- aggiorno con data e turno di prelievo su tab RilPro (locale) + UPDATE RilPro.RapQual + SET DataPrelFus = dbo.dateToAsFormat(@DataPrelFus), TurnoPrelFus = @TurnoPrelFus + WHERE UDC = @UDC + +COMMIT TRAN + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_rappQualConsumabili +* +* Ottiene l'elenco dei record di rapp qualità (e quindi degli UDC) di AS non ancora consumati per range di data di approvazione +* +* Steamware, S.E.L. +* mod: 2010.10.05 +* +****************************************/ +alter PROCEDURE stp_rappQualConsumabili +( + @dataFrom DATETIME, + @dataTo DATETIME +) + +AS + -- restituisce le righe richieste + SELECT * + FROM RilPro.RapQual + WHERE ((DataPrelFus IS NULL) OR (DataPrelFus = 0)) AND -- condizione sul NON aver fatto ancora il prelievo + ((DataRapQual > dbo.dateToAsFormat(@dataFrom)) AND (DataRapQual < dbo.dateToAsFormat(@dataTo))) -- cond data RQ + AND (ISNULL(UDC,'') <>'') -- non nullo UDC, quindi stampati... + +RETURN +go + +commit +go + + + + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(276, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00280.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00280.sql new file mode 100644 index 00000000..52f9833a --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00280.sql @@ -0,0 +1,253 @@ +create index i_UDC on AS400_BatchConsumoMP(UDC) +go + + +create index i_UDC on RilPro.RapQual(UDC) +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_consumaMP +* +* Salva il movimento di consumo dell'UDC di MP indicato +* +* Steamware, S.E.L. +* mod: 2010.10.12 +* +****************************************/ +alter PROCEDURE BatchQueue.stp_consumaMP +( + @XRPQLN INT, --è il num rap qualità + @XNRETI NVARCHAR(10), -- è il numUdc prog + @XDTPRO INT, -- data 8 cifre aaaammgg + @XTRPRO NVARCHAR(5), -- turno + @XDESMT NVARCHAR(3), -- destinatario int/terzista + @XCDTER NVARCHAR(6) -- cod terzista +) +AS + -- BOZZA DA VERIFICARE E COMPLETARE A CURA MAZZUCCONI!!! + + DECLARE @SQL AS NVARCHAR(1000) + + -- Faccio chiamata su AS400 + + SET @SQL = N' OPENQUERY( P65220DC, ''UPDATE MAZZT_DTV3.XOGIX00F' + SET @SQL = @SQL + 'SET XDTPRO = ' + @XDTPRO + ', XTRPRO = ' + @XTRPRO + SET @SQL = @SQL + ', XDESMT = ''' + @XDESMT +''', XMATSC=''S'' , XCDTER = ''' + @XCDTER + ''' ' + SET @SQL = @SQL + 'WHERE XRPQLN =' + @XRPQLN + ' AND XNRETI = ' + @XNRETI + ''' )' + + EXEC sp_executesql @SQL + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_processaCodaConsumoMP +* +* Processa la coda dei consumo di UDC di MP e chiaam procedura x salvataggio dato su AS400 +* +* Steamware, S.E.L. +* mod: 2010.10.12 +* +****************************************/ +create PROCEDURE BatchQueue.stp_processaCodaConsumoMP +AS + -- BOZZA DA VERIFICARE E COMPLETARE A CURA MAZZUCCONI!!! + + -- faccio una query con un cursore x processare tutte le righe da inviare ad AS400.. + DECLARE @UDC NVARCHAR(50) + DECLARE @XRPQLN INT + DECLARE @XNRETI NVARCHAR(10) + DECLARE @XDTPRO INT + DECLARE @XTRPRO NVARCHAR(5) + DECLARE @XDESMT NVARCHAR(3) + DECLARE @XCDTER NVARCHAR(6) + + DECLARE @SqlCode NVARCHAR(1000) + + DECLARE UdcMpList CURSOR FOR + SELECT UDC FROM AS400_BatchConsumoMP WHERE DataInvioAs IS NULL + OPEN UdcMpList + FETCH NEXT FROM UdcMpList + INTO @UDC + WHILE @@FETCH_STATUS = 0 + BEGIN + -- controllo ci sia la riga + IF (SELECT COUNT(UDC) FROM AS400_BatchConsumoMP WHERE UDC=@UDC) > 0 + BEGIN + -- carico valori che mi servono + SELECT @XRPQLN=rq.nRapQual, @XNRETI=rq.ProgUDC, @XDTPRO=bcu.DataPrelFus, @XTRPRO=bcu.TurnoPrelFus, + @XDESMT=bcu.DestLega, @XCDTER=bcu.DestTerz + FROM AS400_BatchConsumoMP as bcu INNER JOIN RilPro.RapQual as rq ON bcu.UDC = rq.UDC + WHERE bcu.UDC=@UDC + -- compongo testo x exec + SET @SqlCode = N'EXEC BatchQueue.stp_consumaMP ' + CAST(@XRPQLN AS NVARCHAR(50)) + ' ' + @XNRETI + ' ' + CAST(@XDTPRO AS NVARCHAR(8)) + ' ' + LTRIM(RTRIM(@XTRPRO)) + ' ' + LTRIM(RTRIM(@XDESMT)) + ' ' + LTRIM(RTRIM(@XCDTER)) + -- lo mostro + print '%' + LTRIM(RTRIM(@SqlCode)) + '%' + + -- chiamo la stored ed eseguo invio + --EXEC sp_executesql @SqlCode -- decommentare se va bene... + FETCH NEXT FROM UdcMpList INTO @UDC + END + END + CLOSE UdcMpList + DEALLOCATE UdcMpList + + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_processaCodaConsumoMP +* +* Processa la coda dei consumo di UDC di MP e chiaam procedura x salvataggio dato su AS400 +* +* Steamware, S.E.L. +* mod: 2010.10.12 +* +****************************************/ +create PROCEDURE BatchQueue.stp_processaCodaConsumoMP +AS + -- BOZZA DA VERIFICARE E COMPLETARE A CURA MAZZUCCONI!!! + + -- faccio una query con un cursore x processare tutte le righe da inviare ad AS400.. + DECLARE @UDC NVARCHAR(50) + DECLARE @XRPQLN INT + DECLARE @XNRETI NVARCHAR(10) + DECLARE @XDTPRO INT + DECLARE @XTRPRO NVARCHAR(5) + DECLARE @XDESMT NVARCHAR(3) + DECLARE @XCDTER NVARCHAR(6) + + DECLARE @SqlCode NVARCHAR(1000) + + DECLARE UdcMpList CURSOR FOR + SELECT UDC FROM AS400_BatchConsumoMP WHERE DataInvioAs IS NULL + OPEN UdcMpList + FETCH NEXT FROM UdcMpList + INTO @UDC + WHILE @@FETCH_STATUS = 0 + BEGIN + -- controllo ci sia la riga + IF (SELECT COUNT(UDC) FROM AS400_BatchConsumoMP WHERE UDC=@UDC) > 0 + BEGIN + -- carico valori che mi servono + SELECT @XRPQLN=rq.nRapQual, @XNRETI=rq.ProgUDC, @XDTPRO=bcu.DataPrelFus, @XTRPRO=bcu.TurnoPrelFus, + @XDESMT=bcu.DestLega, @XCDTER=bcu.DestTerz + FROM AS400_BatchConsumoMP as bcu INNER JOIN RilPro.RapQual as rq ON bcu.UDC = rq.UDC + WHERE bcu.UDC=@UDC + -- compongo testo x exec + SET @SqlCode = N'EXEC BatchQueue.stp_consumaMP ' + CAST(@XRPQLN AS NVARCHAR(50)) + ' ' + @XNRETI + ' ' + CAST(@XDTPRO AS NVARCHAR(8)) + ' ' + LTRIM(RTRIM(@XTRPRO)) + ' ' + LTRIM(RTRIM(@XDESMT)) + ' ' + LTRIM(RTRIM(@XCDTER)) + -- lo mostro + print '%' + LTRIM(RTRIM(@SqlCode)) + '%' + + -- chiamo la stored ed eseguo invio + --EXEC sp_executesql @SqlCode -- decommentare se va bene... + FETCH NEXT FROM UdcMpList INTO @UDC + END + END + CLOSE UdcMpList + DEALLOCATE UdcMpList + + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_accodaConsumoUdcMP +* +* Accoda alla tab Batch il consumo di un UDC +* +* Steamware, S.E.L. +* mod: 2010.10.10 +* +****************************************/ +alter PROCEDURE stp_accodaConsumoUdcMP +( + @UDC NVARCHAR(50), + @DataPrelFus DATETIME, + @TurnoPrelFus CHAR(5), + @DestLega CHAR(3), + @DestTerz CHAR(6) +) +AS + +BEGIN TRAN + + -- registro movimento da riconciliare + INSERT INTO AS400_BatchConsumoMP(ProgUDC, UDC, DataPrelFus, TurnoPrelFus, DestLega, DestTerz) + SELECT ProgUdc, UDC, dbo.dateToAsFormat(@DataPrelFus), @TurnoPrelFus, @DestLega, @DestTerz FROM RilPro.RapQual WHERE UDC = @UDC + + -- aggiorno con data e turno di prelievo su tab RilPro (locale) + UPDATE RilPro.RapQual + SET DataPrelFus = dbo.dateToAsFormat(@DataPrelFus), TurnoPrelFus = @TurnoPrelFus + WHERE UDC = @UDC + +COMMIT TRAN + +RETURN +go + +commit +go + + + + + + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(280, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00285.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00285.sql new file mode 100644 index 00000000..624c7748 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00285.sql @@ -0,0 +1,827 @@ +set xact_abort on +go + +begin transaction +go + +create index i_dataFus on ElencoCartellini(DataFus) +go + +create index i_idxPosizione on ElencoCartellini(IdxPosizione) +go + +commit +go + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_ArtiInProd_ByImpData +* +* ottiene l'elenco dei particolari in lavorazione in una certa data/ora (già trasformato data+turno in dataora) su un impianto +* --> con dettaglio su articoli (da anagrafica) +* +* Steamware, S.E.L. +* mod: 2010.04.29 +* +****************************************/ +alter PROCEDURE stp_ArtiInProd_ByImpData +( + @CodImpianto VARCHAR(50), + @DataRif DATETIME +) +AS + +-- iniziamo definendo le varie viste accessorie +WITH cteUltStampo AS + (SELECT CodStampo, InizioValidita, ProgFigure, FineValidita, NumCommessa, NumFigure, CodCliente, CodArticolo, Particolare + FROM RilPro.StampoArticolo AS A + WHERE (@DataRif >= InizioValidita AND @DataRif <= ISNULL(FineValidita, DATEADD(year, 2, GETDATE()))) ), + cteEspAttivi AS + (SELECT s.CodStampo, s.Esponente, s.EspAttivo, s.DataInserim, s.DataValidita + FROM RilPro.StampoEsponente AS s INNER JOIN + (SELECT CodStampo, MAX(DataValidita) AS DataValidita + FROM RilPro.StampoEsponente + WHERE (DataValidita <= @DataRif) AND (EspAttivo = 'S') + GROUP BY CodStampo) AS s2 ON s.CodStampo = s2.CodStampo AND s.DataValidita = s2.DataValidita), + cteLineeAttive AS + (SELECT CodImpianto, CodStampo, NumStampate, CONVERT(DATETIME, DataInizio) AS DataInizio, DataFine, TurnoInizio, TurnoFine + FROM RilPro.LineaStampi + WHERE (@DataRif BETWEEN DataInizio AND ISNULL(DataFine, DATEADD(year, 2, GETDATE()))) + AND CodImpianto = @CodImpianto) + +-- faccio la select principale +SELECT l.CodImpianto, l.CodStampo, l.NumStampate, l.DataInizio, l.TurnoInizio, g.InizioValidita, g.FineValidita, g.NumFigure, + dbo.f_padLeft(CAST(g.CodCliente AS varchar(50)), 5, '0') AS CodCliente, ISNULL(cl.RagSociale,'-') AS RagSociale, CAST(g.CodArticolo AS varchar(50)) AS CodArticolo, + g.Particolare, pa.DescParticolare, pa.DisegnoGrezzo, pa.CodFamiglia, fa.DescFamiglia, fi.Figura, es.Esponente + FROM cteLineeAttive AS l INNER JOIN cteUltStampo AS g ON l.CodStampo = g.CodStampo LEFT OUTER JOIN + RilPro.StampoFigure AS fi ON l.CodStampo = fi.CodStampo LEFT OUTER JOIN + cteEspAttivi AS es ON g.CodStampo = es.CodStampo LEFT OUTER JOIN + RilPro.AnagParticolari AS pa ON g.Particolare = pa.Particolare LEFT OUTER JOIN + RilPro.AnagFamiglie AS fa ON pa.CodFamiglia = fa.CodFamiglia LEFT OUTER JOIN + RilPro.AnagClienti AS cl ON g.CodCliente = cl.CodCliente + ORDER BY l.CodImpianto + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_UDC_delibera +* +* fa la delibera dell'UDC andando a processare la state machien e quindi eventualmente cambiando la sua posizione +* +* Steamware, S.E.L. +* mod: 2010.09.13 +* +************************************/ +alter PROCEDURE stp_UDC_delibera +( + @CodTipoDelibera NVARCHAR(50), + @UDC NVARCHAR(50), + @CodSoggetto NVARCHAR(17), + @CodCS VARCHAR(2) +) + +AS + +BEGIN TRAN + DECLARE @IdxPosizioneTo AS INT + DECLARE @IdxPosizioneFrom AS INT + DECLARE @IdxPosizionePre AS NVARCHAR(50) + DECLARE @IdxCellaPre AS INT + DECLARE @IdxCellaTo AS INT + + -- ricavo cella ATTUALE + SET @IdxCellaPre = (SELECT IdxCella FROM PosizioneUdcCorrente WHERE UDC = @UDC) + + -- ricavo posizione ATTUALE + SET @IdxPosizionePre = (SELECT TOP 1 b.CodMag FROM Celle c INNER JOIN Blocchi b ON c.IdxBlocco=b.IdxBlocco WHERE c.IdxCella = @IdxCellaPre) + + + -- registro delibera + INSERT INTO DELIBERE + VALUES (@CodTipoDelibera, @UDC, GETDATE(), @CodSoggetto) + + -- ricavo nuova posizione + SET @IdxPosizioneTo = (SELECT tt.IdxPosizioneTo + FROM TabTranPosizEventi tt INNER JOIN AnagTipoDelibere atd ON tt.CodEvento = atd.CodEvento + WHERE (atd.CodTipoDelibera = @CodTipoDelibera)) + + -- ricavo posizione TEORICA VECCHIA + SET @IdxPosizioneFrom = (SELECT tt.IdxPosizione + FROM TabTranPosizEventi tt INNER JOIN AnagTipoDelibere atd ON tt.CodEvento = atd.CodEvento + WHERE (atd.CodTipoDelibera = @CodTipoDelibera)) + + -- calcolo la prima cella della nuova posizione... + SET @IdxCellaTo = ( + SELECT TOP 1 IdxCella FROM Celle + WHERE IdxBlocco = ( + SELECT IdxBlocco FROM Blocchi + WHERE CodMag=CAST(@IdxPosizioneTo AS NVARCHAR(50))) + ) + + -- faccio update posizione + UPDATE ElencoCartellini + SET IdxPosizione = @IdxPosizioneTo + WHERE UDC = @UDC + + -- controllo posizioni act e from teorica: SE e SOLO SE corrispondono faccio spostamento... + IF(CAST(@IdxPosizioneFrom AS NVARCHAR(50)) = @IdxPosizionePre) + BEGIN + -- ora cambio anche la posizione corrente dell'UDC (e tramite trigger storicizza...) + EXEC stp_spostaUdc @CodCS, @UDC, @IdxCellaTo + END + +COMMIT TRAN + + +RETURN +go + +/*************************************** +* STORED stp_UDC_getByFlussoDate +* +* elenco cartellini creati su una data bilancia in un periodo ti tempo indicato +* +* Steamware, S.E.L. +* mod: 2010.10.13 +* +****************************************/ +create PROCEDURE stp_UDC_getByFlussoDate +( + + @CodCS NVARCHAR(2), + @Flusso NVARCHAR(2), + @DataFrom DATETIME, + @DataTo DATETIME +) +AS + +SELECT * +FROM ElencoCartellini +WHERE (UDC LIKE 'U' + @CodCS + @Flusso + '%') + AND (DataFus >= @DataFrom) AND (DataFus <= @DataTo) +ORDER BY UDC DESC + +RETURN +go + +/*************************************** +* STORED stp_UDC_getLast_ByDataTurnoLineaParticolare +* +* elenco cartellini ULTIMI creati su una data bilancia dati data, turno, linea e particolare +* +* Steamware, S.E.L. +* mod: 2010.10.13 +* +****************************************/ +create PROCEDURE stp_UDC_getLast_ByDataTurnoLineaParticolare +( + @CodCS VARCHAR(2), + @Particolare VARCHAR(15), + @CodImpianto AS VARCHAR(50), + @DataFus DATETIME, + @TurnoFus INT +) +AS + +-- carico l'elenco dei dati "attivi" x il filtraggio richiesto +WITH cte_contAttivi AS( + SELECT CodCS, Particolare, Esponente, CodImpianto,CodStampo, Figura, DataFus, TurnoFus, MAX(NumCont) AS NumCont + FROM ElencoCartellini + GROUP BY CodCS, Particolare, Esponente, CodImpianto, CodStampo, Figura, DataFus, TurnoFus + HAVING (CodImpianto = @CodImpianto) AND (DataFus = @DataFus) AND (TurnoFus= @TurnoFus) AND (Particolare= @Particolare) AND CodCs = @CodCS +) + + -- traduco in tab estesa UDC + SELECT ec.* FROM ElencoCartellini ec INNER JOIN cte_contAttivi ca + ON ec.Particolare = ca.Particolare AND ec.Esponente=ca.Esponente AND ec.CodImpianto=ca.CodImpianto + AND ec.CodStampo=ca.CodStampo AND ec.Figura=ca.Figura AND ec.DataFus=ca.DataFus AND ec.TurnoFus=ca.TurnoFus + AND ec.NumCont=ca.NumCont AND ec.CodCs=ca.CodCs + +RETURN +go + +commit +go + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.TabTranPosizEventi + VALUES (N'MagPreFus', 84, 84) +go + +commit transaction +go + + + +drop table AS400_BatchMovimenti +go + + + + + + +set xact_abort on +go + +begin transaction +go + +create table AS400_BatchMovimenti( + IdxBatch int not null identity constraint PK_AS400_BatchMovimenti primary key, + DataIns datetime not null, + CodEvento nvarchar(10) not null, + Particolare nvarchar(15) not null, + UDC nvarchar(50) not null, + CodMagAS nvarchar(50) not null, + Quantita decimal(10,2) not null, + DataBatch datetime, + DataVerifica datetime +) +go + +alter table AS400_BatchMovimenti add + constraint FK_AS400_BatchMovimenti_AS400_MagCont foreign key(CodMagAS) references AS400_MagCont(CodMagAS) on update cascade, + constraint FK_AS400_BatchMovimenti_AnagTipoEvento foreign key(CodEvento) references AnagTipoEvento(CodEvento) on update cascade +go + +exec sp_addextendedproperty 'MS_Description', 'dataora inserimento in coda caricamento', 'SCHEMA', 'dbo', 'TABLE', 'AS400_BatchMovimenti', 'COLUMN', 'DataIns' +go + +exec sp_addextendedproperty 'MS_Description', 'NON MODIFICARE: nel codice si usano questi campi x chiamate...', 'SCHEMA', 'dbo', 'TABLE', 'AS400_BatchMovimenti', 'COLUMN', 'CodEvento' +go + +exec sp_addextendedproperty 'MS_Description', 'dataora di caricamento batch verso AS', 'SCHEMA', 'dbo', 'TABLE', 'AS400_BatchMovimenti', 'COLUMN', 'DataBatch' +go + +exec sp_addextendedproperty 'MS_Description', N'dataora in cui è stato verificato il caricamento su AS', 'SCHEMA', 'dbo', 'TABLE', 'AS400_BatchMovimenti', 'COLUMN', 'DataVerifica' +go + +commit +go + + + + + + +drop table RigheListePrelievo_AS +go + + + +create table RigheListePrelievo_AS( + IdxRiga int not null identity constraint PK_RigheListePrelievo_AS primary key, + CodLista nvarchar(12) not null, + UDC nvarchar(50) not null, + Qta decimal(10,2) not null, + Proposto bit, + Prelevato bit +) +go + + +drop table ElencoListePrelievo_AS +go + + +set xact_abort on +go + +begin transaction +go + +create table ElencoListePrelievo_AS( + CodLista nvarchar(12) not null constraint PK_ElencoListePrelievo_AS primary key, + CodTipoLista nvarchar(10) not null, + CodCS nchar(2) not null, + DataCreaz datetime not null, + CodCliente nvarchar(6), + RagSociale nvarchar(35), + CodSoggetto nchar(17) not null, + Particolare nvarchar(15) not null, + DescParticolare nvarchar(30), + DisegnoGrezzo nvarchar(30), + Esponente nvarchar(6), + Figura nvarchar(4), + CodImballo nvarchar(15), + QtaTot decimal(10,2) not null, + CodStatoLista int not null constraint DF_ElencoListePrelievo_AS_CodStatoLista default (1), + Destinatario nvarchar(50), + DataBatch datetime, + DataVerifica datetime +) +go + +exec sp_addextendedproperty 'MS_Description', 'dataora di caricamento batch verso AS', 'SCHEMA', 'dbo', 'TABLE', 'ElencoListePrelievo_AS', 'COLUMN', 'DataBatch' +go + +exec sp_addextendedproperty 'MS_Description', N'dataora in cui è stato verificato il caricamento su AS', 'SCHEMA', 'dbo', 'TABLE', 'ElencoListePrelievo_AS', 'COLUMN', 'DataVerifica' +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +create VIEW v_datiPackingList +AS +SELECT dbo.RigheListePrelievo_AS.IdxRiga, dbo.ElencoCartellini.UDC, dbo.ElencoListePrelievo_AS.Particolare, dbo.ElencoCartellini.CodImballo, + CAST(RIGHT(dbo.RigheListePrelievo_AS.UDC, 6) AS INT) AS matrUdc, CASE WHEN (dbo.ElencoListePrelievo_AS.CodTipoLista = '03-TerWip') + THEN 'FO' ELSE 'CL' END AS tipo, dbo.ElencoListePrelievo_AS.Destinatario, dbo.ElencoCartellini.Qta, + dbo.ElencoCartellini.PesoTot - dbo.ElencoCartellini.Tara AS PesoNetto, dbo.ElencoCartellini.PesoTot, 'B' AS Stato, GETDATE() AS data, + dbo.ElencoListePrelievo_AS.DataBatch +FROM dbo.ElencoListePrelievo_AS INNER JOIN + dbo.RigheListePrelievo_AS ON dbo.ElencoListePrelievo_AS.CodLista = dbo.RigheListePrelievo_AS.CodLista INNER JOIN + dbo.ElencoCartellini ON dbo.RigheListePrelievo_AS.UDC = dbo.ElencoCartellini.UDC +WHERE (dbo.ElencoListePrelievo_AS.DataBatch IS NULL) +go + +exec sp_addextendedproperty 'MS_DiagramPane1', '[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00] +Begin DesignProperties = + Begin PaneConfigurations = + Begin PaneConfiguration = 0 + NumPanes = 4 + Configuration = "(H (1[40] 4[20] 2[20] 3) )" + End + Begin PaneConfiguration = 1 + NumPanes = 3 + Configuration = "(H (1 [50] 4 [25] 3))" + End + Begin PaneConfiguration = 2 + NumPanes = 3 + Configuration = "(H (1 [50] 2 [25] 3))" + End + Begin PaneConfiguration = 3 + NumPanes = 3 + Configuration = "(H (4 [30] 2 [40] 3))" + End + Begin PaneConfiguration = 4 + NumPanes = 2 + Configuration = "(H (1 [56] 3))" + End + Begin PaneConfiguration = 5 + NumPanes = 2 + Configuration = "(H (2 [66] 3))" + End + Begin PaneConfiguration = 6 + NumPanes = 2 + Configuration = "(H (4 [50] 3))" + End + Begin PaneConfiguration = 7 + NumPanes = 1 + Configuration = "(V (3))" + End + Begin PaneConfiguration = 8 + NumPanes = 3 + Configuration = "(H (1[56] 4[18] 2) )" + End + Begin PaneConfiguration = 9 + NumPanes = 2 + Configuration = "(H (1 [75] 4))" + End + Begin PaneConfiguration = 10 + NumPanes = 2 + Configuration = "(H (1[66] 2) )" + End + Begin PaneConfiguration = 11 + NumPanes = 2 + Configuration = "(H (4 [60] 2))" + End + Begin PaneConfiguration = 12 + NumPanes = 1 + Configuration = "(H (1) )" + End + Begin PaneConfiguration = 13 + NumPanes = 1 + Configuration = "(V (4))" + End + Begin PaneConfiguration = 14 + NumPanes = 1 + Configuration = "(V (2))" + End + ActivePaneConfig = 0 + End + Begin DiagramPane = + Begin Origin = + Top = 0 + Left = 0 + End + Begin Tables = + Begin Table = "ElencoCartellini" + Begin Extent = + Top = 14 + Left = 658 + Bottom = 376 + Right = 828 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "ElencoListePrelievo_AS" + Begin Extent = + Top = 6 + Left = 38 + Bottom = 367 + Right = 208 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "RigheListePrelievo_AS" + Begin Extent = + Top = 5 + Left = 353 + Bottom = 200 + Right = 523 + End + DisplayFlags = 280 + TopColumn = 0 + End + End + End + Begin SQLPane = + End + Begin DataPane = + Begin ParameterDefaults = "" + End + Begin ColumnWidths = 14 + Width = 284 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + End + End + Begin CriteriaPane = + Begin ColumnWidths = 11 + Column = 1440 + Alias = 900 + Table = 1170 + Output = 720 + Append = 1400 + NewValue = 1170 + SortType = 1350 + SortOrder = 1410 + GroupBy = 1350 + Filter = 1350 + Or = 1350 + Or = 1350 + Or = 1350 + End + End +End +', 'SCHEMA', 'dbo', 'VIEW', 'v_datiPackingList' +go + +exec sp_addextendedproperty 'MS_DiagramPaneCount', 1, 'SCHEMA', 'dbo', 'VIEW', 'v_datiPackingList' +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_consumaMP +* +* Salva il movimento di consumo dell'UDC di MP indicato +* +* Steamware, S.E.L. +* mod: 2010.10.12 +* +****************************************/ +alter PROCEDURE BatchQueue.stp_consumaMP +( + @XRPQLN INT, --è il num rap qualità + @XNRETI NVARCHAR(10), -- è il numUdc prog + @XDTPRO INT, -- data 8 cifre aaaammgg + @XTRPRO NVARCHAR(5), -- turno + @XDESMT NVARCHAR(3), -- destinatario int/terzista + @XCDTER NVARCHAR(6) -- cod terzista +) +AS + -- BOZZA DA VERIFICARE E COMPLETARE A CURA MAZZUCCONI!!! + + DECLARE @SQL AS NVARCHAR(1000) + + -- Faccio chiamata su AS400 + + SET @SQL = N' OPENQUERY( P65220DC, ''UPDATE MAZZT_DTV3.XOGIX00F' + SET @SQL = @SQL + 'SET XDTPRO = ' + CAST(@XDTPRO AS NVARCHAR(8)) + ', XTRPRO = ' + @XTRPRO + SET @SQL = @SQL + ', XDESMT = ''' + @XDESMT +''', XMATSC=''S'' , XCDTER = ''' + @XCDTER + ''' ' + SET @SQL = @SQL + 'WHERE XRPQLN =' + CAST(@XRPQLN AS NVARCHAR(20)) + ' AND XNRETI = ' + @XNRETI + ''' )' + + EXEC sp_executesql @SQL + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*stp_processaCodaMovimMag +* STORED stp_processaCodaConsumoMP +* +* Processa la coda dei movimenti di magazzino e chiama procedura x salvataggio dato su AS400 +* +* Steamware, S.E.L. +* mod: 2010.10.15 +* +****************************************/ +create PROCEDURE BatchQueue.stp_processaCodaMovimMag +AS + -- BOZZA DA VERIFICARE E COMPLETARE A CURA MAZZUCCONI!!! + + -- campi x cursore e valorizzazione riga a riga + DECLARE @IdxRiga INT + DECLARE @CodStab CHAR(2) + DECLARE @UDC NVARCHAR(15) + DECLARE @Particolare NVARCHAR(15) + DECLARE @CodImb NVARCHAR(15) + DECLARE @Matr INT + DECLARE @Tipo NVARCHAR(2) + DECLARE @Dest NVARCHAR(10) + DECLARE @Qta INT + DECLARE @PesoNet NUMERIC(7,3) + DECLARE @PesoLor NUMERIC(7,3) + DECLARE @Stato CHAR(1) + DECLARE @Data NVARCHAR(8) + -- variabile x composizioen query + DECLARE @SqlCode NVARCHAR(1000) + -- faccio una query con un cursore x processare tutte le righe da inviare ad AS400.. + DECLARE RigaPackList CURSOR FOR + SELECT IdxRiga FROM v_datiPackingList + + -- setto il codice stabilimento da inviare ad AS... VERIFICARE!!! + SET @CodStab = '05' + + -- inizio cursore! + OPEN RigaPackList + FETCH NEXT FROM RigaPackList + INTO @IdxRiga + WHILE @@FETCH_STATUS = 0 + BEGIN + -- controllo ci sia la riga + IF (SELECT COUNT(IdxRiga) FROM v_datiPackingList WHERE IdxRiga = @IdxRiga) > 0 + BEGIN + -- carico valori che mi servono + SELECT @Particolare=pl.Particolare, @UDC=UDC, @CodImb=pl.CodImballo, @Matr = pl.matrUdc, @Tipo=pl.tipo, @Dest=pl.Destinatario, + @Qta=ABS(pl.Qta), @PesoNet=pl.PesoNetto, @PesoLor=pl.PesoTot, @Stato=pl.Stato, @Data=dbo.dateToAsFormat(pl.data) + FROM v_datiPackingList pl + WHERE IdxRiga = @IdxRiga + + -- compongo testo x exec + SET @SqlCode = N'EXEC BatchQueue.stp_registraPackList ' + @CodStab + ' ' + @UDC + ' ' + @Particolare + ' ' + @CodImb + ' ' + CAST(@Matr AS NVARCHAR(8)) + ' ' + @Tipo + ' ' + @Dest + ' ' + CAST(@Qta AS NVARCHAR(8)) + ' ' + CAST(@PesoNet AS NVARCHAR(8)) + ' ' + CAST(@PesoLor AS NVARCHAR(8)) + ' ' + @Stato + ' ' + @Data + -- lo mostro + print '%' + LTRIM(RTRIM(@SqlCode)) + '%' + + -- !!! TESTARE !!! + /* + -- chiamo la stored ed eseguo invio + EXEC sp_executesql @SqlCode -- decommentare se va bene... + + -- registro la data del movimento BATCH + UPDATE AS400_BatchMovimenti SET DataBatch = GETDATE() WHERE IdxRiga = @IdxRiga + */ + + FETCH NEXT FROM RigaPackList INTO @IdxRiga + END + END + CLOSE RigaPackList + DEALLOCATE RigaPackList + + +RETURN +go + +/*************************************** +* STORED stp_registraMovMag +* +* Salva il movimento di magazzino indicato +* +* Steamware, S.E.L. +* mod: 2010.10.15 +* +****************************************/ +create PROCEDURE BatchQueue.stp_registraMovMag +( + @NOMUS NVARCHAR(50), -- è il nome utente + @CDCAU NVARCHAR(2), -- è la causale del movimento + @CDPAR NVARCHAR(15), -- codice particolare + @CDMAG NVARCHAR(2), -- codice magazzino + @QTMOV INT, -- quantità movimento + @DAMOV NVARCHAR(8), -- data 8 cifre aaaammgg + @RIFFO NVARCHAR(8) -- cod UDC compresso +) +AS + -- BOZZA DA VERIFICARE E COMPLETARE A CURA MAZZUCCONI!!! + + DECLARE @SQL AS NVARCHAR(1000) + + -- Faccio chiamata su AS400 + SET @SQL = N' OPENQUERY( P65220DC, ''INSERT INTO MAZZT_DTV3.MWMV200F VALUES ' + SET @SQL = @SQL + @NOMUS + ', ' + @CDCAU + ', ' + @CDPAR + ', ' + @CDMAG + ', ' + SET @SQL = @SQL + CAST(@QTMOV AS NVARCHAR(8)) + ', ' + @DAMOV + ', ' + @RIFFO + ''' )' + + EXEC sp_executesql @SQL + +RETURN +go + +/*************************************** +* STORED stp_registraPackList +* +* Salva i dati di packing list indicati +* +* Steamware, S.E.L. +* mod: 2010.10.15 +* +****************************************/ +create PROCEDURE BatchQueue.stp_registraPackList +( + @PLREPA NVARCHAR(2), -- è il codice reparto/stabilimento (05 pressofusione) + @PLCART NVARCHAR(15), -- UDC + @PLARTI NVARCHAR(15), -- cod articolo + @PLCONT NVARCHAR(15), -- cod contenitore + @PLMATR INT, -- matricola contenitore (solo cifre finali INT) + @PLTPAN CHAR(2), -- tipo anagrafico CLiente / FOrnitore-terzista + @PLCDAN NVARCHAR(6), -- cod terzista / cliente + @PLQTA INT, -- quantità + @PLPNET NUMERIC(7, 3), -- peso netto + @PLPLOR NUMERIC(7, 3), -- peso lordo + @PLSTAT CHAR(1), -- stato "P" predisposto per packing list, "B" bolla stampata + @PLDTEN INT -- data entrata merce, data di carico dell'UDC 8 cifre aaaammgg +) +AS + -- BOZZA DA VERIFICARE E COMPLETARE A CURA MAZZUCCONI!!! + + DECLARE @SQL AS NVARCHAR(1000) + + -- Faccio chiamata su AS400 + SET @SQL = N' OPENQUERY( P65220DC, ''INSERT INTO MAZZT_DTV3.PACKL00F VALUES ' + SET @SQL = @SQL + @PLREPA + ', ' + @PLCART + ', ' + @PLARTI + ', ' + @PLCONT + ', ' + SET @SQL = @SQL + CAST(@PLMATR AS NVARCHAR(5)) + ', ' + @PLTPAN + ', ' + @PLCDAN + ', ' + CAST(@PLQTA AS NVARCHAR(10)) + ', ' + SET @SQL = @SQL + CAST(@PLPNET AS NVARCHAR(10)) + ', ' + CAST(@PLPLOR AS NVARCHAR(10)) + ', ' + @PLSTAT + ', ' + SET @SQL = @SQL + CAST(@PLDTEN AS NVARCHAR(8)) + ''' )' + + EXEC sp_executesql @SQL + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_ParticolariOverview +* +* restituisce solo la riga con il num max di celle DI UN DATO magazzino +* +* Steamware, S.E.L. +* mod: 2010.06.02 +* +****************************************/ +alter PROCEDURE stp_magazzinoOverviewByMag_maxCelle +( + @CodCS VARCHAR(2), + @CodMag VARCHAR(50) +) +AS + + +WITH cte_celle AS( + SELECT b.CodBlocco, c.IdxTipoCella, COUNT(c.IdxCella) * t.Capienza AS numCelle + FROM Celle AS c INNER JOIN + Blocchi AS b ON c.IdxBlocco = b.IdxBlocco INNER JOIN + TipoCella AS t ON c.IdxTipoCella = t.IdxTipoCella + WHERE (b.CodCS = @CodCS) AND (b.CodMag = @CodMag) + GROUP BY b.CodBlocco, c.IdxTipoCella, t.Capienza +) + + + SELECT TOP (1) AnagMag.CodCS, AnagMag.CodMag, AnagMag.DescMag, b.IdxBlocco, b.CodBlocco, + ISNULL(c.numCelle,ISNULL(b.NumX * b.NumY * b.NumZ,1)) AS TotCelle, + 0 AS CelleAttive, 0 AS CelleOccupate, 0 AS CelleLibere, GETDATE() AS Oldest, GETDATE() AS Newest + FROM AnagMag INNER JOIN Blocchi b ON AnagMag.CodMag = b.CodMag AND AnagMag.CodCS = b.CodCS INNER JOIN cte_celle c ON c.CodBlocco = b.CodBlocco + WHERE (AnagMag.CodCS = @CodCS) AND AnagMag.CodMag = @CodMag + ORDER BY TotCelle DESC +RETURN +go + +/*************************************** +* STORED stp_ParticolariOverview +* +* restituisce solo la riga con il num max di celle +* +* Steamware, S.E.L. +* mod: 2010.06.02 +* +****************************************/ +alter PROCEDURE stp_magazzinoOverview_maxCelle +( + @CodCS VARCHAR(2) +) +AS + +WITH cte_celle AS( + SELECT b.CodBlocco, c.IdxTipoCella, COUNT(c.IdxCella) * t.Capienza AS numCelle + FROM Celle AS c INNER JOIN + Blocchi AS b ON c.IdxBlocco = b.IdxBlocco INNER JOIN + TipoCella AS t ON c.IdxTipoCella = t.IdxTipoCella + WHERE (b.CodCS = @CodCS) + GROUP BY b.CodBlocco, c.IdxTipoCella, t.Capienza +) + + + SELECT TOP (1) AnagMag.CodCS, AnagMag.CodMag, AnagMag.DescMag, b.IdxBlocco, b.CodBlocco, + ISNULL(c.numCelle,ISNULL(b.NumX * b.NumY * b.NumZ,1)) AS TotCelle, + 0 AS CelleAttive, 0 AS CelleOccupate, 0 AS CelleLibere, GETDATE() AS Oldest, GETDATE() AS Newest + FROM AnagMag INNER JOIN Blocchi b ON AnagMag.CodMag = b.CodMag AND AnagMag.CodCS = b.CodCS INNER JOIN cte_celle c ON c.CodBlocco = b.CodBlocco + WHERE (AnagMag.CodCS = @CodCS) + ORDER BY TotCelle DESC + +RETURN +go + +commit +go + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(285, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00286.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00286.sql new file mode 100644 index 00000000..de2770ec --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00286.sql @@ -0,0 +1,198 @@ +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +alter VIEW v_selUdcByPart +AS +SELECT UDC AS value, ISNULL(RTRIM(UDC), '-') + ' - ' + ISNULL(RTRIM(Particolare), '...') + ' (' + ISNULL(RTRIM(DescParticolare), '') + ') ' + ISNULL(RTRIM(DisegnoGrezzo), '-') + + ' pz. ' + ISNULL(CAST(Qta AS varchar), '0') AS label, Particolare AS conditio, IdxPosizione +FROM dbo.ElencoCartellini +WHERE (NOT (Particolare IS NULL)) AND (IdxPosizione >= 0) +go + +exec sp_updateextendedproperty 'MS_DiagramPane1', '[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00] +Begin DesignProperties = + Begin PaneConfigurations = + Begin PaneConfiguration = 0 + NumPanes = 4 + Configuration = "(H (1[40] 4[20] 2[20] 3) )" + End + Begin PaneConfiguration = 1 + NumPanes = 3 + Configuration = "(H (1 [50] 4 [25] 3))" + End + Begin PaneConfiguration = 2 + NumPanes = 3 + Configuration = "(H (1 [50] 2 [25] 3))" + End + Begin PaneConfiguration = 3 + NumPanes = 3 + Configuration = "(H (4 [30] 2 [40] 3))" + End + Begin PaneConfiguration = 4 + NumPanes = 2 + Configuration = "(H (1 [56] 3))" + End + Begin PaneConfiguration = 5 + NumPanes = 2 + Configuration = "(H (2 [66] 3))" + End + Begin PaneConfiguration = 6 + NumPanes = 2 + Configuration = "(H (4 [50] 3))" + End + Begin PaneConfiguration = 7 + NumPanes = 1 + Configuration = "(V (3))" + End + Begin PaneConfiguration = 8 + NumPanes = 3 + Configuration = "(H (1[56] 4[18] 2) )" + End + Begin PaneConfiguration = 9 + NumPanes = 2 + Configuration = "(H (1 [75] 4))" + End + Begin PaneConfiguration = 10 + NumPanes = 2 + Configuration = "(H (1[66] 2) )" + End + Begin PaneConfiguration = 11 + NumPanes = 2 + Configuration = "(H (4 [60] 2))" + End + Begin PaneConfiguration = 12 + NumPanes = 1 + Configuration = "(H (1) )" + End + Begin PaneConfiguration = 13 + NumPanes = 1 + Configuration = "(V (4))" + End + Begin PaneConfiguration = 14 + NumPanes = 1 + Configuration = "(V (2))" + End + ActivePaneConfig = 0 + End + Begin DiagramPane = + Begin Origin = + Top = 0 + Left = 0 + End + Begin Tables = + Begin Table = "ElencoCartellini" + Begin Extent = + Top = 6 + Left = 38 + Bottom = 319 + Right = 208 + End + DisplayFlags = 280 + TopColumn = 11 + End + End + End + Begin SQLPane = + End + Begin DataPane = + Begin ParameterDefaults = "" + End + Begin ColumnWidths = 9 + Width = 284 + Width = 1500 + Width = 8910 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + End + End + Begin CriteriaPane = + Begin ColumnWidths = 11 + Column = 1440 + Alias = 900 + Table = 1170 + Output = 720 + Append = 1400 + NewValue = 1170 + SortType = 1350 + SortOrder = 1410 + GroupBy = 1350 + Filter = 1350 + Or = 1350 + Or = 1350 + Or = 1350 + End + End +End +', 'SCHEMA', 'dbo', 'VIEW', 'v_selUdcByPart' +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_getUdcDetailFullCode +* +* ottiene l'elenco degli UDC con i dati significativi partendo da un codice UDC COMPLETO +* +* Steamware, S.E.L. +* mod: 2010.05.24 +* +****************************************/ +alter PROCEDURE stp_getUdcDetailFullCode +( + @UDC VARCHAR(50), + @CodCS VARCHAR(2) +) +AS + +SELECT ec.UDC, ISNULL(ec.RagSociale, N'nd') AS RagSociale, ISNULL(ec.Particolare, N'nd') AS Particolare, + ISNULL(ec.DescParticolare, N'nd') AS DescParticolare, ISNULL(ec.DisegnoGrezzo, N'nd') AS DisegnoGrezzo, + ISNULL(ec.Esponente, N'nd') AS Esponente, ISNULL(ec.DescImpianto, N'nd') AS DescImpianto, + ISNULL(ec.DataFus, N'') AS DataFus, ISNULL(ec.TurnoFus, 0) AS TurnoFus, ec.CodImballo, + ec.Qta, ISNULL(AnagStatiProdotto.DescStato, N'nd') AS DescStato, ec.ModDate, + CASE WHEN(ec.IdxPosizione < 0) THEN 'Consum' ELSE ISNULL(Blocchi.CodMag, N'nd') END AS CodMag, + ISNULL(Blocchi.CodBlocco, N'nd') AS CodBlocco, ISNULL(Celle.CodCella, N'nd') AS CodCella, ISNULL(dbo.Celle.IdxCella, 0) AS IdxCella, + ISNULL(Celle.X, 0) AS X, ISNULL(Celle.Y, 0) AS Y, ISNULL(Celle.Z, 0) AS Z, ec.IdxPosizione +FROM AnagStatiProdotto RIGHT OUTER JOIN + ElencoCartellini ec ON AnagStatiProdotto.CodStato = ec.CodStato AND AnagStatiProdotto.CodStato = ec.CodStato + LEFT OUTER JOIN Celle INNER JOIN PosizioneUdcCorrente ON Celle.IdxCella = PosizioneUdcCorrente.IdxCella + AND Celle.IdxCella = PosizioneUdcCorrente.IdxCella AND Celle.IdxCella = PosizioneUdcCorrente.IdxCella + INNER JOIN Blocchi ON Celle.IdxBlocco = Blocchi.IdxBlocco INNER JOIN AnagMag ON Blocchi.CodMag = AnagMag.CodMag + AND Blocchi.CodCS = AnagMag.CodCS AND Blocchi.CodMag = AnagMag.CodMag AND Blocchi.CodCS = AnagMag.CodCS AND Blocchi.CodMag = AnagMag.CodMag + AND Blocchi.CodCS = AnagMag.CodCS ON ec.UDC = PosizioneUdcCorrente.UDC +WHERE (ec.UDC = @UDC) AND (ec.CodCS = @CodCS) + +RETURN +go + +commit +go + + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(286, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00287.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00287.sql new file mode 100644 index 00000000..91ee9017 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00287.sql @@ -0,0 +1,78 @@ + +set xact_abort on +go + +begin transaction +go + +alter table AS400_BatchConsumoMP alter column + TurnoPrelFus nvarchar(50) not null +go + +alter table AS400_BatchConsumoMP alter column + DestLega nvarchar(50) +go + +alter table AS400_BatchConsumoMP alter column + DestTerz nvarchar(50) +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_accodaConsumoUdcMP +* +* Accoda alla tab Batch il consumo di un UDC +* +* Steamware, S.E.L. +* mod: 2010.10.10 +* +****************************************/ +alter PROCEDURE stp_accodaConsumoUdcMP +( + @UDC NVARCHAR(50), + @DataPrelFus DATETIME, + @TurnoPrelFus NVARCHAR(5), + @DestLega NVARCHAR(3), + @DestTerz NVARCHAR(6) +) +AS + +BEGIN TRAN + + -- registro movimento da riconciliare + INSERT INTO AS400_BatchConsumoMP(ProgUDC, UDC, DataPrelFus, TurnoPrelFus, DestLega, DestTerz) + SELECT ProgUdc, UDC, dbo.dateToAsFormat(@DataPrelFus), LTRIM(RTRIM(@TurnoPrelFus)), LTRIM(RTRIM(@DestLega)), LTRIM(RTRIM(@DestTerz)) + FROM RilPro.RapQual WHERE UDC = @UDC + + -- aggiorno con data e turno di prelievo su tab RilPro (locale) + UPDATE RilPro.RapQual + SET DataPrelFus = dbo.dateToAsFormat(@DataPrelFus), TurnoPrelFus = LTRIM(RTRIM(@TurnoPrelFus)) + WHERE UDC = @UDC + +COMMIT TRAN + +RETURN +go + +commit +go + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(287, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00288.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00288.sql new file mode 100644 index 00000000..2fabd384 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00288.sql @@ -0,0 +1,758 @@ +-- FIX parte As400 +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +alter VIEW v_datiPackingList +AS +SELECT dbo.ElencoListePrelievo_AS.CodLista, dbo.RigheListePrelievo_AS.IdxRiga, dbo.ElencoCartellini.UDC, dbo.ElencoListePrelievo_AS.Particolare, + dbo.ElencoCartellini.CodImballo, CAST(RIGHT(dbo.RigheListePrelievo_AS.UDC, 6) AS INT) AS matrUdc, + CASE WHEN (dbo.ElencoListePrelievo_AS.CodTipoLista = '03-TerWip') THEN 'FO' ELSE 'CL' END AS tipo, dbo.ElencoListePrelievo_AS.Destinatario, + dbo.ElencoCartellini.Qta, dbo.ElencoCartellini.PesoTot - dbo.ElencoCartellini.Tara AS PesoNetto, dbo.ElencoCartellini.PesoTot, 'B' AS Stato, GETDATE() AS data, + dbo.ElencoListePrelievo_AS.DataBatch +FROM dbo.ElencoListePrelievo_AS INNER JOIN + dbo.RigheListePrelievo_AS ON dbo.ElencoListePrelievo_AS.CodLista = dbo.RigheListePrelievo_AS.CodLista INNER JOIN + dbo.ElencoCartellini ON dbo.RigheListePrelievo_AS.UDC = dbo.ElencoCartellini.UDC +WHERE (dbo.ElencoListePrelievo_AS.DataBatch IS NULL) +go + +exec sp_updateextendedproperty 'MS_DiagramPane1', '[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00] +Begin DesignProperties = + Begin PaneConfigurations = + Begin PaneConfiguration = 0 + NumPanes = 4 + Configuration = "(H (1[40] 4[20] 2[20] 3) )" + End + Begin PaneConfiguration = 1 + NumPanes = 3 + Configuration = "(H (1 [50] 4 [25] 3))" + End + Begin PaneConfiguration = 2 + NumPanes = 3 + Configuration = "(H (1 [50] 2 [25] 3))" + End + Begin PaneConfiguration = 3 + NumPanes = 3 + Configuration = "(H (4 [30] 2 [40] 3))" + End + Begin PaneConfiguration = 4 + NumPanes = 2 + Configuration = "(H (1 [56] 3))" + End + Begin PaneConfiguration = 5 + NumPanes = 2 + Configuration = "(H (2 [66] 3))" + End + Begin PaneConfiguration = 6 + NumPanes = 2 + Configuration = "(H (4 [50] 3))" + End + Begin PaneConfiguration = 7 + NumPanes = 1 + Configuration = "(V (3))" + End + Begin PaneConfiguration = 8 + NumPanes = 3 + Configuration = "(H (1[56] 4[18] 2) )" + End + Begin PaneConfiguration = 9 + NumPanes = 2 + Configuration = "(H (1 [75] 4))" + End + Begin PaneConfiguration = 10 + NumPanes = 2 + Configuration = "(H (1[66] 2) )" + End + Begin PaneConfiguration = 11 + NumPanes = 2 + Configuration = "(H (4 [60] 2))" + End + Begin PaneConfiguration = 12 + NumPanes = 1 + Configuration = "(H (1) )" + End + Begin PaneConfiguration = 13 + NumPanes = 1 + Configuration = "(V (4))" + End + Begin PaneConfiguration = 14 + NumPanes = 1 + Configuration = "(V (2))" + End + ActivePaneConfig = 0 + End + Begin DiagramPane = + Begin Origin = + Top = 0 + Left = 0 + End + Begin Tables = + Begin Table = "ElencoListePrelievo_AS" + Begin Extent = + Top = 6 + Left = 38 + Bottom = 367 + Right = 238 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "RigheListePrelievo_AS" + Begin Extent = + Top = 5 + Left = 353 + Bottom = 200 + Right = 557 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "ElencoCartellini" + Begin Extent = + Top = 14 + Left = 658 + Bottom = 376 + Right = 828 + End + DisplayFlags = 280 + TopColumn = 0 + End + End + End + Begin SQLPane = + End + Begin DataPane = + Begin ParameterDefaults = "" + End + Begin ColumnWidths = 14 + Width = 284 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + End + End + Begin CriteriaPane = + Begin ColumnWidths = 11 + Column = 1440 + Alias = 900 + Table = 1170 + Output = 720 + Append = 1400 + NewValue = 1170 + SortType = 1350 + SortOrder = 1410 + GroupBy = 1350 + Filter = 1350 + Or = 1350 + Or = 1350 + Or = 1350 + End + End +End +', 'SCHEMA', 'dbo', 'VIEW', 'v_datiPackingList' +go + +commit +go + + +set xact_abort on +go + +begin transaction +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 +* +****************************************/ +alter PROCEDURE BatchQueue.stp_batch_RapQual_S01 +( + @minData DATETIME +) +AS + SET NOCOUNT ON; + + -- BOZZA DA TESTARE A CURA MAZZUCCONI!!! + /* + 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 + + WHERE XRPQLN <> 0 -- Se il n. rapporto di qualità è zero non sono cartellini materia prima + + */ + + DECLARE @SQL AS NVARCHAR(4000); + DECLARE @SqlOK AS INT; + + DECLARE @dataAs400 AS VARCHAR(8) + + SET @dataAs400 = (SELECT dbo.dateToAsFormat(@minData)) + + BEGIN TRY + + -- svuoto tab raw attuale + DELETE FROM RawData.XOGIX00F + + -- CREO L'ISTRUZIONE SQL DI INSERT PARAMETRICA + SET @SQL = + N'INSERT INTO RawData.XOGIX00F + SELECT XRPQLN + ,XRPQLD + ,XNRETI + ,XCDFOR + ,XCDTER + ,XCDPAR + ,XDTPRO + ,XTRPRO + ,XQTPRO + ,XDESMT + ,XMATSC + ,XBENQL + FROM OPENQUERY( P65220DC, ''SELECT * FROM MAZZT_DTV3.XOGIX00F WHERE XRPQLN <> 0 AND XRPQLD >= ' + + SET @SQL = @SQL + @dataAs400 + ' '' ) ' + + -- SELECT @SQL + + -- Eseguo il comando T-SQL verso AS400 e testo se OK + SET @SqlOK = 0; + + -- EXEC @SqlOK = sp_executesql @SQL se faccio così non mi valorizza la variabile se da errore + EXEC sp_executesql @SQL; + + END TRY + BEGIN CATCH + -- PRINT ERROR_NUMBER() + SET @SqlOK = ERROR_NUMBER(); + + END CATCH + + -- Memorizzo il comando per verifica T-SQL e l'esito del comando se 0 è OK + INSERT INTO RawData.AS400_Comandi + SELECT GETDATE(), 'stp_consumaMP', @SQL, @SqlOK; + + -- è possibile sollevare un RAISERROR ??? come si comporta poi il programma? + + -- NON SI FANNO RAISE ERROR E NON SI RESTITUISCE CODICE!!!!! + + --RETURN @SqlOK; -- commentato da Sam + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_consumaMP +* +* Salva il movimento di consumo dell'UDC di MP indicato +* +* Steamware, S.E.L. +* mod: 2010.10.12 +* +****************************************/ +alter PROCEDURE BatchQueue.stp_consumaMP +( + @XRPQLN INT, -- è il num rap qualità + @XNRETI NVARCHAR(10), -- è il numUdc prog AS400 + @XDTPRO INT, -- data 8 cifre aaaammgg Data Prelievo Fusione + @XTRPRO NVARCHAR(5), -- turno prelievo ( solo se interno ) + @XDESMT NVARCHAR(3), -- destinatario int/terzista ( F01 / T01 ) + @XCDTER NVARCHAR(6) -- cod terzista ( Anagrafico Depositi ) +) +AS + -- BOZZA DA VERIFICARE E COMPLETARE A CURA MAZZUCCONI!!! + -- L'UPDATE FUNZIONA VERSO AS400 DI TEST MAZZT_DTV3 effetiva MAZZ_DATV3 + + /* PER TESTARE + + DECLARE @XRPQLN INT, -- è il num rap qualità + @XNRETI NVARCHAR(10), -- è il numUdc prog + @XDTPRO INT, -- data 8 cifre aaaammgg + @XTRPRO NVARCHAR(5), -- turno + @XDESMT NVARCHAR(3), -- destinatario int/terzista + @XCDTER NVARCHAR(6) -- cod terzista + + SET @XRPQLN = 905793 -- è il num rap qualità + SET @XNRETI = 'U100548151' -- è il numUdc prog + SET @XDTPRO = 20100723 -- data 8 cifre aaaammgg + SET @XTRPRO = 'S' -- turno + SET @XDESMT = 'F01' -- destinatario int/terzista + SET @XCDTER = '' -- cod terzista + */ + + DECLARE @SQL AS NVARCHAR(4000); + DECLARE @SqlOK AS INT; + + BEGIN TRY + + -- TEST per generare errore + -- SET @XDTPRO = 99999920100723 -- data 8 cifre aaaammgg + + -- Creo l'istruzione SQL e faccio chiamata su AS400 + -- Forse è meglio controllare prima se già aggiornato e preso in carico da ACG??? + + SET @SQL = N'UPDATE OPENQUERY( P65220DC, ''SELECT * FROM MAZZT_DTV3.XOGIX00F ' + + SET @SQL = @SQL + 'WHERE XRPQLN = ' + CAST(@XRPQLN AS NVARCHAR(20)) -- Numero Rapporto Qualita + SET @SQL = @SQL + ' AND XNRETI = ''''' + @XNRETI + ''''''' ) ' -- Numero UDC AS400 + + SET @SQL = @SQL + 'SET XDTPRO = ' + CAST(@XDTPRO AS NVARCHAR(8)) + SET @SQL = @SQL + ', XTRPRO = ''' + @XTRPRO + '''' + SET @SQL = @SQL + ', XDESMT = ''' + @XDESMT + '''' + SET @SQL = @SQL + ', XMATSC = ''S''' -- Flag Lega Scaricata + SET @SQL = @SQL + ', XCDTER = ''' + @XCDTER + ''''; + + -- SELECT @SQL + + -- Eseguo il comando T-SQL verso AS400 e testo se OK + SET @SqlOK = 0; + + -- EXEC @SqlOK = sp_executesql @SQL se faccio così non mi valorizza la variabile se da errore + EXEC sp_executesql @SQL; + END TRY + BEGIN CATCH + -- PRINT ERROR_NUMBER() + SET @SqlOK = ERROR_NUMBER(); + + -- Uso RAISERROR mandare in errore la procedura e x per tornare le info + -- sull'errore originale che ha portato l'esecuzione nel blocco CATCH + --DECLARE @ErrorMessage NVARCHAR(4000); + --DECLARE @ErrorSeverity INT; + --DECLARE @ErrorState INT; + --SELECT @ErrorMessage = ERROR_MESSAGE(),@ErrorSeverity = ERROR_SEVERITY(),@ErrorState = ERROR_STATE(); + --RAISERROR (@ErrorMessage,@ErrorSeverity,@ErrorState); -- Se non uso RAISERROR la procedura non mi da errore es. se schedulata + END CATCH + + -- Memorizzo il comando per verifica T-SQL e l'esito del comando se 0 è OK + INSERT INTO RawData.AS400_Comandi + SELECT GETDATE(), 'stp_consumaMP', @SQL, @SqlOK; + + -- è possibile sollevare un RAISERROR ??? come si comporta poi il programma? + + -- NON SI FANNO RAISE ERROR E NON SI RESTITUISCE CODICE!!!!! + + --RETURN @SqlOK; -- commentato da Sam + + + + -- MANCA IL TEST SE HO AGGIORNATO EFFETTIVAMENTE o MENO + + /* + SELECT XRPQLN, XNRETI , XDTPRO, XTRPRO, XDESMT, XMATSC, XCDTER + FROM OPENQUERY( P65220DC, 'SELECT * FROM MAZZT_DTV3.XOGIX00F WHERE XRPQLN = 905793 AND XNRETI = ''U100548151'' ') + + -- Resetto l'UDC + UPDATE OPENQUERY( P65220DC, 'SELECT * FROM MAZZT_DTV3.XOGIX00F WHERE XRPQLN = 905793 AND XNRETI = ''U100548151'' ') + SET XDTPRO = 0 , XTRPRO = '', XDESMT = '', XMATSC = 'N', XCDTER = '' + + -- Comando OK + -- UPDATE OPENQUERY( P65220DC, 'SELECT * FROM MAZZT_DTV3.XOGIX00F WHERE XRPQLN = 905793 AND XNRETI = ''U100548151'' ') + -- SET XDTPRO = 20100723 , XTRPRO = 'S', XDESMT = 'F01', XMATSC = 'N', XCDTER = '' + */ + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/***************************************************** +* STORED sstp_processaCodaMovimMag +* +* Processa la coda dei movimenti di magazzino e chiama procedura x salvataggio dato su AS400 +* +* Steamware, S.E.L. +* mod: 2010.10.15 +* +****************************************/ +alter PROCEDURE BatchQueue.stp_processaCodaMovimMag +AS + + -- BOZZA DA VERIFICARE E COMPLETARE A CURA MAZZUCCONI!!! + -- campi variabili "globali" + DECLARE @IdxBatch INT + DECLARE @CodSoggetto NVARCHAR(17) + DECLARE @CodMovCarico CHAR(2) + DECLARE @CodMovScarico CHAR(2) + -- campi x cursore e valorizzazione riga a riga + DECLARE @Particolare NVARCHAR(15) + DECLARE @Causale NVARCHAR(2) + DECLARE @CodMag NVARCHAR(50) + DECLARE @Qta INT + DECLARE @Data NVARCHAR(8) + DECLARE @RIFFO NVARCHAR(8) + + -- faccio una query con un cursore x processare tutte le righe da inviare ad AS400.. + DECLARE RigaMovMag CURSOR FOR + SELECT IdxBatch FROM AS400_BatchMovimenti WHERE DataBatch IS NULL + + -- setto il codice soggetto da inviare ad AS... VERIFICARE!!! + SET @CodSoggetto = 'O0000000000099999' + + -- carico i 2 valori di default di carico e scarico da AS400 + SET @CodMovCarico = (SELECT CauCarico FROM RilPro.AnagCausaliMag) + SET @CodMovScarico = (SELECT CauScarico FROM RilPro.AnagCausaliMag) + + -- inizio cursore! + OPEN RigaMovMag + FETCH NEXT FROM RigaMovMag + INTO @IdxBatch + WHILE @@FETCH_STATUS = 0 + BEGIN + -- controllo ci sia la riga + IF (SELECT COUNT(IdxBatch) FROM AS400_BatchMovimenti WHERE IdxBatch = @IdxBatch) > 0 + BEGIN + -- carico valori che mi servono + SELECT @Particolare=bm.Particolare, @Causale=CASE WHEN bm.Quantita>0 THEN @CodMovCarico ELSE @CodMovScarico END, + @CodMag=bm.CodMagAS, @Qta = ABS(bm.Quantita), @Data=dbo.dateToAsFormat(GETDATE()), @RIFFO=dbo.getUdcComp(bm.UDC,8) + FROM AS400_BatchMovimenti bm + WHERE IdxBatch = @IdxBatch + + -- Eseguo la stored che registra il Packing List ??? + Execute BatchQueue.stp_registraMovMag @CodSoggetto, @Causale, @Particolare, @CodMag, @Qta, @Data, @RIFFO + + -- registro la data del movimento BATCH + UPDATE AS400_BatchMovimenti SET DataBatch = GETDATE() WHERE IdxBatch = @IdxBatch + + FETCH NEXT FROM RigaMovMag INTO @IdxBatch + END + END + CLOSE RigaMovMag + DEALLOCATE RigaMovMag + + +RETURN +go + +commit +go + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/* +* STORED stp_processaCodaMovimPackList +* +* Processa la coda delle packing list e chiama procedura x salvataggio dato su AS400 +* +* Steamware, S.E.L. +* mod: 2010.10.22 +* +****************************************/ +create PROCEDURE BatchQueue.stp_processaCodaMovimPackList +AS + + -- BOZZA DA VERIFICARE E COMPLETARE A CURA MAZZUCCONI!!! + + -- campi x cursore e valorizzazione riga a riga + DECLARE @IdxRiga INT + DECLARE @CodLista NVARCHAR(12) + DECLARE @CodListaPre NVARCHAR(12) + DECLARE @CodStab CHAR(2) + DECLARE @UDC NVARCHAR(15) + DECLARE @Particolare NVARCHAR(15) + DECLARE @CodImb NVARCHAR(15) + DECLARE @Matr INT + DECLARE @Tipo NVARCHAR(2) + DECLARE @Dest NVARCHAR(10) + DECLARE @Qta INT + DECLARE @PesoNet NUMERIC(7,3) + DECLARE @PesoLor NUMERIC(7,3) + DECLARE @Stato CHAR(1) + DECLARE @Data NVARCHAR(8) + + -- faccio una query con un cursore x processare tutte le righe da inviare ad AS400.. + DECLARE RigaPackList CURSOR FOR + SELECT IdxRiga FROM v_datiPackingList ORDER BY CodLista + + -- setto il codice stabilimento da inviare ad AS... VERIFICARE!!! + SET @CodStab = '05'; + + -- imposto prima codListaPre a vuoto... + SET @CodListaPre = ''; + -- inizio cursore! + OPEN RigaPackList + FETCH NEXT FROM RigaPackList + INTO @IdxRiga + WHILE @@FETCH_STATUS = 0 + BEGIN + -- controllo ci sia la riga + IF (SELECT COUNT(IdxRiga) FROM v_datiPackingList WHERE IdxRiga = @IdxRiga) > 0 + BEGIN + -- carico valori che mi servono + SELECT @Particolare=pl.Particolare, @UDC=UDC, @CodImb=pl.CodImballo, @Matr = pl.matrUdc, @Tipo=pl.tipo, @Dest=pl.Destinatario, + @Qta=ABS(pl.Qta), @PesoNet=pl.PesoNetto, @PesoLor=pl.PesoTot, @Stato=pl.Stato, @Data=dbo.dateToAsFormat(pl.data), + @CodLista=pl.CodLista + FROM v_datiPackingList pl + WHERE IdxRiga = @IdxRiga + + -- Eseguo la stored che registra il Packing List ??? + Execute BatchQueue.stp_registraPackList @CodStab, @UDC, @Particolare , @CodImb , @Matr , @Tipo , @Dest , @Qta , @PesoNet , @PesoLor , @Stato , @Data + + FETCH NEXT FROM RigaPackList INTO @IdxRiga + + -- controllo: se la lissta precedente è diversa dall'attuale la indico come scaricata (precedente) + IF(@CodListaPre <> @CodLista) + BEGIN + UPDATE ElencoListePrelievo_AS SET DataBatch = GETDATE() WHERE CodLista = @CodListaPre + -- cambio il cod pre da confrontare + SET @CodListaPre = @CodLista + END + END + -- registro la data del movimento BATCH dell'ultima lista processata + UPDATE ElencoListePrelievo_AS SET DataBatch = GETDATE() WHERE CodLista = @CodLista + + END + CLOSE RigaPackList + DEALLOCATE RigaPackList + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_registraMovMag +* +* Salva il movimento di magazzino indicato +* +* Steamware, S.E.L. +* mod: 2010.10.15 +* +****************************************/ +alter PROCEDURE BatchQueue.stp_registraMovMag +( + @NOMUS NVARCHAR(50), -- è il nome utente + @CDCAU NVARCHAR(2), -- è la causale del movimento + @CDPAR NVARCHAR(15), -- codice particolare + @CDMAG NVARCHAR(2), -- codice magazzino + @QTMOV NUMERIC(9,2), -- quantità movimento + @DAMOV NVARCHAR(8), -- data 8 cifre aaaammgg Data Movimento + @RIFFO NVARCHAR(8) -- cod UDC compresso +) +AS + + -- QUESTA FUNZIONA!!! DA VERIFICARE I DATI PASSATI VISTO CHE ATTUALMENTE NON FUNZIONA + -- LA STORED CHE LA RICHIAMA-POPOLA ? + + -- Movimentazioni Magazzino + -- Tabella MWMV200F libreria MAZZT_AZI per test – MAZZ_AZI effettiva + + /* -- Variabili per test senza Stored + DECLARE @NOMUS NVARCHAR(50), -- è il nome utente + @CDCAU NVARCHAR(2), -- è la causale del movimento + @CDPAR NVARCHAR(15), -- codice particolare + @CDMAG NVARCHAR(2), -- codice magazzino + @QTMOV NUMERIC(9,2), -- quantità movimento ATTENZIONE QUESTA E' SBAGLIATA SULLA STORED + @DAMOV NVARCHAR(8), -- data 8 cifre aaaammgg + @RIFFO NVARCHAR(8) -- cod UDC compresso + + -- SETTO LE VARIABILI DI PROVA PER TEST + SET @NOMUS = N'PIPPO' + SET @CDCAU = N'01' + SET @CDPAR = N'P00528503817' + SET @CDMAG = N'54' + SET @QTMOV = 1234567.51 + SET @DAMOV = N'20100101' + SET @RIFFO = N'UDCPROVA' + */ + + DECLARE @SqlOK AS INT; + + -- inizio a dire che è andata bene e salvo in tab comandi + SET @SqlOk = 1; + + -- Memorizzo il comando per verifica T-SQL + INSERT INTO RawData.AS400_Comandi + SELECT GETDATE(), 'stp_registraMovMag', + 'INSERT INTO OPENQUERY MAZZT_AZI.MWMV200F parametri :' + + @NOMUS + ',' + @CDCAU + ',' + @CDPAR + ',' + @CDMAG + ',' + CONVERT(VARCHAR(20) , @QTMOV) + ',' + @DAMOV + ',' + @RIFFO, @SqlOk + + /* + INSERT INTO + OPENQUERY( P65220DC, + ' + SELECT NOMUS , CDCAU , CDPAR , CDMAG , QTMOV , DAMOV , RIFFO + FROM MAZZT_AZI.MWMV200F + ' ) + VALUES ( @NOMUS , @CDCAU , @CDPAR , @CDMAG , @QTMOV , @DAMOV , @RIFFO ) + */ + + + /* TEST e DELETE + SELECT * FROM OPENQUERY( P65220DC, 'SELECT NOMUS ,CDCAU ,CDPAR ,CDMAG ,QTMOV ,DAMOV ,RIFFO FROM MAZZT_AZI.MWMV200F' ) + + DELETE + OPENQUERY( P65220DC, 'SELECT * FROM MAZZT_AZI.MWMV200F WHERE NOMUS = ''PIPPO'' ') + */ + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_registraPackList +* +* Salva i dati di packing list indicati +* +* Steamware, S.E.L. +* mod: 2010.10.15 +* +****************************************/ +alter PROCEDURE BatchQueue.stp_registraPackList +( + @PLREPA NVARCHAR(2), -- è il codice reparto/stabilimento (05 pressofusione) + @PLCART NVARCHAR(15), -- UDC + @PLARTI NVARCHAR(15), -- cod articolo + @PLCONT NVARCHAR(15), -- cod contenitore + @PLMATR INT, -- matricola contenitore (solo cifre finali INT) + @PLTPAN CHAR(2), -- tipo anagrafico CLiente / FOrnitore-terzista + @PLCDAN NVARCHAR(6), -- cod terzista / cliente + @PLQTA INT, -- quantità + @PLPNET NUMERIC(7, 3), -- peso netto + @PLPLOR NUMERIC(7, 3), -- peso lordo + @PLSTAT CHAR(1), -- stato "P" predisposto per packing list, "B" bolla stampata + @PLDTEN INT -- data entrata merce, data di carico dell'UDC 8 cifre aaaammgg +) +AS + -- BOZZA DA VERIFICARE E COMPLETARE A CURA MAZZUCCONI!!! + + --DECLARE @SQL AS NVARCHAR(4000); + DECLARE @SqlOK AS INT; + + -- inizio a dire che è andata bene e salvo in tab comandi + SET @SqlOk = 1; + + -- Memorizzo il comando per verifica T-SQL + INSERT INTO RawData.AS400_Comandi + SELECT GETDATE(), 'stp_registraPackList', + 'INSERT INTO MAZZT_DTV3.PACKL00F parametri :' + + @PLREPA + ', ' + @PLCART + ', ' + @PLARTI + ', ' + @PLCONT + ', ' + CAST(@PLMATR AS NVARCHAR(5)) + ', ' + @PLTPAN + ', ' + @PLCDAN + ', ' + CAST(@PLQTA AS NVARCHAR(10)) + ', ' + CAST(@PLPNET AS NVARCHAR(10)) + ', ' + CAST(@PLPLOR AS NVARCHAR(10)) + ', ' + @PLSTAT + ', ' + CAST(@PLDTEN AS NVARCHAR(8)) , @SqlOk + + /* + INSERT INTO + OPENQUERY( P65220DC, + ' + SELECT PLREPA , PLCART , PLARTI , PLCONT , PLMATR , PLTPAN , PLCDAN , PLQTA , PLPNET , PLPLOR , PLSTAT , PLDTEN + FROM MAZZT_AZI.MWMV200F + ' ) + VALUES ( @PLREPA , @PLCART , @PLARTI , @PLCONT , CAST(@PLMATR AS NVARCHAR(5)) , @PLTPAN , @PLCDAN , CAST(@PLQTA AS NVARCHAR(10)) , CAST(@PLPNET AS NVARCHAR(10)) , CAST(@PLPLOR AS NVARCHAR(10)) , @PLSTAT , CAST(@PLDTEN AS NVARCHAR(8)) ) + */ + + + /* + -- preparo chiamata su AS400 + SET @SQL = N' OPENQUERY( P65220DC, ''INSERT INTO MAZZT_DTV3.PACKL00F VALUES ' + SET @SQL = @SQL + @PLREPA + ', ' + @PLCART + ', ' + @PLARTI + ', ' + @PLCONT + ', ' + SET @SQL = @SQL + CAST(@PLMATR AS NVARCHAR(5)) + ', ' + @PLTPAN + ', ' + @PLCDAN + ', ' + CAST(@PLQTA AS NVARCHAR(10)) + ', ' + SET @SQL = @SQL + CAST(@PLPNET AS NVARCHAR(10)) + ', ' + CAST(@PLPLOR AS NVARCHAR(10)) + ', ' + @PLSTAT + ', ' + SET @SQL = @SQL + CAST(@PLDTEN AS NVARCHAR(8)) + ''' )' + + EXEC sp_executesql @SQL + */ + +RETURN +go + +commit +go + + + + + + + + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(288, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00289.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00289.sql new file mode 100644 index 00000000..0b21ce7f --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00289.sql @@ -0,0 +1,122 @@ +alter table StoricoCartellini drop + constraint FK_StoricoEventi_AnagTipoEvento , + column CodEvento, + constraint DF_StoricoEventi_CodTipoDichiaraz , + constraint FK_StoricoEventi_AnagTipoDichiaraz , + column CodTipoDichiaraz +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2009-10-27 +-- Description: trigger x inserimento valori in archivio storico alla cancellazione/modifica del dato +-- ============================================= +create TRIGGER trg_storicoUDC + ON ElencoCartellini + AFTER DELETE,UPDATE +AS +BEGIN + -- SET NOCOUNT ON added to prevent extra result sets from + -- interfering with SELECT statements. + SET NOCOUNT ON; + + -- metto in storico la posizione attuale dell'UDC (SE esiste) CANCELLATO + INSERT INTO StoricoCartellini(DataEv, 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(), UDC, CodCS, CodCliente, RagSociale, Particolare, DescParticolare, DisegnoGrezzo, Esponente, CodImpianto, DescImpianto, + CodStampo, Figura, DataFus, TurnoFus, CodImballo, CodSoggetto, NumCont, Tara, Qta, CodStato, IdxPosizione, PesoTot, PesoCad + FROM deleted + ) + +END +go + +commit +go + + +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 +* +****************************************/ +alter PROCEDURE stp_LP_exportToAs400 +( + @CodLista NVARCHAR(12) +) +AS + +-- copio la lista (intestazione) +INSERT INTO ElencoListePrelievo_AS(CodLista, CodTipoLista, CodCS, DataCreaz, CodCliente, RagSociale, CodSoggetto, Particolare, DescParticolare, + DisegnoGrezzo, Esponente, Figura, CodImballo, QtaTot, CodStatoLista, Destinatario) +SELECT CodLista, CodTipoLista, CodCS, DataCreaz, CodCliente, RagSociale, CodSoggetto, Particolare, DescParticolare, + DisegnoGrezzo, Esponente, Figura, CodImballo, QtaTot, CodStatoLista, Destinatario +FROM ElencoListePrelievo +WHERE (CodLista = @CodLista) + +-- copio le righe lista di dettaglio +INSERT INTO RigheListePrelievo_AS(CodLista, UDC, Qta, Proposto, Prelevato) +SELECT CodLista, UDC, Qta, Proposto, Prelevato +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) + +-- IMPORTANTE: in caso siano rimasti riferimenti ad un UDC scaricato in AS in altre liste di prelievo li tolgo in modo da "ripulirle" ed evitare che lo stesso UDC venga prelevato 2 volte... +DELETE RLP +FROM RigheListePrelievo RLP +INNER JOIN ElencoListePrelievo ELP + ON RLP.CodLista = ELP.CodLista +WHERE ELP.CodStatoLista < 4 AND RLP.CodLista <> @CodLista AND RLP.UDC IN ( + SELECT UDC + FROM RigheListePrelievo + WHERE (CodLista = @CodLista) AND Prelevato = 1 + ) + +RETURN +go + +commit +go + + + + + + + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(289, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00290.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00290.sql new file mode 100644 index 00000000..e6de1ca3 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00290.sql @@ -0,0 +1,648 @@ +set xact_abort on +go + +begin transaction +go + +alter table AS400_MagCont add + CodMagAS_compensaz nvarchar(50) constraint DF_AS400_MagCont_CodMagAS_compensaz default (0) +go + +update AS400_MagCont set CodMagAS_compensaz=0 +go + +set ANSI_NULLS on +go + +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2009-09-20 +-- Description: trigger x inserimento movimenti +-- nella coda di trasferimento batch +-- verso AS400 x UPDATE UDC +-- ============================================= +alter TRIGGER trg_updMovAS + ON ElencoCartellini + AFTER UPDATE +AS +BEGIN + + -- setup variabili e verbosità + SET NOCOUNT ON; + DECLARE @partOk AS BIT + DECLARE @IdxPosFrom AS INT + DECLARE @IdxPosTo AS INT + DECLARE @magFrom AS NVARCHAR(50) + DECLARE @magTo AS NVARCHAR(50) + DECLARE @qta AS DECIMAL(10,2) + DECLARE @qtaOld AS DECIMAL(10,2) + DECLARE @IdxPosizioneComp INT + + -- controllo che CI SIA il particolare (altrimenti non eseguo) + SET @partOk = (SELECT CASE WHEN ISNULL(Particolare,'n.d.') = 'n.d.' THEN 0 ELSE 1 END FROM deleted) + + IF(@partOk = 1) + SET @qta = (SELECT Qta FROM inserted) + SET @qtaOld = (SELECT Qta FROM deleted) + -- se c'è stata modifica di quantità inizio a rettificare quella + IF (UPDATE(Qta)) AND(@qta <> @qtaOld) + BEGIN + -- registro il VERO movimento + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOD', Particolare, UDC, CAST(IdxPosizione AS NVARCHAR(50)), @qta - Qta + FROM deleted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + -- controllo: se il magazzino di destinazione richiede una compensazione registro il 2° movimento di compensazione + SET @IdxPosFrom = (SELECT IdxPosizione FROM deleted) + SET @IdxPosTo = (SELECT IdxPosizione FROM inserted) + -- calcolo il mag di compensazione + SET @IdxPosizioneComp = (SELECT CAST(ISNULL(CodMagAS_compensaz,0) AS INT) FROM AS400_MagCont WHERE (Attivo = 1) AND (CodMagAS = CAST(@IdxPosFrom AS NVARCHAR(50)))) + IF (@IdxPosizioneComp > 0) + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_COMP', Particolare, UDC, CAST(@IdxPosizioneComp AS NVARCHAR(50)), Qta - @qta + FROM deleted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + END + + -- controllo poi se sia cambiato il magazzino, altrimenti non lo inserisco + IF UPDATE(IdxPosizione) + BEGIN + -- Prendo le posizioni di magazzino precedente e nuova + SET @IdxPosFrom = (SELECT IdxPosizione FROM deleted) + SET @IdxPosTo = (SELECT IdxPosizione FROM inserted) + -- Le trasformo nelle equivalenti stringhe del codMag SE attive + SET @magFrom = (SELECT ISNULL(CodMagAS,'---') FROM AS400_MagCont WHERE Attivo = 1 AND CodMagAs = CAST(@IdxPosFrom AS NVARCHAR(50))) + SET @magTo = (SELECT ISNULL(CodMagAS,'---') FROM AS400_MagCont WHERE Attivo = 1 AND CodMagAs = CAST(@IdxPosTo AS NVARCHAR(50))) + + -- inserisco un movimento di deposito verso mag nuovo (SE attivo) + IF (@magFrom <> '---') + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOV', Particolare, UDC, CAST(IdxPosizione AS NVARCHAR(50)), -@qta + FROM deleted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + -- inserisco un movimento di prelievo verso mag vecchio (SE attivo) + IF (@magTo <> '---') + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOV', Particolare, UDC, CAST(IdxPosizione AS NVARCHAR(50)), @qta + FROM inserted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + END + +END +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +UPDATE dbo.AS400_MagCont SET + CodMagAS_compensaz=N'84' + WHERE CodMagAS=N'54' +UPDATE dbo.AS400_MagCont SET + CodMagAS_compensaz=N'84' + WHERE CodMagAS=N'88' +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +create VIEW v_specParticolari +AS +SELECT DISTINCT TOP (100) PERCENT CodCliente, RagSociale, Particolare, DescParticolare, DisegnoGrezzo, Esponente, CodStampo, Figura +FROM dbo.ElencoCartellini +WHERE (NOT (Particolare IS NULL)) AND (NOT (DisegnoGrezzo IS NULL)) +go + +exec sp_addextendedproperty 'MS_DiagramPane1', '[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00] +Begin DesignProperties = + Begin PaneConfigurations = + Begin PaneConfiguration = 0 + NumPanes = 4 + Configuration = "(H (1[40] 4[20] 2[20] 3) )" + End + Begin PaneConfiguration = 1 + NumPanes = 3 + Configuration = "(H (1 [50] 4 [25] 3))" + End + Begin PaneConfiguration = 2 + NumPanes = 3 + Configuration = "(H (1 [50] 2 [25] 3))" + End + Begin PaneConfiguration = 3 + NumPanes = 3 + Configuration = "(H (4 [30] 2 [40] 3))" + End + Begin PaneConfiguration = 4 + NumPanes = 2 + Configuration = "(H (1 [56] 3))" + End + Begin PaneConfiguration = 5 + NumPanes = 2 + Configuration = "(H (2 [66] 3))" + End + Begin PaneConfiguration = 6 + NumPanes = 2 + Configuration = "(H (4 [50] 3))" + End + Begin PaneConfiguration = 7 + NumPanes = 1 + Configuration = "(V (3))" + End + Begin PaneConfiguration = 8 + NumPanes = 3 + Configuration = "(H (1[56] 4[18] 2) )" + End + Begin PaneConfiguration = 9 + NumPanes = 2 + Configuration = "(H (1 [75] 4))" + End + Begin PaneConfiguration = 10 + NumPanes = 2 + Configuration = "(H (1[66] 2) )" + End + Begin PaneConfiguration = 11 + NumPanes = 2 + Configuration = "(H (4 [60] 2))" + End + Begin PaneConfiguration = 12 + NumPanes = 1 + Configuration = "(H (1) )" + End + Begin PaneConfiguration = 13 + NumPanes = 1 + Configuration = "(V (4))" + End + Begin PaneConfiguration = 14 + NumPanes = 1 + Configuration = "(V (2))" + End + ActivePaneConfig = 0 + End + Begin DiagramPane = + Begin Origin = + Top = 0 + Left = 0 + End + Begin Tables = + Begin Table = "ElencoCartellini" + Begin Extent = + Top = 6 + Left = 246 + Bottom = 322 + Right = 416 + End + DisplayFlags = 280 + TopColumn = 0 + End + End + End + Begin SQLPane = + End + Begin DataPane = + Begin ParameterDefaults = "" + End + Begin ColumnWidths = 9 + Width = 284 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + End + End + Begin CriteriaPane = + Begin ColumnWidths = 11 + Column = 1440 + Alias = 900 + Table = 1170 + Output = 720 + Append = 1400 + NewValue = 1170 + SortType = 1350 + SortOrder = 1410 + GroupBy = 1350 + Filter = 1350 + Or = 1350 + Or = 1350 + Or = 1350 + End + End +End +', 'SCHEMA', 'dbo', 'VIEW', 'v_specParticolari' +go + +exec sp_addextendedproperty 'MS_DiagramPaneCount', 1, 'SCHEMA', 'dbo', 'VIEW', 'v_specParticolari' +go + +commit +go + + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*( +* STORED stp_ParticolariGetLike +* +* elenco dei particolari con ricerca LIKE +* +* Steamware, S.E.L. +* mod: 2010.07.07 +* +****************************************/ +create PROCEDURE stp_ParticolariGetLike +( + @searchVal VARCHAR(50), + @CodCS VARCHAR(2) +) +AS + + SELECT RilPro.AnagParticolari.* + FROM RilPro.AnagParticolari + WHERE (RilPro.AnagParticolari.CodCS = @CodCS) AND (RilPro.AnagParticolari.Particolare LIKE '%' + @searchVal + '%') + +RETURN +go + +commit +go + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_SpecParticolare +* +* ottiene il dettaglio delle specifiche di un particolare dato il suo codice +* +* Steamware, S.E.L. +* mod: 2010.10.29 +* +****************************************/ +create PROCEDURE stp_SpecParticolare +( + @Particolare NVARCHAR(15) +) +AS + +SELECT * +FROM v_specParticolari +WHERE Particolare=@Particolare + + +RETURN +go + +commit +go + + + +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 +* +****************************************/ +alter PROCEDURE stp_UDC_updateQty +( + @UDC VARCHAR(20), + @CodSoggetto VARCHAR(17), + @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 + + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +alter VIEW v_selDestinatariListePrelievo +AS +SELECT CAST('*' AS NVARCHAR(6)) AS value, CAST('*' AS NVARCHAR(50)) AS label, '01-PreFus' AS conditio +UNION +SELECT CAST(CodCliente AS NVARCHAR(6)) AS value, CAST(RagSociale AS NVARCHAR(50)) AS label, '02-PreCli' AS conditio +FROM RilPro.AnagClienti +UNION +SELECT CAST(CodTerzista AS NVARCHAR(6)) AS value, CAST(DescTerzista AS NVARCHAR(50)) AS label, '03-TerWip' AS conditio +FROM RilPro.AnagDepositi +go + +exec sp_updateextendedproperty 'MS_DiagramPane1', '[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00] +Begin DesignProperties = + Begin PaneConfigurations = + Begin PaneConfiguration = 0 + NumPanes = 4 + Configuration = "(H (1[40] 4[20] 2[20] 3) )" + End + Begin PaneConfiguration = 1 + NumPanes = 3 + Configuration = "(H (1 [50] 4 [25] 3))" + End + Begin PaneConfiguration = 2 + NumPanes = 3 + Configuration = "(H (1 [50] 2 [25] 3))" + End + Begin PaneConfiguration = 3 + NumPanes = 3 + Configuration = "(H (4 [30] 2 [40] 3))" + End + Begin PaneConfiguration = 4 + NumPanes = 2 + Configuration = "(H (1 [56] 3))" + End + Begin PaneConfiguration = 5 + NumPanes = 2 + Configuration = "(H (2 [66] 3))" + End + Begin PaneConfiguration = 6 + NumPanes = 2 + Configuration = "(H (4 [50] 3))" + End + Begin PaneConfiguration = 7 + NumPanes = 1 + Configuration = "(V (3))" + End + Begin PaneConfiguration = 8 + NumPanes = 3 + Configuration = "(H (1[56] 4[18] 2) )" + End + Begin PaneConfiguration = 9 + NumPanes = 2 + Configuration = "(H (1 [75] 4))" + End + Begin PaneConfiguration = 10 + NumPanes = 2 + Configuration = "(H (1[66] 2) )" + End + Begin PaneConfiguration = 11 + NumPanes = 2 + Configuration = "(H (4 [60] 2))" + End + Begin PaneConfiguration = 12 + NumPanes = 1 + Configuration = "(H (1) )" + End + Begin PaneConfiguration = 13 + NumPanes = 1 + Configuration = "(V (4))" + End + Begin PaneConfiguration = 14 + NumPanes = 1 + Configuration = "(V (2))" + End + ActivePaneConfig = 0 + End + Begin DiagramPane = + Begin Origin = + Top = 0 + Left = 0 + End + Begin Tables = + End + End + Begin SQLPane = + End + Begin DataPane = + Begin ParameterDefaults = "" + End + Begin ColumnWidths = 9 + Width = 284 + Width = 1500 + Width = 3360 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + End + End + Begin CriteriaPane = + Begin ColumnWidths = 11 + Column = 1440 + Alias = 900 + Table = 1170 + Output = 720 + Append = 1400 + NewValue = 1170 + SortType = 1350 + SortOrder = 1410 + GroupBy = 1350 + Filter = 1350 + Or = 1350 + Or = 1350 + Or = 1350 + End + End +End +', 'SCHEMA', 'dbo', 'VIEW', 'v_selDestinatariListePrelievo' +go + +commit +go + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_rettMovAs400 +* +* inserisce nella tabella per i trasferimenti batch verso magazzino AS una quantità di rettifica (con segno - )per UDC eventualmente già scaricati a sistema +* +* Steamware, S.E.L. +* mod: 2010.11.02 +* +****************************************/ +alter PROCEDURE stp_rettMovAs400 +( + @Particolare NVARCHAR(50), + @UDC NVARCHAR(20), + @CodMagAS NVARCHAR(50), + @Qta DECIMAL(10,2) +) +AS + +BEGIN + + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + VALUES (GETDATE(), 'UDC_NOQTY', @Particolare, @UDC, @CodMagAS, -@Qta) + +END + +RETURN +go + +commit +go + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_selDestListePrelByConditio +* +* Ottiene i destinatari delle liste di prelievo data la condizione indicata +* +* Steamware, S.E.L. +* mod: 2010.11.02 +* +****************************************/ +create PROCEDURE stp_selDestListePrelByConditio +( + @conditio NVARCHAR(20) +) +AS + +IF (@conditio='01-PreFus') +BEGIN + SELECT CAST('*' AS NVARCHAR(6)) AS value, CAST('*' AS NVARCHAR(50)) AS label, '01-PreFus' AS conditio +END + +ELSE IF (@conditio='02-PreCli') +BEGIN + SELECT CAST(CodCliente AS NVARCHAR(6)) AS value, CAST(RagSociale AS NVARCHAR(50)) AS label, '02-PreCli' AS conditio + FROM RilPro.AnagClienti + ORDER BY label +END + +ELSE +BEGIN + SELECT CAST(CodTerzista AS NVARCHAR(6)) AS value, CAST(DescTerzista AS NVARCHAR(50)) AS label, '03-TerWip' AS conditio + FROM RilPro.AnagDepositi + ORDER BY label +END + +RETURN +go + +commit +go + + + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(290, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00291.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00291.sql new file mode 100644 index 00000000..16a26f08 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00291.sql @@ -0,0 +1,299 @@ +set xact_abort on +go + +begin transaction +go + +alter table RigheListePrelievo_AS add + DataBatch datetime +go + +exec sp_addextendedproperty 'MS_Description', 'dataora di caricamento batch verso AS', 'SCHEMA', 'dbo', 'TABLE', 'RigheListePrelievo_AS', 'COLUMN', 'DataBatch' +go + +set ANSI_NULLS on +go + +/***************************************** +* STORED stp_processaCodaMovimPackList +* +* Processa la coda delle packing list e chiama procedura x salvataggio dato su AS400 +* +* Steamware, S.E.L. +* mod: 2010.10.22 +* +****************************************/ +alter PROCEDURE BatchQueue.stp_processaCodaMovimPackList +AS + + -- BOZZA DA VERIFICARE E COMPLETARE A CURA MAZZUCCONI!!! + + -- campi x cursore e valorizzazione riga a riga + DECLARE @IdxRiga INT + DECLARE @CodLista NVARCHAR(12) + DECLARE @CodListaPre NVARCHAR(12) + DECLARE @CodStab CHAR(2) + DECLARE @UDC NVARCHAR(15) + DECLARE @Particolare NVARCHAR(15) + DECLARE @CodImb NVARCHAR(15) + DECLARE @Matr INT + DECLARE @Tipo NVARCHAR(2) + DECLARE @Dest NVARCHAR(10) + DECLARE @Qta INT + DECLARE @PesoNet NUMERIC(7,3) + DECLARE @PesoLor NUMERIC(7,3) + DECLARE @Stato CHAR(1) + DECLARE @Data NVARCHAR(8) + + DECLARE @ScritturaRigaOK AS INT -- Flag errore su riga ritornato da Stored che va su As400 0 = Ok + SET @ScritturaRigaOK = 0; + + DECLARE @ScritturaASOK AS INT -- Flag errore Packing generale su Stored che va su As400 0 = Ok + SET @ScritturaASOK = 0; + + -- qui è meglio usare una tabella temporanea o ancor meglio una variabile tabella x pochi + -- record per non bloccare le tabelle sottostanti + -- query con un cursore x processare tutte le righe di Packing che sono ancora da inviare ad AS400 ( DataBatch IS NULL ) + DECLARE RigaPackList CURSOR LOCAL FOR + SELECT IdxRiga, CodLista FROM v_datiPackingList ORDER BY CodLista + + -- setto il codice stabilimento da inviare ad AS... VERIFICARE!!! + SET @CodStab = '05'; + + -- imposto prima codListaPre a vuoto... + SET @CodListaPre = ''; + + -- inizio cursore caricando le righe + OPEN RigaPackList + FETCH NEXT FROM RigaPackList + INTO @IdxRiga , @CodLista + + SET @CodListaPre = @CodLista + + WHILE @@FETCH_STATUS = 0 + BEGIN + -- controllo ci sia almento una riga di Packing ( PER ME NON SERVE ) + IF (SELECT COUNT(IdxRiga) FROM v_datiPackingList WHERE IdxRiga = @IdxRiga) > 0 + BEGIN + -- carico valori che mi servono + SELECT @Particolare=pl.Particolare, @UDC=UDC, @CodImb=pl.CodImballo, @Matr = pl.matrUdc, @Tipo=pl.tipo, @Dest=pl.Destinatario, + @Qta=ABS(pl.Qta), @PesoNet=pl.PesoNetto, @PesoLor=pl.PesoTot, @Stato=pl.Stato, @Data=dbo.dateToAsFormat(pl.data), + @CodLista=pl.CodLista + FROM v_datiPackingList pl + WHERE IdxRiga = @IdxRiga + + -- Eseguo la stored che registra la Packing List con le righe sue righe + EXECUTE @ScritturaRigaOK = BatchQueue.stp_registraPackList @CodStab, @UDC, @Particolare , @CodImb , @Matr , @Tipo , @Dest , @Qta , @PesoNet , @PesoLor , @Stato , @Data + + -- se scrittura riga è ok allora salvo sulla riga la data di invio... così poi non la rivedo tra quelle da processare... + IF @ScritturaRigaOK = 0 + UPDATE RigheListePrelievo_AS SET DataBatch = GETDATE() WHERE IdxRiga = @IdxRiga; + + + -- Se scrittura Riga Packing non ok metto Flag Packing list non Ok + IF @ScritturaRigaOK <> 0 SET @ScritturaASOK = @ScritturaRigaOK + + FETCH NEXT FROM RigaPackList + INTO @IdxRiga , @CodLista + + -- controllo: se la lista precedente è diversa dall'attuale la indico come scaricata (precedente) + IF(@CodListaPre <> @CodLista) + BEGIN + -- ATTENZIONE!!! Qui è da controllare perchè lo faccio una sola volta per la + -- lista e non per riga prelievo ... boh non so se ok ... se UDC già presente in As400 errore 7343 + IF @ScritturaASOK = 0 + UPDATE ElencoListePrelievo_AS SET DataBatch = GETDATE() WHERE CodLista = @CodListaPre; + ELSE + SET @ScritturaASOK = 0; -- resetto il flag di controllo + + -- cambio il cod pre da confrontare + SET @CodListaPre = @CodLista + END + END + + END + + -- Aggiorno anche l'ultima lista prelievo + -- **** è corretto ??? se poi ricarico tutto il Packing list che succede??? + -- x gli UDC già in AS400 da errore 7343 + IF @ScritturaASOK = 0 -- OR @ScritturaASOK = 7343 ??? + UPDATE ElencoListePrelievo_AS SET DataBatch = GETDATE() WHERE CodLista = @CodLista + -- registro la data del movimento BATCH dell'ultima lista processata + + -- se c'è un errore mi rimane aperto il cursore? nn dovrebbe perchè LOCAL + CLOSE RigaPackList + DEALLOCATE RigaPackList + +RETURN +go + +alter VIEW v_datiPackingList +AS +SELECT dbo.ElencoListePrelievo_AS.CodLista, dbo.RigheListePrelievo_AS.IdxRiga, dbo.ElencoCartellini.UDC, dbo.ElencoListePrelievo_AS.Particolare, + dbo.ElencoCartellini.CodImballo, CAST(RIGHT(LTRIM(dbo.RigheListePrelievo_AS.UDC), 6) AS INT) AS matrUdc, + CASE WHEN (dbo.ElencoListePrelievo_AS.CodTipoLista = '03-TerWip') THEN 'FO' ELSE 'CL' END AS tipo, dbo.ElencoListePrelievo_AS.Destinatario, + dbo.ElencoCartellini.Qta, ROUND(dbo.ElencoCartellini.PesoTot - dbo.ElencoCartellini.Tara, 3) AS PesoNetto, ROUND(dbo.ElencoCartellini.PesoTot, 3) AS PesoTot, + 'P' AS Stato, GETDATE() AS data, dbo.RigheListePrelievo_AS.DataBatch +FROM dbo.ElencoListePrelievo_AS INNER JOIN + dbo.RigheListePrelievo_AS ON dbo.ElencoListePrelievo_AS.CodLista = dbo.RigheListePrelievo_AS.CodLista INNER JOIN + dbo.ElencoCartellini ON dbo.RigheListePrelievo_AS.UDC = dbo.ElencoCartellini.UDC +WHERE (dbo.RigheListePrelievo_AS.DataBatch IS NULL) +go + +exec sp_updateextendedproperty 'MS_DiagramPane1', '[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00] +Begin DesignProperties = + Begin PaneConfigurations = + Begin PaneConfiguration = 0 + NumPanes = 4 + Configuration = "(H (1[40] 4[20] 2[20] 3) )" + End + Begin PaneConfiguration = 1 + NumPanes = 3 + Configuration = "(H (1 [50] 4 [25] 3))" + End + Begin PaneConfiguration = 2 + NumPanes = 3 + Configuration = "(H (1 [50] 2 [25] 3))" + End + Begin PaneConfiguration = 3 + NumPanes = 3 + Configuration = "(H (4 [30] 2 [40] 3))" + End + Begin PaneConfiguration = 4 + NumPanes = 2 + Configuration = "(H (1 [56] 3))" + End + Begin PaneConfiguration = 5 + NumPanes = 2 + Configuration = "(H (2 [66] 3))" + End + Begin PaneConfiguration = 6 + NumPanes = 2 + Configuration = "(H (4 [50] 3))" + End + Begin PaneConfiguration = 7 + NumPanes = 1 + Configuration = "(V (3))" + End + Begin PaneConfiguration = 8 + NumPanes = 3 + Configuration = "(H (1[56] 4[18] 2) )" + End + Begin PaneConfiguration = 9 + NumPanes = 2 + Configuration = "(H (1 [75] 4))" + End + Begin PaneConfiguration = 10 + NumPanes = 2 + Configuration = "(H (1[66] 2) )" + End + Begin PaneConfiguration = 11 + NumPanes = 2 + Configuration = "(H (4 [60] 2))" + End + Begin PaneConfiguration = 12 + NumPanes = 1 + Configuration = "(H (1) )" + End + Begin PaneConfiguration = 13 + NumPanes = 1 + Configuration = "(V (4))" + End + Begin PaneConfiguration = 14 + NumPanes = 1 + Configuration = "(V (2))" + End + ActivePaneConfig = 0 + End + Begin DiagramPane = + Begin Origin = + Top = 0 + Left = 0 + End + Begin Tables = + Begin Table = "ElencoListePrelievo_AS" + Begin Extent = + Top = 6 + Left = 38 + Bottom = 367 + Right = 238 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "ElencoCartellini" + Begin Extent = + Top = 14 + Left = 658 + Bottom = 376 + Right = 828 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "RigheListePrelievo_AS" + Begin Extent = + Top = 5 + Left = 353 + Bottom = 200 + Right = 557 + End + DisplayFlags = 280 + TopColumn = 0 + End + End + End + Begin SQLPane = + End + Begin DataPane = + Begin ParameterDefaults = "" + End + Begin ColumnWidths = 15 + Width = 284 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + End + End + Begin CriteriaPane = + Begin ColumnWidths = 11 + Column = 1440 + Alias = 900 + Table = 1170 + Output = 720 + Append = 1400 + NewValue = 1170 + SortType = 1350 + SortOrder = 1410 + GroupBy = 1350 + Filter = 1350 + Or = 1350 + Or = 1350 + Or = 1350 + End + End +End +', 'SCHEMA', 'dbo', 'VIEW', 'v_datiPackingList' +go + +commit +go + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(291, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00299.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00299.sql new file mode 100644 index 00000000..ac1b8da1 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00299.sql @@ -0,0 +1,139 @@ +set xact_abort on +go + +begin transaction +go + +alter table AnagPosizioni add + IsRiattivaEnabled bit constraint DF_AnagPosizioni_IsRiattivaEnabled default (0) +go + +update AnagPosizioni set IsRiattivaEnabled=0 +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_riattivaUdc +* +* riattiva un dato UDC (da mag consumato negativo a corrispettivo positivo) --> se era positivo NON FA NULLA!!! (perchè uso ABS e controllo sia < 0) +* +* Steamware, S.E.L. +* mod: 2010.11.04 +* +****************************************/ +create PROCEDURE stp_riattivaUdc +( + @UDC VARCHAR(20), + @CodSoggetto NVARCHAR(17) +) +AS + +DECLARE @CodEvento VARCHAR(10) +DECLARE @CodTipoDichiaraz VARCHAR(1) + +SET @CodEvento = 'UDC_RIA' +SET @CodTipoDichiaraz = 'U' + +BEGIN TRAN + + -- faccio update + UPDATE ElencoCartellini + SET IdxPosizione = ABS(IdxPosizione), ModDate=GETDATE(), CodSoggetto = @CodSoggetto + WHERE UDC = @UDC AND IdxPosizione IN (SELECT IdxPosizione FROM AnagPosizioni WHERE (IsRiattivaEnabled = 1) +) + +COMMIT TRAN + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +UPDATE dbo.AnagPosizioni SET + IsRiattivaEnabled=1 + WHERE IdxPosizione=-84 +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.AnagTipoEvento + VALUES (N'UDC_COMP', N'Compensazione per rettifica UDC') +INSERT INTO dbo.AnagTipoEvento + VALUES (N'UDC_RIA', N'Riattivazione UDC x gestione (se cancellato)') +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_sbloccaUdc +* +* sblocca un dato UDC per modifica +* +* Steamware, S.E.L. +* mod: 2010.04.28 +* +****************************************/ +alter PROCEDURE stp_sbloccaUdc +( + @UDC VARCHAR(20), + @CodSoggetto NVARCHAR(17) +) +AS + +DECLARE @CodEvento VARCHAR(10) +DECLARE @CodTipoDichiaraz VARCHAR(1) + +SET @CodEvento = 'UDC_SBL' +SET @CodTipoDichiaraz = 'U' + +BEGIN TRAN + + -- faccio update + UPDATE ElencoCartellini + SET ModDate = GETDATE(), CodSoggetto = @CodSoggetto + WHERE UDC = @UDC + +COMMIT TRAN + +RETURN +go + +commit +go + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(299, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00305.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00305.sql new file mode 100644 index 00000000..278eff71 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00305.sql @@ -0,0 +1,204 @@ +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 diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00310.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00310.sql new file mode 100644 index 00000000..f6387866 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00310.sql @@ -0,0 +1,289 @@ +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 +* +****************************************/ +alter 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 tt.IdxPosizione + FROM TipoListaPrelievo tlp INNER JOIN TabTranPosizEventi tt ON tlp.CodEvento = tt.CodEvento + WHERE (tlp.CodTipoLista = @CodTipoLista)) + */ + + -- effettuo la selezione + SELECT * + FROM ElencoCartellini + WHERE (Particolare = @Particolare) AND (IdxPosizione IN (SELECT tt.IdxPosizione + FROM TipoListaPrelievo tlp INNER JOIN TabTranPosizEventi tt ON tlp.CodEvento = tt.CodEvento + WHERE (tlp.CodTipoLista = @CodTipoLista))) 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 + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_ParticolariOverviewPerListaPrelievo +* +* elenco di overview sull'impiego dei particolari (dettaglio a "maglie larghe") x una possibile lista di prelievo +* +* Steamware, S.E.L. +* mod: 2010.05.31 +* +****************************************/ +alter PROCEDURE stp_ParticolariOverviewPerListaPrelievo +( + @Particolare VARCHAR(50), + @CodCS VARCHAR(2), + @Esponente NVARCHAR(6), + @Figura NVARCHAR(4), + @CodImballo NVARCHAR(15), + @CodTipoLista NVARCHAR (10) +) +AS + /* + DECLARE @IdxPosizione AS INT + SET @IdxPosizione = (SELECT tt.IdxPosizione + FROM TipoListaPrelievo tlp INNER JOIN TabTranPosizEventi tt ON tlp.CodEvento = tt.CodEvento + WHERE (tlp.CodTipoLista = @CodTipoLista)) + */ + + SELECT RilPro.AnagParticolari.Particolare, RilPro.AnagParticolari.DescParticolare, ISNULL(COUNT(dbo.ElencoCartellini.UDC), 0) AS NumUDC, + ISNULL(SUM(dbo.ElencoCartellini.Qta), 0) AS TotQta, ISNULL(COUNT(dbo.PosizioneUdcCorrente.IdxCella), 0) AS NumInMag + FROM RilPro.AnagParticolari LEFT OUTER JOIN + dbo.ElencoCartellini ON RilPro.AnagParticolari.Particolare = dbo.ElencoCartellini.Particolare LEFT OUTER JOIN + dbo.PosizioneUdcCorrente ON dbo.ElencoCartellini.UDC = dbo.PosizioneUdcCorrente.UDC + WHERE RilPro.AnagParticolari.CodCS = @CodCS AND + RilPro.AnagParticolari.Particolare = @Particolare AND + (IdxPosizione IN (SELECT tt.IdxPosizione + FROM TipoListaPrelievo tlp INNER JOIN TabTranPosizEventi tt ON tlp.CodEvento = tt.CodEvento + WHERE (tlp.CodTipoLista = @CodTipoLista))) AND + (dbo.ElencoCartellini.Figura = CASE WHEN @Figura = '*' THEN dbo.ElencoCartellini.Figura ELSE @Figura END) AND + (dbo.ElencoCartellini.Esponente = CASE WHEN @Esponente = '*' THEN dbo.ElencoCartellini.Esponente ELSE @Esponente END) AND + (dbo.ElencoCartellini.CodImballo = CASE WHEN @CodImballo = '*' THEN dbo.ElencoCartellini.CodImballo ELSE @CodImballo END) + GROUP BY RilPro.AnagParticolari.Particolare, RilPro.AnagParticolari.DescParticolare + +RETURN +go + +commit +go + + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_riattivaUdc +* +* riattiva un dato UDC (da mag consumato negativo a corrispettivo positivo) --> se era positivo NON FA NULLA!!! (perchè uso ABS e controllo sia < 0) +* +* Steamware, S.E.L. +* mod: 2010.11.04 +* +****************************************/ +alter PROCEDURE stp_riattivaUdc +( + @UDC VARCHAR(20), + @CodSoggetto NVARCHAR(17) +) +AS + +DECLARE @CodEvento VARCHAR(10) +DECLARE @CodTipoDichiaraz VARCHAR(1) +DECLARE @IdxCella INT +DECLARE @CodCs NVARCHAR(2) + +SET @CodEvento = 'UDC_RIA' +SET @CodTipoDichiaraz = 'U' + +BEGIN TRAN + + -- faccio update posizione + UPDATE ElencoCartellini + SET IdxPosizione = ABS(IdxPosizione), ModDate=GETDATE(), CodSoggetto = @CodSoggetto + WHERE UDC = @UDC AND IdxPosizione IN (SELECT IdxPosizione FROM AnagPosizioni WHERE (IsRiattivaEnabled = 1) +) + + -- lo elimino da eventuali precedenti liste di prelievo sennò poi non potrei + prelevarlo + DELETE FROM RigheListePrelievo + WHERE UDC = @UDC + + -- imposto posizione CELLA corrente x l'udc nella prima libera + SET @IdxCella = (SELECT c.IdxCella FROM Celle c inner join Blocchi b ON c.IdxBlocco=b.IdxBlocco INNER JOIN ElencoCartellini e ON b.CodMag = CAST(e.IdxPosizione AS NVARCHAR(50)) WHERE e.UDC = @UDC) + SET @CodCs = (SELECT CodCs FROM ElencoCartellini WHERE UDC = @UDC) + INSERT INTO PosizioneUdcCorrente + VALUES(@Udc, @IdxCella, @CodCs, GETDATE()) + + +COMMIT TRAN + +RETURN +go + +commit +go + + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_UDC_updateIdxPosizione +* +* aggiorna un cartellino x la sua posizione logica +* +* Steamware, S.E.L. +* mod: 2010.06.12 +* +****************************************/ +alter PROCEDURE stp_UDC_updateIdxPosizione +( + @UDC VARCHAR(20), + @IdxPosizione INT +) +AS + + +------------------------------------------------------------------------------------------------------ +-- Ciclo principale x edit record +------------------------------------------------------------------------------------------------------ +BEGIN TRAN + + -- modifico il record + UPDATE ElencoCartellini + SET IdxPosizione = @IdxPosizione, 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 + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.AnagPosizioni + VALUES (-54, N'AM - FINITI consumati', 0) +go + +commit transaction +go + + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.AnagTipoEvento + VALUES (N'UDC_RITER', N'Richiesta UDC Rientro terzista') +go + +commit transaction +go + + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.TabTranPosizEventi + VALUES (N'UDC_CONS', 54, -54) +go + +commit transaction +go + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(310, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00315.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00315.sql new file mode 100644 index 00000000..5bc4ff14 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00315.sql @@ -0,0 +1,449 @@ +alter table PosizioneUdcStorico drop + constraint FK_PosizioneUdcStorico_ElencoCartellini +go + +alter table StoricoCartellini drop + constraint FK_StoricoEventi_ElencoCartellini +go + +set xact_abort on +go + +begin transaction +go + +UPDATE dbo.TabTranPosizEventi SET + IdxPosizioneTo=-84 + WHERE CodEvento=N'MagPreFus' and IdxPosizione=84 +go + +commit transaction +go + + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_anagFullParticolare +* +* ottiene il dettaglio delle specifiche di un particolare dato il suo codice A PARTIRE DALL'ANAGRAFICA COMPLETA +* +* Steamware, S.E.L. +* mod: 2010.11.17 +* +****************************************/ +create PROCEDURE stp_anagFullParticolare +( + @Particolare NVARCHAR(15) +) +AS + +SELECT * +FROM dbo.v_AnagDatiParticolari +WHERE Particolare=@Particolare + + +RETURN +go + +commit +go + + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_rettMovAs400 +* +* inserisce nella tabella per i trasferimenti batch verso magazzino AS una quantità di rettifica (con segno - )per UDC eventualmente già scaricati a sistema +* +* Steamware, S.E.L. +* mod: 2010.11.02 +* +****************************************/ +alter PROCEDURE stp_rettMovAs400 +( + @Particolare NVARCHAR(50), + @UDC NVARCHAR(20), + @CodMagAS NVARCHAR(50), + @Qta DECIMAL(10,2), + @CodEvento NVARCHAR(10) +) +AS + +BEGIN + + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + VALUES (GETDATE(), @CodEvento, @Particolare, @UDC, @CodMagAS, -@Qta) + +END + +RETURN +go + +commit +go + + + +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 puc INNER JOIN Celle c on puc.IdxCella=c.IdxCella INNER JOIN TipoCella tc ON c.IdxTipoCella=tc.IdxTipoCella WHERE tc.CodMag = 'OVAS') +ORDER BY UDC DESC + +RETURN +go + +commit +go + + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +alter VIEW v_AnagDatiParticolari +AS +SELECT DISTINCT + ISNULL(part.CodCliente, N'') AS CodCliente, ISNULL(Cli.RagSociale, N'') AS RagSociale, part.Particolare, part.DescParticolare, ISNULL(part.DisegnoGrezzo, N'') + AS DisegnoGrezzo, ISNULL(Espo.Esponente, N'') AS Esponente, ISNULL(Stamp.CodStampo, N'') AS CodStampo, ISNULL(Fig.Figura, N'') AS Figura +FROM RilPro.AnagParticolari AS part LEFT OUTER JOIN + RilPro.StampoArticolo AS Stamp ON part.Particolare = Stamp.Particolare LEFT OUTER JOIN + RilPro.StampoEsponente AS Espo ON Stamp.CodStampo = Espo.CodStampo LEFT OUTER JOIN + RilPro.StampoFigure AS Fig ON Stamp.CodStampo = Fig.CodStampo LEFT OUTER JOIN + RilPro.AnagClienti AS Cli ON part.CodCliente = Cli.CodCliente +go + +exec sp_addextendedproperty 'MS_DiagramPane1', '[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00] +Begin DesignProperties = + Begin PaneConfigurations = + Begin PaneConfiguration = 0 + NumPanes = 4 + Configuration = "(H (1[40] 4[20] 2[20] 3) )" + End + Begin PaneConfiguration = 1 + NumPanes = 3 + Configuration = "(H (1 [50] 4 [25] 3))" + End + Begin PaneConfiguration = 2 + NumPanes = 3 + Configuration = "(H (1 [50] 2 [25] 3))" + End + Begin PaneConfiguration = 3 + NumPanes = 3 + Configuration = "(H (4 [30] 2 [40] 3))" + End + Begin PaneConfiguration = 4 + NumPanes = 2 + Configuration = "(H (1 [56] 3))" + End + Begin PaneConfiguration = 5 + NumPanes = 2 + Configuration = "(H (2 [66] 3))" + End + Begin PaneConfiguration = 6 + NumPanes = 2 + Configuration = "(H (4 [50] 3))" + End + Begin PaneConfiguration = 7 + NumPanes = 1 + Configuration = "(V (3))" + End + Begin PaneConfiguration = 8 + NumPanes = 3 + Configuration = "(H (1[56] 4[18] 2) )" + End + Begin PaneConfiguration = 9 + NumPanes = 2 + Configuration = "(H (1 [75] 4))" + End + Begin PaneConfiguration = 10 + NumPanes = 2 + Configuration = "(H (1[66] 2) )" + End + Begin PaneConfiguration = 11 + NumPanes = 2 + Configuration = "(H (4 [60] 2))" + End + Begin PaneConfiguration = 12 + NumPanes = 1 + Configuration = "(H (1) )" + End + Begin PaneConfiguration = 13 + NumPanes = 1 + Configuration = "(V (4))" + End + Begin PaneConfiguration = 14 + NumPanes = 1 + Configuration = "(V (2))" + End + ActivePaneConfig = 0 + End + Begin DiagramPane = + Begin Origin = + Top = 0 + Left = 0 + End + Begin Tables = + Begin Table = "part" + Begin Extent = + Top = 6 + Left = 38 + Bottom = 135 + Right = 208 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "Stamp" + Begin Extent = + Top = 6 + Left = 246 + Bottom = 135 + Right = 421 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "Espo" + Begin Extent = + Top = 138 + Left = 38 + Bottom = 267 + Right = 208 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "Fig" + Begin Extent = + Top = 138 + Left = 246 + Bottom = 250 + Right = 416 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "Cli" + Begin Extent = + Top = 252 + Left = 246 + Bottom = 347 + Right = 416 + End + DisplayFlags = 280 + TopColumn = 0 + End + End + End + Begin SQLPane = + End + Begin DataPane = + Begin ParameterDefaults = "" + End + Begin ColumnWidths = 9 + Width = 284 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + End + End + Begin CriteriaPane = + Begin ColumnWidths = 11 + Column = 1440 + Alias = 900 + Table = 1170 + ', 'SCHEMA', 'dbo', 'VIEW', 'v_AnagDatiParticolari' +go + +exec sp_addextendedproperty 'MS_DiagramPane2', ' Output = 720 + Append = 1400 + NewValue = 1170 + SortType = 1350 + SortOrder = 1410 + GroupBy = 1350 + Filter = 1350 + Or = 1350 + Or = 1350 + Or = 1350 + End + End +End +', 'SCHEMA', 'dbo', 'VIEW', 'v_AnagDatiParticolari' +go + +exec sp_addextendedproperty 'MS_DiagramPaneCount', 2, 'SCHEMA', 'dbo', 'VIEW', 'v_AnagDatiParticolari' +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_processaSpedizTerz +* +* effettua la spedizione verso i terzisti, se deliberati è ok così, se non deliberati restano in posizione 305 da deliberare +* +* Steamware, S.E.L. +* mod: 2010.11.17 +* +****************************************/ +create PROCEDURE stp_processaSpedizTerz +AS + +-- UDC x cursore +DECLARE @UDC NVARCHAR(50) -- UDC SQL +-- evento da usare +DECLARE @CodEvento AS NVARCHAR(10) +SET @CodEvento = 'SpeWipTerz' + + + -- Dichiaro e carico il cursore + DECLARE Udc4Ter CURSOR LOCAL FOR + SELECT UDC FROM ElencoCartellini WHERE IdxPosizione IN (SELECT IdxPosizione FROM TabTranPosizEventi WHERE CodEvento = @CodEvento) + + OPEN Udc4Ter + FETCH NEXT FROM Udc4Ter + INTO @UDC + + WHILE @@FETCH_STATUS = 0 + BEGIN + -- processo gli UDC... + UPDATE ElencoCartellini + SET IdxPosizione = ttpe.IdxPosizioneTo + FROM ElencoCartellini ec INNER JOIN TabTranPosizEventi ttpe ON ec.IdxPosizione=ttpe.IdxPosizione + WHERE ec.UDC = @UDC AND ttpe.CodEvento = @CodEvento + + FETCH NEXT FROM Udc4Ter INTO @UDC + END + CLOSE Udc4Ter + DEALLOCATE Udc4Ter + +RETURN +go + +commit +go + + + +set xact_abort on +go + +begin transaction +go + +DELETE FROM dbo.TabTranPosizEventi WHERE CodEvento=N'SpeWipNoDe' and IdxPosizione=290 +DELETE FROM dbo.TabTranPosizEventi WHERE CodEvento=N'SpeWipOkDe' and IdxPosizione=295 +go + +commit transaction +go + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.AnagTipoEvento + VALUES (N'SpeWipTerz', N'Spedizione di materiale a terzisti') +DELETE FROM dbo.AnagTipoEvento WHERE CodEvento=N'SpeWipNoDe' +DELETE FROM dbo.AnagTipoEvento WHERE CodEvento=N'SpeWipOkDe' +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.TabTranPosizEventi + VALUES (N'SpeWipTerz', 290, 305) +INSERT INTO dbo.TabTranPosizEventi + VALUES (N'SpeWipTerz', 295, 300) +go + +commit transaction +go + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(315, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00320.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00320.sql new file mode 100644 index 00000000..e05fdb12 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00320.sql @@ -0,0 +1,207 @@ +set xact_abort on +go + +begin transaction +go + +DELETE FROM dbo.TabTranPosizEventi WHERE CodEvento=N'MagPreFus' and IdxPosizione=54 +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_getPosizioneByUdcIdxPosizione +* +* restituisce la posizione dell'udc dato codice udc e CodMag desiderato +* +* Steamware, S.E.L +* mod: 2010.11.19 +* +************************************/ +create PROCEDURE stp_getPosizioneByUdcCodMag +( + @UDC NVARCHAR(50), + @CodMag NVARCHAR(50) +) +AS + +SELECT puc.* +FROM PosizioneUdcCorrente puc INNER JOIN Celle c ON puc.IdxCella=c.IdxCella INNER JOIN Blocchi b ON c.IdxBlocco=b.IdxBlocco +where puc.UDC = @UDC AND b.CodMag = @CodMag +go + +commit +go + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +alter VIEW v_selMagLogico +AS +SELECT DISTINCT + TOP (100) PERCENT CAST(ec.IdxPosizione AS NVARCHAR(20)) AS value, 'Mag. ' + CAST(ec.IdxPosizione AS NVARCHAR(20)) AS label, ec.CodCS AS conditio +FROM dbo.ElencoCartellini AS ec INNER JOIN + dbo.AnagMag AS am ON CAST(ec.IdxPosizione AS NVARCHAR(50)) = am.CodMag +WHERE (ec.IdxPosizione > 0) +ORDER BY label +go + +exec sp_updateextendedproperty 'MS_DiagramPane1', '[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00] +Begin DesignProperties = + Begin PaneConfigurations = + Begin PaneConfiguration = 0 + NumPanes = 4 + Configuration = "(H (1[40] 4[20] 2[20] 3) )" + End + Begin PaneConfiguration = 1 + NumPanes = 3 + Configuration = "(H (1 [50] 4 [25] 3))" + End + Begin PaneConfiguration = 2 + NumPanes = 3 + Configuration = "(H (1 [50] 2 [25] 3))" + End + Begin PaneConfiguration = 3 + NumPanes = 3 + Configuration = "(H (4 [30] 2 [40] 3))" + End + Begin PaneConfiguration = 4 + NumPanes = 2 + Configuration = "(H (1 [56] 3))" + End + Begin PaneConfiguration = 5 + NumPanes = 2 + Configuration = "(H (2 [66] 3))" + End + Begin PaneConfiguration = 6 + NumPanes = 2 + Configuration = "(H (4 [50] 3))" + End + Begin PaneConfiguration = 7 + NumPanes = 1 + Configuration = "(V (3))" + End + Begin PaneConfiguration = 8 + NumPanes = 3 + Configuration = "(H (1[56] 4[18] 2) )" + End + Begin PaneConfiguration = 9 + NumPanes = 2 + Configuration = "(H (1 [75] 4))" + End + Begin PaneConfiguration = 10 + NumPanes = 2 + Configuration = "(H (1[66] 2) )" + End + Begin PaneConfiguration = 11 + NumPanes = 2 + Configuration = "(H (4 [60] 2))" + End + Begin PaneConfiguration = 12 + NumPanes = 1 + Configuration = "(H (1) )" + End + Begin PaneConfiguration = 13 + NumPanes = 1 + Configuration = "(V (4))" + End + Begin PaneConfiguration = 14 + NumPanes = 1 + Configuration = "(V (2))" + End + ActivePaneConfig = 0 + End + Begin DiagramPane = + Begin Origin = + Top = 0 + Left = 0 + End + Begin Tables = + Begin Table = "ec" + Begin Extent = + Top = 6 + Left = 38 + Bottom = 343 + Right = 208 + End + DisplayFlags = 280 + TopColumn = 0 + End + Begin Table = "am" + Begin Extent = + Top = 6 + Left = 294 + Bottom = 135 + Right = 464 + End + DisplayFlags = 280 + TopColumn = 0 + End + End + End + Begin SQLPane = + End + Begin DataPane = + Begin ParameterDefaults = "" + End + Begin ColumnWidths = 9 + Width = 284 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + End + End + Begin CriteriaPane = + Begin ColumnWidths = 11 + Column = 1440 + Alias = 900 + Table = 1170 + Output = 720 + Append = 1400 + NewValue = 1170 + SortType = 1350 + SortOrder = 1410 + GroupBy = 1350 + Filter = 1350 + Or = 1350 + Or = 1350 + Or = 1350 + End + End +End +', 'SCHEMA', 'dbo', 'VIEW', 'v_selMagLogico' +go + +commit +go + + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(320, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00325.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00325.sql new file mode 100644 index 00000000..828da465 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00325.sql @@ -0,0 +1,181 @@ +set xact_abort on +go + +begin transaction +go + +alter table TipoListaPrelievo add + toAs400 bit constraint DF_TipoListaPrelievo_toAs400 default (1) +go + +update TipoListaPrelievo set toAs400=1 +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 +* +****************************************/ +alter PROCEDURE stp_LP_exportToAs400 +( + @CodLista NVARCHAR(12) +) +AS + +BEGIN TRAN + + -- inizio con un controllo se devo processare verso AS400 la lista di prelievo... + DECLARE @toAs400 BIT + SET @toAs400 = (SELECT ISNULL(tlp.toAs400, 0) as valore + FROM TipoListaPrelievo AS tlp INNER JOIN ElencoListePrelievo AS elp ON tlp.CodTipoLista = elp.CodTipoLista + WHERE (elp.CodLista = @CodLista) + ) + + IF(@toAs400 > 0) + BEGIN + -- copio la lista (intestazione) + INSERT INTO ElencoListePrelievo_AS(CodLista, CodTipoLista, CodCS, DataCreaz, CodCliente, RagSociale, CodSoggetto, Particolare, DescParticolare, + DisegnoGrezzo, Esponente, Figura, CodImballo, QtaTot, CodStatoLista, Destinatario) + SELECT CodLista, CodTipoLista, CodCS, DataCreaz, CodCliente, RagSociale, CodSoggetto, Particolare, DescParticolare, + DisegnoGrezzo, Esponente, Figura, CodImballo, QtaTot, CodStatoLista, Destinatario + FROM ElencoListePrelievo + WHERE (CodLista = @CodLista) + + -- copio le righe lista di dettaglio + INSERT INTO RigheListePrelievo_AS(CodLista, UDC, Qta, Proposto, Prelevato) + SELECT CodLista, UDC, Qta, Proposto, Prelevato + 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) + END + + +COMMIT TRAN + +-- IMPORTANTE: in caso siano rimasti riferimenti ad un UDC scaricato in AS in altre liste di prelievo li tolgo in modo da "ripulirle" ed evitare che lo stesso UDC venga prelevato 2 volte... +DELETE RLP +FROM RigheListePrelievo RLP +INNER JOIN ElencoListePrelievo ELP + ON RLP.CodLista = ELP.CodLista +WHERE ELP.CodStatoLista < 4 AND RLP.CodLista <> @CodLista AND RLP.UDC IN ( + SELECT UDC + FROM RigheListePrelievo + WHERE (CodLista = @CodLista) AND Prelevato = 1 + ) + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +UPDATE dbo.TipoListaPrelievo SET + toAs400=0 + WHERE CodTipoLista=N'01-PreFus' +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.TabTranPosizEventi + VALUES (N'MagPreFus', 80, 80) +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_ParticolariOverviewPerListaPrelievo +* +* elenco di overview sull'impiego dei particolari (dettaglio a "maglie larghe") x una possibile lista di prelievo +* +* Steamware, S.E.L. +* mod: 2010.05.31 +* +****************************************/ +alter PROCEDURE stp_ParticolariOverviewPerListaPrelievo +( + @Particolare VARCHAR(50), + @CodCS VARCHAR(2), + @Esponente NVARCHAR(6), + @Figura NVARCHAR(4), + @CodImballo NVARCHAR(15), + @CodTipoLista NVARCHAR (10) +) +AS + /* + DECLARE @IdxPosizione AS INT + SET @IdxPosizione = (SELECT tt.IdxPosizione + FROM TipoListaPrelievo tlp INNER JOIN TabTranPosizEventi tt ON tlp.CodEvento = tt.CodEvento + WHERE (tlp.CodTipoLista = @CodTipoLista)) + */ + + SELECT RilPro.AnagParticolari.Particolare, RilPro.AnagParticolari.DescParticolare, ISNULL(COUNT(dbo.ElencoCartellini.UDC), 0) AS NumUDC, + ISNULL(SUM(dbo.ElencoCartellini.Qta), 0) AS TotQta, ISNULL(COUNT(dbo.PosizioneUdcCorrente.IdxCella), 0) AS NumInMag + FROM RilPro.AnagParticolari LEFT OUTER JOIN + dbo.ElencoCartellini ON RilPro.AnagParticolari.Particolare = dbo.ElencoCartellini.Particolare LEFT OUTER JOIN + dbo.PosizioneUdcCorrente ON dbo.ElencoCartellini.UDC = dbo.PosizioneUdcCorrente.UDC + WHERE RilPro.AnagParticolari.CodCS = @CodCS AND + RilPro.AnagParticolari.Particolare = @Particolare AND + (IdxPosizione IN (SELECT tt.IdxPosizione + FROM TipoListaPrelievo tlp INNER JOIN TabTranPosizEventi tt ON tlp.CodEvento = tt.CodEvento + WHERE (tlp.CodTipoLista = @CodTipoLista))) AND + (dbo.ElencoCartellini.Figura = CASE WHEN @Figura = '*' THEN dbo.ElencoCartellini.Figura ELSE @Figura END) AND + (dbo.ElencoCartellini.Esponente = CASE WHEN @Esponente = '*' THEN dbo.ElencoCartellini.Esponente ELSE @Esponente END) AND + (dbo.ElencoCartellini.CodImballo = CASE WHEN @CodImballo = '*' THEN dbo.ElencoCartellini.CodImballo ELSE @CodImballo END) + AND ElencoCartellini.UDC NOT IN ( + SELECT DISTINCT UDC + FROM RigheListePrelievo INNER JOIN ElencoListePrelievo + ON RigheListePrelievo.CodLista = ElencoListePrelievo.CodLista + WHERE (CodStatoLista > 1 AND Prelevato = 1) + ) + GROUP BY RilPro.AnagParticolari.Particolare, RilPro.AnagParticolari.DescParticolare + +RETURN +go + +commit +go + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(325, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00326.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00326.sql new file mode 100644 index 00000000..39b6fa8d --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00326.sql @@ -0,0 +1,305 @@ +set xact_abort on +go + +begin transaction +go + +alter table ElencoListePrelievo add + DestinatarioDescrizione nvarchar(50) +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_creaListaPrelievo +* +* crea un nuovo record nella ElencoListePrelievo e restituisce il codice ID appena creato +* +* Steamware, S.E.L. 8 (FROM Stintino) +* mod: 2010.07.30 +* +************************************/ +alter PROCEDURE stp_creaListaPrelievo +( + @Anno NVARCHAR(2), + @Mese NVARCHAR(2), + @CodTipoLista NVARCHAR(10), + @CodCS NCHAR(2), + @CodCliente NVARCHAR(6), + @RagSociale NVARCHAR(35), + @CodSoggetto NCHAR(17), + @Particolare NVARCHAR(15), + @DescParticolare NVARCHAR(30), + @DisegnoGrezzo NVARCHAR(30), + @Esponente NVARCHAR(6), + @Figura NVARCHAR(4), + @CodImballo NVARCHAR(15), + @QtaTot DECIMAL(10,2), + @Destinatario NVARCHAR(50), + @DestinatarioDescrizione NVARCHAR(50) +) +AS + +-- Dichiarazioni iniziali +DECLARE @CodLista AS NVARCHAR(12) +DECLARE @numLista AS INT +DECLARE @temp AS INT +DECLARE @ora AS DATETIME + +------------------------------------------------------------------------------------------------------ +-- codice lista di prelievo KAAMM00000 - K = start char, AA = anno, MM = mese, 00000 = progressivo +------------------------------------------------------------------------------------------------------ +-- controllo se ci sia già una lista di prelievo per company / flusso anno +BEGIN TRAN + -- cerco nella tab contatori liste prelievo l'ultimo valido + SET @numLista = ( + SELECT COUNT(*) + FROM ContatoriListePrelievo + WHERE CodCS = @CodCS + AND Anno = @Anno + AND Mese = @Mese + ) + -- controllo se record c'è... + IF(@numLista > 0) + BEGIN + -- se c'è incremento di 1 in tab + UPDATE ContatoriListePrelievo + SET LastIdx = LastIdx + 1 + WHERE CodCS = @CodCS + AND Anno = @Anno + AND Mese = @Mese + + END + ELSE + BEGIN + -- lo creo! + INSERT INTO ContatoriListePrelievo(CodCS, Anno, Mese, LastIdx) + VALUES (@CodCS, @Anno, @Mese, 1) + END + -- aggiorno numero lista prelievo + SET @numLista = ( + SELECT LastIdx + FROM ContatoriListePrelievo + WHERE CodCS = @CodCS + AND Anno = @Anno + AND Mese = @Mese + + ) +COMMIT TRAN +------------------------------------------------------------------------------------------------------ + +BEGIN TRAN + + ------------------------------------------------------------------------------------------------------ + -- Ciclo principale x inserimento nuovo record + ------------------------------------------------------------------------------------------------------ + -- ottengo il nuovo codice lista di prelievo completo + SET @CodLista = 'K' + @CodCS + @Anno + dbo.f_padLeft(CAST(@Mese AS NVARCHAR(2)), 2, '0') + + dbo.f_padLeft(CAST(@numLista AS NVARCHAR(5)), 5, '0') + + INSERT INTO ElencoListePrelievo + (CodLista, CodTipoLista, CodCS, DataCreaz, CodCliente, RagSociale, CodSoggetto, Particolare, DescParticolare, DisegnoGrezzo, Esponente, Figura, CodImballo, QtaTot, CodStatoLista, Destinatario, DestinatarioDescrizione) + VALUES (@CodLista, @CodTipoLista, @CodCS, GETDATE(), @CodCliente, @RagSociale, @CodSoggetto, @Particolare, @DescParticolare, @DisegnoGrezzo, @Esponente,@Figura, @CodImballo, @QtaTot, 0, @Destinatario, @DestinatarioDescrizione) + +COMMIT TRAN + +SELECT * FROM V_elencoListePrelievo WHERE CodLista = @CodLista; + +RETURN +go + +alter VIEW V_elencoListePrelievo +AS +SELECT TOP (100) PERCENT dbo.ElencoListePrelievo.CodLista, dbo.ElencoListePrelievo.CodTipoLista, dbo.ElencoListePrelievo.CodCS, dbo.ElencoListePrelievo.DataCreaz, + dbo.ElencoListePrelievo.CodCliente, dbo.ElencoListePrelievo.RagSociale, dbo.ElencoListePrelievo.CodSoggetto, dbo.ElencoListePrelievo.Particolare, + dbo.ElencoListePrelievo.DescParticolare, dbo.ElencoListePrelievo.DisegnoGrezzo, dbo.ElencoListePrelievo.Esponente, dbo.ElencoListePrelievo.Figura, + dbo.ElencoListePrelievo.CodImballo, dbo.ElencoListePrelievo.QtaTot, dbo.ElencoListePrelievo.CodStatoLista, ISNULL(dbo.v_righePrelevate.TotQta, 0) AS Prelevato, + dbo.ElencoListePrelievo.Destinatario, ISNULL(dbo.ElencoListePrelievo.DestinatarioDescrizione, N'nd') AS DestinatarioDescrizione +FROM dbo.ElencoListePrelievo LEFT OUTER JOIN + dbo.v_righePrelevate ON dbo.ElencoListePrelievo.CodLista = dbo.v_righePrelevate.CodLista +ORDER BY dbo.ElencoListePrelievo.DataCreaz DESC +go + +exec sp_updateextendedproperty 'MS_DiagramPane1', '[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00] +Begin DesignProperties = + Begin PaneConfigurations = + Begin PaneConfiguration = 0 + NumPanes = 4 + Configuration = "(H (1[40] 4[20] 2[20] 3) )" + End + Begin PaneConfiguration = 1 + NumPanes = 3 + Configuration = "(H (1 [50] 4 [25] 3))" + End + Begin PaneConfiguration = 2 + NumPanes = 3 + Configuration = "(H (1 [50] 2 [25] 3))" + End + Begin PaneConfiguration = 3 + NumPanes = 3 + Configuration = "(H (4 [30] 2 [40] 3))" + End + Begin PaneConfiguration = 4 + NumPanes = 2 + Configuration = "(H (1 [56] 3))" + End + Begin PaneConfiguration = 5 + NumPanes = 2 + Configuration = "(H (2 [66] 3))" + End + Begin PaneConfiguration = 6 + NumPanes = 2 + Configuration = "(H (4 [50] 3))" + End + Begin PaneConfiguration = 7 + NumPanes = 1 + Configuration = "(V (3))" + End + Begin PaneConfiguration = 8 + NumPanes = 3 + Configuration = "(H (1[56] 4[18] 2) )" + End + Begin PaneConfiguration = 9 + NumPanes = 2 + Configuration = "(H (1 [75] 4))" + End + Begin PaneConfiguration = 10 + NumPanes = 2 + Configuration = "(H (1[66] 2) )" + End + Begin PaneConfiguration = 11 + NumPanes = 2 + Configuration = "(H (4 [60] 2))" + End + Begin PaneConfiguration = 12 + NumPanes = 1 + Configuration = "(H (1) )" + End + Begin PaneConfiguration = 13 + NumPanes = 1 + Configuration = "(V (4))" + End + Begin PaneConfiguration = 14 + NumPanes = 1 + Configuration = "(V (2))" + End + ActivePaneConfig = 0 + End + Begin DiagramPane = + Begin Origin = + Top = 0 + Left = 0 + End + Begin Tables = + Begin Table = "ElencoListePrelievo" + Begin Extent = + Top = 6 + Left = 38 + Bottom = 350 + Right = 208 + End + DisplayFlags = 280 + TopColumn = 1 + End + Begin Table = "v_righePrelevate" + Begin Extent = + Top = 6 + Left = 454 + Bottom = 118 + Right = 624 + End + DisplayFlags = 280 + TopColumn = 0 + End + End + End + Begin SQLPane = + End + Begin DataPane = + Begin ParameterDefaults = "" + End + Begin ColumnWidths = 19 + Width = 284 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + End + End + Begin CriteriaPane = + Begin ColumnWidths = 11 + Column = 1440 + Alias = 900 + Table = 1170 + Output = 720 + Append = 1400 + NewValue = 1170 + SortType = 1350 + SortOrder = 1410 + GroupBy = 1350 + Filter = 1350 + Or = 1350 + Or = 1350 + Or = 1350 + End + End +End +', 'SCHEMA', 'dbo', 'VIEW', 'V_elencoListePrelievo' +go + +/*************************************** +* STORED stp_RLP_sbloccaNonPrelevate +* +* sblocca righe liste di prelievo ATTIVE x UDC non prelevati +* +* Steamware, S.E.L. +* mod: 2010.08.31 +* +****************************************/ +alter PROCEDURE stp_RLP_sbloccaNonPrelevate +( + @CodLista NVARCHAR(12), + @UDC NVARCHAR(50) +) +AS + +-- creo una CTE x le righe liste prelievo ATTIVE (escludo bozze e liste scaricate) - candidate per sblocco che NON fanno aprte della lista di prelievo attuale +WITH cteUdcRigheAttive AS ( + SELECT RLP.CodLista, RLP.UDC, RLP.Prelevato + FROM RigheListePrelievo AS RLP INNER JOIN ElencoListePrelievo AS ELP + ON RLP.CodLista = ELP.CodLista + WHERE (ELP.CodStatoLista BETWEEN 1 AND 3) AND RLP.Prelevato = 1 AND ELP.CodLista <> @CodLista + ) + +-- effettua "sblocco" delle righe liste prelievo che danno UDC prelevati ma che NON risultano +UPDATE cteUdcRigheAttive + SET Prelevato = 0 + WHERE UDC = @UDC + +RETURN +go + +commit +go + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(326, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00327.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00327.sql new file mode 100644 index 00000000..cc781990 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00327.sql @@ -0,0 +1,429 @@ +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +alter VIEW v_selUdcByPart +AS +SELECT UDC AS value, ISNULL(RTRIM(UDC), '-') + ' - ' + ISNULL(RTRIM(Particolare), '...') + ' (' + ISNULL(RTRIM(DescParticolare), '') + ') ' + ISNULL(RTRIM(DisegnoGrezzo), '-') + + ' pz. ' + ISNULL(CAST(Qta AS varchar), '0') AS label, Particolare, IdxPosizione, CodCS +FROM dbo.ElencoCartellini +WHERE (NOT (Particolare IS NULL)) AND (IdxPosizione >= 0) +go + +exec sp_updateextendedproperty 'MS_DiagramPane1', '[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00] +Begin DesignProperties = + Begin PaneConfigurations = + Begin PaneConfiguration = 0 + NumPanes = 4 + Configuration = "(H (1[40] 4[20] 2[20] 3) )" + End + Begin PaneConfiguration = 1 + NumPanes = 3 + Configuration = "(H (1 [50] 4 [25] 3))" + End + Begin PaneConfiguration = 2 + NumPanes = 3 + Configuration = "(H (1 [50] 2 [25] 3))" + End + Begin PaneConfiguration = 3 + NumPanes = 3 + Configuration = "(H (4 [30] 2 [40] 3))" + End + Begin PaneConfiguration = 4 + NumPanes = 2 + Configuration = "(H (1 [56] 3))" + End + Begin PaneConfiguration = 5 + NumPanes = 2 + Configuration = "(H (2 [66] 3))" + End + Begin PaneConfiguration = 6 + NumPanes = 2 + Configuration = "(H (4 [50] 3))" + End + Begin PaneConfiguration = 7 + NumPanes = 1 + Configuration = "(V (3))" + End + Begin PaneConfiguration = 8 + NumPanes = 3 + Configuration = "(H (1[56] 4[18] 2) )" + End + Begin PaneConfiguration = 9 + NumPanes = 2 + Configuration = "(H (1 [75] 4))" + End + Begin PaneConfiguration = 10 + NumPanes = 2 + Configuration = "(H (1[66] 2) )" + End + Begin PaneConfiguration = 11 + NumPanes = 2 + Configuration = "(H (4 [60] 2))" + End + Begin PaneConfiguration = 12 + NumPanes = 1 + Configuration = "(H (1) )" + End + Begin PaneConfiguration = 13 + NumPanes = 1 + Configuration = "(V (4))" + End + Begin PaneConfiguration = 14 + NumPanes = 1 + Configuration = "(V (2))" + End + ActivePaneConfig = 0 + End + Begin DiagramPane = + Begin Origin = + Top = 0 + Left = 0 + End + Begin Tables = + Begin Table = "ElencoCartellini" + Begin Extent = + Top = 6 + Left = 38 + Bottom = 319 + Right = 208 + End + DisplayFlags = 280 + TopColumn = 0 + End + End + End + Begin SQLPane = + End + Begin DataPane = + Begin ParameterDefaults = "" + End + Begin ColumnWidths = 9 + Width = 284 + Width = 1500 + Width = 8910 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + End + End + Begin CriteriaPane = + Begin ColumnWidths = 11 + Column = 1440 + Alias = 900 + Table = 1170 + Output = 720 + Append = 1400 + NewValue = 1170 + SortType = 1350 + SortOrder = 1410 + GroupBy = 1350 + Filter = 1350 + Or = 1350 + Or = 1350 + Or = 1350 + End + End +End +', 'SCHEMA', 'dbo', 'VIEW', 'v_selUdcByPart' +go + +commit +go + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_ParticolariOverviewPerListaPrelievo +* +* elenco di overview sull'impiego dei particolari (dettaglio a "maglie larghe") x una possibile lista di prelievo +* +* Steamware, S.E.L. +* mod: 2010.05.31 +* +****************************************/ +alter PROCEDURE stp_ParticolariOverviewPerListaPrelievo +( + @Particolare VARCHAR(50), + @CodCS VARCHAR(2), + @Esponente NVARCHAR(6), + @Figura NVARCHAR(4), + @CodImballo NVARCHAR(15), + @CodTipoLista NVARCHAR (10) +) +AS + SELECT RilPro.AnagParticolari.Particolare, RilPro.AnagParticolari.DescParticolare, ISNULL(COUNT(dbo.ElencoCartellini.UDC), 0) AS NumUDC, + ISNULL(SUM(dbo.ElencoCartellini.Qta), 0) AS TotQta, ISNULL(COUNT(dbo.PosizioneUdcCorrente.IdxCella), 0) AS NumInMag + FROM RilPro.AnagParticolari LEFT OUTER JOIN + dbo.ElencoCartellini ON RilPro.AnagParticolari.Particolare = dbo.ElencoCartellini.Particolare LEFT OUTER JOIN + dbo.PosizioneUdcCorrente ON dbo.ElencoCartellini.UDC = dbo.PosizioneUdcCorrente.UDC + WHERE RilPro.AnagParticolari.CodCS = @CodCS AND + RilPro.AnagParticolari.Particolare = @Particolare AND + (IdxPosizione IN (SELECT tt.IdxPosizione + FROM TipoListaPrelievo tlp INNER JOIN TabTranPosizEventi tt ON tlp.CodEvento = tt.CodEvento + WHERE (tlp.CodTipoLista = @CodTipoLista))) AND + (dbo.ElencoCartellini.Figura = CASE WHEN @Figura = '*' THEN dbo.ElencoCartellini.Figura ELSE @Figura END) AND + (dbo.ElencoCartellini.Esponente = CASE WHEN @Esponente = '*' THEN dbo.ElencoCartellini.Esponente ELSE @Esponente END) AND + (dbo.ElencoCartellini.CodImballo = CASE WHEN @CodImballo = '*' THEN dbo.ElencoCartellini.CodImballo ELSE @CodImballo END) + /* + AND ElencoCartellini.UDC NOT IN ( + SELECT DISTINCT UDC + FROM RigheListePrelievo INNER JOIN ElencoListePrelievo + ON RigheListePrelievo.CodLista = ElencoListePrelievo.CodLista + WHERE (CodStatoLista > 1 AND Prelevato = 1) + ) + */ + GROUP BY RilPro.AnagParticolari.Particolare, RilPro.AnagParticolari.DescParticolare + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_ParticolariOverviewPerListaPrelievo +* +* elenco degli UDC x lista di prelievo e particolare +* +* Steamware, S.E.L. +* mod: 2010.11.26 +* +****************************************/ +create PROCEDURE stp_UdcPerParticolareCodLista +( + @Particolare VARCHAR(50), + @CodCS VARCHAR(2), + @CodTipoLista NVARCHAR (10) +) +AS + SELECT * + FROM v_selUdcByPart + WHERE (Particolare = @Particolare) AND (CodCS = @CodCS) + AND (IdxPosizione IN (SELECT tt.IdxPosizione + FROM TipoListaPrelievo tlp INNER JOIN TabTranPosizEventi tt ON tlp.CodEvento = tt.CodEvento + WHERE (tlp.CodTipoLista = @CodTipoLista))) + + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +alter table TabTranPosizEventi add + toAs400 bit constraint DF_TabTranPosizEventi_toAs400 default (1) +go + +update TabTranPosizEventi set toAs400=1 +go + +set ANSI_NULLS on +go + +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2009-09-20 +-- Description: trigger x inserimento movimenti +-- nella coda di trasferimento batch +-- verso AS400 x UPDATE UDC +-- ============================================= +alter TRIGGER trg_updMovAS + ON ElencoCartellini + AFTER UPDATE +AS +BEGIN + + -- setup variabili e verbosità + SET NOCOUNT ON; + DECLARE @partOk AS BIT + DECLARE @IdxPosFrom AS INT + DECLARE @IdxPosTo AS INT + DECLARE @magFrom AS NVARCHAR(50) + DECLARE @magTo AS NVARCHAR(50) + DECLARE @qta AS DECIMAL(10,2) + DECLARE @qtaOld AS DECIMAL(10,2) + DECLARE @IdxPosizioneComp INT + DECLARE @toAs400 BIT + + -- controllo che CI SIA il particolare (altrimenti non eseguo) + SET @partOk = (SELECT CASE WHEN ISNULL(Particolare,'n.d.') = 'n.d.' THEN 0 ELSE 1 END FROM deleted) + + IF(@partOk = 1) + SET @qta = (SELECT Qta FROM inserted) + SET @qtaOld = (SELECT Qta FROM deleted) + -- se c'è stata modifica di quantità inizio a rettificare quella + IF ((UPDATE(Qta)) AND(@qta <> @qtaOld)) + BEGIN + -- registro il VERO movimento + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOD', Particolare, UDC, CAST(IdxPosizione AS NVARCHAR(50)), @qta - Qta + FROM deleted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + -- controllo: se il magazzino di destinazione richiede una compensazione registro il 2° movimento di compensazione + SET @IdxPosFrom = (SELECT IdxPosizione FROM deleted) + SET @IdxPosTo = (SELECT IdxPosizione FROM inserted) + -- calcolo il mag di compensazione + SET @IdxPosizioneComp = (SELECT CAST(ISNULL(CodMagAS_compensaz,0) AS INT) FROM AS400_MagCont WHERE (Attivo = 1) AND (CodMagAS = CAST(@IdxPosFrom AS NVARCHAR(50)))) + IF (@IdxPosizioneComp > 0) + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_COMP', Particolare, UDC, CAST(@IdxPosizioneComp AS NVARCHAR(50)), Qta - @qta + FROM deleted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + END + + -- Prendo le posizioni di magazzino precedente e nuova + SET @IdxPosFrom = (SELECT IdxPosizione FROM deleted) + SET @IdxPosTo = (SELECT IdxPosizione FROM inserted) + + -- controllo se devo fare rettifiche quantità... + SET @toAs400 = ( + SELECT TOP 1 ISNULL(toAs400, 0) as valore + FROM TabTranPosizEventi + WHERE IdxPosizione = @IdxPosFrom AND IdxPosizioneTo = @IdxPosTo + ) + + -- controllo poi se sia cambiato il magazzino logico (IdxPosizione) e si richieda update verso AS400, altrimenti non lo inserisco + IF ((UPDATE(IdxPosizione)) AND @toAs400 = 1) + BEGIN + -- Le trasformo nelle equivalenti stringhe del codMag SE attive + SET @magFrom = (SELECT ISNULL(CodMagAS,'---') FROM AS400_MagCont WHERE Attivo = 1 AND CodMagAs = CAST(@IdxPosFrom AS NVARCHAR(50))) + SET @magTo = (SELECT ISNULL(CodMagAS,'---') FROM AS400_MagCont WHERE Attivo = 1 AND CodMagAs = CAST(@IdxPosTo AS NVARCHAR(50))) + + -- inserisco un movimento di deposito verso mag nuovo (SE attivo) + IF (@magFrom <> '---') + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOV', Particolare, UDC, CAST(IdxPosizione AS NVARCHAR(50)), -@qta + FROM deleted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + -- inserisco un movimento di prelievo verso mag vecchio (SE attivo) + IF (@magTo <> '---') + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOV', Particolare, UDC, CAST(IdxPosizione AS NVARCHAR(50)), @qta + FROM inserted + WHERE CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + END + +END +go + +commit +go + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.AnagTipoEvento + VALUES (N'UDC_RIEN', N'Rientro UDC da 88') +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +UPDATE dbo.TabTranPosizEventi SET + toAs400=0 + WHERE CodEvento=N'DelWipPost' and IdxPosizione=305 +UPDATE dbo.TabTranPosizEventi SET + toAs400=0 + WHERE CodEvento=N'DelWipPre' and IdxPosizione=290 +UPDATE dbo.TabTranPosizEventi SET + toAs400=0 + WHERE CodEvento=N'MagPreFin' and IdxPosizione=54 +UPDATE dbo.TabTranPosizEventi SET + toAs400=0 + WHERE CodEvento=N'MagPreFus' and IdxPosizione=80 +UPDATE dbo.TabTranPosizEventi SET + toAs400=0 + WHERE CodEvento=N'MagPreFus' and IdxPosizione=84 +UPDATE dbo.TabTranPosizEventi SET + toAs400=0 + WHERE CodEvento=N'MagPreWip' and IdxPosizione=84 +UPDATE dbo.TabTranPosizEventi SET + toAs400=0 + WHERE CodEvento=N'SpeWipTerz' and IdxPosizione=290 +UPDATE dbo.TabTranPosizEventi SET + toAs400=0 + WHERE CodEvento=N'SpeWipTerz' and IdxPosizione=295 +UPDATE dbo.TabTranPosizEventi SET + toAs400=0 + WHERE CodEvento=N'UDC_CONS' and IdxPosizione=54 +UPDATE dbo.TabTranPosizEventi SET + toAs400=0 + WHERE CodEvento=N'UDC_CONS' and IdxPosizione=56 +UPDATE dbo.TabTranPosizEventi SET + toAs400=0 + WHERE CodEvento=N'UDC_CONS' and IdxPosizione=84 +INSERT INTO dbo.TabTranPosizEventi + VALUES (N'UDC_RIEN', 88, 84, 1) +go + +commit transaction +go + + + + + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(327, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00335.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00335.sql new file mode 100644 index 00000000..8753fa20 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00335.sql @@ -0,0 +1,525 @@ +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.09.28 +* +****************************************/ +alter PROCEDURE stp_scaricaUdc +( + @UDC VARCHAR(50), + @IdxCellaFrom INT, + @IdxPosizione INT +) +AS + +BEGIN TRAN + -- 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, ModDate = GETDATE() + WHERE UDC = @UDC + +COMMIT TRAN + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_UDC_delibera +* +* fa la delibera dell'UDC andando a processare la state machien e quindi eventualmente cambiando la sua posizione +* +* Steamware, S.E.L. +* mod: 2010.09.13 +* +************************************/ +alter PROCEDURE stp_UDC_delibera +( + @CodTipoDelibera NVARCHAR(50), + @UDC NVARCHAR(50), + @CodSoggetto NVARCHAR(17), + @CodCS VARCHAR(2) +) + +AS + +BEGIN TRAN + DECLARE @IdxPosizioneTo AS INT + DECLARE @IdxPosizioneFrom AS INT + DECLARE @IdxPosizionePre AS NVARCHAR(50) + DECLARE @IdxCellaPre AS INT + DECLARE @IdxCellaTo AS INT + + -- ricavo cella ATTUALE + SET @IdxCellaPre = (SELECT IdxCella FROM PosizioneUdcCorrente WHERE UDC = @UDC) + + -- ricavo posizione ATTUALE + SET @IdxPosizionePre = (SELECT TOP 1 b.CodMag FROM Celle c INNER JOIN Blocchi b ON c.IdxBlocco=b.IdxBlocco WHERE c.IdxCella = @IdxCellaPre) + + + -- registro delibera + INSERT INTO DELIBERE + VALUES (@CodTipoDelibera, @UDC, GETDATE(), @CodSoggetto) + + -- ricavo nuova posizione + SET @IdxPosizioneTo = (SELECT tt.IdxPosizioneTo + FROM TabTranPosizEventi tt INNER JOIN AnagTipoDelibere atd ON tt.CodEvento = atd.CodEvento + WHERE (atd.CodTipoDelibera = @CodTipoDelibera)) + + -- ricavo posizione TEORICA VECCHIA + SET @IdxPosizioneFrom = (SELECT tt.IdxPosizione + FROM TabTranPosizEventi tt INNER JOIN AnagTipoDelibere atd ON tt.CodEvento = atd.CodEvento + WHERE (atd.CodTipoDelibera = @CodTipoDelibera)) + + -- calcolo la prima cella della nuova posizione... + SET @IdxCellaTo = ( + SELECT TOP 1 IdxCella FROM Celle + WHERE IdxBlocco = ( + SELECT IdxBlocco FROM Blocchi + WHERE CodMag=CAST(@IdxPosizioneTo AS NVARCHAR(50))) + ) + + -- faccio update posizione + UPDATE ElencoCartellini + SET IdxPosizione = @IdxPosizioneTo, ModDate = GETDATE() + WHERE UDC = @UDC + + -- controllo posizioni actual e from teorica: SE e SOLO SE corrispondono faccio spostamento... + IF(CAST(@IdxPosizioneFrom AS NVARCHAR(50)) = @IdxPosizionePre) + BEGIN + -- ora cambio anche la posizione corrente dell'UDC (e tramite trigger storicizza...) + EXEC stp_spostaUdc @CodCS, @UDC, @IdxCellaTo + END + +COMMIT TRAN + + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_ParticolariOverview +* +* elenco di overview sull'impiego dei particolari (dettaglio a "maglie larghe") +* +* Steamware, S.E.L. +* mod: 2010.05.31 +* +****************************************/ +alter PROCEDURE stp_ParticolariOverview +( + @searchVal VARCHAR(50), + @CodCS VARCHAR(2) +) +AS + + SELECT RilPro.AnagParticolari.Particolare, RilPro.AnagParticolari.DescParticolare, ISNULL(COUNT(dbo.ElencoCartellini.UDC), 0) AS NumUDC, + ISNULL(SUM(dbo.ElencoCartellini.Qta), 0) AS TotQta, ISNULL(COUNT(dbo.PosizioneUdcCorrente.IdxCella), 0) AS NumInMag + FROM RilPro.AnagParticolari LEFT OUTER JOIN + dbo.ElencoCartellini ON RilPro.AnagParticolari.Particolare = dbo.ElencoCartellini.Particolare LEFT OUTER JOIN + dbo.PosizioneUdcCorrente ON dbo.ElencoCartellini.UDC = dbo.PosizioneUdcCorrente.UDC + WHERE RilPro.AnagParticolari.CodCS = @CodCS AND RilPro.AnagParticolari.Particolare = @searchVal + AND ElencoCartellini.IdxPosizione >= 0 -- vincolo posizioni mag attive + GROUP BY RilPro.AnagParticolari.Particolare, RilPro.AnagParticolari.DescParticolare + +RETURN +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 + '%')) + AND ElencoCartellini.IdxPosizione >= 0 -- vincolo posizioni mag attive + GROUP BY RilPro.AnagParticolari.Particolare, RilPro.AnagParticolari.DescParticolare + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_paretoDettMagByParticolare +* +* restituisce elenco giacenze a magazzino in logica pareto (quantità) per un dato particolare +* +* Steamware, S.E.L. +* mod: 2010.06.04 +* +****************************************/ +alter PROCEDURE stp_paretoDettMagByParticolare +( + @CodCS VARCHAR(2), + @Particolare VARCHAR(20) +) +AS + + SELECT TOP (100) PERCENT am.CodCS, am.CodMag, am.DescMag, b.IdxBlocco, b.CodBlocco, ec.Particolare, + ec.Esponente, COUNT(puc.UDC) AS NumUDC, ISNULL(MIN(puc.DataRif), + GETDATE()) AS Oldest, ISNULL(MAX(puc.DataRif), GETDATE()) AS Newest, SUM(ec.Qta) AS QtaTotPz, + asp.DescStato, ec.IdxPosizione AS CodMagLog + FROM AnagMag am INNER JOIN + Blocchi b ON am.CodMag = b.CodMag AND am.CodCS = b.CodCS INNER JOIN + Celle c INNER JOIN + ElencoCartellini ec LEFT OUTER JOIN + PosizioneUdcCorrente puc ON ec.UDC = puc.UDC ON c.IdxCella = puc.IdxCella ON + b.IdxBlocco = c.IdxBlocco INNER JOIN + AnagStatiProdotto asp ON ec.CodStato = asp.CodStato + WHERE (c.Attiva = 1) AND (am.CodCS = @CodCS) AND (ec.Particolare = @Particolare) + GROUP BY am.CodCS, am.CodMag, am.DescMag, b.IdxBlocco, b.CodBlocco, b.NumX, b.NumY, b.NumZ, + ec.Particolare, ec.Esponente, ec.IdxPosizione, asp.DescStato + ORDER BY QtaTotPz DESC + + +RETURN +go + +commit +go + + +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 +* +****************************************/ +alter PROCEDURE stp_spostaUdc +( + @CodCS VARCHAR(2), + @UDC VARCHAR(50), + @IdxCellaTo INT +) +AS + +BEGIN TRAN + + -- DICHIARAZIONI iniziali variabili + DECLARE @IdxCellaFrom INT + DECLARE @capienza INT + DECLARE @numUdc INT + + -- controllo cella di partenza + SET @IdxCellaFrom = (SELECT IdxCella FROM PosizioneUdcCorrente WHERE UDC = @UDC) + -- controllo se la cella di dest vada indicata come piena + SET @capienza = ( + SELECT tc.Capienza + FROM TipoCella TC INNER JOIN Celle c ON TC.IdxTipoCella=c.IdxTipoCella + WHERE c.IdxCella = @IdxCellaFrom + ) + SET @numUdc = (SELECT COUNT(*) FROM PosizioneUdcCorrente WHERE IdxCella = @IdxCellaFrom) + -- se capienza raggiunta aggiorno... + IF(@numUdc -1 < @capienza) + BEGIN + EXEC stp_celle_updPiena @IdxCellaFrom, 0 + END + + -- cancello posizione occupata + DELETE + FROM PosizioneUdcCorrente + WHERE UDC = @UDC + + -- cancello eventuali righe liste di prelievo FUSI per l'UDC + DELETE FROM RigheListePrelievo + WHERE UDC = @UDC AND CodLista IN ( + SELECT CodLista FROM ElencoListePrelievo + WHERE CodTipoLista='01-PreFus' + ) + + + + -- creo una nuova posizione per l'UDC + INSERT INTO PosizioneUdcCorrente(UDC, IdxCella, CodCS, DataRif) + VALUES(@UDC, @IdxCellaTo, @CodCS, GETDATE()) + + -- controllo se la cella di dest vada indicata come piena + SET @capienza = ( + SELECT tc.Capienza + FROM TipoCella TC INNER JOIN Celle c ON TC.IdxTipoCella=c.IdxTipoCella + WHERE c.IdxCella = @IdxCellaTo + ) + SET @numUdc = (SELECT COUNT(*) FROM PosizioneUdcCorrente WHERE IdxCella = @IdxCellaTo) + -- se capienza raggiunta aggiorno... + IF(@numUdc >= @capienza) + BEGIN + EXEC stp_celle_updPiena @IdxCellaTo, 1 + END + +COMMIT TRAN + +RETURN +go + +commit +go + +set xact_abort on +go + +begin transaction +go + +DELETE FROM dbo.TabTranPosizEventi WHERE CodEvento=N'UDC_RIEN' and IdxPosizione=88 +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.AnagTipoEvento + VALUES (N'UDC_RIEN54', N'Rientro UDC da 88 a 54') +INSERT INTO dbo.AnagTipoEvento + VALUES (N'UDC_RIEN84', N'Rientro UDC da 88 a 84') +DELETE FROM dbo.AnagTipoEvento WHERE CodEvento=N'UDC_RIEN' +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.TabTranPosizEventi + VALUES (N'UDC_RIEN54', 88, 54, 1) +INSERT INTO dbo.TabTranPosizEventi + VALUES (N'UDC_RIEN84', 88, 84, 1) +go + +commit transaction +go + + +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 +* +****************************************/ +alter PROCEDURE stp_spostaUdc +( + @CodCS VARCHAR(2), + @UDC VARCHAR(50), + @IdxCellaTo INT, + @resetRLP BIT +) +AS + +BEGIN TRAN + + -- DICHIARAZIONI iniziali variabili + DECLARE @IdxCellaFrom INT + DECLARE @capienza INT + DECLARE @numUdc INT + + -- controllo cella di partenza + SET @IdxCellaFrom = (SELECT IdxCella FROM PosizioneUdcCorrente WHERE UDC = @UDC) + -- controllo se la cella di dest vada indicata come piena + SET @capienza = ( + SELECT tc.Capienza + FROM TipoCella TC INNER JOIN Celle c ON TC.IdxTipoCella=c.IdxTipoCella + WHERE c.IdxCella = @IdxCellaFrom + ) + SET @numUdc = (SELECT COUNT(*) FROM PosizioneUdcCorrente WHERE IdxCella = @IdxCellaFrom) + -- se capienza raggiunta aggiorno... + IF(@numUdc -1 < @capienza) + BEGIN + EXEC stp_celle_updPiena @IdxCellaFrom, 0 + END + + -- cancello posizione occupata + DELETE + FROM PosizioneUdcCorrente + WHERE UDC = @UDC + + -- SE RICHIESTO cancello eventuali righe liste di prelievo FUSI per l'UDC + IF(@resetRLP = 1) + BEGIN + DELETE FROM RigheListePrelievo + WHERE UDC = @UDC AND CodLista IN ( + SELECT CodLista FROM ElencoListePrelievo + WHERE CodTipoLista='01-PreFus' + ) + END + + + + -- creo una nuova posizione per l'UDC + INSERT INTO PosizioneUdcCorrente(UDC, IdxCella, CodCS, DataRif) + VALUES(@UDC, @IdxCellaTo, @CodCS, GETDATE()) + + -- controllo se la cella di dest vada indicata come piena + SET @capienza = ( + SELECT tc.Capienza + FROM TipoCella TC INNER JOIN Celle c ON TC.IdxTipoCella=c.IdxTipoCella + WHERE c.IdxCella = @IdxCellaTo + ) + SET @numUdc = (SELECT COUNT(*) FROM PosizioneUdcCorrente WHERE IdxCella = @IdxCellaTo) + -- se capienza raggiunta aggiorno... + IF(@numUdc >= @capienza) + BEGIN + EXEC stp_celle_updPiena @IdxCellaTo, 1 + END + +COMMIT TRAN + +RETURN +go + +commit +go + + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_annullaUDC +* +* annulla un UDC +* +* Steamware, S.E.L. +* mod: 2010.04.28 +* +****************************************/ +alter PROCEDURE stp_annullaUDC +( + @UDC VARCHAR(20), + @CodSoggetto VARCHAR(17) +) +AS + +BEGIN TRAN + + -- faccio update + UPDATE ElencoCartellini + SET IdxPosizione = 0, ModDate = GETDATE() + WHERE UDC = @UDC + + +COMMIT TRAN + +RETURN +go + +commit +go + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(335, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00336.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00336.sql new file mode 100644 index 00000000..cdfe2422 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00336.sql @@ -0,0 +1,125 @@ +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_getRigaPrelievoByCodListaPrelevate +* restituisce elenco delle SOLE righe prelevate (UDC) +* +* Steamware, S.E.L. +* mod: 2010.12.10 +* +************************************/ +create PROCEDURE stp_getRigaPrelievoByCodListaPrelevate +( + @CodLista NVARCHAR(12) +) +AS + +SELECT * +FROM RigheListePrelievo +WHERE (CodLista = @CodLista) AND Prelevato = 1 +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_UDC_delibera +* +* fa la delibera dell'UDC andando a processare la state machien e quindi eventualmente cambiando la sua posizione +* +* Steamware, S.E.L. +* mod: 2010.09.13 +* +************************************/ +alter PROCEDURE stp_UDC_delibera +( + @CodTipoDelibera NVARCHAR(50), + @UDC NVARCHAR(50), + @CodSoggetto NVARCHAR(17), + @CodCS VARCHAR(2) +) + +AS + +BEGIN TRAN + DECLARE @IdxPosizioneTo AS INT + DECLARE @IdxPosizioneFrom AS INT + DECLARE @IdxPosizionePre AS NVARCHAR(50) + DECLARE @IdxCellaPre AS INT + DECLARE @IdxCellaTo AS INT + + -- ricavo cella ATTUALE + SET @IdxCellaPre = (SELECT IdxCella FROM PosizioneUdcCorrente WHERE UDC = @UDC) + + -- ricavo posizione ATTUALE + SET @IdxPosizionePre = (SELECT TOP 1 b.CodMag FROM Celle c INNER JOIN Blocchi b ON c.IdxBlocco=b.IdxBlocco WHERE c.IdxCella = @IdxCellaPre) + + + -- registro delibera + INSERT INTO DELIBERE + VALUES (@CodTipoDelibera, @UDC, GETDATE(), @CodSoggetto) + + -- ricavo nuova posizione + SET @IdxPosizioneTo = (SELECT tt.IdxPosizioneTo + FROM TabTranPosizEventi tt INNER JOIN AnagTipoDelibere atd ON tt.CodEvento = atd.CodEvento + WHERE (atd.CodTipoDelibera = @CodTipoDelibera)) + + -- ricavo posizione TEORICA VECCHIA + SET @IdxPosizioneFrom = (SELECT tt.IdxPosizione + FROM TabTranPosizEventi tt INNER JOIN AnagTipoDelibere atd ON tt.CodEvento = atd.CodEvento + WHERE (atd.CodTipoDelibera = @CodTipoDelibera)) + + -- calcolo la prima cella della nuova posizione... + SET @IdxCellaTo = ( + SELECT TOP 1 IdxCella FROM Celle + WHERE IdxBlocco = ( + SELECT IdxBlocco FROM Blocchi + WHERE CodMag=CAST(@IdxPosizioneTo AS NVARCHAR(50))) + ) + + -- faccio update posizione + UPDATE ElencoCartellini + SET IdxPosizione = @IdxPosizioneTo, ModDate = GETDATE() + WHERE UDC = @UDC + + -- controllo posizioni actual e from teorica: SE e SOLO SE corrispondono faccio spostamento... + IF(CAST(@IdxPosizioneFrom AS NVARCHAR(50)) = @IdxPosizionePre) + BEGIN + -- ora cambio anche la posizione corrente dell'UDC (e tramite trigger storicizza...) + EXEC stp_spostaUdc @CodCS, @UDC, @IdxCellaTo, 0 + END + +COMMIT TRAN + + +RETURN +go + +commit +go + + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(336, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00340.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00340.sql new file mode 100644 index 00000000..87c61ff0 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00340.sql @@ -0,0 +1,286 @@ +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +alter VIEW v_selDestinatariListePrelievo +AS +SELECT CAST('*' AS NVARCHAR(6)) AS value, CAST('*' AS NVARCHAR(50)) AS label, '01-PreFus' AS conditio +UNION +SELECT CAST(CodCliente AS NVARCHAR(6)) AS value, CAST(CodCliente AS NVARCHAR(6)) + ' - ' + CAST(RagSociale AS NVARCHAR(50)) AS label, '02-PreCli' AS conditio +FROM RilPro.AnagClienti +UNION +SELECT CAST(CodTerzista AS NVARCHAR(6)) AS value, CAST(CodTerzista AS NVARCHAR(6)) + ' - ' + CAST(DescTerzista AS NVARCHAR(50)) AS label, '03-TerWip' AS conditio +FROM RilPro.AnagDepositi +go + +exec sp_updateextendedproperty 'MS_DiagramPane1', '[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00] +Begin DesignProperties = + Begin PaneConfigurations = + Begin PaneConfiguration = 0 + NumPanes = 4 + Configuration = "(H (1[19] 4[25] 2[19] 3) )" + End + Begin PaneConfiguration = 1 + NumPanes = 3 + Configuration = "(H (1 [50] 4 [25] 3))" + End + Begin PaneConfiguration = 2 + NumPanes = 3 + Configuration = "(H (1 [50] 2 [25] 3))" + End + Begin PaneConfiguration = 3 + NumPanes = 3 + Configuration = "(H (4 [30] 2 [40] 3))" + End + Begin PaneConfiguration = 4 + NumPanes = 2 + Configuration = "(H (1 [56] 3))" + End + Begin PaneConfiguration = 5 + NumPanes = 2 + Configuration = "(H (2 [66] 3))" + End + Begin PaneConfiguration = 6 + NumPanes = 2 + Configuration = "(H (4 [50] 3))" + End + Begin PaneConfiguration = 7 + NumPanes = 1 + Configuration = "(V (3))" + End + Begin PaneConfiguration = 8 + NumPanes = 3 + Configuration = "(H (1[56] 4[18] 2) )" + End + Begin PaneConfiguration = 9 + NumPanes = 2 + Configuration = "(H (1 [75] 4))" + End + Begin PaneConfiguration = 10 + NumPanes = 2 + Configuration = "(H (1[66] 2) )" + End + Begin PaneConfiguration = 11 + NumPanes = 2 + Configuration = "(H (4 [60] 2))" + End + Begin PaneConfiguration = 12 + NumPanes = 1 + Configuration = "(H (1) )" + End + Begin PaneConfiguration = 13 + NumPanes = 1 + Configuration = "(V (4))" + End + Begin PaneConfiguration = 14 + NumPanes = 1 + Configuration = "(V (2))" + End + ActivePaneConfig = 0 + End + Begin DiagramPane = + Begin Origin = + Top = 0 + Left = 0 + End + Begin Tables = + End + End + Begin SQLPane = + End + Begin DataPane = + Begin ParameterDefaults = "" + End + Begin ColumnWidths = 9 + Width = 284 + Width = 1500 + Width = 3360 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + End + End + Begin CriteriaPane = + Begin ColumnWidths = 11 + Column = 1440 + Alias = 900 + Table = 1170 + Output = 720 + Append = 1400 + NewValue = 1170 + SortType = 1350 + SortOrder = 1410 + GroupBy = 1350 + Filter = 1350 + Or = 1350 + Or = 1350 + Or = 1350 + End + End +End +', 'SCHEMA', 'dbo', 'VIEW', 'v_selDestinatariListePrelievo' +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +alter VIEW v_RapQualSunto +AS +SELECT TOP (100) PERCENT CAST(nRapQual AS NVARCHAR(20)) AS nRapQual, DataRapQual, CodFor, CodLega, SUM(Qta) AS Qta, BenesQual, COUNT(*) AS UdcTot, + COUNT(UDC) AS UdcAssoc, LegaScaric +FROM RilPro.RapQual +GROUP BY nRapQual, DataRapQual, CodFor, CodLega, BenesQual, LegaScaric +ORDER BY nRapQual +go + +exec sp_updateextendedproperty 'MS_DiagramPane1', '[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00] +Begin DesignProperties = + Begin PaneConfigurations = + Begin PaneConfiguration = 0 + NumPanes = 4 + Configuration = "(H (1[41] 4[20] 2[9] 3) )" + End + Begin PaneConfiguration = 1 + NumPanes = 3 + Configuration = "(H (1 [50] 4 [25] 3))" + End + Begin PaneConfiguration = 2 + NumPanes = 3 + Configuration = "(H (1 [50] 2 [25] 3))" + End + Begin PaneConfiguration = 3 + NumPanes = 3 + Configuration = "(H (4 [30] 2 [40] 3))" + End + Begin PaneConfiguration = 4 + NumPanes = 2 + Configuration = "(H (1 [56] 3))" + End + Begin PaneConfiguration = 5 + NumPanes = 2 + Configuration = "(H (2 [66] 3))" + End + Begin PaneConfiguration = 6 + NumPanes = 2 + Configuration = "(H (4 [50] 3))" + End + Begin PaneConfiguration = 7 + NumPanes = 1 + Configuration = "(V (3))" + End + Begin PaneConfiguration = 8 + NumPanes = 3 + Configuration = "(H (1[56] 4[18] 2) )" + End + Begin PaneConfiguration = 9 + NumPanes = 2 + Configuration = "(H (1 [75] 4))" + End + Begin PaneConfiguration = 10 + NumPanes = 2 + Configuration = "(H (1[66] 2) )" + End + Begin PaneConfiguration = 11 + NumPanes = 2 + Configuration = "(H (4 [60] 2))" + End + Begin PaneConfiguration = 12 + NumPanes = 1 + Configuration = "(H (1) )" + End + Begin PaneConfiguration = 13 + NumPanes = 1 + Configuration = "(V (4))" + End + Begin PaneConfiguration = 14 + NumPanes = 1 + Configuration = "(V (2))" + End + ActivePaneConfig = 0 + End + Begin DiagramPane = + Begin Origin = + Top = 0 + Left = 0 + End + Begin Tables = + Begin Table = "RapQual (RilPro)" + Begin Extent = + Top = 6 + Left = 38 + Bottom = 314 + Right = 208 + End + DisplayFlags = 280 + TopColumn = 0 + End + End + End + Begin SQLPane = + End + Begin DataPane = + Begin ParameterDefaults = "" + End + Begin ColumnWidths = 10 + Width = 284 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + Width = 1500 + End + End + Begin CriteriaPane = + Begin ColumnWidths = 12 + Column = 1440 + Alias = 1305 + Table = 1170 + Output = 720 + Append = 1400 + NewValue = 1170 + SortType = 1350 + SortOrder = 1410 + GroupBy = 1350 + Filter = 1350 + Or = 1350 + Or = 1350 + Or = 1350 + End + End +End +', 'SCHEMA', 'dbo', 'VIEW', 'v_RapQualSunto' +go + +commit +go + + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(340, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00345.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00345.sql new file mode 100644 index 00000000..2cc2587f --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00345.sql @@ -0,0 +1,283 @@ +/*************************************** +* STORED stp_processaCodaConsumoMP +* +* Processa la coda dei consumo di UDC di MP e chiaam procedura x salvataggio dato su AS400 +* +* Steamware, S.E.L. +* mod: 2010.10.12 +* +****************************************/ +ALTER PROCEDURE [BatchQueue].[stp_processaCodaConsumoMP] + ( + @ExecBatchInter BIT -- 0 Eseguita in Batch , 1 in Interattivo + ) +AS + -- BOZZA DA VERIFICARE E COMPLETARE A CURA MAZZUCCONI!!! PERCHE'??? NON VA VERSO AS400!!! + + -- faccio una query con un cursore x processare tutte le righe da inviare ad AS400.. + DECLARE @UDC NVARCHAR(50) -- UDC SQL + DECLARE @XRPQLN INT -- UDC + DECLARE @XNRETI NVARCHAR(10) -- Progr UDC AS400 + DECLARE @XDTPRO INT -- DataPrelievo + DECLARE @XTRPRO NVARCHAR(5) -- Turno Prelievo + DECLARE @XDESMT NVARCHAR(3) -- Destinazione Lega + DECLARE @XCDTER NVARCHAR(6) -- Cod. Terzista + + -- Dichiaro e carico il cursore + DECLARE UdcMpList CURSOR LOCAL FOR + SELECT UDC FROM AS400_BatchConsumoMP WHERE DataInvioAs IS NULL + + OPEN UdcMpList + FETCH NEXT FROM UdcMpList + INTO @UDC + + WHILE @@FETCH_STATUS = 0 + BEGIN + -- controllo ci sia la riga + IF (SELECT COUNT(UDC) FROM AS400_BatchConsumoMP WHERE UDC=@UDC) > 0 + BEGIN + -- carico valori che mi servono + SELECT @XRPQLN=rq.nRapQual, @XNRETI=rq.ProgUDC, @XDTPRO=bcu.DataPrelFus, @XTRPRO=bcu.TurnoPrelFus, + @XDESMT=bcu.DestLega, @XCDTER=bcu.DestTerz + FROM AS400_BatchConsumoMP as bcu + INNER JOIN RilPro.RapQual as rq ON bcu.UDC = rq.UDC + WHERE bcu.UDC=@UDC + + -- BEGIN TRAN qui non va messa perchè se verso AS400 le transazioni non sono gestite + -- MANCA IL CONTROLLO SE L'AGGIORNAMENTO E' STATO OK + DECLARE @ScritturaASOK AS INT + EXECUTE @ScritturaASOK = BatchQueue.stp_consumaMP @XRPQLN ,@XNRETI ,@XDTPRO ,@XTRPRO ,@XDESMT ,@XCDTER + + -- registro la data del movimento BATCH solo se stp_consumaMP è ritorna OK + -- NON ANDAVA BENE PERCHE' SE SUCCESSIVA ALL' ERRORE LA ESEGUE CMQ + -- Così non aggiorna la tabella MA L'UTENTE NON SI ACCORGE DI NULLA!!! + IF @ScritturaASOK = 0 + UPDATE AS400_BatchConsumoMP SET DataInvioAs = GETDATE() WHERE UDC = @UDC + + FETCH NEXT FROM UdcMpList INTO @UDC + END + END + CLOSE UdcMpList + DEALLOCATE UdcMpList + + -- aggiunta per dare errore se schedulata S.Possidonio!!! GCARLO + IF @ScritturaASOK <> 0 AND @ExecBatchInter = 0 + BEGIN + DECLARE @ErrorMessage NVARCHAR(4000); + DECLARE @ErrorSeverity INT; + DECLARE @ErrorState INT; + + SELECT + @ErrorMessage = ERROR_MESSAGE()+ ' '+ CONVERT( VARCHAR(10),ERROR_NUMBER()), + @ErrorSeverity = ERROR_SEVERITY(), + @ErrorState = ERROR_STATE(); + + RAISERROR (@ErrorMessage, -- Message text. + 16, -- Severity. + @ErrorState -- State. + ); + END +RETURN + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_prtCartMatPrimaByUDC +* +* ottiene il record del Cartellino Materia Prima dato l'UDC richiesto x la sstampa +* +****************************************/ +alter PROCEDURE stp_prtCartMatPrimaByUDC +( + @UDC VARCHAR(50) +) +AS +SELECT + RQ.nRapQual, + RQ.DataRapQual, + RQ.ProgUDC, + RQ.CodFor, + RQ.DestTerz, + RQ.CodLega, + RQ.DataPrelFus, + RQ.TurnoPrelFus, + RQ.Qta, + RQ.DestLega, + RQ.LegaScaric, + RQ.BenesQual, + RQ.UDC, + Fo.DescFornitore, + Fo.DescFornitore2, + Le.CodLega AS CodLega2, + Le.DescLega, + Le.DescLega2 +FROM RilPro.RapQual AS RQ +LEFT JOIN RilPro.AnagFornitori AS Fo + ON RQ.CodFor = Fo.CodFornitore +LEFT JOIN RilPro.AnagLeghe Le + ON RQ.CodLega = 'L' + Le.CodLega +WHERE RQ.UDC = RTRIM(@UDC) -- 'UB31000000001' +RETURN +go + +commit +go + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_rappQualConsumabili +* +* Ottiene l'elenco dei record di rapp qualità (e quindi degli UDC) di AS non ancora consumati per range di data di approvazione +* +* Steamware, S.E.L. +* mod: 2010.10.05 +* +****************************************/ +alter PROCEDURE stp_rappQualConsumabili +( + @dataFrom DATETIME, + @dataTo DATETIME +) + +AS + -- restituisce le righe richieste + SELECT nRapQual, DataRapQual, ProgUDC, CodFor, DestTerz, CodLega, DataPrelFus, TurnoPrelFus, Qta, DestLega, LegaScaric, BenesQual, UDC + FROM RilPro.RapQual + WHERE ((DataPrelFus IS NULL) OR (DataPrelFus = 0)) AND -- condizione sul NON aver fatto ancora il prelievo + ((DataRapQual >= dbo.dateToAsFormat(@dataFrom)) AND (DataRapQual < dbo.dateToAsFormat(@dataTo))) -- cond data RQ + AND (ISNULL(UDC,'') <>'') -- non nullo UDC, quindi stampati... + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +-- Batch submitted through debugger: GMW_00290.sql|183|0|C:\Users\RottGian\AppData\Local\Temp\2\Temp1_GMW_00290.zip\GMW_00290.sql + +/*************************************** +* STORED stp_selDestListePrelByConditio +* +* Ottiene i destinatari delle liste di prelievo data la condizione indicata +* +* Steamware, S.E.L. +* mod: 2010.11.02 +* +****************************************/ +alter PROCEDURE stp_selDestListePrelByConditio +( + @conditio NVARCHAR(20) +) +AS + +IF (@conditio='01-PreFus') +BEGIN + SELECT CAST('*' AS NVARCHAR(6)) AS value, CAST('*' AS NVARCHAR(50)) AS label, '01-PreFus' AS conditio +END + +ELSE IF (@conditio='02-PreCli') +BEGIN + SELECT CAST(CodCliente AS NVARCHAR(6)) AS value, CAST(CodCliente AS NVARCHAR(6)) +'- ' +CAST(RagSociale AS NVARCHAR(50)) AS label, '02-PreCli' AS conditio + FROM RilPro.AnagClienti + ORDER BY label +END + +ELSE +BEGIN + SELECT CAST(CodTerzista AS NVARCHAR(6)) AS value, CAST(CodTerzista AS NVARCHAR(6))+ '- '+CAST(DescTerzista AS NVARCHAR(50)) AS label, '03-TerWip' AS conditio + FROM RilPro.AnagDepositi + ORDER BY label +END + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +-- Batch submitted through debugger: GMW_00290.sql|183|0|C:\Users\RottGian\AppData\Local\Temp\2\Temp1_GMW_00290.zip\GMW_00290.sql + +/*************************************** +* STORED stp_selDestListePrelByConditio +* +* Ottiene i destinatari delle liste di prelievo data la condizione indicata +* +* Steamware, S.E.L. +* mod: 2010.11.02 +* +****************************************/ +alter PROCEDURE stp_selDestListePrelByConditio +( + @conditio NVARCHAR(20) +) +AS + +IF (@conditio='01-PreFus') +BEGIN + SELECT CAST('*' AS NVARCHAR(6)) AS value, CAST('*' AS NVARCHAR(50)) AS label, '01-PreFus' AS conditio +END + +ELSE IF (@conditio='02-PreCli') +BEGIN + SELECT CAST(CodCliente AS NVARCHAR(6)) AS value, CAST(CodCliente AS NVARCHAR(6)) +'- ' +CAST(RagSociale AS NVARCHAR(50)) AS label, '02-PreCli' AS conditio + FROM RilPro.AnagClienti + ORDER BY label +END + +ELSE +BEGIN + SELECT CAST(CodTerzista AS NVARCHAR(6)) AS value, CAST(CodTerzista AS NVARCHAR(6))+ '- '+CAST(DescTerzista AS NVARCHAR(50)) AS label, '03-TerWip' AS conditio + FROM RilPro.AnagDepositi + ORDER BY label +END + +RETURN +go + +commit +go + + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(345, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00350.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00350.sql new file mode 100644 index 00000000..73b73962 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00350.sql @@ -0,0 +1,125 @@ +/*************************************** +* STORED stp_rappQualGetByUDC +* +* Ottiene l'elenco dei record di rapp qualità di AS dato UDC +* +* Steamware, S.E.L. +* mod: 2011.03.30 +* +****************************************/ +create PROCEDURE dbo.stp_rappQualGetByUDC +( + @UDC NVARCHAR(20) +) +AS + -- restituisce le righe richieste + SELECT * + FROM RilPro.RapQual + WHERE (UDC = @UDC) + +RETURN + + +/*************************************** +* STORED stp_ComAs_lastComandoByStored +* +* Ottiene il record dell'ultimo comando inviato ad AS400 dato il nome della stored con Test = 0 +* +* Steamware, S.E.L. +* mod: 2011.03.30 +* +****************************************/ +create PROCEDURE dbo.stp_ComAs_lastComandoByStored +( + @Stored NVARCHAR(100) +) +AS + -- restituisce le righe richieste + SELECT TOP 1 * + FROM RawData.AS400_Comandi + WHERE (Stored = @Stored) AND Test = 0 + ORDER BY DataEsecuzione DESC + +RETURN + + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_rappQualSuntoGetByDataRange +* +* Ottiene l'elenco dei record di rapp qualità di AS dato il range delle date +* +* Steamware, S.E.L. +* mod: 2010.09.29 +* +****************************************/ +alter PROCEDURE stp_rappQualSuntoGetByDataRange +( + @dataFrom DATETIME, + @dataTo DATETIME +) +AS + -- restituisce le righe richieste + SELECT * + FROM v_RapQualSunto + WHERE (DataRapQual >= dbo.dateToAsFormat(@dataFrom)) AND (DataRapQual < dbo.dateToAsFormat(@dataTo)) + ORDER BY nRapQual +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_rappQualSuntoGetByDataRange +* +* Ottiene l'elenco dei record di rapp qualità di AS dato il range delle date +* +* Steamware, S.E.L. +* mod: 2010.09.29 +* +****************************************/ +alter PROCEDURE stp_rappQualSuntoGetByDataRange +( + @dataFrom DATETIME, + @dataTo DATETIME +) +AS + -- restituisce le righe richieste + SELECT * + FROM v_RapQualSunto + WHERE (DataRapQual >= dbo.dateToAsFormat(@dataFrom)) AND (DataRapQual < dbo.dateToAsFormat(@dataTo)) + ORDER BY nRapQual +RETURN +go + +commit +go + + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(350, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00360.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00360.sql new file mode 100644 index 00000000..3f7f34c9 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00360.sql @@ -0,0 +1,128 @@ +create table Odette( + CampoUDC varchar(10) not null constraint PK_Odette primary key, + Campo1_1 varchar(8) not null, + Campo1_2 varchar(8) not null, + Campo1_3 varchar(8) not null, + Campo1_4 varchar(8) not null, + Campo1_5 varchar(8) not null, + Campo2_1 varchar(8) not null, + Campo2_2 varchar(8) not null, + Campo2_3 varchar(8) not null, + Campo2_4 varchar(8) not null, + Campo2_5 varchar(8) not null, + Campo3_1 varchar(8) not null, + Campo3_2 varchar(8) not null, + Campo3_3 varchar(8) not null, + Campo3_4 varchar(8) not null, + Campo3_5 varchar(8) not null, + Campo4_1 varchar(8) not null, + Campo4_2 varchar(8) not null, + Campo4_3 varchar(8) not null, + Campo4_4 varchar(8) not null, + Campo4_5 varchar(8) not null, + Campo5_1 varchar(8) not null, + Campo5_2 varchar(8) not null, + Campo5_3 varchar(8) not null, + Campo5_4 varchar(8) not null, + Campo5_5 varchar(8) not null, + Campo6_1 varchar(8) not null, + Campo6_2 varchar(8) not null, + Campo6_3 varchar(8) not null, + Campo6_4 varchar(8) not null, + Campo6_5 varchar(8) not null, + Campo7_1 varchar(8) not null, + Campo7_2 varchar(8) not null, + Campo7_3 varchar(8) not null, + Campo7_4 varchar(8) not null, + Campo7_5 varchar(8) not null, + Campo8_1 varchar(8) not null, + Campo8_2 varchar(8) not null, + Campo8_3 varchar(8) not null, + Campo8_4 varchar(8) not null, + Campo8_5 varchar(8) not null, + Campo9_1 varchar(8) not null, + Campo9_2 varchar(8) not null, + Campo9_3 varchar(8) not null, + Campo9_4 varchar(8) not null, + Campo9_5 varchar(8) not null, + Campo10_1 varchar(9) not null, + Campo10_2 varchar(9) not null, + Campo10_3 varchar(9) not null, + Campo10_4 varchar(9) not null, + Campo10_5 varchar(9) not null, + Campo11_1_1 varchar(11) not null, + Campo11_1_2 varchar(11) not null, + Campo11_1_3 varchar(11) not null, + Campo11_1_4 varchar(11) not null, + Campo11_1_5 varchar(11) not null, + Campo11_2_1 varchar(11) not null, + Campo11_2_2 varchar(11) not null, + Campo11_2_3 varchar(11) not null, + Campo11_2_4 varchar(11) not null, + Campo11_2_5 varchar(11) not null, + Campo12_1 varchar(9) not null, + Campo12_2 varchar(9) not null, + Campo12_3 varchar(9) not null, + Campo12_4 varchar(9) not null, + Campo12_5 varchar(9) not null, + Campo13_1 varchar(9) not null, + Campo13_2 varchar(9) not null, + Campo13_3 varchar(9) not null, + Campo13_4 varchar(9) not null, + Campo13_5 varchar(9) not null, + Campo14_1 varchar(9) not null, + Campo14_2 varchar(9) not null, + Campo14_3 varchar(9) not null, + Campo14_4 varchar(9) not null, + Campo14_5 varchar(9) not null, + Campo15_1 varchar(9) not null, + Campo15_2 varchar(9) not null, + Campo15_3 varchar(9) not null, + Campo15_4 varchar(9) not null, + Campo15_5 varchar(9) not null, + Campo16_1 varchar(9) not null, + Campo16_2 varchar(9) not null, + Campo16_3 varchar(9) not null, + Campo16_4 varchar(9) not null, + Campo16_5 varchar(9) not null +) +go + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.AnagTipoEvento + VALUES (N'MagPreGbox', N'Prelievo Gitterbox per cliente BMW') +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.TipoListaPrelievo + VALUES (N'04-OdetSP', N'Lista Prelievo per Odette SP', N'LPO010101', N'MagPreGbox', 0) +go + +commit transaction +go + + + + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(360, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00361.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00361.sql new file mode 100644 index 00000000..83585c15 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00361.sql @@ -0,0 +1,192 @@ +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_ComAs_lastComandoByStored +* +* Ottiene il record dell'ultimo comando inviato ad AS400 dato il nome della stored con Test = 0 +* +* Steamware, S.E.L. +* mod: 2011.03.30 +* +****************************************/ +create PROCEDURE stp_ComAs_lastComandoByStored +( + @Stored NVARCHAR(100) +) +AS + -- restituisce le righe richieste + SELECT TOP 1 * + FROM RawData.AS400_Comandi + WHERE (Stored = @Stored) AND Test = 0 + ORDER BY DataEsecuzione DESC + +RETURN +go + +commit +go + +drop procedure stp_BORI_caricaDatiNew +go + + + + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/***************************************** +* STORED stp_BORI_caricaDatiBolla +* +* richiama la stored di caricamento da AS400 x la bolla indicata +* +* Steamware, S.E.L. +* mod: 2011.04.28 +* +****************************************/ +alter PROCEDURE stp_BORI_caricaDatiBolla +( + @RaggrMagazz NVARCHAR(2) , + @GruppoBolle NVARCHAR(1) , + @NumeroBolla NVARCHAR(6) , + @DataBolla NVARCHAR(8) , + @Particolare NVARCHAR(15) +) +AS + + SET NOCOUNT ON; + + --DECLARE @RaggrMagazz AS NVARCHAR(2) = N'SP' + --DECLARE @GruppoBolle AS NVARCHAR(1) = N'0' + --DECLARE @NumeroBolla AS NVARCHAR(6) = N'678' + --DECLARE @DataBolla AS NVARCHAR(8) = N'20110421' + --DECLARE @Particolare AS NVARCHAR(15) = N'P00528536146' + + -- Prima cancello i dati della se già presenti bolla poi li carico + DELETE SP_GMW.RawData.BORI202J + WHERE CDMFS = @RaggrMagazz + AND GRBOS = @GruppoBolle + AND NRBOS = @NumeroBolla + AND DTBOS = @DataBolla + AND CDARS = @Particolare + + DECLARE @SQL AS NVARCHAR(4000) + DECLARE @SqlOK AS INT; + + SET @SqlOK = 0; + + -- ATTENZIONE!!! i parametri non devono essere nulli altrimenti la stringa ritornata è nulla + + /* + Prima estraggo i dati della bolla dal file in AS400 in una tabella temporanea + Poi va letta la tabella temporanea per creare i dati per la stampa Odette + NON VA BENE, SE ESEGUONO IN DUE LA STAMPA PUO ANDARE IN CONFLITTO + */ + + --IF OBJECT_ID(N'tempdb..##TabTemp') IS NOT NULL -- ##TabTemp Tabella temporanea globale altrimenti non riesco ad usarla + -- DROP TABLE ##TabTemp; + -- SET @SQL = 'SELECT * INTO ##TabTemp FROM OPENQUERY(P65220DC, + + BEGIN TRY + SET @SQL = 'INSERT INTO SP_GMW.RawData.BORI202J SELECT * FROM OPENQUERY(P65220DC, + ''SELECT + CDMFS + ,GRBOS + ,DTBOS + ,NRBOS + ,CDARS + ,NRRGS + ,CDINB + ,RA1ND + ,RA2ND + ,CAPND + ,CITND + ,RASCL + ,INDCL + ,CAPCL + ,LOCCL + ,PROCL + ,INEND + ,CRAGCL + ,TELND + ,CCDMOL + ,CCDPTR + ,EPLAVO + ,NRC1B + ,ECMM01 + ,DEPAR + ,RCARTC + ,PERND + ,CCDET1 + ,ECDNAE + ,ECDNA1 + ,EESPMD + ,PELDB + ,QTCNS + FROM POSN_AZI.BORI202J + WHERE ATV08 <> ''''A'''' + ' + + -- commemntare le righe successive per estrarre tutto + -- Parametri di selezione della bolla + SET @SQL = @SQL + ' AND CDMFS = ''''' + @RaggrMagazz + ''''' ' + SET @SQL = @SQL + ' AND GRBOS = ''''' + @GruppoBolle + ''''' ' + SET @SQL = @SQL + ' AND NRBOS = ' + @NumeroBolla + ' ' + SET @SQL = @SQL + ' AND DTBOS = ' + @DataBolla + ' ' + SET @SQL = @SQL + ' AND CDARS = ''''' + @Particolare + ''''' ' + + SET @SQL = @SQL + ''' )'; + + EXEC sp_executesql @SQL + + END TRY + BEGIN CATCH + -- PRINT ERROR_NUMBER() + SET @SqlOK = ERROR_NUMBER(); + + -- Uso RAISERROR mandare in errore la procedura e x per tornare le info + -- sull'errore originale che ha portato l'esecuzione nel blocco CATCH + --DECLARE @ErrorMessage NVARCHAR(4000); + --DECLARE @ErrorSeverity INT; + --DECLARE @ErrorState INT; + --SELECT @ErrorMessage = ERROR_MESSAGE(),@ErrorSeverity = ERROR_SEVERITY(),@ErrorState = ERROR_STATE(); + --RAISERROR (@ErrorMessage,@ErrorSeverity,@ErrorState); -- Se non uso RAISERROR la procedura non mi da errore es. se schedulata + END CATCH + + -- MANCA IL TEST SE VA IN ERRORE E IL SALVATAGGIO NEL LOG AS400 + + -- Memorizzo il comando per verifica T-SQL e l'esito del comando se 0 è OK + + --INSERT INTO RawData.AS400_Comandi + --SELECT GETDATE(), 'stp_CaricaDatiBolladaAs400', @SQL, @SqlOK; + + -- Carico i dati della Temp table nel file di appoggio + -- INSERT INTO SP_GMW.RawData.BORI202J + -- SELECT * FROM ##TabTemp + +RETURN +go + +commit +go + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(361, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00365.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00365.sql new file mode 100644 index 00000000..407b18d1 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00365.sql @@ -0,0 +1,331 @@ +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/***************************************** +* STORED stp_BORI_getByBolla +* +* Cerca la bolla richiesta x chiave +* +* Steamware, S.E.L. +* mod: 2011.05.05 +* +****************************************/ +alter PROCEDURE stp_BORI_getByBolla +( + @RaggrMagazz NVARCHAR(2), + @GruppoBolle NVARCHAR(1), + @NumeroBolla NUMERIC(6,0), + @DataBolla NUMERIC(8,0), + @Particolare NVARCHAR(15) +) +AS + +SELECT * +FROM RawData.BORI202J +WHERE CDMFS = @RaggrMagazz +AND GRBOS = @GruppoBolle +AND NRBOS = @NumeroBolla +AND DTBOS = @DataBolla +AND CDARS = @Particolare + +RETURN +go + +/***************************************** +* STORED stp_BORI_getByBollaFull +* +* Cerca la bolla richiesta x chiave completa +* +* Steamware, S.E.L. +* mod: 2011.05.05 +* +****************************************/ +create PROCEDURE stp_BORI_getByBollaFull +( + @RaggrMagazz NVARCHAR(2), + @GruppoBolle NVARCHAR(1), + @NumeroBolla NUMERIC(6,0), + @DataBolla NUMERIC(8,0), + @Particolare NVARCHAR(15) +) +AS + +SELECT * +FROM RawData.BORI202J +WHERE CDMFS = @RaggrMagazz +AND GRBOS = @GruppoBolle +AND NRBOS = @NumeroBolla +AND DTBOS = @DataBolla +AND CDARS = @Particolare + +RETURN +go + +/***************************************** +* STORED stp_BORI_getByBollaPart +* +* Cerca la bolla richiesta x chiave parziale (no particolare) +* +* Steamware, S.E.L. +* mod: 2011.05.05 +* +****************************************/ +create PROCEDURE stp_BORI_getByBollaPart +( + @RaggrMagazz NVARCHAR(2), + @GruppoBolle NVARCHAR(1), + @NumeroBolla NUMERIC(6,0), + @DataBolla NUMERIC(8,0) +) +AS + +SELECT * +FROM RawData.BORI202J +WHERE CDMFS = @RaggrMagazz +AND GRBOS = @GruppoBolle +AND NRBOS = @NumeroBolla +AND DTBOS = @DataBolla + +RETURN +go + +commit +go + +set xact_abort on +go + +begin transaction +go + +DELETE FROM dbo.Permessi2Funzione WHERE COD_PERMESSO='MAG_logico' and COD_FUNZIONE=N'GMW_user' +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_RLP_eliminaNonPrelevate +* +* elimina eventuali righe non prelevate +* +* Steamware, S.E.L. +* mod: 2010.08.31 +* +****************************************/ +create PROCEDURE stp_RLP_eliminaNonPrelevate +( + @CodLista NVARCHAR(12) +) +AS + +DELETE FROM RigheListePrelievo +WHERE CodLista = @CodLista +AND Prelevato = 0 + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/***************************************** +* STORED stp_DtMtrx_import +* +* Recupera dati Gitterbox/DataMatrix partendo leggendo dati successivi all'ultimo import e importanto in tab GMW +* +* Steamware, S.E.L. +* mod: 2011.04.29 +* +****************************************/ +alter PROCEDURE stp_DtMtrx_import +( + @CodCS VARCHAR(2), + @IdxPosizione INT +) +AS + +------------------------------------------------------------------------------------------------------ +-- leggo data ultimo import (o creo record...) +------------------------------------------------------------------------------------------------------ +DECLARE @nomeFlusso AS NVARCHAR(50) +DECLARE @lastImport AS DATETIME +DECLARE @trovati AS INT + +-- imposto valori +SET @nomeFlusso = 'DataMatrix' +SET @lastImport = DATEADD(yy,-10,GETDATE()) -- inizializzo a -10 anni ... +-- sistemo tab registrazione import... +BEGIN TRAN + -- cerco nella tab log ultima data caricamento + SET @trovati = ( + SELECT COUNT(*) + FROM logImportFlussi + WHERE NomeFlusso = @nomeFlusso + ) + -- controllo se record c'è... + IF(@trovati > 0) + BEGIN + SET @lastImport = ( SELECT LastImport FROM LogImportFlussi WHERE NomeFlusso = @nomeFlusso ) + END + ELSE + BEGIN + -- lo creo! + INSERT INTO LogImportFlussi(NomeFlusso, LastImport) + VALUES (@nomeFlusso, @lastImport) + END +COMMIT TRAN +------------------------------------------------------------------------------------------------------ + + +------------------------------------------------------------------------------------------------------ +-- ora gestisco il vero caricamento... +------------------------------------------------------------------------------------------------------ + -- filtro e salvo in tabella... gitterbox validi SOLO se iniziano per "U" + DECLARE @newData TABLE + ( + CodDataMatrix numeric(23, 0) , + CodGitterbox char(10) , + NumConchiglia int , + NumDisegno numeric(7, 0) , + EsponenteDisegno tinyint , + CodDifettoScarto varchar(5) , + InizioPreparazione smalldatetime , + FinePreparazione smalldatetime , + InizioIniezione smalldatetime , + FineIniezione smalldatetime , + MagDestinazione varchar(2) , + DataImport smalldatetime + ) + INSERT INTO @newData + SELECT CodDataMatrix, CodGitterbox, NumConchiglia, NumDisegno, EsponenteDisegno, CodDifettoScarto, InizioPreparazione, FinePreparazione, InizioIniezione, FineIniezione, MagDestinazione, DataImport + + FROM v_trasfDataMatrix + WHERE DataImport > @lastImport AND LEFT(CodGitterbox, 1) = 'U' + + + + -- creo UDC da gitterbox nuovi + INSERT INTO ElencoCartellini(UDC, Particolare, DataFus) + SELECT DISTINCT nd.CodGitterbox, null, MIN( InizioIniezione) + FROM @newData nd LEFT OUTER JOIN ElencoCartellini ec ON nd.CodGitterbox COLLATE SQL_Latin1_General_CP1_CI_AS = ec.UDC + WHERE ec.UDC IS NULL + GROUP BY nd.CodGitterbox + + DECLARE @udc NVARCHAR(50) + DECLARE @Particolare NVARCHAR(50) + DECLARE @NumDisegno NVARCHAR(50) + DECLARE @EsponenteDisegno NVARCHAR(50) + DECLARE @Qta INT + DECLARE @IdxCellaTo INT + DECLARE @adesso DATETIME + DECLARE @posTrovate INT + + SET @adesso = GETDATE() + SET @posTrovate = 0 + + DECLARE cursoreImport CURSOR FOR + SELECT nd.CodGitterbox, tp.Particolare, tp.NumDisegno, tp.EsponenteDisegno, dbo.getNumDatamatrix(nd.CodGitterbox) FROM @newData nd + INNER JOIN v_transcParticolari tp ON nd.NumDisegno = tp.NumDisegno AND nd.EsponenteDisegno = tp.EsponenteDisegno + + OPEN cursoreImport + FETCH NEXT FROM cursoreImport INTO @udc, @Particolare, @NumDisegno, @EsponenteDisegno, @Qta + + WHILE @@FETCH_STATUS = 0 + BEGIN + + -- aggiorno gli UDC gitterbox esistenti per quantità tra quelli dei dati da importare... + UPDATE ElencoCartellini + SET CodCS = @CodCS, + IdxPosizione = @IdxPosizione, + CreateDate = @adesso, + Particolare = @Particolare, + DisegnoGrezzo = @NumDisegno, + Esponente = @EsponenteDisegno, + Qta = @Qta, + Figura = '', + CodImballo ='', + Tara = 0, + PesoTot = 0, + PesoCad = 0, + CodStato = 'Fin', + NumCont = 1, + TurnoFus = 0, + ModDate = @adesso + WHERE UDC = @udc + + -- indico cella UDC corrente... calcolo la prima cella della nuova posizione... + SET @IdxCellaTo = ( + SELECT TOP 1 IdxCella FROM Celle + WHERE IdxBlocco = ( + SELECT IdxBlocco FROM Blocchi + WHERE CodMag=CAST(@IdxPosizione AS NVARCHAR(50))) + ) + -- controllo se posizione non ancora creata... + SET @posTrovate = ( SELECT COUNT(*) FROM PosizioneUdcCorrente WHERE UDC = @udc ) + IF( @posTrovate =0) + BEGIN + INSERT INTO PosizioneUdcCorrente + VALUES (@udc, @IdxCellaTo, @CodCS, @adesso) + END + + FETCH NEXT FROM cursoreImport INTO @udc, @Particolare, @NumDisegno, @EsponenteDisegno, @Qta + + + END + + CLOSE cursoreImport + DEALLOCATE cursoreImport + + -- inserisco datamatrix da ultimo import + INSERT INTO ElencoDataMatrix + SELECT * FROM @newData + + -- aggiorno dati ultimo caricamento + SET @lastImport = ( SELECT ISNULL(MAX(DataImport),@lastImport) FROM @newData ) + UPDATE LogImportFlussi + SET LastImport = @lastImport + WHERE NomeFlusso = @nomeFlusso + + +RETURN +go + +commit +go + + + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(365, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00370.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00370.sql new file mode 100644 index 00000000..5e7a8755 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00370.sql @@ -0,0 +1,222 @@ +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/***************************************** +* STORED stp_EDM_getByCode +* +* Recupera datamatrix da codice +* +* Steamware, S.E.L. +* mod: 2011.05.05 +* +****************************************/ +create PROCEDURE stp_EDM_getByCode +( + @CodDataMatrix NUMERIC(23) +) +AS + +SELECT * +FROM ElencoDataMatrix +WHERE CodDataMatrix = @CodDataMatrix + +RETURN +go + +/***************************************** +* STORED stp_EDM_spostaDataMtx +* +* Sposta un datamatrix in un nuovo gitterbox +* +* Steamware, S.E.L. +* mod: 2011.05.05 +* +****************************************/ +create PROCEDURE stp_EDM_spostaDataMtx +( + @CodDataMatrix NUMERIC(23), + @CodGitterbox NVARCHAR(10) +) +AS + +-- salvo codice gitterbox di partenza +DECLARE @CodGitterboxFrom AS NVARCHAR(10) +SET @CodGitterboxFrom = ( SELECT CodGitterbox FROM ElencoDataMatrix WHERE CodDataMatrix = @CodDataMatrix ) + +UPDATE ElencoDataMatrix +SET CodGitterbox = @CodGitterbox +WHERE CodDataMatrix = @CodDataMatrix + +-- aggiorno valori QTA gitterbox di partenza... +UPDATE ElencoCartellini +SET Qta = ( SELECT COUNT(*) FROM ElencoDataMatrix WHERE CodGitterbox = @CodGitterboxFrom ) +WHERE UDC = @CodGitterboxFrom +-- aggiorno valoti QTA gitterbox destinazione +UPDATE ElencoCartellini +SET Qta = ( SELECT COUNT(*) FROM ElencoDataMatrix WHERE CodGitterbox = @CodGitterbox ) +WHERE UDC = @CodGitterbox + +SELECT * +FROM ElencoDataMatrix +WHERE CodDataMatrix = @CodDataMatrix + +RETURN +go + +/***************************************** +* STORED stp_EDM_svuotaGitterbox +* +* Elimina il codice gitterbox dai datamatrix associati (svuotandolo...) +* +* Steamware, S.E.L. +* mod: 2011.05.06 +* +****************************************/ +create PROCEDURE stp_EDM_svuotaGitterbox +( + @CodGitterbox NVARCHAR(10) +) +AS + +UPDATE ElencoDataMatrix +SET CodGitterbox = '' +WHERE CodGitterbox = @CodGitterbox + +RETURN +go + +commit +go + + + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/***************************************** +* STORED stp_UDC_getByUdc +* +* Recupera UDC da codice +* +* Steamware, S.E.L. +* mod: 2011.05.05 +* +****************************************/ +create PROCEDURE stp_UDC_getByUdc +( + @UDC NVARCHAR(50) +) +AS + +SELECT * +FROM ElencoCartellini +WHERE LTRIM(RTRIM(UDC)) = @UDC + +RETURN +go + +commit +go + + + + +/*************************************** +* STORED stp_rappQualGetByNumRapQual +* +* Ottiene l'elenco dei record di rapp qualità di AS dato il numero del rapporto di qualità +* +* Steamware, S.E.L. +* mod: 2010.09.23 +* +****************************************/ +ALTER PROCEDURE stp_rappQualGetByNumRapQual +( + @nRapQual INT +) +AS + -- restituisce le righe richieste + SELECT * + FROM RilPro.RapQual + WHERE (nRapQual = @nRapQual) + AND LegaScaric = 'N' + +RETURN + + + +/*************************************** +* STORED stp_rappQualGetByNumRapQualSenzaUdc +* +* 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: 2011.05.06 +* +****************************************/ +create PROCEDURE stp_rappQualGetByNumRapQualSenzaUdc +( + @nRapQual INT +) +AS + -- restituisce le righe richieste + SELECT * + FROM RilPro.RapQual + WHERE (nRapQual = @nRapQual) AND (UDC IS NULL) + AND LegaScaric = 'N' + +RETURN + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/***************************************** +* STORED stp_EDM_getByGitterBox +* +* Recupera datamatrix da codice gitterbox +* +* Steamware, S.E.L. +* mod: 2011.05.06 +* +****************************************/ +create PROCEDURE stp_EDM_getByGitterBox +( + @CodGitterbox NVARCHAR(10) +) +AS + +SELECT * +FROM ElencoDataMatrix +WHERE CodGitterbox = @CodGitterbox + +RETURN +go + +commit +go + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(370, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00385.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00385.sql new file mode 100644 index 00000000..47b62009 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00385.sql @@ -0,0 +1,292 @@ + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/***************************************** +* STORED stp_DtMtrx_import +* +* Recupera dati Gitterbox/DataMatrix partendo leggendo dati successivi all'ultimo import e importanto in tab GMW +* +* Steamware, S.E.L. +* mod: 2011.04.29 +* +****************************************/ +ALTER PROCEDURE dbo.stp_DtMtrx_import +( + @CodCS VARCHAR(2), + @IdxPosizione INT +) +AS + +------------------------------------------------------------------------------------------------------ +-- leggo data ultimo import (o creo record...) +------------------------------------------------------------------------------------------------------ +DECLARE @nomeFlusso AS NVARCHAR(50) +DECLARE @lastImport AS DATETIME +DECLARE @trovati AS INT + +-- imposto valori +SET @nomeFlusso = 'DataMatrix' +SET @lastImport = DATEADD(yy,-10,GETDATE()) -- inizializzo a -10 anni ... +-- sistemo tab registrazione import... +BEGIN TRAN + -- cerco nella tab log ultima data caricamento + SET @trovati = ( + SELECT COUNT(*) + FROM logImportFlussi + WHERE NomeFlusso = @nomeFlusso + ) + -- controllo se record c'è... + IF(@trovati > 0) + BEGIN + SET @lastImport = ( SELECT LastImport FROM LogImportFlussi WHERE NomeFlusso = @nomeFlusso ) + END + ELSE + BEGIN + -- lo creo! + INSERT INTO LogImportFlussi(NomeFlusso, LastImport) + VALUES (@nomeFlusso, @lastImport) + END +COMMIT TRAN +------------------------------------------------------------------------------------------------------ + + +------------------------------------------------------------------------------------------------------ +-- ora gestisco il vero caricamento... +------------------------------------------------------------------------------------------------------ + -- filtro e salvo in tabella... gitterbox validi SOLO se iniziano per "U" + DECLARE @newData TABLE + ( + CodDataMatrix numeric(23, 0) , + CodGitterbox char(10) , + NumConchiglia int , + NumDisegno numeric(7, 0) , + EsponenteDisegno tinyint , + CodDifettoScarto varchar(5) , + InizioPreparazione smalldatetime , + FinePreparazione smalldatetime , + InizioIniezione smalldatetime , + FineIniezione smalldatetime , + MagDestinazione varchar(2) , + DataImport smalldatetime + ) + INSERT INTO @newData + SELECT CodDataMatrix, LTRIM(RTRIM(CodGitterbox)), NumConchiglia, NumDisegno, EsponenteDisegno, CodDifettoScarto, InizioPreparazione, FinePreparazione, InizioIniezione, FineIniezione, MagDestinazione, DataImport + + FROM v_trasfDataMatrix + WHERE DataImport > @lastImport AND LEFT(CodGitterbox, 1) = 'U' + + + + -- creo UDC da gitterbox nuovi + INSERT INTO ElencoCartellini(UDC, Particolare, DataFus) + SELECT DISTINCT nd.CodGitterbox, null, MIN( InizioIniezione) + FROM @newData nd LEFT OUTER JOIN ElencoCartellini ec ON nd.CodGitterbox COLLATE SQL_Latin1_General_CP1_CI_AS = ec.UDC + WHERE ec.UDC IS NULL + GROUP BY nd.CodGitterbox + + DECLARE @udc NVARCHAR(50) + DECLARE @Particolare NVARCHAR(50) + DECLARE @NumDisegno NVARCHAR(50) + DECLARE @EsponenteDisegno NVARCHAR(50) + DECLARE @Qta INT + DECLARE @IdxCellaTo INT + DECLARE @adesso DATETIME + DECLARE @posTrovate INT + + SET @adesso = GETDATE() + SET @posTrovate = 0 + + DECLARE cursoreImport CURSOR FOR + SELECT nd.CodGitterbox, tp.Particolare, tp.NumDisegno, tp.EsponenteDisegno, dbo.getNumDatamatrix(nd.CodGitterbox) FROM @newData nd + INNER JOIN v_transcParticolari tp ON nd.NumDisegno = tp.NumDisegno AND nd.EsponenteDisegno = tp.EsponenteDisegno + + OPEN cursoreImport + FETCH NEXT FROM cursoreImport INTO @udc, @Particolare, @NumDisegno, @EsponenteDisegno, @Qta + + WHILE @@FETCH_STATUS = 0 + BEGIN + + -- aggiorno gli UDC gitterbox esistenti per quantità tra quelli dei dati da importare... + UPDATE ElencoCartellini + SET CodCS = @CodCS, + IdxPosizione = @IdxPosizione, + CreateDate = @adesso, + Particolare = @Particolare, + DisegnoGrezzo = @NumDisegno, + Esponente = @EsponenteDisegno, + Qta = @Qta, + Figura = '', + CodImballo ='', + Tara = 0, + PesoTot = 0, + PesoCad = 0, + CodStato = 'Fin', + NumCont = 1, + TurnoFus = 0, + ModDate = @adesso + WHERE UDC = @udc + + -- indico cella UDC corrente... calcolo la prima cella della nuova posizione... + SET @IdxCellaTo = ( + SELECT TOP 1 IdxCella FROM Celle + WHERE IdxBlocco = ( + SELECT IdxBlocco FROM Blocchi + WHERE CodMag=CAST(@IdxPosizione AS NVARCHAR(50))) + ) + -- controllo se posizione non ancora creata... + SET @posTrovate = ( SELECT COUNT(*) FROM PosizioneUdcCorrente WHERE UDC = @udc ) + IF( @posTrovate =0) + BEGIN + INSERT INTO PosizioneUdcCorrente + VALUES (@udc, @IdxCellaTo, @CodCS, @adesso) + END + + FETCH NEXT FROM cursoreImport INTO @udc, @Particolare, @NumDisegno, @EsponenteDisegno, @Qta + + + END + + CLOSE cursoreImport + DEALLOCATE cursoreImport + + -- inserisco datamatrix da ultimo import + INSERT INTO ElencoDataMatrix + SELECT * FROM @newData + + -- aggiorno dati ultimo caricamento + SET @lastImport = ( SELECT ISNULL(MAX(DataImport),@lastImport) FROM @newData ) + UPDATE LogImportFlussi + SET LastImport = @lastImport + WHERE NomeFlusso = @nomeFlusso + + +RETURN +go + +commit +go + +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2009-09-20 +-- Description: trigger x inserimento movimenti +-- nella coda di trasferimento batch +-- verso AS400 x UPDATE UDC +-- ============================================= +ALTER TRIGGER trg_updMovAS + ON ElencoCartellini + AFTER UPDATE +AS +BEGIN + + -- setup variabili e verbosità + SET NOCOUNT ON; + DECLARE @partOk AS BIT + DECLARE @currUdc AS NVARCHAR(50) + DECLARE @IdxPosFrom AS INT + DECLARE @IdxPosTo AS INT + DECLARE @magFrom AS NVARCHAR(50) + DECLARE @magTo AS NVARCHAR(50) + DECLARE @qta AS DECIMAL(10,2) + DECLARE @qtaOld AS DECIMAL(10,2) + DECLARE @IdxPosizioneComp INT + DECLARE @toAs400 BIT + + DECLARE cursore CURSOR FOR + SELECT CASE WHEN ISNULL(Particolare,'n.d.') = 'n.d.' THEN 0 ELSE 1 END, UDC FROM inserted + + OPEN cursore + FETCH NEXT FROM cursore INTO @partOk, @currUdc + + WHILE @@FETCH_STATUS = 0 + BEGIN + -- controllo che CI SIA il particolare (altrimenti non eseguo) + IF(@partOk = 1) + SET @qta = (SELECT Qta FROM inserted WHERE UDC = @currUdc) + SET @qtaOld = (SELECT Qta FROM deleted WHERE UDC = @currUdc) + -- se c'è stata modifica di quantità inizio a rettificare quella + IF ((UPDATE(Qta)) AND(@qta <> @qtaOld)) + BEGIN + -- registro il VERO movimento + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOD', Particolare, UDC, CAST(IdxPosizione AS NVARCHAR(50)), @qta - Qta + FROM deleted + WHERE UDC = @currUdc AND CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + -- controllo: se il magazzino di destinazione richiede una compensazione registro il 2° movimento di compensazione + SET @IdxPosFrom = (SELECT IdxPosizione FROM deleted) + SET @IdxPosTo = (SELECT IdxPosizione FROM inserted) + -- calcolo il mag di compensazione + SET @IdxPosizioneComp = (SELECT CAST(ISNULL(CodMagAS_compensaz,0) AS INT) FROM AS400_MagCont WHERE (Attivo = 1) AND (CodMagAS = CAST(@IdxPosFrom AS NVARCHAR(50)))) + IF (@IdxPosizioneComp > 0) + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_COMP', Particolare, UDC, CAST(@IdxPosizioneComp AS NVARCHAR(50)), Qta - @qta + FROM deleted + WHERE UDC = @currUdc AND CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + END + + -- Prendo le posizioni di magazzino precedente e nuova + SET @IdxPosFrom = (SELECT IdxPosizione FROM deleted WHERE UDC = @currUdc) + SET @IdxPosTo = (SELECT IdxPosizione FROM inserted WHERE UDC = @currUdc) + + -- controllo se devo fare rettifiche quantità... + SET @toAs400 = ( + SELECT TOP 1 ISNULL(toAs400, 0) as valore + FROM TabTranPosizEventi + WHERE IdxPosizione = @IdxPosFrom AND IdxPosizioneTo = @IdxPosTo + ) + + -- controllo poi se sia cambiato il magazzino logico (IdxPosizione) e si richieda update verso AS400, altrimenti non lo inserisco + IF ((UPDATE(IdxPosizione)) AND @toAs400 = 1) + BEGIN + -- Le trasformo nelle equivalenti stringhe del codMag SE attive + SET @magFrom = (SELECT ISNULL(CodMagAS,'---') FROM AS400_MagCont WHERE Attivo = 1 AND CodMagAs = CAST(@IdxPosFrom AS NVARCHAR(50))) + SET @magTo = (SELECT ISNULL(CodMagAS,'---') FROM AS400_MagCont WHERE Attivo = 1 AND CodMagAs = CAST(@IdxPosTo AS NVARCHAR(50))) + + -- inserisco un movimento di deposito verso mag nuovo (SE attivo) + IF (@magFrom <> '---') + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOV', Particolare, UDC, CAST(IdxPosizione AS NVARCHAR(50)), -@qta + FROM deleted + WHERE UDC = @currUdc AND CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + -- inserisco un movimento di prelievo verso mag vecchio (SE attivo) + IF (@magTo <> '---') + BEGIN + INSERT INTO AS400_BatchMovimenti(DataIns, CodEvento, Particolare, UDC, CodMagAS, Quantita) + ( + SELECT GETDATE(), 'UDC_MOV', Particolare, UDC, CAST(IdxPosizione AS NVARCHAR(50)), @qta + FROM inserted + WHERE UDC = @currUdc AND CAST(IdxPosizione AS NVARCHAR(50)) IN (SELECT CodMagAS FROM AS400_MagCont WHERE Attivo = 1) + ) + END + END + FETCH NEXT FROM cursore INTO @partOk, @currUdc + END + + CLOSE cursore + DEALLOCATE cursore + +END + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(385, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00390.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00390.sql new file mode 100644 index 00000000..4b4477f2 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00390.sql @@ -0,0 +1,1088 @@ +set xact_abort on +go + +begin transaction +go + +create table ElencoListePrelievo_storico( + DataOraDelete datetime not null, + CodLista nvarchar(12) not null, + CodTipoLista nvarchar(10) not null, + CodCS nchar(2) not null, + DataCreaz datetime not null, + CodCliente nvarchar(6), + RagSociale nvarchar(35), + CodSoggetto nchar(17) not null, + Particolare nvarchar(15) not null, + DescParticolare nvarchar(30), + DisegnoGrezzo nvarchar(30), + Esponente nvarchar(6), + Figura nvarchar(4), + CodImballo nvarchar(15), + QtaTot decimal(10,2) not null, + CodStatoLista int not null, + Destinatario nvarchar(50), + DestinatarioDescrizione nvarchar(50) +) +go + +create index i_codLista on ElencoListePrelievo_storico(CodLista) +go + +create table Odette_storico( + DataOraDelete datetime not null, + CampoUDC varchar(10) not null, + Campo1_1 nvarchar(50) not null, + Campo1_2 nvarchar(50) not null, + Campo1_3 nvarchar(50) not null, + Campo1_4 nvarchar(50) not null, + Campo1_5 nvarchar(50) not null, + Campo2_1 nvarchar(50) not null, + Campo2_2 nvarchar(50) not null, + Campo2_3 nvarchar(50) not null, + Campo2_4 nvarchar(50) not null, + Campo2_5 nvarchar(50) not null, + Campo3_1 nvarchar(50) not null, + Campo3_2 nvarchar(50) not null, + Campo3_3 nvarchar(50) not null, + Campo3_4 nvarchar(50) not null, + Campo3_5 nvarchar(50) not null, + Campo4_1 nvarchar(50) not null, + Campo4_2 nvarchar(50) not null, + Campo4_3 nvarchar(50) not null, + Campo4_4 nvarchar(50) not null, + Campo4_5 nvarchar(50) not null, + Campo5_1 nvarchar(50) not null, + Campo5_2 nvarchar(50) not null, + Campo5_3 nvarchar(50) not null, + Campo5_4 nvarchar(50) not null, + Campo5_5 nvarchar(50) not null, + Campo6_1 nvarchar(50) not null, + Campo6_2 nvarchar(50) not null, + Campo6_3 nvarchar(50) not null, + Campo6_4 nvarchar(50) not null, + Campo6_5 nvarchar(50) not null, + Campo7_1 nvarchar(50) not null, + Campo7_2 nvarchar(50) not null, + Campo7_3 nvarchar(50) not null, + Campo7_4 nvarchar(50) not null, + Campo7_5 nvarchar(50) not null, + Campo8_1 nvarchar(50) not null, + Campo8_2 nvarchar(50) not null, + Campo8_3 nvarchar(50) not null, + Campo8_4 nvarchar(50) not null, + Campo8_5 nvarchar(50) not null, + Campo9_1 nvarchar(50) not null, + Campo9_2 nvarchar(50) not null, + Campo9_3 nvarchar(50) not null, + Campo9_4 nvarchar(50) not null, + Campo9_5 nvarchar(50) not null, + Campo10_1 nvarchar(50) not null, + Campo10_2 nvarchar(50) not null, + Campo10_3 nvarchar(50) not null, + Campo10_4 nvarchar(50) not null, + Campo10_5 nvarchar(50) not null, + Campo11_1_1 nvarchar(50) not null, + Campo11_1_2 nvarchar(50) not null, + Campo11_1_3 nvarchar(50) not null, + Campo11_1_4 nvarchar(50) not null, + Campo11_1_5 nvarchar(50) not null, + Campo11_2_1 nvarchar(50) not null, + Campo11_2_2 nvarchar(50) not null, + Campo11_2_3 nvarchar(50) not null, + Campo11_2_4 nvarchar(50) not null, + Campo11_2_5 nvarchar(50) not null, + Campo12_1 nvarchar(50) not null, + Campo12_2 nvarchar(50) not null, + Campo12_3 nvarchar(50) not null, + Campo12_4 nvarchar(50) not null, + Campo12_5 nvarchar(50) not null, + Campo13_1 nvarchar(50) not null, + Campo13_2 nvarchar(50) not null, + Campo13_3 nvarchar(50) not null, + Campo13_4 nvarchar(50) not null, + Campo13_5 nvarchar(50) not null, + Campo14_1 nvarchar(50) not null, + Campo14_2 nvarchar(50) not null, + Campo14_3 nvarchar(50) not null, + Campo14_4 nvarchar(50) not null, + Campo14_5 nvarchar(50) not null, + Campo15_1 nvarchar(50) not null, + Campo15_2 nvarchar(50) not null, + Campo15_3 nvarchar(50) not null, + Campo15_4 nvarchar(50) not null, + Campo15_5 nvarchar(50) not null, + Campo16_1 nvarchar(50) not null, + Campo16_2 nvarchar(50) not null, + Campo16_3 nvarchar(50) not null, + Campo16_4 nvarchar(50) not null, + Campo16_5 nvarchar(50) not null, + StatoOk bit not null, + CodCS nchar(2) not null +) +go + +create index i_UDC on Odette_storico(CampoUDC) +go + +create table RigheListePrelievo_storico( + DataOraDelete datetime not null, + CodLista nvarchar(12) not null, + UDC nvarchar(50) not null, + Qta decimal(10,2) not null, + Proposto bit, + Prelevato bit +) +go + +create index i_UDC on RigheListePrelievo_storico(UDC) +go + +create index i_CodListaUDC on RigheListePrelievo_storico(CodLista,UDC) +go + +commit +go + + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2011-05-20 +-- Description: trigger x inserimento in tab +-- storico record cancellati +-- ============================================= +create TRIGGER trg_ListePrelievoDel + ON ElencoListePrelievo + AFTER DELETE +AS +BEGIN + + -- setup variabili e verbosità + SET NOCOUNT ON; + -- inserisco in storico + INSERT INTO ElencoListePrelievo_storico + (DataOraDelete,CodLista,CodTipoLista,CodCS,DataCreaz,CodCliente,RagSociale,CodSoggetto,Particolare,DescParticolare,DisegnoGrezzo, + Esponente,Figura,CodImballo,QtaTot,CodStatoLista,Destinatario,DestinatarioDescrizione) + + SELECT GETDATE(), CodLista,CodTipoLista,CodCS,DataCreaz,CodCliente,RagSociale,CodSoggetto,Particolare,DescParticolare,DisegnoGrezzo, + Esponente,Figura,CodImballo,QtaTot,CodStatoLista,Destinatario,DestinatarioDescrizione + FROM deleted + + +END +go + +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2011-05-20 +-- Description: trigger x inserimento in tab +-- storico record cancellati +-- ============================================= +create TRIGGER trg_odetteDel + ON Odette + AFTER DELETE +AS +BEGIN + + -- setup variabili e verbosità + SET NOCOUNT ON; + -- inserisco in storico + INSERT INTO Odette_storico + (DataOraDelete,CampoUDC,Campo1_1,Campo1_2,Campo1_3,Campo1_4,Campo1_5,Campo2_1,Campo2_2,Campo2_3,Campo2_4,Campo2_5,Campo3_1, + Campo3_2,Campo3_3,Campo3_4,Campo3_5,Campo4_1,Campo4_2,Campo4_3,Campo4_4,Campo4_5,Campo5_1,Campo5_2,Campo5_3,Campo5_4,Campo5_5, + Campo6_1,Campo6_2,Campo6_3,Campo6_4,Campo6_5,Campo7_1,Campo7_2,Campo7_3,Campo7_4,Campo7_5,Campo8_1,Campo8_2,Campo8_3,Campo8_4, + Campo8_5,Campo9_1,Campo9_2,Campo9_3,Campo9_4,Campo9_5,Campo10_1,Campo10_2,Campo10_3,Campo10_4,Campo10_5,Campo11_1_1,Campo11_1_2, + Campo11_1_3,Campo11_1_4,Campo11_1_5,Campo11_2_1,Campo11_2_2,Campo11_2_3,Campo11_2_4,Campo11_2_5,Campo12_1,Campo12_2,Campo12_3, + Campo12_4,Campo12_5,Campo13_1,Campo13_2,Campo13_3,Campo13_4,Campo13_5,Campo14_1,Campo14_2,Campo14_3,Campo14_4,Campo14_5,Campo15_1, + Campo15_2,Campo15_3,Campo15_4,Campo15_5,Campo16_1,Campo16_2,Campo16_3,Campo16_4,Campo16_5,StatoOk,CodCS) + + SELECT GETDATE(), CampoUDC,Campo1_1,Campo1_2,Campo1_3,Campo1_4,Campo1_5,Campo2_1,Campo2_2,Campo2_3,Campo2_4,Campo2_5,Campo3_1, + Campo3_2,Campo3_3,Campo3_4,Campo3_5,Campo4_1,Campo4_2,Campo4_3,Campo4_4,Campo4_5,Campo5_1,Campo5_2,Campo5_3,Campo5_4,Campo5_5, + Campo6_1,Campo6_2,Campo6_3,Campo6_4,Campo6_5,Campo7_1,Campo7_2,Campo7_3,Campo7_4,Campo7_5,Campo8_1,Campo8_2,Campo8_3,Campo8_4, + Campo8_5,Campo9_1,Campo9_2,Campo9_3,Campo9_4,Campo9_5,Campo10_1,Campo10_2,Campo10_3,Campo10_4,Campo10_5,Campo11_1_1,Campo11_1_2, + Campo11_1_3,Campo11_1_4,Campo11_1_5,Campo11_2_1,Campo11_2_2,Campo11_2_3,Campo11_2_4,Campo11_2_5,Campo12_1,Campo12_2,Campo12_3, + Campo12_4,Campo12_5,Campo13_1,Campo13_2,Campo13_3,Campo13_4,Campo13_5,Campo14_1,Campo14_2,Campo14_3,Campo14_4,Campo14_5,Campo15_1, + Campo15_2,Campo15_3,Campo15_4,Campo15_5,Campo16_1,Campo16_2,Campo16_3,Campo16_4,Campo16_5,StatoOk,CodCS + FROM deleted + +END +go + +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2011-05-20 +-- Description: trigger x inserimento in tab +-- storico record cancellati +-- ============================================= +create TRIGGER trg_RigheListePrelievoDel + ON RigheListePrelievo + AFTER DELETE +AS +BEGIN + + -- setup variabili e verbosità + SET NOCOUNT ON; + -- inserisco in storico + INSERT INTO RigheListePrelievo_storico + (DataOraDelete,CodLista,UDC,Qta,Proposto,Prelevato) + + SELECT GETDATE(), CodLista,UDC,Qta,Proposto,Prelevato + FROM deleted + + +END +go + +commit +go + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_RLP_resetPrelevate +* +* sblocca righe liste di prelievo come NON PRELEVATE +* +* Steamware, S.E.L. +* mod: 2011.05.20 +* +****************************************/ +create PROCEDURE stp_RLP_resetPrelevate +( + @CodLista NVARCHAR(12) +) +AS + +-- effettua "sblocco" delle righe liste prelievo +UPDATE RigheListePrelievo + SET Prelevato = 0 + WHERE CodLista = @CodLista + +RETURN +go + +/*************************************** +* STORED stp_TTPE_getByCodEvento +* +* ottiene una riga della tab di transizione eventi dato evento +* +* Steamware, S.E.L. +* mod: 2011.05.20 +* +************************************/ +create PROCEDURE stp_TTPE_getByCodEvento +( + @CodEvento NVARCHAR(10) +) +AS + +SELECT * +FROM TabTranPosizEventi +where CodEvento = @CodEvento +go + +commit +go + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* FUNCTION f_getCellaByPos +* +* fornisce la prima cella associata ad una posizione "logica" di magazzino +* +* Steamware, S.E.L. +* mod: 2011.05.20 +* +****************************************/ +create FUNCTION f_getCellaByPos (@posizione VARCHAR(255)) +RETURNS INT AS +BEGIN + +DECLARE @answ AS INT + + SET @answ = ( + SELECT TOP 1 ISNULL(IdxCella,0) FROM Celle + WHERE IdxBlocco = ( SELECT IdxBlocco FROM Blocchi WHERE CodMag = @posizione ) + ) + +RETURN @answ + +END +go + +commit +go + + + +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.09.28 +* +****************************************/ +alter PROCEDURE stp_scaricaUdc +( + @UDC VARCHAR(50), + @IdxCellaFrom INT, + @IdxPosizione INT +) +AS + +BEGIN TRAN + -- 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, ModDate = GETDATE() + WHERE UDC = @UDC + +COMMIT TRAN + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/***************************************** +* STORED stp_ODETTE_delete +* +* Elimina una riga etichetta odette +* +* Steamware, S.E.L. +* mod: 2011.05.10 +* +****************************************/ +create PROCEDURE stp_ODETTE_delete +( + @Original_CampoUDC NVARCHAR(50) +) +AS + +DELETE +FROM Odette +WHERE CampoUDC = @Original_CampoUDC + +RETURN +go + +/***************************************** +* STORED stp_ODETTE_upsertUdc +* +* effettua upsert x l'UDC (ovver crea nuovo solo se non c'è...) +* +* Steamware, S.E.L. +* mod: 2011.04.28 +* +****************************************/ +alter PROCEDURE stp_ODETTE_upsertUdc +( + @UDC NVARCHAR(10), + @CodCS VARCHAR(2), + @numBolla NVARCHAR(6), + @dataBolla NVARCHAR(8), + @IndStabFrom NVARCHAR(50), + @qtaCont NVARCHAR(50) +) +AS + + +-- DECLARE iniziali x gestione contatori odette +DECLARE @Flusso AS VARCHAR(2) +DECLARE @Anno AS VARCHAR(2) +DECLARE @numOdette AS INT +DECLARE @nextOdette AS INT + +------------------------------------------------------------------------------------------------------ +-- Fix flusso ed anno x 'OD' e '00' (contatore non spezzato su anno... +------------------------------------------------------------------------------------------------------ +SET @Flusso = 'OD' +SET @Anno = '00' + +------------------------------------------------------------------------------------------------------ +-- Contatore Odette +------------------------------------------------------------------------------------------------------ +-- controllo se ci sia già un odette per company / flusso / anno +BEGIN TRAN + -- cerco nella tab contatori UDC l'ultimo valido + SET @numOdette = ( + SELECT count(*) + FROM Odette + WHERE CodCS = @CodCS + ) + -- controllo se record c'è... + IF(@numOdette > 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 @numOdette = ( + SELECT LastIdx + FROM ContatoriUdc + WHERE CodCS = @CodCS + AND Flusso = @Flusso + AND Anno = @Anno + ) +COMMIT TRAN + +-- cerco se ci sia già la riga Odette +DECLARE @udcTrovati AS INT +SET @udcTrovati = ( SELECT COUNT(*) FROM Odette WHERE CampoUDC = @UDC ) + +-- controllo se esista già... se non c'è creo +IF (@udcTrovati = 0) + BEGIN + INSERT INTO Odette(CampoUDC, StatoOk, CodCS) + VALUES(@UDC, 0, @CodCS) + END + +-- calcolo valori x update +DECLARE @DataB AS NVARCHAR(7) +SET @DataB = ( SELECT 'D'+ SUBSTRING(@dataBolla, 3, 6) ) +DECLARE @udcShort NVARCHAR(10) +SET @udcShort = SUBSTRING(@UDC, 3, LEN(@UDC)-2) -- prendo da 3° carattere perché prima "U" e una lettera x tipo prodotto gitterbox + +-- update valori (sovrascrivo...) +UPDATE Odette +SET Campo3_2 = @numBolla, + Campo3_3 = @numBolla, + Campo4_2 = @IndStabFrom, + Campo9_2 = @qtaCont, + Campo9_3 = @qtaCont, + Campo13_2 = @DataB, + Campo15_2 = @numOdette, + Campo15_3 = @numOdette, + Campo16_2 = @udcShort +WHERE CampoUDC = @UDC + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/*************************************** +* STORED stp_cellaGetFirstByPosizione +* +* ottiene la prima cella data la posizione indicata +* +* Steamware, S.E.L. +* mod: 2011.05.20 +* +****************************************/ +create PROCEDURE stp_cellaGetFirstByPosizione +( + @posizione NVARCHAR(50) +) +AS + + SELECT * + FROM Celle + WHERE IdxCella = dbo.f_getCellaByPos(@posizione) + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/***************************************** +* STORED stp_EDM_spostaDataMtx +* +* Sposta un datamatrix in un nuovo gitterbox +* +* Steamware, S.E.L. +* mod: 2011.05.05 +* +****************************************/ +alter PROCEDURE stp_EDM_spostaDataMtx +( + @CodDataMatrix NUMERIC(23), + @CodGitterbox NVARCHAR(10) +) +AS + +-- salvo codice gitterbox di partenza +DECLARE @CodGitterboxFrom AS NVARCHAR(10) +SET @CodGitterboxFrom = ( SELECT CodGitterbox FROM ElencoDataMatrix WHERE CodDataMatrix = @CodDataMatrix ) + +UPDATE ElencoDataMatrix +SET CodGitterbox = @CodGitterbox +WHERE CodDataMatrix = @CodDataMatrix + +-- aggiorno valori QTA gitterbox di partenza... +UPDATE ElencoCartellini +SET Qta = ( SELECT COUNT(*) FROM ElencoDataMatrix WHERE CodGitterbox = @CodGitterboxFrom ) +WHERE UDC = @CodGitterboxFrom +-- aggiorno valoti QTA gitterbox destinazione... +UPDATE ElencoCartellini +SET Qta = ( SELECT COUNT(*) FROM ElencoDataMatrix WHERE CodGitterbox = @CodGitterbox ) +WHERE UDC = @CodGitterbox + +-- aggiorno righe liste di prelievo... +UPDATE RigheListePrelievo +SET Qta = ( SELECT COUNT(*) FROM ElencoDataMatrix WHERE CodGitterbox = @CodGitterboxFrom ) +WHERE UDC = @CodGitterboxFrom +-- aggiorno valoti QTA gitterbox destinazione... +UPDATE RigheListePrelievo +SET Qta = ( SELECT COUNT(*) FROM ElencoDataMatrix WHERE CodGitterbox = @CodGitterbox ) +WHERE UDC = @CodGitterbox + +-- select finale! +SELECT * +FROM ElencoDataMatrix +WHERE CodDataMatrix = @CodDataMatrix + +RETURN +go + +commit +go + + +drop procedure stp_BORI_caricaDatiNew +go + + +-- ATTENZIONE!!! DA QUI SI DEVE AVERE corrette le view sul db SP_produzione_test + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/***************************************** +* STORED stp_DtMtx_getOrig +* +* Cerca la bolla richiesta x chiave +* +* Steamware, S.E.L. +* mod: 2011.05.19 +* +****************************************/ +create PROCEDURE stp_DtMtx_getOrig +( + @CodDataMatrix NVARCHAR(50) +) +AS + +SELECT * +FROM v_trasfDataMatrix +WHERE CodDataMatrix = @CodDataMatrix + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/***************************************** +* STORED stp_DtMtrx_import +* +* Recupera dati Gitterbox/DataMatrix partendo leggendo dati successivi all'ultimo import e importanto in tab GMW +* +* Steamware, S.E.L. +* mod: 2011.04.29 +* +****************************************/ +alter PROCEDURE stp_DtMtrx_import +( + @CodCS VARCHAR(2), + @IdxPosizione INT +) +AS + +------------------------------------------------------------------------------------------------------ +-- leggo data ultimo import (o creo record...) +------------------------------------------------------------------------------------------------------ +DECLARE @nomeFlusso AS NVARCHAR(50) +DECLARE @lastImport AS DATETIME +DECLARE @trovati AS INT + +-- imposto valori +SET @nomeFlusso = 'DataMatrix' +SET @lastImport = DATEADD(yy,-10,GETDATE()) -- inizializzo a -10 anni ... +-- sistemo tab registrazione import... +BEGIN TRAN + -- cerco nella tab log ultima data caricamento + SET @trovati = ( + SELECT COUNT(*) + FROM logImportFlussi + WHERE NomeFlusso = @nomeFlusso + ) + -- controllo se record c'è... + IF(@trovati > 0) + BEGIN + SET @lastImport = ( SELECT LastImport FROM LogImportFlussi WHERE NomeFlusso = @nomeFlusso ) + END + ELSE + BEGIN + -- lo creo! + INSERT INTO LogImportFlussi(NomeFlusso, LastImport) + VALUES (@nomeFlusso, @lastImport) + END +COMMIT TRAN +------------------------------------------------------------------------------------------------------ + + +------------------------------------------------------------------------------------------------------ +-- ora gestisco il vero caricamento... +------------------------------------------------------------------------------------------------------ + -- filtro e salvo in tabella... gitterbox validi SOLO se iniziano per "U" + DECLARE @newData TABLE + ( + CodDataMatrix numeric(23, 0) , + CodGitterbox char(10) , + NumConchiglia int , + NumDisegno numeric(7, 0) , + EsponenteDisegno tinyint , + CodDifettoScarto varchar(5) , + InizioPreparazione smalldatetime , + FinePreparazione smalldatetime , + InizioIniezione smalldatetime , + FineIniezione smalldatetime , + MagDestinazione varchar(2) , + DataImport smalldatetime + ) + INSERT INTO @newData + SELECT CodDataMatrix, LTRIM(RTRIM(CodGitterbox)), NumConchiglia, NumDisegno, EsponenteDisegno, CodDifettoScarto, InizioPreparazione, FinePreparazione, InizioIniezione, FineIniezione, MagDestinazione, DataImport + + FROM v_trasfDataMatrix + WHERE DataImport > @lastImport AND LEFT(CodGitterbox, 1) = 'U' + + + + -- creo UDC da gitterbox nuovi + INSERT INTO ElencoCartellini(UDC, Particolare, DataFus) + SELECT DISTINCT nd.CodGitterbox, null, MIN(InizioIniezione) + FROM @newData nd LEFT OUTER JOIN ElencoCartellini ec ON nd.CodGitterbox = ec.UDC + WHERE ec.UDC IS NULL + GROUP BY nd.CodGitterbox + + DECLARE @udc NVARCHAR(50) + DECLARE @Particolare NVARCHAR(50) + DECLARE @NumDisegno NVARCHAR(50) + DECLARE @EsponenteDisegno NVARCHAR(50) + DECLARE @Qta INT + DECLARE @IdxCellaTo INT + DECLARE @adesso DATETIME + DECLARE @posTrovate INT + + SET @adesso = GETDATE() + SET @posTrovate = 0 + + DECLARE cursoreImport CURSOR FOR + SELECT nd.CodGitterbox, tp.Particolare, tp.NumDisegno, tp.EsponenteDisegno, dbo.getNumDatamatrix(nd.CodGitterbox) FROM @newData nd + INNER JOIN v_transcParticolari tp ON nd.NumDisegno = tp.NumDisegno AND nd.EsponenteDisegno = tp.EsponenteDisegno + + OPEN cursoreImport + FETCH NEXT FROM cursoreImport INTO @udc, @Particolare, @NumDisegno, @EsponenteDisegno, @Qta + + WHILE @@FETCH_STATUS = 0 + BEGIN + + -- aggiorno gli UDC gitterbox esistenti per quantità tra quelli dei dati da importare... + UPDATE ElencoCartellini + SET CodCS = @CodCS, + IdxPosizione = @IdxPosizione, + CreateDate = @adesso, + Particolare = @Particolare, + DisegnoGrezzo = @NumDisegno, + Esponente = @EsponenteDisegno, + Qta = @Qta, + Figura = '', + CodImballo = '', + Tara = 0, + PesoTot = 0, + PesoCad = 0, + CodStato = 'Fin', + NumCont = 1, + TurnoFus = 0, + ModDate = @adesso + WHERE UDC = @udc + + -- indico cella UDC corrente... calcolo la prima cella della nuova posizione... + SET @IdxCellaTo = ( SELECT dbo.f_getCellaByPos(CAST(@IdxPosizione AS NVARCHAR(50))) ) + /*( + SELECT TOP 1 IdxCella FROM Celle + WHERE IdxBlocco = ( + SELECT IdxBlocco FROM Blocchi + WHERE CodMag=CAST(@IdxPosizione AS NVARCHAR(50))) + )*/ + + -- controllo se posizione non ancora creata... + SET @posTrovate = ( SELECT COUNT(*) FROM PosizioneUdcCorrente WHERE UDC = @udc ) + IF( @posTrovate =0) + BEGIN + INSERT INTO PosizioneUdcCorrente + VALUES (@udc, @IdxCellaTo, @CodCS, @adesso) + END + + FETCH NEXT FROM cursoreImport INTO @udc, @Particolare, @NumDisegno, @EsponenteDisegno, @Qta + + + END + + CLOSE cursoreImport + DEALLOCATE cursoreImport + + -- inserisco datamatrix da ultimo import + INSERT INTO ElencoDataMatrix + SELECT * FROM @newData + + -- aggiorno dati ultimo caricamento + SET @lastImport = ( SELECT ISNULL(MAX(DataImport),@lastImport) FROM @newData ) + UPDATE LogImportFlussi + SET LastImport = @lastImport + WHERE NomeFlusso = @nomeFlusso + + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +alter table ElencoDataMatrix drop + constraint DF_ElencoDataMatrix_CodGitterbox +go + +alter table ElencoDataMatrix alter column + CodGitterbox nvarchar(50) not null +go + +alter table ElencoDataMatrix add + constraint DF_ElencoDataMatrix_CodGitterbox default ('') for CodGitterbox, + constraint FK_ElencoDataMatrix_ElencoCartellini foreign key(CodGitterbox) references ElencoCartellini(UDC) on update cascade +go + +set ANSI_NULLS on +go + +/***************************************** +* STORED stp_EDM_spostaDataMtx +* +* Sposta un datamatrix in un nuovo gitterbox +* +* Steamware, S.E.L. +* mod: 2011.05.05 +* +****************************************/ +alter PROCEDURE stp_EDM_spostaDataMtx +( + @CodDataMatrix NUMERIC(23), + @CodGitterbox NVARCHAR(10) +) +AS + +-- salvo codice gitterbox di partenza +DECLARE @CodGitterboxFrom AS NVARCHAR(10) +SET @CodGitterboxFrom = ( SELECT CodGitterbox FROM ElencoDataMatrix WHERE CodDataMatrix = @CodDataMatrix ) + +UPDATE ElencoDataMatrix +SET CodGitterbox = @CodGitterbox +WHERE CodDataMatrix = @CodDataMatrix + +-- aggiorno valori QTA gitterbox di partenza... +UPDATE ElencoCartellini +SET Qta = ( SELECT COUNT(*) FROM ElencoDataMatrix WHERE CodGitterbox = @CodGitterboxFrom ) +WHERE UDC = @CodGitterboxFrom +-- aggiorno valoti QTA gitterbox destinazione... +UPDATE ElencoCartellini +SET Qta = ( SELECT COUNT(*) FROM ElencoDataMatrix WHERE CodGitterbox = @CodGitterbox ) +WHERE UDC = @CodGitterbox + +-- aggiorno righe liste di prelievo... +UPDATE RigheListePrelievo +SET Qta = ( SELECT COUNT(*) FROM ElencoDataMatrix WHERE CodGitterbox = @CodGitterboxFrom ) +WHERE UDC = @CodGitterboxFrom +-- aggiorno valoti QTA gitterbox destinazione... +UPDATE RigheListePrelievo +SET Qta = ( SELECT COUNT(*) FROM ElencoDataMatrix WHERE CodGitterbox = @CodGitterbox ) +WHERE UDC = @CodGitterbox + +-- select finale! +SELECT * +FROM ElencoDataMatrix +WHERE CodDataMatrix = @CodDataMatrix + +RETURN +go + +/***************************************** +* STORED stp_DtMtrx_import +* +* Recupera dati Gitterbox/DataMatrix partendo leggendo dati successivi all'ultimo import e importanto in tab GMW +* +* Steamware, S.E.L. +* mod: 2011.04.29 +* +****************************************/ +alter PROCEDURE stp_DtMtrx_import +( + @CodCS VARCHAR(2), + @IdxPosizione INT +) +AS + +------------------------------------------------------------------------------------------------------ +-- leggo data ultimo import (o creo record...) +------------------------------------------------------------------------------------------------------ +DECLARE @nomeFlusso AS NVARCHAR(50) +DECLARE @lastImport AS DATETIME +DECLARE @trovati AS INT + +-- imposto valori +SET @nomeFlusso = 'DataMatrix' +SET @lastImport = DATEADD(yy,-10,GETDATE()) -- inizializzo a -10 anni ... +-- sistemo tab registrazione import... +BEGIN TRAN + -- cerco nella tab log ultima data caricamento + SET @trovati = ( + SELECT COUNT(*) + FROM logImportFlussi + WHERE NomeFlusso = @nomeFlusso + ) + -- controllo se record c'è... + IF(@trovati > 0) + BEGIN + SET @lastImport = ( SELECT LastImport FROM LogImportFlussi WHERE NomeFlusso = @nomeFlusso ) + END + ELSE + BEGIN + -- lo creo! + INSERT INTO LogImportFlussi(NomeFlusso, LastImport) + VALUES (@nomeFlusso, @lastImport) + END +COMMIT TRAN +------------------------------------------------------------------------------------------------------ + + +------------------------------------------------------------------------------------------------------ +-- ora gestisco il vero caricamento... +------------------------------------------------------------------------------------------------------ + -- filtro e salvo in tabella... gitterbox validi SOLO se iniziano per "U" + DECLARE @newData TABLE + ( + CodDataMatrix numeric(23, 0) , + CodGitterbox char(10) , + NumConchiglia int , + NumDisegno numeric(7, 0) , + EsponenteDisegno tinyint , + CodDifettoScarto varchar(5) , + InizioPreparazione smalldatetime , + FinePreparazione smalldatetime , + InizioIniezione smalldatetime , + FineIniezione smalldatetime , + MagDestinazione varchar(2) , + DataImport smalldatetime + ) + INSERT INTO @newData + SELECT CodDataMatrix, LTRIM(RTRIM(CodGitterbox)), NumConchiglia, NumDisegno, EsponenteDisegno, CodDifettoScarto, InizioPreparazione, FinePreparazione, InizioIniezione, FineIniezione, MagDestinazione, DataImport + + FROM v_trasfDataMatrix + WHERE DataImport > @lastImport AND LEFT(CodGitterbox, 1) = 'U' + + + + -- creo UDC da gitterbox nuovi + INSERT INTO ElencoCartellini(UDC, Particolare, DataFus) + SELECT DISTINCT nd.CodGitterbox, null, MIN(InizioIniezione) + FROM @newData nd LEFT OUTER JOIN ElencoCartellini ec ON nd.CodGitterbox = ec.UDC + WHERE ec.UDC IS NULL + GROUP BY nd.CodGitterbox + + DECLARE @udc NVARCHAR(50) + DECLARE @Particolare NVARCHAR(50) + DECLARE @NumDisegno NVARCHAR(50) + DECLARE @EsponenteDisegno NVARCHAR(50) + DECLARE @Qta INT + DECLARE @IdxCellaTo INT + DECLARE @adesso DATETIME + DECLARE @posTrovate INT + + SET @adesso = GETDATE() + SET @posTrovate = 0 + + DECLARE cursoreImport CURSOR FOR + SELECT nd.CodGitterbox, tp.Particolare, tp.NumDisegno, tp.EsponenteDisegno, dbo.getNumDatamatrix(nd.CodGitterbox) FROM @newData nd + INNER JOIN v_transcParticolari tp ON nd.NumDisegno = tp.NumDisegno AND nd.EsponenteDisegno = tp.EsponenteDisegno + + OPEN cursoreImport + FETCH NEXT FROM cursoreImport INTO @udc, @Particolare, @NumDisegno, @EsponenteDisegno, @Qta + + WHILE @@FETCH_STATUS = 0 + BEGIN + + -- aggiorno gli UDC gitterbox esistenti per quantità tra quelli dei dati da importare... + UPDATE ElencoCartellini + SET CodCS = @CodCS, + IdxPosizione = @IdxPosizione, + CreateDate = @adesso, + Particolare = @Particolare, + DisegnoGrezzo = @NumDisegno, + Esponente = @EsponenteDisegno, + Qta = @Qta, + Figura = '', + CodImballo = '', + Tara = 0, + PesoTot = 0, + PesoCad = 0, + CodStato = 'Fin', + NumCont = 1, + TurnoFus = 0, + ModDate = @adesso + WHERE UDC = @udc + + -- indico cella UDC corrente... calcolo la prima cella della nuova posizione... + SET @IdxCellaTo = ( SELECT dbo.f_getCellaByPos(CAST(@IdxPosizione AS NVARCHAR(50))) ) + /*( + SELECT TOP 1 IdxCella FROM Celle + WHERE IdxBlocco = ( + SELECT IdxBlocco FROM Blocchi + WHERE CodMag=CAST(@IdxPosizione AS NVARCHAR(50))) + )*/ + + -- controllo se posizione non ancora creata... + SET @posTrovate = ( SELECT COUNT(*) FROM PosizioneUdcCorrente WHERE UDC = @udc ) + IF( @posTrovate =0) + BEGIN + INSERT INTO PosizioneUdcCorrente + VALUES (@udc, @IdxCellaTo, @CodCS, @adesso) + END + + FETCH NEXT FROM cursoreImport INTO @udc, @Particolare, @NumDisegno, @EsponenteDisegno, @Qta + + + END + + CLOSE cursoreImport + DEALLOCATE cursoreImport + + -- inserisco datamatrix da ultimo import + INSERT INTO ElencoDataMatrix + SELECT * FROM @newData + + -- aggiorno dati ultimo caricamento + SET @lastImport = ( SELECT ISNULL(MAX(DataImport),@lastImport) FROM @newData ) + UPDATE LogImportFlussi + SET LastImport = @lastImport + WHERE NomeFlusso = @nomeFlusso + + +RETURN +go + +commit +go + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(390, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00391.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00391.sql new file mode 100644 index 00000000..1593f8db --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00391.sql @@ -0,0 +1,936 @@ +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/***************************************** +* STORED stp_ODETTE_upsertUdc +* +* effettua upsert x l'UDC (ovver crea nuovo solo se non c'è...) +* +* Steamware, S.E.L. +* mod: 2011.04.28 +* +****************************************/ +alter PROCEDURE stp_ODETTE_upsertUdc +( + @UDC NVARCHAR(10), + @CodCS VARCHAR(2), + @numBolla NVARCHAR(6), + @dataBolla NVARCHAR(8), + @IndStabFrom NVARCHAR(50), + @qtaCont NVARCHAR(50) +) +AS + + +-- DECLARE iniziali x gestione contatori odette +DECLARE @Flusso AS VARCHAR(2) +DECLARE @Anno AS VARCHAR(2) +DECLARE @numOdette AS INT +DECLARE @nextOdette AS INT + +------------------------------------------------------------------------------------------------------ +-- Fix flusso ed anno x 'OD' e '00' (contatore non spezzato su anno... +------------------------------------------------------------------------------------------------------ +SET @Flusso = 'OD' +SET @Anno = '00' + +------------------------------------------------------------------------------------------------------ +-- Contatore Odette +------------------------------------------------------------------------------------------------------ +-- controllo se ci sia già un odette per company / flusso / anno +BEGIN TRAN + -- cerco nella tab contatori UDC l'ultimo valido + SET @numOdette = ( + SELECT count(*) + FROM Odette + WHERE CodCS = @CodCS + ) + -- controllo se record c'è... + IF(@numOdette > 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 @numOdette = ( + SELECT LastIdx + FROM ContatoriUdc + WHERE CodCS = @CodCS + AND Flusso = @Flusso + AND Anno = @Anno + ) +COMMIT TRAN + +-- cerco se ci sia già la riga Odette +DECLARE @udcTrovati AS INT +SET @udcTrovati = ( SELECT COUNT(*) FROM Odette WHERE CampoUDC = @UDC ) + +-- controllo se esista già... se non c'è creo +IF (@udcTrovati = 0) + BEGIN + INSERT INTO Odette(CampoUDC, StatoOk, CodCS) + VALUES(@UDC, 0, @CodCS) + END + +-- calcolo valori x update +DECLARE @DataB AS NVARCHAR(7) +SET @DataB = ( SELECT 'D'+ SUBSTRING(@dataBolla, 3, 6) ) +DECLARE @udcShort NVARCHAR(10) +--SET @udcShort = SUBSTRING(@UDC, 3, LEN(@UDC)-2) -- prendo da 3° carattere perché prima "U" e una lettera x tipo prodotto gitterbox + +-- update valori (sovrascrivo...) +UPDATE Odette +SET Campo3_2 = @numBolla, + Campo3_3 = @numBolla, + Campo4_2 = @IndStabFrom, + Campo9_2 = @qtaCont, + Campo9_3 = @qtaCont, + Campo13_2 = @DataB, + Campo15_2 = @numOdette, + Campo15_3 = @numOdette, + Campo16_2 = @UDC +WHERE CampoUDC = @UDC + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +alter table Odette add + CodMag nvarchar(2), + GrpBolla nvarchar(1), + DataBolla numeric(8,0), + NumBolla numeric(6,0), + Particolare nvarchar(15), + CodLista nvarchar(12) +go + + + +commit +go + +set xact_abort on +go + +begin transaction +go + +update Odette +set CodMag='SP', GrpBolla='0', NumBolla=cast(Campo3_2 as numeric(8,0)), Particolare=Campo11_1_2, DataBolla=0, CodLista='' +go + +update Odette +set CodLista = rlp.CodLista +from Odette inner join RigheListePrelievo rlp on rlp.UDC=Odette.CampoUDC +go + +update Odette +set DataBolla = b.DTBOS +from Odette inner join RawData.BORI202J b on b.NRBOS=Odette.NumBolla +go + +commit +go + +set xact_abort on +go + +begin transaction +go + +update Odette set CodMag = '' where CodMag is null +go + +alter table Odette alter column + CodMag nvarchar(2) not null +go + +update Odette set GrpBolla = '' where GrpBolla is null +go + +alter table Odette alter column + GrpBolla nvarchar(1) not null +go + +update Odette set DataBolla = 0 where DataBolla is null +go + +alter table Odette alter column + DataBolla numeric(8,0) not null +go + +update Odette set NumBolla = 0 where NumBolla is null +go + +alter table Odette alter column + NumBolla numeric(6,0) not null +go + +update Odette set Particolare = '' where Particolare is null +go + +alter table Odette alter column + Particolare nvarchar(15) not null +go + +update Odette set CodLista = '' where CodLista is null +go + +alter table Odette alter column + CodLista nvarchar(12) not null +go + +alter table Odette add + constraint DF_Odette_Particolare default ('') for Particolare, + constraint DF_Odette_CodLista default ('') for CodLista, + constraint DF_Odette_DataBolla default (0) for DataBolla, + constraint DF_Odette_NumBolla default (0) for NumBolla, + constraint DF_Odette_CodMag default ('') for CodMag, + constraint DF_Odette_GrpBolla default ('') for GrpBolla, + constraint DF_Odette_CodCS default ('') for CodCS +go + +set ANSI_NULLS on +go + + + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/***************************************** +* STORED stp_ODETTE_deleteByLDP +* +* Elimina una riga etichetta odette +* +* Steamware, S.E.L. +* mod: 2011.05.23 +* +****************************************/ +create PROCEDURE stp_ODETTE_deleteByLDP +( + @CodLista NVARCHAR(12) +) +AS + +DELETE +FROM Odette +WHERE CodLista = @CodLista + +RETURN +go + +/***************************************** +* STORED stp_ODETTE_getByBolla +* +* Recupera etichette odette associate ad una bolla CON STATO OK +* +* Steamware, S.E.L. +* mod: 2011.05.23 +* +****************************************/ +create PROCEDURE stp_ODETTE_getByBolla +( + @CodMag NVARCHAR(2), + @GrpBolla NVARCHAR(1), + @NumBolla NUMERIC(6,0), + @DataBolla NUMERIC(8,0), + @Particolare NVARCHAR(15) +) +AS + + +SELECT * +FROM Odette +WHERE CodMag = @CodMag +AND GrpBolla = @GrpBolla +AND NumBolla = @NumBolla +AND DataBolla = @DataBolla +AND Particolare = @Particolare +AND StatoOk = 1 + +RETURN +go + +/***************************************** +* STORED stp_ODETTE_getByListaPrelievo +* +* Recupera etichette odette associate ad una lista di prelievo CON STATO OK +* +* Steamware, S.E.L. +* mod: 2011.04.29 +* +****************************************/ +alter PROCEDURE stp_ODETTE_getByListaPrelievo +( + @CodLista NVARCHAR(12) +) +AS + +/* +SELECT o.* +FROM Odette o INNER JOIN RigheListePrelievo rlp ON o.CampoUDC = rlp.UDC +WHERE (rlp.CodLista = @CodLista) AND (o.StatoOk = 1) +*/ + +SELECT * +FROM Odette +WHERE (CodLista = @CodLista) AND (StatoOk = 1) + +RETURN +go + +/***************************************** +* STORED stp_ODETTE_upsertUdc +* +* effettua upsert x l'UDC (ovver crea nuovo solo se non c'è...) +* +* Steamware, S.E.L. +* mod: 2011.04.28 +* +****************************************/ +alter PROCEDURE stp_ODETTE_upsertUdc +( + @UDC NVARCHAR(10), + @CodCS VARCHAR(2), + @numBolla NVARCHAR(6), + @dataBolla NVARCHAR(8), + @CodMag NVARCHAR(2), + @GrpBolla NVARCHAR(1), + @Particolare NVARCHAR(15), + @CodLista NVARCHAR(12), + @IndStabFrom NVARCHAR(50), + @qtaCont NVARCHAR(50) +) +AS + + +-- DECLARE iniziali x gestione contatori odette +DECLARE @Flusso AS VARCHAR(2) +DECLARE @Anno AS VARCHAR(2) +DECLARE @numOdette AS INT +DECLARE @nextOdette AS INT + +------------------------------------------------------------------------------------------------------ +-- Fix flusso ed anno x 'OD' e '00' (contatore non spezzato su anno... +------------------------------------------------------------------------------------------------------ +SET @Flusso = 'OD' +SET @Anno = '00' + +------------------------------------------------------------------------------------------------------ +-- Contatore Odette +------------------------------------------------------------------------------------------------------ +-- controllo se ci sia già un odette per company / flusso / anno +BEGIN TRAN + -- cerco nella tab contatori UDC l'ultimo valido + SET @numOdette = ( + SELECT count(*) + FROM Odette + WHERE CodCS = @CodCS + ) + -- controllo se record c'è... + IF(@numOdette > 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 @numOdette = ( + SELECT LastIdx + FROM ContatoriUdc + WHERE CodCS = @CodCS + AND Flusso = @Flusso + AND Anno = @Anno + ) +COMMIT TRAN + +-- cerco se ci sia già la riga Odette +DECLARE @udcTrovati AS INT +SET @udcTrovati = ( SELECT COUNT(*) FROM Odette WHERE CampoUDC = @UDC ) + +-- controllo se esista già... se non c'è creo +IF (@udcTrovati = 0) + BEGIN + INSERT INTO Odette(CampoUDC, StatoOk, CodCS) + VALUES(@UDC, 0, @CodCS) + END + +-- calcolo valori x update +DECLARE @DataB AS NVARCHAR(7) +SET @DataB = ( SELECT 'D'+ SUBSTRING(@dataBolla, 3, 6) ) +DECLARE @udcShort NVARCHAR(10) +--SET @udcShort = SUBSTRING(@UDC, 3, LEN(@UDC)-2) -- prendo da 3° carattere perché prima "U" e una lettera x tipo prodotto gitterbox + +-- update valori (sovrascrivo...) +UPDATE Odette +SET Campo3_2 = @numBolla, + Campo3_3 = @numBolla, + Campo4_2 = @IndStabFrom, + Campo9_2 = @qtaCont, + Campo9_3 = @qtaCont, + Campo13_2 = @DataB, + Campo15_2 = @numOdette, + Campo15_3 = @numOdette, + Campo16_2 = @UDC, + CodMag = @CodMag, + GrpBolla = @GrpBolla, + DataBolla = CAST(@dataBolla AS NUMERIC(8,0)), + NumBolla = CAST(@numBolla AS NUMERIC(6,0)), + Particolare = @Particolare, + CodLista = @CodLista +WHERE CampoUDC = @UDC + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +alter table Odette_storico add + CodMag nvarchar(2) not null constraint DF_Odette_storico_CodMag default (''), + GrpBolla nvarchar(1) not null constraint DF_Odette_storico_GrpBolla default (''), + DataBolla numeric(8,0) not null constraint DF_Odette_storico_DataBolla default (0), + NumBolla numeric(6,0) not null constraint DF_Odette_storico_NumBolla default (0), + Particolare nvarchar(15) not null constraint DF_Odette_storico_Particolare default (''), + CodLista nvarchar(12) not null constraint DF_Odette_storico_CodLista default ('') +go + + + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +-- ============================================= +-- Author: Samuele E. Locatelli +-- Create date: 2011-05-20 +-- Description: trigger x inserimento in tab +-- storico record cancellati +-- ============================================= +alter TRIGGER trg_odetteDel + ON Odette + AFTER DELETE +AS +BEGIN + + -- setup variabili e verbosità + SET NOCOUNT ON; + -- inserisco in storico + INSERT INTO Odette_storico + (DataOraDelete,CampoUDC,Campo1_1,Campo1_2,Campo1_3,Campo1_4,Campo1_5,Campo2_1,Campo2_2,Campo2_3,Campo2_4,Campo2_5,Campo3_1, + Campo3_2,Campo3_3,Campo3_4,Campo3_5,Campo4_1,Campo4_2,Campo4_3,Campo4_4,Campo4_5,Campo5_1,Campo5_2,Campo5_3,Campo5_4,Campo5_5, + Campo6_1,Campo6_2,Campo6_3,Campo6_4,Campo6_5,Campo7_1,Campo7_2,Campo7_3,Campo7_4,Campo7_5,Campo8_1,Campo8_2,Campo8_3,Campo8_4, + Campo8_5,Campo9_1,Campo9_2,Campo9_3,Campo9_4,Campo9_5,Campo10_1,Campo10_2,Campo10_3,Campo10_4,Campo10_5,Campo11_1_1,Campo11_1_2, + Campo11_1_3,Campo11_1_4,Campo11_1_5,Campo11_2_1,Campo11_2_2,Campo11_2_3,Campo11_2_4,Campo11_2_5,Campo12_1,Campo12_2,Campo12_3, + Campo12_4,Campo12_5,Campo13_1,Campo13_2,Campo13_3,Campo13_4,Campo13_5,Campo14_1,Campo14_2,Campo14_3,Campo14_4,Campo14_5,Campo15_1, + Campo15_2,Campo15_3,Campo15_4,Campo15_5,Campo16_1,Campo16_2,Campo16_3,Campo16_4,Campo16_5,StatoOk,CodCS,CodMag,GrpBolla,DataBolla, + NumBolla,Particolare,CodLista) + + SELECT GETDATE(), CampoUDC,Campo1_1,Campo1_2,Campo1_3,Campo1_4,Campo1_5,Campo2_1,Campo2_2,Campo2_3,Campo2_4,Campo2_5,Campo3_1, + Campo3_2,Campo3_3,Campo3_4,Campo3_5,Campo4_1,Campo4_2,Campo4_3,Campo4_4,Campo4_5,Campo5_1,Campo5_2,Campo5_3,Campo5_4,Campo5_5, + Campo6_1,Campo6_2,Campo6_3,Campo6_4,Campo6_5,Campo7_1,Campo7_2,Campo7_3,Campo7_4,Campo7_5,Campo8_1,Campo8_2,Campo8_3,Campo8_4, + Campo8_5,Campo9_1,Campo9_2,Campo9_3,Campo9_4,Campo9_5,Campo10_1,Campo10_2,Campo10_3,Campo10_4,Campo10_5,Campo11_1_1,Campo11_1_2, + Campo11_1_3,Campo11_1_4,Campo11_1_5,Campo11_2_1,Campo11_2_2,Campo11_2_3,Campo11_2_4,Campo11_2_5,Campo12_1,Campo12_2,Campo12_3, + Campo12_4,Campo12_5,Campo13_1,Campo13_2,Campo13_3,Campo13_4,Campo13_5,Campo14_1,Campo14_2,Campo14_3,Campo14_4,Campo14_5,Campo15_1, + Campo15_2,Campo15_3,Campo15_4,Campo15_5,Campo16_1,Campo16_2,Campo16_3,Campo16_4,Campo16_5,StatoOk,CodCS,CodMag,GrpBolla,DataBolla, + NumBolla,Particolare,CodLista + FROM deleted + +END +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.ElencoCartellini + VALUES (N'EmptyGBox', N'SP', NULL, NULL, N'', NULL, N'', N'', NULL, NULL, NULL, N'', NULL, 0, N'', NULL, 1, 0, 27.00, N'Fin', 0, 0, 0, NULL, NULL) +go + +commit transaction +go + + + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/***************************************** +* STORED stp_EDM_svuotaGitterbox +* +* Elimina il codice gitterbox dai datamatrix associati (svuotandolo...) +* +* Steamware, S.E.L. +* mod: 2011.05.06 +* +****************************************/ +alter PROCEDURE stp_EDM_svuotaGitterbox +( + @CodGitterbox NVARCHAR(10) +) +AS + +UPDATE ElencoDataMatrix +SET CodGitterbox = 'EmptyGBox' +WHERE CodGitterbox = @CodGitterbox + +-- aggiorno valoti QTA gitterbox originale... +UPDATE ElencoCartellini +SET Qta = ( SELECT COUNT(*) FROM ElencoDataMatrix WHERE CodGitterbox = @CodGitterbox ) +WHERE UDC = @CodGitterbox +-- aggiorno valoti QTA gitterbox 'EmptyGBox +UPDATE ElencoCartellini +SET Qta = ( SELECT COUNT(*) FROM ElencoDataMatrix WHERE CodGitterbox = 'EmptyGBox' ) +WHERE UDC = 'EmptyGBox' + +-- aggiorno righe liste di prelievo... +UPDATE RigheListePrelievo +SET Qta = ( SELECT COUNT(*) FROM ElencoDataMatrix WHERE CodGitterbox = @CodGitterbox ) +WHERE UDC = @CodGitterbox + + + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/***************************************** +* STORED stp_DtMtrx_import +* +* Recupera dati Gitterbox/DataMatrix partendo leggendo dati successivi all'ultimo import e importanto in tab GMW +* +* Steamware, S.E.L. +* mod: 2011.04.29 +* +****************************************/ +alter PROCEDURE stp_DtMtrx_import +( + @CodCS VARCHAR(2), + @IdxPosizione INT +) +AS + +------------------------------------------------------------------------------------------------------ +-- leggo data ultimo import (o creo record...) +------------------------------------------------------------------------------------------------------ +DECLARE @nomeFlusso AS NVARCHAR(50) +DECLARE @lastImport AS DATETIME +DECLARE @trovati AS INT + +-- imposto valori +SET @nomeFlusso = 'DataMatrix' +SET @lastImport = DATEADD(yy,-10,GETDATE()) -- inizializzo a -10 anni ... +-- sistemo tab registrazione import... +BEGIN TRAN + -- cerco nella tab log ultima data caricamento + SET @trovati = ( + SELECT COUNT(*) + FROM logImportFlussi + WHERE NomeFlusso = @nomeFlusso + ) + -- controllo se record c'è... + IF(@trovati > 0) + BEGIN + SET @lastImport = ( SELECT LastImport FROM LogImportFlussi WHERE NomeFlusso = @nomeFlusso ) + END + ELSE + BEGIN + -- lo creo! + INSERT INTO LogImportFlussi(NomeFlusso, LastImport) + VALUES (@nomeFlusso, @lastImport) + END +COMMIT TRAN +------------------------------------------------------------------------------------------------------ + + +------------------------------------------------------------------------------------------------------ +-- ora gestisco il vero caricamento... +------------------------------------------------------------------------------------------------------ + -- filtro e salvo in tabella... gitterbox validi SOLO se iniziano per "U" + DECLARE @newData TABLE + ( + CodDataMatrix numeric(23, 0) , + CodGitterbox char(10) , + NumConchiglia int , + NumDisegno numeric(7, 0) , + EsponenteDisegno tinyint , + CodDifettoScarto varchar(5) , + InizioPreparazione smalldatetime , + FinePreparazione smalldatetime , + InizioIniezione smalldatetime , + FineIniezione smalldatetime , + MagDestinazione varchar(2) , + DataImport smalldatetime + ) + INSERT INTO @newData + SELECT CodDataMatrix, LTRIM(RTRIM(CodGitterbox)), NumConchiglia, NumDisegno, EsponenteDisegno, CodDifettoScarto, InizioPreparazione, FinePreparazione, InizioIniezione, FineIniezione, MagDestinazione, DataImport + + FROM v_trasfDataMatrix + WHERE DataImport > @lastImport AND LEFT(CodGitterbox, 1) = 'U' + AND CodDifettoScarto = '00' -- non importerò gli scarti!!! + + + + + -- creo UDC da gitterbox nuovi + INSERT INTO ElencoCartellini(UDC, Particolare, DataFus) + SELECT DISTINCT nd.CodGitterbox, null, MIN(InizioIniezione) + FROM @newData nd LEFT OUTER JOIN ElencoCartellini ec ON nd.CodGitterbox = ec.UDC + WHERE ec.UDC IS NULL + GROUP BY nd.CodGitterbox + + DECLARE @udc NVARCHAR(50) + DECLARE @Particolare NVARCHAR(50) + DECLARE @NumDisegno NVARCHAR(50) + DECLARE @EsponenteDisegno NVARCHAR(50) + DECLARE @Qta INT + DECLARE @IdxCellaTo INT + DECLARE @adesso DATETIME + DECLARE @posTrovate INT + + SET @adesso = GETDATE() + SET @posTrovate = 0 + + DECLARE cursoreImport CURSOR FOR + SELECT nd.CodGitterbox, tp.Particolare, tp.NumDisegno, tp.EsponenteDisegno, dbo.getNumDatamatrix(nd.CodGitterbox) + FROM @newData nd + INNER JOIN v_transcParticolari tp ON nd.NumDisegno = tp.NumDisegno AND nd.EsponenteDisegno = tp.EsponenteDisegno + + OPEN cursoreImport + FETCH NEXT FROM cursoreImport INTO @udc, @Particolare, @NumDisegno, @EsponenteDisegno, @Qta + + WHILE @@FETCH_STATUS = 0 + BEGIN + + -- aggiorno gli UDC gitterbox esistenti per quantità tra quelli dei dati da importare... + UPDATE ElencoCartellini + SET CodCS = @CodCS, + IdxPosizione = @IdxPosizione, + CreateDate = @adesso, + Particolare = @Particolare, + DisegnoGrezzo = @NumDisegno, + Esponente = @EsponenteDisegno, + Qta = @Qta, + Figura = '', + CodImballo = '', + Tara = 0, + PesoTot = 0, + PesoCad = 0, + CodStato = 'Fin', + NumCont = 1, + TurnoFus = 0, + ModDate = @adesso + WHERE UDC = @udc + + -- indico cella UDC corrente... calcolo la prima cella della nuova posizione... + SET @IdxCellaTo = ( SELECT dbo.f_getCellaByPos(CAST(@IdxPosizione AS NVARCHAR(50))) ) + /*( + SELECT TOP 1 IdxCella FROM Celle + WHERE IdxBlocco = ( + SELECT IdxBlocco FROM Blocchi + WHERE CodMag=CAST(@IdxPosizione AS NVARCHAR(50))) + )*/ + + -- controllo se posizione non ancora creata... + SET @posTrovate = ( SELECT COUNT(*) FROM PosizioneUdcCorrente WHERE UDC = @udc ) + IF( @posTrovate =0) + BEGIN + INSERT INTO PosizioneUdcCorrente + VALUES (@udc, @IdxCellaTo, @CodCS, @adesso) + END + + FETCH NEXT FROM cursoreImport INTO @udc, @Particolare, @NumDisegno, @EsponenteDisegno, @Qta + + + END + + CLOSE cursoreImport + DEALLOCATE cursoreImport + + -- inserisco datamatrix da ultimo import + INSERT INTO ElencoDataMatrix + SELECT * FROM @newData + + -- aggiorno dati ultimo caricamento + SET @lastImport = ( SELECT ISNULL(MAX(DataImport),@lastImport) FROM @newData ) + UPDATE LogImportFlussi + SET LastImport = @lastImport + WHERE NomeFlusso = @nomeFlusso + + +RETURN +go + +commit +go + + +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + + +/***************************************** +* STORED stp_DtMtrx_import +* +* Recupera dati Gitterbox/DataMatrix partendo leggendo dati successivi all'ultimo import e importanto in tab GMW +* +* Steamware, S.E.L. +* mod: 2011.04.29 +* +****************************************/ +ALTER PROCEDURE dbo.stp_DtMtrx_import +( + @CodCS VARCHAR(2), + @IdxPosizione INT +) +AS + +------------------------------------------------------------------------------------------------------ +-- leggo data ultimo import (o creo record...) +------------------------------------------------------------------------------------------------------ +DECLARE @nomeFlusso AS NVARCHAR(50) +DECLARE @lastImport AS DATETIME +DECLARE @trovati AS INT + +-- imposto valori +SET @nomeFlusso = 'DataMatrix' +SET @lastImport = DATEADD(yy,-10,GETDATE()) -- inizializzo a -10 anni ... +-- sistemo tab registrazione import... +BEGIN TRAN + -- cerco nella tab log ultima data caricamento + SET @trovati = ( + SELECT COUNT(*) + FROM logImportFlussi + WHERE NomeFlusso = @nomeFlusso + ) + -- controllo se record c'è... + IF(@trovati > 0) + BEGIN + SET @lastImport = ( SELECT LastImport FROM LogImportFlussi WHERE NomeFlusso = @nomeFlusso ) + END + ELSE + BEGIN + -- lo creo! + INSERT INTO LogImportFlussi(NomeFlusso, LastImport) + VALUES (@nomeFlusso, @lastImport) + END +COMMIT TRAN +------------------------------------------------------------------------------------------------------ + + +------------------------------------------------------------------------------------------------------ +-- ora gestisco il vero caricamento... +------------------------------------------------------------------------------------------------------ + -- filtro e salvo in tabella... gitterbox validi SOLO se iniziano per "U" + DECLARE @newData TABLE + ( + CodDataMatrix numeric(23, 0) , + CodGitterbox char(10) , + NumConchiglia int , + NumDisegno numeric(7, 0) , + EsponenteDisegno tinyint , + CodDifettoScarto varchar(5) , + InizioPreparazione smalldatetime , + FinePreparazione smalldatetime , + InizioIniezione smalldatetime , + FineIniezione smalldatetime , + MagDestinazione varchar(2) , + DataImport smalldatetime + ) + INSERT INTO @newData + SELECT CodDataMatrix, LTRIM(RTRIM(CodGitterbox)), NumConchiglia, NumDisegno, EsponenteDisegno, CodDifettoScarto, InizioPreparazione, FinePreparazione, InizioIniezione, FineIniezione, MagDestinazione, DataImport + + FROM v_trasfDataMatrix + WHERE DataImport > @lastImport AND LEFT(CodGitterbox, 1) = 'U' + AND CodDifettoScarto = '00' -- non importerò gli scarti!!! + + + + + -- creo UDC da gitterbox nuovi + INSERT INTO ElencoCartellini(UDC, Particolare, DataFus, Qta) + SELECT DISTINCT nd.CodGitterbox, null, MIN(InizioIniezione), dbo.getNumDatamatrix(nd.CodGitterbox) + FROM @newData nd LEFT OUTER JOIN ElencoCartellini ec ON nd.CodGitterbox = ec.UDC + WHERE ec.UDC IS NULL + GROUP BY nd.CodGitterbox + + DECLARE @udc NVARCHAR(50) + DECLARE @Particolare NVARCHAR(50) + DECLARE @NumDisegno NVARCHAR(50) + DECLARE @EsponenteDisegno NVARCHAR(50) + DECLARE @IdxCellaTo INT + DECLARE @adesso DATETIME + DECLARE @posTrovate INT + + SET @adesso = GETDATE() + SET @posTrovate = 0 + + DECLARE cursoreImport CURSOR FOR + SELECT nd.CodGitterbox, tp.Particolare, tp.NumDisegno, tp.EsponenteDisegno + FROM @newData nd + INNER JOIN v_transcParticolari tp ON nd.NumDisegno = tp.NumDisegno AND nd.EsponenteDisegno = tp.EsponenteDisegno + + OPEN cursoreImport + FETCH NEXT FROM cursoreImport INTO @udc, @Particolare, @NumDisegno, @EsponenteDisegno + + WHILE @@FETCH_STATUS = 0 + BEGIN + + -- aggiorno gli UDC gitterbox esistenti per quantità tra quelli dei dati da importare... + UPDATE ElencoCartellini + SET CodCS = @CodCS, + IdxPosizione = @IdxPosizione, + CreateDate = @adesso, + Particolare = @Particolare, + DisegnoGrezzo = @NumDisegno, + Esponente = @EsponenteDisegno, + Figura = '', + CodImballo = '', + Tara = 0, + PesoTot = 0, + PesoCad = 0, + CodStato = 'Fin', + NumCont = 1, + TurnoFus = 0, + ModDate = @adesso + WHERE UDC = @udc + + -- indico cella UDC corrente... calcolo la prima cella della nuova posizione... + SET @IdxCellaTo = ( SELECT dbo.f_getCellaByPos(CAST(@IdxPosizione AS NVARCHAR(50))) ) + /*( + SELECT TOP 1 IdxCella FROM Celle + WHERE IdxBlocco = ( + SELECT IdxBlocco FROM Blocchi + WHERE CodMag=CAST(@IdxPosizione AS NVARCHAR(50))) + )*/ + + -- controllo se posizione non ancora creata... + SET @posTrovate = ( SELECT COUNT(*) FROM PosizioneUdcCorrente WHERE UDC = @udc ) + IF( @posTrovate =0) + BEGIN + INSERT INTO PosizioneUdcCorrente + VALUES (@udc, @IdxCellaTo, @CodCS, @adesso) + END + + FETCH NEXT FROM cursoreImport INTO @udc, @Particolare, @NumDisegno, @EsponenteDisegno + + + END + + CLOSE cursoreImport + DEALLOCATE cursoreImport + + -- inserisco datamatrix da ultimo import + INSERT INTO ElencoDataMatrix + SELECT * FROM @newData + + -- aggiorno dati ultimo caricamento + SET @lastImport = ( SELECT ISNULL(MAX(DataImport),@lastImport) FROM @newData ) + UPDATE LogImportFlussi + SET LastImport = @lastImport + WHERE NomeFlusso = @nomeFlusso + + +RETURN +go + +commit +go + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(391, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00392.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00392.sql new file mode 100644 index 00000000..5f105979 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00392.sql @@ -0,0 +1,237 @@ +set xact_abort on +go + +begin transaction +go + +set ANSI_NULLS on +go + +/***************************************** +* STORED stp_DtMtrx_import +* +* Recupera dati Gitterbox/DataMatrix partendo leggendo dati successivi all'ultimo import e importanto in tab GMW +* +* Steamware, S.E.L. +* mod: 2011.04.29 +* +****************************************/ +alter PROCEDURE stp_DtMtrx_import +( + @CodCS VARCHAR(2), + @IdxPosizione INT +) +AS + +------------------------------------------------------------------------------------------------------ +-- leggo data ultimo import (o creo record...) +------------------------------------------------------------------------------------------------------ +DECLARE @nomeFlusso AS NVARCHAR(50) +DECLARE @lastImport AS DATETIME +DECLARE @trovati AS INT + +-- imposto valori +SET @nomeFlusso = 'DataMatrix' +SET @lastImport = DATEADD(yy,-10,GETDATE()) -- inizializzo a -10 anni ... +-- sistemo tab registrazione import... +BEGIN TRAN + -- cerco nella tab log ultima data caricamento + SET @trovati = ( + SELECT COUNT(*) + FROM logImportFlussi + WHERE NomeFlusso = @nomeFlusso + ) + -- controllo se record c'è... + IF(@trovati > 0) + BEGIN + SET @lastImport = ( SELECT LastImport FROM LogImportFlussi WHERE NomeFlusso = @nomeFlusso ) + END + ELSE + BEGIN + -- lo creo! + INSERT INTO LogImportFlussi(NomeFlusso, LastImport) + VALUES (@nomeFlusso, @lastImport) + END +COMMIT TRAN +------------------------------------------------------------------------------------------------------ + + +------------------------------------------------------------------------------------------------------ +-- ora gestisco il vero caricamento... +------------------------------------------------------------------------------------------------------ + -- filtro e salvo in tabella... gitterbox validi SOLO se iniziano per "U" + DECLARE @newData TABLE + ( + CodDataMatrix numeric(23, 0) , + CodGitterbox varchar(10) , + NumConchiglia int , + NumDisegno numeric(7, 0) , + EsponenteDisegno tinyint , + CodDifettoScarto varchar(5) , + InizioPreparazione smalldatetime , + FinePreparazione smalldatetime , + InizioIniezione smalldatetime , + FineIniezione smalldatetime , + MagDestinazione varchar(2) , + DataImport smalldatetime + ) + INSERT INTO @newData + SELECT CodDataMatrix, LTRIM(RTRIM(CodGitterbox)), NumConchiglia, NumDisegno, EsponenteDisegno, CodDifettoScarto, InizioPreparazione, FinePreparazione, InizioIniezione, FineIniezione, MagDestinazione, DataImport + + FROM v_trasfDataMatrix + WHERE DataImport > @lastImport AND LEFT(CodGitterbox, 1) = 'U' + AND CodDifettoScarto = '00' -- non importerò gli scarti!!! + + + + + -- creo UDC da gitterbox nuovi + INSERT INTO ElencoCartellini(UDC, Particolare, DataFus, Qta) + SELECT DISTINCT nd.CodGitterbox, null, MIN(InizioIniezione), dbo.getNumDatamatrix(nd.CodGitterbox) + FROM @newData nd LEFT OUTER JOIN ElencoCartellini ec ON nd.CodGitterbox = ec.UDC + WHERE ec.UDC IS NULL + GROUP BY nd.CodGitterbox + + DECLARE @udc NVARCHAR(50) + DECLARE @Particolare NVARCHAR(50) + DECLARE @NumDisegno NVARCHAR(50) + DECLARE @EsponenteDisegno NVARCHAR(50) + DECLARE @IdxCellaTo INT + DECLARE @adesso DATETIME + DECLARE @posTrovate INT + + SET @adesso = GETDATE() + SET @posTrovate = 0 + + DECLARE cursoreImport CURSOR FOR + SELECT nd.CodGitterbox, tp.Particolare, tp.NumDisegno, tp.EsponenteDisegno + FROM @newData nd + INNER JOIN v_transcParticolari tp ON nd.NumDisegno = tp.NumDisegno AND nd.EsponenteDisegno = tp.EsponenteDisegno + + OPEN cursoreImport + FETCH NEXT FROM cursoreImport INTO @udc, @Particolare, @NumDisegno, @EsponenteDisegno + + WHILE @@FETCH_STATUS = 0 + BEGIN + + -- aggiorno gli UDC gitterbox esistenti per quantità tra quelli dei dati da importare... + UPDATE ElencoCartellini + SET CodCS = @CodCS, + IdxPosizione = @IdxPosizione, + CreateDate = @adesso, + Particolare = @Particolare, + DisegnoGrezzo = @NumDisegno, + Esponente = @EsponenteDisegno, + Figura = '', + CodImballo = '', + Tara = 0, + PesoTot = 0, + PesoCad = 0, + CodStato = 'Fin', + NumCont = 1, + TurnoFus = 0, + ModDate = @adesso + WHERE UDC = @udc + + -- indico cella UDC corrente... calcolo la prima cella della nuova posizione... + SET @IdxCellaTo = ( SELECT dbo.f_getCellaByPos(CAST(@IdxPosizione AS NVARCHAR(50))) ) + /*( + SELECT TOP 1 IdxCella FROM Celle + WHERE IdxBlocco = ( + SELECT IdxBlocco FROM Blocchi + WHERE CodMag=CAST(@IdxPosizione AS NVARCHAR(50))) + )*/ + + -- controllo se posizione non ancora creata... + SET @posTrovate = ( SELECT COUNT(*) FROM PosizioneUdcCorrente WHERE UDC = @udc ) + IF( @posTrovate =0) + BEGIN + INSERT INTO PosizioneUdcCorrente + VALUES (@udc, @IdxCellaTo, @CodCS, @adesso) + END + + FETCH NEXT FROM cursoreImport INTO @udc, @Particolare, @NumDisegno, @EsponenteDisegno + + + END + + CLOSE cursoreImport + DEALLOCATE cursoreImport + + -- inserisco datamatrix da ultimo import + INSERT INTO ElencoDataMatrix + SELECT * FROM @newData + + -- aggiorno dati ultimo caricamento + SET @lastImport = ( SELECT ISNULL(MAX(DataImport),@lastImport) FROM @newData ) + UPDATE LogImportFlussi + SET LastImport = @lastImport + WHERE NomeFlusso = @nomeFlusso + + +RETURN +go + +commit +go + + +update Delibere +set UDC=LTRIM(RTRIM(udc)) +go + +-- disabilita triggers su db +DISABLE TRIGGER ALL ON DATABASE +go + +update ElencoCartellini +set UDC=LTRIM(RTRIM(udc)) +go + +UPDATE ElencoDataMatrix +set CodGitterbox=LTRIM(RTRIM(CodGitterbox)) +go + +UPDATE Odette +SET CampoUDC=LTRIM(RTRIM(CampoUDC)) +go + +UPDATE Odette_storico +SET CampoUDC=LTRIM(RTRIM(CampoUDC)) +go + +UPDATE PosizioneUdcStorico +SET UDC=LTRIM(RTRIM(UDC)) +go + +-- ESEGUE +UPDATE PosizioneUdcCorrente +SET UDC=LTRIM(RTRIM(UDC)) +go +UPDATE RelazUDC +SET UDC_child=LTRIM(RTRIM(UDC_child)), + UDC_parent=LTRIM(RTRIM(UDC_parent)) +go + +UPDATE RigheListePrelievo_storico +SET UDC=LTRIM(RTRIM(UDC)) +go + + +-- ESEGUE +UPDATE RigheListePrelievo +SET UDC=LTRIM(RTRIM(UDC)) +go + +UPDATE StoricoCartellini +SET UDC=LTRIM(RTRIM(UDC)) +go + +ENABLE TRIGGER ALL ON DATABASE +go + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(392, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00399.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00399.sql new file mode 100644 index 00000000..8deb2a01 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00399.sql @@ -0,0 +1,26 @@ +/*************************************** +* STORED stp_getDestListePrelLike +* +* ottiene l'elenco dei destinatari liste di prelievo data la substring di ricerca +* +* Steamware, S.E.L. +* mod: 2010.07.30 +* +****************************************/ +ALTER PROCEDURE [dbo].[stp_getDestListePrelLike] +( + @cerca VARCHAR(2) +) +AS + + SELECT * FROM v_selDestinatariListePrelievo + WHERE conditio LIKE '%'+ @cerca + '%' + +RETURN +go + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(399, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.1/GMW_00400.sql b/GMW/GMW_data/SqlScripts/V1.1/GMW_00400.sql new file mode 100644 index 00000000..54d9002f --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.1/GMW_00400.sql @@ -0,0 +1,164 @@ +create table ElencoPostazioni( + codPostazione nvarchar(250) not null constraint PK_ElencoPostazioni primary key, + stampante nvarchar(250) +); +go + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.ElencoPostazioni + VALUES (N'default', N'null') +INSERT INTO dbo.ElencoPostazioni + VALUES (N'VOSTRO410', N'//vostro410/PdfCreator') +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.AnagStatiProdotto + VALUES (N'Wip', N'Materiale in WIP') +go + +commit transaction +go + +set xact_abort on; +go + +begin transaction; +go + +set ANSI_NULLS on; +go + +/*************************************** +* STORED stp_elencoPostaziont_getByCod +* +* ottiene il una postazione dato il codice +* +* Steamware, S.E.L. +* mod: 2010.11.17 +* +****************************************/ +create PROCEDURE stp_elencoPostaziont_getByCod +( + @codPostazione NVARCHAR(250) +) +AS + +SELECT * +FROM ElencoPostazioni +WHERE codPostazione = @codPostazione + +RETURN +go + +commit; +go + +set xact_abort on; +go + +begin transaction; +go + +set ANSI_NULLS on; +go + +/*************************************** +* STORED stp_UDC_getLast_ByParticolare +* +* elenco cartellini ULTIMO creati x particolare +* +* Steamware, S.E.L. +* mod: 2011.11.14 +* +****************************************/ +create PROCEDURE stp_UDC_getLast_ByParticolare +( + @CodCS VARCHAR(2), + @Particolare VARCHAR(15) +) +AS + + -- prendo ultimo UDC creato x il particolare + SELECT TOP 1 * FROM ElencoCartellini + WHERE (Particolare= @Particolare) AND CodCs = @CodCS + ORDER BY CreateDate DESC + +RETURN +go + +commit; +go + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.AnagPosizioni + VALUES (-5, N'SP - WIP consumati', 0) +INSERT INTO dbo.AnagPosizioni + VALUES (5, N'SP - WIP', 0) +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.TabTranPosizEventi + VALUES (N'UDC_CONS', 5, -5, 0) +go + +commit transaction +go + + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.AS400_MagCont + VALUES (N'4', N'Finiti', 1, N'0') +INSERT INTO dbo.AS400_MagCont + VALUES (N'5', N'WIP', 1, N'0') +INSERT INTO dbo.AS400_MagCont + VALUES (N'6', N'MP', 1, N'0') +DELETE FROM dbo.AS400_MagCont WHERE CodMagAS=N'54' +go + +commit transaction +go + + + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(400, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/V1.2/GMW_00401.sql b/GMW/GMW_data/SqlScripts/V1.2/GMW_00401.sql new file mode 100644 index 00000000..1ad78736 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/V1.2/GMW_00401.sql @@ -0,0 +1,959 @@ +set xact_abort on; +go + +begin transaction; +go + +alter table ElencoCartellini add + Note nvarchar(500); +go + +set ANSI_NULLS on; +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), + @DoDeleteUdcParent BIT, + @Note NVARCHAR(500) +) +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 +DECLARE @IdxCella 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, Note) + 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(), @Note) + + -- inserisco relazione parent-child tra UDC vecchio (tara) e nuovo (pesa) SSE UDC_Parent valido + IF((NOT @UDC_parent IS NULL) AND (NOT @UDC_parent = '')) + BEGIN + INSERT INTO RelazUDC(UDC_parent, UDC_child) + VALUES (@UDC_parent, @UDC) + END +COMMIT TRAN + +------------------------------------------------------------------------------------------------------ + +------------------------------------------------------------------------------------------------------ +-- Ciclo secondario x eventuale cancellazione UDC tara parent e inserimento in posizione +------------------------------------------------------------------------------------------------------ + -- se richiesto elimino l'UDC parent (tara) + IF(@DoDeleteUdcParent = 1) + BEGIN + DELETE FROM ElencoCartellini WHERE UDC = @UDC_parent + END + + -- calcolo la prima cella della posizione indicata.. + SET @IdxCella = ( + SELECT TOP 1 c.IdxCella + FROM Celle c INNER JOIN Blocchi b ON c.IdxBlocco=b.IdxBlocco + WHERE b.CodMag = CAST(@IdxPosizione AS NVARCHAR(50)) + ) + -- inserisco il cartellino nella prima cella della posizione indicata.. + INSERT INTO PosizioneUdcCorrente + VALUES (@UDC, @IdxCella, @CodCS, GETDATE()) +------------------------------------------------------------------------------------------------------ + +/* +------------------------------------------------------------------------------------------------------ +-- 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 + +/*************************************** +* STORED stp_UDC_updateIdxPosizione +* +* aggiorna un cartellino x la sua posizione logica +* +* Steamware, S.E.L. +* mod: 2010.06.12 +* +****************************************/ +alter PROCEDURE stp_UDC_updateIdxPosizione +( + @UDC VARCHAR(20), + @IdxPosizione INT +) +AS + + +------------------------------------------------------------------------------------------------------ +-- Ciclo principale x edit record +------------------------------------------------------------------------------------------------------ +BEGIN TRAN + + -- modifico il record + UPDATE ElencoCartellini + SET IdxPosizione = @IdxPosizione, ModDate = GETDATE() + WHERE UDC = @UDC + +COMMIT TRAN +------------------------------------------------------------------------------------------------------ + +------------------------------------------------------------------------------------------------------ +-- restituisco la tab dati con l'udc appena inserito +------------------------------------------------------------------------------------------------------ +SELECT * +FROM ElencoCartellini +WHERE UDC = @UDC +------------------------------------------------------------------------------------------------------ + +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), + @Note NVARCHAR(500) +) +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 + + -- 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(), Note = @Note + WHERE UDC = @UDC_edit + + -- inserisco relazione parent-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 + +/*************************************** +* STORED stp_UDC_updateQty +* +* aggiorna un cartellino x la sua quantità +* +* Steamware, S.E.L. +* mod: 2010.06.12 +* +****************************************/ +alter PROCEDURE stp_UDC_updateQty +( + @UDC VARCHAR(20), + @CodSoggetto VARCHAR(17), + @CodTipoDichiaraz CHAR(1), + @CodEvento VARCHAR(10), + @Qta DECIMAL(10,2) +) +AS + + +------------------------------------------------------------------------------------------------------ +-- Ciclo principale x edit record +------------------------------------------------------------------------------------------------------ +BEGIN TRAN + + -- 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 + +/*************************************** +* STORED stp_UDC_insNewFull_fixUDC +* +* crea un nuovo record nella TabStatoOdpUdc FULL (con pesi, qta...) avendo in entrata il codice UDC da utilizzare +* +* Steamware, S.E.L. +* mod: 2011.12.07 +* +****************************************/ +create PROCEDURE stp_UDC_insNewFull_fixUDC +( + @UDC AS NVARCHAR(50), + @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), + @DoDeleteUdcParent BIT, + @Note NVARCHAR(500) +) +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 +DECLARE @IdxCella 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) +) + + +------------------------------------------------------------------------------------------------------ + + +------------------------------------------------------------------------------------------------------ +-- Ciclo principale x inserimento nuovo record +------------------------------------------------------------------------------------------------------ +BEGIN TRAN + + -- 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, Note) + 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(), @Note) + + -- inserisco relazione parent-child tra UDC vecchio (tara) e nuovo (pesa) SSE UDC_Parent valido + IF((NOT @UDC_parent IS NULL) AND (NOT @UDC_parent = '')) + BEGIN + INSERT INTO RelazUDC(UDC_parent, UDC_child) + VALUES (@UDC_parent, @UDC) + END +COMMIT TRAN + +------------------------------------------------------------------------------------------------------ + +------------------------------------------------------------------------------------------------------ +-- Ciclo secondario x eventuale cancellazione UDC tara parent e inserimento in posizione +------------------------------------------------------------------------------------------------------ + -- se richiesto elimino l'UDC parent (tara) + IF(@DoDeleteUdcParent = 1) + BEGIN + DELETE FROM ElencoCartellini WHERE UDC = @UDC_parent + END + + -- calcolo la prima cella della posizione indicata.. + SET @IdxCella = ( + SELECT TOP 1 c.IdxCella + FROM Celle c INNER JOIN Blocchi b ON c.IdxBlocco=b.IdxBlocco + WHERE b.CodMag = CAST(@IdxPosizione AS NVARCHAR(50)) + ) + -- inserisco il cartellino nella prima cella della posizione indicata.. + INSERT INTO PosizioneUdcCorrente + VALUES (@UDC, @IdxCella, @CodCS, GETDATE()) +------------------------------------------------------------------------------------------------------ + +------------------------------------------------------------------------------------------------------ +-- restituisco la tab dati con l'udc appena inserito +------------------------------------------------------------------------------------------------------ +SELECT * +FROM ElencoCartellini +WHERE UDC = @UDC +------------------------------------------------------------------------------------------------------ + +RETURN +go + +commit; +go + + +set xact_abort on; +go + +begin transaction; +go + +set ANSI_NULLS on; +go + +alter 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 tt.IdxPosizione + FROM TipoListaPrelievo tlp INNER JOIN TabTranPosizEventi tt ON tlp.CodEvento = tt.CodEvento + WHERE (tlp.CodTipoLista = @CodTipoLista)) + */ + + -- effettuo la selezione + SELECT * + FROM ElencoCartellini + WHERE (Particolare = @Particolare) AND (IdxPosizione IN (SELECT tt.IdxPosizione + FROM TipoListaPrelievo tlp INNER JOIN TabTranPosizEventi tt ON tlp.CodEvento = tt.CodEvento + WHERE (tlp.CodTipoLista = @CodTipoLista))) 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 + +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.09.28 +* +****************************************/ +alter PROCEDURE stp_scaricaUdc +( + @UDC VARCHAR(50), + @IdxPosizione INT +) +AS + +BEGIN TRAN + -- libero la posizione attuale dell'UDC (se c'è...) + DELETE + FROM PosizioneUdcCorrente + WHERE UDC = @UDC + + -- aggiorno l'UDC come posizione finale... + UPDATE ElencoCartellini + SET IdxPosizione = @IdxPosizione, ModDate = GETDATE() + WHERE UDC = @UDC + +COMMIT TRAN + +RETURN +go + +commit; +go + +set xact_abort on; +go + +begin transaction; +go + +set ANSI_NULLS on; +go + +/*************************************** +* STORED stp_UDC_associaParent +* +* crea un nuovo record nella di associazione UDC/parent +* +* Steamware, S.E.L. +* mod: 2011.12.06 +* +****************************************/ +create PROCEDURE stp_UDC_associaParent +( + @UDC NVARCHAR(50), + @UDC_parent NVARCHAR(50) +) +AS + + -- elimino partent vuoti... + DELETE + FROM RelazUDC + WHERE ISNULL(UDC_parent,'') = '' + -- inserisco relazione parent-child tra UDC vecchio (tara) e nuovo (pesa) + INSERT INTO RelazUDC(UDC_parent, UDC_child) + VALUES (@UDC_parent, @UDC) + +RETURN +go + +commit; +go + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.Permessi + VALUES ('POST', 'menu.aspx', 4, 0, 'Postazioni', 'PostazioniExpl') +INSERT INTO dbo.Permessi + VALUES ('POST_assoc_F10_F18', 'sanpos_associaz_F10_F18.aspx', 4, 3, 'Associaz_F10_F18', 'Associaz_F10_F18Expl') +INSERT INTO dbo.Permessi + VALUES ('POST_consumoF10', 'sanpos_consumoF10.aspx', 4, 4, 'ConsumoF10', 'ConsumoF10Expl') +INSERT INTO dbo.Permessi + VALUES ('POST_liquidi', 'sanpos_controlloLiquidi.aspx', 4, 1, 'PostLiquidi', 'PostLiquidiExpl') +INSERT INTO dbo.Permessi + VALUES ('POST_trav_creaF18', 'sanpos_creazioneF18.aspx', 4, 2, 'CreazF18', 'CreazF18Expl') +go + +commit transaction +go + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.Permessi2Funzione + VALUES ('POST', N'GMW_powuser', 'S') +INSERT INTO dbo.Permessi2Funzione + VALUES ('POST', N'GMW_user', 'S') +INSERT INTO dbo.Permessi2Funzione + VALUES ('POST_assoc_F10_F18', N'GMW_powuser', 'S') +INSERT INTO dbo.Permessi2Funzione + VALUES ('POST_assoc_F10_F18', N'GMW_user', 'S') +INSERT INTO dbo.Permessi2Funzione + VALUES ('POST_consumoF10', N'GMW_powuser', 'S') +INSERT INTO dbo.Permessi2Funzione + VALUES ('POST_consumoF10', N'GMW_user', 'S') +INSERT INTO dbo.Permessi2Funzione + VALUES ('POST_liquidi', N'GMW_powuser', 'S') +INSERT INTO dbo.Permessi2Funzione + VALUES ('POST_liquidi', N'GMW_user', 'S') +INSERT INTO dbo.Permessi2Funzione + VALUES ('POST_trav_creaF18', N'GMW_powuser', 'S') +INSERT INTO dbo.Permessi2Funzione + VALUES ('POST_trav_creaF18', N'GMW_user', 'S') +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.AnagMag + VALUES (N'5', N'SP', N'Mag WIP SP', 0) +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.AnagBilance + VALUES (N'LI', N'PostazioneLiquidi', N'SP') +INSERT INTO dbo.AnagBilance + VALUES (N'TR', N'Trattamento termico', N'SP') +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +set identity_insert dbo.Blocchi on +go + +INSERT INTO dbo.Blocchi + (IdxBlocco, CodMag, CodCS, CodBlocco, DescBlocco, NumX, NumY, NumZ) + VALUES (42, N'5', N'SP', N'ND', N'Descrizione n.d.', 1, 1, 1) +go + +set identity_insert dbo.Blocchi off +go + +commit transaction +go + +set xact_abort on +go + +begin transaction +go + +set identity_insert dbo.TipoCella on +go + +INSERT INTO dbo.TipoCella + (IdxTipoCella, CodMag, CodCS, Quantita, Capienza, Max_X, Max_Y, Max_Z, Max_Kg, CheckPiena, SetMag) + VALUES (23, N'5', N'SP', 1, 1000, 850, 900, 1300, 1000, 0, 1) +go + +set identity_insert dbo.TipoCella off +go + +commit transaction +go + +set xact_abort on +go + +begin transaction +go + +set identity_insert dbo.Celle on +go + +INSERT INTO dbo.Celle + (IdxCella, CodCS, CodCella, IdxTipoCella, Descrizione, Attiva, Piena, IdxBlocco, X, Y, Z) + VALUES (3890, N'SP', N'ND010101', 23, N'-', 1, 0, 42, 1, 1, 1) +go + +set identity_insert dbo.Celle off +go + +commit transaction +go + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.ContatoriListePrelievo + VALUES (N'SP', '11', '04', 1) +INSERT INTO dbo.ContatoriListePrelievo + VALUES (N'SP', '11', '12', 1) +go + +commit transaction +go + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.ContatoriUdc + VALUES (N'SP', 'LI', '10', 1) +INSERT INTO dbo.ContatoriUdc + VALUES (N'SP', 'LI', '11', 11) +INSERT INTO dbo.ContatoriUdc + VALUES (N'SP', 'LI', '20', 4) +INSERT INTO dbo.ContatoriUdc + VALUES (N'SP', 'TR', '11', 8) +go + +commit transaction +go + +set xact_abort on +go + +begin transaction +go + +UPDATE dbo.TabTranPosizEventi SET + toAs400=1 + WHERE CodEvento=N'UDC_CONS' and IdxPosizione=4 +go + +commit transaction +go + + + + + + + + + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(401, GETDATE()) +GO diff --git a/GMW/GMW_data/SqlScripts/Vocabolario/vocab_000.sql b/GMW/GMW_data/SqlScripts/Vocabolario/vocab_000.sql new file mode 100644 index 00000000..cfbdbd17 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/Vocabolario/vocab_000.sql @@ -0,0 +1,778 @@ +drop table Vocabolario +go + + +set xact_abort on +go + +begin transaction +go + +create table Vocabolario( + Lingua nvarchar(3) not null, + Lemma nvarchar(50) not null, + Traduzione nvarchar(500) not null, + + constraint PK_Vocabolario primary key(Lingua,Lemma) +) +go + +alter table Vocabolario add + constraint FK_Vocabolario_Lingue foreign key(Lingua) references Lingue(Lingua) on update cascade +go + +create index I_lemma on Vocabolario(Lemma) +go + +commit +go + + + + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'#', N'#') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'01-PreFus', N'Lista prelievo pezzi Fusione') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'02-PreCli', N'Lista Prelievo Clienti') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'03-TerWip', N'Lista Prelievo Terzisti - WIP') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'AbilitaRicercaLike', N'Abilita Ricerca "Like"') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'AbilitaRicercaLikeExpl', N'Selezionare per abilitare la ricerca estesa di tipo "Like" anche su parte dei campi') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'AcqPrntUdc', N'Stampa UDC') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'AcqPrntUdcExpl', N'Gestione acquisizione dati da AS400 e stampa UDC') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Admin', N'Admin Area') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'AnagCelle', N'Anagrafica Celle') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'AnagCelleExpl', N'Gestione Anagrafica Celle ed assegnazioni a magazzini/blocchi') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'AnagMagazzini', N'Anagrafica Magazzini') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'AnagMagazziniExpl', N'Gestione dell''anagrafica dei magazzini') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'AnagraficheBase', N'Base Lists') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'ApriManualeHelp', N'Apri manuale utente') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'attiva', N'attiva') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'AttivaListaPrelievo', N'Attivazione lista selezionata') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'BarcodeInput', N'Input via Barcode') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'BenesQual', N'BenesQual') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnBloccaCella', N'Blocca cella') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnClose', N'Chiudi') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnCompletaCella', N'Cella completa') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnConsumaMP', N'Consumo UDC MP') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnCreaListaPrelievo', N'Crea Lista di Prelievo') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnDelibera', N'Delibera selezionati') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnDisponibileCella', N'Cella disponibile') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnGo2Mag', N'Vai a magazzino') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnListePrelievo', N'Liste di prelievo') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnNewLemma', N'Insert new term to translate') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnQta', N'Nuova quantità') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnReloadDataRQL', N'Ricarica da AS400') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnSbloccaCella', N'Sblocca cella') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnSearch', N'Cerca') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnSelAll', N'Select all visible row') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnSposta', N'Sposta') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnStatoMag', N'Stato Mag.Fisico') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Cancel', N'Cancel') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Capienza', N'capienza') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'cbeBtnDelibera', N'Sei sicuro di voler procedere con al delibera degli UDC selezionati?') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'CelleAttive', N'Num celle attive') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'CelleLibere', N'Num celle Libere') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'CelleLibereOccupate', N'Occupate/Libere') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'CelleOccupate', N'Num celle Occupate') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'CelleTotAtt', N'Tot. / Att.') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'CheckPiena', N'Ver. Piena') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'CodBlocco', N'Cod. blocco') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'CodCella', N'Cod.Cella') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'CodFor', N'CodFornitore') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'CodImballo', N'Cod.Imballo') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'CodLega', N'CodLega') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'CodLista', N'Cod.') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'CodMag', N'Cod.Mag.') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'CodStato', N'CodStato') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'CompletaListaPrelievo', N'Completa Lista di Prelievo') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'confermaAttivaLista', N'Questo renderà attiva la lista selezionata, vuoi procedere?') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'confermaCompletaLista', N'Sei sicuro di voler indicare come completata la Lista di Prelievo corrente?') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'ConfermaConsumoMP', N'Confermi consumo MP per gli UDC indicati?') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'ConfermaCreaCelleMancantiBlocco', N'Sei sicuro di voler procedere a creare le celle mancanti per il blocco?') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'confermaDel', N'Sei sicuro di voler continuare con l''eliminazione del record?') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'confermaIniziaLista', N'Richiesta di presa in carico di lista di prelievo: sicuro di voler procedere?') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'confermaRettificaQta', N'Sei sicuro di voler rettificare la quantità associata?') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'confermaScaricaLista', N'Sicuro di voler procedere e scaricare la lista (anche in AS 400?)') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'confermaSpostamentoUDC', N'Sei sicuro di voler spostare questo UDC nella cella indicata?') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'ConsUDC', N'Scarico MP') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'ConsUDCExpl', N'Gestione dello scarico e del consumo UDC') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'creaCelleMancanti', N'Crea le celle mancanti') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'CreaNuovaListaPrelievo', N'Crea Nuova Lista') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'DataFus', N'Data fusione') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'DataRapQual', N'Data RQ') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'DateRange', N'Intervallo date') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Delete', N'Delete') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'DescBlocco', N'Descrizione') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'DescImpianto', N'Impianto') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'DescMag', N'Descrizione magazzino') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'DescParticolare', N'Desc. Part.') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'descrizione', N'description') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'DescStato', N'Stato') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Destinatario', N'Destinatario') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'DettaglioBlocco', N'Dettaglio Blocco') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'DettaglioBloccoExpl', N'Dettaglio stato Blocco Magazzino') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'DisegnoGrezzo', N'Dis.Grezzo') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Edit', N'Edit') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'ElencoBlocchi', N'Blocchi di celle') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'ElencoListePrelievo', N'Liste di Prelievo') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'ElencoListePrelievoExpl', N'Elenco delle Liste di Prelievo') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'ElencoTipoCelle', N'Tipologie e quantità celle') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'ErroreCellaDestOccupata', N'Errore! cella di destinazione bloccata') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Esponente', N'Esponente') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'filtraTipoListe', N'Filtra per tipologia') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'finePeriodo', N'fine periodo di riferimento per i dati mostrati') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'GestDelibere', N'Gestione Delibere') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'GestDelibereExpl', N'Gestione Delibere (fusi e spedizione terzisti)') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'GestioneMagazzino', N'Gestione Magazzino') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'GestLaboratorioMP', N'Laboratorio MP') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'GestLaboratorioMPExpl', N'Metodi per gestione UDC Laboratorio MP') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'GMW_Appl', N'GMW') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'GMW_LongWelcome', N'Clicca sulle voci del menù alla sinistra per accedere alle funzionalità abilitate') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'GMW_ShortWelcome', N'Benvenuto in GMW') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'GMW_titleApp', N'GMW') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'GMW_welcomeApp', N'Gestione Magazzino web - GruppoMM') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'IdxBlocco', N'Blocco') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'IdxTipoCella', N'Tipo') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'IniziaListaPrelievo', N'Richiesta di presa in carico di Lista di Prelievo') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'inizioPeriodo', N'inizio periodo di riferimento per i dati mostrati') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'insert', N'insert') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'insertCod4search', N'inserire codice da ricercare') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'insertNewLemma', N'--insertNewLemma--') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblAss', N'Assegnate') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblAttive', N'Attive') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblCerca', N'cerca') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblDettImpieghiBlocchi', N'Dettaglio impiego Celle in Blocchi') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblInattive', N'Inattive') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblNewPos', N'Nuova posizione') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblNonAss', N'Non Assegnate') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblQta', N'Rettifica quantità') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblTotaleImpieghi', N'Impieghi totali celle/blocchi') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblTotCapacita', N'Capacità totale') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblTotCelleCreate', N'Tot Celle create nei blocchi') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblTotCelleDaBlocchi', N'Tot celle nei blocchi') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblTotCelleDaTipo', N'Tot celle (da Tipologia)') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Lemma', N'Term') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Lingua', N'Language') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lnkShowHide', N'Show/Hide Menu') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'LogOut', N'LogOut') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'MagLog', N'Mag.Logico') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'MagSearch', N'Ricerca avanzata') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'MagSearchExpl', N'Ricerca avanzata in magazzino (UDC, celle, ...)') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Max_Kg', N'Portata(Kg)') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Max_X', N'Largh Max') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Max_Y', N'Alt Max') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Max_Z', N'Prof Max') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'ModDate', N'Data mod.') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'ModLang', N'Cambia Lingua Utente') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'MostraCelleBlocco', N'Mostra le celle assegnate al blocco') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'mostraSoloSelez', N'Set filter') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'mostraTutti', N'Remove filter') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Nascosto', N'Nasc.') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'New', N'New') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'noRecord', N'No records found') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'nRapQual', N'Num RQ') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'NumInMag', N'# Mag') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'NumUDC', N'# UDC') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'NumX', N'# colonne (X)') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'NumY', N'# livelli (Y)') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'NumZ', N'profondità (Z)') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'NuovaListaPrelievo', N'Nuova Lista Prelievo') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Particolare', N'Particolare') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Particolari', N'Particolari') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'periodoRif', N'Periodo di riferimento:') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Piena', N'Piena') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'ProgUDC', N'UDC AS400') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Qta', N'Qty') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'QtaTotPz', N'Tot pz.') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Quantita', N'num celle') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'RagSociale', N'Cliente') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Reset', N'Reset') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'ScaricaListaPrelievo', N'Effettua scaricamento degli UDC della lista in AS 400') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'scegliLingua', N'Selezionare Lingua') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Select', N'Select') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'SetFiltroMagLog', N'Filtro per Magazzino Logico') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'SetMag', N'Set.Mag.') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Stato', N'Status') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'StatoLista_4', N'Approvata') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'StatoMagazzino', N'Magazzino Fisico') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'StatoMagazzinoExpl', N'Dettaglio Stato Magazzino Fisico') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'StatoMagLogico', N'Magazzino Logico') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'StatoMagLogicoExpl', N'Dettaglio Stato Magazzino Logico') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'TornaStatoMag', N'Torna a Stato Magazzino Fisico') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'TornaStatoMagLogico', N'Torna a Stato Magazzino Logico') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'TotCelle', N'Num celle totali') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'TotQta', N'# pz') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Traduzione', N'Translation') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'TurnoFus', N'Turno fusione') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'TurnoShort', N'T.') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'UDC', N'UDC') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'UdcAssoc', N'UdcAssoc') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'UdcTot', N'UdcTot') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Update', N'Update') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'User', N'User') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'UserFunc', N'Funzioni Utente') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Vocabolario', N'Dictionary') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'X', N'Colonna (X)') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Y', N'Livello (Y)') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Z', N'Prof. (z)') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'#', N'#') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'01-PreFus', N'Lista prelievo pezzi Fusione') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'02-PreCli', N'Lista Prelievo Clienti') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'03-TerWip', N'Lista Prelievo Terzisti - WIP') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'AbilitaRicercaLike', N'Abilita Ricerca "Like"') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'AbilitaRicercaLikeExpl', N'Selezionare per abilitare la ricerca estesa di tipo "Like" anche su parte dei campi') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'AcqPrntUdc', N'Stampa UDC') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'AcqPrntUdcExpl', N'Gestione acquisizione dati da AS400 e stampa UDC') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Admin', N'Area amministrazione') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'AnagCelle', N'Anagrafica Celle') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'AnagCelleExpl', N'Gestione Anagrafica Celle ed assegnazioni a magazzini/blocchi') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'AnagMagazzini', N'Anagrafica Magazzini') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'AnagMagazziniExpl', N'Gestione dell''anagrafica dei magazzini') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'AnagraficheBase', N'Anagrafiche Base') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'ApriManualeHelp', N'Apri manuale utente') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'attiva', N'attiva') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'AttivaListaPrelievo', N'Attivazione lista selezionata') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'BarcodeInput', N'Input via Barcode') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'BenesQual', N'BenesQual') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnBloccaCella', N'Blocca cella') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnClose', N'Chiudi') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnCompletaCella', N'Cella completa') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnConsumaMP', N'Consumo UDC MP') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnCreaListaPrelievo', N'Crea Lista di Prelievo') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnDelibera', N'Delibera selezionati') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnDisponibileCella', N'Cella disponibile') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnGo2Mag', N'Vai a magazzino') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnListePrelievo', N'Liste di prelievo') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnNewLemma', N'Inserire nuovo termine da tradurre') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnQta', N'Nuova quantità') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnReloadDataRQL', N'Ricarica da AS400') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnSbloccaCella', N'Sblocca cella') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnSearch', N'Cerca') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnSelAll', N'Seleziona tutte le righe visibili') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnSposta', N'Sposta') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnStatoMag', N'Stato Mag.Fisico') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Cancel', N'Annulla') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Capienza', N'capienza') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'cbeBtnDelibera', N'Sei sicuro di voler procedere con al delibera degli UDC selezionati?') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'CelleAttive', N'Num celle attive') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'CelleLibere', N'Num celle Libere') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'CelleLibereOccupate', N'Occupate/Libere') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'CelleOccupate', N'Num celle Occupate') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'CelleTotAtt', N'Tot. / Att.') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'CheckPiena', N'Ver. Piena') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'CodBlocco', N'Cod. blocco') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'CodCella', N'Cod.Cella') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'CodFor', N'CodFornitore') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'CodImballo', N'Cod.Imballo') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'CodLega', N'CodLega') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'CodLista', N'Cod.') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'CodMag', N'Cod.Mag.') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'CodStato', N'CodStato') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'CompletaListaPrelievo', N'Completa Lista di Prelievo') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'confermaAttivaLista', N'Questo renderà attiva la lista selezionata, vuoi procedere?') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'confermaCompletaLista', N'Sei sicuro di voler indicare come completata la Lista di Prelievo corrente?') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'ConfermaConsumoMP', N'Confermi consumo MP per gli UDC indicati?') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'ConfermaCreaCelleMancantiBlocco', N'Sei sicuro di voler procedere a creare le celle mancanti per il blocco?') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'confermaDel', N'Sei sicuro di voler continuare con l''eliminazione del record?') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'confermaIniziaLista', N'Richiesta di presa in carico di lista di prelievo: sicuro di voler procedere?') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'confermaRettificaQta', N'Sei sicuro di voler rettificare la quantità associata?') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'confermaScaricaLista', N'Sicuro di voler procedere e scaricare la lista (anche in AS 400?)') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'confermaSpostamentoUDC', N'Sei sicuro di voler spostare questo UDC nella cella indicata?') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'ConsUDC', N'Scarico MP') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'ConsUDCExpl', N'Gestione dello scarico e del consumo UDC') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'creaCelleMancanti', N'Crea le celle mancanti') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'CreaNuovaListaPrelievo', N'Crea Nuova Lista') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'DataFus', N'Data fusione') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'DataRapQual', N'Data RQ') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'DateRange', N'Intervallo date') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Delete', N'Elimina') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'DescBlocco', N'Descrizione') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'DescImpianto', N'Impianto') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'DescMag', N'Descrizione magazzino') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'DescParticolare', N'Desc. Part.') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'descrizione', N'descrizione') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'DescStato', N'Stato') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Destinatario', N'Destinatario') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'DettaglioBlocco', N'Dettaglio Blocco') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'DettaglioBloccoExpl', N'Dettaglio stato Blocco Magazzino') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'DisegnoGrezzo', N'Dis.Grezzo') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Edit', N'Modifica') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'ElencoBlocchi', N'Blocchi di celle') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'ElencoListePrelievo', N'Liste di Prelievo') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'ElencoListePrelievoExpl', N'Elenco delle Liste di Prelievo') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'ElencoTipoCelle', N'Tipologie e quantità celle') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'ErroreCellaDestOccupata', N'Errore! cella di destinazione bloccata') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Esponente', N'Esponente') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'filtraTipoListe', N'Filtra per tipologia') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'finePeriodo', N'fine periodo di riferimento per i dati mostrati') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'GestDelibere', N'Gestione Delibere') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'GestDelibereExpl', N'Gestione Delibere (fusi e spedizione terzisti)') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'GestioneMagazzino', N'Gestione Magazzino') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'GestLaboratorioMP', N'Laboratorio MP') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'GestLaboratorioMPExpl', N'Metodi per gestione UDC Laboratorio MP') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'GMW_Appl', N'GMW') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'GMW_LongWelcome', N'Clicca sulle voci del menù alla sinistra per accedere alle funzionalità abilitate') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'GMW_ShortWelcome', N'Benvenuto in GMW') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'GMW_titleApp', N'GMW') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'GMW_welcomeApp', N'Gestione Magazzino web - Gruppo Mazzucconi') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'IdxBlocco', N'Blocco') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'IdxTipoCella', N'Tipo') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'IniziaListaPrelievo', N'Richiesta di presa in carico di Lista di Prelievo') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'inizioPeriodo', N'inizio periodo di riferimento per i dati mostrati') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'insert', N'inserisci') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'insertCod4search', N'inserire codice da ricercare') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'insertNewLemma', N'Inserire nuovo lemma') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblAss', N'Assegnate') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblAttive', N'Attive') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblCerca', N'cerca') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblDettImpieghiBlocchi', N'Dettaglio impiego Celle in Blocchi') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblInattive', N'Inattive') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblNewPos', N'Nuova posizione') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblNonAss', N'Non Assegnate') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblQta', N'Rettifica quantità') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblTotaleImpieghi', N'Impieghi totali celle/blocchi') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblTotCapacita', N'Capacità totale') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblTotCelleCreate', N'Tot Celle create nei blocchi') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblTotCelleDaBlocchi', N'Tot celle nei blocchi') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblTotCelleDaTipo', N'Tot celle (da Tipologia)') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Lemma', N'Lemma') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Lingua', N'Lingua') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lnkShowHide', N'Scopri/Nascondi Menu') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'LogOut', N'LogOut') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'MagLog', N'Mag.Logico') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'MagSearch', N'Ricerca avanzata') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'MagSearchExpl', N'Ricerca avanzata in magazzino (UDC, celle, ...)') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Max_Kg', N'Portata(Kg)') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Max_X', N'Largh Max') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Max_Y', N'Alt Max') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Max_Z', N'Prof Max') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'ModDate', N'Data mod.') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'ModLang', N'Cambia Lingua Utente') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'MostraCelleBlocco', N'Mostra le celle assegnate al blocco') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'mostraSoloSelez', N'Imposta Filtro') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'mostraTutti', N'Elimina filtro') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Nascosto', N'Nasc.') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'New', N'Nuovo') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'noRecord', N'Nessun record presente') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'nRapQual', N'Num RQ') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'NumInMag', N'# Mag') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'NumUDC', N'# UDC') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'NumX', N'# colonne (X)') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'NumY', N'# livelli (Y)') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'NumZ', N'profondità (Z)') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'NuovaListaPrelievo', N'Nuova Lista Prelievo') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Particolare', N'Particolare') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Particolari', N'Particolari') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'periodoRif', N'Periodo di riferimento:') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Piena', N'Piena') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'ProgUDC', N'UDC AS400') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Qta', N'Qta') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'QtaTotPz', N'Tot pz.') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Quantita', N'num celle') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'RagSociale', N'Cliente') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Reset', N'Reset') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'ScaricaListaPrelievo', N'Effettua scaricamento degli UDC della lista in AS 400') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'scegliLingua', N'Selezionare Lingua') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Select', N'Seleziona') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'SetFiltroMagLog', N'Filtro per Magazzino Logico') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'SetMag', N'Set.Mag.') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Stato', N'Stato') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'StatoLista_4', N'Approvata') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'StatoMagazzino', N'Magazzino Fisico') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'StatoMagazzinoExpl', N'Dettaglio Stato Magazzino Fisico') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'StatoMagLogico', N'Magazzino Logico') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'StatoMagLogicoExpl', N'Dettaglio Stato Magazzino Logico') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'TornaStatoMag', N'Torna a Stato Magazzino Fisico') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'TornaStatoMagLogico', N'Torna a Stato Magazzino Logico') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'TotCelle', N'Num celle totali') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'TotQta', N'# pz') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Traduzione', N'Traduzione') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'TurnoFus', N'Turno fusione') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'TurnoShort', N'T.') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'UDC', N'UDC') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'UdcAssoc', N'UdcAssoc') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'UdcTot', N'UdcTot') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Update', N'Update') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'User', N'Utenti') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'UserFunc', N'Funzioni Utente') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Vocabolario', N'Vocabolario') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'X', N'Colonna (X)') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Y', N'Livello (Y)') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Z', N'Prof. (z)') +go + +commit transaction +go diff --git a/GMW/GMW_data/SqlScripts/Vocabolario/vocab_401.sql b/GMW/GMW_data/SqlScripts/Vocabolario/vocab_401.sql new file mode 100644 index 00000000..b2a47e04 --- /dev/null +++ b/GMW/GMW_data/SqlScripts/Vocabolario/vocab_401.sql @@ -0,0 +1,306 @@ + +drop table Vocabolario_Copy; +go + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Associaz_F10_F18', N'Associaz. UDC F10 - F18') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Associaz_F10_F18Expl', N'Associazione imballi UDC F10 - F18') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnAdd', N'Add record') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnAssocia', N'Associa') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnCommit', N'Commit') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnConsumaUdcF10', N'Consuma UDC F10') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnStampa', N'Print') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'btnSvuota', N'Do Empty') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'ConsumoF10', N'Consumo F10') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'ConsumoF10Expl', N'Gestione Consumo cartellini F10') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'CreazF18', N'Creaz F18') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'CreazF18Expl', N'Creazione imballi F18 per travaso') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'effettuataAssociazione', N'OK! effettuata associazione UDC:') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'effettuatoConsumoUDC', N'Effettuato Consumo UDC') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'ForzaUtente', N'Forza Utente') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblAnno', N'Year') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblAnnoTratt', N'Year (trattam.)') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblDominio', N'Dominio') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblNote', N'Note') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblNumTratt', N'Trattamento (num)') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblPwd', N'Password') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblQuantita', N'Quantity') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'lblUser', N'User') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'postazione', N'postazione') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'Postazioni', N'Postazioni') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'PostazioniExpl', N'Funzioni gestione Postazioni Specifiche') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'PostLiquidi', N'Postazione Liquidi') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'PostLiquidiExpl', N'Gestione Postazione Liquidi') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'stampante', N'printer') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Associaz_F10_F18', N'Associaz. UDC F10 - F18') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Associaz_F10_F18Expl', N'Associazione imballi UDC F10 - F18') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnAdd', N'Aggiunta valore') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnAssocia', N'Associa') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnCommit', N'Commit') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnConsumaUdcF10', N'Consuma UDC F10') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnStampa', N'Stampa') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'btnSvuota', N'Svuota') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'ConsumoF10', N'Consumo F10') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'ConsumoF10Expl', N'Gestione Consumo cartellini F10') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'CreazF18', N'Creaz F18') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'CreazF18Expl', N'Creazione imballi F18 per travaso') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'effettuataAssociazione', N'OK! effettuata associazione UDC:') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'effettuatoConsumoUDC', N'Effettuato Consumo UDC') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'ForzaUtente', N'Forza Utente') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblAnno', N'Anno') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblAnnoTratt', N'Anno (trattam.)') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblDominio', N'Dominio') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblNote', N'Note') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblNumTratt', N'Trattamento (num)') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblPwd', N'Password') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblQuantita', N'Quantità') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'lblUser', N'User') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'postazione', N'postazione') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'Postazioni', N'Postazioni') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'PostazioniExpl', N'Funzioni gestione Postazioni Specifiche') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'PostLiquidi', N'Postazione Liquidi') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'PostLiquidiExpl', N'Gestione Postazione Liquidi') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'stampante', N'stampante') +go + +commit transaction +go + + +-- pulizie varie lemmi inutili +set xact_abort on +go +begin transaction +go + +delete from Vocabolario where Lemma like '%xps%' +delete from Vocabolario where Lemma like '%mtz%' +delete from Vocabolario where Lemma like '%urm%' +delete from Vocabolario where Lemma like '%campo%' +GO + +commit transaction +go + +set xact_abort on +go +begin transaction +go +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'campoRichiesto', N'richiesto') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'campoRichiesto', N'richiesto') +go +commit transaction +go + + +set xact_abort on +go +begin transaction +go + +delete from Vocabolario where Lemma like '%guasto%' +delete from Vocabolario where traduzione like '%comme%' +delete from Vocabolario where traduzione like '%gcal%' +delete from Vocabolario where traduzione like '%macchina%' +delete from Vocabolario where traduzione like '%costi%' +delete from Vocabolario where traduzione like '%richieste%' +delete from Vocabolario where traduzione like '%intervento%' +delete from Vocabolario where traduzione like '%cod_f%' +delete from Vocabolario where traduzione like '%abc%' +delete from Vocabolario where traduzione like '%macchin%' +delete from Vocabolario where traduzione like '%appli%' +delete from Vocabolario where traduzione like '%cognome%' +delete from Vocabolario where traduzione like '%cdc%' +delete from Vocabolario where traduzione like '%gim%' +delete from Vocabolario where traduzione like '%labor%' +delete from Vocabolario where lemma like '%gim%' +delete from Vocabolario where lemma like '%swap%' +delete from Vocabolario where traduzione like '%equa%' +delete from Vocabolario where traduzione like '%gen%' +delete from Vocabolario where traduzione like '%ciclo%' +delete from Vocabolario where traduzione like '%cost%' +delete from Vocabolario where traduzione like '%telef%' +delete from Vocabolario where traduzione like '%analitic%' +delete from Vocabolario where traduzione like '%overview%' +delete from Vocabolario where traduzione like '%scheda%' +delete from Vocabolario where traduzione like '%interv%' +delete from Vocabolario where traduzione like '%mtbf%' +delete from Vocabolario where traduzione like '%report%' +delete from Vocabolario where traduzione like '%mappa%' +delete from Vocabolario where traduzione like '%periodo%' +delete from Vocabolario where traduzione like '%nome%' +delete from Vocabolario where traduzione like '%famiglia%' +delete from Vocabolario where traduzione like '%causali%' +delete from Vocabolario where lemma like '%flamma%' +delete from Vocabolario where traduzione like '%utente non%' +delete from Vocabolario where traduzione like '%%ulteriori%' +delete from Vocabolario where traduzione like '%stampabile%' +delete from Vocabolario where traduzione like '%aggiorna%' +delete from Vocabolario where lemma like '%impianto%' +delete from Vocabolario where lemma like '%markup%'delete from Vocabolario where traduzione like '%proge%' +delete from Vocabolario where traduzione like '%purcha%' +delete from Vocabolario where traduzione like '%€%' +delete from Vocabolario where traduzione like '%telephone%' +delete from Vocabolario where lemma like '%link%' +delete from Vocabolario where traduzione like '%proje%' +delete from Vocabolario where traduzione like '%pric%' +delete from Vocabolario where traduzione like '%guasto%' +delete from Vocabolario where traduzione like '%tags%' +delete from Vocabolario where lemma like '%work%' +delete from Vocabolario where traduzione like '%peso%' +delete from Vocabolario where traduzione like '%mol%' +delete from Vocabolario where traduzione like '%oggetti%' +delete from Vocabolario where traduzione like '%causa%' +delete from Vocabolario where traduzione like '%promuovi%' +delete from Vocabolario where traduzione like 'rim%' +delete from Vocabolario where traduzione like 'rep%' +delete from Vocabolario where traduzione like 'rea%' +delete from Vocabolario where traduzione like 'schede sin%' +delete from Vocabolario where lemma like 'statoSC%' +delete from Vocabolario where lemma like 'unlock%' +delete from Vocabolario where lemma like 'store%' +delete from Vocabolario where lemma like 'societa%' +delete from Vocabolario where lemma like 'sigla%' +delete from Vocabolario where lemma like 'btnshowclona%' +delete from Vocabolario where lemma like 'btnallsched%' +delete from Vocabolario where lemma like 'turnoShort%' +delete from Vocabolario where lemma like 'titolo%' +GO + +commit transaction +go + +set xact_abort on +go +begin transaction +go + +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'GestLaboratorioMP', N'Laboratorio MP') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'GestLaboratorioMPExpl', N'Metodi per gestione UDC Laboratorio MP') +go + +commit transaction +go + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'UserFuncExpl', N'Ulteriori funzioni utente') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'UserFuncExpl', N'Ulteriori funzioni utente') +go + +commit transaction +go + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'UserNotAuth', N'Utente non autenticato...') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'DateRange', N'Periodo') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'DateRange', N'Periodo') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'04-OdetSP', N'Lista prelievo Odette') +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'04-OdetSP', N'Lista prelievo Odette') +go + +commit transaction +go + +set xact_abort on +go + +begin transaction +go + +INSERT INTO dbo.Vocabolario + VALUES (N'EN', N'NonAuth', N'L''utente non è autorizzato alla visione del sito o pagina non è disponibile, verificare l''indirizzo della pagina inserito o contattare l''amministratore.') +INSERT INTO dbo.Vocabolario + VALUES (N'IT', N'NonAuth', N'L''utente non è autorizzato alla visione del sito o pagina non è disponibile, verificare l''indirizzo della pagina inserito o contattare l''amministratore.') +go + +commit transaction +go + + +-- registro versione... +INSERT INTO [dbo].[LogUpdateDb] ([Versione],[Data]) VALUES(401, GETDATE()) +GO diff --git a/GMW/GMW_data/bin/Release/GMW_data.dll b/GMW/GMW_data/bin/Release/GMW_data.dll index bc5bc0a5..2d1f1686 100644 Binary files a/GMW/GMW_data/bin/Release/GMW_data.dll and b/GMW/GMW_data/bin/Release/GMW_data.dll differ diff --git a/GMW/GMW_data/obj/Release/GMW_data.dll b/GMW/GMW_data/obj/Release/GMW_data.dll index bc5bc0a5..2d1f1686 100644 Binary files a/GMW/GMW_data/obj/Release/GMW_data.dll and b/GMW/GMW_data/obj/Release/GMW_data.dll differ diff --git a/GMW/GMW_deploy/GMW_deploy.wdproj b/GMW/GMW_deploy/GMW_deploy.wdproj index be769845..b37e5aaa 100644 --- a/GMW/GMW_deploy/GMW_deploy.wdproj +++ b/GMW/GMW_deploy/GMW_deploy.wdproj @@ -16,14 +16,14 @@ v3.5 - true + false .\Debug true true GMW_deploy true true - false + true false @@ -46,10 +46,10 @@ - +
appSettings
- +
connectionStrings
diff --git a/GMW/GMW_deploy/Release/GMW.Publish.xml b/GMW/GMW_deploy/Release/GMW.Publish.xml index 410f8d01..e7035ea2 100644 --- a/GMW/GMW_deploy/Release/GMW.Publish.xml +++ b/GMW/GMW_deploy/Release/GMW.Publish.xml @@ -1,4 +1,598 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -8,6 +602,7 @@ + @@ -17,11 +612,10 @@ - - + - + @@ -35,5 +629,4 @@ - \ No newline at end of file diff --git a/GMW/GMW_deploy/Release/GMW.csproj.user b/GMW/GMW_deploy/Release/GMW.csproj.user index e2af44e7..0a8d1633 100644 --- a/GMW/GMW_deploy/Release/GMW.csproj.user +++ b/GMW/GMW_deploy/Release/GMW.csproj.user @@ -9,7 +9,7 @@ False False RunFiles - c:\tmp\GMW\ + http://localhost/GMW_SP/ False False diff --git a/GMW/GMW_deploy/Release/mazzConnectionStrings.config b/GMW/GMW_deploy/Release/mazzConnectionStrings.config index 660d5efc..f929e9ae 100644 --- a/GMW/GMW_deploy/Release/mazzConnectionStrings.config +++ b/GMW/GMW_deploy/Release/mazzConnectionStrings.config @@ -1,5 +1,3 @@ - - - \ No newline at end of file + + + \ No newline at end of file diff --git a/GMW/GMW_deploy/Source/GMW.Publish.xml b/GMW/GMW_deploy/Source/GMW.Publish.xml index 410f8d01..e7035ea2 100644 --- a/GMW/GMW_deploy/Source/GMW.Publish.xml +++ b/GMW/GMW_deploy/Source/GMW.Publish.xml @@ -1,4 +1,598 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -8,6 +602,7 @@ + @@ -17,11 +612,10 @@ - - + - + @@ -35,5 +629,4 @@ - \ No newline at end of file diff --git a/GMW/GMW_deploy/Source/GMW.csproj.user b/GMW/GMW_deploy/Source/GMW.csproj.user index e2af44e7..0a8d1633 100644 --- a/GMW/GMW_deploy/Source/GMW.csproj.user +++ b/GMW/GMW_deploy/Source/GMW.csproj.user @@ -9,7 +9,7 @@ False False RunFiles - c:\tmp\GMW\ + http://localhost/GMW_SP/ False False diff --git a/GMW/GMW_deploy/Source/mazzConnectionStrings.config b/GMW/GMW_deploy/Source/mazzConnectionStrings.config index 660d5efc..f929e9ae 100644 --- a/GMW/GMW_deploy/Source/mazzConnectionStrings.config +++ b/GMW/GMW_deploy/Source/mazzConnectionStrings.config @@ -1,5 +1,3 @@ - - - \ No newline at end of file + + + \ No newline at end of file diff --git a/GMW/GMW_installer/GMW_installer.vdproj b/GMW/GMW_installer/GMW_installer.vdproj index fc44ac2e..f581b656 100644 --- a/GMW/GMW_installer/GMW_installer.vdproj +++ b/GMW/GMW_installer/GMW_installer.vdproj @@ -21,12 +21,6 @@ } "Entry" { - "MsmKey" = "8:_7AA2401E1CA24C0C83F1AA51E24FF593" - "OwnerKey" = "8:_UNDEFINED" - "MsmSig" = "8:_UNDEFINED" - } - "Entry" - { "MsmKey" = "8:_8BDD7AA9D46A46EC80880F83F13C902E" "OwnerKey" = "8:_UNDEFINED" "MsmSig" = "8:_UNDEFINED" @@ -40,12 +34,6 @@ "Entry" { "MsmKey" = "8:_UNDEFINED" - "OwnerKey" = "8:_7AA2401E1CA24C0C83F1AA51E24FF593" - "MsmSig" = "8:_UNDEFINED" - } - "Entry" - { - "MsmKey" = "8:_UNDEFINED" "OwnerKey" = "8:_4FD0E5B75A7F47B79080EC0983BE6583" "MsmSig" = "8:_UNDEFINED" } @@ -201,37 +189,6 @@ } "File" { - "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_7AA2401E1CA24C0C83F1AA51E24FF593" - { - "AssemblyRegister" = "3:1" - "AssemblyIsInGAC" = "11:FALSE" - "AssemblyAsmDisplayName" = "8:System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" - "ScatterAssemblies" - { - "_7AA2401E1CA24C0C83F1AA51E24FF593" - { - "Name" = "8:System.Web.Extensions.dll" - "Attributes" = "3:512" - } - } - "SourcePath" = "8:C:\\Program Files (x86)\\Reference Assemblies\\Microsoft\\Framework\\v3.5\\System.Web.Extensions.dll" - "TargetName" = "8:" - "Tag" = "8:" - "Folder" = "8:_5606017201AE45B480A8ABD8B8D68264" - "Condition" = "8:" - "Transitive" = "11:FALSE" - "Vital" = "11:TRUE" - "ReadOnly" = "11:FALSE" - "Hidden" = "11:FALSE" - "System" = "11:FALSE" - "Permanent" = "11:FALSE" - "SharedLegacy" = "11:FALSE" - "PackageAs" = "3:1" - "Register" = "3:1" - "Exclude" = "11:FALSE" - "IsDependency" = "11:FALSE" - "IsolateTo" = "8:" - } } "FileType" { @@ -349,14 +306,14 @@ { "Name" = "8:Microsoft Visual Studio" "ProductName" = "8:GMW" - "ProductCode" = "8:{0D487F56-D6D8-4B60-9FF3-408F24F7F380}" - "PackageCode" = "8:{1C3BC3A1-3E3E-4DC2-B25B-B06CCAF6FE64}" + "ProductCode" = "8:{708CEE00-C542-4067-A34E-08CDDA4EF7AA}" + "PackageCode" = "8:{FA2BC8EE-62F8-4334-AC0C-F6F9CCE207BD}" "UpgradeCode" = "8:{C9BC0732-DC92-4336-BAC9-A05A5D2A97C0}" "RestartWWWService" = "11:TRUE" - "RemovePreviousVersions" = "11:FALSE" + "RemovePreviousVersions" = "11:TRUE" "DetectNewerInstalledVersion" = "11:TRUE" "InstallAllUsers" = "11:FALSE" - "ProductVersion" = "8:1.1.400" + "ProductVersion" = "8:1.1.401" "Manufacturer" = "8:SteamWare s.r.l." "ARPHELPTELEPHONE" = "8:+39-035460560" "ARPHELPLINK" = "8:http://www.steamware.net" diff --git a/GMW/GMW_installer/Release/GMW_installer.msi b/GMW/GMW_installer/Release/GMW_installer.msi index 6540c96b..40fd96a9 100644 Binary files a/GMW/GMW_installer/Release/GMW_installer.msi and b/GMW/GMW_installer/Release/GMW_installer.msi differ diff --git a/GMW/GMW_test_installer/GMW_test_installer.vdproj b/GMW/GMW_test_installer/GMW_test_installer.vdproj index 3e740828..1f1931af 100644 --- a/GMW/GMW_test_installer/GMW_test_installer.vdproj +++ b/GMW/GMW_test_installer/GMW_test_installer.vdproj @@ -302,7 +302,7 @@ "Name" = "8:Microsoft Visual Studio" "ProductName" = "8:GMW_test" "ProductCode" = "8:{25AEB983-924E-42D8-AB4E-4749E96B01C9}" - "PackageCode" = "8:{D9F434BB-4971-4CB3-8AB9-232430D3E6DF}" + "PackageCode" = "8:{2CAF61CE-8A5C-431D-9759-9AE8290C58E3}" "UpgradeCode" = "8:{6FD64E39-D93B-4ADA-ADF3-303A1BCA49C2}" "RestartWWWService" = "11:TRUE" "RemovePreviousVersions" = "11:TRUE" @@ -753,7 +753,7 @@ { "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_110D6612090D4EDA92F772F593B23D78" { - "SourcePath" = "8:..\\..\\IISCustomActionVB\\IISConsoleVB\\obj\\Debug\\IISConsoleVB.exe" + "SourcePath" = "8:..\\..\\IISCustomActionVB\\IISConsoleVB\\obj\\Release\\IISConsoleVB.exe" "TargetName" = "8:" "Tag" = "8:" "Folder" = "8:_D4983B53F0234BFF98835BF3AFECBB8D" @@ -781,7 +781,7 @@ } "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_179F2C709A0749C4A5EBA956FADE7EE3" { - "SourcePath" = "8:..\\..\\SetDirectoryPermission\\obj\\Debug\\SetDirectoryPermission.exe" + "SourcePath" = "8:..\\..\\SetDirectoryPermission\\obj\\Release\\SetDirectoryPermission.exe" "TargetName" = "8:" "Tag" = "8:" "Folder" = "8:_D4983B53F0234BFF98835BF3AFECBB8D" diff --git a/GMW/GMW_test_installer/Release/GMW_test_installer.msi b/GMW/GMW_test_installer/Release/GMW_test_installer.msi index 0aaeb8de..6eb9f542 100644 Binary files a/GMW/GMW_test_installer/Release/GMW_test_installer.msi and b/GMW/GMW_test_installer/Release/GMW_test_installer.msi differ