So konvertieren Sie eine Zeichenfolge....('20210228240000' ----> 2021-03-01T00:00:00)Die Daten sollten als '20210301000000' gespeichert werden, werden aber im SAP als '20210228240000' gespeichert.
Ich versuche, 'substr function' zu verwenden, aber Probleme treten immer am Ende des Monats auf.
Schließlich tritt bei der Rückgabe von '2021-02-29' ein Fehler in JMP auf, wenn das Datum nicht existiert.
Excel erkennt das Datum automatisch...[ = date(2021, 2, 29) ---> 2021-03-01 ]
Ich denke ... Zuerst '20210228' aus dem Datensatz ausschneiden, das Datum konvertieren und 1 Tag (86400 Sekunden) hinzufügen ????
Gibt es eine einfachere Funktion oder Methode?
SkriptingBetreff: String konvertieren....('20210228240000' ----> 2021-03-01T00:00:00)Ich denke, Sie sollten mit folgendem Prozess in Ordnung sein:
- Datum extrahieren
- Datum in Sekunden umrechnen
- Stunden, Minuten, Sekunden extrahieren und in Sekunden umwandeln
- Kombinieren Sie Datum in Sekunden und Uhrzeit in Sekunden
- Sekunden in das gewünschte Format konvertieren
Ein Beispiel:
Names Default To Here(1);
str_list = {
"20210228230000",
"20210228240000",
"20210301200000",
"20210301240000"
};
dates = Transform Each({str}, str_list,
y = Num(Left(str, 4));
m = Num(Substr(str, 5, 2));
d = Num(Substr(str, 7, 2));
hh = Num(Substr(str, 9, 2));
mm = Num(Substr(str, 11, 2));
ss = Num(Substr(str, 13, 2));
date_time = Date MDY(m, d, y) + In Hours(hh) + In Minutes(mm) + ss;
MDYHMS(date_time);
);<BR />//{"02.28.2021 23:00:00", "03.01.2021 0:00:00", "03.01.2021 20:00:00", "03.02.2021 0:00:00"}
Betreff: String konvertieren....('20210228240000' ----> 2021-03-01T00:00:00)Ich denke @jthi ist richtig, aber testen Sie sorgfältig an den Rändern. Einige der schlimmsten Fehler, mit denen ich je zu tun hatte, hatten mit Zeiten zu tun.
- Das Schlimmste passierte nur vor 10 Uhr morgens, aber das wussten wir nicht, bis jemand früh genug kam, um es zu fangen! (Führendes Leerzeichen um 9 Uhr morgens.)
- Oder vielleicht war es die, die nur in den letzten Sekunden jeder Stunde passierte. Ähnliche Berechnung wie oben vorgeschlagen, aber schlecht ausgeführt.
Ich mag es wirklich, wie meine Autoversicherung um 00:01 Uhr beginnt, um die Mehrdeutigkeit zu beseitigen ...
Betreff: String konvertieren....('20210228240000' ----> 2021-03-01T00:00:00)Danke~jthi~~ 
Ich habe das Problem gelöst, indem ich dies angewendet habe.