From 2a54e905e6283829b9196a7c3053fe58a7ea77b8 Mon Sep 17 00:00:00 2001 From: Daniel Schick Date: Mon, 10 Oct 2016 13:28:26 +0000 Subject: [PATCH] Version 3.2.10, neue Korreturen --- Stundensheet.xlsx | Bin 23779 -> 23847 bytes .../bsmd.ExcelReadService/ExcelReader.cs | 10 ++++++++++ nsw/Source/bsmd.ExcelReadService/Util.cs | 8 ++++++++ .../Properties/AssemblyProductInfo.cs | 2 +- .../Properties/AssemblyProjectInfo.cs | 2 +- nsw/Source/bsmd.database/STAT.cs | 6 ++---- 6 files changed, 22 insertions(+), 6 deletions(-) diff --git a/Stundensheet.xlsx b/Stundensheet.xlsx index 552f3e3b38ea42e5767a7f56fb11e255f4a2dbc4..47e49252aea449fe2a986ec83e77a09255502a03 100644 GIT binary patch delta 12070 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 TF9?C81!~bJhw;(=ufhKT{k}&~ delta 11967 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 RFaz4)S3?j2pYA_1{{!RkHK70i diff --git a/nsw/Source/bsmd.ExcelReadService/ExcelReader.cs b/nsw/Source/bsmd.ExcelReadService/ExcelReader.cs index 0a28dc3b..762f6b37 100644 --- a/nsw/Source/bsmd.ExcelReadService/ExcelReader.cs +++ b/nsw/Source/bsmd.ExcelReadService/ExcelReader.cs @@ -405,6 +405,16 @@ namespace bsmd.ExcelReadService return date; } + if (result == null) + { + CultureInfo provider = CultureInfo.InvariantCulture; + string dateString = val.ToString(); + string format = "HHmm"; + DateTime tmpDate; + if (DateTime.TryParseExact(dateString, format, provider, DateTimeStyles.None, out tmpDate)) + result = tmpDate; + } + if (result != null) { this.HighlightLookup(lookup, ReadState.OK); diff --git a/nsw/Source/bsmd.ExcelReadService/Util.cs b/nsw/Source/bsmd.ExcelReadService/Util.cs index 5c653d6d..b6b99386 100644 --- a/nsw/Source/bsmd.ExcelReadService/Util.cs +++ b/nsw/Source/bsmd.ExcelReadService/Util.cs @@ -311,6 +311,8 @@ namespace bsmd.ExcelReadService } STAT stat = statMessage.Elements[0] as STAT; Util.ScanMessage(stat, reader); + stat.MMSINumber = reader.ReadTextNoWhitespace("STAT.MMSINumber"); + stat.ISMCompanyId = reader.ReadTextNoWhitespace("STAT.ISMCompanyId"); if (!stat.Flag.IsNullOrEmpty() && stat.Flag.Length > 2) stat.Flag = LocodeDB.CountryCodeFromName(stat.Flag); @@ -637,6 +639,10 @@ namespace bsmd.ExcelReadService string portDateOfDeparture = string.Format("SEC.PortFacilityDateOfDeparture_{0}", i); string portShipSecLevel = string.Format("SEC.PortFacilityShipSecurityLevel_{0}", i); string portGISISCode = string.Format("SEC.PortFacilityGISISCode_{0}", i); + if((portGISISCode != null) && (portGISISCode.Length < 4)) + { + while (portGISISCode.Length < 4) portGISISCode = "0" + portGISISCode; + } string portSecMatters = string.Format("SEC.PortFacilitySecurityMattersToReport_{0}", i); LastTenPortFacilitiesCalled l10fc = sec.GetPortFacilityWithIdentifier(i.ToString()) as LastTenPortFacilitiesCalled; @@ -876,6 +882,8 @@ namespace bsmd.ExcelReadService } ladg.CargoCodeNST = reader.ReadText(lnType); + if ((ladg.CargoCodeNST != null) && (ladg.CargoCodeNST.Length == 1)) + ladg.CargoCodeNST = "0" + ladg.CargoCodeNST; if ((ladg.CargoCodeNST != null) && (ladg.CargoCodeNST.Length != 2)) ladg.CargoCodeNST = null; // stupid validation ladg.CargoNumberOfItems = (int?) reader.ReadNumber(lnCNOI); diff --git a/nsw/Source/bsmd.database/Properties/AssemblyProductInfo.cs b/nsw/Source/bsmd.database/Properties/AssemblyProductInfo.cs index feb39704..d7ce7fad 100644 --- a/nsw/Source/bsmd.database/Properties/AssemblyProductInfo.cs +++ b/nsw/Source/bsmd.database/Properties/AssemblyProductInfo.cs @@ -2,6 +2,6 @@ [assembly: AssemblyCompany("Informatikbüro Daniel Schick")] [assembly: AssemblyProduct("BSMD NSW interface")] -[assembly: AssemblyInformationalVersion("3.2.9")] +[assembly: AssemblyInformationalVersion("3.2.10")] [assembly: AssemblyCopyright("Copyright © 2014-2016 Informatikbüro Daniel Schick. All rights reserved.")] [assembly: AssemblyTrademark("")] \ No newline at end of file diff --git a/nsw/Source/bsmd.database/Properties/AssemblyProjectInfo.cs b/nsw/Source/bsmd.database/Properties/AssemblyProjectInfo.cs index 101f6a08..79f79c06 100644 --- a/nsw/Source/bsmd.database/Properties/AssemblyProjectInfo.cs +++ b/nsw/Source/bsmd.database/Properties/AssemblyProjectInfo.cs @@ -1,4 +1,4 @@ using System.Reflection; -[assembly: AssemblyVersion("3.2.9.*")] +[assembly: AssemblyVersion("3.2.10.*")] diff --git a/nsw/Source/bsmd.database/STAT.cs b/nsw/Source/bsmd.database/STAT.cs index 292f517e..34a7db89 100644 --- a/nsw/Source/bsmd.database/STAT.cs +++ b/nsw/Source/bsmd.database/STAT.cs @@ -37,8 +37,7 @@ namespace bsmd.database public string CallSign { get; set; } [ShowReport] - [Validation(ValidationCode.NOT_NULL)] - [LookupName("STAT.MMSINumber")] + [Validation(ValidationCode.NOT_NULL)] [MaxLength(50)] public string MMSINumber { get; set; } @@ -107,8 +106,7 @@ namespace bsmd.database public string ISMCompanyName { get; set; } [ShowReport] - [Validation(ValidationCode.STRING_EXACT_LEN, 7)] - [LookupName("STAT.ISMCompanyId")] + [Validation(ValidationCode.STRING_EXACT_LEN, 7)] [MaxLength(10)] public string ISMCompanyId { get; set; }