AutoWeb

18. タブ(TAB)コントロール

タブ(TAB)コントロールとは GUIコントロールの中でも地味ですが
日常、多く使用されて普及しています。

5250エミュレータでは新しい画面が表示される都度に
前の画面は消えてしまいます。(当然のことなのですが)
これを画面遷移の問題と呼びます。
WindowsなどのGUI画面はWindowsエクスプローラに見れるように
ツリーを展開しても以前の画面情報は残っています。

これがエンド・ユーザーに安心感を与えるのですが
5250エミュレータでは次の画面が表示されると前の画面が
消えてしまいますのでエンド・ユーザーにとっては
それがストレスになります。

社内のメニュー操作でも複雑なメニュー画面を推移している場合
あなたは自分がどのメニュー位置にしているのかを
つねに意識して記憶しているはずです。

しかし社内メニューにまだ不慣れな新入社員では
それはできません。
この問題はWebフェーシングでWeb化しても同じことが
起こるはずなのですがここでそれらを解決する
効果的な方法をご紹介しましょう。

・5250適用業務の画面

この画面を見てエンド・ユーザーは機能キーがたくさんあって機能キーの説明を読んで
次にその機能キーをキー・ボードの中から探さなければなりません。
F15といってもすぐにわかる人は少ないでしょう。
次の画面に移動してしまうとこの画面に戻れるのか不安が残ります。

・AutoWebでタブ(TAB)コントロールを使ってWeb化すると

これならキーを探す必要はありません。マウスでクリックするだけの簡単な操作で済みます
たとえ次の画面に行ってもまたTABで戻れる安心感があります。

[解説]

どうでしょうか?
機能キーの表示がTABコントロールになっただけでわかりやすさ
使いやすさが今までとまるでちがいます。

この例は機能キーを押す操作をTABコントロールの操作に置換えただけです。
今までの5250エミュレータ上では別の画面に推移したり戻ったりするのに
エンド・ユーザーはいちいち機能キーの説明を読んで捜さなければ
なりませんでした。
TABコントロールになっても捜すことに変わりはないのですが
エンド・ユーザーはTABコントロールでいつでも必要な画面に
切替えることができる安心感が得られます。

機能キーの配列がTABコントロールになっただけで GUI化の安心感を
大きく得ることができます。

 機能キーが沢山定義されている画面を自慢してはいませんでしたか?
SEの自己満足とは反対にエンド・ユーザーは沢山の機能キーを見て
困惑していただけかもしれません。
あなたの作った画面がTABキーになったとしたら …. ?
想像してみてください。

それでは機能キーをTABコントロールに変化させるには
どのようにすればよいのでしょうか?

0022.00      A          R DSPDTA01                                          
0023.00      A*%%TS  SD  20070808  145526  QTR         REL-V5R4M0  5722-WDS 
0024.00      A                                      TEXT(' 基本情報 01')    
0025.00      A                                      CF03(03 ' 終了 ')       
0026.00      A                                      CF10(10 ' 更新 ')       
0027.00      A                                      CF23(23 ' 削除 ')       
0028.00      A                                      CF12(12 ' 前画面 ')     
0029.00      A                                      CF02(02 'DSPDTA02')     
0030.00      A                                      CF13(13 'DSPDTA03')     
0031.00      A                                      CF04(04 'DSPDTA04')     
0032.00      A                                      CF05(05 'DSPDTA05')     
0033.00      A                                      CF06(06 'DSPDTA06')     
0034.00      A                                      ROLLUP(07)              
0035.00      A                                      SETOF(99)               
0036.00      A                                      BLINK                   
 :
  :
0065.00      A  88        TAB            2Y 0B 22  2PSHBTNFLD                        
0066.00      A                                      TEXT('*TAB')                     
0067.00      A                                      PSHBTNCHC(1 '>> 基本情報 ' CF24) 
0068.00      A                                      PSHBTNCHC(2 ' 分類情報 ' CF02)   
0069.00      A                                      PSHBTNCHC(3 ' 支払情報 ' CF13)   
0070.00      A                                      PSHBTNCHC(4 ' 督促条件 ' CF04)   
0071.00      A                                      PSHBTNCHC(5 ' 追加情報 ' CF05)   
0072.00      A                                      PSHBTNCHC(6 ' 更新情報 ' CF06)   
0073.00      A N88                             22  2'F3= 終了 '                      
0074.00      A                                       COLOR(BLU)                      
0075.00      A N88                             22 16'F10= 更新 '                     
0076.00      A                                       COLOR(BLU)                      
0077.00      A N88                             22 31'F23= 削除 '                     
0078.00      A                                       COLOR(BLU)                      
0079.00      A N88                             23  2'F2= 分類情報 '                  
0080.00      A                                       COLOR(BLU)                      
0081.00      A N88                             23 16'F13= 支払情報 '                 
0082.00      A                                       COLOR(BLU)                      
0083.00      A N88                             23 31'F4= 督促条件 '                  
0084.00      A                                       COLOR(BLU)                      

[解説]

ご覧のように IBM DDS の押しボタン・フィールド : PSHBTNCHC を定義して
押しボタンには

0065.00      A  88        TAB            2Y 0B 22  2PSHBTNFLD                        
0066.00      A                                      TEXT('*TAB') 

 

のようにテキストに *TAB を入れているだけです。

RPGソースでは


0016.00 C   U8              SETON                                        88 

の行が一行追加されているだけです。
このRPGプログラムは AutoWebから実行されているときは標識88がオンになるように
仕組んでいます。

次回はよりWebらしさを簡単に出せるリンク(LINK)の方法について紹介しましょう。
クリックするだけで別のサイトへ移動する機能があります。
あれがリンク機能です。AutoWebではDSPFでもリンクを簡単に実現することが
できます。