Ansicht
Dokumentation
ABENABAP_OBJECTS_DIFF_SYNTAX - ABAP OBJECTS DIFF SYNTAX
TXBHW - Original Tax Base Amount in Local Currency Fill RESBD Structure from EBP Component StructureDiese Dokumentation steht unter dem Copyright der SAP AG.
Falsche Syntax
Fehlende Trennzeichen
-
Trennzeichen (Leerzeichen, Kommas, Doppelpunkte, Punkte oder das Zeilenende) sind in ABAP Objects hinter Literalen und Offset-/Längenangaben erforderlich.
In ABAP Objects Fehlermeldung bei:
CONCATENATE 'fgfdg'f INTO g.
WRITE AT /off(len)'...'.
Korrekte Syntax:
CONCATENATE 'fgfdg' f INTO g.
WRITE AT /off(len) '...'.
Grund:
Vereinheitlichung der Syntax von Anweisungen. Hinter keinem Teil einer Anweisung (Token)
darf direkt das nächste Token geschrieben werden, sondern es muss immer ein gültiges Trennzeichen eingefügt werden.
Falsche Plus-Klammer-Notation
-
In ABAP Objects und seit Release 7.0 auch außerhalb von Klassen sind keine leeren Plus-Klammer-Notationen erlaubt.
In ABAP Objects Fehlermeldung bei:
DATA: f1() TYPE ...,
f2+ TYPE ...,
f3 LIKE f1+().
SELECT SINGLE ... FROM +(f1) INTO (f2+off(), f3+(len)).
WRITE AT +(len) f3().
Korrekte Syntax:
DATA: f1 TYPE ...,
f2 TYPE ...,
f3 LIKE f1.
SELECT SINGLE ... FROM (f1) INTO (f2+off, f3(len)).
WRITE AT (len) f3.
Grund:
Pluszeichen dürfen außerhalb arithmetischer Ausdrücke nur für
Offset-/Längenangaben bei Feldnamen verwendet werden. Dort sind Pluszeichen ohne folgenden Offset-Wert
überflüssig. Zurzeit interpretiert das System ein einzelnes Pluszeichen, das direkt an
einen Feldnamen anschließt, oder ein Pluszeichen, dem direkt ein Klammerausdruck folgt, als nicht
vorhanden. Dadurch sind Pluszeichen auch an Stellen möglich, an denen keine Offset-/Längenangaben
vorgesehen sind, z.B. in Datendeklarationen, wo nur Längenangaben möglich sind, und vor
dynamischen Ausdrücken. Ein leerer Klammerausdruck nach einem Pluszeichen, einem Offset-Wert oder einem Feldnamen wird als nicht vorhanden interpretiert und ist ebenfalls überflüssig.
Keine Literale über mehrere Zeilen
-
In ABAP Objects und seit Release 7.0 auch außerhalb von Klassen darf sich ein Literal nicht über mehrere Programmzeilen ausdehnen.
In ABAP Objects Fehlermeldung bei:
WRITE 'Start...
...end'.
Korrekte Syntax:
WRITE 'Start... ' &
' ...end'.
Grund:
Die Anzahl eingefügter Leerzeichen hängt von der Zeilenlänge des
Editors ab. Die Zeilenlänge des Editors ist keine feste Größe, sondern kann in
einem kommenden Release erhöht werden. Literale, die länger sind als eine Editorzeile, können mit dem Zeichen & aus mehreren Literalen zusammengesetzt werden.
Kein Fortschreiben von Feldbezeichnern über das Zeilenende
-
In ABAP Objects und seit Release 7.0 auch außerhalb von Klassen dürfen bei Aufzählungslisten in Klammern Feldbezeichner nicht durch das Zeilenende unterteilt werden.
In ABAP Objects Fehlermeldung bei:
SELECT SINGLE col1 col2 ... coln
FROM dbtab
INTO (wa-col1, wa-col2, ................ , wa-c
oln)
WHERE col1 IN (f1, f2, ..................... , f
n).
Korrekte Syntax:
SELECT SINGLE col1 col2 ... coln
FROM dbtab
INTO (wa-col1, wa-col2, ................ ,
wa-coln)
WHERE col1 IN (f1, f2, ..................... ,
fn).
Grund:
Feldbezeichner dürfen sich prinzipiell nicht über mehrere Zeilen ausdehnen.
Bei einer Erhöhung der Editor-Zeilenlänge in einem zukünftigen Release kommt es
bei umgebrochenen Feldbezeichnern zu Syntaxfehlern. Das Verhalten in Aufzählungen ist eine Ausnahme und wird dem allgemeinen Verhalten angepasst.
BAL Application Log Documentation ROGBILLS - Synchronize billing plans
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 5345 Date: 20240523 Time: 173812 sap01-206 ( 82 ms )