Ansicht
Dokumentation
NUMBER_GET_NEXT - Nummernkreis Nächste freie Nummer vergeben
rdisp/max_wprun_time - Maximum work process run time General Data in Customer MasterDiese Dokumentation steht unter dem Copyright der SAP AG.
Dieser Funktionsbaustein ist freigegeben.
Die Dokumentation des Funktionsbausteins wird noch überarbeitet, so daß sie auch formal den Anforderungen genügt, die an freigegebene Funktionsbausteine gestellt werden.
Der Funktionsbaustein vergibt die nächsten freien Nummern eines Intervalls.
Standardmäßig wird eine Nummer vergeben, wenn im Parameter QUANTITY keine größere Anzahl verlangt wird. Mehrere Nummern können nur bei der Hauptspeicherpufferung angefordert werden. Wenn mehr als eine Nummer verlangt wird und bis zur Intervallgrenze weniger Nummern zur Verfügung stehen, werden nur die Nummern bis zur Intervallgrenze vergeben. Wenn die letzte Nummer vergeben wurde, wird beim nächsten Aufruf wieder die erste Intervallnummer geliefert.
Die Länge der Nummer hängt von der Definition des Nummernkreisobjekts ab. Bei der Vergabe wird die Länge aber nicht über die Definition ermittelt, sondern aus der Länge der Von-Nummer des Intervalls berechnet.
Alle Ausnahmen werden mit MESSAGE ... RAISING ... erzeugt.
Beispiel:
-
Objekt HUGO, nicht jahresabhängig, nächste freie Nummer gesucht
DATA: RC TYPE INRI-RETURNCODE,
NUMBER(10) TYPE C.
CALL FUNCTION 'NUMBER_GET_NEXT'
EXPORTING
OBJECT = 'HUGO'
NR_RANGE_NR = '01'
IMPORTING
RETURNCODE = RC
NUMBER = NUMBER.
CASE RC.
WHEN ' '.
* alles o.k.
WHEN '1'.
* die vergebene Nummer liegt im kritischen Bereich.
WHEN '2'.
* dies war die letzte Nummer, beim nächsten Mal wird die
* erste Nummer vergeben
ENDCASE.
-
Objekt EGON, jahresabhängig, nächste 5 freien Nummer für 1992 im Buchungskreis 0001 gesucht.
DATA: RC TYPE INRI-RETURNCODE,
NUMBER(10) TYPE C,
YEAR TYPE INRI-TOYEAR,
QUAN TYPE INRI-QUANTITY.
YEAR = '1992'.
QUAN = 5.
T001-BUKRS = '0001'.
CALL FUNCTION 'NUMBER_GET_NEXT'
EXPORTING OBJECT = 'EGON'
NR_RANGE_NR = '01'
SUBOBJECT = T001-BUKRS
TOYEAR = YEAR
IMPORTING RETURNCODE = RC
QUANTITY = QUAN
NUMBER = NUMBER.
* in NUMBER steht die letzte vergebene Nummer
* in QUANTITY steht die Anzahl der vergebenen Nummern
* die erste freie Nummer berechnet sich aus:
* NUMBER - QUANTITY + 1.
CASE RC.
WHEN ' '.
* alles o.k.
WHEN '1'.
* die vergebene Nummer liegt im kritischen Bereich.
WHEN '2'.
* dies war die letzte Nummer, beim nächsten Mal wird
* die erste Nummer vergeben
WHEN '3'.
* es werden mehr Nummern verlangt als zur Verfügung stehen,
* in QUAN steht die Anzahl der vergebenen Nummern.
ENDCASE.
Parameter
IGNORE_BUFFERNR_RANGE_NR
NUMBER
OBJECT
QUANTITY
QUANTITY
RETURNCODE
SUBOBJECT
TOYEAR
Ausnahmen
BUFFER_OVERFLOWINTERVAL_NOT_FOUND
INTERVAL_OVERFLOW
NUMBER_RANGE_NOT_INTERN
OBJECT_NOT_FOUND
QUANTITY_IS_0
QUANTITY_IS_NOT_1
Funktionsgruppe
SNR3SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up Fill RESBD Structure from EBP Component Structure
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 5776 Date: 20240523 Time: 064526 sap01-206 ( 66 ms )