云南建设厅网站房地产开发资质,seo优化推广多少钱,南京尘帆网站建设,塑胶模具东莞网站建设【SAP Abap】X-DOC#xff1a;SNRO - ABAP流水号应用 1、定义表#xff08;字段域#xff09;2、定义流水号3、使用流水号4、测试程序 1、定义表#xff08;字段域#xff09; 2、定义流水号
Tcode: SNRO/SNUM#xff0c; 根据以上创建的字段域 YDSNRO#xff0c;创建对… 【SAP Abap】X-DOCSNRO - ABAP流水号应用 1、定义表字段域2、定义流水号3、使用流水号4、测试程序 1、定义表字段域 2、定义流水号
Tcode: SNRO/SNUM 根据以上创建的字段域 YDSNRO创建对象 YSNRO并定义流水号范围 编号长度域就填创建的域但是一定要先激活。
警告百分比是指如果编号使用到一定比例就发出系统警告提示管理人员增大范围或者进行历史数据归档避免编号全部用完后影响正常业务这里填写 95就是95%的时候提示。
无翻滚间隔是指如果编号达到最大是否自动从头开始勾上就不从头开始而在获取编号的时候提示出错。
编号范围事务如果指定这个事务码就可以不需要通过 SNRO/SNUM 的主屏幕然后输入编号范围对象的名字来维护这个编号范围而可以输入事务码直接进入它的号码范围维护屏幕。
主内存缓冲 是指系统为了提高性能而预先取出一些编号放在应用服务器上当程序取用编号时直接从应用服务器获取而无需再读取数据库了。 通常如果对号码的连续性要求不高的情况下可以使用这种方式而如果是财务凭证等要求连续的编号则应该把主内存缓冲关闭。 可以在取号时设置参数 IGNORE_BUFFER ‘X’ 来防止跳号设成’X‘就不会跳号了。
号码范围传输一般编码都是在生产机中独立设置的若需要传输本次编号范围的维护需要在初始菜单中执行“范围”|“传输”命令通过手工操作来生成传输请求号码。
3、使用流水号
在程序中使用流水号需要用到以下三个函数
FORM get_no CHANGING p_no.CALL FUNCTION NUMBER_RANGE_ENQUEUEEXPORTINGobject YSNROEXCEPTIONSforeign_lock 1object_not_found 2system_failure 3OTHERS 4.IF sy-subrc 0. 如果号码范围存在则加锁CALL FUNCTION NUMBER_GET_NEXT 将号码累加,获得下一个流水号EXPORTINGnr_range_nr 01object YSNROignore_buffer XIMPORTINGnumber p_noEXCEPTIONSinterval_not_found 1number_range_not_intern 2object_not_found 3quantity_is_0 4quantity_is_not_1 5interval_overflow 6buffer_overflow 7OTHERS 8.IF sy-subrc 0.MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgnoWITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.ELSE.CALL FUNCTION NUMBER_RANGE_DEQUEUE 解锁EXPORTINGobject YSNROEXCEPTIONSobject_not_found 1OTHERS 2.ENDIF.ENDIF.
ENDFORM.4、测试程序
REPORT yz_demo_xlevon_snro.PERFORM add_data.
PERFORM add_data.
PERFORM add_data.
COMMIT WORK.
SELECT * FROM ytxlevon_snro INTO TABLE DATA(lt_xlevon).
cl_demo_outputdisplay( lt_xlevon ).* 增加表记录
FORM add_data.DATA: ls_xlevon TYPE ytxlevon_snro.DATA: lv_no TYPE ytxlevon_snro-ysnro.PERFORM get_no CHANGING lv_no.ls_xlevon-ysnro lv_no.MODIFY ytxlevon_snro FROM ls_xlevon.
ENDFORM.
...原创文章转载请注明来源-X档案