zoukankan      html  css  js  c++  java
  • SAP系统中设定流水号

    通俗的讲就是按自己定义的规则生成流水号 。下面分享一下产生流水号的步骤:     

                      1. 系统中设定流水号

    使用T-Code SNRO来创建一个流水号标识对象,

     

    输入Object ZLC_001,然后单击创建。

     

    然后输入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.

      给屏幕字段复值:

    data field (50).

    field-symbols:<f1> type any,<f2> type any.

    data i_no(10) type N.

    clear i_no.

     

           CALL FUNCTION 'NUMBER_GET_NEXT'

             EXPORTING

               NR_RANGE_NR             = '00'

               OBJECT                  = 'ZLC_001'

             IMPORTING

               NUMBER                  = i_no.

    field = ' i_no'.

    ASSIGN (FIELD) TO <f1>. 

    field = '(SAPLMIGO)GOHEAD-XBLNR'."SAPLMIGO程序名;GOHEAD-XBLNR屏幕字段

    assign (FIELD) to <f2>.

    <F2> = <f1>.

     

     

  • 相关阅读:
    商户网站使用第三方支付的大致原理和实现
    ASP.NET MVC中检测浏览器版本并提示下载更新
    如何选择使用IEnumerable, ICollection, IList
    IEnumerable和IQueryable的区别以及背后的ExpressionTree表达式树
    IEnumerable是集合,IEnumerator是集合的迭代器
    ASP.NET MVC中使用Session来保持表单的状态
    在ASP.NET MVC中实现Select多选
    总结ASP.NET MVC视图页使用jQuery传递异步数据的几种方式
    在ASP.NET MVC4中使用Quartz.NET执行定时任务
    委托, 泛型委托,Func<T>和Action<T>
  • 原文地址:https://www.cnblogs.com/weichuo/p/2050243.html
Copyright © 2011-2022 走看看