画面・帳票サポートシステム XMAP3 プログラミングガイド 画面編
スタンドアロン環境,およびC/Sシステム環境下では,次に示す方法でAPからPCに対して,画面の入出力ができます。
日立COBOLのSEND文,RECEIVE文,およびTRANSCEIVE文によって画面の入出力をする方法について指定例を使用して説明します。
詳細については,マニュアル「COBOL2002 言語 拡張仕様編」またはマニュアル「COBOL85 言語」を参照してください。
画面の入出力に必要な情報をCOMMUNICATION SECTION中に指定します。
ディスプレイに画面を表示します。画面表示時に変更したいデータは,出力論理マップへ格納したあとに実行します。
画面の送信から受信までの間にAPでほかの処理をする場合などに使用します。この場合,表示画面への入力操作を抑止するために,ドローの定義で,画面属性の「キーボードのロック状態を解除する」のチェックを外した画面を作成してください。
この画面を最初にSEND文で表示し,AP側の処理が終了して表示画面への入力操作ができるようになったとき,APからウィンドウ属性の「キーボードのロック状態を解除する」の修飾名を指定して,SEND/RECEIVE文(またはTRANSCEIVE文)を発行してください。
なお,二次ウィンドウ,または二次ウィンドウがある一次ウィンドウの場合の送受信には,SEND文を使用せずにTRANSCEIVE文を使用してください。
ディスプレイ端末からの画面入力を行います。画面入力の結果は,入力論理マップに格納されます。SEND文と対で指定してください。
ディスプレイ端末での画面の入出力をまとめて行います。SEND文とRECEIVE文の機能を持ちます。通常の画面の送受信には,TRANSCEIVE文を使用するようにしてください。
AP中の最初のSEND文または,TRANSCEIVE文が発行されたとき,ディスプレイをオープンし,プログラム終了までディスプレイを解放(クローズ)しません。
画面表示をしていないときは,ディスプレイ端末を解放し,ほかのプログラムを表示できるようにしたい場合はDISABLE文を使用します。
「例」のようにコーディングすると,次のオープン命令が発行された場合,ディスプレイ上に表示されているウィンドウは消え,新たにウィンドウが表示されます。
通信記述項のMAPPING MODE句には,画面を表示するときのオプションとしてディスプレイ用に次に示すものが指定できます。なお,指定値(「マージ」「論理マップだけ」「物理マップだけ」)の詳細については「1.5.3(1) マッピングオプション」を参照してください。
目的 | MAPPING MODE句の指定値 |
---|---|
2回目または1回目でユーザデータを表示したいとき | △,または0〈マージ〉 |
同じ画面に対して一部上書をしたいとき | 2〈論理マップだけ〉 |
ユーザデータなしで1回目(初期)表示用 | 3〈物理マップだけ〉 |
STATUS KEY句のリターンコードの意味を次に示します。
コード | 意味 | 状態/要因/対処方法 |
---|---|---|
'00000' | 正常終了 | データの入出力が正常に終了した。 |
'00008' | 論理エラー | COBOLのAPに誤りがある。 APに誤りがないかを調べて修正する。 |
'10004' '10008' |
マッピングエラー | 画面データのマッピング中にエラーが発生した。STATUS KEY句の指定がない場合,実行を中止する。 STATUS KEY句の指定がある場合,処理を続行する。画面入出力時のリターンコードの内容を調査して対処する必要がある※。 |
'20008' | 入出力エラー | 画面データの入出力中にエラーが発生した。STATUS KEY句の指定がない場合,実行を中止する。 STATUS KEY句の指定がある場合,処理を続行する。画面入出力時のリターンコードの内容を調査して対処する必要がある※。 |
なお,これらのリターンコードは日立COBOLのコンソール画面に表示されます。
All Rights Reserved. Copyright (C) 2001, 2006, Hitachi, Ltd.