1. 程式人生 > >#MM#物料憑證過賬時有用的BAdI和User exit

#MM#物料憑證過賬時有用的BAdI和User exit

當用事務程式碼MIGO或者是MB01/MB1C/MB1A等進行物料憑證過賬時,會有加入使用者自檢查,自定義自開發的需求。

本文將列舉一些非常有用的BAdI和user-exit.

所有的BAdI定義可以通過事務程式碼SE18來檢視。

BAdI(Business Add-Ins):

1. MB_MIGO_BADI

  • 此BAdI只能在MIGO中被啟用,主要是用於使用者自定義從屬畫面的輸入輸出控制,自定義專案的檢查,自定義表的更新等
  • 系統限制此BAdI至多隻能有5個增強實施,否則會在執行MIGO時遇到MIGO047 (已超出 MIGO 中的 BADI 執行的最大量) 的錯誤

    重要的方法(method)

  • LINE_MODIFY

        每一次新加一條item記錄,或者是對已有的item進行了修改時,系統會呼叫此方法將新增或者是變

        化反映到構造GOITEM中

  • POST_DOCUMENT

        此方法用來實現使用者自定義資料與物料憑證之間的同步

  • CHECK_ITEM

        對行專案進行自的定義檢查並可以輸出自定義的警告或者是錯誤資訊

        警告資訊一樣只會在[檢查]過程中輸出,和標準一樣在過賬時所有的警告都將被忽略,

        只有錯誤資訊會被表示出來並且過賬會被終止

  • PROPOSE_SERIALNUMBERS

        此方法是經由note 1982776新引進的用於在MIGO中根據參照憑證(例:採購訂單或是生產訂單)

        來決定並初期提案序列號碼,在系統的運用中提供了靈活與便利性

2. MB_DOCUMENT_BADI

  • 建立物料憑證時的BAdI
  • 此BAdI不能用來更改物料憑證中的資料或者是相應FI/CO對應的資料

    重要的方法(method)

  • MB_DOCUMENT_BEFORE_UPDATE

        非常有用的方法,可以在其中進行自定義的檢查並更具已有的物料憑證資料進行自定義專案和表的操作

        此方法是在FI憑證相關程式前呼叫,因此不能在此方法中執行例如像commit work或者是roll back,

        解鎖這樣的操作,否則會造成資料表之間的不整合

  • MB_DOCUMENT_UPDATE

        此方法是在更新處理(update task)中被呼叫

3. MB_GOODSMOVEMENT_DCI

    使用此BAdI可以控制參照採購訂單的收貨。 當delivery complete在採購訂單中被鉤上的情況下,

    可以利用此BAdI使系統報錯誤資訊M7433中止收貨

User-exit可以通過SMOD或者SE37檢視。

1. EXIT_SAPMM07M_001/所屬增強MBCF0002

    用來自定義行專案的文字文字

    但是也可以經常用來進行自定義的檢查並輸出錯誤資訊

2. EXIT_SAPMM07M_003/所屬增強MBCFC003

    EXIT_SAPMM07M_004/所屬增強MBCFC004

    EXIT_SAPMM07M_010/所屬增強MBCFC010

    處理並操作批次相關的資訊

3. EXIT_SAPLMBMB_001/所屬增強MB_CF001

    更新物料憑證時的客戶功能出口

綜上,希望您對物料憑證中的一些增強和可自開發定義的出口有了一定的瞭解與認知。

相關推薦

#MM#物料憑證過賬有用BAdIUser exit

當用事務程式碼MIGO或者是MB01/MB1C/MB1A等進行物料憑證過賬時,會有加入使用者自檢查,自定義自開發的需求。 本文將列舉一些非常有用的BAdI和user-exit. 所有的BAdI定義可以通過事務程式碼SE18來檢視。 BAdI(Business Add

物料憑證過賬BAPI

一 測試 *&---------------------------------------------------------------------* *& Report ZLXF12 *&-----------------------------

SAP中會計憑證物料憑證的對應關係

會計憑證清單 BESG / BKPF物料憑證清單 MSEG / MKPF BESG / BKPF對應關係 BESG-BELNR ~  BKPF-BELNR 表BKPF中有個欄位AWKEY 我們選一條來看,比如第一條50001446002015,其中“5000144600”

ABAP中,利用函式WS_DELIVERY_UPDATE進行VL02N發貨過賬獲取憑證號(mblnr)

某專案中,做wms介面時,根據wms傳過來的引數,利用函式WS_DELIVERY_UPDATE進行發貨過賬(vl02n發貨過賬),而函式本身是不返回憑證號的,但客戶需求要在介面中返回過賬成功的憑證號,可以下幾種方式獲取到憑證號: 方法一:這種方法是最原始的方法,判斷函式執行

SAP中物料憑證會計憑證有什麼區別

1、物料憑證對應實際業務中物資部門的出、入庫等庫存操作記錄單據,會計憑證對應實際業務中財務部門的根據原始憑證形成的記賬憑證; 2、物料憑證基於工廠層級,會計憑證基於公司程式碼層級; 3、物料憑證中也

MB02 儲存增強:修改物料憑證擡頭文字後更新對應的會計憑證文字

mb02儲存時呼叫了MB_CHANGE_DOCUMENT修改物料憑證 MB_CHANGE_DOCUMENT中呼叫了badi的方法if_mb_document_badi_sap->mb_document_change 可以看到這裡呼叫了BADI mb_docu

根據物料收貨物料憑證,查詢對應的序列號

SELECT   b~sernr c~lbbsa            FROM ser03 AS a INNER JOIN objk AS b               ON a~obknr = b~obknr inner join equi AS d  on      d~sernr = b~sernr

C語言包含頭文件用引號尖括號的區別

目錄 bsp 尖括號 編譯器 搜索路徑 當前 配置 目的 查找 用尖括號 #include <>: 一般用於包含標準的庫頭文件,編譯器會去系統配置的庫環境變量和者用戶配置的路徑去搜索,而不會在項目的當前目錄去查找 用雙引號 #include "":

重寫viewWillAppear viewWillDisAppear[super viewWillAppear] [super viewWillDisappear]的調用位置

快捷鍵 技術 靜態 animate 謝謝 pear logs 工具 log 參考網址:https://stackoverflow.com/questions/3906704/when-should-i-call-super 在寫代碼的過程中如果重寫了viewWillAppe

Java時間格式化YYYY(大寫)yyyy(小寫)的區別

col str 得出 表示 logs set end 屬於 itl 在Java中,我們大多數情況下格式日期都是用的SimpleDateFormat,比如說把一個日期格式成"yyyy-MM-dd"的形式。 我們要註意的是,對於年份來說,大寫的Y和小寫的y其意義是不同的。 y

HashMap的add的順序輸出順序不一樣

sta 根據 頭指針 ansi lin app map val key-value 在代碼中發現這個問題。問題是由於: Map是用來存儲key-value類型數據的,一個對在Map的接口定義中被定義為Entry,HashMap內部實現了Entry接口。HashMap內部維護

Unity延方法InvokeInvokeRepeating

執行 多少秒 int line deb avi delay 重復執行 gin Unity延時方法Invoke和InvokeRepeating MonoBehaviour裏面有兩個內置的延時方法 InvokeRepeating(methodName: str

Unity 協程運行的監控優化

eset 喚醒 end execution iat 分享 部分 handle block 我是快樂的搬運工: http://gulu-dev.com/post/perf_assist/2016-12-20-unity-coroutine-optimizing#toc_0 -

NBU恢復oracle,RACHA不同的恢復設置

描述 文檔 若是 服務器 服務 而在 註意 相同 網上 之前恢復RAC和HA的時候,註意到了兩者在恢復過程中設置的不同,但是沒有記錄下來,今天在恢復的時候竟然有點忘了,趕緊記錄,用於以後恢復測試的時候幫助回憶。RAC和HA的區別和共同點可以在網上有許多文檔敘述,這裏就不贅述

關於oracle sql語句查詢 表名字段名要加雙引號的問題具體解釋

ont tin rac 作者 什麽 因此 tro 們的 reg 作為oracle的剛開始學習的人相信大家一定會遇到這個問題。如圖: 明明就是navicat可視化創建了表,但是就是不能查到!這個

背水一戰 Windows 10 (76) - 控件(控件基類): Control - 基礎知識, 焦點相關, 運行獲取 ControlTemplate DataTemplate 中的元素

normal 焦點 colors 指針 是否 樣式 Go 系統 rgs 原文:背水一戰 Windows 10 (76) - 控件(控件基類): Control - 基礎知識, 焦點相關, 運行時獲取 ControlTemplate 和 DataTemplate 中的元素[源

MySQL 8 連接出現 1251 2059 錯誤

not 加密 技術分享 密碼加密 連接 ima 成了 div png MySQL 8 連接時出現 1251 和 2059 錯誤 原因是MySQL 8 改了密碼加密算法。1 原來是:mysql_native_password MySQL8 改成了 caching_sha2

WebUtility(提供在處理 Web 請求用於編碼解碼 URL 的方法。)

html second rep eth asp entity utility -s 文本 public static string UrlEncode( string str ) UrlEncode(String) 方法可用來編碼整個 URL,包括查詢字符串值。

tomcat 登錄用戶名密碼的查看及設置

tomcat admin manager 用戶名 密碼 tomcat的登陸用戶名和密碼設置: 1、找到tomcat安裝目錄,在conf目錄下可以找到tomcat-users.xml文件,用記事本打開tomcat-users.xml文件。找到如下內容:<?xml version=&q

commonJs的運行加載es6的編譯加載

bsp log www. nbsp .com targe logs 編譯 mon 參考 : https://www.cnblogs.com/jerrypig/p/8145206.html 1、commonJs的運行時加載 2、ES6編譯時加載commonJs的運行