hi!
Ich hab mir da mal selber eine Umwandlungsklasse für diverse Datumsformate geschrieben. (Ich war zu faul im SAP zu suchen und ist eigentlich eine tolle Programmierübung) --> Die hier zu posten würde glaub ich den Rahmen einer "Hilfestellung" sprengen.
Hier ein paar Eckpunkte die zu beachten wären, wenn du es selbst versuchen möchtest:
- Du solltest dich ein wenig in RegEx (Reguläre Ausdrücke) auskennen. Es geht zwar auch ohne, aber mit ist es leichter

- Die Regex für dein Beispiel zum Einlesen wäre übrigens '([0-9]{1,2}) ([a-zA-ZöüäÖÜÄ]+)( [0-9]{1,4})?'
- In den Submatches des FIND-Befehls findest du nun auf Index 1 den Tag, auf Index 2 den Monat und auf Index 3 wenn vorhanden das Jahr.
- Den Monat kannst du dann entweder hardcoded auf 'Jänner' usw. abfragen oder du verwendest die Tabelle T247
- Den Wochentag findest du übrigens unter T246
- Aus diesen Informationen solltest du dir das Datum zusammenbasteln können und in ein Feld vom Typ D speichern
- Zum Ausgeben, musst du dann nur das Datum in die Bestandteile auftrennen und wie gewünscht in ein Textfeld schreiben oder du schreibst dir eine "Konvert.Routine" die du bei der Domäne des Datenelements hinterlegst. Dann wandelt das ALV-Grid die Daten bei der Ausgabe für dich um.
- Alternativ kannst du die Konvert.Routine auch im Feldkatalog hinterlegen. (glaub ich)
lg ADT
P.S.: das interne Datumsformat in SAP ist JJJJMMDD. Mit DATUM+4(2) kannst du z.B. die Monatsnummer herausholen. Nur falls du das noch nicht selbst festgestellt hast
EDIT: black_adept hat einen kleinen Fehler in der Regex entdeckt: '([0-9]{1,2})\. ([a-zA-ZöüäÖÜÄ]+)( [0-9]{1,4})?' Der Punkt nach dem Tag hat gefehlt. Und dass das Jahr ein- bis vierstellig sein darf ist nur um die Regex ein wenig fehlertoleranter zu machen.
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