BAPI_MATERIAL_SAVEDATA
品目マスタ登録変更BAPI
概要
品目マスタを登録または変更するBAPIです。品目マスタのビューの拡張も行うことができます。
BAPIでは品目マスタ登録画面(MM01)のような入力チェックがかからないため、品目コードが番号範囲外であったり必須項目が未入力でも品目マスタを登録することができます。
パラメータ
品目マスタのデータ構成に近い形でBAPIのパラメータも定義されています。
(クライアントデータ、プラントデータ、販売データ、会計データなど)
パラメータは非常に多いですが、品目マスタ登録画面(MM01)のように品目を登録するビューをHEADDATAパラメータで選択することができます。ここで選択した品目マスタのビューのみパラメータを設定する必要があります。
また、指定したビューに対して全ての項目を設定する必要はなく、更新する項目を指定するチェックボックスパラメータあります。チェックボックスパラメータはパラメータの名称の最後が「X」になっています。
| 種別 | パラメータ | 説明 |
|---|---|---|
| インポート | SALESDOCUMENTIN | 販売管理伝票番号 |
| HEADDATA | ヘッダセグメントと管理情報 | |
| CLIENTDATA | クライアント依存の品目データ | |
| CLIENTDATAX | CLIENTDATAの更新情報 | |
| PLANTDATA | プラント固有品目データ | |
| PLANTDATAX | PLANTDATAの更新情報 | |
| FORECASTPARAMETERS | 需要予測パラメータ | |
| FORECASTPARAMETERSX | FORECASTDATAの更新情報 | |
| STORAGELOCATIONDATA | 保管場所固有品目データ | |
| STORAGELOCATIONDATAX | STORAGELOCATIONDATAの更新情報 | |
| VALUATIONDATA | 評価データ | |
| VALUATIONDATAX | VALUATIONDATAの更新情報 | |
| WAREHOUSENUMBERDATA | 倉庫番号固有品目データ | |
| WAREHOUSENUMBERDATAX | WAREHOUSEDATAの更新情報 | |
| SALESDATA | 販売データ | |
| SALESDATAX | SALESDATAの更新情報 | |
| STORAGETYPEDATA | 保管域タイプ固有品目データ | |
| STORAGETYPEDATAX | STORAGETYPEDATAの更新情報 | |
| FLAG_ONLINE | ALE 項目選択なし | |
| FLAG_CAD_CALL | CADシステムからコール | |
| NO_DEQUEUE | Dynpro, ユーザエントリ照会 | |
| NO_ROLLBACK_WORK | エラー発生時のロールバック無効 | |
| エクスポート | RETURN | リターンパラメータ |
| テーブル | MATERIALDESCRIPTION | 品目テキスト |
| UNITSOFMEASURE | 数量単位 | |
| UNITSOFMEASUREX | UNITOFMEASUREの更新情報 | |
| INTERNATIONALARTNOS | 国際商品コード(EAN) | |
| MATERIALLONGTEXT | テキスト(長) | |
| TAXCLASSIFICATIONS | 税分類 | |
| RETURNMESSAGES | 全メッセージ | |
| PRTDATA | 品目マスタの生産資源/治工具(PRT)項目 | |
| PRTDATAX | PRTDATAXの更新情報 | |
| EXTENSIONIN | BAPIパラメータのEXTENTIONIN / EXTENSIONOUTの参照構造 | |
| EXTENSIONINX | BAPIパラメータのEXTENTIONIN / EXTENSIONOUTの参照構造 |
ヘッダと管理情報のパラメータを設定する
ヘッダセグメントと管理情報(HEADDATA)には、品目コード、産業コード、品目タイプと品目マスタのビューを指定します。登録または拡張するビューの項目には「X」を設定します。
| 項目 | 項目名称 | 設定値 |
|---|---|---|
| MATERIAL | 品目コード | MAT0001 |
| IND_SECTOR | 産業コード | P |
| MATL_TYPE | 品目タイプ | HAWA |
| BASIC_VIEW | 基本データビュー | X |
| SALES_VIEW | 販売ビュー | X |
| PURCHASE_VIEW | 購買管理ビュー | X |
| ACCOUNT_VIEW | 会計ビュー | X |
基本データビューのパラメータを設定する
クライアント依存の品目データ(CLIENTDATA)には品目グループ、基本数量単位などを設定します。対となるチェックボックスパラメータとしてCLIENTDATAの更新情報(CLIENTDATAX)があります。更新する項目には「X」を設定します。
| 項目 | 項目名称 | 設定値 |
|---|---|---|
| MATL_GROUP | 品目グループ | 0001 |
| BASE_UOM | 基本数量単位 | ST |
| NET_WEIGHT | 正味重量 | 1 |
| UNIT_OF_WT | 重量単位 | KG |
| TRANS_GRP | 輸送グループ | 0001 |
| ITEM_CAT | 一般明細カテゴリグループ | NORM |
| 項目 | 項目名称 | 設定値 |
|---|---|---|
| MATL_GROUP | 品目グループ | X |
| BASE_UOM | 基本数量単位 | X |
| NET_WEIGHT | 正味重量 | X |
| UNIT_OF_WT | 重量単位 | X |
| TRANS_GRP | 輸送グループ | X |
| ITEM_CAT | 一般明細カテゴリグループ | X |
他のビューのパラメータを設定する
プラント固有品目データ(PLANTDATA)には、プラント、購買グループなどを設定します。対となるパラメータとしてPLANTDATAの更新情報(PLANTDATAX)があります。
販売データ(SALESDATA)には、販売組織、流通チャネル、販売単位などを設定します。対となるパラメータとしてSALESDATAの更新情報(SALESDATAX)があります。
評価データ(VALUATIONDATA)には、評価エリア、原価、評価クラスなどを設定します。対となるパラメータとしてVALUATIONDATAの更新情報(VALUATIONDATAX)があります。
| 項目 | 項目名称 | 設定値 |
|---|---|---|
| PLANT | プラント | 1000 |
| PUR_GROUP | 購買グループ | 001 |
| LOADINGGRP | 積載グループ | 0001 |
| 項目 | 項目名称 | 設定値 |
|---|---|---|
| PLANT | プラント | 1000 |
| PUR_GROUP | 購買グループ | X |
| LOADINGGRP | 積載グループ | X |
| 項目 | 項目名称 | 設定値 |
|---|---|---|
| SALES_ORG | 販売組織 | 1000 |
| DISTR_CHAN | 流通チャネル | 00 |
| SALES_UNIT | 販売単位 | ST |
| ITEM_CAT | 明細カテゴリグループ | NORM |
| 項目 | 項目名称 | 設定値 |
|---|---|---|
| SALES_ORG | 販売組織 | 1000 |
| DISTR_CHAN | 流通チャネル | 00 |
| SALES_UNIT | 販売単位 | X |
| ITEM_CAT | 明細カテゴリグループ | X |
| 項目 | 項目名称 | 設定値 |
|---|---|---|
| VAL_AREA | 評価レベル | 1000 |
| PRICE_CTRL | 原価管理区分 | V |
| VAL_CLASS | 評価クラス | 3100 |
| 項目 | 項目名称 | 設定値 |
|---|---|---|
| VAL_AREA | 評価レベル | 1000 |
| PRICE_CTRL | 原価管理区分 | X |
| VAL_CLASS | 評価クラス | X |
品目テキスト、税のパラメータを設定する
品目テキスト(MATERIALDESCRIPTION)に言語別の品目テキスト設定します。
税データ(TAXCLASSIFICATIONS)には販売管理用の品目税分類を国別に設定します。
| 項目 | 項目名称 | 設定値 |
|---|---|---|
| LANGU | 言語 | J |
| MATL_DESC | 品目テキスト | 品目A |
| 項目 | 項目名称 | 設定値 |
|---|---|---|
| DEPCOUNTRY | 税出荷国 | JP |
| TAX_TYPE_1 | 税カテゴリ1 | MWST |
| TAXCLASS_1 | 税分類1 | 1 |
サンプルコード
通常の汎用モジュールを実行するのと同様にCALL FUNCTIONで実行します。品目マスタ登録のBAPIの内部ではコミットされるため、正常終了時はロールバックすることができません。
BAPIは例外を発生させない仕様なので、エラー判定はRETURNMESSAGESパラメータにメッセージタイプが「E」のレコードが1件以上あるかどうかで判定をします。
DATA: LS_HEADDATA TYPE BAPISMATHEAD,
LS_CLIENTDATA TYPE BAPI_MARA,
LS_CLIENTDATAX TYPE BAPI_MARAX,
LS_PLANTDATA TYPE BAPI_MARC,
LS_PLANTDATAX TYPE BAPI_MARCX,
LS_SALESDATA TYPE BAPI_MVKE,
LS_SALESDATAX TYPE BAPI_MBEW,
LS_VALUATIONDATA TYPE BAPI_MARA,
LS_VALUATIONDATAX TYPE BAPI_MBEWX,
LS_RETURN TYPE BAPIRET2,
LT_MATERIALDESCRIPTION TYPE TABLE OF BAPI_MAKT,
LT_TAXCLASSIFICATIONS TYPE TABLE OF BAPI_MLAN,
LT_RETURNMESSAGES TYPE TABLE OF BAPI_MATRETURN2. * パラメータに値を設定する
LS_HEADDATA-MATERIAL = 'MAT0001'. " 品目コード
LS_HEADDATA-IND_SECTOR = 'P'. " 産業コード
LS_HEADDATA-MATL_TYPE = 'HAWA'. " 品目タイプ
LS_HEADDATA-BASIC_VIEW = 'X'. " 基本データビュー
* :
* (以下略) CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'
EXPORTING
HEADDATA = LS_HEADDATA
CLIENTDATA = LS_CLIENTDATA
CLIENTDATAX = LS_CLIENTDATAX
PLANTDATA = LS_PLANTDATA
PLANTDATAX = LS_PLANTDATAX
SALESDATA = LS_SALESDATA
SALESDATAX = LS_SALESDATAX
VALUATIONDATA = LS_VALUATIONDATA
VALUATIONDATAX = LS_VALUATIONDATAX
IMPORTING
RETURN = LS_RETURN
TABLES
MATERIALDESCRIPTION = LT_MATERIALDESCRIPTION
TAXCLASSIFICATIONS = LT_TAXCLASSIFICATIONS
RETURNMESSAGES = LT_RETURNMESSAGES
.
* エラーメッセージの取得
READ TABLE LT_RETURNMESSAGES WITH KEY TYPE = 'E'. * エラーメッセージがない場合
IF SY-SUBRC <> 0.
" 正常処理.
ELSE.
" エラー処理.
ENDIF.
BAPI_MATERIAL_SAVEDATA的更多相关文章
- 复制物料(参考的MMCC想法)
MMCC这个事务码没用过,也是才听到的,都是业务搞起来的...然后感觉这个东西有点意思,就搞搞咯 网上找的一篇文章,自己修改的.改了默认收货工厂为创建时的工厂,因为这边一直报收货工厂必输...不管是不 ...
- [SAP ABAP开发技术总结]业务对象和BAPI
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- BAPI
MM模块 1. BAPI_MATERIAL_SAVEDATA 创建物料主数据 注意参数EXTENSIONIN的使用,可以创建自定义字段 例如:WA_BAPI_TE_MARA-MATERIAL = IT ...
- SAP BAPI一览 史上最全
全BADI一览 List of BAPI's BAPI WG Component Function module name Description Description Obj. Ty ...
- 登録更新(BAPI)
購買管理(MM) * [BAPI_REQUISITION_CREATE] 購買依頼登録 * [BAPI_REQUISITION_CHANGE] 購買依頼変更 * [BAPI_REQUISITION_D ...
- BAPI: TRANSACTION_BEGIN的作用
大概知道是启动一个新会话, CALL FUNCTION 'TRANSACTION_BEGIN' 业务数据处理, CALL FUNCTION 'TRANSACTION_END' 详细功能不清楚. CLE ...
- BAPI LIST
[转自 http://blog.csdn.net/minsenwu/article/details/8432081] 库存管理BAPI 库存: 1. BAPI_MATERIAL_AVAILABILIT ...
- SAP 各模块常用的BAPI
MM模块 1. BAPI_MATERIAL_SAVEDATA 创建物料主数据 注意参数EXTENSIONIN的使用,可以创建自定义字段 例如:WA_BAPI_TE_MARA-MATERIAL = IT ...
- 常用BAPI list
2017-03-25 MD 主数据 1.创建物料主数据 CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA' 2.创建供应商 CALL METHOD VMD_EI_API=&g ...
随机推荐
- Linux iptables命令详解
iptables命令主要是设置防火墙信息的 常见命令参数 Usage: iptables -[AD] chain rule-specification [options] iptables -I ch ...
- iOS开发之iOS界面UI
1.UILabel NSString *str = @"字符串大小"; UIFont *font = [UIFont fontWithName:@"Arial" ...
- Java 集合框架(常用数据结构)
早在Java 2中之前,Java就提供了特设类.比如:向量(Vector).栈(Stack).字典(Dictionary).哈希表(Hashtable)这些类(数据结构)用来存储和操作对象组.虽然这些 ...
- 如何实现本机Windows连接虚拟机中的CentOS
1.确定CentOS的IP地址,命令为 ifconfig,由此可知,LinuxIP地址为 192.168.85.128 2.WIndows的IP地址为192.168.16.1, 3.保证CentOS和 ...
- js字符串和数组
sustr substring slice的联系与区别 str.substr(2,5) //从索引2开始截取5个字符,原有字符串str不变 str.substring(2,5) //从索引2开始截 ...
- JavaScript浏览器对象模型(BOM)之history对象
history 对象是 window 对象的属性,它保存着用户上网的记录,从窗口被打开的那一刻算起. 一.history对象的属性 可以通过判断 history.length,得到是否有历史记录和记录 ...
- 2016424王启元 Exp6信息搜集与漏洞扫描
一.原理与实践说明 1.实践内容 本实践的目标是掌握信息搜集的最基础技能.具体有: 1.各种搜索技巧的应用 2.DNS IP注册信息的查询 3.基本的扫描技术:主机发现.端口扫描.OS及服务版本探测. ...
- programming-languages学习笔记--第7部分
programming-languages学习笔记–第7部分 */--> pre.src {background-color: #292b2e; color: #b2b2b2;} pre.src ...
- [Python 多线程] Lock、阻塞锁、非阻塞锁 (八)
线程同步技术: 解决多个线程争抢同一个资源的情况,线程协作工作.一份数据同一时刻只能有一个线程处理. 解决线程同步的几种方法: Lock.RLock.Condition.Barrier.semapho ...
- 使用Apache HttpClient 4.x发送Json数据
Apache HttpClient是Apache提供的一个开源组件,使用HttpClient可以很方便地进行Http请求的调用.自4.1版本开始,HttpClient的API发生了较大的改变,很多方法 ...