SAP ABAP Number Range

Jubami·2023년 3월 6일
0

SAP 

목록 보기
4/13
post-thumbnail

Number range

일련번호 등 키 값으로 사용할 수 있는 데이터를 자동으로 채번(a00001, a00002) 형태로 자동으로 번호를 만들어주는 기능

작동 방식

  • 양식, 시작값, 최대값, 현재값을 미리 설정하여 dbtable에 저장해두었다가 함수 호출 시 저장된 값에 +1을 더하여 값을 반환

생성

  • tcode : snro

  • Interval 탭
    - 채번 데이터 타입으로 사용될 도메인 입력
    - Number Length domain : z로 만든 도메인 또는 적당한 길이를 가진 도메인 선택. (num06 : 0000001 ~ 999999)
  • % Warning : 도메인 영역에 있는 해당 %에 도달했을 때 경고 메시지
    - 999000에 도달했을 때, warning
  • To-business year flag : 년도별로.
    - 2023/000001 ~ 2023/999999로 설정해줌.
  • No Rolling : 999999도달 시 다시 1번 부터 채번할 것인지.
    - 체크하면 다시 1로 돌아가지않음
  • prefix : standard에서 세팅 시 문자 포함해서 번호를 채번.

F7 또는 좌측 상단 아이콘 클릭.

  • 옵션 체크 안하고

  • To-business year flag 선택시 : year 추가됨.

Function Module 사용 호출

  • Function builder(se37)
  • NUMBER_GET_NEXT

  • nr : number range No 지정
  • number range object 명 (ytest_e12)

DATA: gv_num TYPE i.

CALL FUNCTION 'NUMBER_GET_NEXT'
  EXPORTING
    nr_range_nr                   = '01'     " 위에서 지정한 No
    object                        = 'YTEST_E12' " number range obj 명

 IMPORTING
   number                        = gv_num  " 저장할 변수.
 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.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.


WRITE: 'Number : ', gv_num.

실행 될 때 마다 번호가 자동으로 +1 씩 됨.

profile
LV.1 아밥퍼

0개의 댓글