cancel
Showing results for 
Search instead for 
Did you mean: 

Critical Point in number range has been reached while creating batch in Inbound Delivery.

former_member302859
Active Participant

Dear team

I Checked Batch_CLT in SNRO but there it is not showing same number range .kindly guide how i can increase number range to avoid this error.

Accepted Solutions (0)

Answers (2)

Answers (2)

DominikTylczyn
Active Contributor

First, the message clearly indicates low level of remaining numbers in number range object BATCH_CLT. Standard setting of the number range object is to rise the warning when the level is at or less 10% - transaction SNRO:

Second, SAP uses BATCH_CLT, number range 01 as default for internal batch numbering. Check out the documentation to configuration: Logistics - General --> Batch Management --> Maintain Internal Batch Number Assignment Range:

Standard settings

In the standard, number range 01 from 0000000001 to 9999999999 has been defined for number range object BATCH_CLT.

Activities

Check whether number range interval 01 exists and maintain new number ranges, if necessary.

Further notes

If you replace the number range object and/or interval proposed by the system with your own object or interval using customer function call EXIT_SAPLV01Z_001, maintain the number range object and/or interval in this step.

Third, if you are using a different number range to 01 you have to have user exit EXIT_SAPLV01Z_001 implemented, that substitutes the standard number range with your own. The batch number assignment is performed by function VB_NEXT_BATCH_NUMBER:

lines 111-119 - here the standard number range is predefined:

* Standardvorbelegung zum Nummernkreis
  INT_RANGE     = '01'.
  INT_OBJECT    = 'BATCH_CLT'.
  INT_SUBOBJECT = SPACE.
  INT_TOYEAR    = '0000'.
  INT_MESSAGE   = MESSAGE_WHEN_AUTO.
  INT_MESS_DONE = MESS_DONE.
  SKIP_AUTO     = SPACE.
  CLEAR NEW_CHARG.

lines 150-165 - here the user-exit is called to provide a custom number range:

* Aufruf erster CFC zur Ermittlung des Nummernkreises
  CLEAR SY-SUBRC.
  CALL CUSTOMER-FUNCTION '001'
       EXPORTING
            X_BNCOM           = X_BNCOM
       IMPORTING
            CUST_NO_INTERNAL  = SKIP_AUTO
       CHANGING
            NR_RANGE_NR       = INT_RANGE
            OBJECT            = INT_OBJECT
            SUBOBJECT         = INT_SUBOBJECT
            TOYEAR            = INT_TOYEAR
            MESSAGE_WHEN_AUTO = INT_MESSAGE
            MESSAGE_DONE      = INT_MESS_DONE
       EXCEPTIONS
            CANCELLED         = 1.

lines 194-230 - here a next number is requested from the number range. Line 226 generates the message if the number range is about to be exhausted:

* Holen der nächsten Chargennummer
  IF SKIP_AUTO IS INITIAL.
    CALL FUNCTION 'NUMBER_GET_NEXT'
         EXPORTING
              NR_RANGE_NR        = INT_RANGE
              OBJECT             = INT_OBJECT
              QUANTITY           = '1'
              SUBOBJECT          = INT_SUBOBJECT
              TOYEAR             = INT_TOYEAR
         IMPORTING
              NUMBER             = NEW_CHARG
              RETURNCODE         = RETURNCODE
         EXCEPTIONS
              INTERVAL_NOT_FOUND = 1
              OBJECT_NOT_FOUND   = 2
              INTERVAL_OVERFLOW  = 3
              OTHERS             = 4.
    CASE SY-SUBRC.
      WHEN 1.
        MESSAGE E028(LB) WITH INT_RANGE INT_OBJECT
                         RAISING INTERVAL_NOT_FOUND.
      WHEN 2.
        MESSAGE E022(26) WITH INT_OBJECT
                         RAISING OBJECT_NOT_FOUND.
      WHEN 3.
        MESSAGE E028(LB) WITH INT_RANGE INT_OBJECT
                         RAISING INTERVAL_OVERFLOW.
      WHEN 4.
        MESSAGE E024(26) RAISING ERROR_AUTOMATIC_BATCH_NUMBER.
    ENDCASE.
    CASE RETURNCODE.
      WHEN '1'.
        MESSAGE I027(26) WITH INT_OBJECT.
      WHEN '2'.
        MESSAGE I028(26) WITH INT_OBJECT.
    ENDCASE.
  ENDIF.

I'd suggest the following:

  1. Put the break-point in VB_NEXT_BATCH_NUMBER function in line 195 and check out which number range is used to get the next batch number.
  2. Check out the implementation of the user exit EXIT_SAPLV01Z_001. It's probable that the message is coming from there.

HTH

Dominik Tylczyński

DominikTylczyn
Active Contributor

Batch number ranges are maintained in configuration path: Logistics - General --> Batch Management --> Batch Number Assignment --> Maintain Internal Batch Number Assignment Range

former_member302859
Active Participant
0 Kudos

Dear Dominik

Thankyou, I have already checked that, There BATCH_CLT showing some standard number range starting from 01 to 000853 (Not Matching with my IB Delivery Number range) . Here is screen shot below which i am getting when i am clicking on create batch for delivery type ELN.

No. Range showing in SNRO for BATCH_CLT is as below:

My batches number range is 3XXX and now reached "3798" and showing below error .

Lakshmipathi
Active Contributor
0 Kudos

When you post a query and give further updates, please add the content under "Comments" and not under "Answer" as you were not answering to a query but only providing additional informations as asked by the members. Also, when you add the text under Comments, it will be intimated to the person to whom you are responding whereas, if you add the text under Answer, the member will not be intimated. By the way, your above answer has been converted as comment by me.