diff --git a/ENI-2/ENI2/ENI2/DetailViewControls/WasteDetailControl.xaml.cs b/ENI-2/ENI2/ENI2/DetailViewControls/WasteDetailControl.xaml.cs
index c8f4a6cf..d40d1e94 100644
--- a/ENI-2/ENI2/ENI2/DetailViewControls/WasteDetailControl.xaml.cs
+++ b/ENI-2/ENI2/ENI2/DetailViewControls/WasteDetailControl.xaml.cs
@@ -252,7 +252,7 @@ namespace ENI2.DetailViewControls
int cnt = 0;
object o = null;
- while (reader.Read() && (cnt < 14))
+ while (reader.Read() && (cnt < 15))
{
if (((IExcelDataReader)reader).FieldCount < 10)
{
diff --git a/Stundensheet.xlsx b/Stundensheet.xlsx
index ca0719e4..ed00b0d3 100644
Binary files a/Stundensheet.xlsx and b/Stundensheet.xlsx differ
diff --git a/nsw/Source/bsmd.ExcelReadService/LocodeDB.cs b/nsw/Source/bsmd.ExcelReadService/LocodeDB.cs
index a39fece0..babfcf4b 100644
--- a/nsw/Source/bsmd.ExcelReadService/LocodeDB.cs
+++ b/nsw/Source/bsmd.ExcelReadService/LocodeDB.cs
@@ -12,6 +12,7 @@ using System.Collections.Generic;
using System.Data;
using System.Data.SQLite;
using bsmd.database;
+using log4net;
namespace bsmd.ExcelReadService
{
@@ -21,8 +22,10 @@ namespace bsmd.ExcelReadService
///
public static class LocodeDB
{
- private static SQLiteConnection _con;
+ private static readonly SQLiteConnection _con;
private const string _locode_DB_NAME = "db.sqlite";
+ private static readonly ILog _log = LogManager.GetLogger(typeof(LocodeDB));
+
static LocodeDB()
{
_con = new SQLiteConnection(string.Format("data source={0}; Version=3;", _locode_DB_NAME));
@@ -148,17 +151,24 @@ namespace bsmd.ExcelReadService
if (locode.Length != 5) return null;
string result = null;
- string query = string.Format("SELECT locodes.name_wo_diacritics FROM locodes JOIN countries ON locodes.country_id = countries.ID WHERE locodes.port='t' AND locodes.city_code = '{0}' AND countries.code = '{1}'",
- locode.Substring(2), locode.Substring(0,2));
- SQLiteCommand cmd = new SQLiteCommand(query, _con);
- IDataReader reader = cmd.ExecuteReader();
- while (reader.Read())
+ try
{
- if(!reader.IsDBNull(0))
- result = reader.GetString(0);
- break;
+ string query = string.Format("SELECT locodes.name_wo_diacritics FROM locodes JOIN countries ON locodes.country_id = countries.ID WHERE locodes.port='t' AND locodes.city_code = '{0}' AND countries.code = '{1}'",
+ locode.Substring(2), locode.Substring(0, 2));
+ SQLiteCommand cmd = new SQLiteCommand(query, _con);
+ IDataReader reader = cmd.ExecuteReader();
+ while (reader.Read())
+ {
+ if (!reader.IsDBNull(0))
+ result = reader.GetString(0);
+ break;
+ }
+ reader.Close();
+ }
+ catch(Exception ex)
+ {
+ _log.WarnFormat("Error on locode lookup: {0}", ex.Message);
}
- reader.Close();
return result;
}
@@ -228,8 +238,8 @@ namespace bsmd.ExcelReadService
public int CompareTo(object obj)
{
- if (obj is LocodeEntry)
- return Locode.CompareTo(((LocodeEntry)obj).Locode);
+ if (obj is LocodeEntry locodeEntry)
+ return Locode.CompareTo((locodeEntry).Locode);
else
return 0;
}
diff --git a/nsw/Source/bsmd.ExcelReadService/Program.cs b/nsw/Source/bsmd.ExcelReadService/Program.cs
index 6fab1939..101d33fa 100644
--- a/nsw/Source/bsmd.ExcelReadService/Program.cs
+++ b/nsw/Source/bsmd.ExcelReadService/Program.cs
@@ -7,12 +7,12 @@ using System.ServiceProcess;
namespace bsmd.ExcelReadService
{
- static class Program
+ internal static class Program
{
///
/// The main entry point for the application.
///
- static void Main()
+ private static void Main()
{
ServiceBase[] ServicesToRun;
diff --git a/nsw/Source/bsmd.ExcelReadService/Util.cs b/nsw/Source/bsmd.ExcelReadService/Util.cs
index 83f894c0..45fb80d9 100644
--- a/nsw/Source/bsmd.ExcelReadService/Util.cs
+++ b/nsw/Source/bsmd.ExcelReadService/Util.cs
@@ -219,7 +219,7 @@ namespace bsmd.ExcelReadService
#region TIEFD
- static void ScanTIEFD(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanTIEFD(List messages, MessageCore messageCore, ExcelReader reader)
{
Message tiefdMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.TIEFD);
if(tiefdMessage.Elements.Count == 0)
@@ -241,7 +241,7 @@ namespace bsmd.ExcelReadService
#region NAME
- static void ScanNAME(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanNAME(List messages, MessageCore messageCore, ExcelReader reader)
{
Message nameMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.NAME);
if (nameMessage.Elements.Count == 0)
@@ -260,7 +260,7 @@ namespace bsmd.ExcelReadService
#region BPOL
- static void ScanBPOL(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanBPOL(List messages, MessageCore messageCore, ExcelReader reader)
{
// Die Verarbeitung dieser Nachricht aktuell nur für
Message bpolMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.BPOL);
@@ -323,7 +323,7 @@ namespace bsmd.ExcelReadService
#region POBA
- static void ScanPOBA(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanPOBA(List messages, MessageCore messageCore, ExcelReader reader)
{
Message pobaMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.POBA);
if(pobaMessage.Elements.Count == 0)
@@ -350,7 +350,7 @@ namespace bsmd.ExcelReadService
#region POBD
- static void ScanPOBD(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanPOBD(List messages, MessageCore messageCore, ExcelReader reader)
{
Message pobdMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.POBD);
if(pobdMessage.Elements.Count == 0)
@@ -378,7 +378,7 @@ namespace bsmd.ExcelReadService
#region HAZA
- static void ScanHAZA(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanHAZA(List messages, MessageCore messageCore, ExcelReader reader)
{
Message hazaMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.HAZA);
if(hazaMessage.Elements.Count == 0)
@@ -715,7 +715,7 @@ namespace bsmd.ExcelReadService
#region HAZD
- static void ScanHAZD(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanHAZD(List messages, MessageCore messageCore, ExcelReader reader)
{
Message hazdMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.HAZD);
if (hazdMessage.Elements.Count == 0)
@@ -1055,7 +1055,7 @@ namespace bsmd.ExcelReadService
#region INFO
- static void ScanINFO(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanINFO(List messages, MessageCore messageCore, ExcelReader reader)
{
Message infoMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.INFO);
if(infoMessage.Elements.Count == 0)
@@ -1078,7 +1078,7 @@ namespace bsmd.ExcelReadService
#region STAT
- static void ScanSTAT(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanSTAT(List messages, MessageCore messageCore, ExcelReader reader)
{
Message statMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.STAT);
if(statMessage.Elements.Count == 0)
@@ -1135,7 +1135,7 @@ namespace bsmd.ExcelReadService
#region NOA_NOD
- static void ScanNOA_NOD(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanNOA_NOD(List messages, MessageCore messageCore, ExcelReader reader)
{
Message noa_nodMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.NOA_NOD);
if (noa_nodMessage.Elements.Count == 0)
@@ -1177,8 +1177,7 @@ namespace bsmd.ExcelReadService
if (!callPurposeCode.IsNullOrEmpty())
{
- CallPurpose callPurpose = noa_nod.GetSublistElementWithIdentifier(i.ToString()) as CallPurpose;
- if (callPurpose == null)
+ if (!(noa_nod.GetSublistElementWithIdentifier(i.ToString()) is CallPurpose callPurpose))
{
callPurpose = new CallPurpose();
callPurpose.NOA_NOD = noa_nod;
@@ -1219,18 +1218,21 @@ namespace bsmd.ExcelReadService
reader.Conf.ConfirmText("NOA_NOD.LastPort", lastPort, noa_nod.LastPort.IsNullOrEmpty() ? ExcelReader.ReadState.WARN : ExcelReader.ReadState.OK);
string nextPort = reader.ReadText("NOA_NOD.NextPort")?.Trim().ToUpper();
- bool? isValidSSNPort = false;
+ bool isValidSSNPort = false;
if (!nextPort.IsNullOrEmpty())
{
- if (noa_nod.NextPort.Length > 5)
- noa_nod.NextPort = noa_nod.NextPort.Substring(0, 5); //trunc
- isValidSSNPort = !LocodeDB.SSNPortNameFromLocode(noa_nod.NextPort).IsNullOrEmpty();
+ if (nextPort.Length > 5)
+ nextPort = noa_nod.NextPort.Substring(0, 5); //trunc
+ else
+ isValidSSNPort = !LocodeDB.SSNPortNameFromLocode(nextPort).IsNullOrEmpty();
}
- if(!isValidSSNPort.HasValue)
+ if(string.IsNullOrEmpty(nextPort))
reader.Conf.ConfirmText("NOA_NOD.NextPort", nextPort, ExcelReader.ReadState.WARN);
else
- reader.Conf.ConfirmText("NOA_NOD.NextPort", nextPort, isValidSSNPort.Value ? ExcelReader.ReadState.OK : ExcelReader.ReadState.FAIL);
+ reader.Conf.ConfirmText("NOA_NOD.NextPort", nextPort, isValidSSNPort ? ExcelReader.ReadState.OK : ExcelReader.ReadState.FAIL);
+
+ noa_nod.NextPort = nextPort;
if(messageCore.IsTransit)
{
@@ -1259,7 +1261,7 @@ namespace bsmd.ExcelReadService
#region AGNT
- static void ScanAGNT(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanAGNT(List messages, MessageCore messageCore, ExcelReader reader)
{
Message agntMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.AGNT);
if(agntMessage.Elements.Count == 0)
@@ -1280,7 +1282,7 @@ namespace bsmd.ExcelReadService
#region WAS
- static void ScanWAS(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanWAS(List messages, MessageCore messageCore, ExcelReader reader)
{
Message wasMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.WAS);
if (wasMessage.Elements.Count == 0)
@@ -1336,8 +1338,7 @@ namespace bsmd.ExcelReadService
string amountGen = string.Format("WAS.WasteAmountGeneratedTillNextPort_MTQ_{0}", i);
string wasteDis = string.Format("WAS.WasteDisposedAtLastPort_MTQ_{0}", i);
- Waste waste = was.GetSublistElementWithIdentifier(i.ToString()) as Waste;
- if(waste == null)
+ if (!(was.GetSublistElementWithIdentifier(i.ToString()) is Waste waste))
{
waste = new Waste();
waste.Identifier = i.ToString();
@@ -1473,7 +1474,7 @@ namespace bsmd.ExcelReadService
#region MDH
- static void ScanMDH(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanMDH(List messages, MessageCore messageCore, ExcelReader reader)
{
Message mdhMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.MDH);
if(mdhMessage.Elements.Count == 0)
@@ -1509,8 +1510,7 @@ namespace bsmd.ExcelReadService
int i = 1;
foreach (LastTenPortFacilitiesCalled ltpfc in sec.LastTenPortFacilitesCalled)
{
- PortOfCallLast30Days poc30d = mdh.GetSublistElementWithIdentifier((i + 1).ToString()) as PortOfCallLast30Days;
- if (poc30d == null)
+ if (!(mdh.GetSublistElementWithIdentifier((i + 1).ToString()) is PortOfCallLast30Days poc30d))
{
poc30d = new PortOfCallLast30Days();
poc30d.Identifier = (i + 1).ToString();
@@ -1537,8 +1537,7 @@ namespace bsmd.ExcelReadService
string crewName = string.Format("MDH.PortOfCallLast30DaysCrewJoinedShipName_{0}", i + 1);
string depDate = string.Format("MDH.PortOfCallLast30DaysDateOfDeparture_{0}", i + 1);
- PortOfCallLast30Days poc30d = mdh.GetSublistElementWithIdentifier((i + 1).ToString()) as PortOfCallLast30Days;
- if (poc30d == null)
+ if (!(mdh.GetSublistElementWithIdentifier((i + 1).ToString()) is PortOfCallLast30Days poc30d))
{
poc30d = new PortOfCallLast30Days();
poc30d.Identifier = (i + 1).ToString();
@@ -1567,8 +1566,7 @@ namespace bsmd.ExcelReadService
ExcelReader.ReadState readState = ExcelReader.ReadState.OK;
for (int j = 0; j < crew.Length; j++)
{
- PortOfCallLast30DaysCrewJoinedShip poc30dCrew = poc30d.GetSublistElementWithIdentifier((j + 1).ToString()) as PortOfCallLast30DaysCrewJoinedShip;
- if (poc30dCrew == null)
+ if (!(poc30d.GetSublistElementWithIdentifier((j + 1).ToString()) is PortOfCallLast30DaysCrewJoinedShip poc30dCrew))
{
poc30dCrew = new PortOfCallLast30DaysCrewJoinedShip();
poc30dCrew.Identifier = (j + 1).ToString();
@@ -1714,7 +1712,7 @@ namespace bsmd.ExcelReadService
#region SEC
- static void ScanSEC(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanSEC(List messages, MessageCore messageCore, ExcelReader reader)
{
Message secMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.SEC);
if (secMessage.Elements.Count == 0)
@@ -1786,8 +1784,7 @@ namespace bsmd.ExcelReadService
string portGISISCode = string.Format("SEC.PortFacilityGISISCode_{0}", i);
string portSecMatters = string.Format("SEC.PortFacilitySecurityMattersToReport_{0}", i);
- LastTenPortFacilitiesCalled l10fc = sec.GetPortFacilityWithIdentifier(i.ToString()) as LastTenPortFacilitiesCalled;
- if (l10fc == null)
+ if (!(sec.GetPortFacilityWithIdentifier(i.ToString()) is LastTenPortFacilitiesCalled l10fc))
{
l10fc = new LastTenPortFacilitiesCalled();
l10fc.Identifier = i.ToString();
@@ -1853,10 +1850,9 @@ namespace bsmd.ExcelReadService
string s2sToDate = string.Format("SEC.ShipToShipActivityDateTo_{0}", i);
string s2sSec = string.Format("SEC.ShipToShipActivitySecurityMattersToReport_{0}", i);
string s2sActivityString = string.Format("SEC.ShipToShipActivityType_{0}", i);
-
- ShipToShipActivitiesDuringLastTenPortFacilitiesCalled s2sActivity = sec.GetShipToShipWithIdentifier(i.ToString()) as ShipToShipActivitiesDuringLastTenPortFacilitiesCalled;
- if (s2sActivity == null)
+
+ if (!(sec.GetShipToShipWithIdentifier(i.ToString()) is ShipToShipActivitiesDuringLastTenPortFacilitiesCalled s2sActivity))
{
s2sActivity = new ShipToShipActivitiesDuringLastTenPortFacilitiesCalled();
s2sActivity.Identifier = i.ToString();
@@ -1894,17 +1890,16 @@ namespace bsmd.ExcelReadService
#region BKRA
- static void ScanBKRA(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanBKRA(List messages, MessageCore messageCore, ExcelReader reader)
{
Message bkraMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.BKRA);
bkraMessage.DeleteElements();
for (int i = 1; i <= bkraMessage.NumberOfExcelRows; i++)
{
string lnQuantity = string.Format("BKRA.BunkerFuelQuantity_TNE_{0}", i);
- string lnType = string.Format("BKRA.BunkerFuelType_{0}", i);
+ string lnType = string.Format("BKRA.BunkerFuelType_{0}", i);
- BRKA bkra = bkraMessage.GetSublistElementWithIdentifier((i).ToString()) as BRKA;
- if (bkra == null)
+ if (!(bkraMessage.GetSublistElementWithIdentifier((i).ToString()) is BRKA bkra))
{
bkra = new BRKA();
bkra.Identifier = (i).ToString();
@@ -1936,7 +1931,7 @@ namespace bsmd.ExcelReadService
#region BKRD
- static void ScanBKRD(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanBKRD(List messages, MessageCore messageCore, ExcelReader reader)
{
Message bkrdMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.BKRD);
bkrdMessage.DeleteElements();
@@ -1944,8 +1939,7 @@ namespace bsmd.ExcelReadService
{
string lnQuantity = string.Format("BKRD.BunkerFuelQuantity_TNE_{0}", i);
string lnType = string.Format("BKRD.BunkerFuelType_{0}", i);
- BRKD bkrd = bkrdMessage.GetSublistElementWithIdentifier((i).ToString()) as BRKD;
- if (bkrd == null)
+ if (!(bkrdMessage.GetSublistElementWithIdentifier((i).ToString()) is BRKD bkrd))
{
bkrd = new BRKD();
bkrd.Identifier = (i).ToString();
@@ -1977,7 +1971,7 @@ namespace bsmd.ExcelReadService
#region TOWA
- static void ScanTOWA(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanTOWA(List messages, MessageCore messageCore, ExcelReader reader)
{
Message towaMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.TOWA);
towaMessage.DeleteElements();
@@ -1995,8 +1989,7 @@ namespace bsmd.ExcelReadService
string towageName = reader.ReadText(tName);
if (towageName.IsNullOrEmpty()) continue;
- TOWA towa = towaMessage.GetSublistElementWithIdentifier((i).ToString()) as TOWA;
- if (towa == null)
+ if (!(towaMessage.GetSublistElementWithIdentifier((i).ToString()) is TOWA towa))
{
towa = new TOWA();
towa.Identifier = (i).ToString();
@@ -2023,7 +2016,7 @@ namespace bsmd.ExcelReadService
#region TOWD
- static void ScanTOWD(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanTOWD(List messages, MessageCore messageCore, ExcelReader reader)
{
Message towdMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.TOWD);
towdMessage.DeleteElements();
@@ -2040,8 +2033,7 @@ namespace bsmd.ExcelReadService
string towageName = reader.ReadText(tName);
if (towageName.IsNullOrEmpty()) continue;
- TOWD towd = towdMessage.GetSublistElementWithIdentifier((i).ToString()) as TOWD;
- if (towd == null)
+ if (!(towdMessage.GetSublistElementWithIdentifier((i).ToString()) is TOWD towd))
{
towd = new TOWD();
towd.Identifier = (i).ToString();
@@ -2066,7 +2058,7 @@ namespace bsmd.ExcelReadService
#region PRE72H
- static void ScanPRE72H(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanPRE72H(List messages, MessageCore messageCore, ExcelReader reader)
{
Message pre72hMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.PRE72H);
if (pre72hMessage.Elements.Count == 0)
@@ -2088,7 +2080,7 @@ namespace bsmd.ExcelReadService
#region SERV
- static void ScanSERV(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanSERV(List messages, MessageCore messageCore, ExcelReader reader)
{
Message servMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.SERV);
if(servMessage.Elements.Count == 0)
@@ -2112,7 +2104,7 @@ namespace bsmd.ExcelReadService
#region STO
- static void ScanSTO(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanSTO(List messages, MessageCore messageCore, ExcelReader reader)
{
Message stoMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.STO);
stoMessage.DeleteElements();
@@ -2124,8 +2116,8 @@ namespace bsmd.ExcelReadService
string stoQuantityUnit = string.Format("STO.QuantityUnit_{0}", i + 1);
string stoLocationOnBoard = string.Format("STO.LocationOnBoard_{0}", i + 1);
string stoOfficialUse = string.Format("STO.OfficialUse_{0}", i + 1);
- STO sto = stoMessage.GetSublistElementWithIdentifier((i + 1).ToString()) as STO;
- if(sto == null)
+
+ if (!(stoMessage.GetSublistElementWithIdentifier((i + 1).ToString()) is STO sto))
{
sto = new STO();
sto.Identifier = (i + 1).ToString();
@@ -2153,7 +2145,7 @@ namespace bsmd.ExcelReadService
#region LADG
- static void ScanLADG(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanLADG(List messages, MessageCore messageCore, ExcelReader reader)
{
Message ladgMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.LADG);
ladgMessage.DeleteElements();
@@ -2169,8 +2161,7 @@ namespace bsmd.ExcelReadService
string lnLACode = string.Format("LADG.CargoLACode_{0}", i + 1);
string lnZusatz = string.Format("LADG.CargoTypeZusatz_{0}", i + 1);
- LADG ladg = ladgMessage.GetSublistElementWithIdentifier((i + 1).ToString()) as LADG;
- if (ladg == null)
+ if (!(ladgMessage.GetSublistElementWithIdentifier((i + 1).ToString()) is LADG ladg))
{
ladg = new LADG();
ladg.Identifier = (i + 1).ToString();
@@ -2187,8 +2178,9 @@ namespace bsmd.ExcelReadService
continue;
}
- ladg.CargoCodeNST = reader.ReadText(lnType);
+ ladg.CargoCodeNST = reader.ReadText(lnType);
// Cargo Type Freitext in DK
+
if(reader.Mode == ExcelReader.CountryMode.DK)
{
reader.Conf.ConfirmText(lnType, ladg.CargoCodeNST, ladg.CargoCodeNST.IsNullOrEmpty() ? ExcelReader.ReadState.WARN : ExcelReader.ReadState.OK);
@@ -2235,18 +2227,8 @@ namespace bsmd.ExcelReadService
ladg.CargoNumberOfItems = (int?) reader.ReadNumber(lnCNOI);
ladg.CargoGrossQuantity_TNE = reader.ReadNumber(lnCGQ);
-
- ladg.PortOfLoading = reader.ReadText(lnLoad);
- if (ladg.PortOfLoading.IsNullOrEmpty())
- reader.Conf.ConfirmText(lnLoad, null, ExcelReader.ReadState.FAIL);
- else
- reader.Conf.ConfirmText(lnLoad, ladg.PortOfLoading, (ladg.PortOfLoading.Length == 5) ? ExcelReader.ReadState.OK : ExcelReader.ReadState.WARN);
-
- ladg.PortOfDischarge = reader.ReadText(lnDis);
- if (ladg.PortOfDischarge.IsNullOrEmpty())
- reader.Conf.ConfirmText(lnDis, null, ExcelReader.ReadState.FAIL);
- else
- reader.Conf.ConfirmText(lnDis, ladg.PortOfDischarge, (ladg.PortOfDischarge.Length == 5) ? ExcelReader.ReadState.OK : ExcelReader.ReadState.WARN);
+ ladg.PortOfLoading = reader.ReadLoCode(lnLoad);
+ ladg.PortOfDischarge = reader.ReadLoCode(lnDis);
// dont save empty element
if (ladg.IsNew && !ladg.CargoHandlingType.HasValue)
@@ -2258,7 +2240,7 @@ namespace bsmd.ExcelReadService
#region CREW
- static void ScanCREW(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanCREW(List messages, MessageCore messageCore, ExcelReader reader)
{
Message crewMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.CREW);
crewMessage.DeleteElements();
@@ -2281,8 +2263,7 @@ namespace bsmd.ExcelReadService
if (!lastName.IsNullOrEmpty() || !firstName.IsNullOrEmpty())
{
- CREW crew = crewMessage.GetSublistElementWithIdentifier((i + 1).ToString()) as CREW;
- if (crew == null)
+ if (!(crewMessage.GetSublistElementWithIdentifier((i + 1).ToString()) is CREW crew))
{
crew = new CREW();
crew.Identifier = (i + 1).ToString();
@@ -2332,8 +2313,7 @@ namespace bsmd.ExcelReadService
string lastName = reader.ReadText(crewLastName);
if (!lastName.IsNullOrEmpty())
{
- CREWD crew = crewMessage.GetSublistElementWithIdentifier((i + 1).ToString()) as CREWD;
- if (crew == null)
+ if (!(crewMessage.GetSublistElementWithIdentifier((i + 1).ToString()) is CREWD crew))
{
crew = new CREWD();
crew.Identifier = (i + 1).ToString();
@@ -2371,7 +2351,7 @@ namespace bsmd.ExcelReadService
#region PAS
- static void ScanPAS(List messages, MessageCore messageCore, ExcelReader reader)
+ private static void ScanPAS(List messages, MessageCore messageCore, ExcelReader reader)
{
Message pasMessage = Util.GetMessageWithType(messages, messageCore, Message.NotificationClass.PAS);
pasMessage.DeleteElements();
@@ -2396,9 +2376,8 @@ namespace bsmd.ExcelReadService
if (!lastName.IsNullOrEmpty() || !firstName.IsNullOrEmpty())
{
- PAS pas = pasMessage.GetSublistElementWithIdentifier((i + 1).ToString()) as PAS;
- if (pas == null)
- {
+ if (!(pasMessage.GetSublistElementWithIdentifier((i + 1).ToString()) is PAS pas))
+ {
pas = new PAS();
pas.Identifier = (i + 1).ToString();
pas.MessageHeader = pasMessage;
@@ -2448,8 +2427,7 @@ namespace bsmd.ExcelReadService
string lastName = reader.ReadText(pasLastName);
if (!lastName.IsNullOrEmpty())
{
- PASD pas = pasMessage.GetSublistElementWithIdentifier((i + 1).ToString()) as PASD;
- if (pas == null)
+ if (!(pasMessage.GetSublistElementWithIdentifier((i + 1).ToString()) is PASD pas))
{
pas = new PASD();
pas.Identifier = (i + 1).ToString();
diff --git a/nsw/Source/bsmd.database/DBManager.cs b/nsw/Source/bsmd.database/DBManager.cs
index 36a6ac47..e4bd52c8 100644
--- a/nsw/Source/bsmd.database/DBManager.cs
+++ b/nsw/Source/bsmd.database/DBManager.cs
@@ -95,7 +95,7 @@ namespace bsmd.database
public bool IsConnected
{
- get { return (this._con?.State == ConnectionState.Open); }
+ get { return this._con?.State == ConnectionState.Open; }
}
@@ -346,8 +346,7 @@ namespace bsmd.database
if (statMessage?.Elements.Count > 0)
{
- STAT stat = statMessage.Elements[0] as STAT;
- if (stat != null)
+ if (statMessage.Elements[0] is STAT stat)
return stat.ShipName;
}
return null;
diff --git a/nsw/Source/bsmd.database/Properties/AssemblyProductInfo.cs b/nsw/Source/bsmd.database/Properties/AssemblyProductInfo.cs
index 427dad81..941108b5 100644
--- a/nsw/Source/bsmd.database/Properties/AssemblyProductInfo.cs
+++ b/nsw/Source/bsmd.database/Properties/AssemblyProductInfo.cs
@@ -2,6 +2,6 @@
[assembly: AssemblyCompany("schick Informatik")]
[assembly: AssemblyProduct("BSMD NSW interface")]
-[assembly: AssemblyInformationalVersion("5.1.3")]
-[assembly: AssemblyCopyright("Copyright © 2014-2018 schick Informatik")]
+[assembly: AssemblyInformationalVersion("5.1.4")]
+[assembly: AssemblyCopyright("Copyright © 2014-2019 schick Informatik")]
[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 c3fff841..5eabc612 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("5.1.3.*")]
+[assembly: AssemblyVersion("5.1.4.*")]
diff --git a/nsw/Source/misc/db.sqlite b/nsw/Source/misc/db.sqlite
index acb65eab..efdea21e 100644
Binary files a/nsw/Source/misc/db.sqlite and b/nsw/Source/misc/db.sqlite differ