Dokumentenpflege und Transaktion SE61

Aus SAP-Wiki
(Weitergeleitet von Klassendokumentation)
Wechseln zu: Navigation, Suche

SAP-Objekte, wie z. B. Klassen werden häufig eine hohe Komplexität haben und hier macht es Sinn diese Funktionalitäten zu dokumentieren.

Hier bieten viele Entwicklungstransaktionen einen direkten Einstieg in die Dokumentation des jeweiligen Objekts, so wie z. B. der Class Builder über die Transaktion SE24.

Jede Dokumentation lässt sich auch über die Transaktion SE61 pflegen. Einige Dokumentationen, wie z. B. allgemeine Texte, können nur über die Transaktion SE61 gepflegt werden.

Grundlagen

Abgrenzung Codingkommentare und Dokumentenpflege

  • Während eine Kommentierung des Codes im Programm, Funktionsbaustein oder den Methoden der Klasse mehr die Details beschreibt, beschreibt eine Dokumentenpflege den großen Rahmen
  • In der Dokumentenpflege sollte nicht zu sehr auf konkrete Codingdetails eingegangen werden
    • Vermeidung Redundanz zum Codingkommentar
    • Vermeidung veraltete Dokumentation, da umfangreiche Dokumentation nur selten aktualisiert werden wird aufgrund Zeitmangel

Vorteile SAP-Dokumentenpflege

Vorteile SAP-Dokumentenpflege gegenüber Word-Dokumentation

  • Die SAP-Dokumentenpflege ist innerhalb des SAP-Systems verfügbar
  • Sie ist über das Drücken einer Schaltfläche sehr leicht aufzurufen
  • Im Abgleich mit dem vorliegenden SAP-Entwicklungsobjekt fällt schnell auf, wenn die Dokumentation nicht mehr aktuell ist
  • Dokumenten aus der Dokumentenpflege können verlinkt werden
  • Dokumentobjekte können in ein anderes Dokumentenobjekt eingebunden werden und so Redundanz vermieden werden
  • Word-Dokmentationen werden in aller Regel einmal erstellt, selten aktualisiert und sind häufig den Projektteammitgliedern auch nicht bekannt

Dokumentenklassen

In der SAP-Tabelle TDCLT stehen alle zulässigen Dokumentenklassen.

Dokumentenklasse Titel
ABAP Syntaxdokumentation ABAP
ABEN Umfeld ABAP
AD PDF-basiertes Formular
AI PDF-basiertes Formular - Schnittstelle
AO Archivierungsobjekt
BCST BC-Set Dokumentation
BF Business Function + Zuordnung
BI Business Add Ins: Implementierungen
BIBL Verweis auf eine Struktur
BOOK Hauptkapitel einer Struktur (BOOK)
BS Business Function Set + Zuordnung
BZ Beziehung
CA Klassen-Attribut
CATE Beschreibung zu einem Testablauf
CATT CATT (Computer Aided Test Tool)
CC Konfigurationsprüfungsgruppe
CE Klassen-Ereignis
CF Programmfunktion
CH Charakteristik
CHAP Kapitel einer Struktur (CHAP)
CHHR HR: Kapitel einer Struktur
CL Klasse
CM Aktionsmenü, Menüleiste
CO Klassen-Methode
CONC Hypertext-WWS-Konzept
CONT Syntaxdokumentation CONT
CT Klassen-Typ
CU Cluster
DE Datenelement
DI Dialogbaustein und Parameter
DM UDM mit Entitätsvariablen
DO Domäne
DOKU Doku-Text
DT Text im Dialog
DYNP Syntaxdokumentation Dynpro
DZ Datenelementzusatz
EDIT Syntaxdokumentation Editor
EQ Sperrobjekt
FG Funktionsgruppe
FRAM Frame Dokument
FU Funktionsbaustein und Parameter
FX Funktionsbaustein Ausnahmen
GD Datenobjekt
GH Datenmodell
GLOS Eintrag im Glossar
GO Operationen
GS Konsumierungs-Modell
HRDS HR: Dokumentationsobjekt
IA Interface-Attribut
IE Interface-Ereignis
IF Interface
IM UDM
IMGS
INFO Info-Systemtext
IO Interface-Methode
IS BSP-Extension-Objekt
KENO Knowledge Engineer: Struktur und Info-Objekt
LB Logische Datenbank
MCLI Dokumentation zur Mehrmandantenfähigkeit
MG Migrationstext
MO Modifikationstext
NA Nachricht
NAVI Fiori UI Navigation
NC Nachrichtenklasse
NORM Ergonomienorm
NORP Beschreibung der Ergonomienorm
NOTE Notiz zu Kapitel einer Struktur
OD BOR-Objekt
PARD Hypertext-WWS-Parameter-Doku
PP Profilparameter
PRDC Hypertext-WWS-Programm-Doku
PROJ DDIC-Intern
PS Prozessschritt Text
RE Report, Funktions-Gr.,Log.DB
RELN Release-Information
REPB Sofortausführung eines Reports im Batch
REPC Terminierte Ausführung eines Reports
REPN Online Ausführung eines Reports mit Parameterauswahl
REPO Online Ausführung eines Reports
RSYN Syntaxdokumentation RSYN
SA Analyse
SBCS Switch BC-Set Dokumentation
SD ABAP Syntax
SDUM Unternehmens Daten Modell Texte
SE Metrik- / Ereignis- / Alertbeschreibung
SG Beschreibung der metrischen Gruppe
SI Bewertung und Auswirkung
SIMG Kapitel des Einführungsleitfadens (SIMG)
SL Systemlog
ST Struktur
SW Schalter + Zuordnung von Objekten zum Schalter
SYSP Kapitel mit Systemparametern
TA Transportauftrag, Korrektur
TB Tabelle / Strukture
TCOD Transaktionen
TEST Testinformationen
TITL Titel ohne Dokument
TOCX Eingebundene Struktur
TP Dokumentation:
TR Transaktion
TRAN Link auf Transaktion
TRAS Link auf Transaktion und skip first screen
TT Tabellentyp
TU Tutorialtext
TX Allgemeiner Text
UC Konfigurationsprüfung
UO Berechtigungsobjekt
UP Berechtigungsprofil
URLA URL-link
VA Festwert
VW View
WA Web-Application
WAVI Video for Windows
WC Web Dynpro: ( Komponente / View ) Controller
WD Web Dynpro: Komponente / Interface
WHLP Winhelp-Datei
WINH
WORD Kapitel einer Struktur im WinWord Format
WPPT PowerPoint-Präsentation
WSCM Lotus ScreenCam
XI Extension-Index

Dokumentenpflege Transaktion SE61 (Beispiel Klassendokumentation)

  • Die Klassendokumentation lässt sich sowohl über die Transaktion SE24 als auch die Transaktion SE61 (Dokumentenpflege) aufrufen.
  • In der Transaktion SE61 hat man neben den Klassendokumentationen Zugriff auf die Dokumentationen sehr vieler Entwicklungsobjekte und es lassen sich auch Dokumentationen anlegen, die nicht an ein spezielles Entwicklungsobjekt gebunden sind, aber dann in der Dokumentation der Entwicklungsobjekte eingebunden werden können.

Einstieg über den Class Builder (Transaktion SE24)

Man geht im Änderungsmodus in den Class Builder (Transaktion SE24).

Klassendoku1.jpg

Pflege Klassendokumentation

Hier drückt man auf die Schaltfläche Klassendoku2.jpg, um die Klassendokumentation zu pflegen.

Folgendes Fenster erscheint (SAPscript-Editor). Der SAPscript-Editor ist gewöhnungsbedürftig. Aber durch die technische Darstellung der Texte (mit Absatz- und Zeichenformaten) kann man auch sehr präzise arbeiten.

Klassendoku3.jpg

Rupriken mit Ausgabe identifizieren

Es ist erst mal nicht sehr sprechend welche Ruprik für welche Ausgabe sorgt. Daher kann man sich behelfen, in dem unter die Ruprik jeweils einen gleichnamigen Text schreibt. Das macht Sinn, da im Änderungsmodus die Rupriküberschriften Englisch sind, aber im Anzeigemodus in der Anmeldesprache.

Klassendoku4.jpg

Verweise auf andere Dokumentationen anlegen

Im SAPscript-Editor ist es über das Menü sehr einfach auf eine andere Dokumentation zu erstellen.

Im Tricktresor sind alle Dokumentenklassen aufgeführt, die mittels Matchcode auswählbar sind und noch einige andere, die nicht über den Matchcode auswählbar sind, aber auch möglich sind.

Hier soll der Sprung der Dokumentation Klasse ZREBCONSTANTS zur Dokumentation der Klasse ZREBALV erfolgen. Zunächst wählt man ein passendes Absatzformat für eine Zeile, hier "AS" und geht dann über das Menü auf "Einbinden - Verweis".

Klassendoku9.jpg


Hier wird nun die passende Dokumentenklasse und das Objekt ausgewählt. Also wieder "Klasse" und "ZREBALV" und den Linktext.

Klassendoku10.jpg


Im SAPscript-Editor erscheint nun.

Klassendoku11.jpg


In der Anzeigeansicht sieht man nun den Link "Link zur Klasse ZREBALV".

Klassendoku12.jpg


Nach einem Klick auf den Link erscheint die Dokumentation der Klasse ZREBALV.

Klassendoku13.jpg

Aufruf Dokumentation über Dokumentenpflege (Transaktion SE61)

Ruft man die Transaktion SE61 auf, lassen sich die Dokumentationen von sehr vielen SAP-Entwicklungsobjekten pflegen.

Die Dokumentationsklasse ist hier "Klasse" und es wird der Klassenname "ZREBALV" gepflegt. Dokumentenklasse und Sprache lassen sich ändern, auch wenn die graue Formatierung der Felder reine Anzeigefunktionalität vermuten lässt.

Klassendoku8.jpg

Geht man über die Schaltfläche "Ändern" in die Klassendokumentation sieht man das altbekannte Pflegebild des SAPscript-Editors.

Klassendoku4.jpg

Ausgabe Klassendokumentation im Anzeigemodus

Als erste Ruprik erscheint die Kurzbezeichnung der Klasse. Danach sind die Inhalte zu sehen, die vorher gepflegt wurden unter der gleichnamigen englischsprachigen Rupriküberschrift.

Klassendoku5.jpg

Einbinden Links

ID zur Dokumentation identifizieren

Man kann die Klassendokumentation über den Class Builder erreichen. Aber die Dokumentation ist auch zentral abgelegt. Um dann den Einstieg für diese Klassendokumentation zu finden, öffnet man im Änderungsmodus die Klassendokumentation und geht über das Menü.

Klassendoku6.jpg


Es öffnet sich in diesem Beispiel das folgende Fenster.

Klassendoku7.jpg

Die folgenden 4 Felder identifizieren eindeutig die Dokumentation.

  • Textname = ZREBALV
  • Sprache = DE
  • Text-ID = CL
  • Textobjekt = DOKU

Einbinden Include-Texte in Dokumentation

  • Es können auch Dokumentationen in eine andere Dokumentation eingebunden werden. Siehe hier SAP-Hilfe.
/: INCLUDE name [OBJECT o] [ID i] [LANGUAGE l] [PARAGRAPH p] [NEW-PARAGRAPH np]

Hier sind in einem Dokument zwei andere Dokumente eingebunden worden, u. a. der Allgemeine Text ZREBINTERFACES.

Dokumentenpflege1.jpg

Dokumentenpflege2.jpg

Im Allgemeinen Text ZREBINTERFACES wird die Dokumentation vom Interface ZREBIF_ALV verlinkt.

Dokumentenpflege3.jpg


Beim Anzeigen der Dokumentation wird der Text unter "Interfaces" und der Text unter "Klassen" zur Laufzeit eingebunden. Würde das Dokument ZREBINTERFACES in mehreren Dokumenten eingebunden, so braucht nur der Allgemeine Text ZREBINTERFACES geändert werden und man hat in allen Dokumenten durch die Include-Einbindung stets den aktuellen Inhalt der Interfaces.

Dokumentenpflege4.jpg

URLs als Link einbinden

Link:

<DS:URLA.http://www.google.de>Google</>

Datei:

<DS:URLA.file://o:/Projekte/SAP/Inhalt.doc>SAP Doku (Word)</>

Der neue Eintrag

Dokumentenpflege5.jpg


Eine URL zu Google wird eingebunden

Dokumentenpflege6.jpg


Der Link zu Google wird angezeigt

Dokumentenpflege7.jpg

Internet-URL einbinden

Tabelle TDCLD ergänzen

  • Enno beschreibung im Tricktresor, wie man auch Internet-URLs einbinden kann in eine Dokumentation.

URL-Shortener

  • Wird der Link zu lang für eine Zeile, kann man sich für Internetlinks mit einem URL-Shortener behelfen wie Bitly.

Der Link

https://www.google.de/search?q=Boberger+D%C3%BCnen&espv=2&biw=1920&bih=949&tbm=isch&tbo=u&source=univ&sa=X&ved=0ahUKEwiS556spJ3MAhVHZCwKHcrjA_cQsAQILg 

wird ersetzt durch

http://bit.ly/1NlaOo7

Einbindung Report-Links in eine Dokumentation

SE61 15.jpg

oder hier für ein Programm ZBC_PAKET.

HU	ZBC_PAKET                         "Überschrift in fett
B1 	<DS:RE.ZBC_PAKET>Dokumentation</> "zeigt Dokumentation vom Programm ZBC_PAKET an
B1 	<DS:REPN.ZBC_PAKET>Ausführen</>   "führt das Programm ZBC_PAKET aus

Es erscheint dann in der Anzeige der Dokumentation.

SE61 16.jpg

Nutzung Stil SAPscript-Stil S_DOCUS1

  • Der Dokumentendokumentation ist ein fester Stil zugeordnet: S_DOCUS1.
  • Dieser Stil kann über die Transaktion SE72 in seinen Absatz- und Zeichenformaten analysiert werden.

Absatzformate

  • * = Standardabsatz
  • /* = Kommentarzeile
  • /: = Kommandozeile
  • AS = Standardabsatz
  • B1 = Aufzählungszeichen (1. Stufe)
  • B2 = Aufzählungszeichen (2. Stufe)
  • HU = Bemerkung: Überschrift
  • N1 = Nummerierte Liste (mit Einzug)
  • T1 = Tabellenzeile mit 2 Spalten
  • T2 = Tabellenzeile mit 3 Spalten
  • T3 = Tabellenzeile mit 5 Spalten
  • T4 = Tabellenzeile mit 7 Spalten
  • U1 = Überschrift erster Ordnung
  • U2 = Überschrift erster Ordnung
  • U3 = Überschrift erster Ordnung

Hinweise

  • Bei den Überschriftenformaten ist es empfehlenswert U2 zu überspringen, da visuell so die Unterschiede zwischen den Absatzformaten U1 und U3 stärker auffallen.
  • Sehr einfache und schöne Gliederung lässt sich durch den Gebrauch der Aufzählungszeichen B1 und B2 erreichen.
  • Nummerierte Listen erreicht man mit dem Absatzformat N1.
  • Kommentare oder unfertige Texte lassen sich durch das Absatzformat "/*" einfügen.
  • Die Trennung der Spalten innerhalb einer Zeile lässt sich durch ",," zwischen den Wörtern vornehmen, z. B. beim Absatzformat T2 "Test erste Spalte,,Beispiel zweite Spalte,,dritte Spalte"
  • Mit dem Absatzformat HU kann man einen Absatztext fett markieren
  • Mit der Kommandozeile /: kann man z. B. sehr elegant andere Dokumentationen in die aktuelle Dokumentation einbinden und so redundante Dokumentationen vermeiden.

Zeichenformate

  • ZH = Fettdruck
  • ZK = Kursivdruck
  • ZU = Unterstrichendruck

Konzept Integration Dokumentation

Eine Dokumentation innerhalb eines Entwicklungsobjektes ist sehr häufig sinnvoll.

Nützlich wäre es auch, wenn man Links zu verwandten Entwicklungsobjekten (Klassen, Interfaces, Reporte, ..) hätte. Es wäre jedoch sehr zeitaufwendig und fehlerträchtig, wenn man innerhalb jedes Entwicklungsobjektes Links auf jede andere relevante Dokumentation anlegen würde.

Viel einfacher ist es, wenn man die Dokumentationen herarchirsch strukturiert sind und untereinander verlinken oder auch die untergeordneten Dokumentationen in die übergeordnete Dokumentation eingebunden sind. Dies erlaubt eine redundanzfreie, schnelle um einfache Dokumentationsstruktur.

HIer erfolgt ein 3-stufiger Ansatz. Ein allgemeiner zentraler Text auf der höchsten Ebene, der in jedes Dokumentationsobjekt eingebunden wird. Eine allgemeiner Text für jeden Entwicklungstyp, die im höchsten allgemeinen Text verlinkt sind und die Dokumentationen der Entwicklungsobjekte, die im allgemeinen Text der Entwicklungstypen verlinkt sind.

Allgemeinen Text anlegen

Hier wurde der allgemeine Text ZREBALLG angelegt in der Transaktion SE61.

SE61 1.jpg


In diesem allgemeinen Text befinden sich auch lediglich Links zu anderen allgemeinen Texten, wie hier ZREBINTERFACES, ZREBKLASSEN und ZREBREPORTS. B1 steht für eine Aufzählung.

SE61 2.jpg

<DS:TX.ZREBINTERFACES>Dokumentation Interfaces</>
<DS:TX.ZREBKLASSEN>Dokumentation Klassen</>
<DS:TX.ZREBREPORTS.Dokumentation Reports</>

Anlage allgemeinen Text für einen Entwicklungstyp

Schaut man sich den allgemeinen Text ZREBINTERFACES an, stehen hier alle Interface-Dokumentationen.

SE61 3.jpg


In diesem Fall lediglich eine Dokumentation.

SE61 4.jpg

<DS:IF.ZREBIF_ALV>Dokumentation ZREBIF_ALV</>

Einbindung allgemeiner Text in eine Dokumentation

In die Klasse ZREBWIKI wird nun die Dokumentation eingebunden.

SE61 5.jpg


Die Dokumentation der Klasse wird im Änderungsmodus aufgerufen.

SE61 6.jpg


Hier gibt es nur 2 relevante Zeilen. Die Überschrift mit "U1 Links" (Überschrift erster Ordnung mit dem Text "Links") und die nächste Zeile "/: INCLUDE ZREBALLG".

/: steht für eine Kommandozeile. Mit INCLUDE wird der der allgemeine Text ZREBALLG eingebunden, bzw. dessen Inhalt in der Klassendokumentation angezeigt.

SE61 7.jpg

U1   Links
/:   INCLUDE ZBC_ALLG

Anzeige Dokumentation

Die Klassendokumentation wird nun im Anzeigemodus aufgerufen.

SE61 8.jpg


Ist der Cursor über einem Link färbt sich der Link rot.

SE61 9.jpg


Nach einem Klick springt die Dokumentation zur Interfacedokumentation ZREBINTERFACES.

SE61 10.jpg


Die Interfacedokumentation vom Interface ZREBIF_ALV wird angezeigt.

SE61 11.jpg


Einfachheit Einbindung

Zur Sicherstellung der allgemeinen Verlinkung kommt man nun mit lediglich 2 Zeilen in jedem Entwicklungsobjekt aus

U1   Links
/:   INCLUDE ZBC_ALLG

Selbst die Zeile "U1 Links" könnte man noch in den allgemeinen Text ZREBALLG schreiben, sodass lediglich eine Zeile nötig wäre.

  • Möchte man einen neuen Entwicklungstyp dokumentieren, legt man einfach eine neue Zeile in dem allgemeinen Text ZREBALLG an
  • Möchte man eine spezielle Dokumentation hinzufügen, so legt man z. B. einen Link in ZREBKLASSEN, ZREBINTERFACES oder ZREBREPORTS an

Man hat so keinerlei Redundanz, wenig Aufwand und in jedem Dokument, was den allgemeinen Text ZREBALLG verlinkt hat, jeweils den aktuellen Gesamtstand der Dokumentation zur Verfügung.

Tabellen

Web-Links