Format xx oder xx-xx oder xx-xx-xx

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

Format xx oder xx-xx oder xx-xx-xx

Beitrag von HH_ABAP (Specialist / 119 / 39 / 1 ) » 13. Jun 2019 17:52

Hallo,

meine Frage:
ich sollte nach einem Upload Prüfungen durchführen.

Es sollte bei einem Feld z.B. "ATA" Format xx oder xx-xx oder xx-xx-xx sein ( x ist eine Nummer).
Ich weiß, SPLIT hilft aber wie kann ich die Prüfung zu Ende durchführen?
Kann jemand mir bitte weiter helfen?

Danke im Voraus!


Re: Format xx oder xx-xx oder xx-xx-xx

Beitrag von ewx (Top Expert / 3982 / 164 / 372 ) » 14. Jun 2019 12:00

und wo ist jetzt dein Problem?
Ich sehe noch keinen Anfang...

Re: Format xx oder xx-xx oder xx-xx-xx

Beitrag von HH_ABAP (Specialist / 119 / 39 / 1 ) » 14. Jun 2019 12:05

Hallo,

ja, eben.

Wie kann ich Inhalt von einem Feld aus einer Interne Tabelle prüfen, ob Format xx oder xx-xx oder xx-xx-xx
hat?

Vielen Dank & Grüße

Re: Format xx oder xx-xx oder xx-xx-xx

Beitrag von DeathAndPain (Top Expert / 1064 / 123 / 232 ) » 14. Jun 2019 12:47

Ist jetzt die interne Tabelle als Datenquelle das Problem oder die Feldprüfung selbst?

Die interne Tabelle kannst Du durchloopen und die Feldwerte einzeln prüfen. Die Feldprüfung lässt sich vermutlich per Regex machen, oder halt händisch in etwa so:

Code: Alles auswählen.

DATA: feldlaenge TYPE I,
      format_ist_richtig TYPE BOOLEAN_FLG.

LOOP AT tab ASSIGNING FIELD-SYMBOL(<tab>).
  CLEAR format_ist_richtig  .
  feldlaenge = STRLEN( <tab>-zu_pruefendes_feld ).
  case feldlaenge.
    when 2.
      format_ist_richtig  = 'X'.
    when 5.
      if <tab>-zu_pruefendes_feld+3(1) = '-'.
        format_ist_richtig  = 'X'.
      endif.
    when 8.
      if  <tab>-zu_pruefendes_feld+3(1) = '-'
      and <tab>-zu_pruefendes_feld+5(1) = '-'
        format_ist_richtig  = 'X'.
      endif.
  endcase.

* Abhängig von format_ist_richtig irgendwas machen
ENDLOOP.
Statt des CASE-Konstruktes kann man ab Release 7.40 natürlich auch einen eleganten SWITCH bauen.

Re: Format xx oder xx-xx oder xx-xx-xx

Beitrag von black_adept (Top Expert / 3254 / 54 / 572 ) » 14. Jun 2019 14:43

Code: Alles auswählen.

find regex '^(\d\d|\d\d-\d\d|\d\d-\d\d-\d\d)$' in ...
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Seite 1 von 1

Aktuelle Forenbeiträge

Spaltennummer-Umwandlung Excel.
vor 7 Stunden von black_adept 5 / 59
Dynamische SELECT-Anweisung gelöst
vor 9 Stunden von mareikemei92 3 / 25
Transaktion VL06 Verteilung ausgehender Lieferungen
vor 13 Stunden von SAP_ENTWICKLER 1 / 22
In welcher Tabelle ist die Bezeichnung einer Kostenstelle? gelöst
vor 13 Stunden von wreichelt 2 / 29
Eigener Knopf im Ausgabefenster
vor 14 Stunden von LostDarkness 4 / 190

Unbeantwortete Forenbeiträge

Transaktion VL06 Verteilung ausgehender Lieferungen
vor 13 Stunden von SAP_ENTWICKLER 1 / 22
FuBa EXIT_SAPLVEDC_003 S/4 1809
vor 2 Tagen von SAP_ENTWICKLER 1 / 70
CDS VIEW mit BOPF Framework update
vor 5 Tagen von Abapanfänger 1 / 67
SAP Document Builder: Dokumenterzeugung
vor 6 Tagen von robin.heidrich 1 / 170
Lohnsteuerbescheinigung
vor 6 Tagen von kaim77 1 / 104