Ansicht
Dokumentation

CUSTES10 - Checkreport: Suche von Datumsfeldern in Customizingtabellen

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.
SAP E-Book

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 Dokumentation zum Customizing.

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

  1. 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.
  2. 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.
  3. 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).
  4. 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.
  5. 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 )