Blue Prism でExcelを読み取ってデータをコレクションに入れる
パラメータをExcelで準備しておくというのは割とよくあるよで、
WinActorの時はそのパラメータファイルからデータ取得が糞めんどくさかったんですよね。
まあプロジェクト指定のやり方がアレだったのかもしれませんが。
さて、移行するにあたり、そのあたりを見直せばいいのですが、
次回ライセンス更新までにリプレイスを完了しなければいけないというけつかっちん。
でははじめていきましょう。
まずはExcelからデータをコレクションに格納しましょう。
まあこれはお約束と言えばお約束。
BluePrism提供のVBOであるMS Excel VBOを活用します。
あ、今回の処理ではこのVBOのほかに、Utility - Collection Manipulationも使います。
では、Excelに保存されたGDPのデータを取得し、日本のGDPを変数に格納します。
ざっくりとした流れとしては――
- Excelを読み込む
- 読み込んだExcelデータをコレクションに格納
- コレクションにフィルタをかけて、別のコレクションに格納
- コレクションから値を取得
- (゚д゚)ウマー
なんだか懐かしい流れ。
▼ということでいったん仕上がりを(例外制御もリトライも一切ないというね。実際の業務では見直したいところ)
この辺りはお作法的なところですかね。
▼インスタンスを作ります。操作のためにhandleを受け取るのをお忘れなく
▼WBを開きます。インスタンスに紐づくhandleとファイルパスを渡してやると、ファイル名がかえされるので、ファイル名も受け取りましょう。
▼コレクションに読み込みます。
Blue PrismのコレクションをDictionaryに変換しないで値を取り出すよ
まあいろいろやり方はあるんでしょうが、こんな感じで取り出せました。
▼コレクションに対して、条件を与えてフィルターします。国名に日本が含まれるものっていうあいまい検索っぽく指定。
▼そうすると、条件で絞られたコレクションを返却するので受け取ります。
▼次のステージでコレクションから値をとりだしてやると。
では実行してみましょう。
ぽちっとな
▼ちなみに読み取ったエクセル
▼コレクションに値が入って
▼フィルタをかけたコレクション
▼取得した結果。ちゃんと取れてますね。
Blue PrismのコレクションをDictionaryに変換しないで値を取りだせました
ということで、オブジェクトでコレクションからディクショナリに入れ替えて、受け取った値を返却するというのも作りこめますが、
コレクションへの操作でもなんとかいけそうですね。