Index: Riskeer/Migration/src/Riskeer.Migration.Core/EmbeddedResources/DatabaseStructure21.2.sql =================================================================== diff -u -r8ec69e96d59a176c9607047c372f2cd396803a3d -re34060a6a0fb947d9881fd0f00f549c93003ad40 --- Riskeer/Migration/src/Riskeer.Migration.Core/EmbeddedResources/DatabaseStructure21.2.sql (.../DatabaseStructure21.2.sql) (revision 8ec69e96d59a176c9607047c372f2cd396803a3d) +++ Riskeer/Migration/src/Riskeer.Migration.Core/EmbeddedResources/DatabaseStructure21.2.sql (.../DatabaseStructure21.2.sql) (revision e34060a6a0fb947d9881fd0f00f549c93003ad40) @@ -1,6 +1,6 @@ /* ---------------------------------------------------- */ /* Generated by Enterprise Architect Version 14.1 */ -/* Created On : 08-feb-2021 09:53:06 */ +/* Created On : 22-jul-2021 08:59:29 */ /* DBMS : SQLite */ /* ---------------------------------------------------- */ @@ -479,15 +479,17 @@ 'CriticalFlowRateMean' REAL NULL, 'CriticalFlowRateStandardDeviation' REAL NULL, 'UseForeshore' TINYINT (1) NOT NULL, -- true or false - 'DikeHeightCalculationType' TINYINT (1) NOT NULL, -- Enum: 1 = NoCalculation, 2 = CalculateByAssessmentSectionNorm, 3 = CalculateByProfileSpecificRequiredProbability 'DikeHeight' REAL NULL, 'UseBreakWater' TINYINT (1) NOT NULL, -- true or false 'BreakWaterType' TINYINT (1) NOT NULL, -- Enum: 1 = Wall, 2 = Caisson, 3 = Dam 'BreakWaterHeight' REAL NULL, - 'OvertoppingRateCalculationType' TINYINT (1) NOT NULL, -- Enum: 1 = NoCalculation, 2 = CalculateByAssessmentSectionNorm, 3 = CalculateByProfileSpecificRequiredProbability + 'ShouldOvertoppingOutputIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false + 'ShouldDikeHeightBeCalculated' TINYINT (1) NOT NULL, -- true or false + 'DikeHeightTargetProbability' REAL NOT NULL, 'ShouldDikeHeightIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false + 'ShouldOvertoppingRateBeCalculated' TINYINT (1) NOT NULL, -- true or false + 'OvertoppingRateTargetProbability' REAL NOT NULL, 'ShouldOvertoppingRateIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false - 'ShouldOvertoppingOutputIllustrationPointsBeCalculated' TINYINT (1) NOT NULL, -- true or false 'RelevantForScenario' TINYINT (1) NOT NULL, -- true or false 'ScenarioContribution' REAL NOT NULL, CONSTRAINT 'FK_GrassCoverErosionInwardsCalculationEntity_CalculationGroupEntity' FOREIGN KEY ('CalculationGroupEntityId') REFERENCES 'CalculationGroupEntity' ('CalculationGroupEntityId') ON DELETE Cascade ON UPDATE Cascade, Index: Riskeer/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_21.1_21.2.sql =================================================================== diff -u -r8ec69e96d59a176c9607047c372f2cd396803a3d -re34060a6a0fb947d9881fd0f00f549c93003ad40 --- Riskeer/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_21.1_21.2.sql (.../Migration_21.1_21.2.sql) (revision 8ec69e96d59a176c9607047c372f2cd396803a3d) +++ Riskeer/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_21.1_21.2.sql (.../Migration_21.1_21.2.sql) (revision e34060a6a0fb947d9881fd0f00f549c93003ad40) @@ -34,7 +34,119 @@ INSERT INTO GeneralResultFaultTreeIllustrationPointStochastEntity SELECT * FROM [SOURCEPROJECT].GeneralResultFaultTreeIllustrationPointStochastEntity; INSERT INTO GeneralResultSubMechanismIllustrationPointEntity SELECT * FROM [SOURCEPROJECT].GeneralResultSubMechanismIllustrationPointEntity; INSERT INTO GeneralResultSubMechanismIllustrationPointStochastEntity SELECT * FROM [SOURCEPROJECT].GeneralResultSubMechanismIllustrationPointStochastEntity; -INSERT INTO GrassCoverErosionInwardsCalculationEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionInwardsCalculationEntity; +INSERT INTO GrassCoverErosionInwardsCalculationEntity( + [GrassCoverErosionInwardsCalculationEntityId], + [CalculationGroupEntityId], + [HydraulicLocationEntityId], + [DikeProfileEntityId], + [Order], + [Name], + [Comments], + [Orientation], + [CriticalFlowRateMean], + [CriticalFlowRateStandardDeviation], + [UseForeshore], + [DikeHeight], + [UseBreakWater], + [BreakWaterType], + [BreakWaterHeight], + [ShouldOvertoppingOutputIllustrationPointsBeCalculated], + [ShouldDikeHeightBeCalculated], + [DikeHeightTargetProbability], + [ShouldDikeHeightIllustrationPointsBeCalculated], + [ShouldOvertoppingRateBeCalculated], + [OvertoppingRateTargetProbability], + [ShouldOvertoppingRateIllustrationPointsBeCalculated], + [RelevantForScenario], + [ScenarioContribution]) +SELECT + [GrassCoverErosionInwardsCalculationEntityId], + [CalculationGroupEntityId], + [HydraulicLocationEntityId], + [DikeProfileEntityId], + [Order], + [Name], + [Comments], + [Orientation], + [CriticalFlowRateMean], + [CriticalFlowRateStandardDeviation], + [UseForeshore], + [DikeHeight], + [UseBreakWater], + [BreakWaterType], + [BreakWaterHeight], + [ShouldOvertoppingOutputIllustrationPointsBeCalculated], + CASE + WHEN [DikeHeightCalculationType] IS 1 + THEN 0 + ELSE 1 + END, + Norm, + [ShouldDikeHeightIllustrationPointsBeCalculated], + CASE + WHEN [OvertoppingRateCalculationType] IS 1 + THEN 0 + ELSE 1 + END, + Norm, + [ShouldOvertoppingRateIllustrationPointsBeCalculated], + [RelevantForScenario], + [ScenarioContribution] +FROM [SOURCEPROJECT].GrassCoverErosionInwardsCalculationEntity +JOIN ( + WITH CalculationGroups AS ( + SELECT + CalculationGroupEntityId, + ParentCalculationGroupEntityId AS OriginalParentId, + ParentCalculationGroupEntityId AS NextParentId, + NULL as RootId, + CASE + WHEN ParentCalculationGroupEntityId IS NULL + THEN 1 + END AS IsRoot + FROM CalculationGroupEntity + UNION ALL + SELECT + CalculationGroups.CalculationGroupEntityId, + CalculationGroups.OriginalParentId, + entity.ParentCalculationGroupEntityId, + CASE + WHEN entity.ParentCalculationGroupEntityId IS NULL + THEN CalculationGroups.NextParentId + ELSE + CalculationGroups.RootId + END, + NULL + FROM CalculationGroups + INNER JOIN CalculationGroupEntity entity + ON CalculationGroups.NextParentId = entity.CalculationGroupEntityId + ) + SELECT + CalculationGroupEntityId as OriginalGroupId, + CASE + WHEN IsRoot = 1 + THEN CalculationGroupEntityId + ELSE RootId + END AS FinalGroupId + FROM CalculationGroups + WHERE RootId IS NOT NULL OR IsRoot = 1) +ON GrassCoverErosionInwardsCalculationEntity.CalculationGroupEntityId = OriginalGroupId +JOIN ( + SELECT + AssessmentSectionEntityId AS failureMechanismAssessmentSectionId, + CalculationGroupEntityId AS failureMechanismCalculationGroupEntityId + FROM FailureMechanismEntity) + ON failureMechanismCalculationGroupEntityId = FinalGroupId +JOIN ( + SELECT + AssessmentSectionEntityId AS sectionId, + CASE + WHEN NormativeNormType IS 1 + THEN LowerLimitNorm + ELSE SignalingNorm + END AS Norm + FROM AssessmentSectionEntity) +ON sectionId = failureMechanismAssessmentSectionId; INSERT INTO GrassCoverErosionInwardsDikeHeightOutputEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionInwardsDikeHeightOutputEntity; INSERT INTO GrassCoverErosionInwardsFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionInwardsFailureMechanismMetaEntity; INSERT INTO GrassCoverErosionInwardsOutputEntity SELECT * FROM [SOURCEPROJECT].GrassCoverErosionInwardsOutputEntity;