关于库存 库存BAPI
mard里記載的是當(dāng)前庫(kù)存的數(shù)量,但是期間并不一定是當(dāng)月。比如你物料4月一整月都沒(méi)有庫(kù)存數(shù)量變化(沒(méi)收沒(méi)發(fā)),那么5月初你看mard里的條目期間數(shù)還是4月而非5月。
當(dāng) 某個(gè)期間發(fā)生貨物移動(dòng)的時(shí)候,系統(tǒng)在更新mard數(shù)據(jù)的之前(這個(gè)表是實(shí)時(shí)更新的),會(huì)檢查此筆業(yè)務(wù)過(guò)賬期間和mard里對(duì)應(yīng)記錄的期間是否一致,也就是 看這是不是本期間第一筆移動(dòng)。如果是,copy表mard里對(duì)應(yīng)記錄到mardh,然后把mard記錄改成當(dāng)期(也可能是先刪后建),然后再作更新數(shù)量數(shù) 據(jù)的操作。如果不是第一筆記錄,也就是mard期間和mseg期間一致,則不作copy記錄只更新mard數(shù)量。
這樣處理貌似減少了冗余數(shù)據(jù),不過(guò)給編程取歷史庫(kù)存增加了很大的工作量,個(gè)人覺(jué)得不算明智之舉。
庫(kù)存方面的表
mbew???? mbewh
mard--查主庫(kù)存??? mardh--主庫(kù)存歷史記錄
mslb--特殊庫(kù)存O? mkol--特殊庫(kù)存K/M???? mska--特殊庫(kù)存E????????? msku--特殊庫(kù)存V/W
mcha? mchb
無(wú)論移動(dòng)平均價(jià)(Moving Average Price MAP)是否有更改,MBEWH表都會(huì)更新。
MBEWH表記錄了MBEW表的歷史數(shù)據(jù),而MBEW是物料評(píng)估(Material Valuation)表。
MBEW表記錄了當(dāng)前的物料價(jià)格,當(dāng)物料價(jià)格被重估(比如更新物料當(dāng)前移動(dòng)平均價(jià))時(shí),SAP系統(tǒng)會(huì)將當(dāng)前價(jià)格寫入MBEWH表中,而將新價(jià)格寫入MBEW中。
當(dāng)前的價(jià)格總是記錄在表MBEW中,當(dāng)某一期間(Period)的第一項(xiàng)操作更新了物料數(shù)量或價(jià)值,則SAP系統(tǒng)會(huì)向表MBEWH寫入一條記錄,以第一項(xiàng)操作之前的余額、價(jià)格控制為標(biāo)準(zhǔn)。
在MBEWH表中代表上一期間記錄的數(shù)字儲(chǔ)存在“當(dāng)前期間”LFMON字段中。
例:當(dāng)在3期間發(fā)生第一筆過(guò)賬(比如收貨),則系統(tǒng)會(huì)在MBEWH表中的“當(dāng)前期間”LFMON字段寫入數(shù)字2,數(shù)量和價(jià)值更新到“總庫(kù)存(Total Stock)”和“總價(jià)值(Total Value)”字段,并且等于發(fā)生在3期間的數(shù)量和價(jià)值。
若在連續(xù)幾個(gè)期間內(nèi)未發(fā)生過(guò)賬,則表MBEWH不會(huì)為每個(gè)期間創(chuàng)建記錄。
表MBEW、MBEWH與MCHBH的區(qū)別:
MBEW:查看當(dāng)前賬期的移動(dòng)平均價(jià)
MBEWH:查看歷史賬期的移動(dòng)平均價(jià)
表MBEWH記錄了所有的庫(kù)存價(jià)值,而表MCHBH則只代表了未限制庫(kù)存的價(jià)值。
如何查看當(dāng)前移動(dòng)平均價(jià):
事務(wù)代碼:S_P00_07000139
每次物料重估后的最新移動(dòng)平均價(jià)。
?
用戶/客戶有幾百種“歷史庫(kù)存報(bào)表需求”的理由,而且是可以查任意時(shí)間的。
可惜的是,SAP系統(tǒng)并沒(méi)有現(xiàn)成的所謂的History Stock,其實(shí)也沒(méi)有必要,這違背了數(shù)據(jù)庫(kù)設(shè)計(jì)的冗余規(guī)則。
我看到過(guò)的SAP系統(tǒng)中關(guān)于“歷史庫(kù)存報(bào)表”或“時(shí)點(diǎn)庫(kù)存報(bào)表”的方案無(wú)外乎有兩種:
一、使用作業(yè)的辦法,定期(一般是每天)抓取作業(yè)執(zhí)行時(shí)刻的庫(kù)存信息,存儲(chǔ)在自定義表格中;
二,查詢業(yè)務(wù)單據(jù)或物料憑證的明細(xì),再累計(jì)出待查時(shí)刻的余額。
方法一的好處在于,查詢歷史數(shù)據(jù)速度較快。但是,這相當(dāng)?shù)恼加么鎯?chǔ)資源;
其二,我們不能保證這定期的作業(yè)的確定性,硬件維護(hù)、系統(tǒng)性能都可能使這預(yù)定的“時(shí)刻”出現(xiàn)偏差,如果某一次沒(méi)能抓取該時(shí)刻的庫(kù)存,對(duì)整個(gè)報(bào)表來(lái)說(shuō),是數(shù)據(jù)的缺失;
其三,最初設(shè)計(jì)的抓取數(shù)據(jù)的方式、方法,極有可能在新需求的壓力下被修改,或者被推翻,這仍然不能滿足需要。
方法二的好處在于,它解決了上一個(gè)方案的第二和第三個(gè)問(wèn)題。不過(guò),這個(gè)報(bào)表運(yùn)行起來(lái)就像回到了石器時(shí)代。這對(duì)于業(yè)務(wù)數(shù)據(jù)量大的SAP系統(tǒng)的影響是致命的,因?yàn)樗坏チ?/p>
用戶的信任,更可怕的是它會(huì)動(dòng)搖管理層的信心。
或許有第三個(gè)方案,有人會(huì)想到信息記錄(LIS),SAP有一大堆積于LIS的庫(kù)存分析報(bào)表,不過(guò),用過(guò)的人都知道,它極不可信。這種報(bào)表成就了日常對(duì)數(shù)的用戶與支持者或?qū)嵤┱?/p>
之間曠日持久的拉鋸戰(zhàn),雖然OSS里面有若干針對(duì)LIS報(bào)表的修正方案。
我在一次對(duì)數(shù)的過(guò)程中嘗試了第四種方案,那就是帶H的月累表:MARCH、MARDH、MBEWH等。分析了一下這些表格的更新邏輯,它不是將每一種物料每一個(gè)期間都更新到表中的。
然后,摸索出一條使用標(biāo)準(zhǔn)程序來(lái)獲得歷史庫(kù)存的途徑。相關(guān)TCODE是,MB5B、MB51,不使用MB5T。
?| ? | 狀態(tài) | 庫(kù)存級(jí)別 | 查詢方式 |
| 有價(jià)庫(kù)存 | 在庫(kù) | S.Loc | MB5B(Valued Option) |
| 在途(采購(gòu)、兩步移庫(kù)) | Plant | MB5B(Valued Option) | |
| 質(zhì)檢 | S.Loc | MB5B(Valued Option) | |
| 凍結(jié) | S.Loc | MB5B(Valued Option) | |
| 其他特殊庫(kù)存 | Plant | MB5B(Valued Option) | |
| 零價(jià)庫(kù)存 | 在庫(kù) | S.Loc | MB5B(S.Loc Option) |
| 在途(采購(gòu)、兩步移庫(kù)) | Plant | MB51累計(jì) | |
| 質(zhì)檢 | S.Loc | MB5B(S.Loc Option) | |
| 凍結(jié) | S.Loc | MB5B(S.Loc Option) | |
| 其他特殊庫(kù)存 | Plant | MB5B(S.Loc Option) |
?
?
庫(kù)存:?
1. BAPI_MATERIAL_AVAILABILITY 獲得商品可用庫(kù)存?
2. CO_ZA_AVAILABILITY_CHECK?
3.AVAILABILITY_CHECK_CONTROLLER?
4.AVAILABILITY_CHECK?
庫(kù)存管理:?
BAPI_GOODSMVT_GETDETAIL 顯示貨物移動(dòng)的明細(xì)?
BAPI_GOODSMVT_GETITEMS 顯示物料憑證的詳細(xì)清單?
BAPI_GOODSMVT_CREATE 貨物移動(dòng)過(guò)帳,入庫(kù),出庫(kù)?
BAPI_GOODSMVT_CANCEL 沖銷貨物移動(dòng)
?
| BAPI_MATERIAL_SAVEDATA | 建立/更改物料主檔 |
| BAPI_OBJCL_CREATE | 建立/更改物料主檔分類 |
| BAPI_OBJCL_CHANGE | 建立/更改物料主檔分類 |
| CLMM_MAINTAIN_CLASSIFICATIONS | 批量建立/更改物料主檔分類 |
| CLAF_CLASSIFICATION_OF_OBJECTS | 顯示物料主檔分類特性值 |
| BAPI_MATERIAL_EXISTENCECHECK | 檢查物料主檔是否存在 |
| BAPI_MATERIAL_GETLIST | 顯示物料主檔明細(xì) |
| ? | ? |
| BAPI_PO_CREATE1 | 建立采購(gòu)單 |
| BAPI_PO_CHANGE | 更改采購(gòu)單 |
| BAPI_PO_GETDETAIL | 顯示采購(gòu)單明細(xì) |
| BAPI_PO_RELEASE | 核發(fā)采購(gòu)單 |
| BAPI_REQUISITION_CREATE | 建立請(qǐng)購(gòu)單 |
| BAPI_REQUISITION_CHANGE | 更改請(qǐng)購(gòu)單 |
| BAPI_REQUISITION_GETDETAIL | 顯示請(qǐng)購(gòu)單明細(xì) |
| BAPI_REQUISITION_RELEASE_GEN | 核發(fā)請(qǐng)購(gòu)單 |
| ? | ? |
| BAPI_CHARACT_CREATE | 建立特性 |
| BAPI_CHARACT_CHANGE | 更改特性 |
| BAPI_CHARACT_DELETE | 刪除特性 |
| BAPI_CHARACT_RENAME | 重新命名特性 |
| BAPI_CHARACT_GETDETAIL | 讀取特性屬性 |
| BAPI_CHARACT_ADDLONGTEXT | 設(shè)定特性或數(shù)值的長(zhǎng)文 |
| BAPI_CHARACT_REMOVELONGTEXT | 刪除特性或數(shù)值的長(zhǎng)文 |
| BAPI_CHARACT_GETLONGTEXT | 讀取數(shù)值的特性長(zhǎng)文 |
| CARD_CHARACTERISTIC_READ | 顯示特性值的值列表 |
| ? | ? |
| BAPI_CLASS_CREATE | 建立類別 |
| BAPI_CLASS_CHANGE | 變更類別 |
| BAPI_CLASS_DELETE | 刪除類別 |
| BAPI_CLASS_GETDETAIL | 讀取類別資訊(取分類下特性及特性值) |
| BAPI_CLASS_EXISTENCECHECK | 檢查物件存在性 |
| ? | ? |
| BAPI_VENDOR_GETDETAIL | 顯示供應(yīng)商明細(xì) |
| BAPI_VENDOR_EXISTENCECHECK | 檢查存在性 |
| ? | ? |
| BAPI_MATERIALGROUP_GET_LIST | 讀取物料群組/物料群組說(shuō)明 |
| ? | ? |
| BAPI_GOODSMVT_CREATE | 過(guò)帳物料異動(dòng) |
| BAPI_GOODSMVT_CANCEL | 沖帳(取消)物料異動(dòng) |
| BAPI_GOODSMVT_GETDETAIL | 顯示物料異動(dòng)明細(xì) |
| BAPI_GOODSMVT_GETITEMS | 顯示物料文件的明細(xì)清單 |
??
MBEW和MBEWH的更新機(jī)制
假 設(shè)有某料從period 1開(kāi)始就一直沒(méi)有做交易,那時(shí)庫(kù)存是100,MAP假設(shè)是1RMB/PC,一直到現(xiàn)在period 4, 你收了100個(gè),2RMB/PC,系統(tǒng)會(huì)在每個(gè)跨期間的第一筆交易將歷史記錄寫入MBEWH,假設(shè)period 2,3無(wú)交易,MBEWH將增加一筆 period 3, 100 PC, MAP 1RMB ,同時(shí)MBEW的current period/year從2006/period 1改成2006/03, 即MBEWH總是會(huì)在post第一筆當(dāng)前期間時(shí)總是保存上期間的stock value 和MAP . MBEWH幾個(gè)月沒(méi)數(shù)據(jù)說(shuō)明物料幾個(gè)月沒(méi)移動(dòng). MBEWH總是會(huì)在post第一筆當(dāng)前期間的物料移動(dòng)時(shí)總是保存上期間的total stock value 和MAP ,如果中間可能沒(méi)有period記錄說(shuō)明這n-1個(gè)period該物料沒(méi)有做任何移動(dòng)
通常看庫(kù)存報(bào)表可能會(huì)用到如下幾個(gè)T-code:
MMBE:MARD-LABST(Valuated stock with unrestricted use)
?????? MB52:MARD-LABST
MB51:MSEG:ERFMG累加
MM03:MBEW-LBKUM (Total valuated stock)
?????? MB5L:MBEW-SALK3 (Value of total valuated stock)
MC.9:S032-MBWBEST(Quantity of valuated stock)
?????? S032-WBWBEST(Value of valuated stock)
你看到上面幾個(gè)典型T-code實(shí)際上是從不同table讀數(shù)據(jù)的.
***我強(qiáng)烈建議那些號(hào)稱MM資深顧問(wèn)的人最少花點(diǎn)時(shí)間去了解下三支程序.
?? PO,收貨和發(fā)票校驗(yàn)邏輯,我指的是內(nèi)部邏輯.
研究過(guò)SAPMM07M和SAPLMIGO(兩者對(duì)應(yīng)分別對(duì)應(yīng)MB1A等T-code和MIGO等)一定
會(huì)知道通常如果MARD,MSEG,MBEW的數(shù)據(jù)對(duì)不上那SAP就有問(wèn)題了,知道什么時(shí)候
material doc.no and FI doc No獲得(這時(shí)候?qū)嶋H上還沒(méi)有save到表中,這很容易解釋
為什么Doc no跳號(hào),如果你愿意你可象放慢鏡頭一樣,故意制造出doc no跳號(hào)的case),
你也了解materail movement是如何update到DB table中的.
再次申明,使用Mard,MSEG,MBEW的T-code看庫(kù)存數(shù)據(jù)一般會(huì)一致,但是 MC.9等使用了LIS table的就不一定了
熟悉LIS的朋友肯定熟悉此兩表
TMC4:Global Control Elements: LIS Info Structure
TMCAE:Features of Application
而且知道通常S031,S032的update rule是Synchronous Updating (V1 Update)
是的,它是由MB1*的include 程序RMCSV3VB完成的.就是說(shuō)在物料移動(dòng)時(shí)實(shí)時(shí)update那么為什么
MC.9看到的庫(kù)存還會(huì)和MB1*或MMBE看到的不同呢?原因有很多,比如你更該了material type, Material group等,
出現(xiàn)問(wèn)題了,當(dāng)然你必須更新信息機(jī)構(gòu)的數(shù)據(jù).
更新S012 PURCHASE DATA.
OLI3 - Statistical setup of info structures from purchasing documents?
重組Purchase Doc to LIS.
NPRT - Log for Setup of Statistical Data?
NPRT to check REsetup log.
MC26允許你看到LIS, QIS,SIS的更新情況,無(wú)論是LIS,QIS,SIS...,庫(kù)存如不一致就應(yīng)該update一下了.
關(guān)于如何更新IS系統(tǒng)下面有一堆T-code
(OLI1-9),實(shí)際上后臺(tái)你也可看到.
---------------------------------------
一.for WM相關(guān)(部分):
LS09 Display Material Data for Stor.Type
LS24 Display Quants for Material
LS25 Display Quants per Storage Bin
LS26 Warehouse stocks per material
LS27 Display quants for storage unit
LS28 Display storage units / bin
LT0G Return delivery to stock
LX02 Stock list
二.庫(kù)存重新估價(jià)
J1A3 MM goods issue revaluation(重新估價(jià))
J1A5 MM Warehouse stock report
J1AI Asset Revaluation (Inflation)
三.關(guān)于物料價(jià)格(及其更改)
MR21 Price Change
MR22 Material Debit/Credit
CK24??????????? Mark/change Standard Cost
CKMTOPSTOCKVAL Materials w/ Highest Inventory Value
MRN8 Lowest Value: Price Variances
四.關(guān)于庫(kù)存分析.
MMBE(MB53): 顯示單個(gè)庫(kù)存(可將0庫(kù)存的sto.過(guò)濾)
MB52: Warehouse Stocks on Hand (不能By date)
MB54:Consignment Stocks
MB51/MB59:Material Doc. List (查看物料憑證,可by posting date)
MB5B: Stocks for Posting Date
** By Selection date可分時(shí)段查詢庫(kù)存MB5B
MB5K Stock Consistency Check
MB5L(MB5W) 顯示 Stock Values Balances
** MB5L是從物料評(píng)估層看物料價(jià)值.比如某plant 1100的valuation clas是12110101
** 如果你使用MB52 by plant 1100和MB5L的12110101(物料總帳科目)價(jià)值不同就有問(wèn)題了.
MB5T Stock in transit CC(轉(zhuǎn)儲(chǔ))
**通常跨公司轉(zhuǎn)儲(chǔ)使用MB1B 311同plant轉(zhuǎn),301跨plant(且可跨company)轉(zhuǎn).
**內(nèi)部公司關(guān)聯(lián)貿(mào)易如果考慮MRP,一般不直接使用MB1B而開(kāi)PO,這樣open PO就考慮了.
MBBS Display valuated special stock
MBGR Displ. Material Docs. by Mvt. Reason(有問(wèn)題的庫(kù)存)
MBLB Stocks at Subcontractor
MBST Cancel Material Document
**通常MBST是整單的,比如PO 101收貨錯(cuò)誤,如整單可使用MBST,或一個(gè)個(gè)使用102.
**MBST能找到cancelling mat.doc的對(duì)應(yīng)的反向mvtype .
MBSM Display Cancelled Material Docs.
物料歷史.
MRN9 Balance Sheet Values by Account (各種價(jià)值)
MM60 Materials List?
MM04??????????? material Changed History(物料被更改的歷史記錄)
MM06??????????? mark Material deleted flat (將物料設(shè)置刪除標(biāo)志)
MMAM Change Material Type
**MMAM怎樣的material type才可change比如從SFG轉(zhuǎn)到FG,條件是什么?我知道.
MCE9?? Purchasing Function(轉(zhuǎn)到MM_PUR功能菜單)
MCE3?? Vendor Analysis Selection
MCE5?? MatGrp Analysis Selection
MCE7?? Material Analysis Selection
MCW2
ME2M???????????? Material by Purchase Order?
---------------------------------------------------------------
庫(kù)存相關(guān)表格:
MKOL :Special Stocks from Vendor
MKOLH:Special Stocks from Vendor: History
MSCA :Sales Orders on Hand with Vendor
MSCAH:Sales Order Stock at Vendor: History
MSKA :Sales Order Stock
MSKAH:Sales Order Stock: History
MSKU :Special Stocks at Customer
MSKUH:Special Stocks at Customer: History
MSLB :Special Stocks at Vendor
MSLBH:Special Stocks at Vendor: History
MARA :Plant Data for Material(物料plant相關(guān)master data)
MARCH:Material Master C Segment: History
MARD :Material Master Storage Location(常規(guī)庫(kù)存在此表)
MARDH:Material Master Storage Location Segment: History
MBEW :對(duì)應(yīng)material master data的account1-2,costing1-2 view.
MBEWH:Material Valuation: History
MCHB :?????? Batch Stocks
MCHBH????? Batch Stocks: History
MCH1?????? Batches (if Batch Management Cross-Plant)
MCHA?????? Batches
總結(jié)
以上是生活随笔為你收集整理的关于库存 库存BAPI的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 自己动手搭建Git服务器-SCM-Man
- 下一篇: 售达方、送达方的区别