diff --git a/ENI-2/ENI2/ENI2/DetailViewControls/OverViewDetailControl.xaml.cs b/ENI-2/ENI2/ENI2/DetailViewControls/OverViewDetailControl.xaml.cs
index ba14fbb2..767cc91c 100644
--- a/ENI-2/ENI2/ENI2/DetailViewControls/OverViewDetailControl.xaml.cs
+++ b/ENI-2/ENI2/ENI2/DetailViewControls/OverViewDetailControl.xaml.cs
@@ -570,7 +570,7 @@ namespace ENI2.DetailViewControls
}
else
{
- if(this.Core.InitialHIS != _message.HIS)
+ if((this.Core.InitialHIS != _message.HIS) && (_message.HIS != Message.NSWProvider.UNDEFINED))
{
MessageBox.Show(Properties.Resources.textHISNotMatching, Properties.Resources.textConfirm, MessageBoxButton.OK, MessageBoxImage.Exclamation);
return;
diff --git a/ENI-2/ENI2/ENI2/DetailViewControls/PortNotificationDetailControl.xaml.cs b/ENI-2/ENI2/ENI2/DetailViewControls/PortNotificationDetailControl.xaml.cs
index 0f420a23..be1e22fe 100644
--- a/ENI-2/ENI2/ENI2/DetailViewControls/PortNotificationDetailControl.xaml.cs
+++ b/ENI-2/ENI2/ENI2/DetailViewControls/PortNotificationDetailControl.xaml.cs
@@ -373,6 +373,8 @@ namespace ENI2.DetailViewControls
DictionaryEntry selectedItem = (DictionaryEntry) this.comboBoxGroup.SelectedItem;
if(Int32.TryParse((string)selectedItem.Value, out int selectedValue))
{
+ if (selectedValue == (int)MessageCore.CoreFlags.MAERSK_BHV) CheckServiceEntryMaerskBHV();
+ if (selectedValue == (int)MessageCore.CoreFlags.SEAGO_BHV) CheckServiceEntrySeaGoBHV();
this.Core.SetFlag(true, (MessageCore.CoreFlags)selectedValue);
DBManager.Instance.Save(this.Core);
}
@@ -380,5 +382,55 @@ namespace ENI2.DetailViewControls
#endregion
+ #region special entry ship service check
+
+ private void CheckServiceEntryMaerskBHV()
+ {
+ bool found = false;
+ foreach(SERV serv in this._servMessage.Elements)
+ {
+ if (serv.ServiceBeneficiary.Equals("Maersk A/S, Esplanaden 50, DK-1263 Copenhagen K, VAT-ID: DK53139655"))
+ found = true;
+ }
+
+ if(!found)
+ {
+ SERV newServ = new SERV();
+ newServ.ServiceBeneficiary = "Maersk A/S, Esplanaden 50, DK-1263 Copenhagen K, VAT-ID: DK53139655";
+ newServ.ServiceInvoiceRecipient = "Maersk Deutschland A/S & Co.KG, Ericusspitze 2-4, 20457 Hamburg";
+ newServ.ServiceName = "Maersk BHV";
+ newServ.MessageHeader = this._servMessage;
+ newServ.Identifier = SERV.GetNewIdentifier(_servMessage.Elements);
+ this._servMessage.Elements.Add(newServ);
+ this.dataGridSERV.Items.Refresh();
+ this.SublistElementChanged(Message.NotificationClass.SERV);
+ }
+ }
+
+ private void CheckServiceEntrySeaGoBHV()
+ {
+ bool found = false;
+ foreach (SERV serv in this._servMessage.Elements)
+ {
+ if (serv.ServiceBeneficiary.Equals("Sealand Europe A/S, Dampfaergevej 10, 3.tv, DK- 2100 Copenhagen, VAT-ID: DK53139655"))
+ found = true;
+ }
+
+ if (!found)
+ {
+ SERV newServ = new SERV();
+ newServ.ServiceBeneficiary = "Sealand Europe A/S, Dampfaergevej 10, 3.tv, DK- 2100 Copenhagen, VAT-ID: DK53139655";
+ newServ.ServiceInvoiceRecipient = "Sealand Europe Deutschland A/S & Co. KG, Ericusspitze 2-4, 20457 Hamburg";
+ newServ.ServiceName = "SeaGo BHV";
+ newServ.MessageHeader = this._servMessage;
+ newServ.Identifier = SERV.GetNewIdentifier(_servMessage.Elements);
+ this._servMessage.Elements.Add(newServ);
+ this.dataGridSERV.Items.Refresh();
+ this.SublistElementChanged(Message.NotificationClass.SERV);
+ }
+ }
+
+ #endregion
+
}
}
diff --git a/ENI-2/ENI2/ENI2/ENI2.csproj b/ENI-2/ENI2/ENI2/ENI2.csproj
index 890a7a16..4019aa27 100644
--- a/ENI-2/ENI2/ENI2/ENI2.csproj
+++ b/ENI-2/ENI2/ENI2/ENI2.csproj
@@ -35,7 +35,7 @@
true
publish.html
1
- 6.0.7.%2a
+ 6.0.8.%2a
false
true
true
diff --git a/Stundensheet.xlsx b/Stundensheet.xlsx
index 319c4720..0c3f305a 100644
Binary files a/Stundensheet.xlsx and b/Stundensheet.xlsx differ
diff --git a/nsw/Source/bsmd.database/MDH.cs b/nsw/Source/bsmd.database/MDH.cs
index af9e2df0..d78c21eb 100644
--- a/nsw/Source/bsmd.database/MDH.cs
+++ b/nsw/Source/bsmd.database/MDH.cs
@@ -630,6 +630,11 @@ namespace bsmd.database
RuleEngine.ValidateProperties(poc30d, errors, violations);
poc30d.Validate(errors, violations);
}
+
+ foreach (SanitaryMeasuresDetail smd in this.SanitaryMeasuresDetails)
+ {
+ RuleEngine.ValidateProperties(smd, errors, violations);
+ }
}
}
diff --git a/nsw/Source/bsmd.database/SanitaryMeasuresDetail.cs b/nsw/Source/bsmd.database/SanitaryMeasuresDetail.cs
index aec6b9cd..d77d6355 100644
--- a/nsw/Source/bsmd.database/SanitaryMeasuresDetail.cs
+++ b/nsw/Source/bsmd.database/SanitaryMeasuresDetail.cs
@@ -36,17 +36,18 @@ namespace bsmd.database
[ShowReport]
[MaxLength(99)]
[ENI2Validation]
- [Validation2(ValidationCode.STRING_MAXLEN, 99)]
+ [Validation2(ValidationCode.NOT_NULL_MAX_LEN, 99)]
public string SanitaryMeasuresType { get; set; }
[ShowReport]
[MaxLength(99)]
[ENI2Validation]
- [Validation2(ValidationCode.STRING_MAXLEN, 99)]
+ [Validation2(ValidationCode.NOT_NULL_MAX_LEN, 99)]
public string SanitaryMeasuresLocation { get; set; }
[ShowReport]
[ENI2Validation]
+ [Validation2(ValidationCode.NOT_NULL)]
public DateTime? SanitaryMeasuresDate { get; set; }
public string Identifier { get; set; }
@@ -128,6 +129,14 @@ namespace bsmd.database
#endregion
+ #region Validation
+
+ public override ValidationBlock GetValidationBlock()
+ {
+ return ValidationBlock.BLOCK2;
+ }
+
+ #endregion
}