Index: Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.Designer.cs =================================================================== diff -u -rb151f3394ec2bfd98fd4248d8965705b2b407a87 -re7359d916fa8cd9a3a28e6944d65abdcfe2e0789 --- Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision b151f3394ec2bfd98fd4248d8965705b2b407a87) +++ Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision e7359d916fa8cd9a3a28e6944d65abdcfe2e0789) @@ -2196,6 +2196,16 @@ } /// + /// Looks up a localized string similar to De waarde voor parameter '{0}' op regel {1}, kolom '{2}', moet een positief geheel getal zijn.. + /// + public static string StructuresParameterRowsValidator_ParameterId_0_Line_1_ColumnName_2_value_must_be_positive_whole_number { + get { + return ResourceManager.GetString("StructuresParameterRowsValidator_ParameterId_0_Line_1_ColumnName_2_value_must_be_" + + "positive_whole_number", resourceCulture); + } + } + + /// /// Looks up a localized string similar to De waarde voor parameter '{0}' op regel {1}, kolom '{2}', moet een geheel getal zijn groter of gelijk aan 1.. /// public static string StructuresParameterRowsValidator_ParameterId_0_Line_1_ColumnName_2_value_must_be_whole_number_greater_or_equal_to_one { Index: Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.resx =================================================================== diff -u -rb151f3394ec2bfd98fd4248d8965705b2b407a87 -re7359d916fa8cd9a3a28e6944d65abdcfe2e0789 --- Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.resx (.../Resources.resx) (revision b151f3394ec2bfd98fd4248d8965705b2b407a87) +++ Ringtoets/Common/src/Ringtoets.Common.IO/Properties/Resources.resx (.../Resources.resx) (revision e7359d916fa8cd9a3a28e6944d65abdcfe2e0789) @@ -885,4 +885,7 @@ Vakindeling + + De waarde voor parameter '{0}' op regel {1}, kolom '{2}', moet een positief geheel getal zijn. + \ No newline at end of file Index: Ringtoets/Common/src/Ringtoets.Common.IO/Structures/StructuresParameterRowsValidator.cs =================================================================== diff -u -rb151f3394ec2bfd98fd4248d8965705b2b407a87 -re7359d916fa8cd9a3a28e6944d65abdcfe2e0789 --- Ringtoets/Common/src/Ringtoets.Common.IO/Structures/StructuresParameterRowsValidator.cs (.../StructuresParameterRowsValidator.cs) (revision b151f3394ec2bfd98fd4248d8965705b2b407a87) +++ Ringtoets/Common/src/Ringtoets.Common.IO/Structures/StructuresParameterRowsValidator.cs (.../StructuresParameterRowsValidator.cs) (revision e7359d916fa8cd9a3a28e6944d65abdcfe2e0789) @@ -195,7 +195,7 @@ StructureFilesKeywords.StabilityPointStructureParameterKeyword19, VariationCoefficientNormalDistributionRule }, { - StructureFilesKeywords.StabilityPointStructureParameterKeyword20, PositiveDoubleRule + StructureFilesKeywords.StabilityPointStructureParameterKeyword20, PositiveIntRule }, { StructureFilesKeywords.StabilityPointStructureParameterKeyword21, ProbabilityRule @@ -406,6 +406,11 @@ return ValidatePositiveDoubleParameter(row, StructureFilesKeywords.NumericalValueColumnName); } + private static List PositiveIntRule(StructuresParameterRow row) + { + return ValidatePositiveIntParameter(row, StructureFilesKeywords.NumericalValueColumnName); + } + private static List ValidateDoubleParameter(StructuresParameterRow row, string columnName) { var messages = new List(); @@ -434,6 +439,20 @@ return messages; } + private static List ValidatePositiveIntParameter(StructuresParameterRow row, string columnName) + { + var messages = new List(); + + double value = GetValueFromRowForColumn(row, columnName); + if (!IsValueWholeNumber(value) || value < 0) + { + messages.Add(string.Format(Resources.StructuresParameterRowsValidator_ParameterId_0_Line_1_ColumnName_2_value_must_be_positive_whole_number, + row.ParameterId, row.LineNumber, columnName.FirstToUpper())); + } + + return messages; + } + private static List ValidateGreaterThanZeroDoubleParameter(StructuresParameterRow row, string columnName) { var messages = new List(); Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/Structures/StructuresParameterRowsValidatorTest.cs =================================================================== diff -u -rb151f3394ec2bfd98fd4248d8965705b2b407a87 -re7359d916fa8cd9a3a28e6944d65abdcfe2e0789 --- Ringtoets/Common/test/Ringtoets.Common.IO.Test/Structures/StructuresParameterRowsValidatorTest.cs (.../StructuresParameterRowsValidatorTest.cs) (revision b151f3394ec2bfd98fd4248d8965705b2b407a87) +++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/Structures/StructuresParameterRowsValidatorTest.cs (.../StructuresParameterRowsValidatorTest.cs) (revision e7359d916fa8cd9a3a28e6944d65abdcfe2e0789) @@ -1208,7 +1208,7 @@ new StructuresParameterRow { ParameterId = StructureFilesKeywords.StabilityPointStructureParameterKeyword20, - NumericalValue = -1.0, + NumericalValue = -1, LineNumber = 20 }, new StructuresParameterRow @@ -1290,7 +1290,7 @@ "De waarde voor parameter 'KW_STERSTAB17' op regel 17, kolom 'Numeriekewaarde', moet een getal zijn groter dan 0.", "De waarde voor parameter 'KW_STERSTAB17' op regel 17, kolom 'Boolean', moet '0' (variatiecoëfficiënt) of '1' (standaardafwijking) zijn.", "De waarde voor parameter 'KW_STERSTAB17' op regel 17, kolom 'Standaardafwijking.variatie', moet een positief getal zijn.", - "De waarde voor parameter 'KW_STERSTAB20' op regel 20, kolom 'Numeriekewaarde', moet een positief getal zijn.", + "De waarde voor parameter 'KW_STERSTAB20' op regel 20, kolom 'Numeriekewaarde', moet een positief geheel getal zijn.", "De waarde voor parameter 'KW_STERSTAB21' op regel 21, kolom 'Numeriekewaarde', moet in het bereik [0,0, 1,0] liggen.", "De waarde voor parameter 'KW_STERSTAB22' op regel 22, kolom 'Numeriekewaarde', is geen getal.", "De waarde voor parameter 'KW_STERSTAB23' op regel 23, kolom 'Numeriekewaarde', is te dicht op 0 waardoor een betrouwbare conversie tussen standaardafwijking en variatiecoëfficiënt niet mogelijk is.",