Bedeutung von (6) bei Data Deklaration?

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

Bedeutung von (6) bei Data Deklaration?

Beitrag von Dyrdek (Specialist / 306 / 30 / 0 ) » 3. Nov 2016 11:55

Hey,

Ist bestimmt eine totale Einsteiger-Frage.
Aber was bedeutet (6) in folgendem Kontext?

Code: Alles auswählen.

DATA         numer(6) TYPE n.
Eine definierte Länge des Typs, ein Array, etc?

EDIT:

Code: Alles auswählen.

IF numer+2(4) = '0000'.
Ebenso hier. Hier ist es ja keine Deklaration mehr, wieso also hier die Klammer 4?

Hoffe es kann jemand kurz antworten :) Ist glaub ich nicht so schwer (wenn man es weis)

Danke schonmal!

Gruß

Dominic


Re: Bedeutung von (6) bei Data Deklaration?

Beitrag von JHM (Top Expert / 1135 / 0 / 178 ) » 3. Nov 2016 12:04

N und C haben eine Länge, diese kann man entweder in Klammern angeben:

Code: Alles auswählen.

DATA         numer(6) TYPE n.
oder man schreibt es lang:

Code: Alles auswählen.

DATA         numer TYPE n LENGTH 6.
Beides definiert eine Variable vom Typ N mit der Länge 6

Mit sowas:

Code: Alles auswählen.

IF numer+2(4) = '0000'.
realisiert man Teilzugriffe auf Zeichenketten.
Offset steht hinter dem +, in Klammern die Länge des Teilzugriffs.
Dies klappt bei C,N sowie bei string Variblen.

Folgende Benutzer bedankten sich beim Autor JHM für den Beitrag:
Dyrdek

Gruß Hendrik

Re: Bedeutung von (6) bei Data Deklaration?

Beitrag von Dyrdek (Specialist / 306 / 30 / 0 ) » 3. Nov 2016 12:10

Ok danke für die schnelle und präzise Antwort! :)

Re: Bedeutung von (6) bei Data Deklaration?

Beitrag von edwin (Specialist / 264 / 5 / 41 ) » 3. Nov 2016 12:34

eine kleine Ergänzung:
auch Typ P hat eine Länge - Standard ist 8, nur der Teilzugriff mit Offset und Länge ist bei P nicht erlaubt

Code: Alles auswählen.

FORM check_p .
  DATA l_p1        TYPE p LENGTH 1.
  DATA l_p8        TYPE p LENGTH 8.
  DATA l_p16       TYPE p LENGTH 16.

  l_p1  = 9.                                                     "Max 9 bei Länge 1 
  l_p8  = 999999999999999.                             "Max bei Länge 8
  l_p16 = 9999999999999999999999999999999. "Max bei Länge 16
Grüße Edwin

Seite 1 von 1

Aktuelle Forenbeiträge

Workflow: eMail Versand
vor 4 Stunden von SaskuAc 3 / 52
Speichern von Eingabe des Selektionscreens
vor 15 Stunden von black_adept 3 / 68
Join über mehrere Tabellen sehr langsam
vor 22 Stunden von Daniel 2 / 91
Ermittlung interner/externer Mitarbeiter
Gestern von deejey 3 / 153
Excel OLE2 Blatt schützen gelöst
Gestern von Kerstin 5 / 73

Unbeantwortete Forenbeiträge

SP01 Verweildauer
vor 6 Tagen von SAP_ENTWICKLER 1 / 89
Transaktion OMT3B Subscreens in Dynpros einhängen
vor einer Woche von SAP_ENTWICKLER 1 / 62
Zeitereignisarten anlegen
vor 2 Wochen von Flashtie 1 / 174
Genehmiger & Status der Genehmigung bei einer BANF
vor 3 Wochen von Der Formulator 1 / 245
Migrationstool Upload QUAN und CURR Felder
vor 3 Wochen von SAP_ENTWICKLER 1 / 231