Unklares Sprachkonstrukt

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

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

Unklares Sprachkonstrukt

Beitrag von dyv (ForumUser / 53 / 18 / 0 ) »
Hallo Experte,

analysiere gerade einen Code und kann nicht so ganz die Bedeutung von Operationen mit P_SCANNER nachvolziehen:

Code: Alles auswählen.


  IF p_scanner IS NOT INITIAL.
    IF p_scanner(1) = 'V'. " Material
      " Erstes Zeichen abschneiden
      " Eingabeparameter ist ein Material
      v_matnr = p_scanner+1.
    ELSE.
      IF p_scanner(1) = 'N'.
        IF strlen( p_scanner+1 ) = 10.
          " Eingabeparameter ist eine Materialbeleg
          v_matbel = p_scanner+1.
        ENDIF.
      ELSE.
        " Eingabeparameter ist Unbekannt
        IF strlen( p_scanner ) = 10.
          "Sehr wahrscheinlich ein Materialbeleg.
          IF p_scanner CO '1234567890 '.
            v_matbel = p_scanner.
          ENDIF.
        ENDIF.
        " Falls kein Matbeleg, dann wahrscheinlich ein
        " Material
        IF v_matbel IS INITIAL.
          v_matnr = p_scanner.
        ENDIF.
      ENDIF.
    ENDIF.
  ENDIF.

Könnte jemand behilflich sein und den Code kurz erklären? Vor allem die erste 12 Zeilen.

Danke im Voraus

Gruß

Denis

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


Re: Unklares Sprachkonstrukt

Beitrag von Thanatos82 (Expert / 699 / 32 / 123 ) »
Hallo Denis,

ich nehme mal an dich verwirren die 1 mal mit plus und mal in Klammern? Das ist das Arbeiten mit Offsets.
Im Prinzip steht da folgendes:
Wenn das erste Zeichen des Parameters p_scanner ein V ist, dann soll der Inhalt des Feldes an die Variable v_matnr übergeben, allerdings nur alles nach dem ersten Zeichen.
Wenn das erste Zeichen des Parameters p_scanner ein N ist, dann soll bei einer Länge des restlichen Inhalts dieses Feldes (also alles nach dem ersten Zeichen) von 10 Zeichen der Inhalt des Parameters an die Variable v_matbel zugewiesen werden, hier ebenfalls nur alles nach dem ersten Zeichen.

Reicht dir das an Erlklärungen?

Folgende Benutzer bedankten sich beim Autor Thanatos82 für den Beitrag:
dyv

Gruß,
der Matze

Re: Unklares Sprachkonstrukt

Beitrag von dyv (ForumUser / 53 / 18 / 0 ) »
Ja, super!

vielen Dank für die Klärung

VG

Denis

Re: Unklares Sprachkonstrukt

Beitrag von Thanatos82 (Expert / 699 / 32 / 123 ) »
Kein Problem! ;)

mit Offsets kann man viele Dinge tun, auch eine Kombination von beiden Ausdrücken ist möglich, also das zum Beispiel das dritte und vierte Zeichen eines mehrstelligen Wertes gelesen werden soll:
lv_irgendwas+2(2).
Du darfst nur nie vergessen, wenn du ab der ersten Stelle etwas mit Offset haben willst beginnst du ab Stelle 0!

Schau dir am besten zu dem Ganzen im Netz die Beispiele an.
Gruß,
der Matze

Seite 1 von 1

Über diesen Beitrag


Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

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

Aktuelle Forenbeiträge

Zugriff auf Daten via Webdav
vor 56 Minuten von msfox 2 / 35
Interne Tabelle
vor 18 Stunden von sap_enthusiast 3 / 163
Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 71

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.

Aktuelle Forenbeiträge

Zugriff auf Daten via Webdav
vor 56 Minuten von msfox 2 / 35
Interne Tabelle
vor 18 Stunden von sap_enthusiast 3 / 163
Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 71

Unbeantwortete Forenbeiträge

Zwischensumme Adobe Forms
vor 3 Tagen von Lucyalison 1 / 71
Group Items auf einer Filterbar
vor einer Woche von Bright4.5 1 / 111
tRFC Transaktionen SM58
vor 4 Wochen von A6272 1 / 141