Designer:手順の繰り返し機能の原点

手順の繰り返し機能は、xoBlos の強力な機能であり、お使いになることも多いかと思います。xoBlos バージョン 1.7.0.4(2016年)でこの機能が追加された当時、製品開発エンジニアが書いた記事を再掲しますので、その当時のニーズやシーズの原点に触れてみてください。

--

xoBlosの一つの手順(ステップ)をパラメータを変えながら何度も繰り返し実行させたくなったことはありませんか?

例えば、全国に10支店があるとして、支店毎の似たような処理を支店名や支店コードを変えながら10回実行したいというような場合です。

こういうことを簡単に実現するのが、手順の繰り返し機能です。繰り返し・反復のことを英語でイテレーション(Iteration)と呼ぶのでイテレータとも呼ばれています。

具体的な例で見てみましょう。今、下記のようなCSVがあったとします。

支店コード,支店名

A01,A支店

B02,B支店

C03,C支店

・・・・・・

I09,I支店

J10,J支店

これを使ってA支店からJ支店まで、10回繰り返したい手順1があるとします。

手順1の出力ファイル名を A01_A支店.xlsx みたいにしたい場合

 (1) 手順1の出力ファイルを $(item:"支店コード")_$(item:"支店名").xlsx と指定します。

 (2) 手順1の「手順の繰り返し設定」で上記のCSVファイルの名前を指定します。

手順1を実行すると、

1回目 $(item:"支店コード") がA01に、$(item:"支店名") がA支店に置き変わるので、出力ファイル名はA01_A支店.xlsxになります。

2回目 同様にして B02_B支店.xlsx

3回目 C03_C支店.xlsx

・・・・・・・・・・・

9回目 I09_I支店.xlsx

10回目 J10_J支店.xlsx になります。

 このように、CSVや抽出ファイル(XML)のレコードを読んで、その中の値を手順で使えるようにしてくれるのが、手順の繰り返し処理(イテレータ)です。

この他に、何回繰り返せという指定もできます。また、1回しか繰り返さなくても、外部にあるファイルの値を手順内で使いたい場合もこの仕組みが使えます