Hallo,
hatte mein Problem folgendermaßen gelöst (siehe Code) und das hat auch soweit funktioniert....bis zur Zeitumstellung am Samstag


public void Macro_Tr1_ActualDay()
{
DateTime ActDay = DateTime.Now;
obTr1_Var.Item("Tr1_Parameter.Starttime").set_Value(0, (Convert.ToUInt32(ActDay.Date.Subtract(new DateTime(1970, 1, 1)).TotalSeconds)) - 3600);
obTr1_Var.Item("Tr1_Parameter.Endtime").set_Value(0, Convert.ToUInt32(obTr1_Var.Item("Tr1_Parameter.Starttime").get_Value(0)) + 86400);
obTr1_Var.Item("Tr1_Parameter.Startdate").set_Value(0, (ActDay.ToString("dd.MM.yyyy")));
Macro_Trend_1();
}
public void Macro_Tr1_SelectedDay()
{
try
{
DateTime SelDay = Convert.ToDateTime(obTr1_Var.Item("Tr1_Parameter.Startdate").get_Value(0).ToString());
obTr1_Var.Item("Tr1_Parameter.Starttime").set_Value(0, (Convert.ToUInt32(SelDay.Date.Subtract(new DateTime(1970, 1, 1)).TotalSeconds)) - 3600);
obTr1_Var.Item("Tr1_Parameter.Endtime").set_Value(0, Convert.ToUInt32(obTr1_Var.Item("Tr1_Parameter.Starttime").get_Value(0)) + 86400);
Macro_Trend_1();
}
catch (Exception ex)
{
MessageBox.Show("ERROR Tr1_SelectedDay: " + ex.Message + " " + ex.Source);
return;
}
}
Mir ist auch klar warum das Problem auftritt, da Zenon ja die Archivwerte im UTC Format speichert...Dementsprechend müsste ich für ein Datum, das in die Sommerzeit fällt 7200 Sekunden abziehen statt 3600.
Wie kann ich das Problem lösen?
Danke für die Hilfe
Johannes