2026-09-01 19:47:49 +02:00
|
|
|
|
|
2026-09-01 19:37:25 +02:00
|
|
|
|
--SCRIPT template
|
|
|
|
|
|
SET NOCOUNT ON;
|
|
|
|
|
|
BEGIN TRANSACTION;
|
|
|
|
|
|
|
|
|
|
|
|
DECLARE @CurrentVersion VARCHAR(20) = '1.0.0'; -- Set your script's target version
|
|
|
|
|
|
|
|
|
|
|
|
-- Check if this update has already been applied
|
2026-09-01 19:47:49 +02:00
|
|
|
|
IF EXISTS
|
|
|
|
|
|
(
|
|
|
|
|
|
SELECT 1
|
|
|
|
|
|
FROM [dbo].[SchemaVersion]
|
|
|
|
|
|
WHERE [VersionNumber] = @CurrentVersion
|
|
|
|
|
|
)
|
2026-09-01 19:37:25 +02:00
|
|
|
|
BEGIN
|
|
|
|
|
|
PRINT 'Version ' + @CurrentVersion + ' has already been applied. Skipping script.';
|
|
|
|
|
|
ROLLBACK TRANSACTION;
|
|
|
|
|
|
RETURN;
|
2026-09-01 19:47:49 +02:00
|
|
|
|
END;
|
2026-09-01 19:37:25 +02:00
|
|
|
|
|
|
|
|
|
|
BEGIN TRY
|
|
|
|
|
|
-- =========================================================
|
2026-09-01 19:47:49 +02:00
|
|
|
|
-- YOUR MIGRATION SQL GOES HERE
|
2026-09-01 19:37:25 +02:00
|
|
|
|
-- =========================================================
|
2026-09-01 19:47:49 +02:00
|
|
|
|
|
|
|
|
|
|
EXEC [sp_executesql] N'
|
2026-09-01 19:37:25 +02:00
|
|
|
|
ALTER PROCEDURE [dbo].[RegistrySelect]
|
|
|
|
|
|
AS
|
|
|
|
|
|
SELECT [r].[RegistryID],
|
|
|
|
|
|
[r].[IdentificatieToestel],
|
|
|
|
|
|
[ParentID] = NULL,
|
|
|
|
|
|
[r].[TypeAanduiding],
|
|
|
|
|
|
[TypeAanduidingNaam] = [tl].[ToestelModelNaam],
|
|
|
|
|
|
[r].[SerieNummer],
|
|
|
|
|
|
[Eigenaar] = ISNULL([r].[Eigenaar], ''HPH''),
|
|
|
|
|
|
[CCWBS_ID] = ISNULL([r].[CCWBS_ID], 1),
|
|
|
|
|
|
[cw].[WBSCC_nr],
|
|
|
|
|
|
[r].[NaamFabrikant],
|
|
|
|
|
|
[r].[NaamLeverancier],
|
|
|
|
|
|
[r].[DatumInGebruik], --= Today (Default + aanpassing mogelijk)
|
|
|
|
|
|
[r].[DatumUitGebruik],
|
|
|
|
|
|
[r].[Lokaal_ID],
|
|
|
|
|
|
[lk].[LokaalNaam], --– SELECT [dbo_Lokaal].[Lokaal_ID], [dbo_Lokaal].[LokaalNaam] FROM dbo_Lokaal ORDER BY [LokaalNaam];
|
|
|
|
|
|
[r].[id_statuslijst],
|
|
|
|
|
|
[sl].[RegisterStatus],
|
|
|
|
|
|
[r].[DefinitieNummerKal],
|
|
|
|
|
|
[r].[KalibratieFrequentie],
|
|
|
|
|
|
[r].[KalibratieFrequentieUnit],
|
|
|
|
|
|
[KalibratieFrequentieUnitName] = [fe].[description],
|
|
|
|
|
|
[r].[KalibratieVerantw],
|
|
|
|
|
|
[KalibratieVerantwAfkorting] = [kv].[Afkorting], [r].[Assetnr]
|
|
|
|
|
|
FROM [dbo].[Register] [r]
|
|
|
|
|
|
LEFT JOIN [dbo].[Toestelmodel] AS [tl]
|
|
|
|
|
|
ON [tl].[TypeAanduiding] = [r].[TypeAanduiding]
|
|
|
|
|
|
LEFT JOIN [dbo].[Lokaal] AS [lk]
|
|
|
|
|
|
ON [lk].[Lokaal_ID] = [r].[Lokaal_ID]
|
|
|
|
|
|
LEFT JOIN [dbo].[Statuslijst] [sl]
|
|
|
|
|
|
ON [sl].[ID_statuslijst] = [r].[id_statuslijst]
|
|
|
|
|
|
LEFT JOIN [dbo].[frequentieEenheid] [fe]
|
|
|
|
|
|
ON [fe].[FrequentieEenheid] = [r].[KalibratieFrequentieUnit]
|
|
|
|
|
|
LEFT JOIN [dbo].[KCO_verantw] [kv]
|
|
|
|
|
|
ON [kv].[ID_KCO_Verantw] = [r].[KalibratieVerantw]
|
|
|
|
|
|
LEFT JOIN [dbo].[CCWBS] [cw]
|
|
|
|
|
|
ON [cw].[CCWBS_ID] = [r].[CCWBS_ID]
|
|
|
|
|
|
WHERE [r].[deleted] = 0;
|
2026-09-01 19:47:49 +02:00
|
|
|
|
' ;
|
2026-09-01 19:37:25 +02:00
|
|
|
|
|
2026-09-01 19:47:49 +02:00
|
|
|
|
EXEC [sp_executesql] N'
|
2026-09-01 19:37:25 +02:00
|
|
|
|
ALTER PROCEDURE [dbo].[RegistryInsert]
|
|
|
|
|
|
@IdentificatieToestel VARCHAR(20) = NULL,
|
|
|
|
|
|
@TypeAanduiding VARCHAR(4) = NULL,
|
|
|
|
|
|
@SerieNummer VARCHAR(25) = NULL,
|
|
|
|
|
|
@Eigenaar VARCHAR(50) = NULL,
|
|
|
|
|
|
@CCWBS_ID INT = NULL,
|
|
|
|
|
|
@NaamFabrikant VARCHAR(50) = NULL,
|
|
|
|
|
|
@NaamLeverancier VARCHAR(50) = NULL,
|
|
|
|
|
|
@DatumInGebruik DATETIME = NULL,
|
|
|
|
|
|
@DatumUitGebruik DATETIME = NULL,
|
|
|
|
|
|
@Lokaal_ID INT = NULL,
|
|
|
|
|
|
@id_statuslijst INT = NULL,
|
|
|
|
|
|
@DefinitieNummerKal INT = NULL,
|
|
|
|
|
|
@KalibratieFrequentie INT = NULL,
|
|
|
|
|
|
@KalibratieFrequentieUnit CHAR(1) = NULL,
|
|
|
|
|
|
@KalibratieVerantw INT = NULL,@Assetnr varchar(20)=null
|
|
|
|
|
|
AS
|
|
|
|
|
|
DECLARE @RegistryID INT;
|
|
|
|
|
|
INSERT [dbo].[Register]
|
|
|
|
|
|
(
|
|
|
|
|
|
[IdentificatieToestel],
|
|
|
|
|
|
[TypeAanduiding],
|
|
|
|
|
|
[SerieNummer],
|
|
|
|
|
|
[Eigenaar],
|
|
|
|
|
|
[CCWBS_ID],
|
|
|
|
|
|
[NaamFabrikant],
|
|
|
|
|
|
[NaamLeverancier],
|
|
|
|
|
|
[DatumInGebruik],
|
|
|
|
|
|
[DatumUitGebruik],
|
|
|
|
|
|
[Lokaal_ID],
|
|
|
|
|
|
[id_statuslijst],
|
|
|
|
|
|
[DefinitieNummerKal],
|
|
|
|
|
|
[KalibratieFrequentie],
|
|
|
|
|
|
[KalibratieFrequentieUnit],
|
|
|
|
|
|
[KalibratieVerantw],
|
|
|
|
|
|
[deleted],[Assetnr]
|
|
|
|
|
|
)
|
|
|
|
|
|
VALUES
|
|
|
|
|
|
(@IdentificatieToestel, @TypeAanduiding, @SerieNummer, @Eigenaar, @CCWBS_ID, @NaamFabrikant, @NaamLeverancier,
|
|
|
|
|
|
@DatumInGebruik, @DatumUitGebruik, @Lokaal_ID, @id_statuslijst, @DefinitieNummerKal, @KalibratieFrequentie,
|
|
|
|
|
|
@KalibratieFrequentieUnit, @KalibratieVerantw, 0,@Assetnr);
|
|
|
|
|
|
SET @RegistryID = SCOPE_IDENTITY();
|
|
|
|
|
|
SELECT [r].[RegistryID],
|
|
|
|
|
|
[r].[IdentificatieToestel],
|
|
|
|
|
|
[r].[TypeAanduiding],
|
|
|
|
|
|
[TypeAanduidingNaam] = [tl].[ToestelModelNaam],
|
|
|
|
|
|
[r].[SerieNummer],
|
|
|
|
|
|
[Eigenaar] = ISNULL([r].[Eigenaar], ''HPH''),
|
|
|
|
|
|
[CCWBS_ID] = ISNULL([r].[CCWBS_ID], 1),
|
|
|
|
|
|
[cw].[WBSCC_nr],
|
|
|
|
|
|
[r].[NaamFabrikant],
|
|
|
|
|
|
[r].[NaamLeverancier],
|
|
|
|
|
|
[r].[DatumInGebruik], --= Today (Default + aanpassing mogelijk)
|
|
|
|
|
|
[r].[DatumUitGebruik],
|
|
|
|
|
|
[r].[Lokaal_ID],
|
|
|
|
|
|
[lk].[LokaalNaam], --– SELECT [dbo_Lokaal].[Lokaal_ID], [dbo_Lokaal].[LokaalNaam] FROM dbo_Lokaal ORDER BY [LokaalNaam];
|
|
|
|
|
|
[r].[id_statuslijst],
|
|
|
|
|
|
[sl].[RegisterStatus] [DefinitieNummerKal],
|
|
|
|
|
|
[r].[KalibratieFrequentie],
|
|
|
|
|
|
[r].[KalibratieFrequentieUnit],
|
|
|
|
|
|
[KalibratieFrequentieUnitName] = [fe].[description],
|
|
|
|
|
|
[r].[KalibratieVerantw],
|
|
|
|
|
|
[KalibratieVerantwAfkorting] = [kv].[Afkorting], [r].[Assetnr]
|
|
|
|
|
|
FROM [dbo].[Register] [r]
|
|
|
|
|
|
LEFT JOIN [dbo].[Toestelmodel] AS [tl]
|
|
|
|
|
|
ON [tl].[TypeAanduiding] = [r].[TypeAanduiding]
|
|
|
|
|
|
LEFT JOIN [dbo].[Lokaal] AS [lk]
|
|
|
|
|
|
ON [lk].[Lokaal_ID] = [r].[Lokaal_ID]
|
|
|
|
|
|
LEFT JOIN [dbo].[Statuslijst] [sl]
|
|
|
|
|
|
ON [sl].[ID_statuslijst] = [r].[id_statuslijst]
|
|
|
|
|
|
LEFT JOIN [dbo].[frequentieEenheid] [fe]
|
|
|
|
|
|
ON [fe].[FrequentieEenheid] = [r].[KalibratieFrequentieUnit]
|
|
|
|
|
|
LEFT JOIN [dbo].[KCO_verantw] [kv]
|
|
|
|
|
|
ON [kv].[ID_KCO_Verantw] = [r].[KalibratieVerantw]
|
|
|
|
|
|
LEFT JOIN [dbo].[CCWBS] [cw]
|
|
|
|
|
|
ON [cw].[CCWBS_ID] = [r].[CCWBS_ID]
|
|
|
|
|
|
WHERE [r].[RegistryID] = @RegistryID;
|
2026-09-01 19:47:49 +02:00
|
|
|
|
' ;
|
2026-09-01 19:37:25 +02:00
|
|
|
|
|
2026-09-01 19:47:49 +02:00
|
|
|
|
EXEC [sp_executesql] N'
|
2026-09-01 19:37:25 +02:00
|
|
|
|
ALTER PROCEDURE [dbo].[RegistryUpdate]
|
|
|
|
|
|
@RegistryID INT,
|
|
|
|
|
|
@IdentificatieToestel VARCHAR(20) = NULL,
|
|
|
|
|
|
@TypeAanduiding VARCHAR(4) = NULL,
|
|
|
|
|
|
@SerieNummer VARCHAR(25) = NULL,
|
|
|
|
|
|
@Eigenaar VARCHAR(50) = NULL,
|
|
|
|
|
|
@CCWBS_ID INT = NULL,
|
|
|
|
|
|
@NaamFabrikant VARCHAR(50) = NULL,
|
|
|
|
|
|
@NaamLeverancier VARCHAR(50) = NULL,
|
|
|
|
|
|
@DatumInGebruik DATETIME = NULL,
|
|
|
|
|
|
@DatumUitGebruik DATETIME = NULL,
|
|
|
|
|
|
@Lokaal_ID INT = NULL, ----niet meer update , is via tabel
|
|
|
|
|
|
@id_statuslijst INT = NULL, --niet meer update
|
|
|
|
|
|
@DefinitieNummerKal INT = NULL,
|
|
|
|
|
|
@KalibratieFrequentie INT = NULL,
|
|
|
|
|
|
@KalibratieFrequentieUnit CHAR(1) = NULL,
|
|
|
|
|
|
@KalibratieVerantw INT = NULL,
|
|
|
|
|
|
@Assetnr VARCHAR(20) = NULL
|
|
|
|
|
|
AS
|
|
|
|
|
|
DECLARE @now DATETIME = GETDATE();
|
|
|
|
|
|
|
|
|
|
|
|
DECLARE @id_status INT;
|
|
|
|
|
|
DECLARE @usr VARCHAR(20) = LEFT(SYSTEM_USER, 20);
|
|
|
|
|
|
INSERT [dbo].[Status]
|
|
|
|
|
|
(
|
|
|
|
|
|
[RegistryID],
|
|
|
|
|
|
[Datum],
|
|
|
|
|
|
[id_statuslijst],
|
|
|
|
|
|
[lokaalInfo],
|
|
|
|
|
|
[opmerking],
|
|
|
|
|
|
[creator],
|
|
|
|
|
|
[created],
|
|
|
|
|
|
[changer],
|
|
|
|
|
|
[changed]
|
|
|
|
|
|
)
|
|
|
|
|
|
VALUES
|
|
|
|
|
|
(@RegistryID, @now, @id_statuslijst, @Lokaal_ID, ''initial'', @usr, @now, @usr, @now);
|
|
|
|
|
|
SET @id_status = SCOPE_IDENTITY();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
UPDATE [dbo].[Register]
|
|
|
|
|
|
SET [IdentificatieToestel] = @IdentificatieToestel,
|
|
|
|
|
|
[TypeAanduiding] = @TypeAanduiding,
|
|
|
|
|
|
[SerieNummer] = @SerieNummer,
|
|
|
|
|
|
[Eigenaar] = @Eigenaar,
|
|
|
|
|
|
[CCWBS_ID] = @CCWBS_ID,
|
|
|
|
|
|
[NaamFabrikant] = @NaamFabrikant,
|
|
|
|
|
|
[NaamLeverancier] = @NaamLeverancier,
|
|
|
|
|
|
[DefinitieNummerKal] = @DefinitieNummerKal,
|
|
|
|
|
|
[KalibratieFrequentie] = @KalibratieFrequentie,
|
|
|
|
|
|
[KalibratieFrequentieUnit] = @KalibratieFrequentieUnit,
|
|
|
|
|
|
[KalibratieVerantw] = @KalibratieVerantw,
|
|
|
|
|
|
[id_statuslijst] = @id_statuslijst,
|
|
|
|
|
|
[Last_ID_Status] = @id_status,
|
|
|
|
|
|
[Last_Date_Status] = @now,
|
|
|
|
|
|
--,[Lokaal_ID]= @Lokaal_ID
|
|
|
|
|
|
[DatumInGebruik] = @DatumInGebruik,
|
|
|
|
|
|
[DatumUitGebruik] = @DatumUitGebruik,
|
|
|
|
|
|
[Assetnr] = ISNULL(@Assetnr, [Assetnr])
|
|
|
|
|
|
WHERE [RegistryID] = @RegistryID;
|
2026-09-01 19:47:49 +02:00
|
|
|
|
' ;
|
2026-09-01 19:37:25 +02:00
|
|
|
|
|
|
|
|
|
|
-- =========================================================
|
|
|
|
|
|
-- RECORD SUCCESSFUL VERSION UPDATE
|
|
|
|
|
|
-- =========================================================
|
2026-09-01 19:47:49 +02:00
|
|
|
|
INSERT INTO [dbo].[SchemaVersion]
|
|
|
|
|
|
(
|
|
|
|
|
|
[VersionNumber],
|
|
|
|
|
|
[ScriptDescription]
|
|
|
|
|
|
)
|
|
|
|
|
|
VALUES
|
|
|
|
|
|
(@CurrentVersion, 'Added Assetnr to Registryxxx sp');
|
2026-09-01 19:37:25 +02:00
|
|
|
|
|
|
|
|
|
|
COMMIT TRANSACTION;
|
|
|
|
|
|
PRINT 'Successfully applied update to version ' + @CurrentVersion;
|
|
|
|
|
|
END TRY
|
|
|
|
|
|
BEGIN CATCH
|
|
|
|
|
|
ROLLBACK TRANSACTION;
|
2026-09-01 19:47:49 +02:00
|
|
|
|
|
2026-09-01 19:37:25 +02:00
|
|
|
|
-- Print exception details
|
|
|
|
|
|
DECLARE @ErrorMessage NVARCHAR(4000) = ERROR_MESSAGE();
|
|
|
|
|
|
RAISERROR('Failed to apply version %s. Error: %s', 16, 1, @CurrentVersion, @ErrorMessage);
|
|
|
|
|
|
END CATCH;
|
|
|
|
|
|
GO
|