Ansicht
Dokumentation
SEARCH_WITH_LEADING_ZEROES - sucht in beliebigen Tabellen auch mit führenden Nullen
BAL_S_LOG - Application Log: Log header data BAL Application Log DocumentationDiese Dokumentation steht unter dem Copyright der SAP AG.
Funktionalität
sucht in der Datenbanktabelle DBTAB nach Nummern mit variabler Anzahl von führenden Nullen. Diese Nummern müssen sich in einem Schlüsselfeld befinden, das natürlich character-ähnlich ist (sonst käme man mit einem einfachen SELECT-Befehl aus).
Achtung: DBTAB darf nur aus characterähnlichen Feldern bestehen, sonst kommt es zum Laufzeitfehler!
Die Tabelle darf höchstens 3 zusätzliche Schlüsselfelder besitzen. Der Aufrufer muß den gesamten Schlüssel in der Struktur MORE_KEYS angeben, damit der Funktionsbaustein ein eindeutiges Resultat zurückliefern kann.
Beispiel
Die Datenbanktabelle FIBELEGE besitze den Schlüssel
BELEG, GESCHÄFTSJAHR
und einen Eintrag
000815, 2000.
Der normale SELECT auf die Tabelle mit 815, 2000 geht schief, weil BELEG als character-Feld definiert ist. Der Befehlsfolge
I_MOREKEYS-key1_name = 'GESCHÄFTSJAHR'.
I_MOREKEYS-key1_value = '2000'.
CALL FUNCTION 'SEARCH_WITH_LEADING_ZEROES'
EXPORTING | ||
DBTABLE = 'FIBELEGE' | ||
MAXLENGTH = 10 | ||
SEARCH_KEY_NAME = 'BELEG' | ||
SEARCH_KEY_VALUE = '815' | ||
MORE_KEYS = I_MOREKEYS | ||
IMPORTING | ||
STRING = I_STRING. | ||
dagegen liefert im I_STRING eine die ersten 100 Zeichen der Zeile der Tabelle FIBELEGE mit dem gesuchten Eintrag zurück.
Hinweise
Durch eine MOVE-Anweisung des zurückgegebenen Strings auf beispielsweise die Kopfzeile der übergebenen Tabelle kann man sofort die gesuchte Nummer abfragen (keine OFFSET-Programmierung nötig).
Die Ausnahme NOT_UNIQUE wird genau dann ausgegeben, wenn in der Tabelle die gleichen Zahlen mit unterschiedlicher Anzahl führender Nullen enthalten sind (was freilich nicht so häufig vorkommen sollte) UND der einfache SELECT mit dem übergebenen Schlüssel UND mit
Weiterführende Informationen
Parameter
DBTABLEMAXLENGTH
MORE_KEYS
RESULTSTRING
SEARCH_KEY_NAME
SEARCH_KEY_VALUE
Ausnahmen
NOTHING_FOUNDTOO_LONG_KEY
Funktionsgruppe
BL_BASIS_FUNCTIONSROGBILLS - Synchronize billing plans General Material Data
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 3761 Date: 20240523 Time: 140650 sap01-206 ( 47 ms )