SNRO 创建Number range
*&---------------------------------------------------------------------*
*& Form frm_get_ref_nr
*&---------------------------------------------------------------------*
* 获取 Number Range
*----------------------------------------------------------------------*
* -->PV_NR text
*----------------------------------------------------------------------*
FORM frm_get_ref_nr USING pv_nr.
"锁定 Number Range 对象
CALL FUNCTION 'NUMBER_RANGE_ENQUEUE'
EXPORTING
object = 'ZBC_BOX' "创建对象
EXCEPTIONS
foreign_lock = 1
object_not_found = 2
system_failure = 3
OTHERS = 4.
"产生Number Range
CALL FUNCTION 'NUMBER_GET_NEXT'
EXPORTING
nr_range_nr = '3'
object = 'ZBC_BOX' "创建对象
IMPORTING
number = pv_nr
EXCEPTIONS
interval_not_found = 1
number_range_not_intern = 2
object_not_found = 3
quantity_is_0 = 4
quantity_is_not_1 = 5
interval_overflow = 6
buffer_overflow = 7
OTHERS = 8.
"解锁 Number Range 对象
CALL FUNCTION 'NUMBER_RANGE_DEQUEUE'
EXPORTING
object = 'ZBC_BOX'.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. "FRM_GET_NR