418 lines
9.5 KiB
Transact-SQL
418 lines
9.5 KiB
Transact-SQL
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
create VIEW v_ElencoFamMacc
|
|
AS
|
|
SELECT dbo.ElencoFamMacc.CodFam, dbo.ElencoFamMacc.DescrFam, COUNT(dbo.SchemaCollFamMacc.CodScheda) AS numRowChild
|
|
FROM dbo.ElencoFamMacc LEFT OUTER JOIN
|
|
dbo.SchemaCollFamMacc ON dbo.ElencoFamMacc.CodFam = dbo.SchemaCollFamMacc.CodFam
|
|
GROUP BY dbo.ElencoFamMacc.CodFam, dbo.ElencoFamMacc.DescrFam
|
|
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 = "ElencoFamMacc"
|
|
Begin Extent =
|
|
Top = 6
|
|
Left = 38
|
|
Bottom = 102
|
|
Right = 208
|
|
End
|
|
DisplayFlags = 280
|
|
TopColumn = 0
|
|
End
|
|
Begin Table = "SchemaCollFamMacc"
|
|
Begin Extent =
|
|
Top = 8
|
|
Left = 338
|
|
Bottom = 138
|
|
Right = 508
|
|
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 = 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_ElencoFamMacc'
|
|
go
|
|
|
|
exec sp_addextendedproperty 'MS_DiagramPaneCount', 1, 'SCHEMA', 'dbo', 'VIEW', 'v_ElencoFamMacc'
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
alter PROCEDURE stp_AFM_deleteQuery (@Original_CodFam NVARCHAR(50))
|
|
AS
|
|
SET NOCOUNT OFF;
|
|
|
|
BEGIN TRAN
|
|
|
|
-- cancello eventuale riga tabellone associazione schede/famiglie
|
|
DELETE
|
|
FROM SchemaCollFamMacc
|
|
WHERE ([CodFam] = @Original_CodFam)
|
|
|
|
|
|
-- cancello vera e propria famiglia
|
|
DELETE
|
|
FROM [dbo].[ElencoFamMacc]
|
|
WHERE ([CodFam] = @Original_CodFam)
|
|
|
|
COMMIT TRAN
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
-- =============================================
|
|
-- Author: S.E. Locatelli
|
|
-- Create date: 2015.06.09
|
|
-- Description: delete record
|
|
-- =============================================
|
|
alter PROCEDURE stp_AM_deleteQuery
|
|
(
|
|
@Original_Matricola nvarchar(50)
|
|
)
|
|
AS
|
|
|
|
BEGIN tran
|
|
SET NOCOUNT OFF;
|
|
|
|
DELETE
|
|
FROM Tags2Macchine
|
|
WHERE Matricola = @Original_Matricola
|
|
|
|
DELETE
|
|
FROM ElencoMacchineCN
|
|
WHERE Matricola = @Original_Matricola
|
|
|
|
COMMIT tran
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
-- =============================================
|
|
-- Author: S.E. Locatelli
|
|
-- Create date: 2015.10.19
|
|
-- Description: recupero record da matricola
|
|
-- =============================================
|
|
create PROCEDURE stp_AM_getByMatr
|
|
(
|
|
@Matricola NVARCHAR(50)
|
|
)
|
|
AS
|
|
SET NOCOUNT OFF;
|
|
|
|
SELECT *
|
|
FROM ElencoMacchineCN
|
|
WHERE Matricola = @Matricola
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
-- =============================================
|
|
-- Author: S.E. Locatelli
|
|
-- Create date: 2015.06.09
|
|
-- Description: insert record
|
|
-- =============================================
|
|
alter PROCEDURE stp_AM_insertQuery
|
|
(
|
|
@Matricola NVARCHAR(50),
|
|
@User NVARCHAR(50),
|
|
@Descrizione NVARCHAR(50),
|
|
@Cliente NVARCHAR(50),
|
|
@CodFam NVARCHAR(50),
|
|
@CorsaX INT,
|
|
@CorsaY INT,
|
|
@CorsaZ INT
|
|
)
|
|
AS
|
|
|
|
BEGIN tran
|
|
|
|
SET NOCOUNT OFF;
|
|
|
|
DECLARE @IdxDossier INT = 0
|
|
|
|
-- inserisco macchina
|
|
INSERT INTO ElencoMacchineCN (Matricola, Descrizione, Cliente, CodFam, CorsaX, CorsaY, CorsaZ)
|
|
VALUES (@Matricola, @Descrizione, @Cliente, @CodFam, @CorsaX, @CorsaY, @CorsaZ);
|
|
|
|
-- creo DOSSIER x matricola...
|
|
EXEC stp_ED_InsertQuery @Matricola, @User
|
|
-- leggo numero dossier!
|
|
SELECT @IdxDossier = IdxDossier
|
|
FROM ElencoDossier
|
|
WHERE Matricola = @Matricola
|
|
|
|
-- inserisco schema collaudi da famiglia macchina nel dossier...
|
|
EXEC stp_SCM_insByFamMac @IdxDossier, @CodFam
|
|
|
|
|
|
-- inserisco istanza prove standard x varie fasi...
|
|
--EXEC stp_SCM_insMisFasiMissing @IdxDossier
|
|
|
|
SELECT *
|
|
FROM ElencoMacchineCN
|
|
WHERE Matricola = @Matricola
|
|
|
|
COMMIT tran
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
-- =============================================
|
|
-- Author: S.E. Locatelli
|
|
-- Create date: 2015.10.16
|
|
-- Description: clona assegnazioni famiglia
|
|
-- =============================================
|
|
create PROCEDURE stp_SCFM_clonaFamMacc
|
|
(
|
|
@CodFamFrom NVARCHAR(50) = '' -- sorgente
|
|
,@CodFamTo NVARCHAR(50) = '' -- destinazione
|
|
)
|
|
AS
|
|
BEGIN
|
|
|
|
-- merge: se manca inserisco, se c'è faccio + 1 ...
|
|
MERGE SchemaCollFamMacc AS target
|
|
USING (SELECT CodScheda, Vers, @CodFamTo AS CodFam, NumSchede, Descrizione, opz
|
|
FROM SchemaCollFamMacc
|
|
WHERE CodFam = @CodFamFrom) AS source (CodScheda, Vers, CodFam, NumSchede, Descrizione, opz)
|
|
ON (target.CodFam = source.CodFam AND target.CodScheda = source.CodScheda AND target.Vers = source.Vers)
|
|
WHEN MATCHED THEN
|
|
UPDATE SET NumSchede = target.NumSchede + 1
|
|
WHEN NOT MATCHED THEN
|
|
INSERT (CodScheda, Vers, CodFam, NumSchede, Descrizione, opz)
|
|
VALUES (source.CodScheda, source.Vers, source.CodFam, source.NumSchede, source.Descrizione, source.opz);
|
|
|
|
--INSERT INTO SchemaCollFamMacc(CodScheda, Vers, CodFam, NumSchede, Descrizione, opz)
|
|
--SELECT CodScheda, Vers, @CodFamTo AS CodFam, NumSchede, Descrizione, opz
|
|
--FROM SchemaCollFamMacc
|
|
--WHERE CodFam = @CodFamFrom
|
|
END
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
set xact_abort on
|
|
go
|
|
|
|
begin transaction
|
|
go
|
|
|
|
set ANSI_NULLS on
|
|
go
|
|
|
|
-- =============================================
|
|
-- Author: S.E. Locatelli
|
|
-- Create date: 2015.06.16
|
|
-- Description: insert record da scheda
|
|
-- =============================================
|
|
alter PROCEDURE stp_SCM_insByCodSchedaVers
|
|
(
|
|
@IdxDossier INT
|
|
,@CodSchedaVers NVARCHAR(100) -- formato CodScheda.Vers --> da splittare
|
|
)
|
|
AS
|
|
SET NOCOUNT ON;
|
|
|
|
DECLARE @CodScheda NVARCHAR(50) = '',
|
|
@Vers INT = 0
|
|
|
|
-- splitto e recupero dati...
|
|
SELECT @CodScheda = SUBSTRING ( @CodSchedaVers, 0, CHARINDEX ( '.', @CodSchedaVers ) )
|
|
SELECT @Vers = REPLACE ( @CodSchedaVers, @CodScheda+'.', '' )
|
|
|
|
MERGE SchemaCollMacc AS target
|
|
USING (SELECT @IdxDossier as IdxDossier, sc.CodScheda, sc.Vers, MAX(ISNULL(scm.NumScheda, 0)) + 1 as NumScheda, sc.Descrizione, sc.FasiEnab
|
|
FROM AnagSchede sc
|
|
LEFT OUTER JOIN SchemaCollMacc scm ON sc.CodScheda = scm.CodScheda and sc.Vers = scm.Vers
|
|
WHERE sc.CodScheda = @CodScheda
|
|
AND sc.Vers = @Vers
|
|
AND scm.IdxDossier = @IdxDossier
|
|
GROUP BY sc.CodScheda, sc.Vers, sc.Descrizione, sc.FasiEnab) AS source (IdxDossier, CodScheda, Vers, NumScheda, Descrizione, FasiEnab)
|
|
|
|
-- USING (SELECT @IdxDossier, CodScheda, Vers, 1, Descrizione, FasiEnab
|
|
--FROM AnagSchede
|
|
--WHERE CodScheda = @CodScheda
|
|
-- AND Vers = @Vers) AS source (IdxDossier, CodScheda, Vers, NumScheda, Descrizione, FasiEnab)
|
|
ON (target.IdxDossier = source.IdxDossier AND target.CodScheda = source.CodScheda AND target.Vers = source.Vers AND target.NumScheda = source.NumScheda)
|
|
-- WHEN MATCHED THEN
|
|
-- UPDATE SET Traduzione = source.traduzione
|
|
WHEN NOT MATCHED THEN
|
|
INSERT (IdxDossier, CodScheda, Vers, NumScheda, Descrizione, opz, FasiEnab)
|
|
VALUES (source.IdxDossier, source.CodScheda, source.Vers, source.NumScheda, source.Descrizione, 'M', source.FasiEnab);
|
|
go
|
|
|
|
commit
|
|
go
|
|
|
|
|
|
|