SAP号码段配置-SNRO/SNUM
T-CODE: SNRO、SNUM
1.创建一个号码段对象
2.设置编号长度域、警告(注意:必须是SAP系统已定意的域)
3.设置缓冲,优点:不直接去数据库里取数,提升效率;缺点:存在跳号
4.设置取数范围
5.调整当前编号
6.调用程序
FORM frm_vbenn_number CHANGING cv_zvbeln.
DATA: lv_object TYPE tnro-object,
lv_nr_range_nr TYPE inri-nrrangenr,
c_zorder(10) TYPE n,
lv_zorder(7) TYPE n,
lv_data(2) TYPE n,
lv_c TYPE string.
CLEAR:c_zorder,lv_zorder,lv_data,lv_c.
lv_data = sy-datum+2(2).
CONCATENATE 'D' lv_data INTO lv_c.
lv_object = 'ZVBELN'. " 对象
lv_nr_range_nr = '01'.
"锁定 NUMBER RANGE 对象
CALL FUNCTION 'NUMBER_RANGE_ENQUEUE'
EXPORTING
object = lv_object
EXCEPTIONS
foreign_lock = 1
object_not_found = 2
system_failure = 3
OTHERS = 4.
" 产生NUMBER RANGE
CALL FUNCTION 'NUMBER_GET_NEXT'
EXPORTING
nr_range_nr = lv_nr_range_nr
object = lv_object
IMPORTING
number = c_zorder
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.
" 解锁 NUMBER RANGE 对象
CALL FUNCTION 'NUMBER_RANGE_DEQUEUE'
EXPORTING
object = lv_object.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = c_zorder
IMPORTING
output = c_zorder.
lv_zorder = c_zorder+3(7).
CONCATENATE lv_c lv_zorder INTO cv_zvbeln.
ENDFORM.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本