Technical Articles
SAP Intelligent RPA を始めよう – Part 2 事前定義済コンテンツ4ZFの検証
前回のブログ「SAP Intelligent RPA を始めよう」では、SAP Intelligent RPA のインストール手順を紹介しました。本ブログでは、事前定義済コンテンツのひとつ「Create Product Master Data (4ZF) 」を検証する手順をステップバイステップで紹介いたします。
「Create Product Master Data (4ZF) 」によって、入力 Excel ファイルから、S/4HANA CloudやS/4HANAオンプレミスへ、製品マスタの(既存製品の参照なしでの)登録を自動化できます。今回は、SAP S/4HANA Cloudを利用して検証を実施します。
- 参考:製品マスタを登録する事前定義済ボットには、4N1というコードが振られた以下の2つもあります。いずれも参照製品をコピー元として利用していることが、「Create Product Master Data (4ZF) 」との違いです。
- Create Product Master Data with Reference (SAP S/4HANA Cloud, ES) (4N1)
- Create Product Master Data with Reference (SAP S/4HANA Cloud, EX & SAP S/4HANA On-Premise 1909) (4N1)
検証の大まかなステップは以下のようになります。
- SAP Intelligent RPA Factoryでの事前定義済ボットの取得
- SAP S/4HANA Cloudでの準備
- SAP Intelligent RPA Factory での準備
- ボットの実行と結果の確認
では、順に詳細を見てみましょう。なお、本ブログではSAP Intelligent RPAのユーザーの言語として英語を選択していますが、日本語を選択し日本語でメニュー等を表記させることも可能です。
1. SAP Intelligent RPA Factoryでの事前定義済ボットの取得
- SAP Intelligent RPA Factory にログオンします。’Store’ タブに行き、「4ZF」で検索し、表示されたタイルをクリックします。
- 下図の赤枠(初期ではGETと表示されています)をクリックし、Packageをインポートします。
- タブPackageに行くと、インポートされたパッケージを一覧できます。4ZFをクリックします。
- 下図のFilesの赤枠の行を選択することで、パッケージのソースファイル、入力Excelファイル、テストスクリプト文書、設定ガイド文書にアクセスできます。ボットの動作をソースファイルで確認したい、あるいはボットの機能を拡張あるいは修正したい場合はここからダウンロードしてください。入力Excelファイルは実行時に必要になりますので、ダウンロードします。文書には、前提条件や、設定すべき内容、テスト手順などが記載されているので、目を通しておくことが必要です。
2. SAP S/4HANA Cloudでの準備
事前定義済ボット4ZFはAPIベースのボットであり、かつ今回の検証ではSAP S/4HANA Cloudを利用するため、Communication User、Communication System、Communication Arrangementの作成が必要です。詳細については、SAP S/4HANA Cloudのオンラインヘルプ「通信管理」を参照ください。
- SAP S/4HANA Cloudシステムにログオンし、’Communication Management’ グループを選択し、’Maintain Communication Users’ を選択し、’New’をクリックします。
- User Name、Description、Passwordを入力します。今回は、User NameをCOMM_USER_4ZFとし、’Propose Password’ ボタンを使ってパスワードを生成します(生成したパスワードはコピーしてどこかに保管しておきます)。’Create’をクリックして保存します。
- 次に、Communication Systemを作成します。1.と同様に’Communication Systems’ を選択し、’New’をクリックします。System IDをCOMM_SYS_4ZFとします。
- 次の画面で、Host Nameに、SAP Intelligent RPA FactoryのURLのホスト名部分を入力します。Logical Systemには’DMYを入力します。
- ‘User for Inbound Communication’ タブを選択し、+ ボタンをクリックします。
- 先ほど作成した Communication User COMM_USER_4ZF を選択し、’OK’ ボタンをクリックします。
- ’Save’ ボタンをクリックして、Communication System COMM_SYS_4ZFを保存します。
- 次に、Communication Arragementを作成します。1.と同様に’Communication Arragements’ を選択し、’New’をクリックします。Scenario としてProduct Integration SAP_COM_0009を選択し、Arrangement Nameは、SAP_COM_0009_4ZFとし、’Create’ ボタンをクリックします。
- 次の画面で、Communication Systemとして、先ほど作成した COMM_SYS_4ZF を選択します。見出し Inbound Communicationの下のUser NameにはCOMM_USER_4ZFが自動的にセットされます。
- 今回の検証では、Outbound Serviceは利用しないので、画面を下にスクロールし、’Replicate Product from S/4 System to Client’ のブロックの ‘Service Status’ の Active のチェックボックスをOFFにします。
- 同様に、残り2つのブロック – ‘Product Master – Replicate from SAP S/4HANA Cloud to Client’ と ‘Product Master – Confirmation from SAP S/4HANA Cloud to Client’ についても、’Service Status’ の Active のチェックボックスをOFFにします。
- ’Save’ ボタンをクリックして、Communication Arrangement SAP_COM_0009_4ZFを保存します。
以上のステップで、このSAP S/4HANA Cloudシステム上で製品マスタの登録が許可された Communication Userが作成されたことになります。
3. SAP Intelligent RPA Factory での準備
- SAP Intelligent RPA Factory にログオンします。自分のPCのAgentが登録されていない場合は、タブ Agents をクリックし、メニューから Agent Groups を選択ます。’+ New Agent Group’ ボタンを選択し、Agent Groupの名前を入力し、’Create’ ボタンをクリックします。(補足:Agent Groupの作成は、Agent の登録を可能にするための必須ステップです)。
- 作成したAgent GroupにAgentを登録します。’+’ボタンをクリックし、PCのホスト名を入力し、’Create’ ボタンをクリックします。
- SAP Intelligent RPA Factory の ‘Environments’ タブに行き、’+ New Environment’ ボタンを選択して、Environment を新規に登録します(既に存在するEnvironmentを利用することも可能です)。
- Environmentの Name、Description、Type を入力します。ここでは、Nameは 4ZF_TEST とし、TypeはTest とします。
- ‘+Add Agent’ ボタンをクリックし、自分のAgent(ここでは自分のPCのホスト名)を選択し、’Add Agent’ ボタンをクリックします。
- ‘+Add Variables’ ボタンをクリックし、以下の変数を定義します。
Name Type Value S4H_USER_AUTH_4ZF Credential User: COMM_USER_4ZF
Password: (保管していたパスワード)
BASE_FOLDER_PATH_4ZF Text 例
C:\Users\masahiro.obata@sap.com\Desktop\4ZF
SYSTEMURL_ODATA Text 例
https://xxxx.s4hana.ondemand.com/sap/opu/odata/sap
MAIL_RECIPIENTS_4ZF Text 例
masahiro.obata@sap.com
- ‘+Add Package’ ボタンをクリックし、Create Product Master Data (4ZF) を選択し、’Next’ ボタンをクリックします。
- ‘+Add Trigger’ ボタンをクリックし、Create Product Master Data (4ZF) を選択し、’Next’ ボタンをクリックします。
- Trigger Type として、Attended を選択し、’Next’ ボタンをクリックします。
- TriggerのName、Data range、時間帯などを設定します。ここでは、Nameに Atteded_4ZFを入力し、時間帯はすべてを選択し、’Create’ ボタンをクリックします。
- Environment 4ZF_TEST のOverviewは以下のようになります。
4. ボットの実行と結果の確認
- 登録しようとする製品が、SAP S/4HANA Cloudシステムに未登録であることを確認します。SAP S/4HANA Cloudシステムにログオンし、’Product Master’ グループに行き、’Manage Product Master Data’ アプリを実行、これから登録する予定の Product Number が未登録であることを確認します(ここでは、TEST_PROD_5 を検索し、未登録であることを確認しています)。
- 入力Excelファイルを編集し、登録したい Product Number を定義します。ここでは、TEST_PROD_5 とします(複数のタブに含まれているので一括置換をお勧めします)。なお、Basic DataシートのUnit of Weightが空白であったり、Plant DataシートのMRP Typeが PD の場合は、登録に失敗します。例えば、Basic DataシートのUnit of WeightにKGを、Plant DataシートのMRP Typeに ND を設定すると、登録が正常に終了します。
- 入力Excelファイルを変数 BASE_FOLDER_PATH_4ZF で指定したフォルダーに置きます。Excelファイルは閉じておきます。
- PCのシステムトレイ(タスクトレイとも呼ばれます。画面右下にあります)から Agent アイコンをクリックし、タイトルが Projects のウィンドウで、Create Product Master Data の横の ‘Start’ ボタンをクリックし、ポップアップウィンドウで ‘OK’ ボタンをクリックします。下図の右側のウィンドウ(タイトルはDeskop Agent)の Create Product Master Data をクリックすることで、ボットが起動します。PCの画面では自動的にExcelファイルがオープンされ、処理が行われ、最終的にはExcelはクローズされます。
- 入力Excelファイルを置いたフォルダー(変数 BASE_FOLDER_PATH_4ZF で指定されています)には、SuccessとErrorフォルダーが生成され、正常に製品マスタが登録された場合は、Successフォルダーに、4ZF_<タイムスタンプ>.xlsx ファイルが作成されています。ファイルをオープンし、Basic Dataシートに行くと、Messageの項目の下に、”Product Created successfully with product id : TEST_PROD_5″ と書かれています。
- エラーの場合は、Errorフォルダーに同様にファイルが生成され、Basic DataシートのMessageの項目の下にエラーメッセージが書き込まれています。また、変数 MAIL_RECIPIENTS_4ZF で指定したメールアドレスにメールが送付され、Excelファイルが添付されています。
- SAP Intelligent RPA Factoryに行き、タブ Monitoring > Jobs を選択すると、ジョブの一覧が表示されます。該当する行を選択すると、ジョブログの詳細を確認できます。
- SAP S/4HANA Cloudシステムにログオンし、’Product Master’ グループに行き、’Manage Product Master Data’ アプリを実行、TEST_PROD_5 を検索し、登録済であることを確認します。
参考情報
さらに学習したい方へ
- SAP Intelligent RPA ヘルプサイトサイト(日本語)Link
- openSAP コース(無料):
- SAP Intelligent RPA コミュニティサイト Link
- SAP Intelligent RPA コミュニティでのWebinar(予定と過去の録画) Link
最近の情報
- ボット構築をより簡単にする SAP Intelligent RPA Cloud Studio ユーザガイド
- RPAの事例(Zuellig Pharmaの事例) Link
- 最新リリース SAP Intelligent RPA 2.0 に関するブログ Link
Masahiro Obata様
こんにちは、テイです。
SAP Intelligent RPAについてご共有ありがとうございます。
現在PJで検証作業に取り込んでおり、大変興味深いです。
1つお伺いしたいですが、
「2. SAP S/4HANA Cloudでの準備」の部分で、
S/4HANAオンプレミスに連携する場合は、
どういうふうに設定すればよろしいでしょうか。
ご教示して頂けませんでしょうか。
また、ほかに事前定義済コンテンツを使用してS/4HANAオンプレミスへ自動登録等の事例が
ご存知であればご教示して頂けますと幸いです。
どうぞよろしくお願い致します。
こんにちは、テイさん、お問い合わせありがとうございます。
S/4HANA On-premiseの場合の設定についても、Test Script(4ZF_IPA10_BPD_EN_XX.docx)に記載されていますので、こちらを参照してください。ファイルをオープンして、On-premiseで検索すると、違いがどこにあるか、ざっと見つけることが出来ると思います。
事前定義済コンテンツはSAP Intelligent RPA Storeからも参照できます。左側のFiltersメニューの中のEditionをオープンすると、S/4HANA On-premiseでフィルタリングできますので、その中からタイトル等を見てご要件に合いそうなものをピックアップいただければと思います。
Masahiro Obata様
早速のご返信ありがとうございます。
自分はまだまだ初心者ですので、
詳しくご説明していただき、ありがとうございます。
はい、Test Scriptに参照してみます。
S/4HANA On-premiseでフィルタリングにもいろいろと試してみます。
ありがとうございました!
Masahiro Obata様
こんにちは
ご共有ありがとうございます。
ちょっとお伺いしたいですが、
こちらIRPAのODATA API検証していまして、
"Unable to fetch CSRF Token. This may be due to incorrect credentials/system URL or the System server may be down and not responding at the moment"このようなエラーが発生しております。
SYSTEMURL_ODATAの変数設定する際に、
Test scriptで書かれていたSystem endpointの例は
"https://<System>-api.<domain>/sap/opu/odata/sap"、
この中の<System>-api.<domain>は
3. SAP Intelligent RPA Factory での準備の6でご紹介された例
"https://xxxx.s4hana.ondemand.com/sap/opu/odata/sap"
の書き方だと思いますが、
xxxx.s4hana.ondemand.comの部分はSAP BTPのAPI Endpointを使用されることでしょうか?
ご教示して頂けますと幸いです。
Best Regards,
Jia
こんにちは、返事遅くなり申し訳ありません。
xxxx.s4hana.ondemand.comの部分は、SAP S/4HANA Cloudのホスト名です。
小畑
小畑さん
ご返信ありがとうございます。
こちらは S/4HANA On-premiseを使用しておりますので、この部分はOn-premiseのホスト名になることですね。
またURL"https://xxxx.s4hana.ondemand.com/sap/opu/odata/sap"の中でODATA APIを一番最後に入れないでしょうか?
ご教示して頂けますと幸いです。
>こちらは S/4HANA On-premiseを使用しておりますので、この部分はOn-premiseのホスト名になることですね。
はい。私はS/4HANA Cloudで検証しましたが、On-premiseでも同様と思います。
>またURL"https://xxxx.s4hana.ondemand.com/sap/opu/odata/sap"の中でODATA APIを一番最後に入れないでしょうか?
変数 SYSTEMURL_ODATA の定義には、APIの名前は入れないでください。テキスト通りです。
小畑
小畑さん
ご返信ありがとうございます。
On-premiseのURLで検証しましたが、なかなか上手く動作せず、OSSインシデントに出しました。
教えて頂きありがとうございました。
URLについては、ホスト名以降のパスが違っている可能性がありますので、S/4側の設定と合わせて確認ください。
小畑