ダイナミック型CGIプログラムは,COBOLプログラムが実行中にCBLFILLTEMPLATEサービスルーチンを利用して,DLLを呼び出す形式のプログラムです。呼び出すDLLの属性はstdcall属性でなければならず,あらかじめHTMLトランスレータを利用してHTMLテンプレートから生成しておきます。
ダイナミック型CGIプログラムは,テストしながらHTMLテンプレートを修正できます。また,HTMLテンプレートをテスト後にDLL化しても,CGIプログラムを再コンパイルする必要がありません。ただし,DLLの名称を変更した場合は,CGIプログラムを再コンパイルする必要があります。また,HTMLテンプレートが複数ある場合でも,一つのDLLファイルにまとめられません。この場合,HTMLテンプレートごとにDLLファイルを作成する必要があります。
- ダイナミック型CGIプログラムの作成手順
- Webページに出力するHTMLテンプレート(CGISUB.htm)を作成します。
- 1.で作成したファイルを呼び出すCOBOL主プログラム(CGIMAIN.cbl)を作成します。
COBOL主プログラムからは,CBLFILLTEMPLATEサービスルーチンを使用してHTMLテンプレートを呼び出すようにします。このとき,CBLFILLTEMPLATEサービスルーチンに指定するHTMLテンプレートの名称には,1.のファイル名から拡張子を除いた名称(CGISUB)を指定してください。
- COBOL主プログラムだけをコンパイルし,CGIプログラム(CGIMAIN.exe)を生成します。
- CGIプログラムとHTMLテンプレートを使って,HTMLテンプレートが正しくWebページに出力されるかテストします。
正しく出力されるまで,HTMLテンプレートを修正しながらテストを繰り返します。
- HTMLトランスレータを使用して,HTMLテンプレートからCOBOL副プログラムのソースファイル(CGISUB.cbl)を生成します。次に指定例を示します。
cblhtmtr CGISUB.htm
- COBOL副プログラムのソースファイルをコンパイルし,DLLファイル(CGISUB.dll)を生成します。
CGIプログラムは,実行時にDLLファイルを呼び出します。
図27-3 ダイナミック型CGIプログラムの作成手順
All Rights Reserved. Copyright (C) 2013, 2016, Hitachi, Ltd.
All Rights Reserved. Copyright (C) 2002, 2011, Microsoft Corporation.