Ansicht
Dokumentation

/SAPSLL/NUMBER_GET_NEXT - NOTRANSL: SLL: Nummernkreis Nächste freie Nummer vergeben + entsperren

/SAPSLL/NUMBER_GET_NEXT - NOTRANSL: SLL: Nummernkreis Nächste freie Nummer vergeben + entsperren

General Material Data   Fill RESBD Structure from EBP Component Structure  
This documentation is copyright by SAP AG.
SAP E-Book
Preliminary comment

This function module has been released.

The documentation is being revised so that it conforms to the requirements for released function modules.

Der Funktionsbaustein vergibt die nächsten freien Nummern eines Nummernkreisintervalls. Standardmäßig wird eine Nummer vergeben, wenn im Parameter QUANTITY keine größere Anzahl verlangt wird. 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 Nummernkreisintervalls berechnet.

All exceptions are created with MESSAGE ... RAISING ... .

Beispiel:

  1. Objekt HUGO, nicht jahresabh., nächste freie Nummer gesucht

    DATA: RC LIKE 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.
  2. Objekt EGON, jahresabh., nächste 5 freien Nummer für 1992 im Buchungskreis 0001 gesucht.

    DATA: RC LIKE INRI-RETURNCODE,
    NUMBER(10) TYPE C,
    YEAR LIKE INRI-TOYEAR,
    QUAN LIKE 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.

DE-EN-LANG-SWITCH-NO-TRANSLATION





Parameters

EV_NUMBER
EV_QUANTITY
EV_RETURNCODE
IS_DEBUG
IV_IGNORE_BUFFER
IV_NR_RANGE_NR
IV_OBJECT
IV_QUANTITY
IV_SUBOBJECT
IV_TOYEAR

Exceptions

INTERNAL_ERROR
INTERVAL_NOT_FOUND
INTERVAL_OVERFLOW
NUMBER_RANGE_NOT_INTERN
OBJECT_NOT_FOUND
QUANTITY_IS_0
QUANTITY_IS_NOT_1

Function Group

SLL/SAPLCORE_BAS_MODULES

General Material Data   RFUMSV00 - Advance Return for Tax on Sales/Purchases  
This documentation is copyright by SAP AG.

Length: 3925 Date: 20240418 Time: 072837     sap01-206 ( 61 ms )