diff --git a/ENI2/ENI2.csproj b/ENI2/ENI2.csproj
index 8de487d2..12af08e7 100644
--- a/ENI2/ENI2.csproj
+++ b/ENI2/ENI2.csproj
@@ -36,8 +36,8 @@
5.4.0.0
true
publish.html
- 5
- 7.13.0.%2a
+ 0
+ 7.14.0.%2a
false
true
true
diff --git a/ENI2/EditControls/EditLast10PortFacilitiesDialog.xaml.cs b/ENI2/EditControls/EditLast10PortFacilitiesDialog.xaml.cs
index 8b93f53e..a81e7daa 100644
--- a/ENI2/EditControls/EditLast10PortFacilitiesDialog.xaml.cs
+++ b/ENI2/EditControls/EditLast10PortFacilitiesDialog.xaml.cs
@@ -34,7 +34,7 @@ namespace ENI2.EditControls
this.comboBoxShipSecurityLevel.ItemsSource = GlobalStructures.ShipSecurityLevels;
if (this.LastTenPortFacilitiesCalled.PortFacilityShipSecurityLevel.HasValue)
- this.comboBoxShipSecurityLevel.SelectedIndex = (this.LastTenPortFacilitiesCalled.PortFacilityShipSecurityLevel.Value - 1);
+ this.comboBoxShipSecurityLevel.SelectedIndex = this.LastTenPortFacilitiesCalled.PortFacilityShipSecurityLevel.Value - 1;
else
this.comboBoxShipSecurityLevel.SelectedIndex = -1;
@@ -48,18 +48,18 @@ namespace ENI2.EditControls
public void CopyValuesToEntity()
{
this.LastTenPortFacilitiesCalled.PortFacilityPortLoCode = this.locodePort.LocodeValue;
- this.LastTenPortFacilitiesCalled.PortFacilityPortName = this.textBoxPortName.Text;
- this.LastTenPortFacilitiesCalled.PortFacilityPortCountry = this.textBoxPortCountry.Text;
+ this.LastTenPortFacilitiesCalled.PortFacilityPortName = this.textBoxPortName.Text.Trim();
+ this.LastTenPortFacilitiesCalled.PortFacilityPortCountry = this.textBoxPortCountry.Text.Trim();
this.LastTenPortFacilitiesCalled.PortFacilityDateOfArrival = this.datePickerATA.SelectedDate;
this.LastTenPortFacilitiesCalled.PortFacilityDateOfDeparture = this.datePickerATD.SelectedDate;
- this.LastTenPortFacilitiesCalled.PortFacilityGISISCode = this.textBoxGisisCode.Text;
+ this.LastTenPortFacilitiesCalled.PortFacilityGISISCode = this.textBoxGisisCode.Text.Trim();
if (this.comboBoxShipSecurityLevel.SelectedIndex == -1)
this.LastTenPortFacilitiesCalled.PortFacilityShipSecurityLevel = null;
else
this.LastTenPortFacilitiesCalled.PortFacilityShipSecurityLevel = (byte?) (this.comboBoxShipSecurityLevel.SelectedIndex + 1);
this.LastTenPortFacilitiesCalled.PortFacilityGISISCodeLocode = this.locodeGISIS.LocodeValue;
- this.LastTenPortFacilitiesCalled.PortFacilitySecurityMattersToReport = this.textBoxSecurityMatters.Text;
+ this.LastTenPortFacilitiesCalled.PortFacilitySecurityMattersToReport = this.textBoxSecurityMatters.Text.Trim();
}
private void EditLast10PortFacilitiesDialog_OKClicked()
diff --git a/bsmd.database/AGNT_Template.cs b/bsmd.database/AGNT_Template.cs
index 49d66986..ca89501c 100644
--- a/bsmd.database/AGNT_Template.cs
+++ b/bsmd.database/AGNT_Template.cs
@@ -147,9 +147,9 @@ namespace bsmd.database
public int CompareTo(object obj)
{
- if (obj is AGNT_Template)
+ if (obj is AGNT_Template template)
{
- return AgentTitle.CompareTo(((AGNT_Template)obj).AgentTitle);
+ return AgentTitle.CompareTo(template.AgentTitle);
}
return 0;
}
diff --git a/bsmd.database/BKRA.cs b/bsmd.database/BKRA.cs
index 9dbc8857..b6ed9494 100644
--- a/bsmd.database/BKRA.cs
+++ b/bsmd.database/BKRA.cs
@@ -152,6 +152,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((BRKA)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((BRKA)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((BRKA)obj).Identifier);
}
diff --git a/bsmd.database/BRKD.cs b/bsmd.database/BRKD.cs
index d5093e4a..80ea0278 100644
--- a/bsmd.database/BRKD.cs
+++ b/bsmd.database/BRKD.cs
@@ -151,6 +151,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((BRKD)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((BRKD)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((BRKD)obj).Identifier);
}
diff --git a/bsmd.database/CallPurpose.cs b/bsmd.database/CallPurpose.cs
index a39cf382..ae2832b4 100644
--- a/bsmd.database/CallPurpose.cs
+++ b/bsmd.database/CallPurpose.cs
@@ -136,6 +136,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((CallPurpose)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((CallPurpose)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((CallPurpose)obj).Identifier);
}
diff --git a/bsmd.database/DatabaseEntity.cs b/bsmd.database/DatabaseEntity.cs
index 749ca348..e038eecd 100644
--- a/bsmd.database/DatabaseEntity.cs
+++ b/bsmd.database/DatabaseEntity.cs
@@ -153,10 +153,7 @@ namespace bsmd.database
///
///
public virtual void Validate(List errors, List violations)
- {
- errors = new List();
- violations = new List();
- }
+ { }
///
/// Diese Methode sollte eigentlich nie einen Effekt haben und dient nur dazu, dass keine Situation
diff --git a/bsmd.database/IBCPosition.cs b/bsmd.database/IBCPosition.cs
index 7e948d2a..9880923d 100644
--- a/bsmd.database/IBCPosition.cs
+++ b/bsmd.database/IBCPosition.cs
@@ -317,6 +317,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((IBCPosition)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((IBCPosition)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((IBCPosition)obj).Identifier);
}
diff --git a/bsmd.database/IGCPosition.cs b/bsmd.database/IGCPosition.cs
index 71c09170..23fa5a6e 100644
--- a/bsmd.database/IGCPosition.cs
+++ b/bsmd.database/IGCPosition.cs
@@ -217,6 +217,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((IGCPosition)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((IGCPosition)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((IGCPosition)obj).Identifier);
}
diff --git a/bsmd.database/IMDGPosition.cs b/bsmd.database/IMDGPosition.cs
index 054b2919..e8d4eef5 100644
--- a/bsmd.database/IMDGPosition.cs
+++ b/bsmd.database/IMDGPosition.cs
@@ -630,6 +630,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((IMDGPosition)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((IMDGPosition)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((IMDGPosition)obj).Identifier);
}
diff --git a/bsmd.database/IMSBCPosition.cs b/bsmd.database/IMSBCPosition.cs
index e341fff2..7af88032 100644
--- a/bsmd.database/IMSBCPosition.cs
+++ b/bsmd.database/IMSBCPosition.cs
@@ -265,6 +265,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((IMSBCPosition)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((IMSBCPosition)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((IMSBCPosition)obj).Identifier);
}
diff --git a/bsmd.database/IMessageParagraph.cs b/bsmd.database/IMessageParagraph.cs
index 308e1142..ef3aca23 100644
--- a/bsmd.database/IMessageParagraph.cs
+++ b/bsmd.database/IMessageParagraph.cs
@@ -32,8 +32,8 @@ namespace bsmd.database
///
public class MessageParagraph : IMessageParagraph
{
- private List childParagraphs = new List();
- private List> messageText = new List>();
+ private readonly List childParagraphs = new List();
+ private readonly List> messageText = new List>();
public List ChildParagraphs
{
diff --git a/bsmd.database/InfectedArea.cs b/bsmd.database/InfectedArea.cs
index 5b2ebc7b..0ca9e3e4 100644
--- a/bsmd.database/InfectedArea.cs
+++ b/bsmd.database/InfectedArea.cs
@@ -125,6 +125,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((InfectedArea)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((InfectedArea)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((InfectedArea)obj).Identifier);
}
diff --git a/bsmd.database/LADG.cs b/bsmd.database/LADG.cs
index 6753fb63..156058d6 100644
--- a/bsmd.database/LADG.cs
+++ b/bsmd.database/LADG.cs
@@ -256,6 +256,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((LADG)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((LADG)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((LADG)obj).Identifier);
}
diff --git a/bsmd.database/LastTenPortFacilitiesCalled.cs b/bsmd.database/LastTenPortFacilitiesCalled.cs
index f990afff..9ca751d2 100644
--- a/bsmd.database/LastTenPortFacilitiesCalled.cs
+++ b/bsmd.database/LastTenPortFacilitiesCalled.cs
@@ -180,10 +180,10 @@ namespace bsmd.database
#region Validate
public override void Validate(List errors, List violations)
- {
+ {
if (this.PortFacilityPortLoCode.IsNullOrEmpty())
- {
+ {
errors.Add(RuleEngine.CreateError(ValidationCode.NOT_NULL, "PortFacilityPortLocode", null, this.Title, this.Identifier, this.SEC.Tablename));
}
@@ -193,6 +193,11 @@ namespace bsmd.database
errors.Add(RuleEngine.CreateError(ValidationCode.LOCODE, null, this.PortFacilityPortLoCode, this.Title, this.Identifier, this.SEC.Tablename));
}
+ if(!this.PortFacilityGISISCode.IsNullOrEmpty() && !this.PortFacilityGISISCode.IsNumber())
+ {
+ errors.Add(RuleEngine.CreateError(ValidationCode.INVALID_NUMBER_CHARS, "GISIS Code", this.PortFacilityGISISCode, this.Title, this.Identifier, this.SEC.Tablename));
+ }
+
}
#endregion
@@ -204,6 +209,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((LastTenPortFacilitiesCalled)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((LastTenPortFacilitiesCalled)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((LastTenPortFacilitiesCalled)obj).Identifier);
}
diff --git a/bsmd.database/MARPOL_Annex_I_Position.cs b/bsmd.database/MARPOL_Annex_I_Position.cs
index 9aa2adc5..352af5b6 100644
--- a/bsmd.database/MARPOL_Annex_I_Position.cs
+++ b/bsmd.database/MARPOL_Annex_I_Position.cs
@@ -230,6 +230,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((MARPOL_Annex_I_Position)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((MARPOL_Annex_I_Position)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((MARPOL_Annex_I_Position)obj).Identifier);
}
diff --git a/bsmd.database/PortOfCallLast30Days.cs b/bsmd.database/PortOfCallLast30Days.cs
index 82cdefaa..02c49c17 100644
--- a/bsmd.database/PortOfCallLast30Days.cs
+++ b/bsmd.database/PortOfCallLast30Days.cs
@@ -303,6 +303,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((PortOfCallLast30Days)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((PortOfCallLast30Days)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((PortOfCallLast30Days)obj).Identifier);
}
diff --git a/bsmd.database/PortOfCallLast30DaysCrewJoinedShip.cs b/bsmd.database/PortOfCallLast30DaysCrewJoinedShip.cs
index 151e48f5..09387e2c 100644
--- a/bsmd.database/PortOfCallLast30DaysCrewJoinedShip.cs
+++ b/bsmd.database/PortOfCallLast30DaysCrewJoinedShip.cs
@@ -123,6 +123,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((PortOfCallLast30DaysCrewJoinedShip)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((PortOfCallLast30DaysCrewJoinedShip)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((PortOfCallLast30DaysCrewJoinedShip)obj).Identifier);
}
diff --git a/bsmd.database/PortOfItinerary.cs b/bsmd.database/PortOfItinerary.cs
index b48a6fa3..6c15214c 100644
--- a/bsmd.database/PortOfItinerary.cs
+++ b/bsmd.database/PortOfItinerary.cs
@@ -132,6 +132,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((PortOfItinerary)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((PortOfItinerary)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((PortOfItinerary)obj).Identifier);
}
diff --git a/bsmd.database/Properties/AssemblyProductInfo.cs b/bsmd.database/Properties/AssemblyProductInfo.cs
index 72844833..09d61c04 100644
--- a/bsmd.database/Properties/AssemblyProductInfo.cs
+++ b/bsmd.database/Properties/AssemblyProductInfo.cs
@@ -2,6 +2,6 @@
[assembly: AssemblyCompany("schick Informatik")]
[assembly: AssemblyProduct("BSMD NSW interface")]
-[assembly: AssemblyInformationalVersion("7.13.0")]
+[assembly: AssemblyInformationalVersion("7.14.0")]
[assembly: AssemblyCopyright("Copyright © 2014-2023 schick Informatik")]
[assembly: AssemblyTrademark("")]
\ No newline at end of file
diff --git a/bsmd.database/Properties/AssemblyProjectInfo.cs b/bsmd.database/Properties/AssemblyProjectInfo.cs
index 95f10891..79272584 100644
--- a/bsmd.database/Properties/AssemblyProjectInfo.cs
+++ b/bsmd.database/Properties/AssemblyProjectInfo.cs
@@ -1,4 +1,4 @@
using System.Reflection;
-[assembly: AssemblyVersion("7.13.0.*")]
+[assembly: AssemblyVersion("7.14.0.*")]
diff --git a/bsmd.database/SERV.cs b/bsmd.database/SERV.cs
index 18fd9e19..6a9b92b1 100644
--- a/bsmd.database/SERV.cs
+++ b/bsmd.database/SERV.cs
@@ -134,6 +134,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((SERV)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((SERV)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((SERV)obj).Identifier);
}
diff --git a/bsmd.database/STO.cs b/bsmd.database/STO.cs
index 2a058ca3..9dedc853 100644
--- a/bsmd.database/STO.cs
+++ b/bsmd.database/STO.cs
@@ -150,6 +150,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((STO)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((STO)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((STO)obj).Identifier);
}
diff --git a/bsmd.database/SanitaryMeasuresDetail.cs b/bsmd.database/SanitaryMeasuresDetail.cs
index 6f47c496..66cd1c1a 100644
--- a/bsmd.database/SanitaryMeasuresDetail.cs
+++ b/bsmd.database/SanitaryMeasuresDetail.cs
@@ -144,6 +144,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((SanitaryMeasuresDetail)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((SanitaryMeasuresDetail)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((SanitaryMeasuresDetail)obj).Identifier);
}
diff --git a/bsmd.database/ShipToShipActivitiesDuringLastTenPortFacilitiesCalled.cs b/bsmd.database/ShipToShipActivitiesDuringLastTenPortFacilitiesCalled.cs
index 9e3f1492..c1211206 100644
--- a/bsmd.database/ShipToShipActivitiesDuringLastTenPortFacilitiesCalled.cs
+++ b/bsmd.database/ShipToShipActivitiesDuringLastTenPortFacilitiesCalled.cs
@@ -237,6 +237,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((ShipToShipActivitiesDuringLastTenPortFacilitiesCalled)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((ShipToShipActivitiesDuringLastTenPortFacilitiesCalled)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((ShipToShipActivitiesDuringLastTenPortFacilitiesCalled)obj).Identifier);
}
diff --git a/bsmd.database/StowawaysJoiningLocation.cs b/bsmd.database/StowawaysJoiningLocation.cs
index a04ae3c1..1cf03b92 100644
--- a/bsmd.database/StowawaysJoiningLocation.cs
+++ b/bsmd.database/StowawaysJoiningLocation.cs
@@ -118,6 +118,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((StowawaysJoiningLocation)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((StowawaysJoiningLocation)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((StowawaysJoiningLocation)obj).Identifier);
}
diff --git a/bsmd.database/SubsidiaryRisks.cs b/bsmd.database/SubsidiaryRisks.cs
index 6076814b..48cc3283 100644
--- a/bsmd.database/SubsidiaryRisks.cs
+++ b/bsmd.database/SubsidiaryRisks.cs
@@ -111,6 +111,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((SubsidiaryRisks)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((SubsidiaryRisks)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((SubsidiaryRisks)obj).Identifier);
}
diff --git a/bsmd.database/TOWA.cs b/bsmd.database/TOWA.cs
index f590117d..0824fb9c 100644
--- a/bsmd.database/TOWA.cs
+++ b/bsmd.database/TOWA.cs
@@ -274,6 +274,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((TOWA)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((TOWA)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((TOWA)obj).Identifier);
#endregion
diff --git a/bsmd.database/TOWD.cs b/bsmd.database/TOWD.cs
index 94d8682d..32caafe7 100644
--- a/bsmd.database/TOWD.cs
+++ b/bsmd.database/TOWD.cs
@@ -257,6 +257,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((TOWD)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((TOWD)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((TOWD)obj).Identifier);
}
diff --git a/bsmd.database/WasteDisposalServiceProvider.cs b/bsmd.database/WasteDisposalServiceProvider.cs
index b23c4a41..93e35a7f 100644
--- a/bsmd.database/WasteDisposalServiceProvider.cs
+++ b/bsmd.database/WasteDisposalServiceProvider.cs
@@ -113,6 +113,8 @@ namespace bsmd.database
if (this.Identifier == null) return 1;
if ((obj is null) || (((WasteDisposalServiceProvider)obj).Identifier == null))
return 1;
+ if (Int32.TryParse(((WasteDisposalServiceProvider)obj).Identifier, out int i1) && Int32.TryParse(this.Identifier, out int i2))
+ return i2.CompareTo(i1);
return this.Identifier.CompareTo(((WasteDisposalServiceProvider)obj).Identifier);
}
diff --git a/misc/db.sqlite b/misc/db.sqlite
index be535152..d63f54ab 100644
Binary files a/misc/db.sqlite and b/misc/db.sqlite differ