メニュー

logo

カチシステムはお客様に寄り添った
システム開発と支援サービスを提供し
「やさしい最先端」を創造します。

【第9回】ロータス博士のWinActor塾~サブルーチン

2020.05.29

サブルーチンとは

共通処理や処理ノードの数が多い場合、特定の処理を外に出すこと(サブルーチン化)で

見やすくなり、何をしているか理解することが容易になります。

また、処理が区別されるためシナリオの修正やエラー発生箇所の把握がしやすくなるという利点もあります。

 

サブルーチンを使わなくてもシナリオを作成することはできます。

しかし同じ処理を何度も行う場合にサブルーチン化をしていないと、シナリオが長くなることに加え

メンテナンスが発生した場合に修正箇所が多くなってしまいます。

 

サブルーチン化することによって下記のメリットがあります。

 

  • ノード数の削減
  • シナリオの単純化
  • フローの見やすさの向上
  • メンテナンスがしやすい

  

サブルーチンの利用例

サブルーチンで処理を外に出すというのはどういうことなのか、フロー図で見てみましょう。


 

一定の処理をサブルーチンした場合

 

 

サブルーチンは移動先の処理が終わったら呼び出し元に戻ります

 

 

共通処理をサブルーチンにした場合

 

 

 

使いまわしするような同じ処理はサブルーチン化することで1つにまとめることができる。

フローも簡略化されて見やすくなる。良いことずくめじゃな!

では実際の使い方を覚えていこう。

サブルーチンの使用方法

使用するノードは下記の3種類です。

それぞれフローチャート画面にドラッグ&ドロップしましょう。

 

「サブルーチン呼び出し」と「サブルーチングループ」は対となります。

どちらか一つでは意味がありません。

 

 

 

どのような機能なのか、それぞれのノードのプロパティを見てみよう。

 

サブルーチン呼び出し

 

 

 

 

 

サブルーチングループ

 

 

 

 

※1 「サブルーチングループ」の名前を変更すると、下記のダイアログが表示され

   影響を受けるサブルーチンのサブルーチン名が同時に変更されます

 

※2 ローカル変数を追加すると、下記のダイアログが表示され

   影響を受けるサブルーチングループのプロパティ内容が変更されます。

 

 

 

引数について

 

引数(ひきすう)とは、一般的に関数(ここでいうサブルーチン)を実行する際に引き渡す値のことを指します。

WinActorでは、サブルーチングループでのローカル変数の設定として使用します。

 

 

ローカル変数

 

ここでのローカル変数というのは、サブルーチングループ内だけで使用される変数のことを言います。

一般的なプログラムのローカル変数とは少し違う動きをしていますので注意しましょう。

サブルーチングループ内でその変数をいじっても、サブルーチングループを抜けたときに値がもとに戻ります。

 

ローカル変数は使いこなすのに多少時間がかかるかもしれんな。

実際のフローを使って、変数一覧の変化を見てみよう。

 

(1)「数量」「引数」の初期値

 

 

 

 

 

サブルーチン終了

 

サブルーチンは、最後まで処理が進むと呼び出し元に戻ってきます。

しかし「サブルーチン終了」ノードを使用すると、サブルーチンの処理の途中でも強制的に終了し

呼び出し元まで戻ることができます。

 

主に分岐と組み合わせて、特定の状況になったら処理を中断して戻るといったフローに利用します。

 

 

 

どうじゃったかな?

最初はフローの流れがあちこちに飛ぶため難しく感じるかもしれんな。

しかしそれも慣れじゃ!サブルーチンを使うとメリットがたくさんあるからの。

繰り返しには便利ですね。

同じ処理を何度も作らなくて良いのは楽!

「サブルーチングループ」は「サブルーチン呼び出し」だけでなく

監視ルールから呼び出すこともできるぞ。

次回、「例外処理と監視ルール」でまた会おう!


 

任意
お名前を入力してください。
任意
返信用のメールアドレスを入力してください。
必須
コメントを自由に入力してください。
コメントに対して弊社からの返信を受け入れる場合はオンにしてください。
当コメントへの返信以外の内容が弊社から送られることはありません。
コメントを記事内で紹介、引用することを許可する場合はオンにしてください。
上記の設定をオンにしても必ず返信や記事への紹介がされるものではないことをご了承ください。
コメントでの技術的な質問は受け付けておりません。別途弊社サポートのご利用をご検討ください。
お問い合わせはこちらから。
コメントは返信の有無に関わらず全て一読させていただいております。

関連記事こちらの記事も合わせてどうぞ。

最近の記事

カテゴリ

PAGETOP