Google
オフコン練習帳内を検索
インターネット全体を検索

NECオフコン関連
オフコン一般
情報

トップ  >  メッセージファイルに登録したメッセージをCOBOLで使用する方法

メッセージファイルに登録したメッセージをCOBOLで使用する方法

メッセージファイル(SYS@MSG)に登録したメッセージをCOBOLプログラムから使用する方法を説明します。

メッセージファイルにメッセージを登録する方法は、ここで説明しています。ここでは既にメッセージファイルにキー値”A000”にメッセージが登録されているものとして説明します。


以下のプログラムは、メッセージファイルのキー値”A000”のメッセージを表示するサンプルプログラムです。

21行目と26行目でメッセージファイルを利用してメッセージの画面表示を行っています。

8桁の英数字項目のデータ‘MSG=xxxx’を1つの出力項目とします。xxxxの部分は、メッセージファイルに登録したメッセージのキー値を記述します。

000010 IDENTIFICATION DIVISION.                                           
000020**************************************                              
000030**   SYS@MSG TEST PROGRAM           **                              
000040**                                  **                              
000050**     あらかじめMSG=A000を         **                              
000060**       SYS@MSGに設定しておく      **                              
000070**************************************                              
000080 PROGRAM-ID. MSGOUT.                                                
000090**                                                                  
000100 ENVIRONMENT   DIVISION.                                            
000110**                                                                  
000120 DATA DIVISION.                                                     
000130 WORKING-STORAGE SECTION.                                           
000140 SCREEN SECTION.                                                    
000150 SD  GAMEN                                                          
000160      END STATUS IS ENDSTS.                                         
000170**   メッセージを設定                                               
000180**      MSG=の次に出力したいメッセージのキーを指定(合計8文字)    
000190 01  TEST1-DSP.                                                     
000200     05  LINE 10.                                                   
000210     10 COLUMN 8 PIC X(08) VALUE "MSG=A000".                        
000220*****************  命令部  **********************                   
000230 PROCEDURE DIVISION.                                                
000240 MPRG.                                                              
000250**   ここでメッセージを画面出力する                                 
000260         DISPLAY TEST1-DSP.                                         
000270      STOP RUN.                                                     


下の画面が実際に実行してみたところです。
メッセージを登録する時に「表示後にリセットキー入力待ちになる」ように指定したので、リセットキー入力待ちになっています。メッセージ表示後の動きはある程度指定できます。選択できる「メッセージ表示後の動き」にぴったりのものがあればよいのですが、もし無い場合はちょっと使いづらいかもしれません。




ちなみに、SYS@MSG上に指定のキーがなかった場合は、下の画面のようなエラーメッセージが表示されます。
文章の最後の「C1F0F0F0」はキー値を表し、キャラクタでは「A000」となります。