OpenTP1マッピングサービス機能の詳細
マッピングサービス機能には,次の三つがあります。
-
予約項目
-
マッピングサービスプロセス
-
マッピングサービスコマンド
この節では,予約項目とマッピングプロセスについて説明します。
マッピングサービスコマンドの詳細については,この章の「マッピングサービスコマンド」で説明します。
- 〈このページの構成〉
予約項目
画面・帳票定義で予約項目を指定した場合,マッピングサービスで情報を設定するのでUAPで値を設定する必要はありません。
マッピングサービス機能で提供する予約項目を次の表に示します。
予約項目 |
項目名称 |
フォーマット |
備考 |
---|---|---|---|
日付1※ |
DATE1 |
yy-mm-dd |
yy:西暦年の下2けた mm:月 dd:日 ddd:通算日 |
日付2※ |
DATE2 |
yy/mm/dd |
|
日付3※ |
DATE3 |
dd/mm/yy |
|
日付4※ |
DATE4 |
mm/dd/yy |
|
日付5※ |
DATE5 |
yy・ddd |
|
時刻※ |
TIME |
hh:mm:ss |
時:分:秒 |
論理端末名称 |
VTNAME |
半角8文字 |
− |
再送ID |
RESEND |
半角8文字 |
再送メッセージ以外は表示されません。 |
出力通番 |
VTSEQ |
mnnnnn |
m:メッセージ種別
n:出力通番 |
出力通番1 |
VTSEQ1 |
mnnnn |
マッピングサービスプロセス
マルチスレッド環境では,マップのローディングが要求されると,マップをローディングしている間,要求元スレッドのプロセス全体がブロックされます。プロセス全体がブロックされることを避けるため,マップロード用のプロセスを用意します。これをマッピングサービスプロセスと呼びます。
マッピングサービスプロセスの起動,終了,およびマッピングサービスプロセスの機能について次に示します。
(1) マッピングサービスプロセスの起動
OpenTP1システムが起動されると,自動的にマッピングサービスプロセスが起動されます。あらかじめ,MCFマネジャ共通定義(mcfmcomn -m)のmapsvnameオペランドで,_mpで始まるマッピングサービス定義ファイル名を指定しておきます。
マッピングサービスプロセスは,マッピングサービス定義※1,およびマッピングサービス属性定義※2の定義に従って,マッピングサービスを開始します。
- 注※1
-
ファイル名=$DCCONFPATH/マッピングサービス名
マッピングサービス定義については,この章の「OpenTP1マッピングサービスに関する定義」を参照してください。
- 注※2
-
ファイル名=$DCCONFPATH/MAPSattr/dcmap.def(ユーザで任意に指定できます)
マッピングサービス属性定義については,この章の「OpenTP1マッピングサービスに関する定義」を参照してください。
(a) 常駐マップの管理
常駐マップとは,マッピングサービスの開始から終了まで,常にメモリ上にローディングされている物理マップのことです。常駐マップは,マッピングサービス属性定義のMAPNAMEオペランドで指定します。マッピングサービス開始時,OpenTP1システムは,すべての常駐マップをローディングします。
マッピングサービスは,物理マップを標準読み込みパスから常駐マップローディング用バッファにローディングして管理します。頻繁に使用するマップをバッファに常駐させることで,入出力に掛かる時間を短縮できます。
(b) 非常駐マップの管理
マッピングサービス属性定義のMAPNAMEオペランドで指定されていない,常駐マップ以外のマップを非常駐マップと呼びます。メッセージの送受信時,常駐マップローディングバッファに必要な物理マップがない場合は,非常駐マップをローディングします。非常駐マップはLRU管理マップローディング用バッファに格納されます。
マッピングサービスは,まず,必要な物理マップがLRU管理マップローディング用バッファ内にある場合には,マップのローディングはしないで,そのマップを使用してマッピング処理をします。
LRU管理マップローディング用バッファ内に必要な物理マップがない場合には,LRU管理マップローディング用バッファにマップをローディングします。新しい非常駐マップをローディングするため,ほかの非常駐マップを削除する必要がある場合,最も古い時点に使用されたマップを削除します。最も古い時点に使用されたマップから削除していく物理マップの管理をマップLRU管理と呼びます。この場合,LRU管理されるマップの数は,最大でマッピングサービス属性定義のMAPCNTオペランドで指定した数になります。
(c) 物理マップ読み込みパス
マッピングサービスは,通常,マッピングサービス属性定義のMAPPATHオペランドで指定した標準用物理マップ読み込みパスから物理マップをローディングします。マッピングサービスは,標準用物理マップ読み込みパスからの非常駐マップのローディングに失敗すると,交代用の読み込みパスから物理マップをローディングします。マッピングサービス属性定義のALTPATHオペランドで,交代用物理マップ読み込みパス名を指定しておいてください。なお,交代用物理マップ読み込みパスには標準用物理マップ読み込みパスと同じ物理マップを用意しておいてください。
(d) マップファイルの作成
物理マップを格納するファイルをマップファイルと呼びます。
マップファイルはPCでXMAP3のドロー,またはマップ生成機能でターゲットに合った物理マップと論理マップを作成して使用します。
UNIXの場合は,作成した物理マップをUNIX環境に転送します。UNIX環境にファイル転送する際には,転送モードに注意してください。また,UNIX環境に物理マップを転送後,UNIX版XMAP3 Server Runtimeが提供するcmapcpコマンドを実行してください。Windowsの場合は,作成した物理マップをそのまま使用します。
詳細については,マニュアル「XMAP3 Version 5 画面・帳票サポートシステム XMAP3 開発ガイド」,またはマニュアル「XMAP3 Version 5 画面・帳票サポートシステム XMAP3 プログラミングガイド」を参照してください。