ADK-Index aufbauen und Zugreifen auf einzelne Datenobjekte im Archiv über den ADK-Index 

Der ADK-Index wird in der Regel während des Archivierungsprozesses vom Löschprogramm gepflegt. Dies kann aber auch für bereits existierende Archivdateien nachträglich geschehen.

Beim Einsatz des Archivinformationssystems (SAP AS) ist die Benutzung des ADK-Indexes in der Regel weder notwendig noch sinnvoll.

Folgende Voraussetzungen müssen erfüllt sein:

ADK-Index im Löschprogramm aufbauen

Das Schreiben des jeweiligen Indexeintrags erfolgt über den Aufruf des Funktionsbausteins ARCHIVE_ADMIN_SAVE_INDEX, nachdem Sie das betreffende Datenobjekt aus der Archivdatei zum Löschen eingelesen haben. Sie übergeben diesem Funktionsbaustein den Namen des Archivierungsobjekts, den Indexeintrag sowie den Schlüssel der Archivdatei, den Sie zuvor mit dem Funktionsbaustein ARCHIVE_GET_INFORMATION geholt haben. Die technische Umsetzung können Sie den Beispielprogrammen RSARCH06 oder SBOOKD entnehmen.

Die Gestaltung des Indexeintrags ist völlig frei. Sie übergeben eine Zeichenkette, die Sie nach den Erfordernissen zusammengestellt haben. Selbstverständlich ist es notwendig, daß der Aufbau der Zeichenkette immer gleich bleibt.

Der Wert dieser Zeichenkette kann bereits beim Schreiben des Archivs mit dem Parameter OBJECT_ID an die Archivdatei übergeben und beim Aufruf des Funktionsbausteins ARCHIVE_GET_NEXT_OBJECT aus der Archivdatei übernommen werden.

Um den Indexaufbau von außen steuerbar zu machen und somit unnötige Einträge zu vermeiden, sollten Sie vor dem Aufruf des Funktionsbausteins zum Sichern des Indexeintrags (ARCHIVE_ADMIN_SAVE_INDEX) mit dem Funktionsbaustein ARCHIVE_GET_CUSTOMIZING_DATA den Wert für MAINTAIN_INDEX abfragen.

Dieser Wert wird im Archiv-Customizing zu dem betreffenden Archivierungsobjekt gepflegt und kann somit vor jedem Archivierungslauf beliebig eingestellt werden.

ADK-Index nachträglich aufbauen

Mit dem Programm RSARCH15 können Sie für einzelne Archivierungsläufe zu einem Archivierungsobjekt die archivierten Datenobjekte nachträglich im ADK-Index aufnehmen. Ein weiteres Beispielprogramm für den nachträglichen Indexaufbau ist SBOOKI.

Auf einzelne Datenobjekte über ADK-Index zugreifen

Der Zugriff auf einzelne Datenobjekte einer Archivdatei über ADK-Index erfolgt mit dem Funktionsbaustein ARCHIVE_READ_OBJECT. Sie übergeben den Namen des Archivierungsobjekts sowie den gewünschten Indexeintrag. Das ADK öffnet die Datei, in der sich das gesuchte Datenobjekt befindet und liest das Datenobjekt in den Datencontainer.

Voraussetzung ist, daß der ADK-Index entweder beim Schreiben des Archivs oder nachträglich aufgebaut wurde.

Sie erhalten den Archiv-Handle auf die geöffnete Archivierungsdatei, und können nun entweder mit den Methoden der Standardklasse (ARCHIVE_GET_NEXT_RECORD) oder, falls Archivierungsklassen am Archivierungsobjekt beteiligt sind, mit denen der Archivierungsklasse auf die einzelnen Datensätze im Datencontainer zugreifen.

Beispiele für den Zugriff über ADK-Index sind die Programme RSARCH13 und SBOOKS.