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