SharePoint Workflow – DateTime und abweichende Stunden

In einem SharePoint Workflow habe ich verschiedenste Berechnung mit Daten (Datum). Sei es, dass ich zwei Daten voneinander subtrahiere um eine Zeitspanne zu erhalten oder eine definierte Zeit zu einem Datum dazu rechne um das Fälligkeitsdatum einer Aufgabe zu bestimmen.

Dabei bin ich immer wieder auf das Selbe Problem gestoßen. Der Workflow reagierte auf meine gesetzte Daten manchmal 2h später als angegeben.

Nach langer Suche stellt sich heraus, dass das Problem darin besteht wie SharePoint Daten speichert. Tatsächlich konvertiert SharePoint Daten nach UTC….! Ich habe also Berechnungen mit Daten zweier verschiedenen Zeitzonen durchgeführt, da z.B. Benutzereingaben in meiner Umgebung in der aktuellen MEZ angegeben werden. Das Ergebnis lag somit manchmal 2h in der Vergangenheit, ein anderes mal 2h in der Zukunft.

Ich habe im SharePoint-Designer in einem 2010er Workflow noch keine möglichkeit gefunden ein Datum automatisiert in die richtige Zeitzone zu konvertieren. Lediglich ein paar Drittanbieter-Actions habe ich gesehen die das scheinbar können.

Wenn du also im Code/Workflow mit Datum arbeitest, vergesse nicht, in UTC zu konvertieren bzw. sicherzustellen, dass alle Eingaben und Vergleichsdaten in UTC vorliegen.!

[c#] Objekte ohne Namensraum und Deklaration in XML serialisieren.

Heute wollte ich ein Objekt nach Plain XML ohne Namespaces und ohne XML-Deklaration serialisieren. Der XmlSerializer fügt jedoch einen Standard Namespace und die XML-Deklaration automatisch ein. Um das zu vermeiden gibt es die folgende Möglichkeit:

[Info] BMW Software Unterschiede und Anforderungen

E-Series & R05x Mini:

  • Interface = K+DCAN Cable (OBDII to USB) oder ICOM
  • ECU Data Files = SP-Daten
  • NCS Expert = Coding-Software
  • WinKFP = Programming (Flashing) Software
  • EDIABAS = Low Level ECU Communication Software. Wird von NCS Expert & WinKFP genutzt.

Fxx- / Ixx- / Gxx-Series, Mini (F05x/F06x), & Rolls-Royce:

  • Interface = ENET Cable (OBDII to RJ45 Ethernet) or ICOM
  • ECU Data Files = PSdZData
  • E-Sys = Coding-Software
  • E-Sys = Programming (Flashing) Software

ICOM

  • ICOM A: Hauptinterface
  • ICOM B: Adapter für Multimedia-Programmierung in E-Modellen
  • ICOM C: Adapter für ältere BMW-Modelle mit rundem 20-Pin Diagnosestecker
  • ICOM D: Adapter für Motorräder

Additional Dealership Level Software

ISTA+ (AKA Rheingold or ISTA-D) „[Info] BMW Software Unterschiede und Anforderungen“ weiterlesen

Der richtige Repeater – Teil 2

Vor einiger Zeit habe ich über meine Erfahrungen mit dem Fritz!Repeater 1160 berichtet. Leider hat dieser aber keinen Ethernet Anschluss. In meiner neuen Wohnung habe ich nun jedoch den Fall, dass ich im Wohnzimmer an der Multimediawand keine Netzwerksteckdose mehr habe. Seither waren dort über einen Switch alle Geräte wie Fernseher, Receiver, Konsole, ATV, etc. angeschlossen. Nun gäbe es die Möglichkeit dort einen weiteren Router aufzustellen und diesen als Repeater zu registrieren, jedoch finde ich das mit Kanonen auf Spatzen geschossen, da ja auch bereits ein Switch vorhanden ist an dem alle Entertainment-Geräte hängen.  „Der richtige Repeater – Teil 2“ weiterlesen

[ESXi] VMFS5/6 Datenspeicher auf USB-Laufwerken erstellen

  1. Verbindung zum ESXi-Host mit SSH herstellen
  2. USB-Arbitratordienst stoppen. Dieser Dienst wird verwendet, um USB-Geräte von einem ESX/ESXi-Host an eine virtuelle Maschine weiterzuleiten. (Wenn deaktiviert, können USB-Geräte nicht mehr an VMs weitergegeben werden.)
  3. (optional) Verwende diesen Befehl, um den USB-Arbitrator nach einem Neustart dauerhaft zu deaktivieren.
  4. Schließe das USB-Gerät an den ESXi-Host an. Während das USB-Gerät angeschlossen wird, kann entweder /var/log/vmkernel.log beobachten werden, um den Gerätenamen zu identifizieren, oder ihn in /dev/disks identifizieren.
    Geräte heißen entweder mpx.vmhbaXX oder haben eine naa.X-Nummer.
  5. Schreibe ein GPT-Label auf das Gerät (unter der Annahme, dass die Geräte-ID naa.50000000000000000000000001 lautet).
  6. Um eine Partition zu erstellen, muss man den Startsektor und den Endsektor kennen, der von der Gerätegröße und der GUID abhängt.
    Der Startsektor ist immer 2048.
    Die GUID für VMFS ist AA31E02A400F11DB95900000000C2911D1B8.
    Der Endsektor kann mit der folgenden Formel berechnet werden (Verwende die Zahlen aus getptbl):

    15566 * 255 * 63 – 1 = 250067789

  7. Erstellen der VMFS-Partition (Eigenen Endsektor ersetzen).
  8. Formatieren der Partition mit VMFS5 oder VMFS6
  9. Der USB-Datastore sollte nun in der Ansicht der Datastores erscheinen.

ESXi 5.*/6.* Kennwort zurücksetzen

Kürzlich mal schnell das Kennwort meines ESXi Servers geändert und schon konnte ich mich nicht mehr anmelden – vergessen!? Fehler bei der Eingabe!? – Keine Ahnung. Die VMWare-Doku empfiehlt in so einem Fall das neu Aufsetzen des Servers. Doch das geht auch anders:

  1. Booten des ESXi Servers mit einer Linux Live CD auf USB Stick
  2. Überprüfen der vorhandenen Partitionen der Laufwerke mittels „parted -l“
  3. Entsprechende ESXi Partition mounten (mount /etc/sdaX /mnt/)
  4. In gemountetes Verzeichnis wechseln
  5. Entpacken des state.tgz Verzeichnisses im Wurzelverzeichnis (tar -xvf state.tgz)
  6. Im state.tgz Archiv befindet sich ein weiteres Archiv local.tgz. Dieses ebenfalls entpacken (tar -xf local.tgz)
  7. im local.tgz Archiv befindet sich im Ordner /etc die Datei „shadow“. Diese mit einem Texteditor öffnen (nano shadow)
  8. Beim entsprechenden Benutzer befindet sich zwischen den ersten beiden Doppelpunkten das verschlüsselte Kennwort. Alle Zeichen zwischen den Doppelpunkten löschen.
  9. Datei speichern, den Ordner /etc wieder ins Archiv local.tgz packen (tar czf local.tgz etc/)
  10. Das Archiv local.tgz wieder ins Archiv state.tgz packen (tar czf state.tgz local.tgz)
  11. Das Archiv state.tgz wieder ins Wurzelverzeichnis des gemounteten ESXi Volumes kopieren
  12. Beim nächsten Start von ESXi kann man sich nun ohne Kennwort mit dem entsprechenden Benutzer anmelden und ein neues Kennwort vergeben

IIS Reverse Proxy (ARR) 502.3 Bad Gateway – Sicherheitsfehler

Ich nutze einen ESXI Server hinter einem IIS Reverse Proxy um aus dem Internet auf die Verwaltungsoberfläche zuzugreifen.

Unglücklicherweise hat der Standard-Web-Client von ESXi 6.5 einen Zertifikatsfehler. Das Zertifikat ist nämlich durch den VMWare Installer selbst ausgestellt und nicht durch eine Zertifizierungsstelle verifiziert.

So ergibt sich beim Routing über IIS ein Fehler 502.3 Bad Request mit dem Hinweis: Es ist ein Sicherheitsfehler aufgetreten.

Man könnte nun dem ESXI Server ein gültiges Zertifikat erstellen und dieses Einspielen, da ich ein gültiges Zertifikat innerhalb meines Heimnetzes jedoch nicht benötige, ist mir der Zertifikatsfehler intern egal. Nach außen habe ich ein gültiges Let’s Encrypt Zertifikat das durch den IIS auch richtig geliefert wird.

Die Lösung für mich war es also, die Zertifikatsprüfung durch IIS beim Request Routing von HTTPS-Seiten zu deaktivieren. „IIS Reverse Proxy (ARR) 502.3 Bad Gateway – Sicherheitsfehler“ weiterlesen

Carly Diagnose App für iOS und Android

Die Carly-App ist eine der führende Anwendungen zum Thema Fahrzeugdiagnose und Codierung für BMW, Mercedes und VAG. Der Funktionsumfang ist mittlerweile enorm und erfüllt fast alle Diagnoseszenarien. Für die Nutzung ist ein OBD-Adapter mit WLAN (iOS) oder Bluetooth (Android) nötig. Es empfiehlt sich hier den Originalen Adapter von Carly selbst zu nutzen, da manche Funktionalitäten nur mit diesem Original funktionieren. Ein Großteil der Features funktioniert aber auch mit einem Universal Adapter (z.B. ELM327).

Die wichtigsten Funktionen im Überblick:

  • BMW Fehlerspeicher auslesen und löschen
  • Diagnose-Report per eMail versenden
  • BMW Service zurücksetzen / Serviceintervall zurück setzen
  • Fahrzeug kodieren / Codierungen
  • Gebrauchtwagencheck / Tachomanipulation aufspühren
  • Live-Daten / Parameter des Fahrzeuges anzeigen
  • Batterie Reset / Batterie anlernen
  • DPF Diagnose (Dieselpartikel-Filter) und DPF Regenerierung
  • Getriebe Adaptionsstatus auslesen und zurücksetzen
  • Auspuffklappen ansteuern
  • iDrive konfigurieren

„Carly Diagnose App für iOS und Android“ weiterlesen