Code lesen

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

Code lesen

Beitrag von HH_ABAP (Specialist / 262 / 144 / 1 ) »
Hallo,

kann jemand mir sagen, was passiert hier:

Code: Alles auswählen.

shift ls_boeking-bedrag right deleting trailing space.
ls_boeking-bedrag+27(1) = '.'.
shift ls_boeking-bedrag left deleting leading space.
Vielen Dank & Grüße

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


Re: Code lesen

Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
Das kommt darauf an, wie BEDRAG definiert ist und was drin steht.
Das einfachste ist es, wenn du es dir im Debugger anschaust!

Re: Code lesen

Beitrag von a-dead-trousers (Top Expert / 4271 / 213 / 1140 ) »
Ich würde mal darauf tippen, dass hier aus einer Zahl in Form eines Textes, eine Gleitpunktzahl erzeugt wird.
Vermutlich ist das Feld größer als 28 Zeichen und der Text hat derzeit entweder ein Leerzeichen oder einen Beistrich als Trennzeichen. Alles andere würde zu einem Fehler führen.
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: Code lesen

Beitrag von DeathAndPain (Top Expert / 1795 / 213 / 396 ) »
ewx hat geschrieben:Das kommt darauf an, wie BEDRAG definiert ist und was drin steht.
Es wird ein dreißigstelliges Characterfeld sein, in dem, wie adt schon sagte, eine Zahl mit zwei Nachkommastellen gespeichert ist. Der Code ist eine IMHO recht unbeholfene Methode, aus dem Komma einen Punkt zu machen, damit der Wert anschließend einer numerisch definierten Variable zugewiesen werden kann.

Wesentlich eleganter wäre gewesen, einfach zu schreiben:

Code: Alles auswählen.

OVERLAY ls_boeking-bedrag with '..............................' only ','.
Oder einen Replace.

Danach eventuell noch den shift ls_boeking-bedrag left deleting leading space., wenn die Möglichkeit besteht, dass die Zahl nicht linksbündig im Characterfeld steht.

Gibt da garantiert auch Funktionsbausteine für, aber die zu rufen ist weder einfacher noch schneller.

Re: Code lesen

Beitrag von GastX (Specialist / 277 / 4 / 18 ) »
Wenn es darum geht, alle ggfs. vorhandenen Punkte zu ersetzen, bietet sich Translate an.

Code: Alles auswählen.

TRANSLATE bedrag USING ',.'.
Der Code mit dem Shift stellt natürlich sicher, dass nur an genau einer Stelle, und zwar der dritten von rechts, ein Zeichen geändert wird. Allerdings unabhängig davon, was sich im Feld befindet.

Seite 1 von 1

Vergleichbare Themen

1
Antw.
8282
Views
Programmname einer Methode ermitteln für Lesen Source Code
von polle » 03.01.2007 10:51 • Verfasst in ABAP® Core
1
Antw.
7195
Views
Unterschied: Sequentielles lesen, direktes lesen
von MarkusW » 07.08.2008 16:46 • Verfasst in ABAP® für Anfänger
5
Antw.
16148
Views
OK-Code
von TomTom » 18.11.2005 13:28 • Verfasst in ABAP® für Anfänger
2
Antw.
2373
Views
Drucken QR-Code
von Nyffenegger_2020 » 01.02.2021 11:55 • Verfasst in ABAP® für Anfänger
7
Antw.
3094
Views
Code Inspector
von Norbert_Aeq » 10.04.2012 15:54 • Verfasst in ABAP Objects®

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

Zwischensumme Adobe Forms
vor 4 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