728x90
반응형
T-CODE : SNRO 로 들어간다.
그러면 여기서 이렇게 생성 후에 어떻게 코딩을 해야 할 지 모른다..-_-
자 그럼 난 소스를 아래처럼 붙여주겠다.
이렇게 perform 으로 만들면 되고.. parameter passing 하는 부분을 설명해주면 끝날 것 같당.
lv_nronr은 아래 constants 를 넣어주면 되는 것이다. lv_nronr 은 그냥 변수로 하나 선언한 듯..
한마디로 lv_nronr = gc_nro_nr_03. 이렇게 들어가면 03 들어가겠지?
*... Number range object number
CONSTANTS: gc_nro_nr_00 VALUE '00' TYPE inri-nrrangenr. "
CONSTANTS: gc_nro_nr_01 VALUE '01' TYPE inri-nrrangenr. "
CONSTANTS: gc_nro_nr_02 VALUE '02' TYPE inri-nrrangenr. "
CONSTANTS: gc_nro_nr_03 VALUE '03' TYPE inri-nrrangenr. "
CONSTANTS: gc_nro_nr_04 VALUE '04' TYPE inri-nrrangenr. "
CONSTANTS: gc_nro_nr_09 VALUE '09' TYPE inri-nrrangenr. ".
두번째 들어갈 부분은 우리가 snro에서 만든 이름이다.
위에서 'ZOWONN001' 을 만들었으므로 이걸 넣어주면 된다.
(아래 참조해라. ZONRO00001 에 ZOWONN001 넣으라는 소리다!!! 모르면 말고;;)
CONSTANTS: gc_nro_object_detnr "NRO for Determination Number
VALUE 'ZONRO00001' TYPE inri-object. "NRO for the table ZOTR0051
CONSTANTS: gc_nro_object_0conr "NRO for C/O Document Number
VALUE 'ZONRO00002' TYPE inri-object. "NRO for the table ZOTR0061, ZOTR0062
*-----------------------------------------------------------------------
*... (Local) C/O Document Number
*-----------------------------------------------------------------------
CLEAR: gv_nro_0conr. "C/O Document Number
PERFORM number_get_next
IN PROGRAM zh100000
* IF FOUND
USING lv_nronr "NRO Interval
gc_nro_object_0conr "NRO for C/O Document Number
iv_bukrs "위에 BUKRS 넣을수 있다는 곳에 BUKRS 넣어두면
iv_bdatj "이렇게 넘겨야 되고, 년도도 체크 했다면
CHANGING gv_nro_0conr. "넣어줘야 하고 CHANGING 을 받아오면 된다. (넘버)
* COMMIT WORK AND WAIT.
---------------------------------------------------------------
자, PERFORM 안쪽을 보자.. 소스를 봐야지 ㅋㅋ
FORM number_get_next
USING value(iv_nro_interval) TYPE inri-nrrangenr
value(iv_nro_object) TYPE inri-object
value(iv_subobject)
value(iv_toyear) TYPE inri-toyear
CHANGING value(ev_nro_next).
CLEAR: ev_nro_next.
CALL FUNCTION 'NUMBER_GET_NEXT'
EXPORTING
nr_range_nr = iv_nro_interval "lv_nronr = 03 같은거 들어옴'
object = iv_nro_object "ZOWONN001 이거 들어감
* QUANTITY = '1'
subobject = iv_subobject "iv_bukrs 회사코드
toyear = iv_toyear "iv_bdatj 연도입력
* IGNORE_BUFFER = ' '
IMPORTING
number = ev_nro_next
* QUANTITY =
* RETURNCODE =
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.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. "number_get_next
이렇게 넣어주면 된다.
728x90
반응형
'ERP-SAP > ABAP' 카테고리의 다른 글
<ABAP> SMW0 사용 방법 & READ DOMAIN TEXT. (0) | 2012.08.01 |
---|---|
<ABAP> 쉽게 쓰는 팝업 메모장 펑션! (0) | 2012.08.01 |
<ABAP> SE84에서 SE80의 메뉴트리 불러오기(Tip) (0) | 2012.03.14 |
<ABAP> T-Code 실행 안되는 막힌 곳에서 사용하는 프로그램. (0) | 2011.12.28 |
<ABAP> ABAP EDITER 를 부를 수 있는 소스코드(프로그램 강제 수정) (0) | 2011.12.08 |