画面・帳票サポートシステム XMAP3 開発・実行ガイド
5.5.4 OLTPサーバ構成の設定例
(1) セットアップ
通信環境の定義としてXMAP3とOpenTP1で設定が必要になります。XMAP3ではC/Sセットアップで設定します。OpenTP1ではTP1/NET/XMAP3で設定します。C/Sセットアップでの設定については,「9.3.4 OpenTP1と連携する場合の環境設定の関連性」,マニュアル「OpenTP1 プロトコル TP1/NET/XMAP3編」を参照してください。
XMAP3クライアントサーバ機能を使用して,サーバPC上の画面表示・帳票印刷APからクライアントPC上に画面表示・帳票印刷するプログラムです。
クライアントPCでXMAP3クライアントを起動すると,連携するサーバPC上のAP(またはコマンド)によって,OpenTP1のコネクションが確立します。
コネクション確立後,クライアントPCの画面のトランザクションコードとそれに対応したサーバAPとの間でSEND文,RECEIVE文を使用して,画面表示・帳票印刷します。
(3) ソフトウェア構成
サーバ
/クライアント |
使用するソフトウェア |
XMAP3 |
コンパイラ※1 |
DB※2 |
OLTP |
サーバ |
XMAP3/NET(-RTS)
または
XMAP3/Enterprise Edition(-RTS) |
日立COBOL
(-RTS),
VC++,またはVC++.NET |
HiRDB
※3
または
ISAM※4 |
TP1/Server Base
TP1/Message Control
TP1/NET/Library
TP1/NET/XMAP3 |
クライアント |
XMAP3/NET(-RTS)
または
XMAP3/Enterprise Edition(-RTS) |
- |
- |
- |
- (凡例)
- -:なし。
- 注
- -RTSは,Run Time Systemを示します。
- 注※1
- 使用するコンパイラが必要になります。
- 注※2
- DB連携しない業務では,DBに関するソフトウェアは不要です。
- 注※3
- HiRDBのほかに,SQL ServerやORACLEなども使用できます。
- 注※4
- ISAMは,日立COBOLに標準添付されています。
(4) OLTPサーバ構成を使用したサンプルプログラム
OLTPサーバ構成を使用するサンプルプログラムを日立COBOL,およびC言語で提供しています。日立COBOLで作成されたサンプルプログラムは,SEND文およびRECEIVE文のインタフェースを使用して,画面表示および帳票印刷を実行します。
(a) サンプルプログラムの格納場所
サンプルプログラムは次に示すフォルダに格納されています。
- 日立COBOLの場合
- 格納場所
XMAP3インストールフォルダ\SAMPLES\COBOL
- 格納ファイル
MCF1G.CBL,MCF2G.CBL,MCF3G.CBL,MCF4G.CBL,MCF5G.CBL
MCF1G.IMP,MCF2G.IMP,MCF3G.IMP,MCF4G.IMP,MCF5G.IMP
- C言語の場合
- 格納場所
XMAP3インストールフォルダ\SAMPLES\C
- 格納ファイル
MCF1G.C,MCF2G.C,MCF3G.C,MCF4G.C,MCF5G.C
MCF1G.IMP,MCF2G.IMP,MCF3G.IMP,MCF4G.IMP,MCF5G.IMP
(b) サンプルプログラムAPの流れ
サンプルプログラムのAPの処理の流れを,次に示します。なお,サンプルプログラムの詳細については,マニュアル「XMAP3 プログラミングガイド 画面編」を参照してください。
- 初期画面を表示
XMAP3クライアントを起動し,初期画面を表示します。
- メニュー画面を表示
メニュー画面を表示します。
- 各業務処理
ユーザがメニュー画面で選択した業務に使用する画面を表示します。
- 業務の終了
[業務終了]ボタンをクリックすると,初期画面に戻ります。
- 終了
XMAP3クライアントを停止し,終了します。
(c) サンプルを使用するための準備
サンプルを使用するための設定について説明します。なお,設定の詳細については,「9.3.4 OpenTP1と連携する場合の環境設定の関連性」を参照してください。
- TP1/NET/XMAP3の設定
- 論理端末名およびTP1コネクション名を設定します。論理端末名には,画面の場合「XPNLE101」,帳票の場合「XPNLE201」を指定します。TP1コネクション名には,画面の場合「XPNCN1」,帳票の場合「XPNCN2」を指定します。
- データ有無コードに(1F)16を指定します。データ有無コードについては,マニュアル「XMAP3 プログラミングガイド 画面編」を参照してください。
- 論理端末名「XPNLE101」の初期画面として,「MCF1G」を指定します。
- トランザクションコードとAPの関係を定義します。
- XMAP3の設定
- サーバ側の実行ファイルを起動するための設定をします。[C/Sセットアップ]ダイアログで[C/S構成]タブのサービス名に,画面の場合「xppDSP01」,帳票の場合「xppPRT01」を指定します。
- オペレータインジケータを設定します。表示・印刷セットアップの[デザイン1]タブの「オペレータインジケータ」に「下に表示」または「上に表示」を設定します。
- 表示・印刷セットアップの[アプリケーション1]タブで,「バージョン間の互換オプション」の「C/Sの場合,アプリケーションサーバのセットアップだけが有効」のチェックをオフにします。
- 実行環境の設定
- 作成した物理マップをOpenTP1に格納します。
- 「XMAP3インストールフォルダ\SAMPLES\GRAPHICS」にある画像ファイルをクライアントPCの「XMAP3インストールフォルダ\USER\GRAPHICS」に格納します。格納するファイルを次に示します。
1等.bmp,2等.bmp,3等.bmp,4等.bmp
(5) AP適用例(応用)
AP適用の応用として,サーバ側のプリンタに帳票を出力する構成例を示します。
(6) TP1/NET/XMAP3連携時の注意
- PC版のOpenTP1と連携する場合,リトルエンディアンのマップを使用してください。OpenTP1の仕様により,ビッグエンディアンのマップは使用できません。
- 同一クライアントPC上で画面業務と帳票業務を運用している場合,画面操作中に[印刷中]ダイアログが表示されていると,オペレータが誤って[キャンセル]ボタンをクリックしてしまうおそれがあります。誤動作防止のため,[印刷中]ダイアログを表示しないように設定してください。[印刷中]ダイアログを表示するかどうかは,[表示・印刷セットアップ]ダイアログの[プリンタ]タブで設定します。
- [印刷中]ダイアログを表示する場合,ダイアログ中に表示される帳票名はマップ名にかかわらず「OpenTP1」となります。
- 画面の表示モードには,「マージ」または「論理マップだけ」が指定できます。「物理マップだけ」は指定できません。詳細については,マニュアル「OpenTP1 プロトコル TP1/NET/XMAP3編」を参照してください。
- APで使用するデータ有無コードは,TP1/NET/XMAP3のマッピングサービス属性定義ファイルで指定します。マッピングサービス属性定義ファイルについては,「9.3.4(4) マッピングサービス属性定義ファイルの設定」,マニュアル「OpenTP1 プロトコル TP1/NET/XMAP3編」を参照してください。
- 入力単位には「画面単位」を指定してください。入力単位については,マニュアル「XMAP3 プログラミングガイド 画面編」を参照してください。
- TP1/NET/XMAP3で「次メッセージ要求キー」として使用しているキーのイベントはアプリケーションには渡りません。「次メッセージ要求キー」には,APで使用していないキーを割り当ててください。
- 二次ウィンドウを表示する場合,オペレータインジケータが設定されていないとTP1/NET/XMAP3のエラーとなります。表示・印刷セットアップのオペレータインジケータに「下に表示」または「上に表示」を必ず指定してください。
- TP1/NET/XMAP3の仕様により,TP1/NET/XMAP3経由で表示した画面の操作では,以下のキーまたはマウス操作を行っても,画面入力結果および通知コードがAPに返りません。
機能名称 |
無効となるキーまたはマウス操作※ |
割込キー |
Break,Ctrl+Pause,Ctrl+Scroll Lock(106/109)(AX)
STOP(PC-9801)
タイトルバーの[×]ボタン
コントロールメニューの「閉じる」メニュー |
無通知コード割り当てキー |
Ctrl+I
Ctrl+U |
- (凡例)
- (106/109):106/109日本語,101/104英語。
- (PC-9801):PC-9801キーボード。
- (AX):AX仕様キーボード。
- 注※
- 通常のキーおよびマウス操作の動作については,マニュアル「XMAP3 プログラミングガイド 画面編」を参照してください。
- 汎用APインタフェースは使用できません。
- 画面表示では,TP1/NET/XMAP3のXMAP3共通定義(mcftxp)や論理端末定義(mcftalcle)での設定が優先されます。XMAP3共通定義および論理端末定義については,マニュアル「OpenTP1 プロトコル TP1/NET/XMAP3編」を参照してください。
- TP1/NET/XMAP3で使用するトランザクションコードを定義する場合,画面定義時に「隠しフィールド」を設定してください。
- COBOL2002を使用するときはコンパイラオプション「-OpenTP1」を,COBOL85を使用するときはコンパイラオプション「-Ot」を必ず指定してください。
All Rights Reserved. Copyright (C) 2001, 2006, Hitachi, Ltd.