SAP ABAP 特性相关表取数逻辑
SAP中不管是特性還是分類在系統里都是經過內部變換轉換的,相關表如下:
KLAH:分類名稱(CL03)與內部編號的轉換表
KSML:分類所分配的特性(CT04)
TCLA:類類型,分類類型(比如:023批次分類)所對應的表(調用標準bapi必要的參數)
CABN:特性名稱(CT04)與內部編號的轉換表
CABN:特性的文本
AUSP:對象所對應的特性值
例子:
SELECT?INOB~OBJEK"物料代碼
???????CABN~ATINN"內部特性
???????CABN~ATNAM"特性名稱
???????AUSP~ATWRT"特性值
??????INTO?CORRESPONDING?FIELDS?OF?TABLE?ITAB_TX
??????FROM?INOB
??????INNER?JOIN?AUSP?ON?INOB~CUOBJ?=?AUSP~OBJEK
??????INNER?JOIN?CABN?ON?CABN~ATINN?=?AUSP~ATINN
??????WHERE?INOB~OBJEK?in S_MATNR.
此處取的是某個物料所有的特性值,如果要取某個分類的話,可以配合KSML表使用。
也可以調用BAPI:BAPI_OBJCL_GETDETAIL 獲取
相關參數說明:
OBJECTKEY:物料代碼
OBJECTTABLE:根據分類視圖中分類類型從TCLA找到對應的值
CLASSNUM:通過分類去KLAH找
CLASSTYPE:分類類型
此處OBJECTKEY對于不同的類類型,參數值所對應的格式還不一致,比如:物料分類--物料代碼,批次分類--物料+批次。具體什么格式我也比較疑惑,只能憑借經驗了。
以上方式只是取出“分類”視圖中所維護的信息,但有個NB項目上使用了變式物料,是通過在“MRP3”視圖中“配置變量”中維護的數據,這樣維護的數據通過以上方式是取不出來滴,利用周末整整研究了一上午才找到了對應的相關表,一并分享~~
MRAC:物料工廠數據表,主要是通過里面CUOBJ(內部對象號)與其他表關聯
IBIN:中間轉換表,主要通過INSTANCE轉換
IBINVALUES:記錄所維護的特性清單
IBSYMBOL:存儲具體特性值的表(類似于AUSP)
例子:
?SELECT?MARC~MATNR?AS?OBJEK"物料代碼
??????????CABN~ATINN"內部特性
??????????CABN~ATNAM"特性名稱
??????????IBSYMBOL~ATWRT"特性值
????APPENDING?CORRESPONDING?FIELDS?OF?TABLE?ITAB_TX
????FROM?MARC
????INNER?JOIN?IBIN?ON?IBIN~INSTANCE?=?MARC~CUOBJ
????INNER?JOIN?IBINVALUES?ON?IBINVALUES~IN_RECNO?=?IBIN~IN_RECNO
????INNER?JOIN?IBSYMBOL?ON?IBSYMBOL~SYMBOL_ID?=?IBINVALUES~SYMBOL_ID
????INNER?JOIN?CABN?ON?CABN~ATINN?=?IBSYMBOL~ATINN
????WHERE?MARC~MATNR?IN S_MATNR.
總結
以上是生活随笔為你收集整理的SAP ABAP 特性相关表取数逻辑的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SAP ABAP MARD和MARDH计
- 下一篇: 对财务客户开具Invoice(无销售流程