NUMBER_GET_NEXT 获取编号 遇到关于按年度编号的问题

Posted 明大叔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NUMBER_GET_NEXT 获取编号 遇到关于按年度编号的问题相关的知识,希望对你有一定的参考价值。

最近给财务做了一个平台,在系统创建一些特殊类型的合同,需要生成合同编号:财务要求 合同类型+公司代码 +年+三位流水号,

eg:CP6008-2017001

 

SNRO

   子对象数据元素就是 公司代码 不多解释

   勾选 截至年份标志  :表示 按照年份 重新获取编号(从范围的最小值重新开始)

   勾选 无滚动           :表示 所有编号用完 不会重新回到最小值开始,不勾选 反之 表示 重新从最小号开始编号

好  ,那么问题来了 今年是2017年,如果我只是维护2016年的编号范围  NUMBER_GET_NEXT 报错,

                                               如果我直接维护2018年的编号范围,NUMBER_GET_NEXT 获取成功,输入参数明明是2017年,却在2018年获取了编号

以下是测试过程:

NUMBER_GET_NEXT:  按年编号 需要传入 toyear 参数

我在维护一下18年的编号范围:

NUMBER_GET_NEXT:

成功了  (被坑在这这个问题上,2017年的没有维护 ,理论上是不是应该提醒一下啊 SAP同学?)

-----------------------------------------------------------------

没办法自己解决:

在执行 NUMBER_GET_NEXT 前  检查一下  是否维护了当前年度的编号范围。数据库表为NRIV

 

  CALL FUNCTION \'NUMBER_RANGE_ENQUEUE\'
    EXPORTING
      OBJECT                 = \'\'
    EXCEPTIONS
      FOREIGN_LOCK           = 1
      OBJECT_NOT_FOUND       = 2
      SYSTEM_FAILURE         = 3
      OTHERS                 = 4
            .

  CALL FUNCTION \'NUMBER_GET_NEXT\'
    EXPORTING
      NR_RANGE_NR                   = \'00\'
      OBJECT                        = 
      SUBOBJECT                     = P_BUKCG
      TOYEAR                        = SY_DATUM+0(4)
      IGNORE_BUFFER                 = \'X\'
    IMPORTING
      NUMBER                        = P_HTNUM
    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
            .

  CALL FUNCTION \'NUMBER_RANGE_DEQUEUE\'
    EXPORTING
      OBJECT                 = \'\'
    EXCEPTIONS
      OBJECT_NOT_FOUND       = 1
      OTHERS                 = 2
            .

 

-----------------------------

励志美文、《抉择》
 
人的一生常处于抉择之中,如:念哪一间大学?选哪一种职业?娶哪一种女子?……等等伤脑筋的事情。一个人抉择力的有无,可以显示其人格成熟与否。
 
倒是哪些胸无主见的人,不受抉择之苦。因为逢到需要决定的时候,他总是求询别人说:"嘿,你看怎么做?"
 
大凡能够成大功业的人,都是抉择力甚强的人。他知道事之成败,全在乎已没有人可以代劳,更没有人能代你决定。
 
在抉择的哪一刻,成败实已露出端倪。

 

以上是关于NUMBER_GET_NEXT 获取编号 遇到关于按年度编号的问题的主要内容,如果未能解决你的问题,请参考以下文章

获取数组中对象的编号,但不获取对象本身。 - Laravel 5.2

VBA访问需要在保存新记录之前获取自动编号

如何获取当前任务的CPU编号(在内核中)?

刚学数据库,遇到一道关于数据库sql语句的题目,实在不会,请高手帮忙解答一下,谢谢!

关于遇到获取用户正确的输入问题

微信开发中遇到的问题,关于cdnmidimgurl 图片获取