Ansicht
Dokumentation
CUSTES10 - Checkreport: Suche von Datumsfeldern in Customizingtabellen
Fill RESBD Structure from EBP Component Structure Vendor Master (General Section)Diese Dokumentation steht unter dem Copyright der SAP AG.
Projekt 2000 - der Report CUSTES10
Das SAP R/3 System ist auf das Jahr 2000 vorbereitet, da seine Konzeption von Grund auf vierstellige Jahreszahlen vorsieht.
Dieses Programm soll lediglich dazu dienen, eine erhöhte Sicherheit für den Jahrtausendwechsel
zu gewährleisten. Das Problem, daß Gültigkeitszeiträume für Objekte
auslaufen, kann zu jedem Zeitpunkt der Fall sein und ist ein Problem, was in jedem EDV System auftritt.
Mit diesem Programm möchten wir Ihnen ein Tool zur Verfügung stellen, um Ihre Customizing Einstellungen im Hinblick auf den Jahrtausendwechsel effizient zu überprüfen.
Beschreibung der Arbeitsweise des Reports
Der Report dient dem Auffinden von Customizing Tabellen, die das Jahresdatum 31.12.1999 oder die Jahreszahl
1999 enthalten. Nach unserer Auffassung sollten alle Customizing Tabellen,die dieses Datum enthalten,
überprüft werden, ob mit dem Datum ein Gültigkeitszeitraum verbunden wird und falls
ja - ob eine korrekte Verlängerung dieses Zeitraums vorhanden ist. Da das Programm zum einen
nicht feststellen kann, ob das Datumsfeld überhaupt einen Gültigkeitszeitraum definiert
und zum anderen nicht feststellen kann, ob der Gültigkeitszeitraum schon verlängert ist, ist zu beachten, daß nicht jeder ermittelte Treffer automatisch ein Fehler ist.
Um eine Kontrollmöglichkeit über die Abarbeitung zu bieten, wird ein IMG Projekt erzeugt.
Auswertungen über den Fortschritt des Projektes können über die IMG Funktionalität
erfolgen, ein wiederholtes Starten des Reports zur Ergebniskontrolle ist aus o.g. Gründen eher nicht sinnvoll.
Selektionsbild - Eingabeparameter
Prinzipiell ist das Selektionsbild so voreingestellt, daß alle Customizingtabellen nach den o.g. Feldinhalten abgesucht werden.
Unabhängig davon können Sie selbst Einstellungen vornehmen und z.B. nur bestimmte Tabellen überprüfen.
Das Selektionsbild ist in 3 Bereiche eingeteilt:
- Parameter, die die zu prüfende Tabellenmenge festlegen
- Parameter, die den Suchbegriff und die zu untersuchenden Felder festlegen
- Steuerungsparameter für die Statistik und das Customizing-Projekt
Menge der zu prüfenden Tabellen
Für das Festlegen der
Tabellenmenge stehen 2 alternative Möglichkeiten zur Verfügung: Alle Customizingtabellen
oder eine selbstdefinierte Auswahl der Customizingtabellen (z.B. nur eine bestimmte Tabelle). Viele
Tabellen die prinzipiell das Datum 31.12.1999 enthalten könnten aber unproblematisch sind, wurden
von uns bereits ermittelt und in das Programm integriert. Durch die Auswahl der Checkbox "von SAP als
unkritisch definierte Tabellen" kann die Prüfung für diese Tabellen abgeschaltet werden.
Sie haben die Möglichkeit unter dem Eingabefeld "von Kunden als unkritisch definierte Tabellen"
Tabellen einzutragen und für diese die Prüfung abzuschalten. Unter Umständen kann
dies auch notwendig sein, falls einzelne Tabellen in Ihrem System nicht aktiviert sind und der Report
abbricht. Die auf dem Selektionsbild von Ihnen selbst eingetragenen Parameter können Sie -incl. der Tabellenliste- als Variante sichern.
Festlegen des Suchbegriffs
Der erste Suchbegriff besteht nur aus der
Jahreszahl, die von Ihnen z.B. Testzwecken abgeändert werden kann. Der zweite Suchbegriff ist diese Jahreszahl, ergänzt durch den String "1231", wodurch auf das Jahresende geprüft wird.
Umfang der Ausgabe
Die Ausgabeliste sollte prinzipiell nicht so groß
werden, da sie -je nach Trefferanzahl- die Spool Kapazität sprengen kann. Da es am wichtigsten
ist zu wissen, ob eine Tabelle überhaupt einen Datensatz mit dem Datum enthält, gibt es
die Begrenzung der maximalen Trefferanzeige. Es werden nur maximal soviele Datensätze ausgegeben
wie der Parameter vorgibt, bis 1000 Treffer werden die Datensätze gezählt und die gefundene
Anzahl ausgegeben. Bei Tabellen mit mehr als 1000 Datensätzen wird dies lediglich vermerkt. Um
die Vollständigkeit der Prüfung zu verifizieren, können Sie alle Tabellen -auch
die ohne Treffer- ausgeben. Dazu steht der Parameter "vollständige Tabellenliste" zur Verfügung.
Wie oben schon erwähnt, kann ein IMG Projekt erzeugt werden, das die Aktivitäten enthält
um die Tabellen mit Treffer zu pflegen. Als Projektnummer wird die nächste freie Projektnummer nach 100 vorgeschlagen.
Ausgabeliste
Um Ihnen die Vorgehensweise der Überprüfung im System genauer zu erläutern, wird
im folgenden das Protokoll zu einer Tabelle näher erklärt. Die letzte Spalte 'Zeile' wurde
zur besseren Bezugnahme aufgenommen und ist im Orginalprotokoll nicht enthalten. Nachfolgend werden die Schritte zur Überprüfung bez. Korrektur erläutert.
Zeile
----------------------------------------------------------------01
CSKS
Kostenstellenstammsatz L.Änderer :SAP 02
KS02 SIMG SIMG_CFMENUORKSKS031
Verantw. :SAP 03
KS08 SIMG SIMG_CFMENUORKSSOVA
Verantw. :SAP 04
KS01 SIMG SIMG_CFMENUORKSKR01
Verantw. :SAP 05
KS02 SIMG SIMG_CFMENUORKSKS03
Verantw. :SAP 06
KS01 SIMG SIMG_CFMENUORKSKS02
Verantw. :SAP 07
KS01 SIMG SIMG_CFMENUORKSKS03
Verantw. :SAP 08
KS02 SIMG SIMG_CFMENUORKSKS02
Verantw. :SAP 09
KS01 SIMG SIMG_CFMENUORKSKS031
Verantw. :SAP 10
MANDT KOKRS KOSTL DATBI
DATAB ERSDA BUKRS GSBER 11
003 0001 2706
31.12.1997
12
003 0001 4200
31.12.1997
13
CSKS Anz.:89
SAP DevClass: KBAS Kostenstellenstamm 14
----------------------------------------------------------------15
Erläuterung der Zeile 01 und 15 :
Die Zeilen dienen der Übersichtlichkeit und trennen die Angaben der
unterschiedlichen Tabellen.
Zeile 2 :
CSKS
- Technischer Name der Tabelle
Kostenstellenstammsatz - Kurztext der Tabelle
L.Änderer :SAP - letzter Änderer der Tabellenstruktur hier SAP
Zeilen 03 bis 10 :
erste Spalte : Transaktionscode der IMG Aktivität
zweite Spalte : SIMG Bedeutet IMG Aktivität
dritte Spalte : Schlüssel der IMG Aktivität
vierte Spalte : Verantwortlicher der IMG Aktivität hier SAP
Mit diesen Aktivitäten und Transaktionen ist die Tabelle pflegbar. Leider können pro Tabelle
mehrere Aktivitäten stehen, da sie unterschiedliche Felder der Tabelle pflegen. An dieser Stelle
bleibt nichts anderes übrig, als die einzelnen Aktivitäten auszuprobieren. Dies sind auch
die Aktivitäten die in das IMG Projekt aufgenommen werden. Die Anzahl dieser Zeilen variiert sehr stark von Tabelle zu Tabelle.
Zeile 11 :
Für die nachfolgenden Datenspalten werden die Feldnamen der Tabelle ausgegeben.
Es werden nur Schlüsselfelder und 4- beziehungsweise 8-stellige Datenfelder angezeigt. Während
bei einem Datensatz die Schlüsselfelder immer gefüllt sind, werden die Inhalte der Datenfelder
nur bei Übereinstimmung mit dem Suchkriterium angezeigt, ansonsten werden sie aus Datenschutzgründen
ausgeblendet. Bei einigen Tabellen erfolgt aufgrund der Vielzahl an Tabellenfeldern ein Zeilenumbruch.
MANDT KOKRS KOSTL DATBI DATAB ERSDA BUKRS GSBER DRNAM
Zeile 12:
Werte der Tabellenfelder, hier :
MANDT 003
KOKRS 0001
KOSTL 2706
DATBI
31.12.1999 <- entspricht dem Suchkriterium
DATAB (keine Anzeige)
ERSDA (keine Anzeige)
BUKRS (keine Anzeige)
GSBER (keine Anzeige)
DRNAM (keine Anzeige)
Zeile 13:
Werte der Tabellenfelder, hier :
MANDT 003
KOKRS 0001
KOSTL 4200
DATBI 31.12.1999 <- entspricht dem Suchkriterium
DATAB (keine Anzeige)
ERSDA (keine Anzeige)
BUKRS (keine Anzeige)
GSBER (keine Anzeige)
DRNAM (keine Anzeige)
Diese Zeilen können in sehr unterschiedlicher Anzahl auftreten.
Zeile 14 : Die Zeile enthält nochmals den Tabellennamen, die Anzahl der Treffer, den Ersteller (im Bsp. SAP), die Entwicklungsklasse und den Kurztext. Diese Zeile enthält den Text Anz., dieser ermöglicht eine einfache Aufstellung LISTE -> SUCHEN NACH der Text >ANZ.:< im angezeigten Spoolauftrag gesucht wird.
Weitere Schritte :
Dadurch, daß das Programm IMG-Aktivitäten gefunden hat, die der
Tabelle zugeordnet wurden, werden die entsprechenden Zugriffe im Customizingprojekt anwählbar.
Dort erhalten Sie weiterführende Informationen bezüglich der Einstellungen. Es kann leider
nicht ausgeschlossen werden, daß einige angezeigte IMG-Aktivitäten die Pflege der Datumsfelder nicht erlauben. Versuchen Sie die Einträge über die anderen IMG-Aktivitäten zu pflegen.
Folgende Status können beim Prüfen einer Tabelle auftreten:
- Tabelle entspricht dem Feldauswahlkriterium nicht
T053A nicht geeignet SAP DevClass: FBAS Sele
- Tabelle ist von SAP als nicht zu prüfen deklariert
TNAD5 von SAP als nicht zu prüfen deklariert
- Tabelle ist vom Kunden von der Prüfung ausgeschlossen worden
TNAD9 als nicht zu prüfen deklariert
- Tabelle entspricht dem Feldauswahlkriterium enthält aber keine Treffer
T051A Anz.:0 SAP DevClass: FBMW Kont
Für den direkten Zugriff stehen Ihnen im Protokoll der Transaktionsname zur Verfügung. Bitte beachten Sie, daß Sie u.U. nur einen Teil der Einträge pflegen können. (Dies ist im Transaktionsaufbau begründet.) Durch ein Abarbeiten der Transaktionen sollten Sie alle Einträge pflegen können.
Pflegen der Einträge : Eine Pflege der Einträge ist nur erforderlich, wenn die Einträge durch die Datumsangabe eine unerwünschte zeitliche Begrenzung erfahren. In diesem Falle ist eine Verlängerung notwendig.
Der überwiegende Anteil der Einträge wird sich durch einfaches Ändern des Bis-Datums verlängern lassen. Für andere Objekte ist dies nicht möglich, so daß nur durch das Hinzufügen eines neuen Eintrages eine korrekte Funktion vorhanden ist. Dies hängt stark von Kontext ab und sollte im Zweifelsfall durch einen Berater geklärt werden.
Durch die vollständige Schlüsselangabe sollten Sie auch bei mehrstufigen Views die richtigen Eingaben vornehmen können.
IMG Projekt - Ausführen der Aktivitäten
Näheres zur IMG Funktionalität steht in der
Der Unterschied zum 'normalen' Customizing bei der R/3 Einführung besteht darin, daß hier die Entscheidung zu treffen ist, Werte abzuändern oder neue Datensätze, die den Zeitraum verlängern, einzupflegen. Ein Problem des erzeugten IMG Projektes ist, daß nicht jede Aktivität auch zur Pflege des gewünschten Datumsfeldes führt. Dies rührt daher, daß die Ermittlung der IMG Aktivitäten von den Tabellen ausgeht. Dadurch können die IMG nicht 100% exakt ermittelt werden. Aktivitäten die nicht relevante Felder pflegen, können einfach ignoriert werden.
Die Vorgehensweise in fünf Schritten erläutert
- Starten Sie den Report als Batch Lauf mit seinen Default Einstellungen. Auf die IMG Projekt Erzeugung können Sie zunächst verzichten. Sie müssen den Report in dem System und Mandanten mit dem Sie arbeiten starten (also i.d.R. im Produktivsystem oder einer vollständigen nicht zu alten Kopie des Produktivsystems). Wichtig: auf keinen Fall sollte der Report mehrmals zur gleichen Zeit laufen.
- Verifizieren Sie die Ausgabeliste, vergleichen Sie, ob Tabellen, in denen ein Treffer vorkommt nicht relevant sind, z.B. wenn das Datum keinen Gültigkeitszeitraum festlegt.
- Starten Sie nun den Report mit angepaßten Parametern, die sich aus dem 2. Schritt ergeben haben und erzeugen Sie ein IMG Projekt (je nachdem ob Sie es für richtig halten mit oder ohne vollständiges Tabellenprotokoll).
- Sichern Sie nach Möglichkeit die Liste auf einen PC (oder machen Sie einen Ausdruck) und stellen Sie für die Spool Liste den Status 9 ein, damit Sie im System nicht gelöscht wird.
- Arbeiten Sie das IMG Projekt ab, vorrangig sollten Sie das Customizing der R/3 Module bearbeiten, die Sie vorrangig einsetzen. Vergleichen Sie Ihre Änderungen mit der Liste. Die Schlüsselfelder der Datensätze liefern Ihnen evtl. weitere Informationen.
Technische Arbeitsweise des Reports
Dieser Abschnitt dient dem Systemadministrator oder Programmierer. Für den Benutzer des Reports ist dieser Abschnitt nicht relevant.
Der Report arbeitet so, daß er zunächst die gemäß der Selektion zu bearbeitenden Customizingtabellen ermittelt und für diese die IMG Aktivitäten sucht. Dann werden die Tabellen geprüft. Dazu werden dynamisch Programme generiert, die im Namensraum CUSTxxxx liegen (xxxx steht für eine 4 stellige Zahl.) Pro generiertes Programm werden maximal 25 Tabellen geprüft. Die Programme werden schließlich der Reihe nach über eine Form Routine prozessiert . In diesen Programmen finden dann die einzelnen Select Statements statt, das gewünschte Ergebnis pro Tabelle wird in die Liste ausgegeben. Nach dem erfolgreichen Ausführen werden die Programme gelöscht. Generierte Programme, die nicht gelöscht wurden (evtl. durch einen Programmabbruch verursacht oder durch einen Fehler beim Generieren) können mittels dem Report CUSTES11 gelöscht werden. Ein Programm mit Generierungsfehler wird in der Ausgabeliste vermerkt. Bei dem Ausführen der einzelnen Programme werden die IMG Aktivitäten der Tabellen mit positivem Ergebnis gesammelt, um dann am Ende das IMG Projekt zu erzeugen.
Sicherheit - Datenschutz - Berechtigung
Die Ausgabeliste enthält wie oben beschrieben alle Schlüsselfelder eines Datensatzes und zusätzlich noch das Feld, das das Datum enthält. Es ist daher eher nicht zu erwarten, daß kritische Daten auf dem Bildschirm erscheinen, insbesondere da es sich um Customizing Daten und nicht um Stamm- oder Bewegungsdaten handelt. Dennoch ist eine sehr hohe Berechtigung zum Ausführen des Reports notwendig, um Mißbrauch vorzubeugen. Der Report ist sinnvollerweise vom Customizing Verantwortlichen auszuführen. Es wird dazu die Berechtigung für die "Tabellenpflege (über Standardtools wie zB SM31)" (Objekt: S_TABU_DIS) Feldeinträge '*','*' benötigt.
FAQ - Häufig gestellte Fragen
Der Druckauftrag den der Report im Batchlauf erzeugt hat, ist so groß, daß er nicht mehr angezeigt werden kann !
- Um einen zu großen Druckauftrag zu vermeiden, sollten Sie folgende Punkte beachten: die vollständige Tabellenliste wird eher nicht benötigt, sie kann zwar dazu dienen den Status einer bestimmten Tabelle aufzufinden, ist aber meist nicht nötig. Starten Sie den Report ohne vollständige Protokolliste.
- Der Defaultwert für die Trefferanzeige ist 10, wenn Sie den Wert höher gesetzt haben, sollten Sie ihn zurücksetzen und die Tabellen, die von besonderem Interesse sind, einzeln mit der höhereren Trefferanzeige prüfen.
Ich habe schon 90% meines erzeugten Projektes abgearbeitet, der Report erzeugt aber immer noch eine Liste mit fast den gleichen Einträgen.
- Bereits korrigierte Customizing Einstellungen werden von dem Report nicht erkannt. Die Auswertung und Protokollierung bereits durchgeführter Aktivitäten kann über das IMG Projekt laufen. Das IMG Projekt dient der Orientierung.
Der Report bricht ab mit der Fehlermeldung . Was kann ich tun ?
- Die Fehlermeldung läßt darauf schließen, daß die Tabelle sowieso nicht benutzt wird, da sie wahrscheinlich nicht aktiv ist. Die Tabelle sollte in die Liste der definierten Ausnahmen aufgenommen werden. Dies kann entweder auf dem Selektionsbild geschehen oder am Ende des Quellcodes des Reports.
Der Report bricht beim Ausführen als Batch Job sofort ab, z.B. mit der Fehlermeldung, "Job wurde nach System-Exception ERROR_MESSAGE abgebrochen"
- Es fehlt dem Benutzer die Berechtigung, um den Report auszuführen (siehedazu Kapitel "Sicherheit - Datenschutz - Berechtigung").
- Bei dem Einplanen wurden falsche Eingaben auf dem Selektionbild gemacht, z.B. kann es sein, daß die eingegebene IMG Projektnummer schon belegt ist.
Der Report bricht ab oder das Ergebnis auf der Ausgabeliste ergibt keinen Sinn, da die Anzahl der Treffer nicht stimmt oder eine Tabelle mehrmals geprüft wurde.
- Der Report wurde wahrscheinlich mehrmals zur gleichen Zeit gestartet. Der Report sollte nur einmal zur gleichen Zeit laufen. Es ist zwar prinzipiell möglich ihn mit einer zeitlichen Verzögerung von 20 Min. zu starten, dies sollte aber wenn möglich vermieden werden.
BAL Application Log Documentation PERFORM Short Reference
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 24427 Date: 20240520 Time: 135943 sap01-206 ( 381 ms )