今天做了一个采购订单的採番,“採番”是日语词,通俗的讲就是按自己定义的规则生成流水 。下面分享一下产生流水 的步骤:
1. 系统中设定流水
使用T-Code SNRO来创建一个流水 标识对象,
然后输入Short text, Long text, Number length domain在写程序的时候应该会另外创建,这里测试就使用料 的Domain MATNR来做,其他的参数使用默认值就可以了,然后保存输入的资料。
系统提示创建成功,这里还需要维护一个子对象,单击“ 码范围”。
然后保存 ,流水 设定完成,接下来就是程序中如何取得这些流水 了。
2. 程序中取得流水
REPORT ZLC_NUMBER_RANGE.
DATA W_MATNR TYPE MATNR.
START-OF-SELECTION.
CALL FUNCTION ‘NUMBER_RANGE_ENQUEUE’
EXPORTING
OBJECT = ‘ZLC_001’ “Ceate with SNUM
EXCEPTIONS
FOREIGN_LOCK = 1
OBJECT_NOT_FOUND = 2
SYSTEM_FAILURE = 3
OTHERS = 4.
CALL FUNCTION ‘NUMBER_GET_NEXT’
EXPORTING
NR_RANGE_NR = ’00’
OBJECT = ‘ZLC_001’
IMPORTING
NUMBER = W_MATNR
EXCEPTIONS
INTERVAL_NOT_FOUND = 1
NUMBER_RANGE_NOT_INTERN = 2
OBJECT_NOT_FOUND = 3
QUANTITY_IS_0 = 4
QUANTITY_IS_NOT_1 = 5
INTERNAL_OVERFLOW = 6
OTHERS = 7.
CALL FUNCTION ‘NUMBER_RANGE_DEQUEUE’
EXPORTING
OBJECT = ‘ZLC_001’.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!