diff --git a/ENI2/ENI2.csproj b/ENI2/ENI2.csproj
index 538536fe..297743b8 100644
--- a/ENI2/ENI2.csproj
+++ b/ENI2/ENI2.csproj
@@ -36,8 +36,8 @@
5.4.0.0
true
publish.html
- 7
- 7.2.2.7
+ 8
+ 7.2.2.8
false
true
true
diff --git a/ENI2/Excel/DakosyUtil.cs b/ENI2/Excel/DakosyUtil.cs
index 181a7968..d447836c 100644
--- a/ENI2/Excel/DakosyUtil.cs
+++ b/ENI2/Excel/DakosyUtil.cs
@@ -83,7 +83,7 @@ namespace ENI2.Excel
if ((message.MessageNotificationClass == Message.NotificationClass.HAZD) && notificationClasses.Contains(Message.NotificationClass.HAZD))
{ if (ScanHAZD(message, reader)) ExcelReader.SaveMessage(message); continue; }
if ((message.MessageNotificationClass == Message.NotificationClass.INFO) && notificationClasses.Contains(Message.NotificationClass.INFO))
- { if (ScanINFO(message, reader)) ExcelReader.SaveMessage(message); continue; }
+ { if (ScanINFO(message, messageCore, reader)) ExcelReader.SaveMessage(message); continue; }
if ((message.MessageNotificationClass == Message.NotificationClass.LADG) && notificationClasses.Contains(Message.NotificationClass.LADG))
{ if (ScanLADG(message, reader)) ExcelReader.SaveMessage(message); continue; }
if ((message.MessageNotificationClass == Message.NotificationClass.MDH) && notificationClasses.Contains(Message.NotificationClass.MDH))
@@ -1117,7 +1117,7 @@ namespace ENI2.Excel
#region INFO
- private static bool ScanINFO(Message infoMessage, ExcelReader reader)
+ private static bool ScanINFO(Message infoMessage, MessageCore core, ExcelReader reader)
{
if (infoMessage.Elements.Count == 0)
{
@@ -1142,7 +1142,26 @@ namespace ENI2.Excel
if (!portArea.IsNullOrEmpty() && DBManager.Instance.GetPortAreaDict().ContainsKey(portArea))
info.PortArea = portArea;
else
- info.PortArea = "";
+ info.PortArea = "";
+
+ // März 2024: Spezialfall für Abrechnungsabteilung Bremenports: Feld wird markiert (falls genügend Platz)
+ // falls das Schiff nach DEBRE oder DEBHV geht:
+
+ if (core.PoC.Equals("DEBRE") || core.PoC.Equals("DEBRV"))
+ {
+ if (info.SpecialRequirementsOfShipAtBerth == null)
+ {
+ info.SpecialRequirementsOfShipAtBerth = "NSW by BSMD";
+ }
+ else if (info.SpecialRequirementsOfShipAtBerth.Length <= 241) // we have enough space
+ {
+ if (info.SpecialRequirementsOfShipAtBerth.Length > 0) // if there is text already add a separator
+ {
+ info.SpecialRequirementsOfShipAtBerth += " | ";
+ }
+ info.SpecialRequirementsOfShipAtBerth += "NSW by BSMD";
+ }
+ }
return true;
}
diff --git a/ENI2/Excel/ExcelUtil.cs b/ENI2/Excel/ExcelUtil.cs
index 05c2e022..6c962c0f 100644
--- a/ENI2/Excel/ExcelUtil.cs
+++ b/ENI2/Excel/ExcelUtil.cs
@@ -93,7 +93,7 @@ namespace ENI2.Excel
if ((message.MessageNotificationClass == Message.NotificationClass.HAZD) && notificationClasses.Contains(Message.NotificationClass.HAZD))
{ if (ScanHAZD(message, reader)) ExcelReader.SaveMessage(message); continue; }
if ((message.MessageNotificationClass == Message.NotificationClass.INFO) && notificationClasses.Contains(Message.NotificationClass.INFO))
- { if (ScanINFO(message, reader)) ExcelReader.SaveMessage(message); continue; }
+ { if (ScanINFO(message, messageCore, reader)) ExcelReader.SaveMessage(message); continue; }
if ((message.MessageNotificationClass == Message.NotificationClass.LADG) && notificationClasses.Contains(Message.NotificationClass.LADG))
{ if (ScanLADG(message, reader)) ExcelReader.SaveMessage(message); continue; }
if ((message.MessageNotificationClass == Message.NotificationClass.MDH) && notificationClasses.Contains(Message.NotificationClass.MDH))
@@ -943,7 +943,7 @@ namespace ENI2.Excel
#region INFO
- private static bool ScanINFO(Message infoMessage, ExcelReader reader)
+ private static bool ScanINFO(Message infoMessage, MessageCore core, ExcelReader reader)
{
if (infoMessage.Elements.Count == 0)
{
@@ -970,6 +970,25 @@ namespace ENI2.Excel
bool? fumigatedBulkCargo = reader.ReadBoolean("INFO.FumigatedBulkCargo");
info.FumigatedBulkCargo = (byte)((fumigatedBulkCargo ?? false) ? 1 : 0);
+ // März 2024: Spezialfall für Abrechnungsabteilung Bremenports: Feld wird markiert (falls genügend Platz)
+ // falls das Schiff nach DEBRE oder DEBHV geht:
+
+ if(core.PoC.Equals("DEBRE") || core.PoC.Equals("DEBRV"))
+ {
+ if(info.SpecialRequirementsOfShipAtBerth == null)
+ {
+ info.SpecialRequirementsOfShipAtBerth = "NSW by BSMD";
+ }
+ else if(info.SpecialRequirementsOfShipAtBerth.Length <= 241) // we have enough space
+ {
+ if(info.SpecialRequirementsOfShipAtBerth.Length > 0) // if there is text already add a separator
+ {
+ info.SpecialRequirementsOfShipAtBerth += " | ";
+ }
+ info.SpecialRequirementsOfShipAtBerth += "NSW by BSMD";
+ }
+ }
+
return true;
}