0 in ein Feld bei Select Option reinschreiben

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

0 in ein Feld bei Select Option reinschreiben

Beitrag von L0w-RiDer (Expert / 552 / 83 / 2 ) »
Hallo,

ich würde gerne bei der Eingabe auf einem Select Option prüfen ob dort weniger als 10 Zahlen eingegeben wurden. Wenn dies der Fall ist, sollen vor der Eingabe 0er eingefügt werden, bis die Eingabe auf 10 Stellen kommt also z.B. es wurde '78544' eingegeben, dann sollte daraus '0000078544' werden.

Mein Ansatz war nun wie folgt:

Code: Alles auswählen.

CONSTANTS: c_numeric TYPE string VALUE '0123456789'.

lv_laenge = strlen( so_nrt-low ).

if so_nrt-low(1) CO c_numeric and lv_laenge < 10.
  loop at so_nrt ASSIGNING <wa_nrt>.
  while lv_laenge < 10.
    <wa_nrt>-low = '0' + <wa_nrt>-low.
    lv_laenge = lv_laenge + 1.
  ENDWHILE.
  endloop.
endif.
passt leider nicht ganz.

Sieht da jemand den Fehler oder hat einen guten Vorschlag zur Problemlösung?

Vielen Dank im Voraus.

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


Re: 0 in ein Feld bei Select Option reinschreiben

Beitrag von Lukas R. (ForumUser / 37 / 0 / 1 ) »
Hast du es schonmal mit: "unpack <wa_nrt>-low to <wa_nrt>-low."?

Der "unpack"- Befehl setzt führende Nullen vor den eigentlichen Wert.

Re: 0 in ein Feld bei Select Option reinschreiben

Beitrag von ewx (Top Expert / 4918 / 332 / 655 ) »
Nimm Typ NUMC, dann hast du intern immer führende Nullen. Ohne Zusatzprogrammierung.
Wenn du zwingend die führenden Nullen zeigen möchtest, dann nutze einen Konvertierungsexit.

Re: 0 in ein Feld bei Select Option reinschreiben

Beitrag von qyurryus (Specialist / 117 / 88 / 47 ) »
Wie ist die Select-Option denn typisiert und wie wird sie weiterverwendet?

Wenn es beispielsweise eine Range of VBELN ist, wobei VBELN bekanntlich 10 Stellen hat, sollte das ergänzen von führenden Nullen ja unnötig sein, wenn man es in Selects verwendet.

Unabhängig davon könntest du statt eines Konvertierungsexits in Form eines Funktionsaufrufs auch inline z.B. folgendes tun:

Code: Alles auswählen.

<wa_nrt>-low = |{ <wa_nrt>-low alpha = in }|. 

Seite 1 von 1

Über diesen Beitrag


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

Aktuelle Forenbeiträge

Feldroutine ADSO Transformation
vor einer Woche von codemaster1 2 / 63712
Stücklisten
vor einer Woche von Selma.schwarz 1 / 65469
Belege
vor einer Woche von Selma.schwarz 1 / 63580

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.

Vergleichbare Themen

Select-Option Feld verlängern/verbreitern
von Bright4.5 » 29.01.2019 08:27
Ausgabe des Wertes von Select-Option-Feld (Datum)
von grossmic » 02.12.2008 08:28
Select-Option füllen auf Grundlage anderes Feld
von mazu » 18.10.2018 16:29
SELECT Wertepaar Select-Option
von myllertym » 12.08.2013 10:39
SELECT * Where Datum = select-option-low
von abapfreshman » 17.09.2021 00:24

Aktuelle Forenbeiträge

Feldroutine ADSO Transformation
vor einer Woche von codemaster1 2 / 63712
Stücklisten
vor einer Woche von Selma.schwarz 1 / 65469
Belege
vor einer Woche von Selma.schwarz 1 / 63580

Unbeantwortete Forenbeiträge

Stücklisten
vor einer Woche von Selma.schwarz 1 / 65469
Belege
vor einer Woche von Selma.schwarz 1 / 63580