Überflüssige Nachkommastellen eliminieren

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

Überflüssige Nachkommastellen eliminieren

Beitrag von Newbee (ForumUser / 1 / 0 / 0 ) »
Erstmal Hallo zusammen,

habe leider sehr wenig Erfahrung mit ABAP und muss dringen EK-Infosätze vom Altsystem übernehmen. :oops:

Mein Problem hier sind Preise welche kleiner 0,01? sind. Somit lese ich die Preise aus dem Vorsystem mit allen Nachkommastellen ein.
Ich multipliziere diese mit 1000. Beim Übergeben habe ich nun einen Wert mit
evt 3, 4 oder 5 Nachkommastellen. Ich darf nur 2 Nachkommastellen übergeben.
Wie werde ich die überflüssigen wieder los?
Habe es mit Type p und DECIMALS 2 schon probiert, da bekomme ich aber mit meinem Coding Probleme.


DATA: hlp_wert TYPE char10,
hlp_string TYPE char10,
hlp_var TYPE char10,
hlp_str TYPE string,
lv_length TYPE i.
*
hlp_str = ekinfo-netpr.
WHILE hlp_str CA ','.
SHIFT hlp_str: UP TO ',',.
ENDWHILE.
MOVE strlen( hlp_str ) TO lv_length.
IF lv_length > 3 and ekinfo-netpr < '0,01'.
hlp_var = ekinfo-netpr.
TRANSLATE hlp_var USING ',..,'.
hlp_wert = hlp_var * 1000.
WRITE hlp_wert TO hlp_string.
TRANSLATE hlp_string USING '.,.,'.
SHIFT hlp_string LEFT DELETING LEADING space.
CONDENSE hlp_string NO-GAPS.
WRITE hlp_string TO beine-netpr.
ELSE.
beine-netpr = ekinfo-netpr.
ENDIF.

Hoffe Ihr könnt mir hierbei helfen.

Viele Grüße Newbee

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


Beitrag von TWP (Specialist / 445 / 0 / 1 ) »
Wieso so umständlich,

hier ein kleines Muster:

data: eingabe(10) type c value '0,0001',
h_wert type p decimals 2,
h_xwert(12) type c.


*--- Komma durch Punkt ersetzen
translate eingabe using ',.'.

h_wert = eingabe * 1000.

write: h_wert to h_xwert.

write: / 'P-Feld = ', h_wert,
/ 'C-Feld = ', h_xwert.

Dies sollte dir ein wenig weiterhelfen.

Gruß

Thomas

Seite 1 von 1

Vergleichbare Themen

11
Antw.
12193
Views
doppelte Zeilen aus ITAB eliminieren
von mörtel » 27.06.2007 10:10 • Verfasst in ABAP® für Anfänger
1
Antw.
432
Views
Überflüssige Leerzeichen/Zeilen
von HH_ABAP » 17.07.2019 13:29 • Verfasst in ABAP® für Anfänger
9
Antw.
7342
Views
ALV-GRID Objekt-orientiert: überflüssige Spalten löschen
von Jura » 19.02.2007 18:17 • Verfasst in ABAP® für Anfänger
5
Antw.
3902
Views
Nachkommastellen ab der dritten abschneiden.
von Nordlicht » 02.02.2021 09:32 • Verfasst in ABAP® für Anfänger
2
Antw.
2664
Views
Differenz aus Nachkommastellen berechnen
von kbit100 » 11.04.2018 11:55 • 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

Spool vereinen OTF und PDF
vor 19 Stunden von anna2205 1 / 60
Prüfzeugnisse Anlagen finden
vor 2 Tagen von ewx 1 / 106
Zukunft des ABAP Entwicklers
vor 6 Tagen von ralf.wenzel 6 / 433
HR in der Zukunft?
vor einer Woche von waltersen 5 / 2568
VS Code statt Eclipse
vor einer Woche von rob_abc 3 / 207

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

Spool vereinen OTF und PDF
vor 19 Stunden von anna2205 1 / 60
Prüfzeugnisse Anlagen finden
vor 2 Tagen von ewx 1 / 106
Zukunft des ABAP Entwicklers
vor 6 Tagen von ralf.wenzel 6 / 433
HR in der Zukunft?
vor einer Woche von waltersen 5 / 2568
VS Code statt Eclipse
vor einer Woche von rob_abc 3 / 207

Unbeantwortete Forenbeiträge

Spool vereinen OTF und PDF
vor 19 Stunden von anna2205 1 / 60
Prüfzeugnisse Anlagen finden
vor 2 Tagen von ewx 1 / 106
XSLT und Loipro05 Transformation
letzen Monat von Torsten1965 1 / 6187
VOLL Artikel in einem Display Typ 12
November 2025 von ThomasM84 1 / 23894