Index: DamClients/DamUI/trunk/src/Dam/Forms/DamPlugin.cs =================================================================== diff -u -r3664 -r3678 --- DamClients/DamUI/trunk/src/Dam/Forms/DamPlugin.cs (.../DamPlugin.cs) (revision 3664) +++ DamClients/DamUI/trunk/src/Dam/Forms/DamPlugin.cs (.../DamPlugin.cs) (revision 3678) @@ -711,7 +711,8 @@ LocalizedMessageBox.ShowTranslatedText(openingMessage + paragraphSepatator + timeMessage + paragraphSepatator + e.Message); } - this.damProject.SaveXMLProject(this.damProject.ProjectFileName, this.damProject); + damProject.SaveXMLProject(damProject.ProjectFileName, damProject); + damProject.SaveCalculationLogToTextFile(damProject.DamProjectData.CalculationMessages, damProject.ProjectFileName); SetProperControlsAfterCalculation(); } @@ -1177,8 +1178,8 @@ // Save the data - this.damProject.SaveXMLProject(this.damProject.ProjectFileName, this.damProject); - + damProject.SaveXMLProject(damProject.ProjectFileName, damProject); + damProject.SaveCalculationLogToTextFile(damProject.DamProjectData.CalculationMessages, damProject.ProjectFileName); this.progressDelegate(1); mainForm.Invoke(new EmptyDelegate(this.UpdateForDamApplicationType)); Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamProject.cs =================================================================== diff -u -r3526 -r3678 --- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamProject.cs (.../DamProject.cs) (revision 3526) +++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamProject.cs (.../DamProject.cs) (revision 3678) @@ -52,6 +52,7 @@ private string projectFileName; private static string testProgramVersion; private DamProjectData damProjectData; + private const string CalculationLogFileExtension = "calclog.txt"; public static ProjectPathLocation ProjectWorkingPathLocation = ProjectPathLocation.InApplicationMap; public static string UserWorkingPath = DamProject.GetNewTempDirectory(); @@ -744,6 +745,29 @@ }); } + /// + /// Saves the calculation log to text file. + /// + /// The calculation messages. + /// Name of the file. + public void SaveCalculationLogToTextFile(List calculationMessages, string fileName) + { + if (calculationMessages != null && calculationMessages.Count > 0) + { + var messages = new List(); + foreach (var calculationMessage in calculationMessages) + { + messages.Add(calculationMessage.MessageType + ": " + calculationMessage.Message + ", " + + calculationMessage.Detail + ", " + calculationMessage.SubjectName); + } + fileName = Path.ChangeExtension(fileName, DateTime.Now.ToFileTime() + CalculationLogFileExtension); + System.IO.File.WriteAllLines(fileName, messages); + } + } + + /// + /// Imports the water level time series. + /// public void ImportWaterLevelTimeSeries() {