(BluePrism)ポケモン図鑑を作る ~Part7 Web APIからのデータ取得とテキスト加工編~
こんにちは、おむおむです。
コメダ珈琲でこの記事書いてます。
ミックストーストとシロノワール、美味い!
さて、今回はこれまでで作成してきたWeb APIを使用して、
実際にポケモンのデータを取得し、
Slackに送信するためにテキストを加工してみたいと思います。
今回は、ギャラドスのデータを例として使用します。
過去記事はこちら↓
newgraduate19-rpa.hatenablog.com
newgraduate19-rpa.hatenablog.com
ポケモンのタイプを取得
Part4にあるとおり、ポケモンのタイプを取得するためには
1. タイプを英語名で取得する
2. 日本語名に変換する
という2ステップが必要でした。
タイプが1つの場合は楽なんですが、
2つある場合もあるので、
テキストを良い感じに加工して、以下のようにしてみます。
タイプが1つの場合:○○タイプ タイプが2つの場合:○○・△△タイプ
つまり、2つの場合に中黒を入れるようにしてみます。
完成形として、フローはこんな感じになります。
まずは英語のタイプ名をコレクションで取得します。
欲しいデータは、ネストされたコレクション内にある
nameフィールドの値です。
中身を見ようとクリックすると・・・
あれ?これってv6.7あたりで解消されてたはずでは・・・
(あとでサポートにチケット上げよう...)
言語を英語にして再度開いてみると・・・
ちゃんと取れていることが確認できますね!
英語のタイプ名がまとめて取れるのに対して、
日本語に変換する際は1つずつ変換する形になるので、
繰り返しステージを配置して対応しています。
テキストを加工する
日本語への変更も、Web APIを使用して行います。
取得した後、上に書いたとおりに
末尾に「タイプ」という文字を付加して、
複数タイプがある場合は間に「・」(中黒)を入れます。
文字列加工のロジックは以下の通り↓
1. 日本語のタイプ名の後ろに「・」を追加する。 2. 日本語名への変換が完了した後、末尾に「_」(アンダースコア)をつける。 3. 「・_」を「タイプ」に置換する。
上の手順の1番のロジックはこれ↓
初期値が空のデータアイテム「タイプ」に
日本語のタイプ名「Types_ja」と「・」を追加しています。
そして手順2と3のロジックは以下↓
大して複雑ではないですね!
送信用テキストへ成型
さて、タイプの成型が完了したので、
あとはSlackへの送信用に諸々のデータをマージしていきたいと思います。
え?データアイテムを「&」で繋げればいいんじゃないの?
と思ったそこのあなた!
それだけでは不十分です!
ただ&でつなげるだけだと、
テキストが一行になってしまって見づらいので、
適切な位置に改行を入れてあげる必要があります。
じゃあどうやって入れるのか!?
実は簡単、計算ステージのChr関数を使用するだけ!
改行を入れよう
Chr関数は、ASCIIコード(10進数)を指定して
文字を挿入することができる関数です。
ASCIIコードはこんな感じ↓
www.k-cube.co.jp
改行(LF)は10が割り当てられているので、
計算ステージで改行を入れたいところに
Chr(10)と入れればOKです。
ここまでで取得した
・ID
・ポケモンの日本語名(入力パラメータ)
・タイプ
をまとめると、計算ステージは
"No."&[ID]&" "&[ポケモンの日本語名]&Chr(10) &[タイプ]&Chr(10)
のように指定するといい感じになります!
動かしてみよう
ここまでの範囲を動かしてみるとこんな感じ↓
やったぜ☆
あとは同じ要領で、説明と種族を追加します(テキトー)
まとめ
・シロノワールはミニサイズでも十分食べ応えがある
・「パンくずリスト」って名前面白いですよね
・Replace関数、「実務でよく使う関数ランキング」1位にランクインする(多分)
次はまたBlue Prismに関係ない内容になるな(予想)