Einzelnen Beitrag anzeigen

QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.944 Beiträge
 
Delphi 12 Athens
 
#18

AW: XML Datum kann nicht 0.0 sein?

  Alt 13. Mär 2019, 18:07
Lustig...
Delphi-Quellcode:
  lastUpdate := TXSDatetime.Create;
  lastUpdate.AsUTCDattime := 0.0; //Das hier geht jetzt nicht mehr in Android...

versucht auch den "Localbias" und die Zeitzone zu ermitteln... man weiß ja nie wie sehr UTC von UTC abweicht....
Und stürzt dabei genauso ab....

@Delphinarium ich versuche dafür zu sorgen dass
Delphi-Quellcode:
  lastUpdate := TXSDatetime.Create;
  lastUpdate.AsDateTime := 0.0; //Das hier geht jetzt nicht mehr in Android...
in Delphi Rio weiterhin funktioniert...wie in Delphi Tokyo


irgendwo dadrin passiert das
Delphi-Quellcode:
function DateTimeToXMLTime(Value: TDateTime; ApplyLocalBias: Boolean = True): InvString;
const
  Neg: array[Boolean] of string= ('+', '-');
var
  Bias: Integer;
  tz:TTimeZone;
begin
  Result := FormatDateTime('yyyy''-''mm''-''dd''T''hh'':''nn'':''ss''.''zzz', Value); { Do not localize }
  tz := TTimeZone.Local;
  Bias := Trunc(tz.GetUTCOffset(Value).Negate.TotalMinutes);
  if (Bias <> 0) and ApplyLocalBias then
  begin
    Result := Format('%s%s%.2d:%.2d', [Result, Neg[Bias > 0], { Do not localize }
                                       Abs(Bias) div MinsPerHour,
                                       Abs(Bias) mod MinsPerHour]);
  end else
    Result := Result + 'Z'; { Do not localize }
end;
TTimZone.GetUTCOffset versucht aus einem Cache die Offsets für Daylight savingstime zu ermitteln... Weil sich sowas Jahr für Jahr und Land für Land ändert...
Dabei dann schmeißt Embarcadero mit Fehlern (Localtimetype =lttInvalid) für 1899 um sich
Das war vorher nicht so!

Andreas
Monads? Wtf are Monads?

Geändert von QuickAndDirty (13. Mär 2019 um 18:22 Uhr)
  Mit Zitat antworten Zitat