10.1.3 ほかの業務との関連

手順業務では,複数の業務を組み合わせて実行できます。このとき,データベースや変数を使って,業務間でデータを受け渡せます。また,クライアントとサーバとで処理を分散できます。

<この項の構成>
(1) 業務の関連
(2) データの受け渡し
(3) 処理の分散

(1) 業務の関連

手順業務では,Groupmax Formで作成した各業務(伝票発行業務,書式印刷業務,データベース更新業務,及び手順業務)を組み合わせて実行できます。手順業務の処理定義で,各業務を呼び出す処理コマンドを指定します。また,手順業務をメニューウィンドウに登録すれば,メニューから実行できます。

このように,手順業務を作成することで,業務全体の流れを制御できます。

手順業務を中心とした各業務の関係を,図10-3に示します。

図10-3 手順業務を中心とした各業務の関係

[図データ]

(2) データの受け渡し

手順業務として組み合わせた複数の業務の間では,データベースや変数を使ってデータを受け渡せます。

データベースの利用

一つの業務の実行結果をデータベースに出力して,別の業務でそのデータを利用します。図10-2では,伝票発行業務(DENPYO)の実行結果をUDATAに出力して,レコードを統合する処理に渡しています。

メモリファイルの利用

メモリファイルとは,データベースの加工結果などを一時的に保存しておく,作業用のファイルです。手順処理が終了すると消去されます。図10-2では,レコードの統合結果をメモリファイルに出力して,レコードの分類処理で利用しています。

メモリファイルの種類を,次に示します。

なお,サーバで処理を実行する場合,サーバでもメモリファイルを使えます。ただし,「%OUTD」,「%OUTD1」~「%OUTD8」を使っても,出力結果は表示されません。また,オフィスサーバでは,メモリファイルの内容を引き継げる範囲は,サーバ側(ETOILE/OP)の規則に従います。

グローバル変数の利用

ローカル変数「¥Lnn」及びグローバル変数「¥Gnn」は,処理コマンドの実行結果などを一時的に保存する領域です。このうち,グローバル変数の内容はGroupmax Formを終了するまで有効なので,一つの業務で設定したデータを別の業務で利用できます。

(例)

 ・手順業務の処理定義

  @伝票発行△PARAM,,0

  @DB検索△UDATAK,%OUT,得意先コード=¥G01

 ・伝票発行業務(PARAM)の処理定義

  [得意先コード:項目処理]

  @代入△¥G01=得意先コード

手順業務から@伝票発行で伝票発行業務(PARAM)を呼び出しています。伝票発行業務では,グローバル変数「¥G01」に得意先コードを設定します。呼び出した伝票発行業務の終了後,手順業務では,「¥G01」の内容を利用してデータベースを検索します。

(3) 処理の分散

手順業務では,クライアントとサーバとで処理を分散して実行できます。

処理分散の種類

処理の分散には次の2通りの方法があります。

並行処理

クライアントからサーバに処理を分散した後,クライアントでは,サーバで実行中の処理と並行して,次の処理が実行されます。また,クライアントから複数の処理をサーバに分散すると,それぞれの処理は並行して実行されます。こうした並行処理を利用すれば,処理効率を向上できます。

クライアントの処理定義で@終了待ちを指定すれば,サーバの処理が終わるのを待ってから,次の処理を実行できます。サーバでの処理結果を次の処理で利用する場合は,@終了待ちを指定しておきます。

並行処理の例を,図10-4に示します。

図10-4 並行処理の例

[図データ]

データの引き継ぎ

クライアントからサーバへ処理を分散したとき,クライアントでグローバル変数に設定した内容は,サーバへ引き継がれます。