AutoWeb

16. 適用業務プログラムのWeb化

AutoWebでは既存の適用業務プログラムはそのまま動作させるだけで
Web化されて表示されます。
対象プログラムはILE-RPGだけでなくRPG III, RPG2, COBOL, ILE-COBOL, CLPなど
言語は何であってもかまいません。
ただし使用するDSPFだけは DSPF38の場合は内部で自動変換されますので
DSPFソースが必要です。

SFL入力プログラムの実行例を見てみましょう。

は、F4=プロンプトで次のようなPOPUPウィンドウも表示することができます。

AutoWEbで実行すると次のようになります。


POPUPも次のように再現することができます。
POPUPは真のPOPUPダイアログとして表示されますので自由にドラッグすることもできます。
完全なPOPUPとして表示できるのはAutoWebだけです。

[解説]

画面はHTMLになるだけでなくいくつかのフィールドがGUIコントロールに変換されています。

 

[静的コンボボックス] 受注区分

「受注区分」は静的なコンボボックスに変換されています。
これは DSPF のDDSソースで

0172.00      A                                  6  2' 受注区分 '              
0173.00      A            JUKBN          2   B  6 13                          
0174.00      A                                      VALUES('01' '02')         
0175.00      A                                      TEXT('" 売上 " " 返品 "') 

のように記述されています。
VALUESパラメータに対応するTEXTを記述するだけで静的なコンボボックスに変換されます。

[動的コンボボックス] 担当者
0184.00      A                                  6 57' 担当者 '                         
0185.00      A            JUTANT    R    4A  B  6 66REFFLD(TANTOMR/TACODE QTRFIL/TANTO)
0186.00      A                                      TEXT('*COMBO *KEY')                
0187.00      A            TTNAM     R    8A  O  6 71REFFLD(TANTOMR/TTNAM QTRFIL/TANTO) 
0188.00      A                                      TEXT('*COMBO *DATA')               

データ・ベースを読んでコンボボックスに変換することもできます。
ここではファイル: QTRFIL/TANTO の担当者コード: TACODE と担当者名: TTNAM を
動的なコンボボックスに変換しています。
REFFLD(参照フィールド)による記述を利用しています。

[POPUPウィンドウ] 商品コード

  

5250エミュレータでのプログラムではRPGやCOBOLでPOPUPを表示するプログラムを
別途開発しなければなりませんでしたが AutoWebを使えばDDSに記述するだけで
簡単にPOPUP検索業務を生成することができますので
POPUP適用業務を開発する必要がありません。

0047.00      A            JHCODE    R        B  9  7REFFLD(SHOHINR/SHCODE QTRFIL/SHOHIN)
0048.00      A                                      TEXT('*POPUP SHCODE,SHNAME,SHTANK') 

このように *POPUPと記述するだけでフィールドには虫眼鏡アイコンが表示されて
アイコンをクリックするだけでPOPUPが生成されます。
しかもPOPUP検索はQUERYのようにあいまい検索など複雑で高度な検索を
高パフォーマンスで実行することができます。
POPUP検索はこの例ではSQLによるストアド・プロシージャーが内部で生成されますが
RPGやCOBOLを検索に利用することもできます。

 

[カレンダー・コントロール]

カレンダー・コントロール

0149.00      A                                  3 80' 受注日 '                          
0150.00      A  *DS3                            3 62                                    
0151.00      A            JUDATE         8Y 0B  3 89TEXT(' 受注日 ')                    
0152.00      A  *DS3                            3 71                                    
0153.00      A  64                                  ERRMSG(' 受注日の誤りです。        -
0154.00      A                                                                ' 64)     
0155.00      A*    編集コード :W  を日付のフィールドとみなしてカレンダーを追加します。  
0156.00      A                                      EDTCDE(W)                           

編集コードに Y や W を指定するだけで自動的に日付にカレンダー・コントロールが
付与されます。
カレンダーには独自の休日も指定することができます。

 

[郵便番号の検索]
0049.00      A            TKZIP     R        B 10 25REFFLD(TOKMASR/TKZIP QTRFIL/TOKMAS)  
0050.00      A                                      TEXT('*ZIPCODE')                     
0051.00      A                                      OVRDTA OVRATR                        
0052.00      A                                 11 10' 住所1 '                           
0053.00      A            TKADR1    R        B 11 25REFFLD(TOKMASR/TKADR1 QTRFIL/TOKMAS) 
0054.00      A                                      TEXT('*ADDR1')                       
0055.00      A                                      OVRDTA OVRATR                        
0056.00      A                                 12 10' 住所2 '                           
0057.00      A            TKADR2    R        B 12 25REFFLD(TOKMASR/TKADR2 QTRFIL/TOKMAS) 
0058.00      A                                      TEXT('*ADDR2')                       
0059.00      A                                      OVRDTA OVRATR        

のように *ZIPCODE, *ADDR1, *ADDR2 などをTEXTに指定するだけで
郵便番号を入力するだけで住所を検索することができるようになります。
郵便番号の検索はWebサービスで検索していますので自動的にWebでメンテされますので
郵便番号簿を保守する必要がありません。

その他にDDS記述だけで次のようなGUIコントロールを使用することができます。

・押しボタン ・ラジオ・ボタン ・スクロール・バー

・画像ファイル ・Google Map ・タブ・コントロール

・リンク ・Google 電話 ・スプリット・ウィンドウ

・横スライド・バー ・チッェクBOX

このようなGUIコントロールを使うだけで今までの5250画面はスタイリッシュで
わかりやすい画面に生まれ変わります。
GUIコントロールはビジュアルでわかりやすく操作の説明が不要です。

次回は効果的なGUIコントロールの例をいくつか見ていきましょう。