diff --git a/ENI-2/ENI2/ENI2/Controls/POListControl.xaml b/ENI-2/ENI2/ENI2/Controls/POListControl.xaml
index e31fee13..7955eec0 100644
--- a/ENI-2/ENI2/ENI2/Controls/POListControl.xaml
+++ b/ENI-2/ENI2/ENI2/Controls/POListControl.xaml
@@ -45,7 +45,7 @@
-
+
diff --git a/ENI-2/ENI2/ENI2/Controls/POListControl.xaml.cs b/ENI-2/ENI2/ENI2/Controls/POListControl.xaml.cs
index 040ec95f..48088e5d 100644
--- a/ENI-2/ENI2/ENI2/Controls/POListControl.xaml.cs
+++ b/ENI-2/ENI2/ENI2/Controls/POListControl.xaml.cs
@@ -79,8 +79,8 @@ namespace ENI2.Controls
{
workSheet.Cells[rowIndex, 7].Value = core.Shipname;
workSheet.Cells[rowIndex, 10].Value = core.PoC.Substring(2);
- if(core.ATA.HasValue)
- workSheet.Cells[rowIndex, 11].Value = core.ATA.Value;
+ if(core.POATA.HasValue)
+ workSheet.Cells[rowIndex, 11].Value = core.POATA.Value;
workSheet.Cells[rowIndex, 13].Value = core.PONumber;
rowIndex++;
}
@@ -107,6 +107,7 @@ namespace ENI2.Controls
DBManager.Instance.Save(messageCore);
messageCore.IsDirty = false;
// load ATA for this Core
+ /* DAS ATA WIRD JETZT NICHT MEHR IN DIE MELDEKLASSE GESPEICHERT
Message ataMessage = DBManager.Instance.GetMessage(messageCore, Message.NotificationClass.ATA);
if(ataMessage?.Elements.Count == 1)
{
@@ -116,6 +117,7 @@ namespace ENI2.Controls
DBManager.Instance.Save(ataMessage.Elements[0]);
}
}
+ */
}
}
this.buttonSaveChanges.IsEnabled = false;
@@ -144,7 +146,7 @@ namespace ENI2.Controls
case 3: if (core.IsFlagSet(MessageCore.CoreFlags.SEAGO_WHV)) this.filteredResult.Add(core); break;
}
}
- this.dataGridPOCores.ItemsSource = this.filteredResult;
+ this.dataGridPOCores.ItemsSource = this.filteredResult;
}
private void dataGridPOCores_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e)
@@ -239,7 +241,19 @@ namespace ENI2.Controls
MessageCore messageCore = this.searchResult[i];
if (messageCore.ATA.HasValue)
{
- if ((messageCore.ATA.Value < start) || (messageCore.ATA.Value > end)) this.searchResult.RemoveAt(i);
+ if ((messageCore.ATA.Value < start) || (messageCore.ATA.Value > end))
+ {
+ this.searchResult.RemoveAt(i);
+ }
+ else
+ {
+ if(!messageCore.POATA.HasValue)
+ {
+ messageCore.POATA = messageCore.ATA;
+ messageCore.IsDirty = true;
+ this.buttonSaveChanges.IsEnabled = true;
+ }
+ }
}
else
{
diff --git a/Stundensheet.xlsx b/Stundensheet.xlsx
index c2d1c3f5..486ebb88 100644
Binary files a/Stundensheet.xlsx and b/Stundensheet.xlsx differ
diff --git a/nsw/Source/SQL/Update_6.1_To_6.0.10.sql b/nsw/Source/SQL/Update_6.1_To_6.0.10.sql
new file mode 100644
index 00000000..8cf99b7d
--- /dev/null
+++ b/nsw/Source/SQL/Update_6.1_To_6.0.10.sql
@@ -0,0 +1,11 @@
+--
+-- ATA soll ggf. auch separat gespeichert werden können
+-- (Fall wenn ATA nicht im ENI eingegeben wird, das Schiff aber trotzdem mit PO Number exportiert werden soll
+
+PRINT N'Altering [dbo].[MessageCore]...';
+
+GO
+ALTER TABLE [dbo].[MessageCore]
+ ADD [POATA] DATETIME NULL;
+
+GO
\ No newline at end of file
diff --git a/nsw/Source/bsmd.database/MessageCore.cs b/nsw/Source/bsmd.database/MessageCore.cs
index cba90911..159fe748 100644
--- a/nsw/Source/bsmd.database/MessageCore.cs
+++ b/nsw/Source/bsmd.database/MessageCore.cs
@@ -309,6 +309,12 @@ namespace bsmd.database
///
public string PONumber { get; set; }
+ ///
+ /// Dieses Datumsfeld wird verwendet wenn ein ATA (das nicht über das ENI eingegeben wurde) im PO Nummer Dialog eingegeben werden
+ /// soll, damit es anschließend im exportierten Sheet und auf der Rechnung auftaucht
+ ///
+ public DateTime? POATA { get; set; }
+
///
/// generic multipurpose flag field
///
@@ -399,6 +405,7 @@ namespace bsmd.database
scmd.Parameters.AddWithNullableValue("@P37", this.ExcelImportComplete);
scmd.Parameters.AddWithNullableValue("@P38", this.PONumber);
scmd.Parameters.AddWithValue("@P39", this.Flags);
+ scmd.Parameters.AddWithNullableValue("@P40", this.POATA);
if (this.IsNew)
{
@@ -409,9 +416,9 @@ namespace bsmd.database
"HerbergFormTemplateGuid, HerbergReportType, HerbergEmailcontactReportingVessel, HerbergEmail24HrsContact, " +
"ETAKielCanal, HerbergRevDate, ReportStatus, SietasSheetVersion, Incoming, DefaultReportingPartyId, CreateExcel, " +
"EditedBy, TicketNo, Cancelled, VisitIdOrTransitIdCancellable, BlockedNotificationClasses, FreeNotificationClasses, " +
- "OwnNotificationClasses, StatusCheckErrorCode, StatusCheckErrorMessage, QueryNSWStatus, ExcelImportComplete, PONumber, Flags) VALUES " +
+ "OwnNotificationClasses, StatusCheckErrorCode, StatusCheckErrorMessage, QueryNSWStatus, ExcelImportComplete, PONumber, Flags, POATA) VALUES " +
"(@ID, @P1, @P2, @P3, @P4, @P5, @P6, @P7, @P8, @P9, @P10, @P11, @P12, @P13, @P14, @P15, @P16, @P17, " +
- "@P18, @P19, @P20, @P21, @P22, @P23, @P24, @P25, @P26, @P27, @P28, @P29, @P30, @P31, @P32, @P33, @P34, @P35, @P36, @P37, @P38, @P39)",
+ "@P18, @P19, @P20, @P21, @P22, @P23, @P24, @P25, @P26, @P27, @P28, @P29, @P30, @P31, @P32, @P33, @P34, @P35, @P36, @P37, @P38, @P39, @P40)",
this.Tablename);
scmd.CommandText = query;
}
@@ -426,7 +433,7 @@ namespace bsmd.database
"SietasSheetVersion = @P23, Incoming = @P24, DefaultReportingPartyId = @P25, CreateExcel = @P26, EditedBy = @P27, " +
"TicketNo = @P28, Cancelled = @P29, VisitIdOrTransitIdCancellable = @P30, BlockedNotificationClasses = @P31, " +
"FreeNotificationClasses = @P32, OwnNotificationClasses = @P33, StatusCheckErrorCode = @P34, StatusCheckErrorMessage = @P35, " +
- "QueryNSWStatus = @P36, ExcelImportComplete = @P37, PONumber = @P38, Flags = @P39 WHERE Id = @ID", this.Tablename);
+ "QueryNSWStatus = @P36, ExcelImportComplete = @P37, PONumber = @P38, Flags = @P39, POATA = @P40 WHERE Id = @ID", this.Tablename);
scmd.CommandText = query;
}
}
@@ -446,7 +453,7 @@ namespace bsmd.database
"[{0}].[DefaultReportingPartyId], [{0}].[Created], [{0}].[Changed], [{0}].[CreateExcel], [{0}].[EditedBy], [{0}].[TicketNo], " +
"[{0}].[Cancelled], [{0}].[VisitIdOrTransitIdCancellable], [{0}].[BlockedNotificationClasses], [{0}].[FreeNotificationClasses], " +
"[{0}].[OwnNotificationClasses], [{0}].[StatusCheckErrorCode], [{0}].[StatusCheckErrorMessage], [{0}].[QueryNSWStatus], " +
- "[{0}].[ExcelImportComplete], [{0}].[PONumber], [{0}].Flags ",
+ "[{0}].[ExcelImportComplete], [{0}].[PONumber], [{0}].Flags, [{0}].POATA",
this.Tablename);
if(filter == Message.LoadFilter.SEARCH_CORE_FILTERS)
@@ -692,6 +699,7 @@ namespace bsmd.database
if (!reader.IsDBNull(39)) core.ExcelImportComplete = reader.GetBoolean(39);
if (!reader.IsDBNull(40)) core.PONumber = reader.GetString(40);
if (!reader.IsDBNull(41)) core.Flags = reader.GetInt32(41);
+ if (!reader.IsDBNull(42)) core.POATA = reader.GetDateTime(42);
result.Add(core);
}