第5章 PowerCOBOLを使いこなそう
5.5 実行可能プログラム作成時および実行時の便利な機能
5.5.1 デフォルトモジュールを設定する
い。
4.5.4 エラーがあったら
翻訳やリンクの結果は、ビルドビューに表示されます。たとえば、表コントロール(TBL-PURCHASE)のReturnイベント手続きにエラーが あった場合、以下のように表示されます。
エラーを修正するには、ビルドビューに表示されている診断メッセージのどれかをダブルクリックしてください。この操作により、エラー の対象となったイベントが手続き編集ウィンドウに表示され、該当する行にカレットが移動します。ここで、エラーの原因となった手続き を修正してください。手続きを修正したら、再度ビルドしてください。
ポイント
上記の例は、MOVE文の送り先の直前にTOが抜けているために、エラーが発生しています。
4.5.5 実行する
できあがったアプリケーションを実行します。
サンプルプログラムを実行するには、手続き中で商品コードから商品名および単価を求めるために使用する"商品ファイル
"(PRODUCTS.TBL)が必要です。
"PRODUCTS.TBL"は、サンプルプログラムと同じ"Table"フォルダに格納されています。サンプルプログラムを別のフォルダに作成した 場 合 は 、 コ ピ ー し て お 使 い く だ さ い 。 ま た 、 誤 っ て こ の フ ァ イ ル を 削 除 し て し ま っ た 場 合 は 、 同 じ フ ォ ル ダ に あ る"CreateProductsTable.ppj"をビルド/実行し、ファイルを作成してください。
以下の操作により、アプリケーションを実行することができます。
1. デザインツリーウィンドウのMain[モジュール]を選択します。
2. ポップアップメニューの[実行]コマンドを選択します。
実行が始まりフォームが表示されたら、本章の先頭で述べた機能が実際に動作するか確認してください。
ポイント
以下の方法でも、アプリケーションを実行することができます。
・ プロジェクトウィンドウの[プロジェクト]メニューから[実行]コマンドを選択します。
・ プロジェクトウィンドウのツールバーから、実行用のボタンをクリックします。
注意
サンプルプログラムでは、エラー系の入力チェックを十分に実施していません。実際に運用するアプリケーションを作成する場合には、
エラーチェックを強化する必要があります。たとえば、保存する場合には、以下のようなエラーチェックが必要になります。
・ 顧客名が入力されているか
・ プログラム中で使用しているデータ名と同じ名前
・ 同じモジュール内の他のフォームと同じ名前
・ 同じモジュールに追加された外部ファイルと同じ名前
・ フォーム内のコントロールと同じ名前
・ フォーム内のその他の構成要素(カスタムプロパティなど)と同じ名前
・ フォームのプロパティ名と同じ名前
・ フォームのメソッド名と同じ名前
・ 先頭の文字が"POW-"または"POWER-"で始まる名前
4.7.4 コントロール名
コントロール名(配列化されたコントロールを含む)は、COBOLの利用者語の規則の範囲で命名することができます。COBOLの利用 者語として使用できる名前については、『COBOL 文法書』を参照してください。ただし、以下の名前は使用できません。
・ プログラム中で使用しているデータ名と同じ名前
・ 同じフォーム内の他のコントロールと同じ名前(ただし、配列化されているコントロールは、すべて同じ名前になります)
・ フォーム内のその他の構成要素(カスタムプロパティなど)と同じ名前
・ フォームのプロパティ名と同じ名前
・ フォームのメソッド名と同じ名前
・ 先頭の文字が"POW-"または"POWER-"で始まる名前
4.7.5 フォームのその他の構成要素の名前
フォームのその他の構成要素には、カスタムプロパティ、カスタムメソッド、カスタムイベントがあります。これらの名前は、コントロール名 と同様、COBOLの利用者語の規則の範囲で命名できます。COBOLの利用者語として使用できる名前については、『COBOL 文法 書』を参照してください。ただし、以下の名前は使用することができません。
・ プログラム中で使用しているデータ名と同じ名前
・ 同じフォーム内の他の構成要素(コントロールなど)と同じ名前
・ フォームのプロパティ名と同じ名前
・ フォームのメソッド名と同じ名前
・ 先頭の文字が"POW-"または"POWER-"で始まる名前
本節では、プロジェクトを編集する場合に活用できる、便利な機能について説明します。
5.1.1 外部ファイルを使う
PowerCOBOLのモジュールには、フォームの他に、実行可能プログラムを作成するためのファイルを追加できます。これらのファイル
は、PowerCOBOL以外の環境で作成したファイルであるため、外部ファイルと呼びます。
外部ファイルとは
外部ファイルとは、以下のファイルです。外部ファイルとしてモジュールに追加することにより、ビルド時に翻訳やリンクの対象となりま す。
COBOLファイル
COBOL手続きが記述されているCOBOLのソースファイルです。拡張子は、COB、CBLまたはCOBOLです。ただし、COBOLファ イルのプログラム形式は、行番号付きの可変長形式にしてください。ビルド時には、翻訳の対象となります。
オブジェクトファイル
COBOLコンパイラによって作成されたオブジェクトファイルです。拡張子は、OBJです。ビルド時には、リンクの対象となります。
ライブラリファイル
リンカによって作成されたライブラリファイルです。拡張子はLIBです。ビルド時には、リンクの対象となります。
リソースファイル
以下の各形式で作成されたイメージ用のファイルです。ビルド時には、リンクの対象となります。
リソースファイルは、フォームやコントロールでリソースを使用する場合に必要です。ビットマップやアイコンなどのイメージファイルを 追加したときにデザインツリーウィンドウに表示される名前がリソース名になります(プロパティリストウィンドウのNameと対応していま す)。イメージをリソースファイルとして追加することで、イメージは実行可能プログラムに組み込まれます。したがって、実行可能プ ログラムのサイズは、その分大きくなります。しかし、実行時には、ファイルの有無やパスの設定などを気にすることなく、利用できま す。
ファイルの種類 拡張子
ビットマップファイル BMP
アイコンファイル ICO
ポインタファイル CUR
アニメーションポインタファイル ANI
イメージリストファイル BMP
ポイント
イメージリストとは、1つのビットマップの中に、等幅のイメージを横に複数並べたものです。各イメージの幅は、イメージリストのプロ パティで設定できます。イメージリストは、ツールバーコントロールやツリービューコントロールなどで、複数のビットマップを利用する ような場合に必要となります。使用例については、「8.7 ツールバーを使ったアプリケーションを作成する」を参照してください。
注意
イメージリストとして利用するファイルは、16色ビットマップとして作成してください。16色を超えている場合、実行時に自動的に減色
(マッピング)されます。
外部ファイルを追加するには
外部ファイルは、以下の手順でモジュールに追加することができます。
1. デザインツリーウィンドウで、外部ファイルを追加するモジュールを選択します。
2. ポップアップメニューの[ファイルの挿入]コマンドを選択します。
3. 表示された[ファイルの挿入]ダイアログボックスで、追加する外部ファイルを選択します。
COBOLファイルを編集する
モジュールに追加したCOBOLファイルは、PowerCOBOLの手続き編集ウィンドウを使って編集できます。手続き編集ウィンドウは、
COBOLファイルを選択し、ポップアップメニューの[編集]コマンドで表示できます。
リソースファイルの使用例
リソースファイルは、以下のように利用することができます。
フォームのアイコンの設定例
PowerCOBOLが提供しているサンプルプログラム"Icon\Icon.ppj"を参照してください。このサンプルプログラムでは、以下の操作に より、フォームのアイコンを指定しています。
1. 3つのアイコンファイルをそれぞれ"bomb"、"clock"、"color"というリソース名で、モジュールに追加します。
2. フォームのプロパティを開き、リソースタブを選択します。
3. [プロパティ名]から、"IconName"を選択します。
4. [リソース名]から、モジュールに追加したアイコンファイルのリソース名を選択します。
この指定により、このアプリケーションを起動したときのフォームのアイコンは、"bomb"という名前で追加したアイコンが使用されま す。
また、オプションボタンコントロールのClickイベントで、フォームのIconNameプロパティに、アイコンファイルのリソース名を転記する ことにより、実行時にアイコンを変更することができるようになっています。
注意
COBOLの実行環境情報によるアイコンリソースの指定(@IconDLL、@IconName)で、フォームのアイコンを設定することはできま せん。
アニメーションコントロールのイメージの設定例
PowerCOBOLが提供しているサンプルプログラム"Animation\Animation.ppj"を参照してください。このサンプルプログラムでは、以 下の操作により、アニメーションで使用するイメージを指定しています。
1. モジュールに、8つのビットマップファイルをそれぞれ"Bitmap1"~"Bitmap8"というリソース名で追加します。
2. アニメーションコントロールのプロパティを開きます。
3. スタイル中の[リソース]をチェック状態にします。
4. [フレームリスト]の右側にある挿入ボタン(+ボタン)をクリックします。
5. [フレームリスト]中に、ビットマップファイルのリソース名"Bitmap1"を記述します。
6. 同様の操作により、"Bitmap2"~"Bitmap8"を[フレームリスト]に追加します。