在现实的业务中,一个公司有多个销售组织,它们使用同一个出库类型,业务往往希望它们创建的出库单的号码採用不同号码范围。但在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. 磁盘镜像工具Guymager

    磁盘镜像工具Guymager   在数字取证中,经常需要对磁盘制作镜像,以便于后期分析.Kali Linux提供一款轻量级的磁盘镜像工具Guymager.该工具采用图形界面化方式,提供磁盘镜像和磁盘克 ...

  2. First Missing Positive -- LeetCode

    Given an unsorted integer array, find the first missing positive integer. For example,Given [1,2,0]  ...

  3. 初学Django:创建第一个项目+使用模板

    1. 创建一个项目 之前在Anaconda 3里面用命令行安装了Django之后,有了可用的管理工具django-admin.py (1)用django.admin.py来创建一个项目Hellowor ...

  4. adb devices 找不到设备怎么办 --- 2

    问题现象:在电脑上安装好手机驱动后,手机进入设置---->应用程序---->开发----->勾选USB调试后连接电脑,,在CMD命令中输入adb devices发现没有设备. 解决方 ...

  5. ANDROID模拟器访问本地WEB应用10.0.2.2

    在一般的Java Web程序开发中,我们通常使用localhost或者127.0.0.1来访问本机的Web服务,但是如果我们在Android模拟器中也采用同样的地址来访问,Android模拟器将无法正 ...

  6. Visual Studio 插件开发资源

    微软官方MSDN 官方MSDN永远是最大而全的电子字典Visual Studio Software Development Kit ,不过它的资料虽然详细,但没有一定的基础的话直接使用它的话有点无从入 ...

  7. JS 随机数字抽签

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <t ...

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

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

  9. SilverLight-3:SilverLight 备注

    ylbtech_silverlight 一.DebugSilverlight应用程序的方法: 第一种: 1.Silverlight引用命名空间:System.Diagnostics; 2.在程序必要的 ...

  10. JAVA之抽象类与抽象方法

    抽象方法:在类中没有方法体的方法,就是抽象方法.抽象类:含有抽象方法的类就叫抽象类.|||||||||抽象类不能被实例化(new)为什么要使用抽象方法?(以下是个人观点)因 为在面向对象的编程的思想中 ...