Code: Alles auswählen.
keine Berechtigungsgruppe vorhanden mit folgenden Tabellen:
Folgende Benutzer bedankten sich beim Autor Frank Dittrich für den Beitrag:
thomy_der_genuss
Dein Vorschlag über SE16n etc. ist leider nicht so angenommen worden. Deshalb habe ich einen Pflegedialog je Tabelle angelegt (wie im Tricktresor beschrieben inkl. eigener Transaktion). Klappt soweit super! Das Änderungskennzeichen ist in jeder Tabelle für jedes Datenelement gesetzt.ewx hat geschrieben:Mit Transaktion SE16n werden Änderungsprotokolle geschrieben. Auswertung mit RKSE16N_CD
Se16n kann einfach über Funktionsbaustein SE16N_INTERFACE für eigene Tabellen im Änderungsmodus aufgerufen werden.
Im Tabellenpflegegenerator kann man selbst entscheiden, ob eine Aufzeichnung im Transportauftrag erfolgen soll, oder nicht: http://www.tricktresor.de/content/index ... 30&aID=366
Genau! Du musst noch den Zeitpunkt "Nach Sichern Der Daten" aktivieren und wie beschrieben ausprogrammieren.chfreise hat geschrieben:Liegt es daran, dass ich dennoch den entsprechenden Verbucher-FuBa aufrufen muss?
Sprich - vor Aufruf der Transaktion den aktuellen Stand der Tabelle in einer internen Tabelle merken und anschließend nochmal und beide interne Tabellen an den Verbucher-FuBa übergeben?
Wir haben unserem Kunden per Transportauftrag die Änderungsprotokollierung zu einer unserer Tabellen aus unserem Namensraum gesendet. Sie ist bei ihm jetzt aktiv, trotzdem sieht er nur die von Dir direkt über diesem Zitat beschriebene Ausgabe der SCU3. Ist Deine zitierte Aussage so zu verstehen, dass die Änderungen sich in der SCU3 nur anzeigen lassen, wenn es auch einen Tabellenpflegedialog für die SM30 gibt? So verstehe ich nämlich die Aussage, dass man mit diesem Dialog auch die "alten" Änderungen finden kann. Ich weiß nicht, ob Du meinen Fragestandpunkt nachvollziehen kannst, deshalb formuliere ich nochmals um:Das liegt daran, dass es zu Deinen Tabellen noch keinen TDDAT-Eintrag gab.
Wenn Du den SM30-Dialog für die Tabelle und nicht für eine View auf die Tabelle oder für die Fremdschlüsseltabelle zu einer Tabelle, die Texttabelle ist) generiert hast, gibt es inzwischen auch einen TDDAT-Eintrag.
Dann solltest Du jetzt auch die "alten" Protokolle zu der Tabelle auswerten können.
Dann hast Du also diesen Thread über eine Google-Suche gefunden?thomy_der_genuss hat geschrieben: Wir haben unserem Kunden per Transportauftrag die Änderungsprotokollierung zu einer unserer Tabellen aus unserem Namensraum gesendet.
Sie ist bei ihm jetzt aktiv, trotzdem sieht er nur die von Dir direkt über diesem Zitat beschriebene Ausgabe der SCU3.
Nein, auch ohne SM30-Dialog für die Tabelle oder eine View auf die Tabelle kann man sich Änderungen anzeigen lassen, wenn es einen TDDAT-Eintrag zur Tabelle gibt (und man die S_TABU_DIS-Berechtigung für die in der TDDAT angegebene Berechtigungsgruppe hat).Ist Deine zitierte Aussage so zu verstehen, dass die Änderungen sich in der SCU3 nur anzeigen lassen, wenn es auch einen Tabellenpflegedialog für die SM30 gibt? So verstehe ich nämlich die Aussage, dass man mit diesem Dialog auch die "alten" Änderungen finden kann.
Nein. Der Pflegedialog war eher eine hinreichende Bedingung (weil dann der TDDAT-Eintrag erzeugt wird), kein notwendige.Ich weiß nicht, ob Du meinen Fragestandpunkt nachvollziehen kannst, deshalb formuliere ich nochmals um:
"Muss ich einen Tabellenpflegedialog generieren, um die Tabellenänderungen auch mit der SCU3 (oder einer anderen Transaktion bzw. einem anderen Programm) ansehen zu können?"
Weil man manche Dinge z.B. direkt im Produktivsystem ändern können möchte, ohne extra eine entsprechende Anwendung programmieren zu müssen, wo doch die SM30 schon fast genau das tut, was man will, und den Zeitverzug und organisatorsichen Overhead, der mit Transportieren verbunden ist, vermeiden will.UserBC hat geschrieben: warum ist es nicht erwünscht einen Transporrtauftrag zu bekommen ?
Das sehe ich natürlich genause. Ich habe ja auch nie dafür plädiert, die SE16/SE16N zur Änderung von Tabelleninhalten zu benutzen.UserBC hat geschrieben:Auch dann ist es kein Grund die SE16/SE16N zu versenden.
Man kann auch das Pflegeobjekt so anpassen, dass keine Abfrage eines Transportauftrags hochkommt, selbst wenn die Tabelle eine Customizing-Tabelle ist.Dann stellt man die Tabelle (wie bereits gesagt) einfach auf Anwendungstabelle um
Das mit dem Overhead bezog sich eher auf den Vergleich dieser beiden Aktivitäten:EInen Overhead kann ich da nicht erkennen
Ja, könnte man.thomy_der_genuss hat geschrieben:Ich bin ehrlich gesagt neugierig, wieso Du auf Google schließt, wo ich doch auch im Forum direkt hätte gesucht haben können ...Na ja, ich habe einfach von mir auf andere geschlossen.
Und ich hätte halt bei Google gesucht und die Phrase in Anführungszeichen eingegeben, um zu sehen, ob das Problem schon mal diskutiert wurde.
(Wenn nicht, hätte ich mich vermutlich sogar noch mal mit SY-LANGU 'E' angemeldet, und die Phrase bei Google eingeworfen.
Ansonsten hätte ich ja in mindestens drei verschiedenen Foren suchen müssen, mich damit herumärgern müssen, dass die Suche nach einer Phrase gae nicht richtig funktioniert und ich unter Umständen also jede menge irrelevanter Threads durchwühlen muss, wo nur zufällig die Wörter aus meinr Phrase vorkommen.
Noch mal zur Klarstellung, das ist kein Problem fehlender Berechtigung des Anwenders.Inzwischen bin ich mir recht sicher, dass unser Kunde einfach kein S_TABU_DIS auf Tabellen ohne Berechtigungsgruppe hat.
Selbst mit SAP_ALL scheitert man hier, weil SAP gar nicht erst bis zum AUTHORITY-CHECK OBJECT 'S_TABU_DIS' ... kommt, falls kein TDDAT-Eintrag gefunden wird.
Das ist ja das Absurde.
Allerdings war der Ansprechpartner heute nicht da. (Ich schätze, die anderen Kunden mit diesem Tabellenprotokollierungswunsch haben an dieser Stelle ihr Berechtigungskonzept nicht entsprechend ausgeprägt, das würde erklären, warum das bei denen nicht aufgetreten ist.) Ich hab ihm drei Vorschläge gemacht, wie er das herausfinden kann. Mal sehen, wenn es das nicht war, dann muss ich wohl nochmal hier nachfragen.
Bei meiner heutigen Suche, die wegen Deiner gut verständlichen Beschreibung schon viel klarer verlief, fand ich dann auch, dass es möglich ist, mit der SE54 ganz regulär Berechtigungsgruppen für Tabellen anzulegen sowie einzelne Tabellen mit Berechtigungsgruppen zu hinterlegen. (Das erzeugt dann wahrscheinlich noch nicht den TDDAT-Eintrag. Muss ich am Montag noch untersuchen.) Wenn ich also mit meiner Vermutung recht habe, dann ist das ein klasse Mittel, das Problem zu umgehen, dass Berechtigungsgruppen nicht namensraumfähig sind. Der Kunde kann sich das dann selbst zurechtlegen. Da die TBRG Tabellenklasse "G" hat, ergibt sich eigentlich nicht mal das typische Problem mit Modifikationen.
Wenn das nicht funktioniert, dann muss ich den TDDAT-Eintrag (mit der vom Kunden gewünschten Berechtigungsgruppe) halt erzeugen und mit einem Transportauftrag hinschicken.
Das Verhalten der Dummy-Berechtigungsgruppe "&NC&" finde ich noch recht obskur: Wenn ich es richtig sehe, pflege ich den TDDAT-Eintrag wirklich mit dem Inhalt "&NC&". Muss der Benutzer dann in seiner Rolle zu S_TABU_DIS ebenfalls "&NC&" gepflegt haben, oder muss es/kann es ein leerer Eintrag sein? (Nachher weiß das nämlich der Berechtigungsadmin beim Kunden auch nicht und ich kann nicht mal antworten ... Gut, könnte man auch ausprobieren.)