ABAPlerv hat geschrieben: ↑31.10.2022 13:36
Wie findet man den richtigen BAPI oder Klasse, die eine SAP Tabelle bearbeitet oder neue Einträge pflegt?
Verwendungsnachweis ist oft zu mühsam, da zu viele Objekte sind..
Da gibt es keine pauschale Vorgehensweisen. Letztlich macht es die Erfahrung!
Grundsätzlich sollte man das Speichern von Daten nicht direkt auf der Tabelle betrachten, sondern vielmehr die Anwendung (Quellcode) der dazu führt, dass die Daten genau in dieser Tabelle landen. Auf dem Weg in die DB-Tabelle finden nämlich diverse Prüfungen und ggf. Ergänzungen statt. Wenn einen Fuba oder Klasse speziell für eine DB-Tabelle sucht, dann kann im Grunde die Änderung auch gleich per SQL machen.
Erster Anhaltspunkt sind die BAPIs, da diese von der SAP offiziell freigegeben sind.
Dann kommt die Erfahrung:
- für Nachrichten und Notizen gibt es z.B. verschieden Fubas im ENNO-Paket. Hier schreibt man nicht direkt in die DB-Tabelle (STXH,...).
- Für den Geschäftspartner (oder Vertragskonto bzw. Vertragsgegenstand) gibt es BAPI oder wenn man sich auskennt, kann man auch die Fremdpflege-Fubas (BUS_FOREIGN*) verwenden.
- Wenn man gar nichts finden, dann muss man suchen, wie es die SAP in ihren Transaktionen/Reports macht. Aber auch hier gibt es Fallstricke. z.B. kann man nicht einfach einen Fuba, der im Report gerufen wird im Batch oder Weboberfläche verwenden. Hier muss man prüfen, ob dieser vielleicht Popups öffnet oder "hart" Meldungen per MESSAGE absetzt. Im Worst-Case muss diesen Fuba kopieren und dann für seine Bedürfnisse anpassen.