Position aus dem String auslesen.

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

Position aus dem String auslesen.

Beitrag von nordlender (ForumUser / 16 / 0 / 0 ) »
Hallo zusammen,

benötige wieder mal eure Hilfe.

Ich bekomme eine Zahl, die ich Umschlüssen soll. z.B 11002559

habe gedacht, ich nehme den ganzen Alphabet und speichere das als Konstante in einem Strng.
lv_alpfabet = ‘0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz‘
bekomme so 62 Zeichen.

Jetzt mit der Hilfe von Modulo bestimme ich erste Position.
11002559 MOD 62 = 39.
Die Position 39 im meinem String ergibt die Buchstabe d.

Mein Problem ist jetzt: wie lese ich diese Position aus?

Code: Alles auswählen.

  DATA: lv_zahl      TYPE char (8),
        lv_result       TYPE i,
        lv_alphbet   TYPE string,
        lv_buchstabe TYPE string,
        int          TYPE i.
  
   lv_zahl = '11002559'.   " bekomme eigetlich über import-param. Hier nur zum verdeutlichen
   lv_alphbet = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.
   
   int = STRLEN( lv_alphbet ).
   lv_result = lv_zahl MOD int.
   
   
   lv_buchstabe =   pos(lv_result)  von lv_alphbet ?????? .

natürlich kommt da noch eine Schleife.

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



Re: Position aus dem String auslesen.

Beitrag von nordlender (ForumUser / 16 / 0 / 0 ) »
vielen Dank.

Re: Position aus dem String auslesen.

Beitrag von a-dead-trousers (Top Expert / 4483 / 231 / 1205 ) »
hi!

Bei Strings musst du nur aufpassen, dass es den OFFSET den du auslesen willst überhaupt gibt. Auch dürfen Strings mit OFFSET-Angabe niemals links in einer Zuweisung stehen.

Code: Alles auswählen.

ld_string+10(2) = 'ab'.
=> Syntax-Error

btw. Das ganze Alphabeth ist in ABAP in der Variable SY-ABCDE gespeichert und muss nicht im Coding extras notiert werden 8)
(Man könnte ja einen Buchstaben vergessen)

Code: Alles auswählen.

LD_BASE62 = SY-ABCDE.
translate LD_BASE62 to lower case.
concatenate '0123456789' SY-ABCDE LD_BASE62 into LD_BASE62.
lg ADT
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

Seite 1 von 1

Vergleichbare Themen

11
Antw.
27517
Views
Feld bzw. String auslesen
von robin1at » 08.06.2006 08:07 • Verfasst in ABAP® für Anfänger
3
Antw.
4984
Views
Neue Position in Vertriebsbeleg aus alter Position anlegen
von shapoc » 18.07.2014 10:54 • Verfasst in Sales and Distribution
3
Antw.
3530
Views
sapscript position
von Pinguincommander » 27.06.2012 14:11 • Verfasst in ABAP® Core
0
Antw.
1576
Views
Position Achsenbeschriftung
von Mondhund76 » 07.08.2012 14:52 • Verfasst in ABAP® für Anfänger
9
Antw.
1466
Views
HU-Position = 0000
von DerAzubi » 17.10.2022 15:31 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag


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

Aktuelle Forenbeiträge

ATC Finding in Smartforms
vor 11 Stunden von sap_enthusiast 2 / 148
LSMW-Problem
Gestern von rob_abc 4 / 209

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

ATC Finding in Smartforms
vor 11 Stunden von sap_enthusiast 2 / 148
LSMW-Problem
Gestern von rob_abc 4 / 209

Unbeantwortete Forenbeiträge

SFP/SEGW - Fehler beim Rendering
letzen Monat von Manfred K. 1 / 64873
Benutzerdefinierte Felder PSP
January 2026 von Rabea1103 1 / 117506