2016/03/03 著者:菊地 雄大 カテゴリー: ASTERIA Warp体験記 , ASTERIA Warp使ってみた
こんにちは。インフォテリアのキクチです。
そろそろ花粉の季節になってきたようですが、みなさん対策はされてますか?
季節の変わり目にもなってくるので、体調を崩されないように気をつけてくださいね。私自身はまったく花粉症ではないので、大変さは分からないのですが…(汗)
さて、今回のASTERIA Warp体験記では前回行ったファイル連携を少し発展させてみました。複数のファイル連携を体験しています。
この辺りの要件は業務上必須になってくる場合も多いと思うので、何かしらのヒントになればいいなと思いながら今回も頑張っていきます。
それでは早速、ASTERIA Warp体験記、ファイル連携編その2を始めてみたいと思います!
前回はファイル連携の基礎的な部分を体験しました。今回はもう少し実践的に複数のファイルの連携を体験していきます。
単一のファイルを読み込んで出力する、単純な連携は無事に行えました。じゃあ、複数のファイルを連携させたい場合にはどんな手順で行っていけばいいんでしょう…?
前回のフローを元にして複数のファイルの連携を行ってみたいと思います。
まずは、フローデザイナーの立ち上げです。
前回作成したフローを元にしたいと思いますので、前回のフロー(ファイルを連携する1)を右クリックで表示されるメニュー「複製」を選択します。
ちなみに、同じように表示される右クリックメニュー「コピー」では別プロジェクトへもフローをコピーできるようです。
「フローサービス マニュアル」_「フローデザイナー」_「フロー管理」_「フローをコピーする」
新しいフロー名を入力すると…
新しいフロー「フローを連携する2」が作成されました。こちらをいじっていきたいと思います。
今回はよくあるASTERIA Warpの使い方を想定してみます。
例えば、
みたいな場合にASTERIA Warpでどう実現するのかを考えてみます。
ひとまず、簡素化のために売上情報ファイル2つを別フォルダに配置してみたいと思います。
プログラム的に考えてみると、
というような流れになるんじゃないでしょうか。
ファイルパスについては、別途設定ファイルなどに記載してある情報を読み取るのなど、あらかじめ設定しておく必要がありそうですし、一つ一つのファイルのオープンクローズにも気を使いそうです…
ASTERIA Warpではどうやってフローに表現するのかなー、簡単だといいなぁ~
まずは自分なりにフローを作ってみました。
ものすごくダサいですが、単純にファイル2つの読み込みなので、フローの流れを2つ作ってしまえばファイルの連携自体は成功しました。
ただ、これだとファイルの数が増えたときにファイル数分設定を行わなければならないので非常に面倒ですよね。
きっともっとスマートに出来るはずだと思い、Hさんに見てもらいました。
キクチ「Hさん、複数ファイルの連携についてなんですけど、このフローを見てもらってもいいですか?」
Hさん「もちろん!………何、このものすごくダサくて手間のかかるフローは…」
キクチ「ですよね…。ファイルの取得とか出力をもっとスマートにしたいんですけど…(汗)」
Hさん「なるほど、そういうことねー。それならFileGetコンポーネントでループさせてあげれば出来るんじゃないかな」
キクチ「ループ!確かに!でもそれだと、ファイルパスの指定とかどうしてあげればいいんですかね?繰り返しの度に動的に変えてあげないと…」
Hさん「ファイルパスにはワイルドカードが指定できるから、それで取得することが出来るんじゃない?」
キクチ「ワイルドカード使えるんですね!それならいちいち絶対パスで指定しなくても取得できますね。」
Hさん「出力ファイルパスもマッパーの中で決められるからそれで出来るんじゃないかな。」
キクチ「はい!ありがとうございます。」
ループとファイルパスのワイルドカード指定、この二つがあれば出来そうな気がしてきました。
早速フローを作り直してみます。
こんな感じになりました。
一見、前回作成したフローと同じように見えますが、FileGetコンポーネントのプロパティでループを指定しています。
また、ファイルパスのプロパティにもワイルドカードを指定してみました。
「ループを開始」プロパティを「はい」に指定すると、FileGetコンポーネントの出力ストリームの表示も少し変わるみたいです。
ていうか、ワイルドカードが使えることもリファレンスにはしっかり記載があるんですね…
「コンポーネント」_「ファイル」_「FileGet」
使うコンポーネントを決めたら、まずはリファレンスを確認することを心に決めました(汗)
どうやら、FileGetコンポーネントのループでは1ファイルずつをストリームとして読み込んでくれるようです。
それに、出力ストリーム変数で「FileName」を持っているので、今回は読み込んだファイル名をそのままユーザーのホームディレクトリに出力してみたいと思います。
具体的にはマッパー画面でこんな風にマッピングしてあげます。
するとFilePutコンポーネントのファイルパスプロパティには
こんな感じで表示されます。
で、実行してみると…
見事成功しました!
ユーザーのホームディレクトリにも…
読み込んだ複数のファイルが作成されています。
作成されたファイルを見てみると…
中身もきちんと出力されているのが確認できます。(当たり前ですね…(汗))
複数ファイルの読み込みを考えたとき、プログラムだとループ回数の指定、ループ内で行う処理の記述などステップ数が多くなりがちですが、ASTERIAだとプロパティ2つを変更するだけで処理が完結できてしまいました。なんともお手軽だなぁ~
次は今作成したフローを一定時間ごとに実行するスケジュールの設定です。作成したフローの呼び出し方を決める「実行設定」
まずはマニュアルを参照してみます。
ツールバーの雷マークから設定を出来るようです。
クリックして進めてみます。
今回は一定時間ごとに起動する設定にしたいので「間隔」の設定を行います。
起動するフローや、実行間隔の設定をして、「登録」ボタンを押下すると…
新しい実行設定が追加されています。
実行設定もなんともお手軽ですね。
こうしておくことでフローサービスが起動されている間は設定された間隔に沿ってフローが実行されるようです。
と、いうことで今回はここまでにしたいと思います。
どうでしょう。ASTERIA Warpでファイル連携、すごく簡単な気がしてきたんじゃないですか?
さて、次回についてですが、実運用を考えたとき、大きなファイルでもメモリがパンクしないように考えておきたいですよね。
そんなわけで、ビッグサイズのファイルでもタイムアウト、メモリ制限に引っかからないようなフローの作成に挑戦してみたいと思います。
次回もお楽しみに!
ユーザー企業が語るデータ連携ツール活用法 #9 関電システムズ様編 講演レポート開発はつづくよどこまでも!~ノーコードツールに必要な二面性とは~
ユーザー企業が語るデータ連携ツール活用法 #8 コニカミノルタジャパン様編 講演レポートExcel業務の自動化で人的ミス&工数を削減!~従量課金型の新規ビジネスを支えるデータ連携ツール
APIを使ってZoomウェビナーの登録者情報をCRMに自動連携!―ナガタのRPA体験記
業務自動化でDX推進!パッケージ版Garoonとkintoneをノーコードでつないでみた!
ユーザー企業が語るデータ連携ツール活用法 #7 さくらインターネット様編 講演レポートMA運用半年で200件の新規営業案件を創出! 〜営業&マーケティングデータ統合のポイント〜
ASTERIA Warp製品の技術情報やTips、また情報交換の場として「ADNフォーラム」をご用意しています。
ASTERIA Warpユーザー同士の交流の場として、各種イベント案内や開催レポートを掲載しています。
Copyright©1998 -2021 Asteria Corporation. All Rights Reserved.