如何使用自定义的 number range objects

1、Create number range object using OYSN.

2、Then call the following function modules.
FORM get_next_id CHANGING p_discrep.
 DATA: last_id LIKE zrecaudit-discrep,
        quant   LIKE inri-quantity,    "dummy
        code    LIKE inri-returncode. "returncode
 CALL FUNCTION 'NUMBER_RANGE_ENQUEUE'
       EXPORTING
            object           = 'ZRECAUDIT'
       EXCEPTIONS
            foreign_lock     = 1
            object_not_found = 2
            system_failure   = 3
            OTHERS           = 4.
 IF sy-subrc = 0.
    CALL FUNCTION 'NUMBER_GET_NEXT'
         EXPORTING
              nr_range_nr             = '01'
              object                  = 'ZRECAUDIT'
         IMPORTING
              number                  = last_id
              quantity                = quant
              returncode              = code
         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.
    CALL FUNCTION 'NUMBER_RANGE_DEQUEUE'
         EXPORTING
              object           = 'ZRECAUDIT'
         EXCEPTIONS
              object_not_found = 1
              OTHERS           = 2.
 ENDIF.
ENDFORM.                    " get_next_id <!---->


你可能感兴趣的:(object)