Hallo,
ich habe den Auftrag ein Programm zu erstellen, mit dem es möglich ist, Tabellenänderungen in Masse zu tätigen. Als Basis dient ein Eingabe-File, das im Programm zunächst auf Korrektheit geprüft wird. Wenn alle Prüfungen bestanden sind, erfolgt je nach gewähltem Modus ein Insert, Update oder Delete. Soweit alles schon realisiert. Aber es soll auch wie in der Standard-SE16N im Änderungsmodus protokolliert werden, was geändert wurde. Bei der Standard-SE16N werden die Tabellen SE16N_CD_KEY und SE16N_CD_DATA geschrieben, die mit dem Report RKSE16N_CD_DISPLAY ausgewertet werden können.
Jemand eine Idee, wie ich mit wenig Aufwand diese Protokolltabellen schreiben kann?
Bin für jede Anregung dankbar.
Gruß Cilli
das Protokoll wird automatisch erstellt wenn:
das Häkchen 'Datenänderungen protokollieren' in den technischen Einstellungen der Tabelle setzen. Dann kann man mit der Transaktion SCU3 die Änderungen anschauen.
Gruß Wolfgang
Hallo Wolfgang, auch Standardtabellen sollen mit dem Programm geändert werden können. Ich kann dafür nicht die tech. Einstellungen der Tabellen ändern. Zudem ist die Tabellenprotokollierung im System nicht aktiv. Das ist also leider nicht die Lösung.
Gruß
Christoph
Also die SE16N macht da auch keinen grossartig komplizierten Vorgang. In dem Änderungslog siehst du ja nicht was geändert hat. Dort wird einfach Jede Zeile die sich ändert/gelöscht wird mit dem "Vorher" Stand in diese Tabelle geschrieben. Und zwar ziemlich hart, ohne irgendwelche FuBas oder so (FuGr SE16N - Form "SAVE_CHANGES"). Das kannst du sicher nachbauen wenn das das Ziel sein soll.
Das solltest du mit Änderungsbelegen machen.
Du gibst dem Baustein, der generiert wird, den Stand vorher und nachher mit. Anhand der sich daraus ergebenden Änderungen protokolliert der Baustein dann die Änderungen (abhängig vom Kennzeichen "Datenänderungen protokollieren" im Datenelement).
Die Änderungen kannst du mit dem Standardreport RSSCD100 anzeigen lassen.
Die Änderungen werden in den SAP-Standard Änderungstabellen CDHDR und CDPOS gespeichert. Mit den entsprechenden Funktionsbausteinen kannst du diese auch selber auslesen.