欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

【點晴模切ERP】SAP系統實現物料批次自動編號介紹

admin
2024年8月28日 10:29 本文熱度 1578

批次編號處理

批次編號范圍(將采用批次管理的物料分為兩類,一類是自制件(E),另一類是采購件(F),對于既有自制、又有采購的,根據實際狀況處理)

1、對于自制件,批次編號跟生產訂單編號一致(使用出口來實現)

2、對于外購件,批次編號采用6位日期+3位流水碼(使用出口來實現)

內部編號范圍分配目前邏輯如下,根據物料的生產方式。

1、F->外購件-> 批次編號采用6位日期+3位流水號

  a. 對于1個物料來說,如果批次號碼內部給號而不是手工輸入,那么流水碼從001 直到999,每次貨物移動,流水碼自動加1

  b. 對于不同的物料來說,比如之前有個物料使用了流水碼180111000,如果MCH1物料+流水碼查詢不到記錄,那么此物料仍然可以使用流水碼180111000

2、E->外購件->批次編號采用生產訂單編號

3、X->判斷當前的生產訂單編號是否為空

  a. 生產訂單編號為空-> 6位日期+3位流水號

  b. 生產訂單編號不為空->生產訂單編號(生產訂單編號采用10位,前兩位為工廠代碼)

對于增強批次自動編號說一下我的理解:

用戶出口 SAPLVO1Z 是用戶自動分配批次號碼(內部給號的),并且只有在配置了基于移動類型生成新批次,并且設置成 B,此出口才會被觸發,所有的配置 B 的移動類型,在用 MIGO 進行貨物移動時,都會觸發增強的邏輯,并且增強邏輯只對(沒有輸入批次號碼)這種情況下才生效。

集團配置的自動創建批次移動類型為 101、103、501:

 

對于批次,整個集團的規則是,批次號碼均是自動生成,只有特殊情況才可以手工輸入(561初始化,以及盤盈 701、711):

1、只有收貨(101、103、501-僅限采購件),才能自動產生新批次(設置成B-Automatic/Manual and check in USER EXIT),其他的移動類型都要設成G-no creation。

2、對于消耗的移動類型(201、261、281、601、541、543),批次都是根據批次確定規則(FIFO&剩余貨架壽命),自動排出批次(在 migo里面也要配置增強,如果輸入的批次號不在 MCH1 或者 MCHA 中會報錯),且不允許產生新批次->全部設成G-no creation,且需要配置批次確定規則。

3、對于移庫類(241/242、301/302、303/304、305/306、309/310、311/312、313/314、315/316、344/343、411/412、413/414、415/416、551/552。。)如果物料有用到批次管理,會檢查輸入的批次是否存在,如果不存在,會報錯,也是在MIGO 增強里面做檢查,因為移庫可能沒法使用 FIFO 規則。且不允許產生新批次->全部設成G-no creation,且不需要配置批次確定規則。

4、對于 561,并不設置內部檢查規則(即采用默認配置),對于561初始化庫存時,批次可以手工輸入。

5、對于701(盤盈),理論上,所有的盤盈并不會產生新批次,如果真的產生新批次的物料,批次可以手工輸入,即701也采用默認配置。

CMOD 創建增強項目

 

注:EXIT_SAPLV01Z_001 &EXIT_SAPLV01Z_002適用于內部給號的情況。

 

對出口 EXIT_SAPLV01Z_002 加代碼。

 

源代碼

*&-----------*

*& Include ZXVBZU02

*& 內部編號范圍分配目前邏輯如下

*& 根據物料的生產方式

*& F->外購件->批次編號采用6位日期+3位流水號

*& 流水號含義->對于1個物料來說如果批次號碼內部給號而不是手工輸入,那么流水碼從 001 直到999,

*& 每次貨物移動,流水碼自動加1

*& 對于不同的物料來說,比如之前有個物料使用了流水碼180111001 如果MCH1 物料+流水碼

*& 查詢不到記錄,那么此物料仍然可以使用流水碼180111001

*& E->外購件->批次編號采用生產訂單編號

*& X->判斷當前的生產訂單編號是否為空

*& 生產訂單編號為空 -> 位日期+3位流水號

*& 生產訂單編號不為空->生產訂單編號

*&--------------------------*

TABLES:zbatch,mch1,marc.

DATA tab01 LIKE TABLE OF zbatch WITH HEADER LINE.

DATA batch_number TYPE mch1-charg.

DATA pre_flow_number(3) TYPEn. "前一個流水號

DATA cur_flow_number(3) TYPEn. "當前流水號

DATA zbeskz TYPE marc-beskz. "采購方式

CLEAR batch_number.   "批次號碼

CLEAR pre_flow_number.

CLEAR cur_flow_number.

CLEAR tab01.

"首先獲取物料的采購方式

SELECT SINGLE marc~beskzINTO zbeskzFROM marc WHERE marc~werks = x_bncom-werks AND marc~matnr = x bncom-matnr.

"首先獲取當前日期,當前物料下,該物料的最大批次號

CASE zbeskz.

WHEN 'F'.          "外購件,使用流水碼的批次號

SELECT MAX( charg ) INTObatch_number FROM MCH1 WHERE matnr = x_bn

com-matnr AND ERSDA=sy-datum.

IF batch_number IS INITIAL    "如果當天的批次號不存在,那么當前流水號為001

    cur_flow_number ='001'.

ELSE.

    pre_flow_number = batch_number+6(3).    "如果當天的批次存在,那么前一個流水號=取到的流水號

    cur_flow_number = pre_flow_number+1.    "當前流水號=前一個流水號+1

ENDIF.

"將此次的批次信息插入到表ZBATCH 中

CONCATENATEsy-datum+2(6) cur_flow_number INTObatch_number "當前日期后6位+當前流水號作為當前的批次號碼

WHEN 'E'.

    IF x_bncom-bwart <> '101' or x_bncom-bwart <> '103'.

    MESSAGE e001(00)WITH'Please input batch number!'.

    ELSE.

    batch_number = x_bncom-aufnr.

    ENDIF.

WHEN 'X'.

    IF x_bncom-aufnr IS INITIAL.

    SELECT MAX( charg) INTObatch_number FROM zbatch WHERE matnr = x

    bncom-matnr AND cdate=sy-datum.

    IF batch_number IS INITIAL.     "如果當天的批次號不存在,那么當前流水號為001

    cur_flow_number ='001'.

ELSE.

    pre_flow_number = batch_number+6(3). "如果當天的批次存在,那么前一個流水號=取到的流水號

    cur_flow_number = pre_flow_number+1  "當前流水號=前一個流水號+1

ENDIF.

    "將此次的批次信息插入到表ZBATCH 中

    CONCATENATE sy-datum+2(6) cur_flow_number INTO batch_number "當前日期后6位+當前流水號作為當前的批次號碼

ELSE.

    IF x_bncom-bwart <> '101' or x_bncom-bwart <> '103'.

    MESSAGE e001(00)WITH'Please input batch number! Finished Goods auto batch numer only allowed for mvt 101'.

ELSE.

    batch number = x bncom-aufnr.

    ENDIF.

ENDIF.

ENDCASE.

* tab01-charg = batch_number.

* tab01-matnr = x_bncom-matnr.

* tab01-cdate =sy-datum.

* tab01-werks = x_bncom-werks.

* APPEND tab01.

*

* IF sy-ucomm = 'OK_POST1'. "只有post才會將數據寫入到表 ZBATCH 中

* INSERT zbatch FROM tab01.

* COMMIT WORK.

* ENDIF.

new_charg = batch_number.

測試驗證:

采購件

 

根據當前系統日期帶出批次編號,測試通過。



點晴模切ERP更多信息:http://moqie.clicksun.cn,聯系電話:4001861886

該文章在 2024/8/28 10:54:49 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved