Index: Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.IO/ClosingStructuresImporter.cs =================================================================== diff -u -r5922f9469ac666ad571ef634219d7450fba03951 -r07ae03e7286102b1ba1d1e19cc6aa684f7d47144 --- Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.IO/ClosingStructuresImporter.cs (.../ClosingStructuresImporter.cs) (revision 5922f9469ac666ad571ef634219d7450fba03951) +++ Ringtoets/ClosingStructures/src/Ringtoets.ClosingStructures.IO/ClosingStructuresImporter.cs (.../ClosingStructuresImporter.cs) (revision 07ae03e7286102b1ba1d1e19cc6aa684f7d47144) @@ -93,10 +93,11 @@ row => row.ParameterId, row => row, StringComparer.OrdinalIgnoreCase); string structureName = structureLocation.Name; + string structureId = structureLocation.Id; var constructionProperties = new ClosingStructure.ConstructionProperties { Name = structureName, - Id = structureLocation.Id, + Id = structureId, Location = structureLocation.Point }; @@ -106,95 +107,125 @@ constructionProperties.StorageStructureArea.CoefficientOfVariation = GetCoefficientOfVariation(rows[key], structureName); }, rowData, - StructureFilesKeywords.ClosingStructureParameterKeyword1); + StructureFilesKeywords.ClosingStructureParameterKeyword1, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.AllowedLevelIncreaseStorage.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.AllowedLevelIncreaseStorage.StandardDeviation = GetStandardDeviation(rows[key], structureName); }, rowData, - StructureFilesKeywords.ClosingStructureParameterKeyword2); + StructureFilesKeywords.ClosingStructureParameterKeyword2, + structureName, + structureId); TrySetConstructionProperty((rows, key) => constructionProperties.StructureNormalOrientation = (RoundedDouble) rows[key].NumericalValue, rowData, - StructureFilesKeywords.ClosingStructureParameterKeyword3); + StructureFilesKeywords.ClosingStructureParameterKeyword3, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.WidthFlowApertures.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.WidthFlowApertures.StandardDeviation = GetStandardDeviation(rows[key], structureName); }, rowData, - StructureFilesKeywords.ClosingStructureParameterKeyword4); + StructureFilesKeywords.ClosingStructureParameterKeyword4, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.LevelCrestStructureNotClosing.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.LevelCrestStructureNotClosing.StandardDeviation = GetStandardDeviation(rows[key], structureName); }, rowData, - StructureFilesKeywords.ClosingStructureParameterKeyword5); + StructureFilesKeywords.ClosingStructureParameterKeyword5, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.InsideWaterLevel.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.InsideWaterLevel.StandardDeviation = GetStandardDeviation(rows[key], structureName); }, rowData, - StructureFilesKeywords.ClosingStructureParameterKeyword6); + StructureFilesKeywords.ClosingStructureParameterKeyword6, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.ThresholdHeightOpenWeir.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.ThresholdHeightOpenWeir.StandardDeviation = GetStandardDeviation(rows[key], structureName); }, rowData, - StructureFilesKeywords.ClosingStructureParameterKeyword7); + StructureFilesKeywords.ClosingStructureParameterKeyword7, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.AreaFlowApertures.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.AreaFlowApertures.StandardDeviation = GetStandardDeviation(rows[key], structureName); }, rowData, - StructureFilesKeywords.ClosingStructureParameterKeyword8); + StructureFilesKeywords.ClosingStructureParameterKeyword8, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.CriticalOvertoppingDischarge.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.CriticalOvertoppingDischarge.CoefficientOfVariation = GetCoefficientOfVariation(rows[key], structureName); }, rowData, - StructureFilesKeywords.ClosingStructureParameterKeyword9); + StructureFilesKeywords.ClosingStructureParameterKeyword9, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.FlowWidthAtBottomProtection.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.FlowWidthAtBottomProtection.StandardDeviation = GetStandardDeviation(rows[key], structureName); }, rowData, - StructureFilesKeywords.ClosingStructureParameterKeyword10); + StructureFilesKeywords.ClosingStructureParameterKeyword10, + structureName, + structureId); TrySetConstructionProperty((rows, key) => constructionProperties.ProbabilityOrFrequencyOpenStructureBeforeFlooding = rows[key].NumericalValue, rowData, - StructureFilesKeywords.ClosingStructureParameterKeyword11); + StructureFilesKeywords.ClosingStructureParameterKeyword11, + structureName, + structureId); TrySetConstructionProperty((rows, key) => constructionProperties.FailureProbabilityOpenStructure = rows[key].NumericalValue, rowData, - StructureFilesKeywords.ClosingStructureParameterKeyword12); + StructureFilesKeywords.ClosingStructureParameterKeyword12, + structureName, + structureId); TrySetConstructionProperty((rows, key) => constructionProperties.IdenticalApertures = (int) rows[key].NumericalValue, rowData, - StructureFilesKeywords.ClosingStructureParameterKeyword13); + StructureFilesKeywords.ClosingStructureParameterKeyword13, + structureName, + structureId); TrySetConstructionProperty((rows, key) => constructionProperties.FailureProbabilityReparation = rows[key].NumericalValue, rowData, - StructureFilesKeywords.ClosingStructureParameterKeyword14); + StructureFilesKeywords.ClosingStructureParameterKeyword14, + structureName, + structureId); TrySetConstructionProperty((rows, key) => constructionProperties.InflowModelType = GetClosingStructureInflowModelType(rows[key]), rowData, - StructureFilesKeywords.ClosingStructureParameterKeyword15); + StructureFilesKeywords.ClosingStructureParameterKeyword15, + structureName, + structureId); return new ClosingStructure(constructionProperties); } Index: Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.IO.Test/ClosingStructuresImporterTest.cs =================================================================== diff -u -r5882fa30eca7bf56353fa7b787ae132423452f1f -r07ae03e7286102b1ba1d1e19cc6aa684f7d47144 --- Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.IO.Test/ClosingStructuresImporterTest.cs (.../ClosingStructuresImporterTest.cs) (revision 5882fa30eca7bf56353fa7b787ae132423452f1f) +++ Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.IO.Test/ClosingStructuresImporterTest.cs (.../ClosingStructuresImporterTest.cs) (revision 07ae03e7286102b1ba1d1e19cc6aa684f7d47144) @@ -220,10 +220,12 @@ string[] messages = msgs.ToArray(); Assert.AreEqual(9, messages.Length); - Assert.AreEqual("Geen geldige definitie gevonden voor parameter 'KW_BETSLUIT1'. Er wordt een standaard waarde gebruikt.", messages[0]); - Assert.AreEqual("Geen geldige definitie gevonden voor parameter 'KW_BETSLUIT5'. Er wordt een standaard waarde gebruikt.", messages[3]); - Assert.AreEqual("Geen geldige definitie gevonden voor parameter 'KW_BETSLUIT8'. Er wordt een standaard waarde gebruikt.", messages[6]); - Assert.AreEqual("Geen geldige definitie gevonden voor parameter 'KW_BETSLUIT14'. Er wordt een standaard waarde gebruikt.", messages[8]); + const string structure = "Kunstwerk 'Coupure Den Oever (90k1)' (KUNST1)"; + + Assert.AreEqual($"Geen definitie gevonden voor parameter 'KW_BETSLUIT1' van kunstwerk '{structure}'. Er wordt een standaard waarde gebruikt.", messages[0]); + Assert.AreEqual($"Geen definitie gevonden voor parameter 'KW_BETSLUIT5' van kunstwerk '{structure}'. Er wordt een standaard waarde gebruikt.", messages[3]); + Assert.AreEqual($"Geen definitie gevonden voor parameter 'KW_BETSLUIT8' van kunstwerk '{structure}'. Er wordt een standaard waarde gebruikt.", messages[6]); + Assert.AreEqual($"Geen definitie gevonden voor parameter 'KW_BETSLUIT14' van kunstwerk '{structure}'. Er wordt een standaard waarde gebruikt.", messages[8]); // Don't care about the other messages. }); Assert.IsTrue(importResult); Index: Ringtoets/Common/src/Ringtoets.Common.IO/FileImporters/StructuresImporter.cs =================================================================== diff -u -r5922f9469ac666ad571ef634219d7450fba03951 -r07ae03e7286102b1ba1d1e19cc6aa684f7d47144 --- Ringtoets/Common/src/Ringtoets.Common.IO/FileImporters/StructuresImporter.cs (.../StructuresImporter.cs) (revision 5922f9469ac666ad571ef634219d7450fba03951) +++ Ringtoets/Common/src/Ringtoets.Common.IO/FileImporters/StructuresImporter.cs (.../StructuresImporter.cs) (revision 07ae03e7286102b1ba1d1e19cc6aa684f7d47144) @@ -131,16 +131,19 @@ protected void TrySetConstructionProperty(Action, string> setPropertyAction, IDictionary rowData, - string key) + string key, + string structureName, + string structureId) { if (rowData.ContainsKey(key)) { setPropertyAction(rowData, key); } else { - log.Warn(string.Format(Resources.StructuresImporter_TrySetConstructionProperty_Parameter_0_missing_or_invalid_default_values_used, - key)); + string structure = string.Format(Resources.StructuresImporter_StructureName_0_StructureId_1_, structureName, structureId); + log.Info(string.Format(Resources.StructuresImporter_TrySetConstructionProperty_Parameter_0_of_Structure_1_missing_or_invalid_default_values_used, + key, structure)); } } Index: Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.Designer.cs =================================================================== diff -u -r76e64248497a51d1d3e4bb011f4c5fd9fa9dc4a6 -r07ae03e7286102b1ba1d1e19cc6aa684f7d47144 --- Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 76e64248497a51d1d3e4bb011f4c5fd9fa9dc4a6) +++ Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 07ae03e7286102b1ba1d1e19cc6aa684f7d47144) @@ -1716,12 +1716,12 @@ } /// - /// Looks up a localized string similar to Geen geldige definitie gevonden voor parameter '{0}'. Er wordt een standaard waarde gebruikt.. + /// Looks up a localized string similar to Geen definitie gevonden voor parameter '{0}' van kunstwerk '{1}'. Er wordt een standaard waarde gebruikt.. /// - public static string StructuresImporter_TrySetConstructionProperty_Parameter_0_missing_or_invalid_default_values_used { + public static string StructuresImporter_TrySetConstructionProperty_Parameter_0_of_Structure_1_missing_or_invalid_default_values_used { get { - return ResourceManager.GetString("StructuresImporter_TrySetConstructionProperty_Parameter_0_missing_or_invalid_defa" + - "ult_values_used", resourceCulture); + return ResourceManager.GetString("StructuresImporter_TrySetConstructionProperty_Parameter_0_of_Structure_1_missing_" + + "or_invalid_default_values_used", resourceCulture); } } Index: Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.resx =================================================================== diff -u -r76e64248497a51d1d3e4bb011f4c5fd9fa9dc4a6 -r07ae03e7286102b1ba1d1e19cc6aa684f7d47144 --- Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.resx (.../Resources.resx) (revision 76e64248497a51d1d3e4bb011f4c5fd9fa9dc4a6) +++ Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.resx (.../Resources.resx) (revision 07ae03e7286102b1ba1d1e19cc6aa684f7d47144) @@ -421,8 +421,8 @@ Kunstwerken importeren is afgebroken. Geen gegevens ingelezen. - - Geen geldige definitie gevonden voor parameter '{0}'. Er wordt een standaard waarde gebruikt. + + Geen definitie gevonden voor parameter '{0}' van kunstwerk '{1}'. Er wordt een standaard waarde gebruikt. Parameter '{0}' komt meerdere keren voor. Index: Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.IO/HeightStructuresImporter.cs =================================================================== diff -u -r5922f9469ac666ad571ef634219d7450fba03951 -r07ae03e7286102b1ba1d1e19cc6aa684f7d47144 --- Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.IO/HeightStructuresImporter.cs (.../HeightStructuresImporter.cs) (revision 5922f9469ac666ad571ef634219d7450fba03951) +++ Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.IO/HeightStructuresImporter.cs (.../HeightStructuresImporter.cs) (revision 07ae03e7286102b1ba1d1e19cc6aa684f7d47144) @@ -96,68 +96,85 @@ row => row.ParameterId, row => row, StringComparer.OrdinalIgnoreCase); string structureName = structureLocation.Name; + string structureId = structureLocation.Id; var constructionProperties = new HeightStructure.ConstructionProperties { Name = structureName, - Id = structureLocation.Id, + Id = structureId, Location = structureLocation.Point }; TrySetConstructionProperty((rows, key) => constructionProperties.StructureNormalOrientation = (RoundedDouble) rows[key].NumericalValue, rowData, - StructureFilesKeywords.HeightStructureParameterKeyword1); + StructureFilesKeywords.HeightStructureParameterKeyword1, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.LevelCrestStructure.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.LevelCrestStructure.StandardDeviation = GetStandardDeviation(rows[key], structureName); }, rowData, - StructureFilesKeywords.HeightStructureParameterKeyword2); + StructureFilesKeywords.HeightStructureParameterKeyword2, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.FlowWidthAtBottomProtection.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.FlowWidthAtBottomProtection.StandardDeviation = GetStandardDeviation(rows[key], structureName); }, rowData, - StructureFilesKeywords.HeightStructureParameterKeyword3); + StructureFilesKeywords.HeightStructureParameterKeyword3, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.CriticalOvertoppingDischarge.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.CriticalOvertoppingDischarge.CoefficientOfVariation = GetCoefficientOfVariation(rows[key], structureName); }, rowData, - StructureFilesKeywords.HeightStructureParameterKeyword4); + StructureFilesKeywords.HeightStructureParameterKeyword4, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.WidthFlowApertures.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.WidthFlowApertures.StandardDeviation = GetStandardDeviation(rows[key], structureName); }, rowData, - StructureFilesKeywords.HeightStructureParameterKeyword5); + StructureFilesKeywords.HeightStructureParameterKeyword5, + structureName, + structureId); TrySetConstructionProperty((rows, key) => constructionProperties.FailureProbabilityStructureWithErosion = rows[key].NumericalValue, rowData, - StructureFilesKeywords.HeightStructureParameterKeyword6); + StructureFilesKeywords.HeightStructureParameterKeyword6, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.StorageStructureArea.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.StorageStructureArea.CoefficientOfVariation = GetCoefficientOfVariation(rows[key], structureName); }, rowData, - StructureFilesKeywords.HeightStructureParameterKeyword7); + StructureFilesKeywords.HeightStructureParameterKeyword7, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.AllowedLevelIncreaseStorage.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.AllowedLevelIncreaseStorage.StandardDeviation = GetStandardDeviation(rows[key], structureName); }, rowData, - StructureFilesKeywords.HeightStructureParameterKeyword8); + StructureFilesKeywords.HeightStructureParameterKeyword8, + structureName, + structureId); return new HeightStructure(constructionProperties); } Index: Ringtoets/HeightStructures/test/Ringtoets.HeightStructures.IO.Test/HeightStructuresImporterTest.cs =================================================================== diff -u -r5882fa30eca7bf56353fa7b787ae132423452f1f -r07ae03e7286102b1ba1d1e19cc6aa684f7d47144 --- Ringtoets/HeightStructures/test/Ringtoets.HeightStructures.IO.Test/HeightStructuresImporterTest.cs (.../HeightStructuresImporterTest.cs) (revision 5882fa30eca7bf56353fa7b787ae132423452f1f) +++ Ringtoets/HeightStructures/test/Ringtoets.HeightStructures.IO.Test/HeightStructuresImporterTest.cs (.../HeightStructuresImporterTest.cs) (revision 07ae03e7286102b1ba1d1e19cc6aa684f7d47144) @@ -188,9 +188,11 @@ string[] messages = msgs.ToArray(); Assert.AreEqual(4, messages.Length); - Assert.AreEqual("Geen geldige definitie gevonden voor parameter 'KW_HOOGTE1'. Er wordt een standaard waarde gebruikt.", messages[0]); - Assert.AreEqual("Geen geldige definitie gevonden voor parameter 'KW_HOOGTE3'. Er wordt een standaard waarde gebruikt.", messages[1]); - Assert.AreEqual("Geen geldige definitie gevonden voor parameter 'KW_HOOGTE6'. Er wordt een standaard waarde gebruikt.", messages[2]); + const string structure = "Kunstwerk 'Coupure Den Oever (90k1)' (KUNST1)"; + + Assert.AreEqual($"Geen definitie gevonden voor parameter 'KW_HOOGTE1' van kunstwerk '{structure}'. Er wordt een standaard waarde gebruikt.", messages[0]); + Assert.AreEqual($"Geen definitie gevonden voor parameter 'KW_HOOGTE3' van kunstwerk '{structure}'. Er wordt een standaard waarde gebruikt.", messages[1]); + Assert.AreEqual($"Geen definitie gevonden voor parameter 'KW_HOOGTE6' van kunstwerk '{structure}'. Er wordt een standaard waarde gebruikt.", messages[2]); // Don't care about the other message. }); Assert.IsTrue(importResult); Index: Ringtoets/StabilityPointStructures/src/Ringtoets.StabilityPointStructures.IO/StabilityPointStructuresImporter.cs =================================================================== diff -u -r5922f9469ac666ad571ef634219d7450fba03951 -r07ae03e7286102b1ba1d1e19cc6aa684f7d47144 --- Ringtoets/StabilityPointStructures/src/Ringtoets.StabilityPointStructures.IO/StabilityPointStructuresImporter.cs (.../StabilityPointStructuresImporter.cs) (revision 5922f9469ac666ad571ef634219d7450fba03951) +++ Ringtoets/StabilityPointStructures/src/Ringtoets.StabilityPointStructures.IO/StabilityPointStructuresImporter.cs (.../StabilityPointStructuresImporter.cs) (revision 07ae03e7286102b1ba1d1e19cc6aa684f7d47144) @@ -93,188 +93,241 @@ row => row.ParameterId, row => row, StringComparer.OrdinalIgnoreCase); string structureName = structureLocation.Name; + string structureId = structureLocation.Id; var constructionProperties = new StabilityPointStructure.ConstructionProperties { Name = structureName, - Id = structureLocation.Id, + Id = structureId, Location = structureLocation.Point, }; TrySetConstructionProperty((rows, key) => constructionProperties.StructureNormalOrientation = (RoundedDouble) rows[key].NumericalValue, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword1); + StructureFilesKeywords.StabilityPointStructureParameterKeyword1, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.StorageStructureArea.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.StorageStructureArea.CoefficientOfVariation = GetCoefficientOfVariation(rows[key], structureName); }, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword2); + StructureFilesKeywords.StabilityPointStructureParameterKeyword2, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.AllowedLevelIncreaseStorage.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.AllowedLevelIncreaseStorage.StandardDeviation = GetStandardDeviation(rows[key], structureName); }, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword3); + StructureFilesKeywords.StabilityPointStructureParameterKeyword3, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.WidthFlowApertures.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.WidthFlowApertures.StandardDeviation = GetStandardDeviation(rows[key], structureName); }, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword4); + StructureFilesKeywords.StabilityPointStructureParameterKeyword4, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.InsideWaterLevel.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.InsideWaterLevel.StandardDeviation = GetStandardDeviation(rows[key], structureName); }, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword5); + StructureFilesKeywords.StabilityPointStructureParameterKeyword5, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.ThresholdHeightOpenWeir.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.ThresholdHeightOpenWeir.StandardDeviation = GetStandardDeviation(rows[key], structureName); }, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword6); + StructureFilesKeywords.StabilityPointStructureParameterKeyword6, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.CriticalOvertoppingDischarge.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.CriticalOvertoppingDischarge.CoefficientOfVariation = GetCoefficientOfVariation(rows[key], structureName); }, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword7); + StructureFilesKeywords.StabilityPointStructureParameterKeyword7, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.FlowWidthAtBottomProtection.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.FlowWidthAtBottomProtection.StandardDeviation = GetStandardDeviation(rows[key], structureName); }, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword8); + StructureFilesKeywords.StabilityPointStructureParameterKeyword8, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.ConstructiveStrengthLinearLoadModel.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.ConstructiveStrengthLinearLoadModel.CoefficientOfVariation = GetCoefficientOfVariation(rows[key], structureName); }, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword9); + StructureFilesKeywords.StabilityPointStructureParameterKeyword9, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.ConstructiveStrengthQuadraticLoadModel.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.ConstructiveStrengthQuadraticLoadModel.CoefficientOfVariation = GetCoefficientOfVariation(rows[key], structureName); }, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword10); + StructureFilesKeywords.StabilityPointStructureParameterKeyword10, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.BankWidth.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.BankWidth.StandardDeviation = GetStandardDeviation(rows[key], structureName); }, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword11); + StructureFilesKeywords.StabilityPointStructureParameterKeyword11, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.InsideWaterLevelFailureConstruction.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.InsideWaterLevelFailureConstruction.StandardDeviation = GetStandardDeviation(rows[key], structureName); }, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword12); + StructureFilesKeywords.StabilityPointStructureParameterKeyword12, + structureName, + structureId); TrySetConstructionProperty((rows, key) => constructionProperties.EvaluationLevel = rows[key].NumericalValue, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword13); + StructureFilesKeywords.StabilityPointStructureParameterKeyword13, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.LevelCrestStructure.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.LevelCrestStructure.StandardDeviation = GetStandardDeviation(rows[key], structureName); }, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword14); + StructureFilesKeywords.StabilityPointStructureParameterKeyword14, + structureName, + structureId); TrySetConstructionProperty((rows, key) => constructionProperties.VerticalDistance = rows[key].NumericalValue, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword15); + StructureFilesKeywords.StabilityPointStructureParameterKeyword15, + structureName, + structureId); TrySetConstructionProperty((rows, key) => constructionProperties.FailureProbabilityRepairClosure = rows[key].NumericalValue, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword16); + StructureFilesKeywords.StabilityPointStructureParameterKeyword16, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.FailureCollisionEnergy.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.FailureCollisionEnergy.CoefficientOfVariation = GetCoefficientOfVariation(rows[key], structureName); }, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword17); + StructureFilesKeywords.StabilityPointStructureParameterKeyword17, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.ShipMass.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.ShipMass.CoefficientOfVariation = GetCoefficientOfVariation(rows[key], structureName); }, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword18); + StructureFilesKeywords.StabilityPointStructureParameterKeyword18, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.ShipVelocity.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.ShipVelocity.CoefficientOfVariation = GetCoefficientOfVariation(rows[key], structureName); }, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword19); + StructureFilesKeywords.StabilityPointStructureParameterKeyword19, + structureName, + structureId); TrySetConstructionProperty((rows, key) => constructionProperties.LevellingCount = (int) rows[key].NumericalValue, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword20); + StructureFilesKeywords.StabilityPointStructureParameterKeyword20, + structureName, + structureId); TrySetConstructionProperty((rows, key) => constructionProperties.ProbabilityCollisionSecondaryStructure = rows[key].NumericalValue, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword21); + StructureFilesKeywords.StabilityPointStructureParameterKeyword21, + structureName, + structureId); TrySetConstructionProperty((rows, key) => constructionProperties.FlowVelocityStructureClosable.Mean = (RoundedDouble) rows[key].NumericalValue, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword22); + StructureFilesKeywords.StabilityPointStructureParameterKeyword22, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.StabilityLinearLoadModel.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.StabilityLinearLoadModel.CoefficientOfVariation = GetCoefficientOfVariation(rows[key], structureName); }, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword23); + StructureFilesKeywords.StabilityPointStructureParameterKeyword23, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.StabilityQuadraticLoadModel.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.StabilityQuadraticLoadModel.CoefficientOfVariation = GetCoefficientOfVariation(rows[key], structureName); }, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword24); + StructureFilesKeywords.StabilityPointStructureParameterKeyword24, + structureName, + structureId); TrySetConstructionProperty((rows, key) => { constructionProperties.AreaFlowApertures.Mean = (RoundedDouble) rows[key].NumericalValue; constructionProperties.AreaFlowApertures.StandardDeviation = GetStandardDeviation(rows[key], structureName); }, rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword25); + StructureFilesKeywords.StabilityPointStructureParameterKeyword25, + structureName, + structureId); TrySetConstructionProperty((rows, key) => constructionProperties.InflowModelType = GetStabilityPointStructureInflowModelType(rows[key]), rowData, - StructureFilesKeywords.StabilityPointStructureParameterKeyword26); + StructureFilesKeywords.StabilityPointStructureParameterKeyword26, + structureName, + structureId); return new StabilityPointStructure(constructionProperties); } Index: Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.IO.Test/StabilityPointStructuresImporterTest.cs =================================================================== diff -u -rdd8f41ce9d9ff9fd570874721a114560c7a71013 -r07ae03e7286102b1ba1d1e19cc6aa684f7d47144 --- Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.IO.Test/StabilityPointStructuresImporterTest.cs (.../StabilityPointStructuresImporterTest.cs) (revision dd8f41ce9d9ff9fd570874721a114560c7a71013) +++ Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.IO.Test/StabilityPointStructuresImporterTest.cs (.../StabilityPointStructuresImporterTest.cs) (revision 07ae03e7286102b1ba1d1e19cc6aa684f7d47144) @@ -237,11 +237,13 @@ string[] messages = msgs.ToArray(); Assert.AreEqual(11, messages.Length); - Assert.AreEqual("Geen geldige definitie gevonden voor parameter 'KW_STERSTAB2'. Er wordt een standaard waarde gebruikt.", messages[0]); - Assert.AreEqual("Geen geldige definitie gevonden voor parameter 'KW_STERSTAB6'. Er wordt een standaard waarde gebruikt.", messages[4]); - Assert.AreEqual("Geen geldige definitie gevonden voor parameter 'KW_STERSTAB12'. Er wordt een standaard waarde gebruikt.", messages[7]); - Assert.AreEqual("Geen geldige definitie gevonden voor parameter 'KW_STERSTAB20'. Er wordt een standaard waarde gebruikt.", messages[9]); - Assert.AreEqual("Geen geldige definitie gevonden voor parameter 'KW_STERSTAB25'. Er wordt een standaard waarde gebruikt.", messages[10]); + const string structure = "Kunstwerk 'Coupure Den Oever (90k1)' (KUNST1)"; + + Assert.AreEqual($"Geen definitie gevonden voor parameter 'KW_STERSTAB2' van kunstwerk '{structure}'. Er wordt een standaard waarde gebruikt.", messages[0]); + Assert.AreEqual($"Geen definitie gevonden voor parameter 'KW_STERSTAB6' van kunstwerk '{structure}'. Er wordt een standaard waarde gebruikt.", messages[4]); + Assert.AreEqual($"Geen definitie gevonden voor parameter 'KW_STERSTAB12' van kunstwerk '{structure}'. Er wordt een standaard waarde gebruikt.", messages[7]); + Assert.AreEqual($"Geen definitie gevonden voor parameter 'KW_STERSTAB20' van kunstwerk '{structure}'. Er wordt een standaard waarde gebruikt.", messages[9]); + Assert.AreEqual($"Geen definitie gevonden voor parameter 'KW_STERSTAB25' van kunstwerk '{structure}'. Er wordt een standaard waarde gebruikt.", messages[10]); // Don't care about the other messages. }); Assert.IsTrue(importResult);