在现实的业务中,一个公司有多个销售组织,它们使用同一个出库类型,业务往往希望它们创建的出库单的号码採用不同号码范围。但在sap里出库单号码范围是在出库单类型里设置,也就是使用同样的出库单类型,也就使用同样的号码范围。假设要达到上需业务需求,我们能够使用增强实现。

详细实现參见以下的步骤:

步骤1:创建多个号码段:

path: Spro->Sales and Distribution->Sales->Sales Documents->Sales Document Header->Define Number Ranges For Sales Documents

or

path: Spro->Logistics Execution->Shipping->Deliveries->Define Number Ranges for Deliveries



TCODE: VN01

 

步骤二:设置出库单类型的号码范围

path: Spro->Logistics Execution->Shipping->Deliveries->Define Delivery Types

TCODE: 0VLK

步骤三:改动SAP增强代码

modify the source code to control use different number range for different sale organiztion

3.1 you can use se38 to open source code MV50AFZ1 and find the form userexit_number_range.

*---------------------------------------------------------------------*

*       FORM USEREXIT_NUMBER_RANGE                                    *

*---------------------------------------------------------------------*

*       This userexit can be used to determine the numberranges for   *

*       the internal document number.                                 *

*                                                                     *

*       US_RANGE_INTERN - internal number range                       *

*                                                                     *

*       This form is called from form BELEG_SICHERN                   *

*                                                                     *

*---------------------------------------------------------------------*

FORM USEREXIT_NUMBER_RANGE USING US_RANGE_INTERN.

* Example: Numer range from TVLK like in standard

* US_RANGE_INTERN = TVLK-NUMKI.

*{   INSERT         DEVK943692                                        1

 DATA: z_werks TYPE lips-werks,

        z_vkorg TYPE likp-vkorg,

        z_nrnr  TYPE nrnr,

        z_vbtyp TYPE likp-vbtyp.

  DATA: wa_xlikp LIKE likpvb,

        wa_xlips LIKE lipsvb.

US_RANGE_INTERN = TVLK-NUMKI.

data t(1).

t = TVLK-LFART(1).

if t = 'Z'.

  LOOP AT xlikp INTO wa_xlikp.

    LOOP AT xlips INTO wa_xlips.

      CASE wa_xlikp-vbtyp.

        WHEN OTHERS.

          MOVE: wa_xlikp-vbtyp TO z_vbtyp.

      ENDCASE.

      IF z_vbtyp EQ 'J' or        "outbound del.

         z_vbtyp eq 'T'.          "return del. "V003

        MOVE: wa_xlips-werks TO z_werks,       "V002  "SBr16072007

              wa_xlikp-vkorg TO z_vkorg.

      ELSEIF z_vbtyp EQ '7'.      "shipp.notification

        MOVE: space          TO z_vkorg,

              wa_xlips-werks TO z_werks.

      ENDIF.

      if z_vkorg = '6001'.

         if  z_vbtyp eq 'J'.

            Case z_werks.

              WHEN '6255'.

                US_RANGE_INTERN = 'D1'.

              WHEN '6245'.

                US_RANGE_INTERN = 'D2'.

              WHEN '6254'.

                US_RANGE_INTERN = 'D3'.

              WHEN '6234'.

                US_RANGE_INTERN = 'D4'.

              WHEN '6101'.

                US_RANGE_INTERN = 'D5'.

            endcase.

         elseif z_vbtyp EQ 'T' .

            Case z_werks.

              WHEN '6255'.

                US_RANGE_INTERN = 'R1'.

              WHEN '6245'.

                US_RANGE_INTERN = 'R2'.

              WHEN '6254'.

                US_RANGE_INTERN = 'R3'.

              WHEN '6234'.

                US_RANGE_INTERN = 'R4'.

              WHEN '6101'.

                US_RANGE_INTERN = 'R5'.

            endcase.

         endif.

      endif.

      EXIT.

    ENDLOOP.

    EXIT.

  ENDLOOP.

endif.

*}   INSERT

ENDFORM.

相关链接:

怎样控制同一个订单类型的使用多个号码范围

SD--怎样增强是同一类出库单使用不同号码段的更多相关文章

  1. SAP 出库单新版

    *&---------------------------------------------------------------------* *& Report  ZSDR045 ...

  2. SAP打印出库单 新需求

    *&---------------------------------------------------------------------* *& Report  Z_SD_CKD ...

  3. SAP打印出库单需求

    *&---------------------------------------------------------------------* *& Report  Z_SD_CKD ...

  4. U811.1接口EAI系列之二--生成销售出库单调用U8的EAI通用处理方法--PowerBuilder语言

    1.销售系统销售出库,更新U811.1材料库存的EAI的XML生成. 2.主要根据U8配置会生成出库单和同时是否更新库存量,还是更新现存量等等. 3.具体参考代码如下: 作者:王春天 2013-11- ...

  5. PHP实现打印出库单,有没有实现过?

    https://mp.weixin.qq.com/s/X3JldplICRq7KR0HNFcpuw 背景 有时候你在实现一个出库订单之类的功能模块,这里也有可能要你的站点也实现相应的打印出库单预览,今 ...

  6. WMS出库单重复

    发货通知单?WMS备货单选项勾选 不自动复制?新增?

  7. 基于VUE实现的h5网页Web出库单入库单打印设计

    经过将近一个月的研发,初步实现了打印单据的自定义设计,样子还有点丑陋,但是功能基本都实现了,实现了以下功能: 1.表头表尾支持动态添加行.添加列.合并单元格(可多行多列合并). 2.表头表尾分别布局, ...

  8. ERP出库审核业务(四十四)

    结束表单流程的代码: protected void btnSubmit_Click(object sender, EventArgs e) { if(this.txtreceiveDate.Text! ...

  9. U811.1接口EAI系列之五--材料出库--VB语言

    主要业务有:09其他出库单 11:材料出库单 32:销售出库单 主要业务代码: '材料出库生成XML Public Function xml_storeout(ds_head As MSHFlexGr ...

随机推荐

  1. 洛谷——P1143 进制转换

    P1143 进制转换 题目描述 请你编一程序实现两种不同进制之间的数据转换. 输入输出格式 输入格式: 输入数据共有三行,第一行是一个正整数,表示需要转换的数的进制n(2≤n≤16),第二行是一个n进 ...

  2. python 设计模式之中介模式

    Mediator Pattern:中介模式 中介模式提供了一系列统一的系统接口.此模式也被认为是行为模式,因为他能选择程序处理流程.  当许多类开始在交互中产生结果时,可以选用中介模式.当软件开始组织 ...

  3. 八. 输入输出(IO)操作5.面向字节流的应用

    文件输入输出流 文件输入输出流 FileInputStream 和 FileOutputStream 负责完成对本地磁盘文件的顺序输入输出操作. [例 10-5]通过程序创建一个文件,从键盘输入字符, ...

  4. 利用json2csharp快速生成C#类

    有的时候,我们需要将一些Json格式的字符串反序列化为.Net对象,虽然有强大的Json.net可以帮助我们快速完成这一操作.但首先仍需要我们根据Json数据手动编写C#类,这也是一件比较枯燥而容易出 ...

  5. Vue的常用指令v-if, v-for, v-show,v-else, v-bind, v-on

    Vue.js的指令是以v-开头的,它们作用于HTML元素,指令提供了一些特殊的特性,将指令绑定在元素上时,指令会为绑定的目标元素添加一些特殊的行为,我们可以将指令看作特殊的HTML特性(attribu ...

  6. [Android Traffic] 使用缓存来避免重复的下载

    转载自: http://blog.csdn.net/kesenhoo/article/details/7395817 Redundant Downloads are Redundant[重复下载是冗余 ...

  7. python之生成excel

    #_*_coding:utf-8_*_ import MySQLdb import xlwt from datetime import datetime def get_data(sql): # 创建 ...

  8. depth linear

    float ConvertDepth( float depthFromTex, float4 cameraParams ){ const float near = cameraParams.z; co ...

  9. ElastcSearch的Mapping映射建立

    根据oracle的字段来建立ElasticSearch的Mapping public class Start { private static Logger log = LoggerFactory.g ...

  10. 查找文件命令find总结以及查找大文件

    find / -name *** 示例如下: [dinpay@zk-spark-01 spark]$ find /home/ll -name slaves /home/ll/spark/conf/sl ...