1, 号码范围介绍
SAP凭证号码的指定分为外部给号和内部给号,internal number range即内部给号,指系统根据预先维护好的号码范围(只能是阿拉伯数字)依序给号,给出已有数字的下一个编号。external number range即外部给号,后台配置时指指定一个号码范围(可以仅含阿拉伯数字,也可以阿拉伯数字和字母混合,前台业务处理时,操作者仍需要人为指定给系统一个可用编号。SAP提供了自动编号工具,能根用户需求设定并自动生成一组唯一的编号
2, Tcode: SNRO
Tcode: SNRO 进入编号范围对象维护界面,输入对象名称,然后点击创建按钮
创建界面
“编号长度域”:表示生成出来的编号需要使用什么样的数据类型来接收,这里使用CHAR10来接收,最长不超过10。
“%警告”:表示已产生的编号达到此百分比时给出警告
“编号范围事务”:可以指定一个事务码,通过执行此事务码可以进入该编号对象的维护页面
3, 号码范围传输
一般编码都是在生产机中独立设置的,若需要传输本次编号范围的维护,需要在初始菜单中执行“范围”|“传输”命令,通过手工操作来生成传输请求号码。
4, 程序调用
在程序中通过函数NUMBER_GET_NEXT来获取编号对象所生成的流水码,每次调用都会产生一个新的编号:
ABAP
Data: g_nextno TYPE char10.
CALL FUNCTION 'NUMBER_GET_NEXT'
EXPORTING
NR_RANGE_NR = '01'"上面起始编号前面的序号
OBJECT ='ZKP01'"编号对象
IMPORTING
NUMBER = g_nextno.
1
2
3
4
5
6
7
8
Data:g_nextnoTYPEchar10.
CALL FUNCTION'NUMBER_GET_NEXT'
EXPORTING
NR_RANGE_NR='01'"上面起始编号前面的序号
OBJECT='ZKP01'"编号对象
IMPORTING
NUMBER=g_nextno.
以上。