ページの先頭行へ戻る
NetCOBOL V11.0 PowerCOBOL ユーザーズガイド
FUJITSU Software

E.15 共通内部プログラムにSQL文のカーソル宣言を記述したらエラーになった

トラブルの内容

共通内部プログラムを新規作成し、その中でSQL文のカーソル宣言をしました。別の共通内部プログラムやイベント手続き中で、宣言したカーソルを使用すると、翻訳時にエラーになってしまいました。

対処方法

カーソル宣言はPROCEDUREに記述してください

SQL文のカーソル宣言は、翻訳する外部プログラム中の内部プログラムの先頭に記述されている必要があります。PowerCOBOLでは共通内部プログラムを新規作成した場合、それらの内部プログラムが外部プログラム中のどの位置に生成されるか決まっていません。したがって、順番を意識しなければならない手続きを記述する場合は、フォームのPROCEDUREに内部プログラムを記述してください。

PROCEDUREに記述された内部プログラムは、外部プログラムの先頭の位置に生成されます。PROCEDUREに共通内部プログラムを記述する場合、各プログラムには見出し部およびプログラム終わり見出しが必要です。また、COBOL85言語仕様の場合、プログラム名段落には、COMMON属性を付けてください。