A2019 - SAP Fioriインターフェースの操作

#A2019からSAP Fioriインターフェースを操作

最近、SAP周りの自動化の話をよく聞きます。
そこで、従来のファットクライアント（SAP Easy Access）ではなく、Fioriというウェブベースのクライアントを試してみました。

##環境の準備
まず、Fioriを使える環境を用意します。
無償で使えるフリートライアルが用意されているので、それを利用します。

[ こちら ](https://www.sap.com/japan/products/free-trials.html)にアクセスして、右上の”試して購入”から申請できます。
期間が切れても、再度申請すれば使えるので便利です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/615564/bf563d03-81da-a9b2-993e-7e470bcbfdd9.png)

##SAP Fioriインターフェース自動化開発
従来のSAPクライアントの場合は、レコーダーを利用するか、SAPパッケージに含まれるアクション群を利用しました。
Fioriの場合は、ウェブベースのクライアントですので、レコーダーによる開発となります。

##レコーダーによるキャプチャー

普通にレコーダー機能を使ってキャプチャします。

昨日色々試していた時は英語UIだったのですが、今日再度アクセスしたら日本語UIになってました・・・
ウィンドウタイトルが日本語になってますので、英語UIで作ったBotで対応するには、A2019の場合はウィンドウ変数のウィンドウタイトルを日本語に合わせる必要があります・・・

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/615564/0369887a-5e3c-326b-f840-e183dfeaab7b.png)

##で、実行すると・・・
最近のウェブベースアプリは、内部構造が動的に変わることが多いのですが、Fioriも同様の様で、このままでは動かないポイントが出てきます。
ので、微調整をかけていきます～

まず、タイルのの選択。

| 項目 | 対応内容 |
|:-:|:-:|
| ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/615564/5f818427-a6b5-9200-e4fa-64e48ff334db.png)  | アクションが「クリック」になっているのを「左クリック」にします。![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/615564/212f8ded-f921-aa79-4da8-7514b21a416b.png)  |

フィールドへの値の入力

| 項目 | 対応内容 |
|:-:|:-:|
| ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/615564/7ce6eefa-0594-f55b-cd4f-9240c57def6d.png) |  特に対応不要。「テキストを設定」アクションで値を入れます。 |

検索ウィンドウの表示用アイコンクリック（↓のテキストボックス右端のアイコン）

| 項目 | 対応内容 |
|:-:|:-:|
|  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/615564/40f601ee-f975-a5c3-ced2-3a62c99150d6.png) |  アクションが「クリック」になっているのを「左クリック」にします。 |

検索ウィンドウでの入力

| 項目 | 対応内容 |
|:-:|:-:|
|  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/615564/52f9d24a-444c-5ad0-ad9e-2d1221981244.png) |  特に対応不要。「テキストを設定」アクションで値を入れます。 |

検索ウィンドウの結果の選択

| 項目 | 対応内容 |
|:-:|:-:|
|  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/615564/52f9d24a-444c-5ad0-ad9e-2d1221981244.png) |　アクションは左クリック。そして、HTML IDの最後の数字部分を*(アスタリスク)に変更します。 ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/615564/00808195-3498-40af-0f2b-22bce72ae156.png)
 |

ウィンドウ下部のボタン

| 項目 | 対応内容 |
|:-:|:-:|
|  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/615564/9dcb361a-e369-248b-02bf-2629750aa57f.png) | Pathを外して、アクションを「ダブルクリック」とします。  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/615564/7d93d41a-f767-770d-d714-a45e43ad33f0.png)|

小窓

| 項目 | 対応内容 |
|:-:|:-:|
|  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/615564/0e94f3f5-88a3-28db-ce4a-d228e6e4f8e0.png) | こちらも、HTML IDの最後の数字部分を*に変え、左クリックとします。 ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/615564/273a1638-42f8-aca0-f828-a9ff2f8c2be0.png) |

##条件によって出現する小窓の対応

| 項目 | 対応内容 |
|:-:|:-:|
|  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/615564/a70ee5aa-1455-9fd6-977d-fab54b07934f.png) |　IFアクションのレコーダー→オブジェクトで検知可能です。この場合も、HTML IDの最後の数字は*に変更します。  ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/615564/4234c966-d941-3e6d-25dd-7777e3c01fd2.png)　![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/615564/f8af8954-6acd-3de5-3d1e-2993a5d4d2c8.png)|

##まとめ

SAP Fioriインターフェースは、A2019のレコーダー機能＋微調整で十分対応可能と思われます。

主要なコントロールをいくつか触って試してみただけですので、上記の調整だけでは不足している場合や、
他にもキャプチャーしただけでは動かない項目が出てくることもあるかと思いますが、
そういう場合は、一旦キャプチャーをしてみて下記の3項目の値を控える。
そして、Fiori側を再度操作してみて、再度キャプチャーし、下記の3項目を確認することで、
どの部分が動的に変わっているのか分かりますので、そういった項目を外すか、アスタリスクで条件一致させることで対応が可能となってきます。

- DOMPath
- HTML ID
- Path