SD--如何增強是同一類出庫單使用不同號碼段
在現實的業務中,一個公司有多個銷售組織,它們使用同一個出庫型別,業務往往希望它們建立的出庫單的號碼採用不同號碼範圍。但在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.
相關連結:
相關文章
- 使用Mongoose類庫實現簡單的增刪改查Go
- 在不同網段使用 VLAN 通訊 - SVI,單臂路由路由
- SD--批量刪除訂單
- SD--根據訂單建立出庫單(相關的函式列表的介紹系列篇(2))函式
- 如何增強單頁應用的體驗
- SD--如何在輸出控制中增加自定義欄位
- 如何讓jsp使用同一個bean同時連線操作兩個不同的資料庫JSBean資料庫
- 字符集例子-同一字元不同字符集編碼不同及匯入匯出的亂碼字元
- PostgreSQL10.0preview效能增強-分割槽表效能增強(plan階段加速)SQLView
- 類的方法,函式,同一個package不同.py檔案,不同package不同.py檔案————呼叫問題函式Package
- Linux 核心版本號命名四個不同的階段Linux
- SAP 序列號裡'主批次'與'庫存批次'不同,如何修改?
- js根據不同的時間段輸出不同的語句JS
- 什麼是資料增強?
- 表在同一庫中不同表空間上轉移
- FTP不同使用者登入同一個目錄FTP
- 銳捷教你增強無線wifi訊號WiFi
- 同一個form表單中有多個提交按鈕規定不同功能程式碼例項ORM
- View UI Plus 釋出 1.3.1 版本,增強 TypeScript 使用體驗ViewUITypeScript
- 表在同一庫中不同表空間上轉移[轉]
- 同一專案、不同版本之間原始碼的閱讀原始碼
- 將資料、程式碼、棧放入不同的段
- 如何判斷多賬號是同一個人?用圖技術搞定 ID MappingAPP
- Linux增強系統安全性:防止單使用者模式(single)修改密碼Linux模式密碼
- MySQL 密碼增強外掛MySql密碼
- 資料庫是如何使用鎖資料庫
- 如何在Python退出時強制執行一段程式碼Python
- 淺談位元組碼增強技術系列1-位元組碼增強概覽
- 如何使用同一BluetoothGatt連線不同的android應用程式在相同的裝置上?Android
- TCP和UDP可以使用同一個埠號嗎?TCPUDP
- 如何使用python輸出連續星號?Python
- 同一個form表單提交到不同的頁面進行處理ORM
- Ask Hoegh(7)——寫sql時如何輸出單引號?SQL
- vb.net 類庫中如何使用webserviceWeb
- MIGO 增強 提交資料庫後Go資料庫
- [程式碼結構設計]根據不同條件使用不同實現類的業務程式碼設計
- Java使用QRGen類庫生成二維碼Java
- Java位元組碼增強技術Java