Konvertierung Timestamp

Getting started ... Alles für einen gelungenen Start.
6 Beiträge • Seite 1 von 1
6 Beiträge Seite 1 von 1

Konvertierung Timestamp

Beitrag von jeyloeso (ForumUser / 29 / 6 / 0 ) »
Hallo alle Abapmitglieder,

wie kann ich von '20.120.904.061.319' in 2012.09.04 06:13:19 konvertieren.

Ich habe folgende Funktionbaustein verwendet aber es hat leider nichts geholfen. Fehlt vielleicht etwas bei der Code.

Code: Alles auswählen.

SELECT timestamp proxy_name short_text ifname FROM srt_util_errlog INTO (wa_tab-timestamp, wa_tab-proxy_name,
     wa_tab-short_text, wa_tab-ifname)
  WHERE  proxy_name = l_param
      AND expire BETWEEN l_date AND l_datbis.

      APPEND wa_tab TO it_tab.
      CLEAR wa_tab.
    ENDSELECT.

    LOOP AT it_tab INTO wa_tab.
    CALL FUNCTION 'CIF_GEN4_CONVERT_TIMESTAMP' "
  EXPORTING
    IV_TIMESTAMP      =  WA_TAB-timestamp
    IV_TIMEZONE       =  'CET'

  IMPORTING
    ev_date           =  sy-datum                 " sy-datum
    ev_time           =  sy-uzeit                 " sy-uzeit
  EXCEPTIONS
    TIME_CONVERSION_FAILED = 1.  "

        IF wa_tab-ifname IS INITIAL.

          WRITE:/ wa_tab-timestamp  UNDER 'Timestamp',
                  wa_tab-proxy_name UNDER 'Proxyname',
                  wa_tab-short_text UNDER 'Text',
                  'Kein Angabe'     UNDER 'Interface'.

        ELSE.
          WRITE:/ wa_tab-timestamp  UNDER 'Timestamp',
*                     wa_tab-proxy_name UNDER 'Proxyname',
                  wa_tab-short_text UNDER 'Text',
                  wa_tab-ifname     UNDER 'Interface'.

        ENDIF.
*      ENDIF.

    ENDLOOP.
Bitte um Hilfe.

Liebe Grüße,
jeyloeso

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: Konvertierung Timestamp

Beitrag von inab (ForumUser / 69 / 0 / 6 ) »
Hallo jeyloeso,

ich habe den FB mal im Testmodus ausgeführt und bekomme ein korrektes ergebnis.
Du solltest vielleicht die beiden Importing-Parameter des FB durch eigen variablen ersetzen ( lv_date type sy-datum ... ) und sie dann auch entsprechend ausgeben ( das fehlt in Deinem coding ;-)) )

Viele Grüße

Ingo

Re: Konvertierung Timestamp

Beitrag von jeyloeso (ForumUser / 29 / 6 / 0 ) »
Hallo Ingo,

bei mir ist nicht richtiges Ergebnis ausgegeben. Ich habe Timestamp 20.121.024.053.306 ausprobiert.
Das Ergebniss bei mir ist : 24.10.2012 und Zeit ist: 05:33:06 aber
das richtige Ergebnis soll : 24.10.2012 und Zeit soll: 07:33:06 sein.

Wie kann ich bei der Ausgabe immer richtige Timestamp bekommen?
Soll ich die Funktionbaustein innerhalb Loop schreiben?

Code: Alles auswählen.

 LOOP AT it_tab INTO wa_tab.
      CALL FUNCTION 'CIF_GEN4_CONVERT_TIMESTAMP' "
  EXPORTING
    IV_TIMESTAMP      =  WA_TAB-timestamp
    IV_TIMEZONE       =  'CET'

  IMPORTING
    ev_date           =   sy-datum            " sy-datum
    ev_time           =   sy-uzeit            " sy-uzeit
  EXCEPTIONS
    TIME_CONVERSION_FAILED = 1.  "

      a_char1 = wa_tab-timestamp.
      TRANSLATE a_char1 USING ''.
      CONDENSE a_char1 NO-GAPS.
      CONCATENATE a_char1+0(4) a_char1+4(2) a_char1+6(2) INTO l_datfeld. " SEPARATED BY '.'.
      CONCATENATE a_char1+8(2) a_char1+10(2) a_char1+12(2) INTO l_timefeld SEPARATED BY ':'.


      IF l_datfeld BETWEEN l_change AND sy-datum.
        IF wa_tab-ifname IS INITIAL.

          WRITE:/ l_datfeld         UNDER 'Datum',
                  l_timefeld        UNDER 'Zeit',
                  wa_tab-proxy_name UNDER 'Proxyname',
                  wa_tab-short_text UNDER 'Text',
                  'Kein Angabe'     UNDER 'Interface'.

        ELSE.
          WRITE:/ l_datfeld         UNDER 'Datum',
                  l_timefeld        UNDER 'Zeit',
                  wa_tab-proxy_name UNDER 'Proxyname',
                  wa_tab-short_text UNDER 'Text',
                  wa_tab-ifname     UNDER 'Interface'.

        ENDIF.
      ENDIF.

    ENDLOOP.
Im Voraus vielen Dank.

Re: Konvertierung Timestamp

Beitrag von inab (ForumUser / 69 / 0 / 6 ) »
Hallo Jayleoso,

Also, Dein coding sollte etwa so sein:

....

data: lv_date type sy-datum,
lv_time type sy-uzeit.

...

Loop at itab into wa_tab.
CALL FUNCTION 'CIF_GEN4_CONVERT_TIMESTAMP' "
EXPORTING
IV_TIMESTAMP = WA_TAB-timestamp
* IV_TIMEZONE = 'CET' "Die Zeitzone NICHT berücksichtigen

IMPORTING
ev_date = lv_date "sy-datum " sy-datum
ev_time = lv_time "sy-uzeit " sy-uzeit
EXCEPTIONS
TIME_CONVERSION_FAILED = 1.


write: /lv_date, lv_time " Oder was auch immer Du ausgeben willst

endloop.

Viele Grüße

Ingo

Re: Konvertierung Timestamp

Beitrag von a-dead-trousers (Top Expert / 4395 / 223 / 1182 ) »
hi!

Viel einfacher:
Für das Ganze gibt es eine eigenen Befehl in ABAP. (seit Basis 6.0 oder so)

Code: Alles auswählen.

CONVERT TIMESTAMP ... TIMEZONE ... INTO DATE ... TIME ...
bzw.

Code: Alles auswählen.

CONVERT DATE ... TIME ... INTO TIMESTAMP ... TIMEZONE ...
Was die Zeitzone angeht, solltest du hierbei die 'CET' jedoch angeben, da die Zeitstempel immer in 'UTC' abgelegt/erzeugt werden und man ja den lokalen Zeitpunkt haben will.

lg ADT

Folgende Benutzer bedankten sich beim Autor a-dead-trousers für den Beitrag:
jeyloeso

Theory is when you know something, but it doesn't work.
Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why.

ECC: 6.18
Basis: 7.50

Re: Konvertierung Timestamp

Beitrag von jeyloeso (ForumUser / 29 / 6 / 0 ) »
Hallo Ingo,

vielen Dank,

jetst hat's geklappt.

Gruß

Seite 1 von 1

Vergleichbare Themen

2
Antw.
3501
Views
Timestamp
von errorist » 09.07.2008 13:36 • Verfasst in ABAP® für Anfänger
2
Antw.
552
Views
TIMESTAMP 15 vs. 14 Zeichen
von sapdepp » 04.11.2022 08:49 • Verfasst in ABAP® Core
8
Antw.
4750
Views
Timestamp vs GetTime
von cut1 » 11.01.2006 11:39 • Verfasst in ABAP® Core
5
Antw.
2189
Views
Timestamp Kalkulation
von Lbyte » 27.11.2017 15:43 • Verfasst in ABAP® für Anfänger
1
Antw.
4477
Views
Zeitstempel TIMESTAMP und TIMESTAMPL
von KleinerEisbaer » 15.09.2008 12:53 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Unbeantwortete Forenbeiträge

Daten an Tabelle binden
vor 17 Stunden von Bright4.5 1 / 373
aRFC im OO-Kontext
vor 4 Wochen von ralf.wenzel 1 / 2019
Hilfe bei SWEC/SWE2
letzen Monat von retsch 1 / 8614