Index: Ringtoets/Migration/src/Ringtoets.Migration.Core/EmbeddedResources/Migration_17.3_18.1.sql =================================================================== diff -u -rf9f8c1930941084de0b0010b52fc5f76ad2eaa48 -r51f87dd6a3c95498155174a81fae5ff83e1b816f --- Ringtoets/Migration/src/Ringtoets.Migration.Core/EmbeddedResources/Migration_17.3_18.1.sql (.../Migration_17.3_18.1.sql) (revision f9f8c1930941084de0b0010b52fc5f76ad2eaa48) +++ Ringtoets/Migration/src/Ringtoets.Migration.Core/EmbeddedResources/Migration_17.3_18.1.sql (.../Migration_17.3_18.1.sql) (revision 51f87dd6a3c95498155174a81fae5ff83e1b816f) @@ -2577,6 +2577,63 @@ JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = cs.[FailureMechanismEntityId] WHERE source.[IdenticalApertures] != cs.[IdenticalApertures]; +/* +* Log changes that are applied to closing structure calculations +*/ +CREATE TEMP TABLE TempMigratedStructuresCalculationGroupMapping +( + 'CalculationGroupEntityId' INTEGER NOT NULL, + 'FailureMechanismEntityId' INTEGER NOT NULL, + PRIMARY KEY + ( + 'CalculationGroupEntityId' + ) +); + +INSERT INTO TempMigratedStructuresCalculationGroupMapping( + [CalculationGroupEntityId], + [FailureMechanismEntityId] +) +SELECT + [CalculationGroupEntityId], + [FailureMechanismEntityId] +FROM +( +WITH RECURSIVE CalculationGroupEntities(CalculationGroupEntityId, ParentCalculationGroupEntityId, FailureMechanismEntityId) AS ( +SELECT + CalculationGroupEntityId, + NULL, + FailureMechanismEntityId +FROM FailureMechanismEntity +WHERE FailureMechanismEntity.FailureMechanismType = 10 +UNION ALL +SELECT + CalculationGroupEntity.CalculationGroupEntityId, + CalculationGroupEntity.ParentCalculationGroupEntityId, + CalculationGroupEntities.FailureMechanismEntityId +FROM CalculationGroupEntity, CalculationGroupEntities +WHERE CalculationGroupEntity.ParentCalculationGroupEntityId = CalculationGroupEntities.CalculationGroupEntityId +) +SELECT + CalculationGroupEntities.CalculationGroupEntityId AS CalculationGroupEntityId, + CalculationGroupEntities.FailureMechanismEntityId AS FailureMechanismEntityId +FROM CalculationGroupEntities +ORDER BY FailureMechanismEntityId +); + +INSERT INTO TempChanges +SELECT + asfm.[AssessmentSectionId], + asfm.[AssessmentSectionName], + asfm.[FailureMechanismId], + asfm.[FailureMechanismName], + "De waarde van '" || source.[IdenticalApertures] || "' van parameter 'Aantal identieke doorstroomopeningen' van berekening '" || source.[Name] || "' is ongeldig en is veranderd naar 1." + FROM ClosingStructuresCalculationEntity AS cs + JOIN [SOURCEPROJECT].ClosingStructuresCalculationEntity AS source ON cs.[rowid] = source.[rowid] + JOIN TempMigratedStructuresCalculationGroupMapping mapping USING(CalculationGroupEntityId) + JOIN TempAssessmentSectionFailureMechanism AS asfm ON asfm.[FailureMechanismId] = mapping.[FailureMechanismEntityId] + WHERE source.[IdenticalApertures] != cs.[IdenticalApertures]; + INSERT INTO [LOGDATABASE].MigrationLogEntity ( [FromVersion], [ToVersion], @@ -2656,6 +2713,7 @@ DROP TABLE TempFailureMechanisms; DROP TABLE TempAssessmentSectionFailureMechanism; +DROP TABLE TempMigratedStructuresCalculationGroupMapping; DROP TABLE TempChanges; INSERT INTO [LOGDATABASE].MigrationLogEntity ( Index: Ringtoets/Migration/test/Ringtoets.Migration.Integration.Test/MigrationTo181IntegrationTest.cs =================================================================== diff -u -rf9f8c1930941084de0b0010b52fc5f76ad2eaa48 -r51f87dd6a3c95498155174a81fae5ff83e1b816f --- Ringtoets/Migration/test/Ringtoets.Migration.Integration.Test/MigrationTo181IntegrationTest.cs (.../MigrationTo181IntegrationTest.cs) (revision f9f8c1930941084de0b0010b52fc5f76ad2eaa48) +++ Ringtoets/Migration/test/Ringtoets.Migration.Integration.Test/MigrationTo181IntegrationTest.cs (.../MigrationTo181IntegrationTest.cs) (revision 51f87dd6a3c95498155174a81fae5ff83e1b816f) @@ -350,7 +350,7 @@ { ReadOnlyCollection messages = reader.GetMigrationLogMessages(); - Assert.AreEqual(65, messages.Count); + Assert.AreEqual(66, messages.Count); var i = 0; MigrationLogTestHelper.AssertMigrationLogMessageEqual( new MigrationLogMessage("17.3", newVersion, "Gevolgen van de migratie van versie 17.3 naar versie 18.1:"), @@ -579,6 +579,9 @@ new MigrationLogMessage("17.3", newVersion, " + Toetsspoor: 'Betrouwbaarheid sluiting kunstwerk'"), messages[i++]); MigrationLogTestHelper.AssertMigrationLogMessageEqual( + new MigrationLogMessage("17.3", newVersion, " - De waarde van '0' van parameter 'Aantal identieke doorstroomopeningen' van berekening 'Invalid Identical Apertures' is ongeldig en is veranderd naar 1."), + messages[i++]); + MigrationLogTestHelper.AssertMigrationLogMessageEqual( new MigrationLogMessage("17.3", newVersion, " - De waarde van '0' van parameter 'Aantal identieke doorstroomopeningen' van kunstwerk 'Gemaal Leemans' is ongeldig en is veranderd naar 1."), messages[i++]); MigrationLogTestHelper.AssertMigrationLogMessageEqual(