8.2.1 BTMENU01パターンを使用したメニュー画面の表示
(1) 処理の概要
ユーザIDとパスワードを入力するためのユーザ登録確認画面を表示します。ユーザIDとパスワードを照合して登録があれば,次にメニュー画面を表示します。このメニュー画面で,プッシュボタンまたはファンクションキーを使用して次の処理を選ぶと,選ばれたメニューに対応した使用ごとのAPを起動します。
メニュー画面の表示処理の概要を次の図に示します。
図8-1 メニュー画面の表示処理
![[図データ]](figure/zu070100.gif)
(2) 画面定義上のポイント
作成する画面の基になる定義サンプル,または画面のレイアウトパターンを次に示します。
作成する画面 | 適用できるパターン |
---|
画面の定義サンプル名 | 画面のレイアウトパターン名 |
---|
ユーザ登録確認画面 | GPASW1 | ログインウィンドウ |
メニュー画面 | BMENU1 | 一段ボタンメニュー |
ユーザ登録確認画面には次の特長があります。
- パスワードを入力する項目の使用目的を「パスワード」と指定すると,パスワード入力時は入力データを「*」や「空白」で隠せる。
- ユーザIDまたはパスワードに誤りがあった場合に利用できるエラーメッセージ用の項目を用意している。
(3) AP作成上のポイント
作成するAPの基になるAPパターンを次に示します。
- メインプログラムで使用するAPパターン名:BTMENU01
メインプログラムには,次の特長があります。
- 対応しないファンクションキーや[Enter]が押されたときの処理が用意されている。
- メニュー画面からは,[F1...見積書]ボタンまたは[F1]を選んだときの業務のAPをCALL文で呼び出す仕様となっている。
- メニュー画面から業務ごとのAPを呼び出すとき,メニュー画面をDISABLE文でクローズしている。
なお,このAPパターンを使用してのメインプログラム作成時には次の注意が必要です。
- ユーザIDおよびパスワードの照合処理は含まれていないため,ユーザ独自のコーディングが必要となる。
(4) コーディング例
この例題のソースプログラムを'MENUOUT.cbl'として標準提供しています。ソースプログラムからコーディング上のポイントを抜粋して次に示します。
![[図データ]](figure/zu070200.gif)
- マップ名を変更する。
プログラム中の'@@@111'を'GPASW1'に,'@@@444'を'BMENU1'に変更します。
- 実行ファイル名を変更する。
プログラム中の'###EXE01.exe'を'DSPCLEAR.exe'に変更します。
- CALL文を使用してAPを呼び出す。
CALL 'DSPCLEAR.exe'