Führende Nullen dynamisch über Domäne

Alles rund um die Sprache ABAP®: Funktionsbausteine, Listen, ALV
4 Beiträge • Seite 1 von 1
4 Beiträge Seite 1 von 1

Führende Nullen dynamisch über Domäne

Beitrag von John Monooxid (ForumUser / 2 / 0 / 0 ) »
Hallo liebe ABAP Gemeinde, ich habe folgendes Problem:

Ich lade eine Exceltabelle in eine SAP Tabelle. Teil dieses Excel Dokuments sind die Domäne, Wert_alt und Wert_neu. Das hochladen klappt auch wunderbar, nur muss nun durch mein Programm erkannt werden, welche Domäne jeweils verwendet wird und daraus folgend Wert_alt und Wert_neu mit führenden Nullen aufgefüllt werden, je nachdem, ob die Werte numerisch oder alphanumerisch sind. Wenn numerisch, fülle auf, wenn alphanumerisch, fülle nicht auf.

Den tollen Fuba 'CONVERSION_EXIT_ALPHA_INPUT' kann ich ja sicherlich nicht nutzen, oder? Denn in meinem Excelfile habe ich verschiedene Dömanen...

Hat jemand einen Tipp für mich? :roll:
Vielen Dank im Voraus.

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


Beitrag von airwaver (Specialist / 134 / 0 / 1 ) »
Mit dem FB 'DD_DOMA_GET' erhälst du Infos zur Domäne, unter anderem auch die Länge und den Typ. Die 2 Werte kannst du doch im Programm abfragen und dann ggf. mit Nullen auffüllen.
Zum Nullenauffüllen müsstest du dir halt ein Unterprogramm schreibn, in das du dein WERT_ALT und WERT_NEU reingibst und WERT_NEU dann mit Nullen aufgefüllt wird.

Code: Alles auswählen.

data: wert_alt type char10,
      wert_neu type char10,
      domname  type domname.

wert_alt = '12345'.
domname  = 'NUM10'.

perform nullen_auffuellen using wert_alt wert_neu domname.

write:/ 'ALT = ', wert_alt.
write:/ 'NEU = ', wert_neu.


form nullen_auffuellen using l_wert_alt type char10
                             l_wert_neu type char10
                             l_domname  type domname.
  data: laenge type i,
        off type i value 0,
        dd01v type dd01v,
        dd07v type table of dd07v.

  l_wert_neu = l_wert_alt.

  laenge = strlen( l_wert_neu ).

  call function 'DD_DOMA_GET'
   exporting
     domain_name         = l_domname
   importing
     dd01v_wa_a          = dd01v
   tables
     dd07v_tab_a         = dd07v
     dd07v_tab_n         = dd07v.

  if dd01v-datatype = 'NUMC'.

    shift l_wert_neu right deleting trailing space.

    do dd01v-leng times.

      off = sy-index - 1.
      if l_wert_neu+off(1) is initial.
        l_wert_neu+off(1) = '0'.
      else.
        exit.
      endif.

    enddo.

  endif.

endform.

Beitrag von ereglam (Top Expert / 1829 / 2 / 7 ) »
Hallo,

wenn in der Domäne ein Konv-Exit gepflegt ist, sollte man damit den Conv-FB aufbauen und aufrufen:

Code: Alles auswählen.

IF dd01v-convexit IS NOT INITIAL.
  CONCATENATE
    'CONVERSION_EXIT_'
    dd01v-convexit 
    '_INPUT' 
    INTO lv_conv_fb.
  CONDENSE lv_conv_fb NO-GAPS.
  CALL FUNCTION lv_conv_fb
    EXPORTING
      input         = l_wert_alt
    IMPORTING
      output        = l_wert_neu.
ENDIF.
QED
Gruß
Ereglam


May the Force be with your code
|| .| |.|| | .... . ..|. ||| .|. |.|. . |... . .|| .. | .... |.|| ||| ..| .|. |.|. ||| |.. .

Beitrag von John Monooxid (ForumUser / 2 / 0 / 0 ) »
Edit:

Danke an alle, es funktioniert :wink:

Seite 1 von 1

Vergleichbare Themen

9
Antw.
9226
Views
Führende Nullen
von Beginner014 » 24.10.2014 08:51 • Verfasst in ABAP® für Anfänger
18
Antw.
16113
Views
führende Nullen
von tabea* » 14.04.2007 09:21 • Verfasst in ABAP® für Anfänger
5
Antw.
15442
Views
Führende Nullen auffüllen
von ChrissixD » 24.03.2017 12:59 • Verfasst in ABAP® für Anfänger
22
Antw.
74885
Views
Führende Nullen löschen
von thomasxy » 27.11.2007 15:08 • Verfasst in ABAP® Core
4
Antw.
4053
Views
GUI_DOWNLOAD -> führende Nullen
von holderda » 19.05.2014 09:54 • 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

SFP/SEGW - Fehler beim Rendering
vor 6 Tagen von Manfred K. 1 / 20812
Pflegeview zeigt nicht alle Daten an
vor einer Woche von sapdepp gelöst 7 / 21285
ALV Grid und Dynprofeld
vor einer Woche von PeterPaletti 5 / 20884

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

SFP/SEGW - Fehler beim Rendering
vor 6 Tagen von Manfred K. 1 / 20812
Pflegeview zeigt nicht alle Daten an
vor einer Woche von sapdepp gelöst 7 / 21285
ALV Grid und Dynprofeld
vor einer Woche von PeterPaletti 5 / 20884

Unbeantwortete Forenbeiträge

SFP/SEGW - Fehler beim Rendering
vor 6 Tagen von Manfred K. 1 / 20812
Benutzerdefinierte Felder PSP
letzen Monat von Rabea1103 1 / 71256
Spool vereinen OTF und PDF
January 2026 von anna2205 1 / 87296
XSLT und Loipro05 Transformation
December 2025 von Torsten1965 1 / 99131