メッセージ管理
- 1 インボーキング機能
-
メッセージインボーキングとも呼ばれます。
通常アプリケーションはRUNコマンドやJS、メニューから起動します。
インボーキング機能を使用すると、ネットワークからの指示でアプリケーションを起動することができます。
インボーキングで起動したアプリケーションは画面切離モードで動作します。画面に何かを表示した場合は画面接続するまでアプリケーションの動作が止まります。したがって原則的にインボーキングで起動するアプリケーションは何かを画面表示させるようなことはできません。
オフコンAからオフコンBに対して回線接続が行われると、あらかじめ設定されていたアプリケーションが自動的に起動されます。起動するアプリケーションは通常、何かしらの情報をネットワークから受信して、その情報を加工するようなアプリケーションです。
- 2 オンラインアプリケーションの起動方法
-
オンラインアプリケーションの起動方法は2種類あります。
1つは、普通にRUNコマンドやJS、メニューから起動する方法です。もう1つは、インボーキングによって起動する方法です。
インボーキング機能の利点は、遠隔地から自動でアプリケーションを起動することが可能ということです。通信先のオフコン側が無人でも処理を行うことができます。欠点は、回線を通してアプリケーションを起動するので、応答に若干時間がかかることです。
- 3 メッセージ管理の動作概要
-
交換回線接続の場合は、手動発信着信と自動発信着信の2つの方法があります。手動発信着信で回線を接続する場合のダイヤル操作は、アプリケーションがENABLE命令を実行した後に行います。(そのようにプログラミングする。)
アプリケーションから相手端末との間でデータ送受信を行うには、両者の間にセッションと呼ばれる論理的通信路を設定する必要があります。セッションに対して、送信待ち行列と受信待ち行列が割り当てられます。
アプリケーションからデータの送信要求を行うと、送信要求を行ったセッションに紐づいた送信待ち行列にデータに格納されます。送信待ち行列に格納されたデータは、メッセージ管理の送信制御モジュール(送受信制御モジュール)によって相手先に送信されます。
メッセージ管理の受信制御モジュール(送受信制御モジュール)がデータの受信を行うと、セッションに紐づいた受信待ち行列にデータを格納します。受信待ち行列にデータが格納されるとそのセッションに紐づいているインボーキングのジョブ(アプリケーション)があれば、そのジョブ(アプリケーション)を起動します。アプリケーションがデータの受信要求を行うと、受信待ち行列からデータを渡します。受信待ち行列はアプリケーションと1対1対応になるように設定されています。
このように通信を行うには、通信を行う相手先の情報、自分と相手をつなぐ物理的な回線の情報、論理的なチャネルの情報、論理的な相手先の情報、待ち行列の情報、インボーキング機能を使用するならば起動するジョブ(アプリケーション)の名前が必要となります。
- 4 通信環境設定
-
通信を行うには、あらかじめ環境設定を行わなければなりません。上で説明したように通信を行う相手先の情報やどのような通信回線や伝送制御手順を使うのかといった情報、といった情報を設定する必要があります。
メッセージ管理では、これらの情報はSGL(システム生成言語)という言語を使ってプログラミングするように記述していきます。記述したSGLはパラメータとして保存します。(まぎらわしいですが、SGLは言語を意味することもあるし、SGLを使用して記述したパラメータのことを意味することもあります。)
記述したパラメータはシステム生成(SG)によってシステムに登録します。正しく登録されれば、アプリケーションなどを使って通信を行うことができるようになります。
大まかには以下のような流れになります。
1.通信ボードなどのハードウェアをオフコンに実装します。
2.#TEDITなどのテキストエディタを使って、SGLを記述する。
3.記述したSGLをパラメータライブラリに保存する
4.システム生成で、システムにパラメータを登録する
5.アプリケーションで通信を行います
パラメータはテキストエディタで簡単にみることができます。なので、そのオフコンでどのような通信環境設定になっているかは、パラメータを見ればすぐわかります。
- 5 SGLパラメータの名前
-
SGLをパラメータとしてパラメータライブラリに保存すると書きましたが、保存するときにパラメータに名前を付けます。そしてSGLのパラメータに付ける名前には少し決まりがあります。
パラメータ名は、6文字の英数字で付けます。そのうち最初の5文字は任意の文字列で自由に付けることができます。ABCDEでもいいし、SGPARでもいいし、MMPARでもいいです。
最後の1文字はメッセージ管理の種類によって決まっています。メッセージ管理3のSGLの場合は、最後の1文字は「M」にします。メッセージ管理Sの場合は、最後の1文字は「V」にします。なおA−VX/NETのSGLの場合は、最後の1文字は「N」になります。
メッセージ管理3のSGLパラメータを作ったときは、最初の5文字を「AAAAA」にしたら、6文字目は「M」にして、「AAAAAM」がパラメータ名になります。
逆に言うと、パラメータがたくさんあって、どれがどれなのか分からない場合は、パラメータ名の最後の1文字を見れば、少なくともメッセージ管理3のSGLなのかメッセージ管理SのSGLなのか、分けることはできます。
システム生成時に登録するパラメータ名を指定する場合は、最初の5文字だけを入力します。
- 6 SGL
-
言語としてのSGLについて少しだけ説明します。言語体系を全部説明すると非常に大量になるので、概要のみ説明します。
メッセージ管理3
ステートメント 概 要 /MM メッセージ管理の資源を定義 /LINE 通信回線を定義。通信回線ごとに記述 /VLINE ロジカルチャネルを定義。/LINE文に対して必ず1個以上記述 /STATION 相手局または相手ノードを定義。/VLINE文に対して必ず1個以上記述 /VTERMINAL 論理端末または相手LUを定義。/STATIONに対して必ず1個以上記述 /QUEUE 受信待ち行列または自LUを定義 /PROGRAM インボーキングにより起動するジョブを定義 メッセージ管理S
ステートメント 概 要 /MMV メッセージ管理の資源を定義 /PROCESSOR メッセージ管理Sの資源を定義 /LINE 通信回線を定義。通信回線ごとに記述 /VLINE ロジカルチャネルを定義。/LINE文に対して必ず1個以上記述 /STATION 相手局を定義。/VLINE文に対して必ず1個以上記述 /VTERMINAL 論理端末を定義。/STATIONに対して必ず1個以上記述 /QUEUE 受信待ち行列を定義 SGLで通信環境設定を記述した例です。これはメッセージ管理3でA-VX/NET用の通信環境設定を行っています。
/MM SNN=EXPRES,SSC=04,ENP=NODE00,DBF=(650,70); /LINE LNM=B46,CCF=(B4670,B4670),LN0=00; /VLINE SST=C,MBS=650,SCD=EK,ACD=J8,INT=NO,EPM=NORMAL,EVP=VLIN00; /STATION DNN=HOST,CAL=YES,TEL=00,ESP=STAT07; /VTERMINAL VTR=L0TVEF00,DLN=35,SNS=0521,SFS=8192; /VTERMINAL VTR=L0TVEM00,DLN=33,SNS=0521,SFS=8192; /VTERMINAL VTR=RFAR,DLN=32,SNS=0521,SFS4608; /QUEUE QUE=QVEM00,INV=NO,SLN=33,SLT=C; /QUEUE QUE=RFAQ,INV=NO,SLN=32,SLT=C;
メッセージ管理3でのSGL例その2。
/MM SNN=MM3,SSC=10,DBF=(1000,50); /LINE LNM=INET,CCF=(AHS2X,HDLCF),LN0=A0,SYN=SFY,CMD=FDX LTP=PS,WIR=4,PCT=62,VCC=(001,S),TCK=Y,STL=00 ; /VLINE SST=C,MBS=1000,NDF=Y,SCD=EK,ACD=J8,LSP=48000,INT=N,SDL=N; /STATION DNN=HOST,TEL=00,CAL=Y,ESP=STAT28; /VTERMINAL VTR=RFAT001,DLN=10,SNS=256,SFS=8192; /QUEUE QUE=RFAQ,INV=NO,SLN=10,SLT=S;
下はメッセージ管理Sでの例です。
/MMV SNN=PA-TCP; /PROCESSOR ION=0,MSH=10; /LINE LNM=TCPLAN; /STATION DNN=STN01,RIA=(0.0.0.0); /VTERMINAL VTR=VTERM01,DLN=1002,KAF=1; /QUEUE QUE=QUEUE01,SLT=C,RTM=3000
上の例はそれぞれ1回線の場合ですが、複数回線あればこれがさらに何十行にも渡って記述されることになります。
- 7 アプリケーション
-
環境設定が終われば、あとはアプリケーションを実行することになります。
ftpやファイル転送プログラム、A−VX/NETといった既製のアプリケーションやユーティリティなどを実行してもいいですし、COBOLでプログラミングしてアプリケーションを作成して実行してもいいです。
- 8 ネットワークの管理
-
A−VXのネットワークの管理のいくつかは拡張システムコマンドで行うことができます。
拡張システムコマンドを実行すると下のような画面になります。この画面は設定状態によって変わります。例えば仮想ワークステーションを使用していなければ、その項目は表示されません。
状態表示を行ったりできます。
- 9 現在システムに登録されているSGLを知る方法
-
現在システムに登録されているSGLを知る方法は次の通りです。
#SGLSTを起動します。
出力装置名を指定します。画面に出すなら「STN」、印刷なら「PRNxxx」を選びます。
印刷を選んだときは、プリンタで紙に印刷されます。
画面を選択したときは、何ページかリセットキー(ESCキー)で進めていくと、下の画面のようにMM3とかMM5とか表示されます。
下の画面の場合は、ハードディスク:MSD000のパラメータライブラリ:SYS@SGLのパラメータ:SGAAAVの情報が通信環境設定としてシステムに登録されています。印刷を選んでいる場合は、SGLの内容も印刷されるので、それを見れば通信環境設定がわかります。
もし、パラメータを実際に見たいのならば、SYS@SGLのSGAAAVの内容をテキストエディタで見れば、通信環境設定がわかります。
- 10 ネット構築支援ソフトシリーズ
-
ネット構築支援ソフトシリーズというWindows上で動くソフトウェアがあります。メッセージ管理3のSGの作成を補助する為のツールです。
最初はインストールされていません。A−VXのフォルダの下に「NETSG」という名前のフォルダがあるので、そこに入っている「setup.exe」を実行してインストールします。
そうすると、スタートメニューにNETSGというフォルダができます。これがネット構築支援ソフトシリーズの入っているフォルダです。
- 10.1 NETSG/C(通信SG対向チェッカ)
-
メッセージ管理3のSGLが正しいかどうかをチェックするためのツールです。
メッセージ管理3のジシステムと相手システムの通信SG(SGL)から論理的整合性と対向SGの正当性をチェックして、ハードウェア設定、手順の確認を疑似的に行うことができます。
送受信両方のオフコンの通信SGを使って対向チェックもできるし、片方のオフコンの通信SGだけで構文や回線種別/手順などの組み合わせのチェックを行うこともできます。
- 10.2 NETSG/G(通信SGジェネレータ)
-
メッセージ管理3の通信SG(SGL)を作成するためのツールです。
従来は、A−VXのテキストエディタ(#TEDIT)などで作成していたSGLを通信手順、回線種別などをメニューから選択するような操作で作成することができます。
新規通信SGの作成もできるし、既存の通信SGを読み込んで修正/更新を行うこともできます。
- 10.3 NETSG/FCNV(通信SG変換)
-
WindowsのテキストファイルとA−VXのパラメータを相互変換します。
NETSG/GはWindows上で動くので、出力されるSGLはWindowsのテキストファイルです。SGで登録するSGLはA−VX上のパラメータなので、変換する必要があります。NETSG/Cでチェックする為にはA−VX上のパラメータをWindowsのテキストファイルにしなければなりません。
このため、A−VXのSGLのパラメータをWindowsのテキストファイルに変換したり、WindowsのテキストファイルをA−VXのパラメータに変換したりできます。