Sie verwenden keine aktuelle Browser-Version. Deshalb wird die Webseite möglicherweise nicht korrekt dargestellt. Hier finden Sie weitere Hinweise.

Erstellen einer Feldliste in AMDP Routinen von BW Transformationen

Inhaltsverzeichnis

Einleitung

Beim Programmieren von AMDP Routinen in BW Transformationen ist es sehr oft nötig eine vollständige Liste der in der Quelle/Ziel vorhandenen Felder zu erstellen.

Um diese Feldlisten einigermaßen automatisiert zu erstellen, kommen häufig Excel Vorlagen zum Einsatz.

In diesem Blog soll ein anderer Weg gezeigt werden, der ohne Excel auskommt und direkt im Eclipse Editor genutzt werden kann. Dafür wird die „Suchen und Ersetzen“ Funktionalität im Zusammenspiel mit regulären Ausdrücken verwendet.

Vorgehen

1. In der AMDP Routine bis zur Typdefinition der gewünschten Struktur hochscrollen. Im Beispiel handelt es sich um die Ausgabetabelle der Endroutine.

Dort alle Felder mitsamt der Typdefinitionen kopieren:

2. Die kopierten Zeilen im Select für die outTab einfügen und, wie auf dem Bild zu sehen, alle Zeilen zwischen SELECT und FROM markieren:

3. Mit STRG + F die Suche aufrufen, die beiden regulären Ausdrücke bei „Find“ und „Replace with“ eingeben sowie die beiden Einstellungen wählen und dann auf „Replace All“ klicken:

Find([^ ]*)( type).*
Replace with:„$1“,

4. Ergebnis:

Jetzt muss nur noch das letzte Komma entfernt werden und die Feldliste ist schon fertig.

Erklärung des regulären Ausdrucks

Erklärung der Suche:

([^ ]*)Erste Gruppe, bestehend aus allem, was nicht Leerzeichen ist.
Nur dieser Teil soll für die Feldliste erhalten bleiben
( type).*Zweite Gruppe, bestehend aus allem was hinter “ type“ kommt. Dieser Teil wird in der Feldliste nicht benötigt

Erklärung der Ersetzung:

Das Zeichen – “ -, welches an den Anfang gesetzt werden soll
$1Referenziert die erste Gruppe, also alles was nicht Leerzeichen ist und vor “ type“ kommt
„,Die Zeichen – „, -, welche ans Ende gesetzt werden sollen

Nehmen Sie Kontakt zu uns auf!

    Mit der Erhebung, Verarbeitung und Nutzung meiner personenbezogenen Daten zur Bearbeitung meiner Anfrage erkläre ich mich einverstanden. Ich kann mein Einverständnis jederzeit ohne Angabe von Gründen widerrufen. Weitere Informationen finden Sie in unserer Datenschutzerklärung.