Initialaufbau des Indexpools für die fehlertolerante Suche
Für den Initialaufbau des Indexpools ist der Report /PARTNER/RSADRINI bereitzustellen, der in einer Schleife den Standard-Funktionsbaustein ADDR_EXTRACT_FOR_DUPL_INDEX aufruft.
Hinweis
Dabei wird anstelle von "/PARTNER/" das tatsächliche Namensraumpräfix verwendet. Die Endung RSADRINI ist fest vorgegeben. Im Folgenden wird der Report stets mit /PARTNER/RSADRINI bezeichnet.
Falls IBUs oder Landesgesellschaften eine Lösung implementieren, wird für den Report ein passender analoger Name im entsprechenden Namensraum benutzt werden.
Im Funktionsbaustein ADDR_EXTRACT_FOR_DUPL_INDEX ist die folgende Funktionalität implementiert:
Der Funktionsbaustein liest mittels Paketverarbeitung (open cursor with hold, fetch next cursor) alle Adressen in interne Tabellen ein und übergibt die daraus aufgebauten Tabellen ADDRESS_FIELD_LIST und ADDRESS_OBJECT_LIST an das aufrufende Programm.
Zur Ermittlung der indexrelevanten Felder wird für den angegebenen Indexpool die Methode READ_INDEX_FIELD_LIST aufgerufen. Falls diese kein Ergebnis liefert, wird der Default aus Tabelle TSAD10 nachgelesen.
Die Unterscheidung, welche Adressen aus der Gesamtheit des Datenbestandes in den Indexpool gelangen, wird anhand des Adreßverwendungsnachweises abgeleitet.
Über die Tabelle TSADRVGRPE werden alle Objekttypen für den Indexpool nachgelesen. Adressen, die laut Verwendungsnachweis zu diesen Objekttypen gehören, werden in den Indexpool geschrieben.
Je Adresse werden in der strukturierten Tabelle ADDRESS_FIELD_LIST die zugehörigen Feldwerte übergeben. Die Feldliste hat einen generischen Aufbau, weil in einem späteren Release auch dynamisch zu ermittelnde Felder anderer Softwareschichten enthalten sein können.
Je Adresse wird außerdem die Liste der zugehörigen Owner-Objekttypen in der Tabelle ADDRESS_OBJECT_LIST übergeben. Das Feld FLT_VALUE wird hier nicht mit dem Schlüssel des Anwendungsobjekts gefüllt (Kundennummer, Lieferantennummer, Geschäftspartnernummer), da diese Information nicht im Suchindex abgelegt werden sollte. Statt dessen ist diese Information nach der Suche über den Verwendungsnachweis zu ermitteln. In der Regel ist nur ein Objekt Owner-Objekt (z.B. Kunde: KNA1 ADRNR), in Spezialfällen können es mehrere Objekte sein (Betriebestamm: Kunde + Werk + evtl. Lieferant, Retourenlieferant: Kunde + Lieferant).