SAP ERPやS/4HANAの機能を呼び出すトランザクションコード(T-CODE)と、同じ機能を持つ汎用モジュール/BAPI を探すのに、生成AIが使えるの紹介する。
また、この記事のプロンプトを用いて、実際に ChatGPT 4o と Google Gemini で汎用モジュールを検索した出力例も、合わせて載せておく。
汎用モジュール/BAPIを生成AIを使って探す
生成AI + この記事のプロンプトを使って得られる情報
- 指定したTCODEと同じ機能を持つ、汎用モジュール(BAPI)IDの取得
- 汎用モジュールが、RFC(リモート実行)可能かどうか
- 汎用モジュールの概要説明
- 汎用モジュールの主な入力項目
- 汎用モジュール使用時の注意点
プロンプトサンプル
# 依頼 あなたは{#役割}です。SAPシステムのトランザクションコード(T-CD)を{#T-CD}に指定するので、そのT-CDと同じ機能の汎用モジュール(BAPI)を調査してください。 調査結果は{#形式}の形式で出力してください。{#ルール}は必ず守ってください。 # 役割 SAPシステムのコンサルタント # 形式 -マークダウンテーブル形式 -列は「T-CD」「汎用モジュールID」「汎用モジュール名称」「リモート可」「機能概要」「主な入力項目」「注意事項」 # ルール -汎用モジュールが複数存在する場合は、全て列挙する。 -「汎用モジュール名称」は日本語で。 -「リモート可」の値は二択で、「可」または「不可」のどちらか。 -「機能概要」は100字以内の日本語で。 -「主な入力」は、特になければ入力必須項目を挙げる。 -「注意事項」には、汎用モジュールをコールする時の注意事項。特になければ空白とする。 # T-CD MIGO VA01 ME21N ME51N ME11 CO01 CS01 MD04
プロンプトの使い方
- 上記のプロンプトサンプル全体をコピーし、「メモ帳」などのテキストエディタに貼り付ける。
- 「#T-CD」より下に、調査したいT-CDを列挙する。
- 一度に大量のT-CDを記述すると、正常な回答が返ってこない場合があるので、回答がおかしい場合は記述するT-CDを減らすこと。
- 生成AIのチャットボックスに、テキストエディタの内容をコピー&ペーストする。
- 生成AIに、問い合わせる(送信する)。
- 数秒後、表形式の回答が出力される。
プロンプトの解説
プロンプトの記述方法など、プロンプトの書き方の基本については、以下の記事を参照。
各セクションの解説は以下。
#役割
SAPシステムの専門的なことを尋ねるので、「SAPコンサルタント」としている。
#形式
- 表形式で得た回答を、当ブログの記事に貼り付けるため、「マークダウンテーブル形式」としている。
Excelなどのアプリケーションで読み込む場合は、「CSV形式」などに変更する。 - 列の定義の一つ、「注意事項」は、生成AIのナレッジを試す意味合いで指定している。汎用モジュールの中には、呼び出し方が特殊なものや、エラーハンドリングに注意を要するものが存在するからだ。
この項目について、あまり期待はしていなかったのだが、良い意味で期待を裏切る結果を返してくれた(後述)。
#T-CD
調査対象の、トランザクションコード(TCODE)を列挙する。
細かいチューニングを抜きにすれば、このプロンプトで編集する箇所はここだけである。
出力例
ChatGPT 4o
上記のプロンプトを使った、ChatGPT 4o による出力例は以下(赤字は誤りのあった箇所)。
T-CD | 汎用モジュールID | 汎用モジュール名称 | リモート可 | 機能概要 | 主な入力項目 | 注意事項 |
---|---|---|---|---|---|---|
MIGO | BAPI_GOODSMVT_CREATE | 物品移動の作成 | 可 | 物品移動を作成する。 | 物品移動ヘッダデータ、物品移動明細データ | |
VA01 | BAPI_SALESORDER_CREATEFROMDAT2 | 販売注文の作成 | 可 | 販売注文を作成する。 | 販売注文ヘッダデータ、販売注文明細データ | |
ME21N | BAPI_PO_CREATE1 | 購買発注の作成 | 可 | 購買発注を作成する。 | 購買発注ヘッダデータ、購買発注明細データ | |
ME51N | BAPI_REQUISITION_CREATE | 購買依頼の作成 | 可 | 購買依頼を作成する。 | 購買依頼ヘッダデータ、購買依頼明細データ | |
ME11 | BAPI_INFORECORD_CREATE | 購買情報記録の作成 | 可 | 購買情報記録を作成する。 | 購買情報記録ヘッダデータ、購買情報記録明細データ | |
CO01 | BAPI_PRODORD_CREATE | 生産指図の作成 | 可 | 生産指図を作成する。 | 生産指図ヘッダデータ、生産指図明細データ | |
CS01 | BAPI_BOM_CREATE | BOM(部品表)の作成 | 可 | BOMを作成する。 | BOMヘッダデータ、BOM明細データ | |
MD04 | BAPI_MATERIAL_STOCK_REQ_LIST | 資材所要量計画の一覧取得 | 可 | 資材所要量計画の一覧を取得する。 | 資材所要量計画ヘッダデータ、資材所要量計画明細データ |
上の結果では、ME51N、ME11、CS01 の汎用モジュールIDが正しくないので、チェック(ブラウジング)するよう、追加の指示を与える。
ChatGPTは「ブラウジング」で、回答をセルフチェックできる!
T-CD | 汎用モジュールID | 汎用モジュール名称 | リモート可 | 機能概要 | 主な入力項目 | 注意事項 |
---|---|---|---|---|---|---|
MIGO | BAPI_GOODSMVT_CREATE | 物品移動の作成 | 可 | 物品移動を作成する。 | 物品移動ヘッダデータ、物品移動明細データ | |
VA01 | BAPI_SALESORDER_CREATEFROMDAT2 | 販売注文の作成 | 可 | 販売注文を作成する。 | 販売注文ヘッダデータ、販売注文明細データ | |
ME21N | BAPI_PO_CREATE1 | 購買発注の作成 | 可 | 購買発注を作成する。 | 購買発注ヘッダデータ、購買発注明細データ | |
ME51N | BAPI_PR_CREATE | 購買依頼の作成 | 可 | 購買依頼を作成する。 | 購買依頼ヘッダデータ、購買依頼明細データ | |
ME11 | BAPI_INFORECORD_CREATE1 | 購買情報記録の作成 | 可 | 購買情報記録を作成する。 | 購買情報記録ヘッダデータ、購買情報記録明細データ | |
CO01 | BAPI_PRODORD_CREATE | 生産指図の作成 | 可 | 生産指図を作成する。 | 生産指図ヘッダデータ、生産指図明細データ | |
CS01 | BAPI_MATERIAL_BOM_GROUP_CREATE | 購買依頼の作成 | 可 | BOMを作成する。 | BOMヘッダデータ、BOM明細データ | |
MD04 | BAPI_MATERIAL_STOCK_REQ_LIST | 資材所要量計画の一覧取得 | 可 | 資材所要量計画の一覧を取得する。 | 資材所要量計画ヘッダデータ、資材所要量計画明細データ |
今度は、正しい汎用モジュールを回答してくれたが、ME11だけは、あいかわらず間違っている。
しかし、これは大目に見るべきかもしれない。というのも、筆者の知る限り、ME11の汎用モジュールは存在しないからだ。
ChatGPT はSAPシステムのことをよく知っているようだ。
回答に不安があるなら、ブラウジングで修正を
Google Gemini
同じプロンプトを、Google Gemini に使用した出力例が以下。
T-CD | 汎用モジュールID | 汎用モジュール名称 | リモート可 | 機能概要 | 主な入力項目 | 注意事項 |
MIGO | BAPI_GOODSMVT_CREATE | 商品移動処理 | 可 | 商品入出庫処理を実行 | 品目番号、数量、取引区分 | |
MIGO | BAPI_GOODSMVT_CANCEL | 商品移動を取り消し | 可 | 商品入出庫処理を取り消し | 品目番号、数量、取引区分、取消理由 | |
VA01 | BAPI_SALESORDER_CREATE | 受注伝票登録 | 可 | 受注伝票を新規登録 | 品目番号、数量、納期 | |
VA01 | BAPI_SALESORDER_CHANGE | 受注伝票変更 | 可 | 受注伝票を変更 | 受注伝票番号、品目番号、数量、納期 | |
ME21N | BAPI_PO_CREATE | 発注伝票登録 | 可 | 発注伝票を新規登録 | 品目番号、数量、納期、仕入先 | |
ME21N | BAPI_PO_CHANGE | 発注伝票変更 | 可 | 発注伝票を変更 | 発注伝票番号、品目番号、数量、納期 | |
ME51N | BAPI_REQUISITION_CREATE | 購買稟議書登録 | 可 | 購買稟議書を新規登録 | 品目番号、数量、用途 | |
ME51N | BAPI_REQUISITION_CHANGE | 購買稟議書変更 | 可 | 購買稟議書を変更 | 購買稟議書番号、品目番号、数量、用途 | |
ME11 | BAPI_MATERIAL_CREATE | 品目マスタ登録 | 可 | 品目マスタを新規登録 | 品目番号、品目名称、単価、在庫区分 | |
ME11 | BAPI_MATERIAL_CHANGE | 品目マスタ変更 | 可 | 品目マスタを変更 | 品目番号、品目名称、単価、在庫区分 | |
CO01 | BAPI_PRODCOST_CREATE | 原価計算実行 | 可 | 原価計算を実行 | 製品番号、会計期間 | |
CS01 | BAPI_COND_CREATE | 条件マスタ登録 | 可 | 条件マスタを新規登録 | 条件タイプ、条件番号、金額 | |
CS01 | BAPI_COND_CHANGE | 条件マスタ変更 | 可 | 条件マスタを変更 | 条件タイプ、条件番号、金額 | |
MD04 | BAPI_MATERIAL_STOCK_GET | 品目在庫照会 | 可 | 品目在庫残高を照会 | 品目番号、プラント |
気を利かせて「変更」と「キャンセル」の汎用モジュールも教えてくれたようだが、間違いが多い。
そもそも、T-CDに指定したのは「新規登録」ばかりなのに、「変更」や「キャンセル」の汎用モジュールを回答すること自体、間違っている。
これが人間のSAPコンサルタントの回答だったとすれば、出禁になるのは確実だ。
Gemini はSAPシステムに詳しくなさそう。
まとめ:汎用モジュール/BAPIは生成AIで探せる
当ブログの他の記事でも述べているが、ChatGPTのナレッジは、かなり正確である。
今回のBAPIの調査でも、その能力を遺憾なく発揮してくれた。たとえ回答が間違っていたとしても、ウェブブラウジングの機能を使って、回答のチェックや修正も行える。
このような二段構えの回答を得られるので、ChatGPTの回答の信頼性は非常に高く、安心感もある。
SAPシステムの調査にChatGPT、超お勧めである。
生成AI以外の方法で、汎用モジュール/BAPIの探し方を紹介している記事は以下。
コメント