OpenTP1 Version 7

分散アプリケーションサーバ

TP1/LiNK 使用の手引

解説・手引・文法・操作書

3000-3-D60-30

目　　次

前書き

変更内容

はじめに

第1編　TP1/LiNKの概要

1.　TP1/LiNKの概要

1.1　TP1/LiNKとは

1.2　TP1/LiNKの特長

1.2.1　アプリケーションでサーバの業務を支援します

1.2.2　エンドユーザコンピューティングを支援します

1.2.3　トランザクションを制御できます

1.2.4　各種のデータベースを選べます

1.2.5　メッセージ送受信機能を使えます

1.2.6　メッセージキューイング機能を使えます

1.2.7　オープンシステム対応の製品と連携できます

1.2.8　監査ログによるシステムの監視ができます

1.3　TP1/LiNKで構築できるシステム

1.3.1　TP1/Client/WまたはTP1/Client/PのOpenTP1クライアント機能を使ったクライアント／サーバシステム

1.3.2　TP1/Client/JのOpenTP1クライアント機能を使ったクライアント／サーバシステム

1.3.3　インターネット／イントラネットを使った通信

1.3.4　OpenTP1（TP1/Server Base）と連携したクライアント／サーバシステム

1.3.5　J2EEで動作するアプリケーションサーバと連携したシステム

1.3.6　.NET Frameworkと連携したシステム

1.3.7　メインフレームと連携した通信

1.4　TP1/LiNKで使用できるアプリケーション

1.4.1　リモートプロシジャコールの概要

1.4.2　アプリケーションプログラムの種類

1.4.3　サーバになるアプリケーションプログラム（SPP）

1.4.4　クライアントのアプリケーションプログラム（SUP，CUP）

1.4.5　アプリケーションプログラムに付ける名称

1.4.6　アプリケーションの実行

第2編　TP1/LiNKの準備

2.　TP1/LiNKのセットアップ

2.1　セットアップの手順

2.1.1　セットアップの準備

2.1.2　TP1/LiNKのセットアップ

2.1.3　リソースマネジャの接続

2.1.4　TP1/LiNKをセットアップし直す方法

2.1.5　アプリケーションの準備

2.1.6　TP1/LiNKの実行環境の確認

2.1.7　TP1/LiNKをWindowsから削除する方法

2.1.8　マルチOpenTP1のセットアップと削除

2.2　TP1/LiNKのフォルダの構成

2.2.1　TP1/LiNKのフォルダの内容

2.2.2　業務で使うフォルダとファイル

2.2.3　バックアップを取得しておくフォルダ

2.3　セットアップしたときの初期値

3.　実行環境の設定（TP1/LiNK）

3.1　TP1/LiNKの実行環境の設定

3.1.1　クライアントサービス環境の設定

3.1.2　RPC詳細の設定

3.1.3　ユーザサービス環境の設定

3.1.4　リアルタイム統計情報サービスの実行環境の設定

3.1.5　リアルタイム統計情報サービスの取得項目定義ファイルの設定

3.1.6　XAリソースサービス環境の設定

3.1.7　ノード自動追加機能の設定

3.2　ユーザサーバの環境設定（SPP）

3.2.1　SPPの実行環境の設定

3.2.2　SPPの詳細設定

3.2.3　サーチパスの設定

3.2.4　自動起動の設定

3.2.5　リソースマネジャ拡張子の設定

3.3　ユーザサーバの環境設定（SUP）

3.3.1　SUPの実行環境の設定

3.3.2　SUPの詳細設定

3.3.3　サーチパスの設定

3.3.4　自動起動の設定

3.3.5　リソースマネジャ拡張子の設定

3.4　RAPサービスの環境設定

3.4.1　RAPサービス環境の設定

3.4.2　RAPサービスの詳細設定

3.4.3　自動起動の設定

4.　実行環境の設定（オプション機能）

4.1　OpenTP1以外のリソースマネジャ連携時の実行環境設定

4.1.1　Microsoft SQL Server連携時の環境設定

4.1.2　HiRDB連携時の環境設定

4.1.3　Oracle連携時の環境設定

4.1.4　OpenTP1以外のリソースマネジャ連携時の注意事項

4.2　マルチホームドホスト形態での実行環境の設定

4.2.1　dcbindht定義コマンド

4.2.2　rpc_netmaskオペランド

4.2.3　注意事項

4.3　クラスタ環境での実行環境の設定

4.3.1　インストール

4.3.2　ステータスファイルの設定

4.3.3　XARファイルの設定

4.3.4　ノードリストファイルの設定

4.3.5　プロセスサービス定義の変更

4.3.6　システム共通定義の変更

4.3.7　クライアント側の定義

4.3.8　MSCSへの設定

4.3.9　TP1/LiNKの起動と停止

4.3.10　構成上の注意事項

4.4　TP1/LiNK拡張機能使用時の実行環境の設定

4.4.1　性能検証用トレース使用時の環境設定

4.4.2　マルチスケジューラ機能使用時の環境設定

4.5　監査ログ機能使用時の設定

4.5.1　監査ログ機能を使用するときの定義の変更

4.5.2　監査ログ機能を使用するときの実行環境の作成

4.5.3　監査イベントの出力情報（Windows版）

4.5.4　推奨する監査ログの取得項目

4.5.5　監査ログ機能を使用するときの注意事項

第3編　TP1/LiNKの運用

5.　TP1/LiNKの運用

5.1　TP1/LiNKの開始

5.1.1　TP1/LiNKの開始形態

5.1.2　TP1/LiNKを開始するには

5.2　TP1/LiNKの終了

5.2.1　TP1/LiNKの終了形態

5.2.2　TP1/LiNKを終了するには

5.3　ユーザサーバの操作

5.3.1　ユーザサーバの開始

5.3.2　ユーザサーバの終了

5.3.3　TP1/LiNK稼働中のユーザサーバの操作

5.4　TP1/LiNKの各種操作

5.4.1　メッセージログのチェック

5.4.2　トレース情報の出力

5.4.3　稼働統計情報の出力

5.4.4　リアルタイム統計情報の出力

5.4.5　トランザクション機能に関する運用

5.4.6　XAリソースサービスに関する運用

5.5　リモートAPI機能の使い方

5.5.1　リモートAPI機能の概要

5.5.2　リモートAPI機能を使うときの準備

5.5.3　RAPサービスの操作

5.5.4　リモートAPI機能を使うときの注意事項

5.6　TP1/LiNKの連続運転に関する運用

5.6.1　リソースの扱い

5.6.2　時刻変更に関する注意

5.7　マルチOpenTP1の運用

5.8　JP1連携時の運用（JP1/Base，JP1/AJS，およびJP1/AJS2 - Scenario Operation）

5.8.1　シナリオテンプレートを利用したシステムの運用

5.8.2　シナリオの登録

5.8.3　スケールアウトの運用

5.8.4　スケールインの運用

5.8.5　ローリングアップデートの運用

5.8.6　サンプルシナリオテンプレートの利用

5.9　JP1連携時の運用（PFM - Agent for OpenTP1）

5.10　TP1/LiNKのサンプル

5.10.1　サンプルのファイル構成

5.10.2　サンプルを使う手順

5.10.3　サンプルのアプリケーションプログラムの仕様

5.10.4　UAPのコンパイルとリンケージ

6.　ウィンドウの操作

6.1　TP1/LiNKコントロール（TP1/LiNKの開始と終了）

6.2　アプリケーション管理（SPP）

6.2.1　サービス単位の閉塞管理

6.3　アプリケーション管理（SUP）

6.4　TP1/LiNKオペレーション

6.4.1　トランザクションの管理

6.4.2　トレース情報の出力

6.4.3　メッセージログの表示

6.4.4　稼働統計情報の管理

6.4.5　XAリソースサービスの管理

6.5　ヘルプの使い方

7.　運用コマンド

TP1/LiNKのコマンド一覧

TP1/LiNKのコマンドの早見表

コマンドの入力方法と入力形式

ntbstart（TP1/LiNKの開始）

dcsvstrt（ユーザサーバの開始）

dcstats（システム統計情報の取得開始，終了）

jnlcopy（稼働統計情報の中間ファイルへの出力）

jnlstts（稼働統計情報の編集出力）

jnlswpfg（稼働統計情報ファイルのスワップ）

dcsetupml（マルチOpenTP1のセットアップと削除）

dcdls（マルチOpenTP1のインストール状態の表示）

dcmakecon（特定のTP1/LiNKにコマンドを入力するためのコマンドプロンプトの作成）

prcpthls（ユーザサーバのサーチパスの表示）

uatdump（UAPトレースの編集出力）

rapkill（rapサーバの限界監視時間の指定と強制停止）

dcauditsetup（監査ログ機能の環境設定）

第4編　TP1/LiNKの障害対策

8.　トラブルが起こったときは

8.1　トラブルの現象とその原因

8.2　トラブルの場合の処置

8.2.1　ユーザサーバのトラブルの場合

8.2.2　ファイルのトラブルの場合

8.2.3　TP1/LiNKのトラブルの場合

8.2.4　リソースマネジャのトラブルの場合

8.2.5　CPUのトラブルの場合

8.3　トラブル時に参照する情報

8.4　エラーメッセージに出力される値について

8.5　ウィルス駆除プログラムの使用について

第5編　TP1/LiNKのメッセージ

9.　メッセージ

9.1　メッセージの形式

9.2　メッセージの詳細

9.3　アボートコードの内容

付録

付録A　TP1/LiNKのアプリケーションプログラミングインタフェース

付録B　シナリオテンプレートの詳細

付録B.1　OpenTP1_AddNode

付録B.2　OpenTP1_ChangeNodeID

付録B.3　OpenTP1_Deploy

付録B.4　OpenTP1_ScenarioAddNode

付録B.5　OpenTP1_Start

付録B.6　OpenTP1_StartUAP

付録B.7　OpenTP1_Stop

付録B.8　OpenTP1_StopUAP

付録B.9　OpenTP1_Undeploy

付録B.10　OpenTP1_UpdateDomain

付録B.11　OpenTP1_ScenarioScaleout

付録C　GUIと定義ファイルの関連

付録D　参照するマニュアルの制限事項

付録D.1　TP1/LiNKでは使えない機能

付録D.2　TP1/Clientの機能のうち，TP1/LiNKでは使えない機能

付録E　TP1/LiNKの環境設定とTP1/Server Baseシステムサービス定義との対応

付録F　共用メモリとファイル容量の見積もり式

付録F.1　共用メモリの見積もり式

付録F.2　ステータスファイル容量の見積もり式

付録F.3　稼働統計情報ファイル容量の見積もり式

付録G　バージョンアップ時の変更点

付録G.1　07-06での変更点

付録G.2　07-02での変更点

付録G.3　07-01での変更点

付録G.4　07-00での変更点

付録H　TP1/LiNK Q&A

付録I　用語解説

索引

[他社商品名称に関する表示]

All Rights Reserved. Copyright (C) 2006, 2013, Hitachi, Ltd.

前書き

■ 対象製品

R-1945B-24　 uCosminexus TP1/LiNK　 07-06（適用OS：Windows Server 2003，Windows XP，Windows Vista，Windows Server 2008，Windows 7，Windows 8，Windows Server 2012）

このプログラムプロダクトのほかにも，このマニュアルをご利用になれる場合があります。詳細は「リリースノート」でご確認ください。

■ 輸出時の注意

本製品を輸出される場合には、外国為替及び外国貿易法の規制並びに米国輸出管理規則など外国の輸出関連法規をご確認の上、必要な手続きをお取りください。
なお、不明な場合は、弊社担当営業にお問い合わせください。

■ 商標類

BSDは，米国Berkeley Software Design, Inc.の商品名称です。
Microsoft Accessは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
MicrosoftおよびExcelは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
MicrosoftおよびMS-DOSは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
MicrosoftおよびSQL Serverは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
MicrosoftおよびVisual Basicは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
MicrosoftおよびVisual C++は，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
MicrosoftおよびVisual Studioは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
MicrosoftおよびWindows Serverは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
Microsoft Windows Socketsは，米国Microsoft Corporationが開発したプログラミングインタフェースの仕様の名称です。
OracleとJavaは，Oracle Corporation 及びその子会社，関連会社の米国及びその他の国における登録商標です。
UNIXは，The Open Groupの米国ならびに他の国における登録商標です。
WebSphereは，米国およびその他の国におけるInternational Business Machines Corporationの商標です。
Win32は，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
Windowsは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
Windows Vistaは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
X/Openは，The Open Groupの英国ならびに他の国における登録商標です。
XATMIは，X/Open Company Limitedが開発したアプリケーションインタフェースの名称です。
イーサネットは，富士ゼロックス（株）の商品名称です。
その他記載の会社名，製品名は，それぞれの会社の商標もしくは登録商標です。

■ マイクロソフト製品のスクリーンショットの使用について

Microsoft Corporationのガイドラインに従って画面写真を使用しています。

■ 発行

2013年4月　3000-3-D60-30

■ 著作権

All Rights Reserved. Copyright (C) 2006, 2013, Hitachi, Ltd.

変更内容

変更内容（3000-3-D60-30） uCosminexus TP1/LiNK 07-06

追加・変更内容
変更個所

Visual Studio2008，Visual Studio2010，Visual Studio2012を使用する場合の環境変数値を追加した。
2.1.1(1)(d)

［TP1_LiNK］メニューフォルダのパスをOSごとに記載した。
2.1.2(5)(a)

TP1/LiNKをセットアップしたときに自動的に追加されるシステム環境変数を追加した。
2.1.2(8)

リソースマネジャ接続先選択機能を追加した。
2.1.3(3)，2.1.3(4)，3.2.2(1)，3.2.5，3.3.2(1)，3.3.5，表A-1，表C-2，表C-3，表C-5，表E-2，表E-3

confフォルダに不要な定義を格納しないよう注意事項を追加した。
2.2.1，2.2.2(2)

ノード自動追加機能を追加した。
これに伴い，次のウィンドウを変更した。

［システム環境設定］ウィンドウ

また，次のコマンドをコマンド一覧に追加した。

namndrm

nammstr

namnldsp

namndopt

2.3(1)，3.1，3.1.2(3)，3.1.7，4.3.4，表7-1，表7-2，表C-1，表E-1

［システム環境設定］ウィンドウの［トランザクション機能］欄のトランザクションブランチ数を求める計算式に回復プロセス数を追加した。
3.1

送受信バッファサイズのOS設定値適用機能を追加した。
3.1.2(4)，3.2.2(3)，3.3.2(2)，3.4.2(2)，表C-1，表E-1

［XAリソースサービス環境設定］ダイアログボックスの次の項目に指定できる文字数上限を40文字に変更した。

［オンライン用XARファイルを作成するフォルダ名(O)］

［バックアップ用XARファイルを作成するフォルダ名(B)］

3.1.6

すでに設定してあるRAPサービスの実行環境を変更し，上書き保存したときに表示される確認ダイアログボックスの対応を追加した。
3.4.1

マルチOpenTP1の場合は，マルチOpenTP1用のコマンドプロンプトからdcstsmngコマンドを実行することを追加した。
4.3.2

OpenTP1の拡張機能を追加した。
これに伴い，次のオペランドを追加した。

システム共通定義
fil_prf_trace_optionオペランド
fil_prf_trace_delay_timeオペランド

rapリスナーサービス定義
scs_prf_trace_levelオペランド

また，次のコマンドをコマンド一覧に追加した。

dcalzprf

4.4.1，4.4.1(1)，4.4.1(3)，4.4.1(8)，表7-1，表7-2，表F-1

性能検証用トレース情報を取得する場合に，システム共通定義ファイルに追加するprf_traceオペランドについて，デフォルト値と説明を追加した。
4.4.1(1)

Visual Studio 2012を使用する場合，標準コンパイルオプション定義マクロであるntwin32.makが配布されないことを追加した。
5.10.2(1)(a)，5.10.4(1)(b)，5.10.4(1)(d)，5.10.4(2)(b)

Visual Studio 2010またはVisual Studio 2012を使用してプログラムを作成し，マニフェストが作成されない場合の説明を補足した。
5.10.4(1)(c)

Visual Studioで作成したアプリケーションをVisual Studio をインストールしていない環境で動作させる場合の説明を追加した。
5.10.4(1)(e)

システム統計情報，およびレスポンス統計情報の稼働統計情報の出力について，最大値，最小値がオーバーフローしたときに「*」で表示されることを追加した。
また，通信遅延時間統計情報の出力で，最大値，最小値がマイナス値になる場合，「*」で表示されることを追加した。
6.4.4

jnlsttsコマンドの注意事項を追加した。
7.　jnlstts

uatdumpコマンドの注意事項を追加した。
7.　uatdump

ユーザサーバを開始できないときの説明を追記した。
8.2.1(1)

通信障害が発生した場合の対処に関する説明を追加した。
8.2.1(4)

エラーメッセージKFCA00854-Eの対策についての補足事項を追加した。
8.4

TP1/LiNKのユーザアプリケーションプログラム（UAP）をシングルスレッド環境で実行する場合の注意事項を追加した。
付録A(4)(a)

dc_adm_call_command()の第一引数comに指定できる文字列の長さ，およびCBLDCADM('COMMAND ')のデータ名Gに指定できる文字列の長さは500バイト以下との説明を追加した。
付録A(4)(d)

WinSockのライブラリを使用する場合の注意事項を追加した。
付録A(4)(i)

統計ファイルサイズに関する稼働統計情報を取得する場合の設定内容を変更した。
表C-1

共用メモリの見積もり式に含まれる，スケジューラ，およびトランザクションマネジャのサイズ算出式を変更した。
表F-1

SPP定義数に関する説明を追加した。
表F-1

稼働統計情報ファイル容量の見積もり式で指定する内容を変更した。
付録F.3

バージョンアップ時のGUI，関数，定義，コマンド，およびデフォルト値の変更点を記載した。
付録G

単なる誤字・脱字などはお断りなく訂正しました。

今版（3000-3-D60-30）では，前版（3000-3-D60-20）の目次の構成を変更しました。前版との対応は次のようになっています。

第3版 | 第4版
1.　TP1/LiNKを紹介します | 1.　TP1/LiNKの概要
2.　準備をしましょう | 2.　TP1/LiNKのセットアップ
3.　実行環境の設定（TP1/LiNK）
4.　実行環境の設定（オプション機能）
3.　実際に使ってみましょう | 5.　TP1/LiNKの運用
4.　ウィンドウの使い方 | 6.　ウィンドウの操作
5.　コマンドの使い方 | 7.　運用コマンド
6.　コマンドの文法
7.　トラブルが起こったときは | 8.　トラブルが起こったときは
8.　メッセージの一覧 | 9.　メッセージ
付録 | 付録

変更内容（3000-3-D60-20） uCosminexus TP1/LiNK 07-02

追加・変更内容

監査ログを出力する機能を追加した。
これに伴い，次の定義を追加した。

ログサービス定義

rapリスナーサービス定義

ユーザサービスデフォルト定義

ユーザサービス定義

また次のコマンドを追加した。

dcauditsetup

サービス関数を動的にローディングできる機能を追加した。
これに伴い，［SPP環境設定］ダイアログボックスを変更した。

スケジュールサービスの動作をサービス単位で指定できるようにした。
これに伴い，［SPP詳細設定］ダイアログボックスの［サービス関数］タブを変更した。

Visual Studio 2008に対応した。

TP1/LiNKを実行環境だけで運用する場合，.NET FrameworkおよびVisual C++アプリケーションの実行に必要なMicrosoft Visual C++再頒布可能なパッケージをインストールする旨を記載した。

サービス単位に閉塞管理をできるようにした。
これに伴い，次のGUIを変更した。

［システム環境設定］ウィンドウ

［TP1/LiNKアプリケーション管理SPP］ウィンドウ

［SPP詳細設定］ダイアログボックスの［閉塞］タブ

また，次のGUIを追加した。

［サービス閉塞管理］ダイアログボックス

リアルタイム統計情報サービスの開始時に，RTSログファイルのバックアップファイルを作成するようにした。

［RAPサービス詳細設定］ダイアログボックスの［応答時間］タブおよび［その他］タブを変更した。
これに伴い，次の設定をできるようにした。

最大応答待ち時間

rapリスナー終了時のコネクション切断待ち時間

rapサーバ割り当て待ち要求の滞留監視時間

滞留警告時間の出力間隔

性能検証用トレース情報を取得する場合，次の定義ファイルにオペランドを追加した。

システム共通定義
nam_prf_trace_level_オペランド

これに伴い，次の定義およびオペランドを追加した。

XAリソースサービス定義
xar_prf_trace_levelオペランド

XAR性能検証用トレース定義
prf_file_sizeオペランド

プロセスサービス定義
prc_prf_traceオペランド

リアルタイム統計情報サービスで取得できる項目を追加した。

msvcr90.dllをインストールする手順について記載した。

nambladコマンドを追加した。

COBOL2002を使用する場合，注意事項は該当しない旨を記載した。

付録D(3)に記載していたTP1/LiNKの環境設定とTP1/Server Baseシステムサービス定義との対応の記述を，付録Eに移動した。

バージョンアップ時のGUI，関数，定義，コマンド，およびデフォルト値の変更点を記載した。

変更内容（3000-3-D60-10） uCosminexus TP1/LiNK 07-01

追加・変更内容

OpenTP1と.NET Framework上で動作するアプリケーションとの間で2相コミットによるトランザクション連携ができる機能（MSDTC連携機能）を追加した。
これに伴い，［XAリソースサービス環境設定］ダイアログボックスを変更した。

SPP，およびSUPでの［TCP/IPの受信バッファサイズ(H)］と［TCP/IPの送信バッファサイズ(O)］の指定範囲を変更した。

OpenTP1ディレクトリに構築した環境で動作している製品の形名やバージョンなどを表示できるようにした。
これに伴い，dcpplistコマンドを追加した。

保守資料をコマンドで取得できるようにした。
これに伴い，dcrasgetコマンドを追加した。

バージョンアップ時の関数，定義，コマンド，メッセージおよびデフォルト値の変更点を記載した。

はじめに

このマニュアルは，プログラムプロダクトR-1945B-24 uCosminexus TP1/LiNKの使い方について説明したものです。

uCosminexus TP1/LiNKのVersion 7に対応するuCosminexus TP1/Message Queueは，現時点では未発行です。uCosminexus TP1/LiNKのVersion 7に対応するuCosminexus TP1/Message Queueについては，発行時期をご確認ください。

TP1/Message Queueは，米国International Business Machines Corporationとのライセンス契約に基づき，WebSphere MQのMQI，MQFAP，MQクラスタの仕様をベースに実装しています。

＜はじめにの構成＞

対象読者

関連マニュアル

図中で使用する記号

文法の記号

このマニュアルでの表記

略語一覧

KB（キロバイト）などの単位表記について

謝辞

対象読者

クライアント／サーバシステムを構築するシステム管理者，システム設計者，プログラマ，オペレータ，およびエンドユーザの方々を対象としています。

Windowsの基本的な操作，ファイルシステムの基本的な知識，およびご使用になるマシンの基本的な操作を知っていることを前提としています。

関連マニュアル

マニュアル「TP1/LiNK 使用の手引」を除くOpenTP1の関連マニュアルは，TP1/LiNKとOpenTP1（TP1/Server Base）で共用となっています。そのため，TP1/LiNKでは使えない機能についても説明しています。OpenTP1の関連マニュアルのうち，TP1/LiNKでは使えない機能については，「付録D　参照するマニュアルの制限事項」を参照してください。

●関連製品

HITACHI HA Toolkit（3000-9-115）

COBOL2002 ユーザーズガイド（3020-3-D42）

JP1 Version 8 JP1/ServerConductor/DeploymentManager（3020-3-L53）

JP1 Version 8 JP1/Base 運用ガイド（3020-3-K06）

JP1 Version 8 JP1/Base メッセージ（3020-3-K07）

JP1 Version 8 JP1/Base 機能拡張（3020-3-K08）

JP1 Version 8 JP1/Automatic Job Management System 2 解説（3020-3-K21）

JP1 Version 8 JP1/Automatic Job Management System 2 設計・運用ガイド（3020-3-K22）

JP1 Version 8 JP1/Automatic Job Management System 2 セットアップガイド（3020-3-K23）

JP1 Version 8 JP1/Automatic Job Management System 2 操作ガイド（3020-3-K24）

JP1 Version 8 JP1/Automatic Job Management System 2 コマンドリファレンス（3020-3-K25）

JP1 Version 8 JP1/Automatic Job Management System 2 連携ガイド（3020-3-K27）

JP1 Version 8 JP1/Automatic Job Management System 2 メッセージ（3020-3-K28）

JP1 Version 8 JP1/Automatic Job Management System 2 - Scenario Operation（3020-3-K42）

JP1 Version 8 JP1/Performance Management - Agent Option for OpenTP1（3020-3-K74）

JP1 Version 8 JP1/NETM/Audit（3020-3-L50）

JP1 Version 8 JP1/ServerConductor/Deployment Manager（3020-3-L53）

JP1 Version 9 JP1/Performance Management - Agent Option for OpenTP1（3020-3-R65）

JP1 Version 9 JP1/Base 運用ガイド（3020-3-R71）

JP1 Version 9 JP1/Base メッセージ（3020-3-R72）

JP1 Version 9 JP1/Base 関数リファレンス（3020-3-R73）

JP1 Version 9 JP1/Automatic Job Management System 3 入門（3020-3-S01）

JP1 Version 9 JP1/Automatic Job Management System 3 導入ガイド（3020-3-S02）

JP1 Version 9 JP1/Automatic Job Management System 3 設計ガイド（システム構築編）（3020-3-S03）

JP1 Version 9 JP1/Automatic Job Management System 3 設計ガイド（業務設計編）（3020-3-S04）

JP1 Version 9 JP1/Automatic Job Management System 3 構築ガイド1（3020-3-S05）

JP1 Version 9 JP1/Automatic Job Management System 3 構築ガイド2（3020-3-S06）

JP1 Version 9 JP1/Automatic Job Management System 3 運用ガイド（3020-3-S07）

JP1 Version 9 JP1/Automatic Job Management System 3 トラブルシューティング（3020-3-S08）

JP1 Version 9 JP1/Automatic Job Management System 3 操作ガイド（3020-3-S09）

JP1 Version 9 JP1/Automatic Job Management System 3 コマンドリファレンス1（3020-3-S10）

JP1 Version 9 JP1/Automatic Job Management System 3 コマンドリファレンス2（3020-3-S11）

JP1 Version 9 JP1/Automatic Job Management System 3 連携ガイド（3020-3-S12）

JP1 Version 9 JP1/Automatic Job Management System 3 メッセージ1（3020-3-S13）

JP1 Version 9 JP1/Automatic Job Management System 3 メッセージ2（3020-3-S14）

JP1 Version 9 JP1/NETM/Audit 構築・運用ガイド（3020-3-S90）

JP1 Version 9 JP1/ServerConductor/Deployment Manager（3020-3-T77）

JP1 Version 10 JP1/Base 運用ガイド（3021-3-001）

JP1 Version 10 JP1/Base メッセージ（3021-3-002）

JP1 Version 10 JP1/Base 関数リファレンス（3021-3-003）

JP1 Version 10 JP1/Automatic Job Management System 3 入門（3021-3-101）

JP1 Version 10 JP1/Automatic Job Management System 3 導入ガイド（3021-3-102）

JP1 Version 10 JP1/Automatic Job Management System 3 設計ガイド（システム構築編）（3021-3-103）

JP1 Version 10 JP1/Automatic Job Management System 3 設計ガイド（業務設計編）（3021-3-104）

JP1 Version 10 JP1/Automatic Job Management System 3 構築ガイド1（3021-3-105）

JP1 Version 10 JP1/Automatic Job Management System 3 構築ガイド2（3021-3-106）

JP1 Version 10 JP1/Automatic Job Management System 3 運用ガイド（3021-3-107）

JP1 Version 10 JP1/Automatic Job Management System 3 トラブルシューティング（3021-3-108）

JP1 Version 10 JP1/Automatic Job Management System 3 操作ガイド（3021-3-109）

JP1 Version 10 JP1/Automatic Job Management System 3 コマンドリファレンス1（3021-3-110）

JP1 Version 10 JP1/Automatic Job Management System 3 コマンドリファレンス2（3021-3-111）

JP1 Version 10 JP1/Automatic Job Management System 3 連携ガイド（3021-3-112）

JP1 Version 10 JP1/Automatic Job Management System 3 メッセージ1（3021-3-113）

JP1 Version 10 JP1/Automatic Job Management System 3 メッセージ2（3021-3-114）

JP1 Version 10 JP1/Performance Management - Agent Option for OpenTP1（3021-3-072）

JP1 Version 10 JP1/Audit Management - Manager 構築・運用ガイド（3021-3-165）

図中で使用する記号

このマニュアルの図中で使用する記号を次のように定義します。

文法の記号

（1）Windowsの操作に関する表記

各部の名称

ディスプレイに表示される各部の用語は，Windowsの用語と同じ意味で使用しています。用語の意味と操作方法は，基本操作について説明しているWindowsのマニュアルを参照してください。

マニュアルの表記方法

ディスプレイに表示される各項目を角括弧［ ］で示しています。

Windowsの［スタート］ボタンからメニューをたどって開く操作はハイフンでつないで表記しています。なお，Windows Server 2012，およびWindows 8の場合は，［スタート］ボタンを［スタート］画面に読み替えてください。

（例）

［スタート］ボタンから［プログラム］メニューの下の［TP1_LiNK］メニューを開く操作は「［スタート］－［プログラム］－［TP1_LiNK］メニューを開く」と表記しています。なお，Windows Server 2012，およびWindows 8の場合は，［プログラム］メニューを［アプリ］画面に読み替えてください。

Windowsを組み込んだドライブやフォルダ名は，標準的な例を記載しています。標準的な環境と異なるWindowsを使用する場合は，その環境に合わせてドライブやフォルダ名を読み替えてください。なお，このマニュアルで使用しているWindowsの環境変数と標準的な環境での環境変数値を次の表に示します。

環境変数名 | 標準的な環境での環境変数値
ProgramFiles | C:¥Program Files¥
TEMP | C:¥Documents and Settings¥ユーザ名¥Local Settings¥Temp¥
windir | C:¥Windows¥

（2）属性表示記号

指定する値の範囲などについて説明する記号です。

属性表示記号 | 意味
～ | この記号のあとに，ユーザが指定する値の属性を示します。
＜　　＞ | ユーザが指定する値の構文要素を示します。
((　　)) | 指定できる値の範囲を示します。
《　　》 | ユーザが指定を省略したときにTP1/LiNKが仮定する値を示します。

（3）構文要素記号

指定する値の内容について説明する記号です。

構文要素記号
意味

＜英字＞
アルファベット（A～Z，a～z）と_（アンダスコア）

＜英字記号＞
アルファベット（A～Z，a～z），#，@，および¥

＜英数字＞
英字と数字（0～9）

＜英数字記号＞
英字記号と数字（0～9）

＜符号なし整数＞
数字（0～9）

＜16進数字＞
数字（0～9），A～F，およびa～f

＜識別子＞
先頭がアルファベット（A～Z，a～z）の英数字列

＜記号名称＞
先頭が英字記号の英数字記号列

＜文字列＞
任意の文字の配列

＜パス名＞
記号名称，¥，および.（ピリオド）
ただし，パス名はOSの規則に依存します。

（4）文法記述記号

コマンドの記述形式について説明する記号です。

文法記述記号
意味

｜（ストローク）
この記号で区切られた項目は選択できることを示します。

（例）-t　A｜B

-tオプションにAまたはBを指定できることを示します。

｛　　｝（波括弧）
この記号で囲まれている複数の項目のうちから，どれか一つを選んで指定することを示します。

（例）｛A｜B｜C｝

A，BまたはCのどれか一つを選択することを示します。

〔　　〕（きっ甲）
この記号で囲まれている項目を省略できることを示します。

（例）〔A〕

Aと指定するか，または何も指定しないことを示します。

...（点線）
この記号の直前に示す項目を繰り返し指定できることを示します。
ただし，項目が括弧で囲まれている場合，括弧全体が一つの項目となります。

（例）A，B，B，...

Aの後ろにBを必要個数だけ指定することを示します。

　　　（アンダーライン）
この記号で示す項目は，該当するオプションまたはコマンド引数を省略したときにTP1/LiNKが仮定する値を示します。

（例）-a〔A｜B〕

AもBも指定しなかったときには，TP1/LiNKが-aオプションの指定値にAを仮定することを示します。

△（白三角）
空白を示します。

（例）cmd△-a△b

cmdと-aの間，および-aとbの間にそれぞれ空白を入れることを示します。

（5）コマンドの画面表示に関する記号

コマンドの画面の表示について説明する記号です。

記号 | 意味
C:¥> | オペレータに対する入力促進記号（プロンプト）を示します。
<CR> | オペレータがリターンキーを押す動作を示します。この記号は画面に表示されません。

このマニュアルでの表記

このマニュアルでは，製品の名称を省略して表記しています。製品の名称と，このマニュアルでの表記を次に示します。

製品名称
このマニュアルでの表記

Microsoft Access(R)
Access

Microsoft(R) Office Excel
Excel

COBOL2002 Net Developer
COBOL2002

COBOL2002 Net Server Suite

COBOL2002 Net Developer

COBOL2002 Net Server Suite

COBOL2002 Net Developer(64)

COBOL2002 Net Server Suite(64)

HiRDB/Single Server Version 7
HiRDB

HiRDB/Parallel Server Version 7

HiRDB/Single Server Version 8

HiRDB/Parallel Server Version 8

HiRDB/Single Server Version 8(64)

HiRDB/Parallel Server Version 8(64)

HiRDB Server Version 9

HiRDB Server Version 9(32)

JavaTM
Java

JP1/ServerConductor/Deployment Manager
DPM
JP1

JP1/Automatic Job Management System 2 - Agent
JP1/AJS - Agent
JP1/AJS

JP1/Automatic Job Management System 3 - Agent

JP1/Automatic Job Management System 2 - Manager
JP1/AJS - Manager

JP1/Automatic Job Management System 3 - Manager

JP1/Automatic Job Management System 2 - View
JP1/AJS - View

JP1/Automatic Job Management System 3 - View

JP1/Automatic Job Management System 2 - Scenario Operation Manager
JP1/AJS2 - Scenario Operation Manager
JP1/AJS2 - Scenario Operation

JP1/Automatic Job Management System 2 - Scenario Operation View
JP1/AJS2 - Scenario Operation View

JP1/NETM/Audit - Manager
JP1/NETM/Audit

JP1/Performance Management - Agent Option for OpenTP1
PFM - Agent for OpenTP1

Microsoft(R) SQL Server
Microsoft SQL Server

Microsoft(R) Visual Studio 2005 Visual C++(R) 2005
Microsoft Visual C++

Microsoft(R) Visual Studio 2008 Visual C++(R) 2008

Microsoft(R) Visual Studio 2010 Visual C++(R) 2010

Microsoft(R) Visual Studio 2012 Visual C++(R) 2012

Microsoft(R) Windows(R) Sockets
Microsoft Windows Sockets

Microsoft(R) MS-DOS(R)
MS-DOS

Integrated Network Management System
NETM

JP1/NETM/DM Manager
NETM/DM

JP1/NETM/DM SubManager

JP1/NETM/DM Client

Oracle9i
Oracle

Oracle Database 10g

Oracle Database 11g

Oracle Real Application Clusters
Oracle RAC

uCosminexus TP1/Client for .NET Framework
Client .NET

uCosminexus TP1/Client/J
TP1/Client/J
TP1/Client

uCosminexus TP1/Client/P
TP1/Client/P

uCosminexus TP1/Client/W
TP1/Client/W

uCosminexus TP1/Connector for .NET Framework
Connector .NET

uCosminexus TP1/FS/Direct Access
TP1/FS/Direct Access

uCosminexus TP1/FS/Table Access
TP1/FS/Table Access

uCosminexus TP1/LiNK
TP1/LiNK

uCosminexus TP1/Message Control
TP1/Message Control

uCosminexus TP1/Message Control Tester
TP1/Message Control/Tester

uCosminexus TP1/Message Queue
TP1/Message Queue

uCosminexus TP1/Message Queue (64)

uCosminexus TP1/Messaging
TP1/Messaging

uCosminexus TP1/Multi
TP1/Multi

uCosminexus TP1/NET/Library
TP1/NET/Library

uCosminexus TP1/NET/TCP/IP
TP1/NET/TCP/IP

uCosminexus TP1/Offline Tester
TP1/Offline Tester

uCosminexus TP1/Online Tester
TP1/Online Tester

uCosminexus TP1/Resource Manager Monitor
TP1/Resource Manager Monitor

uCosminexus TP1/Server Base
TP1/Server Base

uCosminexus TP1/Shared Table Access
TP1/Shared Table Access

uCosminexus TP1/Web
TP1/Web

Microsoft(R) Visual Basic(R)
Visual Basic

Microsoft(R) Visual Studio(R) .NET Framework 2002
Visual Studio .NET 2002

Microsoft(R) Visual Studio(R) 2005 Professional Edition
Visual Studio 2005
Visual Studio

Microsoft(R) Visual Studio(R) 2005 Professional Edition with MSDN Professional Subscription

Microsoft(R) Visual Studio(R) 2005 Professional Edition with MSDN Premium Subscription

Microsoft(R) Visual Studio(R) 2005 Standard Edition

Microsoft(R) Visual Studio(R) 2005 Team Edition for Software Architects

Microsoft(R) Visual Studio(R) 2005 Team Edition for Software Developers

Microsoft(R) Visual Studio(R) 2005 Team Edition for Software Testers

Microsoft(R) Visual Studio(R) 2005 Team Suite

Microsoft(R) Visual Studio(R) 2008 Professional Edition
Visual Studio 2008

Microsoft(R) Visual Studio(R) 2008 Standard Edition

Microsoft(R) Visual Studio(R) Team System 2008 Architecture Edition

Microsoft(R) Visual Studio(R) Team System 2008 Development Edition

Microsoft(R) Visual Studio(R) Team System 2008 Test Edition

Microsoft(R) Visual Studio(R) Team System 2008 Database Edition

Microsoft(R) Visual Studio(R) Team System 2008 Team Suite

Microsoft(R) Visual Studio(R) 2010 Professional
Visual Studio 2010

Microsoft(R) Visual Studio(R) 2010 Premium

Microsoft(R) Visual Studio(R) 2010 Ultimate

Microsoft(R) Visual Studio(R) Professional 2012
Visual Studio 2012

Microsoft(R) Visual Studio(R) Premium 2012

Microsoft(R) Visual Studio(R) Ultimate 2012

Microsoft(R) Windows(R) 7 Enterprise (x86)
Windows 7 (32ビット用)
Windows 7

Microsoft(R) Windows(R) 7 Professional (x86)

Microsoft(R) Windows(R) 7 Ultimate (x86)

Microsoft(R) Windows(R) 7 Enterprise (x64)
Windows 7 (64ビット用)

Microsoft(R) Windows(R) 7 Professional (x64)

Microsoft(R) Windows(R) 7 Ultimate (x64)

Microsoft(R) Windows(R) 8 Enterprise (x86)
Windows 8 (32ビット用)
Windows 8

Microsoft(R) Windows(R) 8 Pro (x86)

Microsoft(R) Windows(R) 8 Enterprise (x64)
Windows 8 (64ビット用)

Microsoft(R) Windows(R) 8 Pro (x64)

Microsoft(R) Windows Server(R) 2003, Datacenter Edition
Windows Server 2003 (32ビット用)
Windows Server 2003

Microsoft(R) Windows Server(R) 2003, Enterprise Edition

Microsoft(R) Windows Server(R) 2003, Standard Edition

Microsoft(R) Windows Server(R) 2003 R2, Enterprise Edition

Microsoft(R) Windows Server(R) 2003 R2, Standard Edition

Microsoft(R) Windows Server(R) 2003, Datacenter x64 Edition
Windows Server 2003 (64ビット用)

Microsoft(R) Windows Server(R) 2003, Enterprise x64 Edition

Microsoft(R) Windows Server(R) 2003, Standard x64 Edition

Microsoft(R) Windows Server(R) 2003 R2, Enterprise x64 Edition

Microsoft(R) Windows Server(R) 2003 R2, Standard x64 Edition

Microsoft(R) Windows Server(R) 2008, Datacenter Edition
Windows Server 2008 (32ビット用)
Windows Server 2008

Microsoft(R) Windows Server(R) 2008, Enterprise Edition

Microsoft(R) Windows Server(R) 2008, Standard Edition

Microsoft(R) Windows Server(R) 2008, Datacenter x64 Edition
Windows Server 2008 (64ビット用)

Microsoft(R) Windows Server(R) 2008, Enterprise x64 Edition

Microsoft(R) Windows Server(R) 2008, Standard x64 Edition

Microsoft(R) Windows Server(R) 2008 R2, Datacenter

Microsoft(R) Windows Server(R) 2008 R2, Enterprise

Microsoft(R) Windows Server(R) 2008 R2, Standard

Microsoft(R) Windows Server(R) 2012, Datacenter
Windows Server 2012

Microsoft(R) Windows Server(R) 2012, Standard

Microsoft(R) Windows Vista(R) Business (x86)
Windows Vista（32ビット用）
Windows Vista

Microsoft(R) Windows Vista(R) Enterprise (x86)

Microsoft(R) Windows Vista(R) Ultimate (x86)

Microsoft(R) Windows Vista(R) Business (x64)
Windows Vista（64ビット用）

Microsoft(R) Windows Vista(R) Enterprise (x64)

Microsoft(R) Windows Vista(R) Ultimate (x64)

Microsoft(R) Windows(R) XP Professional Operating System
Windows XP

Windows 7，Windows 8，Windows Server 2003，Windows Server 2008，Windows Server 2012，Windows Vista，およびWindows XPで機能差がない場合，Windowsと表記しています。

略語一覧

このマニュアルで使用する英略語を次に示します。

英略語 | 英字での表記
AP | Application Program
API | Application Programming Interface
CRM | Communication Resource Manager
CUP | Client User Program
DAM | Direct Access Method
DB | Database
DBMS | Database Management System
DHCP | Dynamic Host Configuration Protocol
DLL | Dynamic Linking Library
DTP | Distributed Transaction Processing
EUC | End User Computing
FAT | File Allocation Table
FD | Floppy Disk
GUI | Graphical User Interface
HTML | Hyper Text Markup Language
IP | Internet Protocol
ISAM | Indexed Sequential Access Method
IST | Internode Shared Table
JNI | Java Native Interface
J2EE | Java 2 Enterprise Edition
LAN | Local Area Network
MCF | Message Control Facility
MHP | Message Handling Program
MQ | Message Queue
MQI | Message Queue Interface
MSCS | Microsoft Cluster Server
MSDTC | Microsoft Distributed Transaction Coordinator
MTU | Maximum Transmission Unit
NTFS | New Technology File System
ODBC | Open DataBase Connectivity
OS | Operating System
OSI | Open Systems Interconnection
PC | Personal Computer
RAP | Remote Application Programming Interface
RDBMS | Relational Database Management System
RI | Recovery Information
RM | Resource Manager
RPC | Remote Procedure Call
RTS | Real Time Statistic
SPP | Service Providing Program
SUP | Service Using Program
TAM | Table Access Method
TCP/IP | Transmission Control Protocol/Internet Protocol
TLS | Thread Local Storage
TP | Transaction Processing
UAP | User Application Program
WS | Workstation
XA | Extended Architecture
XAR | Extended Architecture Resource

KB（キロバイト）などの単位表記について

1KB（キロバイト），1MB（メガバイト），1GB（ギガバイト），1TB（テラバイト）はそれぞれ1,024バイト，1,024²バイト，1,024³バイト，1,024⁴バイトです。

謝辞

COBOL言語仕様は，CODASYL（the Conference on Data Systems Languages：データシステムズ言語協議会）によって，開発された。OpenTP1のユーザアプリケーションプログラムのインタフェース仕様のうち，データ操作言語（DML　Data Manipulation Language）の仕様は，CODASYL COBOL（1981）の通信節，RECEIVE文，SEND文，COMMIT文，及びROLLBACK文を参考にし，それに日立製作所独自の解釈と仕様を追加して開発した。原開発者に対し謝意を表すとともに，CODASYLの要求に従って以下の謝辞を掲げる。なお，この文章は，COBOLの原仕様書「CODASYL COBOL JOURNAL OF DEVELOPMENT 1984」の謝辞の一部を再掲するものである。

いかなる組織であっても，COBOLの原仕様書とその仕様の全体又は一部分を複製すること，マニュアルその他の資料のための土台として原仕様書のアイデアを利用することは自由である。ただし，その場合には，その刊行物のまえがきの一部として，次の謝辞を掲載しなければならない。書評などに短い文章を引用するときは，"COBOL"という名称を示せば謝辞全体を掲載する必要はない。

COBOLは産業界の言語であり，特定の団体や組織の所有物ではない。

CODASYL COBOL委員会又は仕様変更の提案者は，このプログラミングシステムと言語の正確さや機能について，いかなる保証も与えない。さらに，それに関連する責任も負わない。

次に示す著作権表示付資料の著作者及び著作権者

FLOW-MATIC（Sperry Rand Corporationの商標），Programming for the Univac(R)ⅠandⅡ，Data Automation Systems，Sperry Rand Corporation 著作権表示1958年，1959年；

IBM Commercial Translator Form No.F 28-8013，IBM著作権表示1959年；

FACT，DSI 27A5260-2760，Minneapolis-Honeywell，著作権表示1960年

は，これら全体又は一部分をCOBOLの原仕様書中に利用することを許可した。この許可は，COBOL原仕様書をプログラミングマニュアルや類似の刊行物に複製したり，利用したりする場合にまで拡張される。

1.　TP1/LiNKの概要

この章では，TP1/LiNKの特長，TP1/LiNKを使って構築できるシステム例，およびTP1/LiNKのアプリケーションについて説明します。

＜この章の構成＞

1.1　TP1/LiNKとは

1.2　TP1/LiNKの特長

1.3　TP1/LiNKで構築できるシステム

1.4　TP1/LiNKで使用できるアプリケーション

1.1　TP1/LiNKとは

分散アプリケーションサーバTP1/LiNKとは，DBMSにアクセスするアプリケーションを管理することで，ユーザの業務を支援するミドルウェアです。

クライアント／サーバシステムの課題

近年のオープンシステムの業務として，クライアント／サーバシステムのサーバにデータベースマネジメントシステム（DBMS）を使った方法が普及しています。この形態のクライアント／サーバシステムには，次のような課題があります。

クライアントの数が増えて負荷が大幅に増えてしまうと，クライアントの要求に対する応答の待ち時間が長くなってしまいます。

クライアントからサーバのDBMSへはデータベース言語（SQL）でアクセスするため，クライアントのオペレータにSQLアクセスの知識が必要になります。また，まとまったデータベースへのアクセスにクライアントからSQLを発行すると，通信のオーバヘッドでLANの性能が低くなってしまいます。

サーバでエラーが起こったときの詳細な情報など，サーバ独自の情報をクライアントへ知らせることができません。

TP1/LiNKを使ったクライアント／サーバシステムの利点

DBMSのサーバを使ったクライアント／サーバシステムをより大きな業務に適用する場合，これらの課題に対してアプリケーションを作成して解決できます。

アプリケーションを管理する製品にTP1/LiNKを使うと，次のような利点があります。

TP1/LiNKのサーバではアプリケーションの実行プロセスを管理できるので，処理待ちのオーバヘッドを最小限に抑えてサーバの処理性能を上げられます。

サーバと通信するときは，クライアントのアプリケーションからリモートプロシジャコール（RPC）を使います。DBMSへは，サーバ側のアプリケーションからのSQLでアクセスします。そのため，クライアントのオペレータがSQLを使わなくて済みます。また，クライアントからのまとまったデータベースへのアクセスが1回のRPCで済むので，通信のオーバヘッドが低くなってLANの性能を上げられます。

クライアントへの応答もアプリケーションで処理するので，サーバからクライアントへ任意の情報を知らせることができます。

DBMSのサーバにTP1/LiNKを使ったクライアント／サーバシステムを次の図に示します。

図1-1　DBMSのサーバにTP1/LiNKを使ったクライアント／サーバシステム

1.2　TP1/LiNKの特長

TP1/LiNKを使ったシステムの特長について説明します。

＜この節の構成＞

1.2.1　アプリケーションでサーバの業務を支援します

1.2.2　エンドユーザコンピューティングを支援します

1.2.3　トランザクションを制御できます

1.2.4　各種のデータベースを選べます

1.2.5　メッセージ送受信機能を使えます

1.2.6　メッセージキューイング機能を使えます

1.2.7　オープンシステム対応の製品と連携できます

1.2.8　監査ログによるシステムの監視ができます

1.2.1　アプリケーションでサーバの業務を支援します

TP1/LiNKでは，次のような使いやすいアプリケーションプログラムを作れます。

＜この項の構成＞

(1)　アプリケーションを作成することで，多様な業務処理に対応できます

(2)　サーバの負荷を調整して，効率良く業務を処理できます

(3)　業務の開始と終了を，柔軟に操作できます

(1)　アプリケーションを作成することで，多様な業務処理に対応できます

TP1/LiNKを使ったサーバでは，業務処理をアプリケーションとして作成するので，オペレータの操作だけでは対応できない複雑な処理ができます。アプリケーションではデータベースへのアクセス以外の処理（クライアントの認証，クライアントへ送信するデータの加工など）もできるので，業務に合わせてきめ細かいサービスをクライアントへ提供できます。

さらに，TP1/LiNKを使うと，異なるマシン間のアプリケーションをリモートプロシジャコールで連携させて，分散した処理を一つの業務にできます。サーバの処理はアプリケーション単位に分かれているので，作成したアプリケーションの業務を拡張するときにも柔軟に対応できます。

(2)　サーバの負荷を調整して，効率良く業務を処理できます

複数のアプリケーションを起動することでサーバの負荷が増え過ぎると，各アプリケーションの処理性能は向上しません。

TP1/LiNKでは，アプリケーションのプロセスを効率良く振り分けたり（スケジュール機能），負荷に応じて実行領域を増やしたり減らしたり（マルチサーバ機能）できます。そのため，プロセスが増え過ぎてサーバの性能が下がるのを避けられます。したがって，複数のクライアントからサービスを要求されたときでも安定した応答ができます。

(3)　業務の開始と終了を，柔軟に操作できます

TP1/LiNKを使ったサーバでは，アプリケーションの業務をTP1/LiNKと一緒に開始させることができます。TP1/LiNKの稼働中に任意に開始または終了させることもできます。そのため，アプリケーションとして作成した定型業務の開始と終了を，オペレータの操作で管理できます。

さらに，業務の都合でTP1/LiNKを開始し直しても，前回のアプリケーションの状態を引き継ぐこともできます。

TP1/LiNKを使うと，このような柔軟な運用がオペレータの操作でできます。

1.2.2　エンドユーザコンピューティングを支援します

TP1/LiNKは，サーバを構築する負担を減らすことで，専門の技術者でなくてもシステムを構築できるようにしています。

セットアップするときには，TP1/LiNKのメモリの見積もりや割り当ては，自動的にできます。セットアップが完了すると，TP1/LiNK標準の実行環境（初期値）が設定されます。この設定内容を業務に合わせて変更するだけでよいので，実行環境を始めから設定する手間が省けます。また，グラフィカルな画面（GUI）で操作できます。

このようにTP1/LiNKは，エンドユーザコンピューティング（EUC）を支援しています。

1.2.3　トランザクションを制御できます

ファイルのデータを読み出して，更新後に書き込む処理のように，データの一貫性を保つため途中で分けられない処理の単位をトランザクションといいます。トランザクションの処理結果は，有効にするか無効にするかのどちらかに必ず決まります。

TP1/LiNKでは，オプションとしてトランザクション機能を使えます。トランザクション機能を使うように指定すると，アプリケーションでトランザクションを管理できます。そのため，処理がうまくいかなかった場合でも，データがなくなったり，不整合が起こったりすることを避けることができます。

TP1/LiNKでは，リモートプロシジャコールによる複数のアプリケーションにわたる処理でも，一つのトランザクション処理にできます。さらに，LANで接続したTP1/LiNK（またはOpenTP1）にわたる処理を，トランザクション処理にすることもできます。

1.2.4　各種のデータベースを選べます

TP1/LiNKのプログラム構造は，X/OpenのDTPモデルに準拠しています。そのため，TP1/LiNKで構築するサーバでは，XAインタフェースに準拠した各種DBMS（ORACLE，SQL Server，HiRDBなど）が使えます。

X/Openに準拠したDBMSを使うと，トランザクション処理でデータベースを更新できます。さらに，リモートプロシジャコールで異機種間にわたる処理をトランザクションとすれば，複数のデータベースを，整合性を保って更新できます。

TP1/LiNKのサーバを構築するときには，使いたいデータベースを任意に選べ，DBMSの長所を十分に業務に生かせます。

データベースとTP1/LiNKを連携したサーバの形態を次の図に示します。

図1-2　データベースとTP1/LiNKを連携したサーバの形態

1.2.5　メッセージ送受信機能を使えます

TP1/LiNKでは，メインフレームの通信方法であるメッセージ送受信で通信できます。メッセージ送受信を使うと，OpenTP1以外のシステム（メインフレーム）およびUNIX上のOpenTP1とメッセージのやり取りで通信できます。TP1/LiNKのメッセージ送受信では，通信プロトコルにTCP/IPを使います。

メッセージ送受信機能を使うときは，TP1/LiNKのシステムに次のソフトウェアおよびアプリケーションが必要です。

TP1/Messaging

メッセージ送受信用のアプリケーション

メッセージ送受信機能の使い方についてはマニュアル「TP1/Messaging 使用の手引」を，メッセージ送受信用のアプリケーションについてはマニュアル「OpenTP1 プログラム作成の手引」を参照してください。

メッセージ送受信機能を使った通信の概要を次の図に示します。

図1-3　メッセージ送受信機能を使った通信の概要

注※

TCP/IPを使ったOpenTP1のメッセージ送受信機能（MCF）は，次の製品から構成されます。

TP1/Message Control

TP1/NET/Library

TP1/NET/TCP/IP

1.2.6　メッセージキューイング機能を使えます

メッセージキューイング機能を使うには，TP1/LiNKのシステムにTP1/Message Queueが必要ですが，TP1/LiNKのVersion 7に対応するTP1/Message Queueは，現時点では未発行です。発行時期をご確認ください。

TP1/LiNKでは，米国IBM社が開発したメッセージキューイング機能を使って通信できます。メッセージキューイング機能の通信では，アプリケーションが自システムのキューへメッセージを登録したり，キューからメッセージを取り出したりして通信します。

アプリケーションがメッセージを登録したり取り出したりするときには，通信する相手のあて先を指定します。通信プロトコルを意識する必要はありません。さらに，通信相手のアプリケーションが稼働していないときでもデータを送れるため，任意のタイミングでメッセージを扱えます。

メッセージキューイング機能については，マニュアル「TP1/Message Queue 使用の手引」を参照してください。

メッセージキューイング機能を使った通信の概要を次の図に示します。

図1-4　メッセージキューイング機能を使った通信の概要

1.2.7　オープンシステム対応の製品と連携できます

TP1/LiNKは，次に示す製品と連携できます。

システム運用管理機能　JP1

統合ネットワーク管理　NETM

これらの製品と連携してTP1/LiNKシステムを構築すると，TP1/LiNKの分散アプリケーション処理に加えて，JP1による効率的なバッチジョブの運用やシナリオテンプレートを利用したシステムの運用もできます。さらに，NETMによるネットワーク管理とソフトウェア配布ができるようになります。

TP1/LiNKとJP1，NETMの連携を次の図に示します。

図1-5　TP1/LiNKとJP1，NETMの連携

＜この項の構成＞

(1)　システム運用管理機能JP1と連携できます

(2)　統合ネットワーク管理NETMと連携できます

(1)　システム運用管理機能JP1と連携できます

システム運用管理機能JP1とは，業務をバッチ環境での業務（バッチジョブ）として管理する製品を総称した呼称です。

ジョブ管理

TP1/LiNKシステムにJP1/Automatic Job Management System 2を使うと，TP1/Message Queue※のデータ形式のイベントでシステムの自動運転ができ，メインフレームの業務であるバッチ処理ができるようになります。そのため，TP1/LiNKの業務をオンライン中の業務とバッチ処理業務に分けることができ，システムを効率良く運用できます。

注※

TP1/LiNKのVersion 7に対応するTP1/Message Queueは，現時点では未発行です。発行時期をご確認ください。

シナリオテンプレートを利用したシステムの運用

JP1/AJS2 - Scenario Operationは，JP1/AJS2で管理していたジョブ，およびジョブネットを，統合的に管理する製品です。

システム構成の変化に対応した運用手順をシナリオテンプレートとして定義したり，運用環境に応じたシナリオを実行したりできます。また，TP1/LiNKで提供するシナリオテンプレートを組み合わせてシナリオを作成したり，実行したりできます。シナリオテンプレートによって，システムを自動的に運用できます。

詳細については，「5.8　JP1連携時の運用（JP1/Base，JP1/AJS，およびJP1/AJS2 - Scenario Operation）」を参照してください。

JP1には，システム運用機能に応じた製品があります。JP1の各種機能については，機能ごとのJP1のマニュアルを参照してください。

(2)　統合ネットワーク管理NETMと連携できます

統合ネットワーク管理NETMとは，大規模で複雑なネットワークを管理，操作する製品を総称した呼称です。

TP1/LiNKシステムにNETMを使うと，メインフレームからTP1/LiNKで構築したサーバまで，ネットワークシステム全体を監視できます。さらに，ソフトウェア配布管理支援 NETM/DMを使うと，ソフトウェアを一括してオンライン配布（リモートインストール）できるため，マシンごとにソフトウェアを組み込んだりバージョンアップしたりする手間が省けます。

NETMには，ネットワーク管理に応じた製品があります。NETMの各種機能については，機能ごとのNETMのマニュアルを参照してください。

1.2.8　監査ログによるシステムの監視ができます

監査ログとは，システム構築者，運用者，および使用者がTP1/LiNKのプログラムに対して実行した操作，およびその操作に伴うプログラムの動作の履歴が出力されるファイルです。監査者が監査ログを調査することで，「いつ」，「だれが」，「何をしたか」を知ることができます。そのため，システムの使用状況，不正アクセスなどを監査する資料として使用できます。

監査ログには，コマンドなどによる操作を実行したユーザに関する情報，その操作に伴う処理が成功したか失敗したかなどの監査事象に関する情報，操作や処理の対象に関する情報などが出力されます。これらの情報は，システムの監視に役立ちます。

なお，JP1/NETM/Auditと連携すると，監査ログを自動で収集したり，一括管理をしたりすることができるようになります。

監査ログ機能の詳細については，マニュアル「OpenTP1 解説」を参照してください。

1.3　TP1/LiNKで構築できるシステム

TP1/LiNKを使うと，次のようなシステムを構築できます。

TP1/Client/WまたはTP1/Client/PのOpenTP1クライアント機能を使ったシステム

TP1/Client/JのOpenTP1クライアント機能を使ったシステム

インターネット／イントラネットを使ったシステム

OpenTP1（TP1/Server Base）と連携したシステム

J2EEで動作するアプリケーションサーバと連携したシステム

.NET Frameworkと連携したシステム

メインフレームと連携したシステム

TP1/LiNKを使ったシステム構築の例を次の図に示します。

図1-6　TP1/LiNKを使ったシステム構築の例

＜この節の構成＞

1.3.1　TP1/Client/WまたはTP1/Client/PのOpenTP1クライアント機能を使ったクライアント／サーバシステム

1.3.2　TP1/Client/JのOpenTP1クライアント機能を使ったクライアント／サーバシステム

1.3.3　インターネット／イントラネットを使った通信

1.3.4　OpenTP1（TP1/Server Base）と連携したクライアント／サーバシステム

1.3.5　J2EEで動作するアプリケーションサーバと連携したシステム

1.3.6　.NET Frameworkと連携したシステム

1.3.7　メインフレームと連携した通信

1.3.1　TP1/Client/WまたはTP1/Client/PのOpenTP1クライアント機能を使ったクライアント／サーバシステム

TP1/Client/WまたはTP1/Client/PとTP1/LiNKのサーバが通信する形態です。TP1/Client/WまたはTP1/Client/Pのシステムでアプリケーションを作成して，TP1/LiNKのアプリケーションと通信します。

TP1/Client/WまたはTP1/Client/PのどちらかとTP1/LiNKの通信では，通信プロトコルにTCP/IPを使います。また，リモートAPI機能を使うとインターネット／イントラネットを経由して通信できます。リモートAPI機能については，「5.5　リモートAPI機能の使い方」を参照してください。

＜この項の構成＞

(1)　クライアントの構成

(2)　サーバの構成

(1)　クライアントの構成

TP1/Client/WまたはTP1/Client/Pのアプリケーションからリモートプロシジャコールを使って，TP1/LiNKのサービスを要求します。

TP1/Client/WはWS向け，TP1/Client/PはPC向けの製品です。クライアント側に期待する性能や接続数に応じてクライアントのハードウェアを選べます。

クライアントにPCを使うときには，リレーショナルデータベース管理システム Accessを使って，TP1/Client/Pのアプリケーションプログラムを呼び出せます。また，TP1/Client Objectsを使うと，APPGALLERYまたはVisual Basicの標準部品と組み合わせて，TP1/Client/PのアプリケーションをGUI環境で開発できます。

(2)　サーバの構成

TP1/Client/WまたはTP1/Client/Pからサービス要求が来ると，TP1/LiNKのアプリケーションはDBMSにアクセスしてサービスを提供します。アプリケーションとして定型業務を作成しておいて，TP1/Client/WまたはTP1/Client/Pからのサービス要求に応じてサービスを実行します。

ここでは，例としてTP1/Client/Pを使ったクライアント／サーバシステムを次の図に示します。

図1-7　TP1/Client/Pを使ったクライアント／サーバシステム

1.3.2　TP1/Client/JのOpenTP1クライアント機能を使ったクライアント／サーバシステム

インターネット／イントラネット環境でTP1/Client/JとTP1/LiNKが通信する形態です。TP1/Client/Jをクライアントにすると，Javaアプレット，Javaアプリケーション，またはJavaサーブレットからTP1/LiNKにサービスを要求できます。

＜この項の構成＞

(1)　クライアントの構成

(2)　サーバの構成

(1)　クライアントの構成

TP1/Client/Jクラスライブラリを使ったJavaアプレット，Javaアプリケーション，またはJavaサーブレットからRPCを実行して，TP1/LiNKのサービスを要求します。

クライアントでJavaアプレットを開発するときは，TP1/Client/Jクラスライブラリを使います。また，WebサーバからJavaアプレットとTP1/Client/Jクラスライブラリをダウンロードして実行できます。このときWebサーバと同じマシンにTP1/LiNKを組み込んであることが前提です。

TP1/Client/Jのクライアントを構築するときは，Javaアプレット，Javaアプリケーション，またはJavaサーブレットを開発するJava製品が必要です。

(2)　サーバの構成

TP1/Client/Jからサービス要求が来ると，TP1/LiNKのアプリケーションはDBMSにアクセスしてサービスを提供します。アプリケーションとして定型業務を作成しておいて，サービス要求に応じてサービスを実行します。

TP1/Client/Jを使ったクライアント／サーバシステムを次の図に示します。

図1-8　TP1/Client/Jを使ったクライアント／サーバシステム

1.3.3　インターネット／イントラネットを使った通信

TP1/LiNKは，インターネット／イントラネット環境下で通信できます。また，次に示す製品を使うと，WebブラウザをTP1/LiNKのクライアントにできます。

TP1/Web（インターネットゲートウェイ機能）

なお，インターネット／イントラネットを使ってOpenTP1製品が通信するときは，リモートAPI機能を使います。リモートAPI機能については，「5.5　リモートAPI機能の使い方」を参照してください。

インターネット／イントラネット環境下の通信では，WebブラウザとWebサーバが必要です。

＜この項の構成＞

(1)　クライアント（Webブラウザ）の構成

(2)　Webサーバシステムの構成

(3)　TP1/LiNKの構成

(1)　クライアント（Webブラウザ）の構成

Webブラウザは，Webサーバのホームページを開いて，実行する業務を指定します。Webブラウザ以外のアプリケーションソフトは不要なので，クライアントの負担を軽くできます。

(2)　Webサーバシステムの構成

サーバになるTP1/LiNKと通信する場合は，リモートプロシジャコールを使用してください。

TP1/Webは，Webサーバのホームページで受信した情報をリモートプロシジャコールの形式にして，TP1/Client/WまたはTP1/Client/PのAPIでTP1/LiNKにサービスを要求します。応答が返ってくると，TP1/Webはその内容に従って，HTMLファイルを更新します。また，TP1/Webのアプリケーションプログラムを作成して，Webブラウザと対話的に情報をやり取りできます。さらにTP1/WebのサーバはTP1/Client/Jのクライアントと通信できます。

TP1/Webのシステムの前提は，Windowsのシステムで使用する場合はTP1/Client/P，UNIXのシステムで使用する場合にはTP1/Client/Wです。

(3)　TP1/LiNKの構成

TP1/LiNKは，Webサーバシステムから受信した処理を実行します。

TP1/Webを使ったWebサーバシステムと通信するときは，TP1/LiNKのシステムに前提となる製品はありません。

インターネット／イントラネットを使った通信を次の図に示します。

図1-9　インターネット／イントラネットを使った通信

1.3.4　OpenTP1（TP1/Server Base）と連携したクライアント／サーバシステム

分散トランザクション処理機能OpenTP1（TP1/Server Base）と連携したクライアント／サーバシステムを構築できます。TP1/LiNKからTP1/Server Baseで構築した基幹業務システムへサービスを要求する通信です。TP1/LiNKのシステムがクライアント，TP1/Server Baseのシステムがサーバとなります。また，TP1/Server BaseのシステムからTP1/LiNKのシステムにサービスを要求することもできます。

TP1/LiNKとTP1/Server Baseの通信では，通信プロトコルにTCP/IPを使います。また，リモートAPI機能を使うとインターネット／イントラネットを経由して通信できます。リモートAPI機能については，「5.5　リモートAPI機能の使い方」を参照してください。

＜この項の構成＞

(1)　TP1/LiNKの構成

(2)　TP1/Server Baseの構成

(1)　TP1/LiNKの構成

TP1/LiNKのアプリケーションでは，次に示す3種類の通信方法を選べます。

リモートプロシジャコール

メッセージ送受信（TP1/Messagingが必要）

メッセージキューイング機能（TP1/Message Queue※が必要）

注※

TP1/LiNKのVersion 7に対応するTP1/Message Queueは，現時点では未発行です。発行時期をご確認ください。

(2)　TP1/Server Baseの構成

TP1/Server Baseで使えるデータベース（DAM，TAM，ISAM，ORACLEなど）にアクセスできます。さらに，TP1/Server Baseのシステムから，ほかのシステムと通信できます。

OpenTP1（TP1/Server Base）と連携したクライアント／サーバシステム（リモートプロシジャコールの例）を次の図に示します。

図1-10　OpenTP1（TP1/Server Base）と連携したクライアント／サーバシステム（リモートプロシジャコールの例）

1.3.5　J2EEで動作するアプリケーションサーバと連携したシステム

J2EEで動作するアプリケーションサーバは，J2EE Connector Architectureに準拠したuCosminexus TP1 ConnectorまたはCosminexus TP1 Connectorを経由してトランザクションを制御します。TP1/LiNKでは，J2EEで動作するアプリケーションサーバからのトランザクション要求をrapサーバで受信し，XAリソースサービスを使用してトランザクション処理を行います。

J2EEで動作するアプリケーションサーバと連携する場合のトランザクション制御の流れを次の図に示します。

図1-11　J2EEで動作するアプリケーションサーバと連携する場合のトランザクション制御

1.3.6　.NET Frameworkと連携したシステム

MSDTC連携機能によって，.NET FrameworkアプリケーションとTP1/LiNK上のリソースとの間でトランザクション連携する形態です。

MSDTC連携機能による.NET Frameworkアプリケーションとの連携システムを次の図に示します。

図1-12　MSDTC連携機能による.NET Frameworkアプリケーションとの連携システム

＜この項の構成＞

(1)　TP1/LiNKの構成

(2)　.NET Frameworkアプリケーションサーバシステムの構成

(1)　TP1/LiNKの構成

TP1/LiNKは，.NET Frameworkアプリケーションからのトランザクション指示をrapサーバで受信し，XAリソースサービスを使用してトランザクション処理を行います。

(2)　.NET Frameworkアプリケーションサーバシステムの構成

.NET Frameworkアプリケーションは，MSDTCを使用してトランザクションを制御し，Connector .NETを経由してOpenTP1へのトランザクション指示をします。

1.3.7　メインフレームと連携した通信

TP1/LiNKは，次に示す機能を使ってメインフレーム（XDMなど）と通信できます。

TP1/Messaging（メッセージ送受信）

TP1/Message Queue※（メッセージキューイング機能）

注※

TP1/LiNKのVersion 7に対応するTP1/Message Queueは，現時点では未発行です。発行時期をご確認ください。

TP1/LiNKとメインフレームとの通信では，通信プロトコルにTCP/IPを使います。

＜この項の構成＞

(1)　TP1/LiNKの構成

(2)　メインフレームの構成

(1)　TP1/LiNKの構成

TP1/LiNKのアプリケーションは，次に示す2種類の通信方法を選べます。

メッセージ送受信（TP1/Messagingが必要）

メッセージキューイング機能（TP1/Message Queueが必要。現時点では未発行）

(2)　メインフレームの構成

メインフレームで管理する各種データベースにアクセスできます。メッセージキューイング機能で通信する場合は，メインフレームにキューマネジャ（メッセージキューイング機能を管理する製品）が必要です。

メインフレームと連携した通信を次の図に示します。

図1-13　メインフレームと連携した通信

1.4　TP1/LiNKで使用できるアプリケーション

TP1/LiNKを使うときには，業務を処理するプログラム（アプリケーションプログラム）を作成します。プログラムを作成するときには，C言語またはCOBOL言語でコーディングできます。アプリケーションプログラムの作成方法については，マニュアル「OpenTP1 プログラム作成の手引」を参照してください。

また，TP1/Extension for .NET Frameworkを利用すると，次に示すプログラム言語でコーディングできます。

C#

J#

Visual Basic .NET

COBOL言語

TP1/Extension for .NET Frameworkを利用したアプリケーションプログラムの作成方法については，マニュアル「TP1/Extension for .NET Framework 使用の手引」を参照してください。

＜この節の構成＞

1.4.1　リモートプロシジャコールの概要

1.4.2　アプリケーションプログラムの種類

1.4.3　サーバになるアプリケーションプログラム（SPP）

1.4.4　クライアントのアプリケーションプログラム（SUP，CUP）

1.4.5　アプリケーションプログラムに付ける名称

1.4.6　アプリケーションの実行

1.4.1　リモートプロシジャコールの概要

クライアント／サーバ形態の通信では，クライアントから要求されて実行する処理をサービスといいます。アプリケーションプログラムのサービスとは，データベースにアクセスしたり，画面にデータを表示したりする処理のことをいいます。

クライアントからTP1/LiNKのアプリケーションプログラムへサービスを要求するときは，リモートプロシジャコールを使います。リモートプロシジャコールを使って通信すると，業務をマシンごとに分散して処理したり，分散したマシンの処理を一つの業務にしたりできます。

リモートプロシジャコールで通信するすべてのシステム名は，TP1/LiNKの環境設定で「システムを構成するノード」として指定しておきます。この指定があれば，リモートプロシジャコールを実行するときに通信相手システムのネットワーク上の位置を意識しなくても済みます。

リモートプロシジャコールを使ったアプリケーションプログラムの通信を次の図に示します。

図1-14　リモートプロシジャコールを使ったアプリケーションプログラムの通信

リモートプロシジャコールの形態

TP1/LiNKのリモートプロシジャコールには，次に示す3種類があります。

同期応答型RPC
一般的なリモートプロシジャコールで，サービスを要求したクライアントがサーバの応答を待っている形態です。

非同期応答型RPC
サービスを要求したクライアントが，サーバの応答を待たないで処理を続ける形態です。応答を受け取るときは，専用の関数を呼び出します。複数のサーバにサービスを要求して，早く返ってきた応答から受け取るような処理に適用できます。

非応答型RPC
サービスを要求したクライアントが，応答を受け取らない形態です。クライアントがサーバの処理結果を受け取る必要がない通信の場合に使います。

リモートプロシジャコールの形態は，サービスを要求する関数（dc_rpc_call関数）の引数に指定します。

リモートプロシジャコールの形態を次の図に示します。

図1-15　リモートプロシジャコールの形態

1.4.2　アプリケーションプログラムの種類

TP1/LiNKのアプリケーションプログラムには，次の2種類があります。

サービスを提供するプログラム（SPP）
要求されたサービスを実行するアプリケーションプログラムです。SPPは，クライアントからサービスを要求されたときに起動します。

クライアントの役割だけをするプログラム（SUP）
サービスを要求するだけで，サービスを提供しないアプリケーションプログラムです。SUPは，サーバのオペレータが起動します。

OpenTP1クライアント機能（TP1/Client）のアプリケーションプログラムのことは，クライアントユーザプログラム（CUP）といいます。

アプリケーションプログラムの概要を次の図に示します。

図1-16　アプリケーションプログラムの概要

1.4.3　サーバになるアプリケーションプログラム（SPP）

サーバになるアプリケーションプログラム（SPP）について説明します。

＜この項の構成＞

(1)　SPPのプログラムの構成

(2)　SPPの作成手順

(1)　SPPのプログラムの構成

SPPのプログラムは，メインのプログラムと，サービスを提供するプログラムから構成されます。メインのプログラムは，SPPの開始と終了を宣言したり，サービスを提供するプログラムへサービス要求を振り分ける宣言をしたりします。サービスを提供するプログラムは，要求されたサービスの処理を実行します。

メインのプログラムをC言語の場合はメイン関数，COBOL言語の場合はメインプログラムといいます。

サービスを提供するプログラムをC言語の場合はサービス関数，COBOL言語の場合はサービスプログラムといいます。

SPPのプログラムの構成を次の図に示します。

図1-17　SPPのプログラムの構成（スタブを使う場合）

サービス関数動的ローディング機能を使う場合，あらかじめサービス関数をUAP共用ライブラリとしてまとめておきます。SPP実行時は，UAP共用ライブラリからSPP起動時にサービス関数を取得して実行します。

サービス関数動的ローディング機能を使用したSPPプログラムの構成を次の図に示します。

図1-18　SPPのプログラムの構成（サービス関数動的ローディング機能を使う場合）

(2)　SPPの作成手順

SPPの作成手順は，「スタブを使用するSPP」と「サービス関数動的ローディング機能を使用するSPP」によって異なります。

(a)　SPPの作成手順（スタブ）

スタブを使用してアプリケーションプログラムをSPPの実行形式ファイルにする手順について説明します。スタブとは，要求されたサービスをどのサービス関数（サービスプログラム）で処理するかを管理するライブラリです。

スタブを生成するには，SPPの実行環境を設定します。SPPの実行環境を設定するときに，スタブのソースファイルが自動的に生成されます。生成したスタブのソースファイルは，Cコンパイラでオブジェクトファイルにします。そして，SPPのオブジェクトファイルにリンケージさせます。

スタブの詳細については，マニュアル「OpenTP1 プログラム作成の手引」を参照してください。

スタブを使用したSPPの作成手順を次の図に示します。

図1-19　SPPの作成手順（スタブを使う場合）

(b)　SPPの作成手順（サービス関数動的ローディング機能）

サービス関数動的ローディング機能を使用してアプリケーションプログラムをSPPの実行形式ファイルにする手順について説明します。

サービス関数動的ローディング機能を使用すると，SPPの各サービスの入り口点（エントリポイント）を指定したUAPライブラリからサービス関数を取得するため，スタブは不要です。その代わりに，サービス関数を共用ライブラリ化してUAP共用ライブラリ※を作成する必要があります。これによって，UAP共用ライブラリからサービス関数を取得できるとともに，複数のサービスをメイン関数にまとめる作業は不要になります。

サービス関数動的ローディング機能の詳細については，マニュアル「OpenTP1 解説」を参照してください。

注※

UAP共用ライブラリとは，UAPのソースファイルを翻訳（コンパイル）して作成したUAPオブジェクトファイルを結合（リンケージ）して，共用ライブラリとしてまとめたものです。

サービス関数動的ローディング機能を使用したSPPの作成手順を次の図に示します。

図1-20　SPPの作成手順（サービス関数動的ローディング機能を使う場合）

1.4.4　クライアントのアプリケーションプログラム（SUP，CUP）

SPPへサービスを要求する，クライアントのアプリケーションプログラムについて説明します。

＜この項の構成＞

(1)　サービスを利用するプログラム（SUP）

(2)　クライアントユーザプログラム（CUP）

(1)　サービスを利用するプログラム（SUP）

TP1/LiNKのサーバで稼働する，クライアントのアプリケーションプログラムです。SUPには，サービス関数は作成できません。サーバからTP1/LiNKの業務を開始させるときや，バッチ処理をするときにSUPを作成します。

(2)　クライアントユーザプログラム（CUP）

TP1/Clientで稼働する，クライアントのアプリケーションプログラムです。TP1/Client/WまたはTP1/Client/Pの場合は，アプリケーションプログラムをCUPといいます。また，TP1/Client/Jの場合はJavaアプレット，Javaアプリケーション，またはJavaサーブレットをCUPといいます。

CUPは，TP1/Client/WもしくはTP1/Client/Pのライブラリ関数，またはTP1/Client/Jのクラスライブラリを使って，リモートプロシジャコールで通信します。

SUPの作成手順を次の図に示します。CUPについては，マニュアル「OpenTP1 クライアント使用の手引 TP1/Client/W，TP1/Client/P編」，またはマニュアル「OpenTP1 クライアント使用の手引 TP1/Client/J編」を参照してください。

図1-21　SUPの作成手順

1.4.5　アプリケーションプログラムに付ける名称

アプリケーションプログラムの実行環境を設定するときには，次に示す名称を付けておきます。

サービスグループ名，サービス名
リモートプロシジャコールで使う名称です。

ユーザサーバ名
サーバのオペレータが，コマンドでアプリケーションプログラムを操作するときに使う名称です。

＜この項の構成＞

(1)　サービスグループ名とサービス名

(2)　ユーザサーバ名

(1)　サービスグループ名とサービス名

TP1/LiNKのリモートプロシジャコールでは，SPPに付けたサービスグループ名とサービス名を使ってサービスを要求します。

サービスグループ名とは，アプリケーションプログラムの実行形式ファイルをサービスの集合と見なして付ける名称です。SPPの実行形式ファイル名と対応させて，サービスグループ名を付けます。

サービス名とは，リモートプロシジャコールで要求するサービスのことです。サービス名にはSPPのサービス関数（サービスプログラム）を対応づけます。

サービスグループ名とサービス名は，SPPにだけ必要です。SUPには，サービスグループ名とサービス名は付けません。

(2)　ユーザサーバ名

TP1/LiNKのアプリケーションプログラム（SPP，SUP）は，各種のサービスを提供することから，ユーザサーバといいます。アプリケーションの環境を設定するときには，ユーザサーバ名をプログラムの実行形式ファイル名と対応させて設定します。ユーザサーバ名には，1～8文字の識別子（先頭がアルファベットで始まる英数字）という条件があります。

以降，このマニュアルでは，TP1/LiNKで使うアプリケーションプログラムをユーザサーバと表記します。

1.4.6　アプリケーションの実行

ユーザサーバの開始と終了，およびプロセスの概要について説明します。

＜この項の構成＞

(1)　ユーザサーバの開始と終了

(2)　プロセスの設定

(3)　プロセスの負荷分散（マルチサーバ）

(4)　プロセスの種類

(5)　スケジュールの優先度

(6)　ユーザサーバを閉塞する場合

(7)　スケジュールサービスのポート番号を指定するとき

(8)　サービス単位のスケジュール制御

(1)　ユーザサーバの開始と終了

ユーザサーバは，TP1/LiNKの開始と終了に合わせて開始，終了します。また，TP1/LiNKの稼働中にオペレータの操作でユーザサーバを開始させたり終了させたりすることもできます。

(2)　プロセスの設定

ユーザサーバを実行するときには，OSの作業領域を使います。この作業領域の処理をプロセスといいます。TP1/LiNKでは，一つのユーザサーバを複数のプロセスで実行させて処理性能を上げられます。さらに，プロセスが増え過ぎてマシンのメモリを圧迫しないように，使うプロセスの総数を指定できます。

プロセスを制御する前提条件

プロセスを制御するには，ユーザサーバを開始しておくことが前提です。ユーザサーバをTP1/LiNKと一緒に開始しておくか，TP1/LiNKの稼働中に開始しておいてください。

(3)　プロセスの負荷分散（マルチサーバ）

一つのユーザサーバに対して複数のクライアントからサービスを要求されても，ユーザサーバの処理を複数のプロセスで並行して実行できます。このようなユーザサーバをマルチサーバといいます。

マルチサーバとして実行できるのは，SPPとして作成したユーザサーバです。SUPはマルチサーバの指定はできません。

マルチサーバの概要を次の図に示します。

図1-22　マルチサーバの概要

(4)　プロセスの種類

ユーザサーバは，TP1/LiNKの稼働中にプロセスを確保しておくことも，必要に応じて動的に確保することもできます。TP1/LiNKの稼働中に確保されているかどうかで，プロセスを常駐プロセスと非常駐プロセスに分けています。

常駐プロセスと非常駐プロセスを指定できるのは，SPPとして作成したユーザサーバです。SUPのプロセスは常駐プロセスが一つだけです。

(a)　常駐プロセス

ユーザサーバを開始したときに，マシンのメモリ領域に確保しているプロセスです。常駐プロセスを使ったユーザサーバの処理は，非常駐プロセスに比べて速くなります。

(b)　非常駐プロセス

ユーザサーバを開始したときには，メモリ領域に確保されていないプロセスです。指定した数だけサービス領域がたまってから起動されます。非常駐プロセスを使ったユーザサーバでは，必要なときにだけ起動するので，システムのメモリ領域を効率良く使えます。システムのメモリ領域に空きがない場合に非常駐プロセスを起動させるときは，稼働中の非常駐プロセスが終了してから起動されます。

SPPには，常駐プロセスと非常駐プロセスを幾つずつ使うかを設定します。また，非常駐プロセスを起動する目安となるサービスの滞留数も，ユーザサーバごとに設定します。

非常駐プロセスをいつ起動するかは，サービスの滞留数に指定する値で決まります。（サービスの滞留数に指定した値×起動中のプロセス）の数を超えてサービス要求が滞留したときに，TP1/LiNKは非常駐プロセスを起動します。スケジュールキューに滞留しているサービス要求の数が（サービスの滞留数に指定した値×起動中のプロセス）の数以下になると，TP1/LiNKは非常駐プロセスを終了します。

ユーザサーバで使うプロセスの概要を次の図に示します。

図1-23　ユーザサーバで使うプロセスの概要

(5)　スケジュールの優先度

SPPとして作成したユーザサーバには，スケジュールの優先度を付けておきます。優先度が高いユーザサーバの非常駐プロセスは，ほかの非常駐プロセスに比べて優先的にスケジュールされます。

スケジュールの優先度の概要を次の図に示します。

図1-24　スケジュールの優先度の概要

(6)　ユーザサーバを閉塞する場合

ユーザサーバ（SPP）が異常終了すると，TP1/LiNKはそのユーザサーバのスケジュールをいったん中止して，サービス要求を受け付けないようにします。これをユーザサーバの閉塞といいます。TP1/LiNKは異常終了したユーザサーバを閉塞することで，クライアントからのサービス要求に意図的にエラーを返して，不要な再実行や応答待ちのタイムアウトを防ぐようにしています。

閉塞の対象になるユーザサーバはSPPです。SUPは，閉塞の対象になりません。業務の都合でユーザサーバのスケジュールをいったん中止したい場合は，TP1/LiNKの稼働中にコマンドを実行して意図的にユーザサーバを閉塞することもできます。

異常終了した原因に対処したあとで再びスケジュールを開始するときは，閉塞を解除する操作をします。閉塞を解除されたユーザサーバは，再びサービス要求の受け付けを開始します。

(7)　スケジュールサービスのポート番号を指定するとき

通常のリモートプロシジャコールの通信では，TP1/LiNKの環境設定でシステムを構成するノードを指定しておきます。ただし，ネットワーク構成上の都合でTP1/LiNKのシステムを，システムを構成するノードに指定しないときは，このノードの「スケジュールサービスのポート番号」を指定してリモートプロシジャコールを実行できます。スケジュールサービスのポート番号を指定しておくと，クライアントとサーバを直接ポート番号で関連付けられるため，システムを構成するノードに指定するよりも高速に通信できることがあります。

(a)　TP1/LiNKがクライアントになるときの指定

［システム環境設定］ウィンドウの［ユーザサービス環境(M)...］ボタンをクリックして，［ユーザサービス環境設定］ダイアログボックスを開きます。

［ユーザサービス環境設定］ダイアログボックスには，通信相手システムのホスト名とポート番号を指定します。［送信先］欄は［スケジュールサービス(S)］オプションボタンをオンにします。

(b)　TP1/LiNKがサーバになるときの指定

［システム環境設定］ウィンドウの［スケジュールサービスのポート番号］欄の［指定する］オプションボタンをオンにして，自システムのスケジュールサービスのポート番号を指定します。

(8)　サービス単位のスケジュール制御

SPPのスケジュールキューに対してサービス単位のスケジュール制御ができます。指定できるスケジュール制御を次に示します。

サービス単位で同時実行可能なサービス数を指定する。

サービス単位でキューイング可能なサービス要求数を指定する。

サービス単位でキューイング可能なサービス要求データの格納プール長を指定する。

サービス単位のスケジュール制御を行う場合は，［SPP詳細設定］ダイアログボックスの［サービス関数］タブの［サービス単位にスケジュールサービスの動作を指定］欄にある各項目を指定してください。

サービス単位のスケジュール制御の詳細については，マニュアル「OpenTP1 解説」を参照してください。

(a)　サービス単位で同時実行可能なサービス数を指定する

サービス単位で同時実行可能なサービス数を指定できます。

同時実行可能なサービス数が指定値に達した場合，同時実行可能なサービス数に達していないサービスへのサービス要求を，登録順およびスケジュールの優先度に関係なくスケジュールします。

スケジュールキューに登録されているすべてのサービス要求が，同時実行可能なサービス数に達しているサービスへのサービス要求であった場合，実行中のサービス処理が終了するのを待ち合わせます。

(b)　サービス単位でキューイング可能なサービス要求数を指定する

サービス単位でスケジュールキューにキューイング可能なサービス要求数を指定できます。

キューイング可能なサービス要求数が指定値に達している場合，スケジュールキューへは登録しないで，ほかのTP1/LiNKノードへの再スケジュールを試みます。

(c)　サービス単位でキューイング可能なサービス要求データの格納プール長を指定する

サービス単位でキューイング可能なサービス要求データの格納プール長を指定できます。

該当サービスへのサービス要求データの格納プール長が指定値に達している場合，スケジュールキューへは登録しないで，ほかのTP1/LiNKノードへの再スケジュールを試みます。

2.　TP1/LiNKのセットアップ

この章では，TP1/LiNKのセットアップ手順について説明します。

＜この章の構成＞

2.1　セットアップの手順

2.2　TP1/LiNKのフォルダの構成

2.3　セットアップしたときの初期値

2.1　セットアップの手順

TP1/LiNKのセットアップ手順について説明します。TP1/LiNKを開始するまでに準備する内容を次の図に示します。

図2-1　TP1/LiNKを開始するまでに準備する内容

＜この節の構成＞

2.1.1　セットアップの準備

2.1.2　TP1/LiNKのセットアップ

2.1.3　リソースマネジャの接続

2.1.4　TP1/LiNKをセットアップし直す方法

2.1.5　アプリケーションの準備

2.1.6　TP1/LiNKの実行環境の確認

2.1.7　TP1/LiNKをWindowsから削除する方法

2.1.8　マルチOpenTP1のセットアップと削除

2.1.1　セットアップの準備

TP1/LiNKをセットアップする前に，準備しておく内容について説明します。

＜この項の構成＞

(1)　マシンの環境を確認します

(2)　OpenTP1管理者を決定します

(3)　TP1/Client/WまたはTP1/Client/Pからのサービス要求を認証するログイン名を登録します

(1)　マシンの環境を確認します

TP1/LiNKをWindowsにセットアップする前に，使うマシンの環境を確認してください。確認する項目を次に説明します。

(a)　ディスク容量

TP1/LiNKをセットアップする前に，ディスクの空き容量が十分かどうかをWindowsエクスプローラで確認してください。

(b)　ネットワーク環境

TP1/LiNKでは，TCP/IPのネットワーク環境が組み込まれていることが前提です。ネットワーク環境にTCP/IPを組み込んであることを確認してください。組み込んでいない場合は，TCP/IPの環境をセットアップしてください。

TCP/IPの環境を組み込む方法については，Windowsのマニュアルのネットワーク環境に関する記述を参照してください。

(c)　ファイルシステム

Windowsのファイルシステムには，FATを使ってもNTFSを使ってもかまいません。ただし，FATを使うと，システム管理者以外のユーザからもファイルシステムにアクセスできるため，TP1/LiNKのセキュリティを保証できません。FATとNTFSのどちらを使うかは，業務内容に応じて選んでください。

FAT，NTFSの使い方については，Windowsのマニュアルを参照してください。

(d)　Microsoft Visual C++の環境変数

TP1/LiNKにリソースマネジャを接続する場合は，Microsoft Visual C++が組み込まれていることが前提です。Microsoft Visual C++を組み込んであることと，Microsoft Visual C++を実行するための環境変数（Path，Lib，Include）が設定してあることを確認してください。

Visual Studioを使用する場合，コンパイルおよびリンケージを実行するための環境変数を［コントロールパネル］－［システム］でシステム環境変数に追加する必要があります。

追加する環境変数の詳細については，Visual Studioで提供されているコマンドラインビルド用環境変数設定コマンド（vcvars32.bat）を参考にしてください。

Visual Studioを使用する場合に追加する環境変数値の例を次の表に示します。

環境変数名
追加する環境変数値

Path

Visual Studio 2005を使用する場合

%NETDIR%¥Common7¥IDE

%NETDIR%¥VC¥BIN

Visual Studio 2008を使用する場合

%NETDIR%¥Common7¥IDE

%NETDIR%¥VC¥BIN

%SDKDIR%¥Windows¥v6.0A¥bin

Visual Studio 2010を使用する場合

%NETDIR%¥Common7¥IDE

%NETDIR%¥VC¥BIN

%SDKDIR%¥Windows¥v7.0A¥bin

Visual Studio 2012を使用する場合

%NETDIR%¥Common7¥IDE

%NETDIR%¥VC¥bin

%SDKDIR%¥bin¥x86

Include

Visual Studio 2005を使用する場合

%NETDIR%¥VC¥INCLUDE

%NETDIR%¥VC¥PlatformSDK¥INCLUDE

Visual Studio 2008を使用する場合

%NETDIR%¥VC¥INCLUDE

%SDKDIR%¥Windows¥v6.0A¥Include

Visual Studio 2010を使用する場合

%NETDIR%¥VC¥INCLUDE

%SDKDIR%¥Windows¥v7.0A¥Include

Visual Studio 2012を使用する場合

%NETDIR%¥VC¥include

%SDKDIR%¥include¥um

Lib

Visual Studio 2005を使用する場合

%NETDIR%¥VC¥LIB

%NETDIR%¥VC¥PlatformSDK¥LIB

Visual Studio 2008を使用する場合

%NETDIR%¥VC¥LIB

%SDKDIR%¥Windows¥v6.0A¥lib

Visual Studio 2010を使用する場合

%NETDIR%¥VC¥LIB

%SDKDIR%¥Windows¥v7.0A¥lib

Visual Studio 2012を使用する場合

%NETDIR%¥VC¥lib

%SDKDIR%¥lib¥win8¥um¥x86

注

%NETDIR%はVisual Studioのインストールフォルダです。

%SDKDIR%はMicrosoft SDKsのインストールフォルダです。

なお，これらの環境変数を設定しないでTP1/LiNKにリソースマネジャを接続する場合は，Visual Studioが提供するコマンドプロンプトから次に示す「リソースマネジャ接続」ショートカットキーリンク先を実行してください。

%DCDIR%¥bin¥DCXAOPEN.EXE %DCDIR%

(e)　TP1/LiNKのインストール先フォルダ名の制限

TP1/LiNKのインストール先のフォルダ名には，次に示す制限があります。

フォルダ名の英字を大文字と小文字とで区別しません。

フォルダ名は，すべて8文字以内です。空白文字は使えません。

パスの最大長は，50文字です。

(2)　OpenTP1管理者を決定します

TP1/LiNKを使うときには，Windowsのユーザマネジャに登録している任意の利用者に，TP1/LiNKを管理したり運用したりする役割を任せます。この役割の利用者をOpenTP1管理者といいます。

(a)　OpenTP1管理者の条件

システム管理者（Administrators）の権限を持つユーザが，OpenTP1管理者になれます。OpenTP1管理者の名称には，制限はありません。

TP1/LiNKのために新しくOpenTP1管理者のユーザアカウントを作るときは，Windowsのユーザマネジャでユーザアカウントを作成してください。このシステム管理者は，Administratorsの権限を持つユーザとしてください。

システム管理者として登録したあと，Windowsにログオンし直してください。

(b)　OpenTP1管理者の決定

システム管理者（Administrators）の権限を持つユーザだけが，TP1/LiNKのセットアッププログラム（setup.exe）を実行できます。

セットアップが完了すると，TP1/LiNKのファイルはシステム管理者以下のユーザがアクセスできないようにWindowsによって保護されます。ただし，ほかのユーザからのアクセスを制限できるのは，ファイルシステムにNTFSを使っているときだけです。ファイルシステムにFATを使っているときは，ほかのユーザからのアクセスを制限できません。

OpenTP1管理者は，TP1/LiNKを使う上で重要な権限を持つユーザとなります。必ずシステム管理者の責任で運用してください。また，システムの機密保護上，ユーザアカウントにはパスワードを必ず設定して，限られた人だけがOpenTP1管理者のユーザアカウントを使えるようにしてください。

(3)　TP1/Client/WまたはTP1/Client/Pからのサービス要求を認証するログイン名を登録します

TP1/Client/WまたはTP1/Client/Pからサービスを要求されたときに，その要求をTP1/LiNKで受け付けるかどうかを判定する機能をユーザ認証機能といいます。TP1/Client/WまたはTP1/Client/Pからのサービス要求を認証するログイン名とパスワード（ユーザアカウント）を，Windowsのユーザマネジャに登録しておくことで，サービス要求を受け付けるかどうかを設定できます。TP1/Client/WまたはTP1/Client/Pのユーザには，特に制限はありません。

ユーザ認証機能については，マニュアル「OpenTP1 クライアント使用の手引 TP1/Client/W，TP1/Client/P編」を参照してください。

TP1/Client/WまたはTP1/Client/Pのユーザ認証機能を使うかどうかは，TP1/LiNKの環境設定で選べます。ユーザ認証機能を使わないように指定すると，どんなログイン名を指定しても，TP1/LiNKに認証されます。ユーザ認証機能を使うかどうかは，［システム環境設定］ウィンドウで指定します。［システム環境設定］ウィンドウについては，「3.1　TP1/LiNKの実行環境の設定」を参照してください。

ユーザ認証機能を使用する場合，TP1/LiNKを動作させるコンピュータまたはドメインのユーザマネジャに登録された，ユーザ名とパスワードで認証されます。ユーザ認証は，Windowsの次に示すユーザアカウントデータベースを使用して実行されます。

TP1/LiNKを実行するコンピュータのユーザアカウントデータベース

TP1/LiNKを実行するコンピュータが属するドメインのユーザアカウントデータベース

TP1/LiNKを実行するコンピュータが属するドメインと信頼関係のあるドメインのユーザアカウントデータベース

TP1/LiNKサービスをユーザアカウントで実行する場合は，TP1/LiNKを実行するユーザアカウントに「オペレーティングシステムの一部として機能」する権利を与えてください。

2.1.2　TP1/LiNKのセットアップ

TP1/LiNKをセットアップする手順について説明します。セットアップに必要な時間の目安は，35分から40分程度です。

ここでは，単体のPCにTP1/LiNKを組み込む場合の手順について説明します。GroupmaxまたはNETM/DMを使ってTP1/LiNKをリモートインストールする場合は，ここで説明する手順は必要ありません。GroupmaxまたはNETM/DMの機能で自動的にTP1/LiNKをセットアップできます。

＜この項の構成＞

(1)　セットアッププログラム（setup.exe）を起動します

(2)　名前と会社名を指定します

(3)　TP1/LiNKを組み込む場所を確認します

(4)　サーバオプションを設定します

(5)　TP1/LiNKのアイコンとショートカットを確認します

(6)　Windowsを再起動します

(7)　TP1/LiNKのコンソールを設定します

(8)　システム環境変数Pathを設定します

(1)　セットアッププログラム（setup.exe）を起動します

OpenTP1管理者のユーザアカウントでマシンを起動してセットアッププログラム（setup.exe）を実行すると，TP1/LiNKのセットアップを開始します。

セットアッププログラムを実行できるのは，システム管理者（Administrators）です。

セットアッププログラムを起動するときは，Windowsエクスプローラ，マイコンピュータ，またはタスクバーを使います。

セットアッププログラムを起動するときは，まずTP1/LiNKの提供媒体（CD-ROMまたはFD）を，CD-ROMドライブまたはフロッピーディスクドライブにセットしてください。

Windowsエクスプローラから起動する手順

Windowsエクスプローラで提供媒体をセットしたドライブを開きます。

setup.exeのアイコンをダブルクリックして，セットアッププログラムを起動します。

マイコンピュータから起動する手順

デスクトップにある［マイコンピュータ］アイコンを開いて，提供媒体をセットしたドライブを開きます。

setup.exeのアイコンをダブルクリックして，セットアッププログラムを起動します。

タスクバーからファイル名を指定して起動する手順

［スタート］－［ファイル名を指定して実行］ダイアログボックスに，提供媒体をセットしたドライブとsetup.exeの文字列を入力します。

［ファイル名を指定して実行］ダイアログボックスの［OK］ボタンをクリックします。

これらのほか，［マイコンピュータ］－［コントロールパネル］フォルダにある［アプリケーションの追加と削除］アイコンでもセットアップできます。

(2)　名前と会社名を指定します

セットアッププログラムを起動すると，［TP1/LiNKセットアップ］ダイアログボックスが表示されます。このダイアログボックスには，次の情報および項目が表示されます。

TP1/LiNKのバージョンおよびリビジョン

TP1/LiNKの形名

コピーライト

名前と会社名を入力するテキストボックス

テキストボックスに，TP1/LiNKをセットアップする利用者の名前と会社名を入力します。名前と会社名は，どちらも省略できません。

入力したあと，［開始(O)］ボタンをクリックします。

(3)　TP1/LiNKを組み込む場所を確認します

名前と会社名を確認し終わると，TP1/LiNKを組み込む場所を確認するダイアログボックスが表示されます。このダイアログボックスには，TP1/LiNKをシステムに組み込むのに必要な空き容量も表示されます。

TP1/LiNKを組み込むフォルダをOpenTP1ホームディレクトリといいます。フォルダ名の初期値として，Windowsを組み込んであるドライブの下に¥OpenTP1という名称が仮定されます（例　WindowsをCドライブに組み込んでいる場合は，C:¥OpenTP1）。このフォルダ名をそのまま使うときは，テキストボックスに値を入力する必要はありません。インストール先のフォルダを変更するときは，テキストボックスにフォルダ名を上書きします。

TP1/LiNKでは，OpenTP1ホームディレクトリをDCDIRという環境変数で管理しています。TP1/LiNKが組み込んであるマシンでは，任意のフォルダからDCDIRと指定して移動すると，TP1/LiNKのフォルダに移れます。以降，このマニュアルでは，OpenTP1ホームディレクトリを%DCDIR%と表記します。

TP1/LiNKを組み込むフォルダを確認したら，［続行(O)］ボタンをクリックしてください。

(4)　サーバオプションを設定します

TP1/LiNKを組み込む場所を確認し終わると，サーバオプションを設定するダイアログボックスが表示されます。

Windowsの起動が完了したあとで，オペレータの操作でTP1/LiNKを起動するときは，［コンピュータブート時にTP1/LiNKを自動起動(A)］チェックボックスをオフにします。Windowsの起動と一緒にTP1/LiNKを起動するときは，［コンピュータブート時にTP1/LiNKを自動起動(A)］チェックボックスをオンにします。

チェックボックスに指定した内容を確認したあと，［続行(O)］ボタンをクリックしてください。

TP1/LiNKを自動起動するかどうかは，セットアップを完了したあとでも変更できます。起動する方法を変更するときは，［コントロールパネル］の［サービス］を使います。

(5)　TP1/LiNKのアイコンとショートカットを確認します

ここまでの作業が正常に完了すると，TP1/LiNKの提供媒体からマシンのハードディスクへ必要なファイルが転送されます。

TP1/LiNKの提供媒体にFDを使うときは，FDを差し替えることを示すダイアログボックスが表示されるので，指示に従ってFDを差し替えてください。

セットアップが終了すると，システムの環境にTP1/LiNKで使う環境変数とレジストリ情報が設定されて，TP1/LiNKのアイコンとショートカットがWindowsに登録されます。そして，TP1/LiNKがWindowsで使えるサービスとして登録されます。

(a)　TP1/LiNKのショートカット

セットアップ終了後のTP1/LiNKのショートカットについて説明します。TP1/LiNKのショートカットのメニューは，［スタート］－［プログラム］－［TP1_LiNK］メニューの下に作成されます。

TP1/LiNK操作時のショートカットの使い方を次に示します。

［スタート］－［プログラム］－［TP1_LiNK］メニューから実行するメニューを選択する。

［TP1_LiNK］メニューフォルダ※をデスクトップにコピーして，必要なときにフォルダを開いてアイコンをダブルクリックする。

注※

［TP1_LiNK］メニューフォルダのパスを次に示します。

Windows Server 2003，Windows XPの場合
%ALLUSERSPROFILE%¥スタート メニュー¥プログラム¥TP1_LiNK

Windows Vista，Windows Server 2008，Windows 7，Windows 8，Windows Server 2012の場合
%USERPROFILE%¥AppData¥Roaming¥Microsoft¥Windows¥Start Menu¥Programs¥TP1_LiNK

TP1/LiNKで使うショートカットのメニューとアイコンの一覧を次の表に示します。以降，このマニュアルでは，TP1/LiNKを操作するアイコンを［スタート］ボタンから操作することを想定して，メニューと表記します。

表2-1　メニューとアイコンの一覧

TP1/LiNKのメニュー
（アイコン）
メニュー（アイコン）を使う場合
リンク先

[図データ]
［RAPサービス環境］メニューまたはアイコンは，リモートAPI機能を使うときに必要なRAPサービスの環境を設定するときに使います。
メニューの使い方については，「3.4　RAPサービスの環境設定」を参照してください。
%DCDIR%¥bin¥DCRAPDEF.EXE %DCDIR%

[図データ]
［TP1_LiNKオペレーション］メニューまたはアイコンは，稼働中のTP1/LiNKを操作するときに使います。
メニューの使い方については，「6.4　TP1/LiNKオペレーション」を参照してください。
%DCDIR%¥bin¥DCOPERA.EXE %DCDIR%

[図データ]
［TP1_LiNKコントロール］メニューまたはアイコンは，TP1/LiNKの開始と終了を操作するときに使います。
メニューの使い方については，「6.1　TP1/LiNKコントロール（TP1/LiNKの開始と終了）」を参照してください。
%DCDIR%¥bin¥DCCNTRL.EXE %DCDIR%

[図データ]
［アプリケーション管理SPP］メニューまたはアイコンは，TP1/LiNKのユーザサーバ（SPP）の実行環境を設定するときや，TP1/LiNKの稼働中にユーザサーバを操作するときに使います。
ユーザサーバの環境設定をするときのメニューの使い方については，「3.2　ユーザサーバの環境設定（SPP）」を参照してください。
ユーザサーバを操作するときのメニューの使い方については，「6.2　アプリケーション管理（SPP）」を参照してください。
%DCDIR%¥bin¥DCSPPDEF.EXE %DCDIR%

[図データ]
［アプリケーション管理SUP］メニューまたはアイコンは，TP1/LiNKのユーザサーバ（SUP）の実行環境を設定するときや，TP1/LiNKの稼働中にユーザサーバを操作するときに使います。
ユーザサーバの環境設定をするときのメニューの使い方については，「3.3　ユーザサーバの環境設定（SUP）」を参照してください。
ユーザサーバを操作するときのメニューの使い方については，「6.3　アプリケーション管理（SUP）」を参照してください。
%DCDIR%¥bin¥DCSUPDEF.EXE %DCDIR%

[図データ]
［システム環境］メニューまたはアイコンは，TP1/LiNKの実行環境を設定するときに使います。
メニューの使い方については，「3.1　TP1/LiNKの実行環境の設定」を参照してください。
%DCDIR%¥bin¥DCSYSDEF.EXE %DCDIR%

[図データ]
［セットアップ］メニューまたはアイコンは，TP1/LiNKを再セットアップするときに使います。
メニューの使い方については，「2.1.4　TP1/LiNKをセットアップし直す方法」を参照してください。
マルチOpenTP1のセットアップでは登録されません。
%DCDIR%¥bin¥SETUP.EXE

[図データ]
［リソースマネジャ接続］メニューまたはアイコンは，TP1/LiNKにリソースマネジャを接続するときに使います。
メニューの使い方については，「2.1.3　リソースマネジャの接続」を参照してください。
%DCDIR%¥bin¥DCXAOPEN.EXE %DCDIR%

[図データ]
［お読みください（LiNK）］メニューまたはアイコンは，TP1/LiNKを使用する際の注意事項などを参照するときに使います。
マルチOpenTP1のセットアップでは登録されません。
%DCDIR%¥READMELK.TXT

注

%DCDIR%は，TP1/LiNKインストールフォルダです。マルチOpenTP1の場合は，マルチOpenTP1セットアップフォルダです。

(6)　Windowsを再起動します

TP1/LiNKをセットアップし終わると，Windowsを再起動するかどうかを確認するダイアログボックスが表示されます。このダイアログボックスには，次の情報および項目が表示されます。

TP1/LiNKのバージョンおよびリビジョン

TP1/LiNKの形名

コピーライト

［はい(Y)］ボタン

［いいえ(N)］ボタン

セットアップ直後にTP1/LiNKを使うときは，［はい(Y)］ボタンをクリックしてWindowsを再起動してください。Windowsを再起動すると都合が悪いときは，［いいえ(N)］ボタンをクリックしてください。

［いいえ(N)］ボタンをクリックした場合は，TP1/LiNKを初めて使う前に必ずWindowsを再起動してください。

(7)　TP1/LiNKのコンソールを設定します

コンソールを作成する指定をすると，TP1/LiNKの操作中に，TP1/LiNKの情報がメッセージとして出力されます。

セットアップ完了時には，TP1/LiNKを起動したときにコンソールを作成しないように初期設定されます。TP1/LiNKのコンソールの設定を変更する場合は，TP1/LiNKの停止中に次の手順に従って操作してください。

(a)　TP1/LiNKのコンソールを使う場合

［スタート］－［プログラム］－［管理ツール］－［サービス］をクリックします。

［サービス］に表示されている候補から，TP1/LiNKを選択します。

右クリックして［プロパティ］を選択します。

［ログオン］タブで［デスクトップとの対話をサービスに許可］チェックボックスをオンにします。

(b)　TP1/LiNKのコンソールを使わない場合

［スタート］－［プログラム］－［管理ツール］－［サービス］をクリックします。

［サービス］に表示されている候補から，TP1/LiNKを選択します。

右クリックして［プロパティ］を選択します。

［ログオン］タブで［デスクトップとの対話をサービスに許可］チェックボックスをオフにします。

注意

TP1/LiNKの実行中にTP1/LiNKのコンソールを閉じないでください。また，コンソール画面でCtrlとCキーまたはCtrlとBreakキーを同時に押さないでください。これらの操作をしたときのTP1/LiNKの動作は保証できません。誤操作を防ぐために，コンソールを閉じないようにするか，TP1/LiNKのコンソールを使わないように設定しておくことをお勧めします。

コンソール画面を表示するようにした場合，コンソール画面に対する操作はしないでください。コンソール画面内のテキストを選択したり，コンソール画面でマウスをクリックしたりするとメッセージ表示が止まります。これによって，メッセージの出力が遅延したり，TP1/LiNKがシステムダウンしたりするおそれがあります。

(8)　システム環境変数Pathを設定します

TP1/LiNKをセットアップすると，システム環境変数に次に示す値が自動的に追加されます。

環境変数名 | 環境変数値
DCDIR | OpenTP1ホームディレクトリ（TP1/LiNKを組み込んだフォルダ名）
DCCONFPATH | %DCDIR%¥conf
TP1_LANG | JAPANESE
Path | TP1/LiNKの実行形式ファイル格納パス（%DCDIR%¥bin）
Lib | TP1/LiNKのライブラリファイル格納パス（%DCDIR%¥lib）
Include | TP1/LiNKのインクルードパス（%DCDIR%¥include）

システム環境変数Pathにネットワークに接続したドライブのパスを設定する場合は，TP1/LiNKの実行形式ファイル格納パスより後ろに記述してください。TP1/LiNKの実行形式ファイル格納パスの前に，ネットワークに接続されたドライブのパスが設定されていると，TP1/LiNK起動時にアプリケーションの初期化エラーが発生し，TP1/LiNKを起動できないおそれがあります。

2.1.3　リソースマネジャの接続

TP1/LiNKのシステムにリソースマネジャを接続する手順について説明します。TP1/LiNKに接続できるOpenTP1のリソースマネジャを次に示します。

TP1/Messaging

TP1/Message Queue※

注※

TP1/LiNKのVersion 7に対応するTP1/Message Queueは，現時点では未発行です。発行時期をご確認ください。

これらのほかに，次に示すOpenTP1以外のリソースマネジャもTP1/LiNKに接続できます。

Microsoft SQL Server

HiRDB

Oracle

OpenTP1以外のリソースマネジャを接続した場合，トランザクションサービスプロセスがリソースマネジャのDLLを使用するため，「3.1　TP1/LiNKの実行環境の設定」の［システム環境設定］ウィンドウの［サーチパス］欄に，リソースマネジャのDLLがあるパス名を指定してください。

また，OpenTP1以外のリソースマネジャのリソースマネジャの登録，Open，Close文字列の指定，環境変数の設定，UAPのコンパイルとリンケージの詳細については，「4.1　OpenTP1以外のリソースマネジャ連携時の実行環境設定」もあわせて参照してください。

リソースマネジャを接続するときは，［スタート］－［プログラム］－［TP1_LiNK］－［リソースマネジャ接続］メニューを選択します。

［リソースマネジャ接続］メニューを選択すると，［リソースマネジャ］ウィンドウが表示されます。

図2-2　［リソースマネジャ］ウィンドウ

メニューバーのコマンド

［リソースマネジャ］ウィンドウのメニューについて説明します。

［ファイル(F)］メニュー

［ファイル(F)］メニューには，次に示すコマンドがあります。

［終了(X)］：［リソースマネジャ］ウィンドウを終了します。

［ヘルプ(H)］メニュー

バージョン情報を示すヘルプを示します。［ヘルプ(H)］メニューについては，「6.5　ヘルプの使い方」を参照してください。

ボタンの使い方

次に示すボタンは，［リソースマネジャ一覧(R)］リストボックスに表示されているリソースマネジャを選択してからクリックしてください。

［削除(D)］ボタン

［Open，Close文字列(O)...］ボタン

［追加(A)...］ボタン

リソースマネジャと接続する［リソースマネジャ接続］ダイアログボックスを開きます。

［削除(D)］ボタン

指定したリソースマネジャとの接続を解除します。

［オブジェクト作成(G)...］ボタン

トランザクション制御用オブジェクトを作成する［オブジェクト作成］ダイアログボックスを開きます。

［Open，Close文字列(O)...］ボタン

［リソースマネジャ一覧(R)］リストボックスにあるリソースマネジャのOpen，Close文字列を再設定する［OPEN，CLOSE文字列一覧］ダイアログボックスを開きます。

［オプション(P)...］ボタン

トランザクションサービスの環境設定，リソースマネジャオープンエラー時の設定，およびHiRDBのプリペア最適化／コミット最適化を抑止するかどうかを設定する［オプション］ダイアログボックスを開きます。

［終了(C)］ボタン

［リソースマネジャ］ウィンドウを終了します。

ウィンドウの内容

［リソースマネジャ一覧(R)］

TP1/LiNKに接続してあるリソースマネジャの一覧をリストボックスに表示します。このリストボックスにリソースマネジャを追加するときは，［追加(A)...］ボタンをクリックして［リソースマネジャ接続］ダイアログボックスを開いてください。

なお，図2-2ではリソースマネジャとしてTP1/Message Queueが表示されていますが，TP1/LiNKのVersion 7に対応するTP1/Message Queueは，現時点では未発行です。発行時期をご確認ください。

＜この項の構成＞

(1)　リソースマネジャの接続

(2)　リソースマネジャのXA関連オブジェクトの設定

(3)　複数のOpen，Close文字列の設定

(4)　Open，Close文字列の指定

(5)　トランザクション制御用オブジェクトファイルの作成

(6)　トランザクションサービスの環境変数の設定

(7)　TP1/LiNKを実行環境だけで運用する方法

(1)　リソースマネジャの接続

TP1/LiNKとリソースマネジャを接続する方法について説明します。

TP1/LiNKとリソースマネジャを接続する場合は，［リソースマネジャ］ウィンドウの［追加(A)...］ボタンをクリックします。ボタンをクリックすると，［リソースマネジャ接続］ダイアログボックスが表示されます。

図2-3　［リソースマネジャ接続］ダイアログボックス

ボタンの使い方

［接続(O)］ボタン

指定したリソースマネジャをTP1/LiNKのシステムに接続します。［接続可能なリソースマネジャ(R)］リストボックスにある項目を選択してから（複数可）クリックしてください。

OpenTP1以外のリソースマネジャを選択して［接続(O)］ボタンをクリックすると，［リソースマネジャのXA関連オブジェクト］ダイアログボックスが表示されます。

［オブジェクト作成(G)...］ボタン

トランザクション制御用オブジェクトを作成する［オブジェクト作成］ダイアログボックスを開きます。

［終了(C)］ボタン

［リソースマネジャ接続］ダイアログボックスを終了します。

ダイアログボックスの内容

［接続可能なリソースマネジャ(R)］

TP1/LiNKのシステムに組み込んで，TP1/LiNKに接続していないリソースマネジャをリストボックスに表示します。リソースマネジャをTP1/LiNKに接続するときは，このリストボックスに表示しているリソースマネジャを選択してから［接続(O)］ボタンをクリックします。

なお，図2-3ではリソースマネジャとしてTP1/Message Queueが表示されていますが，TP1/LiNKのVersion 7に対応するTP1/Message Queueは，現時点では未発行です。発行時期をご確認ください。

(2)　リソースマネジャのXA関連オブジェクトの設定

OpenTP1以外のリソースマネジャを接続するときは，リソースマネジャのXA関連オブジェクトを指定する必要があります。［リソースマネジャ接続］ダイアログボックスの［接続可能なリソースマネジャ(R)］リストボックスからOpenTP1以外のリソースマネジャ名を選択して［接続(O)］ボタンをクリックすると，［リソースマネジャのXA関連オブジェクト］ダイアログボックスが表示されます。ここではMicrosoft SQL Serverの例を示します。

図2-4　［リソースマネジャのXA関連オブジェクト］ダイアログボックス

［リソースマネジャのXA関連オブジェクト］ダイアログボックスは，OpenTP1以外のリソースマネジャ（Microsoft SQL Server，HiRDB，Oracle）と接続する場合にだけ表示されます。OpenTP1のリソースマネジャ（TP1/Messaging，TP1/Message Queue※）と接続するときは，このダイアログボックスは表示されません。

注※

TP1/LiNKのVersion 7に対応するTP1/Message Queueは，現時点では未発行です。発行時期をご確認ください。

ボタンの使い方

［OK］ボタン

［リソースマネジャのXA関連オブジェクト］ダイアログボックスに指定したファイル名を使って，リソースマネジャと接続を開始します。

［キャンセル］ボタン

何もしないで，［リソースマネジャのXA関連オブジェクト］ダイアログボックスを終了します。

ダイアログボックスに設定する内容

次に示す項目には，接続するリソースマネジャによって固有の値を設定します。指定する値については，接続するリソースマネジャのマニュアルを参照してください。

［...が提供するXA関連オブジェクト（ライブラリ）ファイル名称(X)］　　～＜1～256文字の記号名称＞

接続するリソースマネジャ（...の部分に表示）固有のファイル名称を完全パス名で指定します。ファイルが複数あるときは，空白（半角スペース）で区切って指定してください。パス名やファイル名に空白（半角スペース）や9文字以上の名称を使っている場合は，MS-DOSファイル名で指定してください。

(3)　複数のOpen，Close文字列の設定

リソースマネジャがMicrosoft SQL ServerまたはOracleの場合は，［リソースマネジャのXA関連オブジェクト］ダイアログボックスの指定を完了して［OK］ボタンをクリックすると，［OPEN，CLOSE文字列一覧］ダイアログボックスが表示されます。

図2-5　［OPEN，CLOSE文字列一覧］ダイアログボックス

リソースマネジャを接続したあとでOpen，Close文字列の内容を変更するときは，［リソースマネジャ］ウィンドウの［Open，Close文字列(O)...］ボタンをクリックして［OPEN，CLOSE文字列一覧］ダイアログボックスを開いてください。

リストボックスのリソースマネジャ名には次に示す名称で登録，表示されます。

Microsoft SQL Serverの場合：MS_SQL_Server

Oracleの場合：Oracle_XA

［OPEN，CLOSE文字列一覧］ダイアログボックスは，［リソースマネジャ接続］ダイアログボックスまたは［リソースマネジャ］ウィンドウのリストボックスで選択したリソースマネジャごとに表示されます。

ボタンの使い方

［追加(A)...］ボタン

新規に［OPEN，CLOSE文字列一覧］ダイアログボックスを開きます。

追加対象となるリソースマネジャは，［リソースマネジャ接続］ダイアログボックスまたは［リソースマネジャ］ウィンドウのリストボックスで選択したリソースマネジャになります。

［削除(D)］ボタン

リストボックスから選択したOPEN，CLOSE文字列を削除します。

削除対象となるリソースマネジャは，［リソースマネジャ接続］ダイアログボックスまたは［リソースマネジャ］ウィンドウのリストボックスで選択したリソースマネジャになります。

［変更(M)...］ボタン

リストボックスから選択したOPEN，CLOSE文字列を変更する［OPEN，CLOSE文字列一覧］ダイアログボックスを開きます。

変更対象となるリソースマネジャは，［リソースマネジャ接続］ダイアログボックスまたは［リソースマネジャ］ウィンドウのリストボックスで選択したリソースマネジャになります。

［OK］ボタン

設定した値に変更してから，［OPEN，CLOSE文字列一覧］ダイアログボックスを終了します。OPEN，CLOSE文字列は一つ以上設定してください。リソースマネジャ接続の場合は，リソースマネジャと接続を開始します。

［キャンセル］ボタン

値を変更しないで，［OPEN，CLOSE文字列一覧］ダイアログボックスを終了します。

(4)　Open，Close文字列の指定

OpenTP1以外のリソースマネジャを接続するときは，Open，Close文字列を設定する必要があります。

［OPEN，CLOSE文字列一覧］ダイアログボックスの［追加(A)...］ボタンまたはリストボックスから変更するOPEN，CLOSE文字列を選択して［変更(M)...］ボタンをクリックすると，［OPEN，CLOSE文字列］ダイアログボックスが表示されます。

図2-6　［OPEN，CLOSE文字列］ダイアログボックス

ボタンの使い方

［OK］ボタン

［OPEN，CLOSE文字列］ダイアログボックスに指定した値に変更します。

［キャンセル］ボタン

値を変更しないで，［OPEN，CLOSE文字列］ダイアログボックスを終了します。

ダイアログボックスに設定する内容

次に示す項目には，接続するリソースマネジャによって固有の値を指定します。指定する値については，接続するリソースマネジャのマニュアルを参照してください。

［リソースマネジャ拡張子(R)］　　～＜1～2文字の識別子＞

一つのリソースマネジャを複数の制御単位としてアクセスする場合，リソースマネジャ名を「リソースマネジャ名＋リソースマネジャ拡張子」に修飾するための文字列を指定します。拡張子は重複しないようにしてください。複数の制御単位としてアクセスしない場合は，この設定を省略してください。

TP1/LiNKは，このオプションを指定したリソースマネジャに対して，リソースマネジャ名を「リソースマネジャ名＋リソースマネジャ拡張子」に修飾して管理します。このため，リソースマネジャ名だけではアクセスできないので，SPP環境またはSUP環境の詳細設定でもリソースマネジャ拡張子を指定する必要があります。

SPPおよびSUPの詳細設定については，「3.2.2　SPPの詳細設定」または「3.3.2　SUPの詳細設定」を参照してください。

［トランザクションサービス用xa_open関数用文字列(T)］

TP1/LiNKからxa_open関数を呼び出すときに使う文字列を，128文字以内で指定します。NULL文字を通知する必要がある場合は，省略してください。

［トランザクションサービス用xa_close関数用文字列(S)］

TP1/LiNKからxa_close関数を呼び出すときに使う文字列を，128文字以内で指定します。NULL文字を通知する必要がある場合は，省略してください。

［ユーザサーバ用xa_open関数用文字列(U)］

ユーザサーバのプロセスからxa_open関数を呼び出すときに使う文字列を，128文字以内で指定します。NULL文字を通知する必要がある場合は，省略してください。

［ユーザサーバ用xa_close関数用文字列(F)］

ユーザサーバのプロセスからxa_close関数を呼び出すときに使う文字列を，128文字以内で指定します。NULL文字を通知する必要がある場合は，省略してください。

(5)　トランザクション制御用オブジェクトファイルの作成

TP1/LiNKのユーザサーバが，トランザクション機能を使ってリソースマネジャにアクセスする場合は，そのユーザサーバにトランザクション制御用オブジェクトファイルをリンケージする必要があります。

トランザクション制御用オブジェクトファイルを作成する場合は，次に示すどちらかの操作をします。

［リソースマネジャ］ウィンドウの［オブジェクト作成(G)...］ボタンをクリック

［リソースマネジャ接続］ダイアログボックスの［オブジェクト作成(G)...］ボタンをクリック

これらのボタンをクリックすると，［オブジェクト作成］ダイアログボックスが表示されます。

図2-7　［オブジェクト作成］ダイアログボックス

ボタンの使い方

次に示すボタンは，リストボックスにあるリソースマネジャの行を選択してからクリックしてください。

［追加(A)］ボタン

［削除(D)］ボタン

［追加(A)］ボタン

［TP1/LiNKに登録されているリソースマネジャ(M)］リストボックスから選択したリソースマネジャを［オブジェクトに登録するリソースマネジャ(R)］リストボックスに登録します。

［削除(D)］ボタン

［オブジェクトに登録するリソースマネジャ(R)］リストボックスから選択したリソースマネジャを削除します。

［作成(G)］ボタン

［オブジェクトに登録するリソースマネジャ(R)］リストボックスにあるリソースマネジャの，トランザクション制御用オブジェクトファイルを作成します。

作成したファイルは，［オブジェクト名称(B)］に指定した名称で，%DCDIR%¥spool¥trnrmcmd¥userobj¥フォルダに格納されます。トランザクション処理でリソースマネジャにアクセスするユーザサーバに，作成したトランザクション制御用オブジェクトファイルをリンケージしてください。

［終了(C)］ボタン

［オブジェクト作成］ダイアログボックスを終了します。

ダイアログボックスに設定する内容

［オブジェクト名称(B)］　　～＜1～12文字の記号名称 + ".obj"＞

作成するトランザクション制御用オブジェクトファイルのファイル名を指定します。トランザクション制御用オブジェクトファイルは，ここに指定した名称で，%DCDIR%¥spool¥trnrmcmd¥userobj¥フォルダに格納されます。

トランザクション制御用オブジェクトファイル名には，".obj"を付けてください。

［オブジェクトに登録するリソースマネジャ(R)］

トランザクション制御用オブジェクトファイルに登録するリソースマネジャの一覧をリストボックスに表示します。

［TP1/LiNKに登録されているリソースマネジャ(M)］

TP1/LiNKに接続しているリソースマネジャの一覧をリストボックスに表示します。

なお，図2-7ではリソースマネジャとしてTP1/Message Queueが表示されていますが，TP1/LiNKのVersion 7に対応するTP1/Message Queueは，現時点では未発行です。発行時期をご確認ください。

(6)　トランザクションサービスの環境変数の設定

TP1/LiNKのトランザクションサービスの環境変数を指定する必要があるリソースマネジャ（例　HiRDB）のときは，オプション項目を指定する必要があります。トランザクションサービスの環境変数を設定するときは，［リソースマネジャ］ウィンドウの［オプション(P)...］ボタンをクリックしてください。ボタンをクリックすると，［オプション］ダイアログボックスが表示されます。

図2-8　［オプション］ダイアログボックス

［オプション］ダイアログボックスは，HiRDBと接続する場合にだけ設定する必要があります。Microsoft SQL Server，OpenTP1のリソースマネジャ（TP1/Messaging，TP1/Message Queue※）と接続するときは［オプション］ダイアログボックスの指定は必要ありません。

注※

TP1/LiNKのVersion 7に対応するTP1/Message Queueは，現時点では未発行です。発行時期をご確認ください。

ボタンの使い方

［上書き保存(E)］ボタン

［オプション］ダイアログボックスに設定した内容を保存します。

［終了(C)］ボタン

［オプション］ダイアログボックスを終了します。

ダイアログボックスに設定する項目

［トランザクションサービスの環境変数］欄　　～＜1～63文字の英数字＞

トランザクションサービスの環境変数を設定します。ここに設定する値については，該当するHiRDBのマニュアルを参照してください。

環境変数を設定する場合
欄内の［変数(V)］と［値(A)］に値を入力して，［設定(S)］ボタンをクリックします。

環境変数を削除する場合
削除する環境変数をリストボックスから選択して，［削除(D)］ボタンをクリックします。

［リソースマネジャオープンエラー時の処置(O)］欄

TP1/LiNK起動時に発行するxa_open関数がエラーになったときの処置を，次のオプションボタンから選択します。

［TP1続行］
TP1/LiNKの処理を続行します。

［TP1停止］
TP1/LiNKを停止させます。

［オープン処理をリトライ後，TP1続行］
［リトライ間隔(I)］および［リトライ回数(N)］の指定値に従って，xa_open関数発行処理をリトライします。リトライ後はTP1/LiNKの処理を続行します。このオプションを選択すると，リソースマネジャ起動の待ち合わせができます。

［オープン処理をリトライ後，TP1停止］
［リトライ間隔(I)］および［リトライ回数(N)］の指定値に従って，xa_open関数発行処理をリトライします。リトライ後はTP1/LiNKを停止させます。

［リトライ間隔(I)］　　～＜符号なし整数＞((1～3600))《10》（単位：秒）

［リソースマネジャオープンエラー時の処置(O)］欄で［オープン処理をリトライ後，TP1続行］または［オープン処理をリトライ後，TP1停止］を選択した場合のリトライで，xa_open関数を発行する間隔を指定します。

［リトライ回数(N)］　　～＜符号なし整数＞((1～65535))《18》

［リソースマネジャオープンエラー時の処置(O)］欄で［オープン処理をリトライ後，TP1続行］または［オープン処理をリトライ後，TP1停止］を選択した場合のリトライで，xa_open関数を発行する回数を指定します。

［プリペア，コミット最適化］欄

［HiRDBのプリペア，コミット最適化を抑止する(H)］
HiRDBのプリペア最適化とコミット最適化を抑止するかどうかをチェックボックスで指定します。このチェックボックスは，システムにHiRDBを接続したときにだけ選べます。HiRDBとの接続を指定した時点では，チェックボックスはオフになっています。
ここに指定する値とトランザクションの決着範囲の関係については，該当するHiRDBのマニュアルの「OpenTP1のトランザクションの移行」と「trnstring -dオペランドとHiRDBのオペランドの関係」の記述を参照してください。

(7)　TP1/LiNKを実行環境だけで運用する方法

TP1/LiNKがリソースマネジャと連携する場合，リソースマネジャの提供するライブラリとコンパイル・リンケージが必要なため，Microsoft Visual C++が前提となります。

TP1/LiNKを実行環境だけで運用する場合，Microsoft Visual C++をインストールする必要はありませんが，.NET Framework およびVisual C++アプリケーションの実行に必要なMicrosoft Visual C++再頒布可能パッケージ（x86）をインストールする必要があります。詳細は，Visual Studioのドキュメントを参照してください。実行に必要なファイルがない場合，TP1/LiNKを利用できません。

TP1/LiNKを実行環境だけで運用する場合は，次に示す手順に従って実行環境を作成してください。このとき，開発環境と実行環境のTP1/LiNKおよびリソースマネジャのバージョンを統一してください。

TP1/LiNK，リソースマネジャおよびMicrosoft Visual C++がインストールされた開発環境のマシン上で，TP1/LiNKの［リソースマネジャ接続］ダイアログボックスからリソースマネジャと接続します。

開発環境のマシン上の次に示すファイルを，実行環境のマシンにコピーします。

%DCDIR%¥conf¥sysconf

%DCDIR%¥conf¥trn

%DCDIR%¥lib¥jmsgtxt

%DCDIR%¥lib¥sysconf¥trnrmdb

%DCDIR%¥lib¥servers¥trnrmd.exe

%DCDIR%¥lib¥servers¥trnrvd.exe

%DCDIR%¥lib¥servers¥clttrnd.exe

%DCDIR%¥spool¥dclitinf¥guirmdb

［リソースマネジャ接続］ダイアログボックスで，リソースマネジャ一覧に接続したリソースマネジャが追加されているかどうかを確認してください。

TP1/LiNKおよびリソースマネジャを入れ替える場合は，必ずこの手順を再実行してください。

2.1.4　TP1/LiNKをセットアップし直す方法

TP1/LiNKをセットアップし直す方法について説明します。次に示す場合には，TP1/LiNKをセットアップし直してください。

TP1/LiNKを最新バージョンに変更するとき

トラブルが起こった場合に，セットアップし直す必要があるとき

TP1/LiNKを旧バージョンに戻すとき

セットアップし直すときには，TP1/LiNKが停止していなければなりません。セットアッププログラムを起動する前に，TP1/LiNKが停止していることを確認してください。

TP1/LiNKのバージョンを変える（最新バージョンにする，または旧バージョンに戻す）ときには，該当するバージョンのTP1/LiNKの提供媒体（CD-ROMまたはFD）が必要になります。

＜この項の構成＞

(1)　セットアッププログラムを起動します

(2)　セットアップ種別を指定します

(1)　セットアッププログラムを起動します

TP1/LiNKを停止したことを確認して，セットアッププログラムを実行します。TP1/LiNKのバージョンを変えるときは，TP1/LiNKの提供媒体（CD-ROMまたはFD）のセットアッププログラム（setup.exe）を起動します。旧バージョンに戻すときには，インストール済みのTP1/LiNKをいったん削除してからセットアッププログラムを起動します。

TP1/LiNKのバージョンを変えないときには，提供媒体は不要です。［スタート］－［プログラム］－［TP1_LiNK］－［セットアップ］メニューを選択してセットアッププログラム（setup.exe）を起動します。

セットアッププログラムを起動すると，現在のOpenTP1管理者の名前と会社名がダイアログボックスに表示されます。

OpenTP1管理者の名前と会社名を確認し終わったら，［続行(O)］ボタンをクリックします。

(2)　セットアップ種別を指定します

名前と会社名を確認し終わると，セットアップ種別を指定するダイアログボックスが表示されます。

セットアップし直すときには，次のどちらにするかで操作が異なります。

組み込み済みのフォルダに上書きする

組み込み済みのフォルダとは別のフォルダに上書きする

(a)　組み込み済みのフォルダに上書きする手順

すでに組み込んであるフォルダと同じフォルダにセットアップし直すときは，［TP1/LiNKを再セットアップ(S)］オプションボタンをオンにして，［続行(O)］ボタンをクリックしてください。ボタンをクリックすると，サーバオプションを設定するダイアログボックスが表示されます。

Windowsの起動が完了したあとでオペレータの操作でTP1/LiNKを起動する場合は，［コンピュータブート時にTP1/LiNKを自動起動(A)］チェックボックスをオフにします。Windowsの起動と一緒にTP1/LiNKを起動する場合は，［コンピュータブート時にTP1/LiNKを自動起動(A)］チェックボックスをオンにします。

チェックボックスに指定した内容を確認したあと，［続行(O)］ボタンをクリックしてください。

以前の業務で使っていたアプリケーションプログラムや環境設定の情報は，セットアップし直したTP1/LiNKでも引き続き使えます。

(b)　組み込み済みのフォルダとは別のフォルダに上書きする手順

別のフォルダにセットアップし直す場合は，組み込んであるTP1/LiNKをいったん削除する必要があります。この場合は，TP1/LiNKを削除したあと，TP1/LiNKを最初から組み込み直します。

TP1/LiNKを削除する方法については，「2.1.7　TP1/LiNKをWindowsから削除する方法」を参照してください。

以前の業務で使っていたアプリケーションプログラムや環境設定の情報を使う場合は，セットアップし直す前のフォルダから新しいTP1/LiNKのフォルダ（OpenTP1ホームディレクトリ）へファイルを移動しておいてください。以前の環境を移動してからTP1/LiNKをセットアップすると，次に示すダイアログボックスが表示されます。

以前の業務の環境を使う場合は，［はい(Y)］ボタンをクリックしてください。

以前の業務の環境を使わない場合は，［いいえ(N)］ボタンをクリックしてください。

2.1.5　アプリケーションの準備

TP1/LiNKのアプリケーションプログラムを作成する手順について説明します。

＜この項の構成＞

(1)　アプリケーションを作成します

(2)　アプリケーションの実行環境を設定します

(1)　アプリケーションを作成します

TP1/LiNKのアプリケーションプログラムを作成します。TP1/LiNKのアプリケーションプログラムを作成する方法については，マニュアル「OpenTP1 プログラム作成の手引」を参照してください。

TP1/LiNKのAPIを使うときにプログラムに取り込むTP1/LiNKのヘッダファイルは，%DCDIR%¥include¥フォルダに格納してあります。

アプリケーションプログラムをコンパイル／リンケージした実行形式ファイル（～.exe）は，%DCDIR%¥aplib¥フォルダに格納します。

(2)　アプリケーションの実行環境を設定します

アプリケーションプログラムの実行形式ファイルがTP1/LiNKで使えるように，実行環境を設定します。TP1/LiNKで使うアプリケーションは，サービスを提供することからユーザサーバといいます。

(a)　ユーザサーバの名称

ユーザサーバの名称（ユーザサーバ名）には，1～8文字の識別子を使います。この名称には，拡張子（.exe）を付けません。ユーザサーバの環境を設定するときには，アプリケーションプログラムの実行形式ファイル名と対応付けます。

(b)　実行環境を設定する操作

アプリケーションプログラムをTP1/LiNKに設定するときは，［スタート］－［プログラム］－［TP1_LiNK］メニューにある［アプリケーション管理SPP］メニューまたは［アプリケーション管理SUP］メニューを選択して，ダイアログボックスを開きます。どちらのメニューにするかは，アプリケーションプログラムの種別に応じて選択します。

アプリケーションプログラムの実行環境を設定する手順については，「3.2　ユーザサーバの環境設定（SPP）」または「3.3　ユーザサーバの環境設定（SUP）」を参照してください。

2.1.6　TP1/LiNKの実行環境の確認

セットアップが完了すると，TP1/LiNKを実行する環境が初期値として設定されます。

新しくTP1/LiNKをセットアップしたときの初期値については，「2.3　セットアップしたときの初期値」を参照してください。

＜この項の構成＞

(1)　設定されているTP1/LiNKの実行環境を確認します

(2)　TP1/LiNKの実行環境を変更します

(1)　設定されているTP1/LiNKの実行環境を確認します

TP1/LiNKの実行環境は，［スタート］－［プログラム］－［TP1_LiNK］－［システム環境］メニューで開く，［システム環境設定］ウィンドウで確認します。

(2)　TP1/LiNKの実行環境を変更します

［システム環境設定］ウィンドウの内容のうち変更する項目があるときは，TP1/LiNKの実行環境を変更します。

TP1/LiNKの実行環境を設定する手順については，「3.1　TP1/LiNKの実行環境の設定」を参照してください。

注意

実行環境を変更するときは，必ずTP1/LiNKを開始する前にしてください。TP1/LiNKが稼働している間は，実行環境を設定し直さないでください。設定し直した場合，動作は保証できません。

実行環境を確認し終わったら，TP1/LiNKの準備作業は完了です。TP1/LiNKを開始させたい場合は，「5.1　TP1/LiNKの開始」に進んでください。

2.1.7　TP1/LiNKをWindowsから削除する方法

TP1/LiNKをWindowsから削除する方法を次に示します。TP1/LiNKは，［マイコンピュータ］－［コントロールパネル］ウィンドウにある［アプリケーションの追加と削除］アイコンでは削除できません。ここに示す手順に従って削除してください。

注意

TP1/LiNKの稼働中にはTP1/LiNKを削除しないでください。TP1/LiNKを停止させたあと，停止を確認してからセットアッププログラムを実行してください。OpenTP1のリソースマネジャをTP1/LiNKに接続している場合は，リソースマネジャをすべて削除してから，TP1/LiNKを削除してください。

＜この項の構成＞

(1)　削除する手順

(2)　削除したあとに残るフォルダ

(1)　削除する手順

TP1/LiNKを削除するときは，［スタート］－［プログラム］－［TP1_LiNK］－［セットアップ］メニューを選択します。そして，［TP1/LiNKセットアップ］ダイアログボックスの［TP1/LiNKを削除(D)］オプションボタンをオンにします。

［続行(O)］ボタンをクリックすると，TP1/LiNKからWindowsに登録したレジストリ情報や環境変数が削除されます。

(2)　削除したあとに残るフォルダ

TP1/LiNKを削除したあとに残るフォルダを次に示します。

%DCDIR%¥bin¥（TP1/LiNKの実行プログラムを格納するフォルダ）

%DCDIR%¥conf¥（環境設定の情報を格納するフォルダ）

%DCDIR%¥aplib¥（アプリケーションプログラムを格納するフォルダ）

このうち，bin¥フォルダの内容は，必ず削除しておいてください。conf¥フォルダとaplib¥フォルダは削除しなくてもかまいません。

2.1.8　マルチOpenTP1のセットアップと削除

一つのマシンに複数のOpenTP1システムを置く形態をマルチOpenTP1といいます。詳細は，マニュアル「OpenTP1 解説」のマルチOpenTP1の説明を参照してください。

TP1/LiNKでも，マルチOpenTP1の環境を構築できます。TP1/LiNKでは，一つのマシンに最大四つのTP1/LiNKをセットアップできます。なお，四つを超えるTP1/LiNKを一つのマシンにセットアップした場合の動作は保証できません。また，異なるバージョンを含むTP1/LiNKでのマルチOpenTP1の運用はできません。

ここでは，マルチOpenTP1形態のTP1/LiNKについて，次の内容を説明します。

マルチOpenTP1形態のTP1/LiNKのセットアップ

マルチOpenTP1形態のTP1/LiNKを削除する方法

マルチOpenTP1形態のTP1/LiNKの実行環境の設定

＜この項の構成＞

(1)　マルチOpenTP1のセットアップ

(2)　マルチOpenTP1を削除する方法

(3)　マルチOpenTP1の実行環境の設定

(1)　マルチOpenTP1のセットアップ

マルチOpenTP1形態のTP1/LiNKをセットアップする方法を次に示します。

TP1/LiNKのコマンド（GUIを含む）の実行中およびコマンドプロンプトでマルチOpenTP1セットアップフォルダ下を開いている場合，これらの作業を終了してください（GUIは閉じる）。
そのままTP1/LiNKのセットアップを続けると，フォルダやファイルが残ったり，コピーに失敗したりしてしまうおそれがあります。

TP1/LiNKが稼働中の場合，すべてのTP1/LiNKを停止させたあと，停止を確認します。

コマンドプロンプトからdcsetupmlコマンド（dcsetupml.exe）を実行します。
dcsetupmlコマンドを実行する際には，半角英数字2文字以内の識別子を付けて使用してください。使用例を次に示します。

dcsetupml マルチOpenTP1セットアップフォルダ 識別子※

注※

dcsetupmlコマンドで決めた識別子は，オリジナルのTP1/LiNK（セットアッププログラム（setup.exe）で最初にインストールしたTP1/LiNK）のサービス名「TPLiNK」の末尾に付けられます。詳細は，「7.　運用コマンド」の「dcsetupml（マルチOpenTP1のセットアップと削除）」を参照してください。

例えば，識別子を「N1」とした場合，サービス名は「TPLiNKN1」として登録されます。これはWindowsのイベントビューアにメッセージを出力する際のソース名についても同様です。また，ショートカット名も「TPLiNKN1」となります。TP1/LiNKのショートカットのメニューは，［スタート］－［プログラム］－［TPLiNKN1］として登録されます。この場合の各GUIのタイトルには「TP1LiNKN1 - 」を付けて表示します。

注意

マルチOpenTP1形態のTP1/LiNKを使用する場合，次の点に注意してください。

dcsetupmlコマンドを実行中に，CtrlとBreakキーを同時に押したり，TP1/LiNKのコンソールを閉じたりして，コマンドを停止しないでください。

dcsetupmlコマンドを実行すると，インストールされたソフトウェアが，すべてマルチOpenTP1形態のTP1/LiNKにコピーされます。TP1/LiNK以外のソフトウェアもdcmakeconコマンドで作成したコマンドプロンプト上で操作してください。

マルチOpenTP1の環境で，ソフトウェアをインストールしてもマルチOpenTP1セットアップフォルダには反映されません。オリジナルの環境をマルチOpenTP1セットアップフォルダに反映したい場合は，対象のマルチOpenTP1セットアップフォルダに対してdcsetupmlコマンドを-uオプションで実行して，更新してください。

TP1/LiNKのバージョンが07-00の場合，TP1/MessagingはマルチOpenTP1の運用に対応していません。

TP1/LiNKのバージョンが06-50以前の場合にマルチOpenTP1のセットアップで使用した，マルチOpenTP1環境変更セットアップコマンド（Msetup.exe）の起動は不要です。また，セットアッププログラム（setup.exe）を2度起動する必要はありません。

06-50以前のTP1/LiNKのサービス名と同じにしたい場合は，識別子に「A1」および「B1」と指定してください。

(2)　マルチOpenTP1を削除する方法

マルチOpenTP1形態のTP1/LiNKを削除する方法を説明します。次の手順に従って，削除してください。

TP1/LiNKのコマンド（GUIを含む）の実行中およびコマンドプロンプトでマルチOpenTP1セットアップフォルダ下を開いている場合，これらの作業を終了してください（GUIは閉じる）。
そのままTP1/LiNKの削除を続けると，フォルダやファイルが残ったり，削除に失敗したりしてしまうおそれがあります。

TP1/LiNKが稼働中の場合，TP1/LiNKを停止させたあと，停止を確認します。

コマンドプロンプトからdcsetupmlコマンド（dcsetupml.exe）を実行します。
dcsetupmlコマンドを実行する際には，半角英数字2文字以内の識別子を付けて使用してください。使用例を次に示します。

dcsetupml -d マルチOpenTP1セットアップフォルダ 識別子※

注※

dcsetupmlコマンドで決めた識別子は，オリジナルのTP1/LiNK（セットアッププログラム（setup.exe）で最初にインストールしたTP1/LiNK）のサービス名「TPLiNK」の末尾に付けられます。詳細は，「7.　運用コマンド」の「dcsetupml（マルチOpenTP1のセットアップと削除）」を参照してください。

注意

マルチOpenTP1環境の状態でオリジナルのTP1/LiNKを削除した場合，マルチOpenTP1形態のTP1/LiNKがすべて削除されます。マルチOpenTP1セットアップフォルダ下にあるフォルダ（bin，etc，sample，include，lib，spool，tmp）も削除されるので，これらのフォルダ下にユーザが独自にファイルなどを作っていた場合は，削除する前にバックアップしてください。dcsetupmlコマンドを-uまたは-dオプションで実行する場合も同様に，実行前にバックアップしてください。

(3)　マルチOpenTP1の実行環境の設定

マルチOpenTP1形態のTP1/LiNKの実行環境の設定について説明します。

セットアップしたTP1/LiNKごとに，マルチOpenTP1環境のGUIを使用して実行環境を設定してください。TP1/LiNKの実行環境の設定については，「3.1　TP1/LiNKの実行環境の設定」を参照してください。

次の項目については，TP1/LiNKごとに異なる値を指定してください。

［システム環境設定］－［ネームサービスのポート番号］

［システム環境設定］－［ノード識別子］

［システム環境設定］－［スケジュールサービスのポート番号］

［システム環境設定］－［RPC詳細設定（［その他］タブ）］－［最小ポート番号(P)］

［RAPサービス環境設定］－［RAPサービスのポート番号］

また，他ノードのTP1/LiNKで，［システムを構成するノード］欄の指定でマルチOpenTP1形態のTP1/LiNKごとに区別したい場合は，ポート番号もあわせて指定してください。

なお，オリジナルのTP1/LiNKにリソースマネジャを接続していた場合，マルチOpenTP1形態のTP1/LiNKにはリソースマネジャの接続は引き継がれません。dcsetupmlコマンド実行後，TP1/LiNKごとに［リソースマネジャ］ウィンドウで接続をしてください。リソースマネジャの接続については，「2.1.3　リソースマネジャの接続」を参照してください。また，セットアップしたTP1/LiNKを自動起動したい場合は，［管理ツール］－［サービス］を使用して設定してください。

2.2　TP1/LiNKのフォルダの構成

TP1/LiNKのフォルダ（OpenTP1ホームディレクトリ）の構成について説明します。

＜この節の構成＞

2.2.1　TP1/LiNKのフォルダの内容

2.2.2　業務で使うフォルダとファイル

2.2.3　バックアップを取得しておくフォルダ

2.2.1　TP1/LiNKのフォルダの内容

セットアップが完了した直後のTP1/LiNKのフォルダの構成を次の図に示します。次の図は，TP1/LiNKのフォルダを仮定値（C:¥OpenTP1）にした場合の例です。

図2-9　TP1/LiNKのフォルダの構成

TP1/LiNKのフォルダのうち，OpenTP1管理者が使えるのは次のフォルダです。

aplib¥：アプリケーションプログラムの実行形式ファイルを格納するフォルダ

conf¥：TP1/LiNKの環境設定の定義ファイルが格納してあるフォルダ

jp1_template¥：TP1/LiNKがJP1と連携する場合に使用する，シナリオテンプレート定義ファイルが格納してあるフォルダ

rts_template¥：リアルタイム統計情報サービスで使用するリアルタイム取得項目定義テンプレートファイルが格納してあるフォルダ

sample¥：TP1/LiNKのサンプルが格納してあるフォルダ

spool¥：TP1/LiNKから出力される各種ファイルが格納されるフォルダ

注意

これら以外のフォルダの内容は参照できますが，絶対に変更しないでください。図2-9に示すフォルダ以外にもTP1/LiNK専用のフォルダやファイルが作成されます。これらは，TP1/LiNKを正常に動かすための重要なファイルです。これらのフォルダやファイルの内容を，直接変更するようなことは絶対にしないでください。

TP1/LiNKは起動時にconfフォルダに格納されている定義から共用メモリ量を自動計算します。このため，confフォルダに不要な定義が格納されていると正しい共用メモリ量が算出できません。confフォルダには不要な定義を格納しないでください。

2.2.2　業務で使うフォルダとファイル

OpenTP1管理者が使うフォルダとファイルの一覧を次の表に示します。これらのフォルダとファイルは，すべてTP1/LiNKのフォルダの下に作成されます。

表2-2　OpenTP1管理者が使うフォルダとファイルの一覧

フォルダの名称
フォルダのパス
ファイル名

アプリケーション格納フォルダ
%DCDIR%¥aplib¥
実行形式ファイル名
ユーザサーバ名_sstb.c※¹

TP1/LiNKの定義ファイル格納フォルダ
%DCDIR%¥conf¥
各種定義ファイル※²

シナリオテンプレート定義ファイル格納フォルダ
%DCDIR%¥jp1_template¥
各種フォルダ※³

リアルタイム取得項目定義テンプレートファイル格納フォルダ
%DCDIR%¥rts_template¥examples¥conf¥
LiNK_ITM

TP1/LiNKサンプルフォルダ
%DCDIR%¥sample¥
各種フォルダ※³

トランザクション制御用オブジェクト格納フォルダ
%DCDIR%¥spool¥trnrmcmd¥userobj¥
ファイル名.obj※⁴

RPCトレースフォルダ
%DCDIR%¥spool¥
rpctr1，rpctr2

%DCDIR%¥spool¥save¥rpctrc¥
ユーザサーバ名*※⁵

UAPトレースフォルダ
%DCDIR%¥spool¥save¥trc¥
ユーザサーバ名.nnn※⁶

注※1

TP1/LiNKが作成したスタブのソースファイルを示します。

注※2

各種定義ファイルの内容については，「付録C　GUIと定義ファイルの関連」を参照してください。

注※3

各種フォルダの内容については，「5.10　TP1/LiNKのサンプル」を参照してください。

注※4

トランザクション制御用オブジェクトファイル名は，［オブジェクト作成］ダイアログボックスで指定した名称になります。

注※5

*は1または2の数字を示します。

注※6

nnnはプロセスIDを示します。

＜この項の構成＞

(1)　TP1/LiNKを開始する前にファイルを作成するフォルダ

(2)　TP1/LiNKの環境設定の定義ファイルが格納してあるフォルダ

(3)　シナリオテンプレート定義ファイルが格納してあるフォルダ

(4)　リアルタイム取得項目定義テンプレートファイルが格納してあるフォルダ

(5)　TP1/LiNKのサンプルが格納してあるフォルダ

(6)　アプリケーションプログラムに結合させるファイルを格納するフォルダ

(7)　ユーザサーバに関する情報のファイルが作成されるフォルダ

(1)　TP1/LiNKを開始する前にファイルを作成するフォルダ

アプリケーション格納フォルダ（%DCDIR%¥aplib¥）

アプリケーションプログラムの実行形式ファイルを作成して格納するフォルダです。

%DCDIR%¥aplib¥フォルダには，TP1/LiNKがスタブのソースファイルを自動的に格納します。［SPP環境設定］ダイアログボックスで新規にユーザサーバを作成した場合，または［登録するサービス］欄を変更した場合に，設定した環境に合わせたスタブのソースファイルが生成されます。

(2)　TP1/LiNKの環境設定の定義ファイルが格納してあるフォルダ

TP1/LiNKの定義ファイル格納フォルダ（%DCDIR%¥conf¥）

TP1/LiNKの定義ファイルを格納してあるフォルダです。

TP1/LiNKの定義ファイルには，TP1/LiNK環境設定GUIで設定する項目が反映されます。TP1/LiNK環境設定GUIと定義ファイルの関連については，「付録C　GUIと定義ファイルの関連」を参照してください。

なお，バックアップなどの不要なファイルは置かないようにしてください。不要なファイルがあると，共用メモリの自動見積もり結果が不正な値になります。

(3)　シナリオテンプレート定義ファイルが格納してあるフォルダ

シナリオテンプレート定義ファイル格納フォルダ（%DCDIR%¥jp1_template¥）

サンプルシナリオテンプレートを利用するときに使用するフォルダおよびファイルを格納してあるフォルダです。

サンプルシナリオテンプレートの利用については，「5.8.6　サンプルシナリオテンプレートの利用」を，サンプルシナリオテンプレートを利用するときに使用するフォルダおよびファイルについては「5.10.1(2)　%DCDIR%¥jp1_template¥examples¥フォルダの内容」を参照してください。

(4)　リアルタイム取得項目定義テンプレートファイルが格納してあるフォルダ

リアルタイム取得項目定義テンプレートファイル格納フォルダ（%DCDIR%¥rts_template¥examples¥conf¥）

リアルタイム統計情報サービスで使用するリアルタイム取得項目定義テンプレートファイルが格納してあるフォルダです。

リアルタイム取得項目定義テンプレートの利用については，「3.1.5　リアルタイム統計情報サービスの取得項目定義ファイルの設定」を参照してください。

(5)　TP1/LiNKのサンプルが格納してあるフォルダ

TP1/LiNKサンプルフォルダ（%DCDIR%¥sample¥）

アプリケーションプログラムサンプルと，環境設定のサンプルを格納してあるフォルダです。TP1/LiNKのサンプルについては，「5.10　TP1/LiNKのサンプル」を参照してください。

(6)　アプリケーションプログラムに結合させるファイルを格納するフォルダ

トランザクション制御用オブジェクト格納フォルダ（%DCDIR%¥spool¥trnrmcmd¥userobj¥）

OpenTP1のリソースマネジャに，トランザクション処理でアクセスするユーザサーバに必要なファイル（トランザクション制御用オブジェクトファイル）を格納するフォルダです。

(7)　ユーザサーバに関する情報のファイルが作成されるフォルダ

%DCDIR%¥spool¥save¥フォルダには，次に示すファイルが格納されます。

RPCトレースファイル

ユーザサーバがサービスを要求するために使ったリモートプロシジャコールに関する情報が格納されるファイルです。

UAPトレースファイル

異常終了したユーザサーバに関する情報が格納されるファイルです。

2.2.3　バックアップを取得しておくフォルダ

OpenTP1ホームディレクトリの内容のうち，次に示すフォルダの下のファイルは，バックアップを取っておくことをお勧めします。

%DCDIR%¥aplib¥（TP1/LiNKのアプリケーションプログラム）

%DCDIR%¥conf¥（TP1/LiNKの環境設定の内容）

注意

バックアップとリカバリには，Windowsエクスプローラを使ってください。バックアップを取るときは，TP1/LiNKをいったん停止させてください。TP1/LiNKの稼働中にバックアップを取るのは避けてください。

2.3　セットアップしたときの初期値

TP1/LiNKをセットアップした直後の設定値（初期値）について説明します。TP1/LiNKの環境に適していない初期値は，TP1/LiNKを開始する前に変更してください。

業務の都合によってTP1/LiNKをセットアップし直すと，設定値はここで示す初期値になります。また，次に示す操作をすると，それぞれのダイアログボックスに初期値が設定されます。

［システム環境設定］ウィンドウの［初期値設定(I)］ボタンをクリック

ユーザサーバまたはRAPサービスを操作するウィンドウの［新規作成(N)...］ボタンをクリック

ユーザサーバまたはRAPサービスの環境を設定するダイアログボックスの［初期値設定(I)...］ボタンをクリック

実行環境の設定値を参照，または変更する方法については，「3.1　TP1/LiNKの実行環境の設定」，「3.2　ユーザサーバの環境設定（SPP）」，「3.3　ユーザサーバの環境設定（SUP）」，および「3.4　RAPサービスの環境設定」をそれぞれ参照してください。

＜この節の構成＞

(1)　TP1/LiNKの実行環境の初期値

(2)　ユーザサーバ環境に関する設定の初期値

(1)　TP1/LiNKの実行環境の初期値

システム構成に関する設定の初期値を次に示します。

［サーチパス］欄に表示されているaplib¥フォルダは，TP1/LiNKを組み込んだフォルダ（OpenTP1ホームディレクトリ）の下に作成されます（この例では，TP1/LiNKを組み込んだフォルダを「OpenTP1」にしています）。

(2)　ユーザサーバ環境に関する設定の初期値

ユーザサーバの実行環境に関する設定の初期値を次に示します。

(a)　SPPの実行環境の初期値

SPPに関する設定の初期値を次に示します。

(b)　SUPの実行環境の初期値

SUPに関する設定の初期値を次に示します。

(c)　RAPサービス環境に関する設定の初期値

RAPサービスの実行環境に関する設定の初期値を次に示します。

3.　実行環境の設定（TP1/LiNK）

この章では，TP1/LiNKの環境設定手順について説明します。

＜この章の構成＞

3.1　TP1/LiNKの実行環境の設定

3.2　ユーザサーバの環境設定（SPP）

3.3　ユーザサーバの環境設定（SUP）

3.4　RAPサービスの環境設定

3.1　TP1/LiNKの実行環境の設定

TP1/LiNKの実行環境を設定する手順について説明します。

TP1/LiNKの実行環境を設定するときは，［スタート］－［プログラム］－［TP1_LiNK］－［システム環境］メニューを選択します。

［システム環境］メニューを選択すると，［システム環境設定］ウィンドウが表示されます。

図3-1　［システム環境設定］ウィンドウ

［システム環境設定］ウィンドウをTP1/LiNKのセットアップ後に初めて開くと，初期値が設定されています。［システム環境設定］ウィンドウの初期値については，「2.3　セットアップしたときの初期値」を参照してください。

メニューバーのコマンド

［システム環境設定］ウィンドウのメニューについて説明します。

［ファイル(F)］メニュー

［ファイル(F)］メニューには，次に示すコマンドがあります。

［終了(X)］：［システム環境設定］ウィンドウを終了します。

［ヘルプ(H)］メニュー

バージョン情報を示すヘルプを開きます。［ヘルプ(H)］メニューについては，「6.5　ヘルプの使い方」を参照してください。

ボタンの使い方

［初期値設定(I)］ボタン

［システム環境設定］ウィンドウの，次に示す項目を初期値にします。

［ネームサービスのポート番号］欄

［ノード識別子］欄

［クライアント］欄

［RPCオプション］欄

［サーバ数］欄

［稼働統計情報の取得］欄

「リアルタイム統計情報の取得」欄

［トランザクション機能］欄

［スケジュールサービスのポート番号］欄

［システムを構成するノード］欄

［サーチパス］欄

［上書き保存(V)］ボタン

［システム環境設定］ウィンドウに設定した各項目の値を保存します。項目をすべて設定し終えてから［上書き保存(V)］ボタンをクリックすると，各項目を設定できます。

［終了(C)］ボタン

［システム環境設定］ウィンドウを終了します。TP1/LiNKの環境設定を終了するときは，［終了(C)］ボタンをクリックします。

ウィンドウに設定する項目

［ネームサービスのポート番号］欄　　～＜符号なし整数＞((5001～65535))《10000》

［番号(O)］には，このマシンのTP1/LiNKが使うTCP/IPのポート番号を指定します。TP1/LiNK以外のプログラムが特定のポート番号を使っている場合は，TP1/LiNKのポート番号と重ならないようにしてください。

［ノード識別子］欄　　～＜4文字の識別子＞《LiNK》

［識別子(D)］には，TP1/LiNKのマシンを識別する名称を入力します。TP1/LiNKのクライアント／サーバシステム内で固有となる名称を入力してください。

［システム環境設定］ウィンドウの［システムを構成するノード］欄で指定したドメイン以外のOpenTP1システムにトランザクショナルRPCを行う場合，自ドメイン，および他ドメイン内のすべてのOpenTP1システムのノード識別子（システム環境設定）を一意になるように指定する必要があります。また，すべてのOpenTP1システムのバージョンは03-02以降である必要があります。これらの条件を満たしていないと，トランザクションを正しく回復できなくなるおそれがあります。

［クライアント］欄

［ユーザ認証機能(E)］
TP1/Client/WまたはTP1/Client/Pのユーザ認証機能を使うかどうかを指定します。チェックボックスをオンにすると，ユーザ認証機能を使います。オフにすると，TP1/Client/WまたはTP1/Client/Pからの認証要求は，どんなログイン名を指定しても認証されます。

［クライアントサービス環境(G)...］ボタン
クライアント拡張サービスに関する情報を設定する［クライアントサービス環境設定］ダイアログボックスを開きます。クライアント拡張サービスに関する情報は，次の場合に設定します。
・CUPからトランザクショナルRPCを実行する場合
・CUPから常設コネクションを確立する場合

［RPCオプション］欄

［トレース取得(L)］
RPCトレースを取得するときに，チェックボックスをオンにします。取得対象となるUAPは，［SPP詳細設定］ダイアログボックスまたは［SUP詳細設定］ダイアログボックスの［RPCトレースを取得するファイルの容量(J)］の値が省略されているUAPです。このチェックボックスをオフにすると，RPCトレースは取得されません。
RPCトレースを取得した場合，処理スピードが遅くなることが原因となって，RPCがタイムアウトでエラーリターンすることがあります。この場合，［RPC詳細設定］ダイアログボックスのシステム共通の最大応答待ち時間に十分な値を指定してください。

［データ圧縮(R)］
TP1/LiNKからサービスを要求するとき，または要求されたサービスにTP1/LiNKから応答を送信するときに，通信に使うデータを圧縮するかどうかを指定します。チェックボックスをオンにすると，通信データを圧縮します。オフにすると，通信データを圧縮しません。
データを圧縮してネットワークの負荷を軽減できても，ノード内の圧縮と復元の処理が原因で通信時間が長くなってしまうことがあります。通信データを圧縮するかどうかは，業務内容や通信形態に応じて判断してください。
TP1/LiNKのRPCのユーザデータを圧縮して送信する機能を使用する場合，RPCでやり取りするクライアントおよびサーバのバージョンが共に03-06以降でないときは，サーバからの応答電文が圧縮効果のある電文であるのに，圧縮されないで返送されることがあります。これは，03-05以前のバージョンでは，サーバが応答電文を圧縮して返送するかどうかが要求電文の送信方法に従うためです。

［詳細設定(Q)...］ボタン
RPCに関して詳細な設定をする［RPC詳細設定］ダイアログボックスを開きます。

［ユーザサービス環境(M)...］ボタン
次に示すサービスグループに関する情報を設定する［ユーザサービス環境設定］ダイアログボックスを開きます。
・リモートAPIを使って呼び出すサービスグループ
・システムを構成するノードに設定していないシステムにあるサービスグループ

［サーバ数］欄

［SUP(U)］　　～＜符号なし整数＞((0～1994))《0》
このマシンで使うユーザサーバのプロセスのうち，SUPのプロセスの数を指定します。
リモートAPI機能を使うときは，指定する値に1を加算してください。

［SPP(P)］　　～＜符号なし整数＞((0～1994))《10》
このマシンで使うユーザサーバのプロセスのうち，SPPおよびMHPのプロセスの数を指定します。
マルチサーバのSPPおよびMHPを使用する場合は，起動するすべてのプロセス数（常駐プロセスと非常駐プロセスの数）を加算してください。
リモートAPI機能を使用する場合は，RAPサービスのプロセス数を加算してください。
クライアント拡張機能サービス機能を使用する場合は，すべてのクライアント拡張サービスのプロセス数（常駐プロセスと非常駐プロセスの数）を加算してください。

［閉塞状態を引き継ぐサーバ，サービス数(1)］　　～＜符号なし整数＞((0～58240))《［SPP(P)］の指定値》
システムを全面回復するときに，閉塞状態を引き継ぐことが必要なサーバ（SPPまたはMHP）およびそのサービスの合計数を指定します。

ポイント

次の条件を満たす場合は，一つのサーバとして数えます。

［SPP詳細設定］ダイアログボックスで［サービス単位の閉塞管理をする(S)］チェックボックスをオフに指定した場合

［SPP異常終了時，閉塞しない(A)］チェックボックスをオン，かつ［連続サービス異常終了限界経過時間(T)］に0を指定した場合

［サービス単位の閉塞管理をする(S)］チェックボックスをオンに指定したサーバは，そのサーバが持つサービス数を数えて合計数を指定してください。

閉塞状態のサーバ，またはサービスの数がこの指定値を超えた場合，超えた分のサーバ，またはサービスの閉塞状態は引き継がれません。0を指定した場合も引き継がれません。

システムを全面回復する場合，前回のオンライン処理のときに指定した値が引き継がれます。ただし，前回または今回の指定値が0の場合は，指定値は引き継がれません。この指定値が小さい場合，ステータスファイル内で閉塞情報の書き換え処理が多く発生します。
この指定値によっては，［RPC詳細設定］ダイアログボックスの［RPC送受信電文の最大長(M)］の指定値を変更する必要があります。次の計算式の算出値が2～8の場合は，算出値以上の値を［RPC送受信電文の最大長(M)］に指定してください。
↑（［閉塞状態を引き継ぐサーバ，サービス数(1)］の指定値/7280）↑
（凡例）　↑↑：小数点以下を切り上げます。

［稼働統計情報の取得］欄　　～＜［あり］｜［なし］＞《［なし］》

［統計ファイルサイズ(S)］　　～＜符号なし整数＞((1～300))《1》（単位：メガバイト）
稼働統計情報を取得するかどうかを，オプションボタンで指定します。［あり］をオンにしたときは，［統計ファイルサイズ(S)］に統計情報ファイルのファイルサイズをあわせて指定します。［なし］をオンにすると，［統計ファイルサイズ(S)］に指定した値は無視されます。

［リアルタイム統計情報の取得］欄

［サービス設定(2)...］ボタン
リアルタイム統計情報サービスの実行環境を設定する［リアルタイム統計情報サービス設定］ダイアログボックスを開きます。

［取得項目設定(3)...］ボタン
リアルタイム取得項目定義ファイルを設定する［リアルタイム取得項目定義ファイル一覧］ダイアログボックスを開きます。

［トランザクション機能］欄　　～＜［あり］｜［なし］＞《［なし］》

［トランザクションブランチ数(B)］　　～＜符号なし整数＞((1～1024))《32》
TP1/LiNKのシステムでトランザクション機能を使うかどうかを，オプションボタンで指定します。［あり］をオンにしたときは，［トランザクションブランチ数(B)］に，最大トランザクションブランチ数をあわせて指定します。［なし］をオンにすると，［トランザクションブランチ数(B)］に指定した値は無視されます。
同一のマシン内で同時に起動するトランザクションブランチの数を指定します。この数は，次に示す数の合計です。
・トランザクション処理を実行するユーザサーバのプロセス数
・回復プロセス数
・回復処理を待っているトランザクションブランチ数
トランザクションブランチを開始したプロセスが異常終了したとき，回復プロセスがほかのトランザクションブランチの決着処理の間，このトランザクションブランチは回復処理を待っている状態となります。この状態が長く続くと，起動できるトランザクションブランチ数が少なくなることがあります。このため，異常終了後にトランザクションブランチを発生できるプロセスの扱いや，異常が起こる頻度などを考慮した上で，トランザクションブランチの数を設定してください。指定値の目安の算出式を次に示します。
（a＋c）＜b≦（a×2＋c）
a：トランザクション処理を実行するユーザサーバのプロセス数
b：指定するトランザクションブランチ数
指定数が多くなればなるほど，メモリ資源の効率が悪くなってしまうので注意してください。
c：回復プロセス数（trn_recovery_process_countオペランド指定値）
trn_recovery_process_countオペランドについては，「4.1.3(6)　Oracle RACとの連携方法」を参照してください。

［APの状態引き継ぎ(A)］
TP1/LiNKを再開始（リラン）するときに，ユーザサーバの状態を引き継ぐかどうかを指定します。
トランザクション機能を使うときは，ユーザサーバの状態を引き継ぐことが前提となります。そのため［トランザクション機能］欄の［あり］をオンにすると，［APの状態引き継ぎ(A)］チェックボックスもオンになります。

［XAリソースサービス環境(Y)...］ボタン
XAリソースサービス環境を指定する［XAリソースサービス環境設定］ダイアログボックスを開きます。［トランザクション機能］欄の［あり］を選択したときだけクリックできます。

［スケジュールサービスのポート番号］欄　　～＜［指定する］｜［指定しない］＞《［指定しない］》

［番号(Z)］　　～＜符号なし整数＞((5001～65535))《10010》
スケジュールサービスのポート番号を指定するかどうかをオプションボタンで指定します。ここに任意のポート番号を指定すると通信時にサービス名を探す時間を減らせるため，その分だけ通信時間を高速にできます。
［指定する］をオンにしたときは，［番号(Z)］にスケジュールサービスのポート番号をあわせて指定します。スケジュールサービスのポート番号には，［ネームサービスのポート番号］欄の［番号(O)］と同じ値は指定できません。［指定しない］をオンにすると，［番号(Z)］に指定した値は無視されます。

［システムを構成するノード］欄

［ノード名(N)］　　～＜1～61バイトの文字列＞
TP1/LiNKのクライアント／サーバシステムを構成する，すべてのノード名を指定します。ノード名とは，TCP/IPプロトコルのホスト名のことです。
追加する場合は，欄内下の［ノード名(N)］にノード名を入力してから，［設定(J)］ボタンをクリックします。
削除する場合は，リストボックスに表示されているノード名のうち，削除するノード名を選択してから［削除(K)］ボタンをクリックします。
［ノード名(N)］には，各ノードのTP1/LiNKが使うネームサービスのポート番号を次の形式で指定することもできます。
ノード名：ポート番号
この形式で指定したときにポート番号を省略すると，［ネームサービスのポート番号］欄で指定した値が仮定されます。
サービス情報優先度指定機能を使用する場合，サービス情報を優先して選択するノード（優先選択ノード）の指定のあとに，サービス情報優先度指定キーワードである":high"を次の形式で指定することもできます。サービス情報優先度指定機能については，マニュアル「OpenTP1 解説」を参照してください。
ノード名：ポート番号:high
ポート番号を省略する場合は，キーワード":high"をノード名のあとに指定してください。":high"は必ず指定値の最後に指定してください。キーワードの区切り文字":"を省略した場合や，間違った位置にキーワードを指定した場合は，定義不正となります。定義不正となった場合，KFCA00606-E（ホスト未定義）またはKFCA00607-E（ポート番号不正）のメッセージが出力され，TP1/LiNKは起動に失敗します。
複数のコンピュータでTP1/LiNKシステムを構成する場合，システムを構成するノードとして指定したノード名をIPアドレスとして解決できるように，WINSサーバを使用するか，またはhostsファイルにノード名とIPアドレスを登録してください。
システムをマルチOpenTP1構成にしていない場合は，ノード名に，自ホストを示すホスト名（またはIPアドレス）や，ループバックアドレス（127で始まるIPアドレス）を指定しないでください。指定した場合，トランザクションの性能に悪影響を与えたり，TP1/LiNKがシステムダウンしたりするおそれがあります。
システムをマルチOpenTP1構成にしている場合は，このオペランドのノード名に，自ホストを示すホスト名（またはIPアドレス）を指定できます。ただし，ポート番号は重複しないように指定してください。なお，ループバックアドレス（127で始まるIPアドレス）は指定しないでください。指定した場合，グローバル検索機能などに影響を与えます。
ノード自動追加機能とサービス情報優先度指定機能を併用する場合，［ノード自動追加機能設定］ダイアログボックスの［ノードの動作モード(M)］にマネジャノードまたはエージェントノードを指定し，［マネジャノードのノード名(N)］に属性情報（優先度オプション）を指定します。
［マネジャノードのノード名(N)］に指定した属性情報は，ノードリストに登録されているノードに与えられます。
なお，［システムを構成するノード］欄に指定したノードが，マネジャノードから受け取ったノードリストに登録されていない場合，指定したノードはRPCの実行範囲にはなりません。
指定できるノード数は，最大511です。

［ノード自動追加機能設定(4)...］ボタン

ノード自動追加機能を設定する［ノード自動追加機能設定］ダイアログボックスが表示されます。

［サーチパス］欄

TP1/LiNKシステム全体で有効になるサーチパスを指定します。

［システム環境設定］ウィンドウで指定するサーチパスは，TP1/LiNKシステム全体で有効になる値です。ユーザサーバ固有で有効になるサーチパスを指定するときは，［TP1/LiNKサーチパス］ダイアログボックスを使います。

なお，指定したサーチパス名はそれぞれ';'で区切って追加されます。指定できるサーチパス名の長さの合計は，';'を含めて255文字までです。

ユーザサーバの実行に必要な実行形式ファイルおよびDLLのサーチパスは，すべてここに指定する必要があります。

例えば，COBOL2002を使用してユーザサーバを作成した場合は，COBOL2002のDLLが存在するパス名を指定してください。指定例を次に示します。

C:¥PROGRA~1¥Hitachi¥COBOL2~1¥BIN

また，OpenTP1以外のリソースマネジャを接続した場合は，リソースマネジャのDLLが存在するパス名を指定してください。指定例を次に示します。

Microsoft SQL Serverを接続した場合の指定例
C:¥PROGRA~1¥MICROS~4¥MSSQL¥Binn

HiRDBを接続した場合の指定例
C:¥win32app¥hitachi¥hirdb_s¥CLIENT¥UTL

Oracleを接続した場合の指定例
C:¥orant¥bin

［パス名(T)］　　～＜1～63文字の識別子＞
ユーザサーバのサーチパス名とユーザサーバから実行するコマンドのサーチパス名を，完全パス名で指定します。サーチパス名の初期値には，%DCDIR%¥bin¥および%DCDIR%¥aplib¥が仮定されます。なお，%DCDIR%¥bin¥は，リストボックスには表示されません。
パス名を設定するときは，欄内下の［パス名(T)］にパス名を入力してから，［設定(W)］ボタンをクリックします。
パス名を削除するときは，リストボックスに表示されているパス名のうち，削除するパス名を選択してから［削除(X)］ボタンをクリックします。

エラーメッセージ

［システム環境設定］ウィンドウの操作中にエラーが起こったときは，エラーメッセージが出力されます。表示内容を確認してから［OK］ボタンをクリックしてください。

注意

［システム環境設定］ウィンドウで設定を変更した場合は，変更後の設定を有効にするために，TP1/LiNKを必ず正常開始してください。TP1/LiNKをGUIで操作する場合，デフォルトでは計画停止Bで終了して，再開始（リラン）で開始するので注意してください。

＜この節の構成＞

3.1.1　クライアントサービス環境の設定

3.1.2　RPC詳細の設定

3.1.3　ユーザサービス環境の設定

3.1.4　リアルタイム統計情報サービスの実行環境の設定

3.1.5　リアルタイム統計情報サービスの取得項目定義ファイルの設定

3.1.6　XAリソースサービス環境の設定

3.1.7　ノード自動追加機能の設定

3.1.1　クライアントサービス環境の設定

クライアント拡張サービスの実行環境を設定するときは，［システム環境設定］ウィンドウの［クライアントサービス環境(G)...］ボタンをクリックします。ボタンをクリックすると，［クライアントサービス環境設定］ダイアログボックスが表示されます。

図3-2　［クライアントサービス環境設定］ダイアログボックス

ボタンの使い方

［初期値設定(I)］ボタン

［クライアントサービス環境設定］ダイアログボックスのすべての項目を初期値にします。

［OK］ボタン

各項目を設定した値に変更してから，［クライアントサービス環境設定］ダイアログボックスを終了します。

［キャンセル］ボタン

各項目の値を変更しないで，［クライアントサービス環境設定］ダイアログボックスを終了します。

ダイアログボックスに設定する項目

［CUPからトランザクションを実行する(T)］欄

CUPからのトランザクショナルRPC要求を実行するトランザクショナルRPC実行プロセスを起動するかどうかをチェックボックスで指定します。チェックボックスをオンにした場合，［実行プロセス数］欄で指定されたプロセス数分のトランザクショナルRPC実行プロセスが起動されます。

このチェックボックスをオンにする場合は，［システム環境設定］ウィンドウで，［トランザクション機能］欄の［あり］オプションボタンをオンにしておいてください。

［実行プロセス数］欄

CUP（サーバ側で同時に処理される）から起動するトランザクションの数を指定します。常駐プロセス数を指定すると，TP1/LiNKの起動時に，指定した数のトランザクショナルRPC実行プロセスが一緒に起動し，常にCUPからのトランザクションの開始要求を受け付ける状態になります。非常駐プロセス数を指定すると，常駐プロセス数を超える処理については，非常駐プロセスを動的に起動して処理します。

［システム環境設定］ウィンドウの［サーバ数］欄にある［SPP(P)］には，常駐プロセス数と非常駐プロセス数の合計を加算してください。

［常駐(R)］の値と［非常駐(N)］の値の合計が128までになるように指定してください。合計が128を超える値は指定できません。

［常駐(R)］　　～＜符号なし整数＞((1～128))《1》
トランザクショナルRPC実行プロセスを実行する常駐プロセスの数を指定します。常駐プロセス数に0を指定することはできません。

［非常駐(N)］　　～＜符号なし整数＞((0～128))《0》
トランザクショナルRPC実行プロセスを実行する非常駐プロセスの数を指定します。非常駐プロセス数に0を指定すると，すべてのプロセスが常駐プロセスとなります。

［非常駐プロセスを起動するプロセス当たりのサービス滞留数(S)］　　～＜符号なし整数＞((0～512))《3》
非常駐プロセスを起動する目安になる，CUPからのトランザクショナルRPC要求の滞留数を指定します。（ここに指定した値×起動中のプロセス）の数を超えてトランザクショナルRPC要求が滞留したときに，TP1/LiNKは非常駐プロセスを起動します。スケジュールキューに滞留しているトランザクショナルRPC要求の数が（ここに指定した値×起動中のプロセス）の数以下になると，TP1/LiNKは非常駐プロセスを終了します。
この項目の指定は，非常駐プロセスを使う場合だけ有効になります。

［CUPから常設コネクションを確立する(P)］欄

CUPからの常設コネクションを確立するCUP実行プロセスを起動するかどうかをチェックボックスで指定します。チェックボックスをオンにした場合，［確立プロセス数］欄で指定されたプロセス数分のCUP実行プロセスが起動します。

［確立プロセス数］欄

CUP（サーバ側で同時に処理される）から確立される常設コネクションの数を指定します。常駐プロセス数を指定すると，TP1/LiNK起動時に，指定した数のCUP実行プロセスが一緒に起動し，常にCUPからの常設コネクション確立要求を受け付ける状態になります。非常駐プロセス数を指定すると，常駐プロセス数を超える処理については，非常駐プロセスを動的に起動して処理します。

［システム環境設定］ウィンドウの［サーバ数］欄にある［SPP(P)］には，常駐プロセス数と非常駐プロセス数の合計を加算してください。

［常駐(E)］の値と［非常駐(O)］の値の合計が128までになるように指定してください。合計が128を超える値は指定できません。

［常駐(E)］　　～＜符号なし整数＞((1～128))《1》
CUP実行プロセスを実行する常駐プロセスの数を指定します。常駐プロセス数に0を指定することはできません。

［非常駐(O)］　　～＜符号なし整数＞((0～128))《0》
CUP実行プロセスを実行する非常駐プロセスの数を指定します。非常駐プロセス数に0を指定すると，すべてのプロセスが常駐プロセスとなります。

［非常駐プロセスを起動するプロセス当たりのサービス滞留数(Q)］　　～＜符号なし整数＞((0～512))《3》
非常駐プロセスを起動する目安になる，CUPからの常設コネクション確立要求の滞留数を指定します。（ここに指定した値×起動中のプロセス）の数を超えてコネクション確立要求が滞留したときに，TP1/LiNKは非常駐プロセスを起動します。スケジュールキューに滞留しているコネクション確立要求の数が（ここに指定した値×起動中のプロセス）の数以下になると，TP1/LiNKは非常駐プロセスを終了します。
この項目の指定は，非常駐プロセスを使う場合だけ有効になります。

3.1.2　RPC詳細の設定

RPCに関して詳細な設定をするときは，［システム環境設定］ウィンドウの［詳細設定(H)...］ボタンをクリックします。ボタンをクリックすると，［RPC詳細設定］ダイアログボックスが表示されます。

図3-3　［RPC詳細設定］ダイアログボックス

ボタンの使い方

［初期値設定(I)］ボタン

［RPC詳細設定］ダイアログボックスの，すべての項目を初期値にします。

［OK］ボタン

各項目を設定した値に変更してから，［RPC詳細設定］ダイアログボックスを終了します。

［キャンセル］ボタン

各項目の値を変更しないで，［RPC詳細設定］ダイアログボックスを終了します。

＜この項の構成＞

(1)　［応答待ち時間］タブに設定する項目

(2)　［リトライ］タブに設定する項目

(3)　［ネームサービス］タブに設定する項目

(4)　［ソケット］タブに設定する項目

(5)　［その他］タブに設定する項目

(1)　［応答待ち時間］タブに設定する項目

［応答待ち時間］タブは，図3-3を参照してください。

［対象(O)］

次に示す設定対象をドロップダウンリストボックスから選択します。

システム共通

ネームサービス

トランザクションサービス

ネームサービス，トランザクションサービス，SPPまたはSUPの設定を省略した場合は，システム共通で設定した値が仮定されます。

［最大応答待ち時間(W)］　　～＜符号なし整数＞((0～65535))《180》（単位：秒）

ネームサービスが，他ノードのネームサービスやシステムサーバなどと，RPCでプロセス間通信する場合，サービス要求を送信してからサービスの応答が返るまでの待ち時間の最大値を指定します。

クライアントUAP（RAPサービスを含む）が他ノードのサーバUAPにサービスを要求する形態の場合，クライアントUAPに最大応答待ち時間を指定してください。他ノードのサーバUAPにサービスを要求する概要と，最大応答待ち時間が適用されるRPC通信個所を次の図に示します。

図3-4　他ノードのサーバUAPにサービスを要求する概要

クライアントUAPは，同じノードのネームサービスにサーバUAPのサービスの検索要求を送信します。この応答が返るまでの最大応答待ち時間Aは，クライアントUAPに指定した最大応答待ち時間となります。

ネームサービスは，1.で受信したサービスの検索要求を他ノードのネームサービスに送信します。この応答が返るまでの最大応答待ち時間Bが，［最大応答待ち時間(W)］に指定した値となります。複数のノードのネームサービスにサービスの検索要求を送信する場合，それぞれのノードへの検索要求ごとに最大応答待ち時間Bが適用されます。

サーバUAPのサービスを検索します。

クライアントUAPは，サーバUAPにサービス要求を送信します。この応答が返るまでの最大応答待ち時間Aは，クライアントUAPに指定した最大応答待ち時間となります。

サーバUAPのサービスを実行します。

［最大応答待ち時間(W)］には，クライアントUAPに指定する最大応答待ち時間よりも小さい値を指定してください。クライアントUAPに指定する最大応答待ち時間と同じか，それよりも大きい値を指定した場合，他ノードのネームサービス処理遅延によって，先にクライアントUAPプロセスのサービスの検索要求が送受信タイムアウトになります。

TP1/LiNKの終了処理で，［最大応答待ち時間(W)］で指定した時間だけ終了処理を待ち合わせる場合があります。したがって，大きな値を指定した場合，TP1/LiNKの終了処理に時間が掛かることがあります。

指定時間を過ぎても応答がない場合は，RPCは送受信タイムアウトとしてエラーリターンします。0を指定した場合は，応答を受信するまで待ち続けます。0を指定した場合，TP1/LiNKが終了しないことがあります。

［コネクション確立監視時間(C)］　　～＜符号なし整数＞((12～65535))《12》（単位：秒）

データ送信時のコネクション確立監視時間を指定します。

ノンブロッキングモードで呼び出したコネクション確立要求（connect()システムコール）に対する応答を受信するまでの監視時間を指定します。

この項目の指定は，［対象(O)］のドロップダウンリストボックスで「システム共通」を選択した場合だけ有効です。

(2)　［リトライ］タブに設定する項目

［RPCをリトライする(R)］

別ノードに対するTP1/LiNKのRPCでは，系切り替え中など，相手サーバが起動していない場合があるため，サービス要求が通信障害でエラーになるおそれがあります。このとき，RPCをリトライするかどうかをチェックボックスで指定します。

チェックボックスがオンのとき

RPCをリトライします。

チェックボックスがオフのとき

RPCをリトライしません。

［サービス要求送信リトライ回数最大値(M)］　　～＜符号なし整数＞((1～3600))《18》

サービス要求送信リトライ回数の最大値を指定します。

この項目の指定は，［RPCをリトライする(R)］チェックボックスをオンにした場合だけ有効になります。

［サービス要求送信リトライ間隔時間(V)］　　～＜符号なし整数＞((1～3600))《10》（単位：秒）

サービス要求送信のリトライ間隔を指定します。

この項目の指定は，［RPCをリトライする(R)］チェックボックスをオンにした場合だけ有効になります。

(3)　［ネームサービス］タブに設定する項目

［サービス情報領域の大きさ(D)］　　～＜符号なし整数＞((1～32767))《64》（単位：キロバイト）

自ノードのネームサービスが確保するサービス情報領域の大きさを指定します。ノード自動追加機能を使用する場合は，必ず指定します。

サービス情報領域の算出式を次に示します。計算結果の値の小数点以下は切り上げます。

●ノード自動追加機能を使用しない（［ノード自動追加機能設定］ダイアログボックスの［ノードの動作モード(M)］を未指定，またはノーマルノードを指定）場合

（7616＋（all_node※¹×384＋all_node_ex※²×284＋all_node_extend_number※³×384＋all_node_ex_extend_number※⁴×284）＋（（SPP※⁵＋RAP※⁶）×264）＋MCF※⁷＋CLT※⁸）÷1024

注※1

［システム環境設定］ウィンドウの［システムを構成するノード］欄に指定したノード数

注※2

システム共通定義のall_node_exオペランドに指定したノード数

注※3

［all_nodeのドメイン定義ファイルに指定する最大ノード数(A)］の値

注※4

［all_node_exのドメイン定義ファイルに指定する最大ノード数(X)］の値

注※5

SPP＝サービスグループの総数

注※6

リモートAPI機能使用時　RAP＝RAPサービスの総数

注※7

TP1/Messaging機能使用時

MCF＝（1＋mcf通信サーバ数＋MHP数）×264

注※8

クライアント拡張サービス機能使用時　CLT＝936

●ノード自動追加機能を使用する（［ノード自動追加機能設定］ダイアログボックスの［ノードの動作モード(M)］にマネジャノード，またはエージェントノードを指定）場合

（7936＋all_node_ex※¹×284＋all_node_ex_extend_number※²×284＋163840＋（（SPP※³＋RAP※⁴）×264）＋MCF※⁵＋CLT※⁶）÷1024

注※1

システム共通定義のall_node_exオペランドに指定したノード数

注※2

［all_node_exのドメイン定義ファイルに指定する最大ノード数(X)］の値

注※3

SPP＝サービスグループの総数

注※4

リモートAPI機能使用時　RAP＝RAPサービスの総数

注※5

TP1/Messaging機能使用時

MCF＝（1＋mcf通信サーバ数＋MHP数）×264

注※6

クライアント拡張サービス機能使用時　CLT＝936

［サービス情報キャッシュ領域の大きさ(E)］　　～＜符号なし整数＞((1～32767))《16》（単位：キロバイト）

自ノードのネームサービスが確保するサービス情報キャッシュ領域の大きさを指定します。

サービス情報キャッシュ領域の算出式を次に示します。計算結果の値の小数点以下は切り上げます。

●ノード自動追加機能を使用しない（［ノード自動追加機能設定］ダイアログボックスの［ノードの動作モード(M)］を未指定またはノーマルノードを指定）場合

（all_nodeおよびall_node_exに指定したノード※¹で起動するSPP※²の総計×224）÷1024

注※1

［システム環境設定］ウィンドウの［システムを構成するノード］欄に指定したノードおよびシステム共通定義のall_node_exオペランドに指定したノード，またはドメイン定義ファイルに指定したノード

注※2

SPP＝サービスグループの総数

●ノード自動追加機能を使用する（［ノード自動追加機能設定］ダイアログボックスの［ノードの動作モード(M)］にマネジャノードまたはエージェントノードを指定）場合

（ノードリストに登録されているノードおよびall_node_exに指定したノード※¹で起動するSPP※²の総計×224）÷1024

注※1

システム共通定義のall_node_exオペランドに指定したノード，またはドメイン定義ファイルに指定したノード

注※2

SPP＝サービスグループの総数

サービス情報キャッシュ領域を大きくすると，他ノードのサービス情報を検索するときの応答性能が向上します。ただし，必要以上に大きくするとOpenTP1システム全体のメモリを圧迫するので注意してください。

［システムを構成するノードに起動通知を行う(N)］

自ノードのOpenTP1起動時に，［システム環境設定］ウィンドウの［システムを構成するノード］欄に指定したノードで起動するOpenTP1に対して起動通知するかどうか，または自ノードのOpenTP1が他ノードのOpenTP1からの起動通知を受け付けるかどうかをチェックボックスで指定します。

この機能は，ネームサーバ起動時に他ノードで起動するOpenTP1のネームサービスに対して，自ノードの起動を通知するものです。この機能を使用しない場合，ホストAのOpenTP1の停止時にTCP/IPがRSTパケットを送ってこないとき，ホストBのOpenTP1ではホストAのOpenTP1の停止を検出できません。そのため，ホストAのOpenTP1が再開始しても，ホストBのOpenTP1からホストAへのサービス要求が正常に実行されません。その結果，応答を受け取れないという問題が発生します。この機能を使用した場合，ネームサービス起動時に，他ノードで起動するOpenTP1のネームサービスに対し，起動したことを通知することで，受信したOpenTP1で送信元のOpenTP1の状態を把握でき，その結果，サービス要求の送受信を正常にできるようになります。

チェックボックスがオンのとき

起動通知を受け付けます。

チェックボックスがオフのとき

起動通知を受け付けません。

なお，このオペランドに指定した値に関係なく，namunavlコマンドは動作して，起動通知を無効化します。

ノード自動追加機能を使用する場合の動作を次に示します。

チェックボックスがオンのとき

動作モードによって動作します。ノードリストに登録されているノード，およびall_node_exオペランドで指定されたノードのOpenTP1に対して起動通知します。また，起動通知を受け付けます。

マネジャノードでは，起動通知の送信元ノードがノードリストに登録されていないときは，送信元ノードをノードリストに追加します。

チェックボックスがオフのとき

他ノードのOpenTP1に対して起動通知しません。また，他ノードのOpenTP1からの起動通知を受け付けません。ただし，マネジャノードでは，起動通知の送信元ノードがノードリストに登録されていないときは，送信元ノードをノードリストに追加します。

なお，マネジャノードでは，新たに起動したエージェントノードからのノードリスト要求を起動通知と解釈します。

注1

通知元ホストで複数のOpenTP1が起動している場合や，系切り替え後に同一IPアドレスで複数のOpenTP1が起動する（1LANボードだけ使用時）環境では，起動通知機能は動作しません。したがって，そのような環境ではチェックボックスをオンにしないでください。

注2

この機能を使用するには，送信側および受信側の両方のノードでOpenTP1のバージョンを05-02以降にする必要があります。

この機能を使用する場合，システム起動前に次の準備を行ってください。

システム共通定義（%DCDIR%¥conf¥BETRANRCファイル）のname_notifyオペランドに起動通知機能を使用するようテキストエディタで編集します。

［システム環境設定］ウィンドウのシステムを構成するノード（システム共通定義のall_nodeオペランド）またはシステム共通定義のall_node_exオペランドには，通知先のOpenTP1ノードを指定してください。name_notifyオペランドの定義を省略した場合，または通知しないよう指定した場合，起動通知は無視されます。

起動通知を受けるOpenTP1のシステム共通定義のname_notifyオペランドには，起動通知機能を使用するよう指定してください。また，all_nodeまたはall_node_exオペランドも同じくシステム共通定義に指定します。

オペランドの説明と定義例を次に示します。

形式

set name_notify = Y|N

説明

自ノードのOpenTP1起動時に，all_nodeおよびall_node_exオペランドで指定しているノードで起動するOpenTP1に対し起動通知するかどうか，または自ノードのOpenTP1が他ノードのOpenTP1からの起動通知を受け付けるかどうかを指定します。

Y：起動通知機能を使用します。

N：起動通知機能を使用しません。

なお，name_notifyオペランドにYを指定する代わりに，［システムを構成するノードに起動通知を行う(N)］のチェックボックスで指定することもできます。オペランド指定時の動作については，［システムを構成するノードに起動通知を行う(N)］と同じです。

形式

set all_node_ex = "ノード名〔:ポート番号〕"〔,"ノード名〔:ポート番号〕"…〕

説明

あて先指定のRPCで，all_nodeオペランドに指定したノード名以外に通信するおそれのあるOpenTP1システムのノード名およびそのネームサーバがウェルノウンポート番号として使用するポート番号を指定します。

自ノードのOpenTP1起動時に，all_node_exオペランドおよびall_nodeオペランドで指定したノードで起動するOpenTP1へ起動通知します。起動通知機能を使用すると，コネクション確立時期を管理でき，確実に送信できるようになります。

ノード名　　～〈1～64文字の識別子〉
OpenTP1システムのすべてのノード名を指定します。ノード名とは，TCP/IPプロトコルのホスト名のことです。

ポート番号　　～〈符号なし整数〉((5001～65535))《10000》
ネームサーバがウェルノウンポート番号として使用するポート番号を指定します。ポート番号を省略した場合は，システム環境設定ウィンドウで指定したネームサービスのポート番号が仮定されます。

このオペランドに指定したノードがall_nodeオペランドにも指定されていたり，このオペランド内に重複して指定されていたりする場合，OpenTP1が最初に解析したオペランドに対してKFCA00604-Wメッセージが出力されます。この場合，最初に解析したノードが有効となります。解析の優先順位は次のとおりです（優先順位高い＞優先順位低い）。

all_nodeオペランド，all_node_exオペランド両方に同一ノードが指定されている場合
all_nodeオペランド＞all_node_exオペランド

all_nodeオペランドまたはall_node_exオペランドに同一ノードが複数指定されている場合
先行指定ノード＞後続指定ノード

ノード自動追加機能を使用する場合，次の点に注意してください。

［ノード自動追加機能設定］ダイアログボックスの［ノードの動作モード(M)］にマネジャノードまたはエージェントノードを指定したとき，このオペランドに指定したノードはノードリストに登録されません。ノードリストに登録するノードはこのオペランドに指定しないでください。

マネジャノードでは，このオペランドに指定したノードの情報がエージェントノードへ配布されません。ノードリストに登録するノードは，このオペランドに指定しないでください。

定義例

定義の最終行には，改行を入力してください。

# ALL RIGHTS RESERVED, COPYRIGHT (C)1994, HITACHI, LTD.
# LICENSED MATERIAL OF HITACHI,LTD.
# *
# * システム共通定義
# * 環境名： betranrc
# *
# TP1/LiNK (betranrc)
set name_port = 10000
set rpc_trace = N
set rpc_datacomp = N
set client_uid_check = N
set node_id = LiNK
set all_node = "Server01:10000",¥
"Server02:20000",¥
"Server03:30000"
set rpc_delay_statistics = Y
set name_notify = Y
set all_node_ex = "EXServer01:10000",¥
"EXServer02:20000",¥
"EXServer03:30000"

［グローバル検索機能を使用する(G)］

グローバル検索機能を使用するかどうかをチェックボックスで指定します。

グローバル検索機能とは，［システム環境設定］ウィンドウの［システムを構成するノード］欄に指定した各ノード上でネームサービスがキャッシュしている他ノードのサービス情報を取得する機能です。グローバル検索機能の詳細については，マニュアル「OpenTP1 解説」を参照してください。

チェックボックスがオンのとき

グローバル検索機能を使用します。

チェックボックスがオフのとき

グローバル検索機能を使用しません。

［ドメイン定義ファイルを使用する(F)］

TP1/LiNK起動時および再開始（リラン）時に有効にするドメイン構成をチェックボックスで指定します。なお，ドメイン定義ファイルの詳細については，マニュアル「OpenTP1 運用と操作」を参照してください。

チェックボックスがオンのとき

ドメイン定義ファイルに指定したドメイン構成を有効にします。

チェックボックスがオフのとき

［システム環境設定］ウィンドウの［システムを構成するノード］欄に指定したドメイン構成を有効にします。

ドメイン定義ファイルには，all_nodeオペランドを指定するファイルと，all_node_exオペランドを指定するファイル，さらに優先選択ノードを指定する定義ファイルがあります。ファイル名称は任意です。このチェックボックスでの指定を有効にするには，それぞれのドメイン定義ファイルを次に示す場所に格納してください。

all_nodeオペランドのドメイン定義ファイル

%DCCONFPATH%¥dcnamndフォルダ下

all_node_exオペランドのドメイン定義ファイル

%DCCONFPATH%¥dcnamndexフォルダ下

優先選択ノードを指定する定義ファイル

%DCCONFPATH%¥dcnamprフォルダ下

これらのファイルのノード名やポート番号に不正があった場合は，KFCA00656-E（ノード名不正），KFCA00657-E（ポート番号不正）またはKFCA00666-E（ホスト未定義）のメッセージが出力され，TP1/LiNKは起動に失敗します。

また，優先選択ノードの定義ファイルに指定したノードがall_nodeのドメイン定義ファイルに指定されていなかった場合は，KFCA00603-W（all_nodeに未定義）のメッセージが出力され，優先選択ノードの指定を無効としてTP1/LiNKが起動します。なお，同一ファイル内のほかの行で正しく定義されているノードについては，優先選択ノードの指定は有効となります。

それぞれのフォルダ下に，複数のドメイン定義ファイルを格納した場合，同じフォルダ下に格納されているすべてのドメイン定義ファイルを合わせて一つのドメイン（TP1/LiNKシステム）を構成します。

次に示す場合は，自ノードだけのドメインとしてTP1/LiNKシステムを構成します。

ドメイン定義ファイルが正しい場所に存在しない場合

ドメイン定義ファイルを格納するフォルダが存在しない場合

ドメイン定義ファイルにノードが指定されていない場合

TP1/LiNKの起動中にこのチェックボックスの指定を変更した場合の動作は保証できません。

チェックボックスをオフにした場合にnamchgflコマンドを実行すると，コマンドがエラーリターンします。

チェックボックスの指定による機能差について次の表に示します。

表3-1　［ドメイン定義ファイルを使用する(F)］チェックボックスの指定による機能差

TP1/LiNKの状態
チェックボックスの指定値

オン
オフ

正常開始
［システム環境設定］ウィンドウの［システムを構成するノード］欄に指定した値を無視して，ドメイン定義ファイルの指定でTP1/LiNKシステムを構成する。
［システム環境設定］ウィンドウの［システムを構成するノード］欄の指定でTP1/LiNKシステムを構成する。

再開始
（リラン）
再開始が発生した時点の，［システム環境設定］ウィンドウの［システムを構成するノード］欄の指定を無視して，ドメイン定義ファイルの指定でTP1/LiNKシステムを構成する。
再開始時点の，［システム環境設定］ウィンドウの［システムを構成するノード］欄の指定でTP1/LiNKシステムを構成する。

稼働中
namchgflコマンドでドメイン構成を変更できる。コマンド実行時点のドメイン定義ファイルの指定でドメイン構成を変更する。
namchgflコマンドでドメイン構成を変更できない。TP1/LiNK起動時点の環境不正となり，コマンドがエラーリターンする。

［all_nodeのドメイン定義ファイルに指定する最大ノード数(A)］　　～＜符号なし整数＞((0～65535))《64》

all_nodeオペランドのドメイン定義ファイルに指定するノードの最大数を指定します。なお，ドメイン定義ファイルの詳細については，マニュアル「OpenTP1 運用と操作」を参照してください。

namchgflコマンドでドメイン構成を変更する場合，変更後のドメインを構成する最大ノード数を指定します。

この項目に指定した値を超えるノード数を，［システム環境設定］ウィンドウの［システムを構成するノード］欄，またはドメイン定義ファイルに指定した場合にnamchgflコマンドを実行すると，コマンドがエラーリターンし，KFCA00616-EおよびKFCA00654-Eのエラーメッセージを出力します。この場合，ドメインは変更されないで，コマンド実行前のドメイン構成のままになります。

［all_node_exのドメイン定義ファイルに指定する最大ノード数(X)］　　～＜符号なし整数＞((0～65535))《64》

all_node_exオペランドのドメイン定義ファイルに指定するノードの最大数を指定します。なお，ドメイン定義ファイルの詳細については，マニュアル「OpenTP1 運用と操作」を参照してください。

namchgflコマンドに-eオプションを指定してドメイン構成を変更する場合，変更後のドメインを構成する最大ノード数を指定します。

この項目に指定した値を超えるノード数を，ドメイン定義ファイルに指定した場合にnamchgflコマンドを実行すると，コマンドがエラーリターンし，KFCA00655-Eのエラーメッセージを出力します。この場合，ドメインは変更されないで，コマンド実行前のドメイン構成のままになります。

［ノード監視機能(C)］

次に示す対象をドロップダウンリストボックスから選択して，ノード監視機能を使用するかどうかを指定します。

使用しない
ノード監視機能を使用しません。ドロップダウンリストボックスで，何も選択しなかった場合も同様です。

一方送信型ノード監視
一方送信型ノード監視機能を使用します。

送受信型ノード監視
送受信型ノード監視機能を使用します。

ノード監視機能を使用すると，［システム環境設定］ウィンドウの［システムを構成するノード］欄に指定したノードの起動状況を監視できます。この機能では，起動を検出できなかったOpenTP1ノードすべてのサービス情報をキャッシュから削除します。さらに，そのノードとのコネクションを切断します。ノード監視機能の詳細については，マニュアル「OpenTP1 解説」を参照してください。

ノード監視機能を使用する場合，次の点に注意してください。

監視対象のホストで複数のOpenTP1が起動している場合や，系切り替え後に同一のIPアドレスで複数のOpenTP1が起動する（1LANボードだけ使用時）環境では，ノード監視機能を使用できません。したがって，そのような環境では，「一方送信型ノード監視」または「送受信型ノード監視」を選択しないでください。

ノード監視機能の監視用通信処理で，ノードダウン検知の感度をチューニングする場合，次の項目を変更してください。
「一方送信型ノード監視」を選択した場合
［応答待ち時間］タブの［コネクション確立監視時間(C)］を変更してください。
「送受信型ノード監視」を選択した場合
［ネームサービス］タブの［ノードダウンを検知するまでの最大待ち時間(W)］を変更してください。

ノード監視機能で同時に監視できるノード数は60ノードまでです。［システム環境設定］ウィンドウの［システムを構成するノード］欄およびシステム共通定義のall_node_exオペランドに指定したノード数が60を超える場合，60ノード単位で監視が繰り返されます。

［ノード監視間隔時間(V)］に指定した時間が経過していなくても，障害から復旧したノードがRPC抑止リストから削除されることがあります。この場合，KFCA00651-Iメッセージは出力されません。

［ノード監視機能(C)］に「送受信型ノード監視」を指定しているとき，KFCA00650-Iメッセージが定期的に出力されることがあります。
ノード自動追加機能を使用する場合，次の点に注意してください。
・［ノード自動追加機能設定］ダイアログボックスの［ノードの動作モード(M)］にマネジャノードを指定した場合，この指定を無視して，送受信型ノード監視機能によって，エージェントノードとノーマルノードの稼働状況が監視されます。そのため，同一ホストで複数のエージェントノードやノーマルノードを動作させる場合は，一つのホストに複数の異なるIPアドレスを設定し，それぞれのノードに異なるIPアドレスを設定してください。
・［ノード自動追加機能設定］ダイアログボックスの［ノードの動作モード(M)］にエージェントノードを指定した場合，［ノード自動追加機能設定］ダイアログボックスの［マネジャノードのノード名(N)］にマネジャノードを指定してください。また，［ノード監視機能(C)］の指定内容によって，次のように動作します。
［ノード監視機能(C)］で何も選択しなかった場合，または「使用しない」を指定した場合
送受信型ノード監視機能によって，マネジャノードの稼働状況が監視されます。同時にノードリストの整合性が確保されます。
［ノード監視機能(C)］に「一方送信型ノード監視」，または「送受信型ノード監視」を指定した場合
送受信型ノード監視機能によって，指定値を無視してマネジャノードの稼働状況が監視されます。同時にノードリストの整合性が確保されます。エージェントノード，およびノーマルノードとのノード監視は指定値に従って監視されます。

同一ホストで複数のマネジャノードを動作させる場合は，一つのホストに複数の異なるIPアドレスを設定し，それぞれのマネジャノードに異なるIPアドレスを設定してください。

［ノード監視間隔時間(V)］　　～＜符号なし整数＞((1～65535))《60》（単位：秒）

ノードの監視が終了したあと，次の監視を開始するまでの時間を指定します。

［ノード監視機能(C)］で「一方送信型ノード監視」または「送受信型ノード監視」を選択した場合に指定できます。

［システム環境設定］ウィンドウのシステムを構成するノードに多くのノードを指定している場合，ノード監視機能を使用するとUAPで実行するRPCに影響を及ぼす場合があります。このような場合，この項目に小さな値を指定しないでください。

ノード自動追加機能を使用する場合の動作は次のとおりです。

マネジャノードの場合，この指定間隔でエージェントノードの稼働状況を監視します。

エージェントノードの場合，この指定間隔で次のように動作します。
1. マネジャノードの稼働状況を監視します。
2. 1.と同時にマネジャノードに対してノードリスト要求を送信し，マネジャノードとの間でノードリストの整合性を確保します。
3. ほかのエージェントノードおよびノーマルノードの稼働状況は，［ノード監視機能(C)］の指定に従って監視します。

この指定値には，マネジャノードの［ノードリスト同期待ち時間(S)］の指定値と同じ値を指定してください。指定値が異なると，エージェントノードのノードリストから不当にノード情報が削除されることがあります。また，マネジャノードとエージェントノードとの間で，ノードリストの整合性が確保されるまでに時間が掛かるおそれがあります。

［ノードダウンを検知するまでの最大待ち時間(W)］　　～＜符号なし整数＞((12～65535))《12》（単位：秒）

［ノード監視機能(C)］で「送受信型ノード監視」を指定した場合に実行する送受信型ノード監視で，監視対象のノードから応答が返るまでの待ち時間の最大値を指定します。［ノード監視機能(C)］で「送受信型ノード監視」を選択した場合に指定できます。

なお，［ノード監視機能(C)］に「一方送信型ノード監視」を指定した場合は，［応答待ち時間］タブの［コネクション確立監視時間(C)］に指定した値が，ノードダウンを検知するまでの時間となります。

ノード自動追加機能を使用する場合は，次のような値になります。

マネジャノードでは，監視対象のノードから応答が返るまでの待ち時間の最大値となります。

エージェントノードでは，次のような値になります。
1. マネジャノードを認識するまでは，［ノード自動追加機能設定］ダイアログボックスの［マネジャノードのノード名(N)］に指定されたノードから応答が返るまでの応答待ち時間の最大値となります。
2. マネジャノード認識後は，監視対象のノードから応答が返るまでの待ち時間の最大値となります。

［他ノードのサービス情報の有効時間(O)］　　～＜符号なし整数＞((0～65535))《1800》（単位：秒）

他ノードから取得したサーバUAPのサービス情報の有効時間を指定します。ネームサービスでは，次に示す場合に，他ノードで起動しているサーバUAPのサービス情報を取得します。

RPC先となるサービスグループに対して，そのノードで初めてRPCを実行した場合

他ノードでサーバUAPが起動された場合

他ノードからサービス情報を取得した時点からこのオペランドに指定された時間内は，他ノードに対してサービス情報を検索しないでRPCが実行されます。RPC実行時に，サービス情報の有効時間がこのオペランドに指定された時間を超過していた場合，［システム環境設定］ウィンドウの［システムを構成するノード］欄に指定されたノードからサービス情報を新たに取得し，すでに登録されているサービス情報が更新されます。また，サービス情報の有効時間内でも，他ノードからサービス情報の更新通知を受けると，サービス情報は更新されます。

［他ノードのサービス情報の有効時間(O)］の指定値を変更する場合の注意事項を次に示します。

0を指定した場合
サービス情報の有効時間満了時でもサービス情報を取得しません。

デフォルト値より小さい値（1～1799）を指定した場合
サービス情報の有効時間が短くなるため，RPC実行時に他ノードのネームサービスとのサービス情報のやり取りが多くなり，他ノードとの通信トラフィックが高くなります。この場合，グローバルキャッシュを更新する間隔を短くすることで，［システム環境設定］ウィンドウの［システムを構成するノード］で指定されたノードのサービス情報変化の検知が早まります。
極端に小さい値を指定した場合，各ノードのネームサービスの負荷が上がり，サービス情報の検索などネームサービスの機能が利用できなくなることがあります。

デフォルト値より大きい値（1801～65535）を指定した場合
サービス情報の有効時間が長くなるため，RPC実行時に他ノードのネームサービスとのサービス情報のやり取りが少なくなり，他ノードとの通信トラフィックが低くなります。他ノードで起動しているサーバUAPのサービス情報を取得する契機が少なくなるため，任意のノードで起動しているサーバUAPへRPCが実行されないなどの現象が発生することがあります。

ノード自動追加機能の使用時に，小さな値を指定すると，ノードリストの参照が頻繁になります。このとき，ノードリストからの削除が実行されないことが多くなります。

(4)　［ソケット］タブに設定する項目

［対象(B)］

次に示す設定対象をドロップダウンリストボックスから選択します。

システム共通

ネームサービス

スケジュールサービス

トランザクションサービス

ネームサービス，スケジュールサービス，トランザクションサービス，SPPまたはSUPの設定を省略した場合は，システム共通で設定した値が仮定されます。

［ソケット用ファイル記述子の最大数(S)］　　～＜符号なし整数＞((32～2047))《64》

OpenTP1制御下のプロセスで，ソケット用に使用するファイル記述子の最大値を指定します。

OpenTP1制御下のプロセスは，システムサービスやユーザサーバとの間で，ソケットを使用したTCP/IP通信でプロセス間の情報交換をしています。このため，同時に稼働するUAPプロセスの数によって，ソケット用のファイル記述子の最大数を変更する必要があります。

この項目の指定値が小さいと，OpenTP1制御下のほかのプロセスとのコネクションが設定できなくなるため，プロセスはKFCA00307-Eのエラーメッセージを出力して異常終了します。

ソケット用ファイル記述子の最大数の計算式を次に示します。計算結果の値の小数点以下は切り上げます。

●システム共通の場合

（自ノード内UAPプロセス数※¹＋システムサービスプロセス数※²）÷0.8

　注※1

自ノード内UAPプロセス数は，次に示す値の合計です。

自OpenTP1内のUAPプロセス数

CUPから同時に起動するトランザクション数（［クライアントサービス環境設定］ダイアログボックスで指定したトランザクション実行プロセスの総数）

　注※2

システムサービスプロセス数とは，自OpenTP1内のシステムサービスプロセスの数です。自OpenTP1内のシステムサービスプロセスは，rpcstatコマンドで表示されるサーバ名をカウントすることで求められます。rpcstatコマンドで表示されるサーバ名のうち，マニュアル「OpenTP1 解説」のOpenTP1のプロセス構造に記載されているシステムサービスプロセスをカウントしてください。

●ネームサービスの場合

［ノード自動追加機能設定］ダイアログボックスの［ノードの動作モード(M)］にマネジャノード，またはエージェントノードを指定した場合は，2032を指定してください。

［ノード自動追加機能設定］ダイアログボックスの［ノードの動作モード(M)］を未指定，またはノーマルノードを指定した場合は，次の計算式で求めた値を指定してください。

（A＋B＋C）÷0.8

計算式の凡例を次に示します。

A：自ノード内での，次の値の合計値です。

OpenTP1の開始から終了までに起動するUAPのプロセス数

［クライアントサービス環境設定］ダイアログボックスで指定したトランザクション実行プロセスの総数

システムサービスプロセス数
システムサービスプロセス数とは，自OpenTP1内のシステムサービスプロセスの数です。自OpenTP1内のシステムサービスプロセスは，rpcstatコマンドで表示されるサーバ名をカウントすることで求められます。rpcstatコマンドで表示されるサーバ名のうち，マニュアル「OpenTP1 解説」のOpenTP1のプロセス構造に記載されているシステムサービスプロセスをカウントしてください。

次のどちらかの値
［RPC詳細設定］ダイアログボックスの［ネームサービス］タブで［ドメイン定義ファイルを使用する(F)］にオフを指定している場合
［システム環境設定］ウィンドウの［システムを構成するノード］とシステム共通定義のall_node_exオペランドに指定しているノードの数
［RPC詳細設定］ダイアログボックスの［ネームサービス］タブで［ドメイン定義ファイルを使用する(F)］にオンを指定している場合
ドメイン定義ファイル（%DCCONFPATH%¥dcnamnd，および%DCCONFPATH%¥dcnamndexフォルダ下のファイル）に指定しているノードの数

自ノードで稼働するUAPで，dc_rpc_call_to関数を実行する場合の宛先に指定しているノード数
ただし，Aの4.と重複したノードは除きます。

B：他ノードのOpenTP1システムで，次の1.～2.に該当するノードの数の合計値です。

次のどちらかの値
［RPC詳細設定］ダイアログボックスの［ネームサービス］タブで［ドメイン定義ファイルを使用する(F)］にオフを指定している場合
自ノード名を［システム環境設定］ウィンドウの［システムを構成するノード］（システム共通定義のall_nodeオペランド）に，またはシステム共通定義のall_node_exオペランドに指定しているノードの数を4倍した値
［RPC詳細設定］ダイアログボックスの［ネームサービス］タブで［ドメイン定義ファイルを使用する(F)］にオンを指定している場合
自ノード名をドメイン定義ファイル（%DCCONFPATH%¥dcnamnd，および%DCCONFPATH%¥dcnamndexフォルダ下のファイル）に指定しているノードの数を4倍した値

自ノード名をdc_rpc_call_to関数の宛先に指定したUAPが稼働する他ノード数
ただし，Aの4.および5.，Bの1.のどれかと重複したノードを除きます。

C：自ノードのネームサービスのポート番号に接続するCUPプロセス数，およびスレッド数です。

●スケジュールサービスの場合

（全UAPプロセス数※¹＋スケジュールサービスを要求してくるノード数※²＋システムサービスプロセス数※³）÷0.8

　注※1

全ノード内UAPプロセス数は，次に示す値の合計です。

自OpenTP1内のUAPプロセス数

自OpenTP1内のサービスを利用する，他ノード内のUAPプロセス数

CUPから同時に起動するトランザクション数（［クライアントサービス環境設定］ダイアログボックスで指定したトランザクション実行プロセスの総数）

　注※2

スケジュールサービスに対してサービスを要求してくるノード数は，次に示す値の合計です。ただし，重複する場合は一つ分だけ加算してください。

［システム環境設定］ウィンドウのシステムを構成するノードに指定したノード名の数

OpenTP1のall_nodeオペランド（ノードがTP1/LiNKの場合は［システム環境設定］ウィンドウの［システムを構成するノード］）に自ノード名を指定している，他ノードの数

　注※3

システムサービスプロセス数とは，自OpenTP1内のシステムサービスプロセスの数です。自OpenTP1内のシステムサービスプロセスは，rpcstatコマンドで表示されるサーバ名をカウントすることで求められます。rpcstatコマンドで表示されるサーバ名のうち，マニュアル「OpenTP1 解説」のOpenTP1のプロセス構造に記載されているシステムサービスプロセスをカウントしてください。

●トランザクションサービスの場合

（全UAPプロセス数※¹＋トランザクションサービスを要求してくるノード内のtrnシステムプロセス数※²＋システムサービスプロセス数※³）÷0.8

　注※1

全ノード内UAPプロセス数は，次に示す値の合計です。

自OpenTP1内のUAPで，トランザクショナルRPCでサービス要求を送信するUAPプロセス数

自OpenTP1内のサービスに対し，トランザクショナルRPCでサービスを要求してくる他ノード内のUAPプロセス数

CUPから同時に起動するトランザクション数（［クライアントサービス環境設定］ダイアログボックスで指定したトランザクション実行プロセスの総数）

　注※2

トランザクションサービスを要求してくるノード内のtrnシステムプロセス数は，次に示す値の合計です。

自OpenTP1のall_nodeオペランド（ノードがTP1/LiNKの場合は［システム環境設定］ウィンドウの［システムを構成するノード］）に指定したノードのうち，自OpenTP1からトランザクショナルRPCでトランザクションを拡張するノードに指定している，トランザクションサービス定義のtrn_recovery_process_countオペランドの値（ノードがTP1/LiNKの場合は1）に1を加えた数

自ノード名を，OpenTP1のall_nodeオペランド（ノードがTP1/LiNKの場合は［システム環境設定］ウィンドウの［システムを構成するノード］）に指定している他ノードのうち，トランザクショナルRPCで自OpenTP1にトランザクションを拡張しているノードに指定している，トランザクションサービス定義のtrn_recovery_process_countオペランドの値（ノードがTP1/LiNKの場合は1）に1を加えた数

　注※3

システムサービスプロセス数とは，自OpenTP1内のシステムサービスプロセスの数です。自OpenTP1内のシステムサービスプロセスは，rpcstatコマンドで表示されるサーバ名をカウントすることで求められます。rpcstatコマンドで表示されるサーバ名のうち，マニュアル「OpenTP1 解説」のOpenTP1のプロセス構造に記載されているシステムサービスプロセスをカウントしてください。

［ソケットの一時クローズ開始数(C)］　　～＜符号なし整数＞((0～100))《100》（単位：％）

OpenTP1制御下のプロセスで，［ソケット用ファイル記述子の最大数］に指定した使用ソケット数の上限に対し，一時クローズ処理によるソケットの再利用を開始するパーセンテージを指定します。一時クローズ処理とは，保持したコネクションを，ユーザの関知しないところでコネクションを確立したプロセス間の合意のもとに切断することで，プロセス内で使用するソケット数を調整する機能です。

OpenTP1では，プロセス内のソケット用に使用しているファイル記述子の数が，「［ソケット用ファイル記述子の最大数］に指定した値×［ソケットの一時クローズ開始数］に指定した値÷100」の値を超えた時点で，一時クローズ処理を開始します。

0を指定すると，確立したコネクションを保持しないで，コネクションを確立するたびに一時クローズ処理を実行します。

［ソケットの一時クローズ非対象数(U)］　　～＜符号なし整数＞((0～80))《0》（単位：％）

［ソケット用ファイル記述子の最大数］に指定した使用ソケット数の上限に対して，「［ソケット用ファイル記述子の最大数］に指定した値×［ソケットの一時クローズ非対象数］に指定した値÷100」の個数を一時クローズ処理の非対象として扱い，一時クローズ要求を送信しません。

ソケットの一時クローズ非対象数は，ソケットの一時クローズ開始数と同じか，それ以下の値を指定してください。

OpenTP1制御下のプロセスは，システムサーバやユーザサーバとの間で，ソケットを使用したTCP/IP通信による，プロセス間の情報交換をします。このとき，コネクション確立時のオーバヘッド削減のために，一度確立したコネクションは切断しないで保持し，同じプロセス間の通信で再利用しています。しかし，同じプロセス間の通信が頻繁に発生しない運用や，通信する相手プロセスが非常に多いシステムでは，保持しているコネクション数がある程度増えてきたときに適度にコネクションを解放し，1プロセスで使用するソケット数を調整および再利用できるようにする必要があります。

また，OpenTP1制御下のプロセスから電文の送信が発生した場合は，コネクションを確立するときに送信ポートを確保します。このポートの個数は1マシンで約4000であるため，UAPプロセスが1プロセスで保持するコネクション数の，システム全体の合計が2000を超えない程度に，［ソケットの一時クローズ開始数］および［ソケットの一時クローズ非対象数］を指定して調整してください。

この指定値が適切でないと，1プロセス内で使用できるソケット数が上限に達して，一時クローズによるソケットの再利用が新たなコネクション確立要求に追いつかなくなったり，システム全体で使用するポート数がTCP/IPの上限を超え，プロセスが異常終了したりする場合があります。

OpenTP1で使用するポート番号使用量の見積もり式を次の表に示します。

表3-2　OpenTP1で使用するポート番号使用量の見積もり式

区分 | 使用量見積もり式
TCP/IP通信受け付け（listenポート） | OpenTP1システムプロセス数＋ユーザサーバプロセス数
システムプロセス間通信用送信ポート | 他ノードと通信するシステムプロセス数×他ノード数(namd，istd※1，trnrmd，trnrvd×n※2)
RPC送信用送信ポート | UAPプロセスがRPCを発行するノード数（UAPプロセス当たり）
RPC応答用送信ポート | UAPプロセスがRPCを発行するクライアントプロセス数（UAPプロセス当たり）

注※1　TP1/SharedTableAccessを使用している場合の値です。

注※2　nはトランザクションサービス定義のtrn_recovery_process_count指定値です。TP1/LiNKの場合は1になります。

［一時クローズ要求の応答監視時間(L)］　　～＜符号なし整数＞((0～65535))《180》（単位：秒）

OpenTP1制御下のプロセスで，使用中のソケット数が［ソケット用ファイル記述子の最大数］で指定した上限値に達した時点から，一時クローズ処理でソケットに空きができて，再利用できるようになるまでの監視時間を指定します。

ここで指定した時間を過ぎてもソケットが空かない場合は，そのプロセスを異常終了させます。

0を指定した場合は，無限に待ちます。

［一時クローズ処理要求が到着していないかどうかを検査する(Z)］

トランザクションリカバリデーモンがトランザクション回復要求の受信待ち状態のとき，定期的に割り込んで，一時クローズ処理要求の到着の有無を検査するかどうかについて，チェックボックスで指定します。

この項目の指定は，［対象(B)］のドロップダウンリストボックスで「トランザクションサービス」を選択した場合だけ有効になります。

チェックボックスがオンのとき

トランザクション回復要求の受信待ち状態に定期的に割り込み，一時クローズ処理要求が到着していないかどうかを検査します。

チェックボックスがオフのとき

トランザクション回復要求の受信待ち状態に割り込まないで，トランザクション回復要求が到着するまで待ち状態を継続します。

［ソケットの再利用指示を受信できる契機を与えるインタバル時間(Y)］　　～＜符号なし整数＞((1～86400))《90》（単位：秒）

トランザクションリカバリデーモンがトランザクション回復要求の受信待ち状態のとき，定期的に割り込んで，一時クローズ処理要求の到着の有無を検査する場合の検査インタバル時間を，秒単位で指定します。

この指定値は，トランザクション回復要求を待つことなく次々にトランザクション回復要求を受け付けている場合にも使用されます。連続してトランザクション回復要求を受け付けた時間が一定時間を超えたところで，一時クローズ処理要求が到着していないかどうかを検査するときのインタバル値として使用されます（連続してトランザクション回復要求を受け付けた時間がこの指定値を超えたときの一時クローズ処理要求到着検査には，割り込みは発生しません）。

この指定値は，［一時クローズ要求の応答監視時間(L)］指定値よりも小さい値を設定する必要があります。

トランザクション回復要求待ち状態に割り込んで，一時クローズ処理要求受信を検査する機能は，［一時クローズ処理要求が到着していないかどうかを検査する(Z)］チェックボックスがオンのときにだけ動作します。

連続してトランザクション回復要求を受け付けたときに一時クローズ処理要求受信を検査する機能は，［一時クローズ処理要求が到着していないかどうかを検査する(Z)］の指定に関係なく動作します。

最大値を指定した場合は，［一時クローズ処理要求が到着していないかどうかを検査する(Z)］の指定に関係なく，一時クローズ処理要求が到着していないかどうかを検査しません。

この項目の指定は，［対象(B)］のドロップダウンリストボックスで「トランザクションサービス」を選択した場合だけ有効になります。

［TCP/IPの受信バッファサイズ(H)］　　～＜符号なし整数＞((0，8192～1048576))《8192》（単位：バイト）

コネクションごとに確保されるTCP/IPの受信バッファのサイズを指定します。

この項目の指定は，［対象(B)］のドロップダウンリストボックスで「システム共通」を選択した場合だけ有効になります。

高速な通信媒体やMTUの大きな通信媒体を使用している場合，この値を大きくすれば性能向上を見込めます。ただし，イーサネットなどのMTUの小さな通信媒体を使用している場合，性能が悪くなるおそれがあります。

0を指定した場合は，OSの受信バッファサイズが適用されます。受信データサイズが8192バイトを超える場合，この項目に0を指定することで受信バッファのサイズが拡張され，性能が向上することがあります。

0を指定する場合の使用方法については，マニュアル「OpenTP1 運用と操作」の遠隔サービス要求時の通信レスポンスのチューニングに関する記述を参照してください。

なお，0を指定する場合，このノードと通信するすべてのノードで同じ値を指定してください。同じ値を指定しない場合，通信するノードとバッファサイズに差異が生じ，通信性能が劣化するおそれがあります。また，1～8191は指定できません。OSで使用できるTCP/IPの受信バッファのサイズ以下の値を指定してください。

注

TCPは，受信したデータに対し，送達確認（ACK）パケットを返信します。受信バッファのサイズに対し，受信したデータが小さいと，データを受信しても直ちにACKを返信しません（遅延ACK）。この指定値に大きな値を指定し，小さいデータをやり取りし合うような通信処理の場合，遅延ACKの影響によって性能が悪くなるおそれがあります。遅延ACKについての詳細は，TCP/IPの文献を参照してください。

この指定は，［SPP詳細設定］または［SUP詳細設定］ダイアログボックスでも指定できます。［SPP詳細設定］または［SUP詳細設定］ダイアログボックスで指定した値が優先されます。

［TCP/IPの送信バッファサイズ(O)］　　～＜符号なし整数＞((0，8192～1048576))《8192》（単位：バイト）

コネクションごとに確保されるTCP/IPの送信バッファのサイズを指定します。

この項目の指定は，［対象(B)］のドロップダウンリストボックスで「システム共通」を選択した場合だけ有効になります。

高速な通信媒体やMTUの大きな通信媒体を使用している場合，この値を大きくすれば性能向上を見込めます。ただし，イーサネットなどのMTUの小さな通信媒体を使用している場合，性能が悪くなるおそれがあります。

RPCは，送信バッファにデータ送信する段階で4キロバイト単位に送信していて，ネットワークの状態によっては送信バッファ内のデータがネットワーク上に出力しきれないで，送信処理に失敗することがあります。例えば，［RPC詳細設定］ダイアログボックスの［その他］タブで［RPC送受信電文の最大長(M)］に8を指定して8メガバイトのメッセージを送信する場合，ネットワークの状態次第では4キロバイトの送信処理で35ミリ秒の待ちが多く発生し，通信性能に大きな影響を与えるおそれがあります。

このような場合は，この項目に0を指定し，送信バッファサイズを調整することを推奨します。

0を指定した場合は，OSの送信バッファサイズが適用されます。送信データサイズが8192バイトを超える場合，この項目に0を指定することで送信バッファのサイズが拡張され，性能が向上することがあります。

0を指定する場合の使用方法については，マニュアル「OpenTP1 運用と操作」の遠隔サービス要求時の通信レスポンスのチューニングに関する記述を参照してください。

なお，0を指定する場合，このノードと通信するすべてのノードで同じ値を指定してください。同じ値を指定しない場合，通信するノードとバッファサイズに差異が生じ，通信性能が劣化するおそれがあります。また，1～8191は指定できません。OSで使用できるTCP/IPの送信バッファのサイズ以下の値を指定してください。

この指定は，［SPP詳細設定］または［SUP詳細設定］ダイアログボックスでもできます。［SPP詳細設定］または［SUP詳細設定］ダイアログボックスで指定した値が優先されます。

(5)　［その他］タブに設定する項目

［最小ポート番号(P)］　　～＜符号なし整数＞((5001～65535))

OpenTP1制御下でウェルノウンポート化されていないプロセスが使用する受信用ポート番号を特定の範囲内の値に限定したい場合，その最小値を指定します。この設定は，OpenTP1のシステムサーバ，SUP，SPP，およびMHPで有効です。

使用するポート番号の数は，「［システム環境設定］ウィンドウの［サーバ数］に指定した総数＋182」です。

最小ポート番号は，「［システム環境設定］ウィンドウの［サーバ数］に指定した総数＋182」の値との合計が65535を超えないように指定してください。65535を超えた場合は，指定した値から65535までの範囲のポート番号と，OSが任意に割り当てるポート番号（1024～5000）が使用されます。

次に示す場合はこの指定が無視され，OpenTP1制御下のウェルノウンポート化されていないプロセスのポート番号は，OSが任意に割り当てた番号（1024～5000）になります。

この指定を省略した場合

最小ポート番号から「最小ポート番号＋［システム環境設定］ウィンドウの［サーバ数］に指定した総数＋182」の値までの範囲内で，任意に選択したポート番号がプロセス起動時に使用中である場合

ただし，次に示す範囲には，OpenTP1および他プログラムのウェルノウンポートを定義しないでください。

最小ポート番号から「最小ポート番号＋［システム環境設定］ウィンドウの［サーバ数］欄に指定した総数＋182」の値までの範囲

この指定を省略したときにOSが任意に割り当てるポート番号の範囲（1024～5000）

［RPCトレースを取得するファイルの容量(T)］　　～＜符号なし整数＞((1024～2147483647))《4096》（単位：バイト）

RPCトレースを取得するファイルの容量を指定します。

この項目の指定は，［システム環境設定］ウィンドウで［トレース取得(L)］チェックボックスをオンにした場合だけ有効になります。

なお，RPCトレースファイル容量よりも，はるかに大きい電文が送受信された場合，編集時に何も出力しなかったり，出力情報にRPCトレースの抜け落ちが発生したりすることがあります。

［RPC送受信電文の最大長(M)］　　～＜符号なし整数＞((1～8))《1》（単位：メガバイト）

RPCコールで送受信できるメッセージ（ユーザ電文）の最大長を指定します。

この項目で1より大きな値を指定した場合，RPCコールで送信できるメッセージの最大長は，DCRPC_MAX_MESSAGE_SIZEの値（1メガバイト）ではなく，この項目に指定した値になります。ただし，値の指定を省略した場合，または1を指定した場合は，メッセージの最大長は，DCRPC_MAX_MESSAGE_SIZEの値（1メガバイト）です。

この機能を使用する場合，次の点に注意してください。

［システム環境設定］ウィンドウの［システムを構成するノード］欄に指定したすべてのノードで同じ値を指定してください。同じ値を指定していない場合，送信先ノードのノード間負荷バランス機能が実行されたときに，RPCコール（dc_rpc_call，dc_rpc_call_to）がDCRPCER_NET_DOWNでエラーリターンするおそれがあります。

この項目に1より大きな値を指定して，1メガバイトを超えるメッセージを送信する場合，サービスを提供するUAP（SPP）が起動しているOpenTP1のノードのバージョンを，この機能に対応したバージョンにしてください。サービスを提供するUAP（SPP）が起動しているすべてのOpenTP1ノードが，この機能に対応していないバージョンの場合，RPCコール（dc_rpc_call，dc_rpc_call_to）はDCRPCER_NO_SUCH_SERVICE_GROUPまたはDCRPCER_TRNCHKでエラーリターンします。

サービス要求先が，この機能に対応していないバージョンのOpenTP1を含む構成で，この項目に1メガバイトを超える値を指定してメッセージを送信する場合は，サービスを提供するUAP（SPP）はサービス要求元のOpenTP1ノード開始後に起動してください。サービスを提供するUAP（SPP）を，サービス要求元のOpenTP1ノード開始前に起動した場合，RPCコール（dc_rpc_call，dc_rpc_call_to）がDCRPCER_NO_SUCH_SERVICE_GROUPでエラーリターンするおそれがあります。

この項目を指定しないで動作していた環境で，この項目に1より大きな値を指定し，1メガバイトを超えるメッセージを送信した場合，メモリ不足が発生するおそれがあります。そのため，この項目を指定する場合は，実装するメモリ量やプロセスで使用できる最大メモリ量を考慮して指定してください。スケジューラデーモンのメモリ量の最大値は次の式で求められます。

最大使用メモリ量=指定値×64×2（単位：メガバイト）

この項目に1より大きな値を指定して，1メガバイトを超えるメッセージを送信した場合に，RPCトレースを取得するとメモリ使用量が増加します。また，RPCトレースの取得処理に時間が掛かるおそれがあります。

この機能の利用時に，次の機能を使用した場合の動作は保証できません。
・通信先を指定した遠隔サービス（dc_rpc_call_to）のスケジューラデーモンのポート指定
・ネームサービスを使わない通信（［ユーザサービス環境設定］ダイアログボックスで通信相手のサービス情報を指定した場合）

この項目に1より大きな値を指定して，1メガバイトを超えるメッセージをCUPに一方通知する場合は，1メガバイト以上のメッセージを受信できるバージョンのTP1/Clientを使用してください。

データ圧縮機能を使用する場合は，圧縮後のメッセージ長が1メガバイト以下でも，RPCコール（dc_rpc_call，dc_rpc_call_to）のin_lenの値が1メガバイトより大きければ，1メガバイトを超えるメッセージを送信すると判断します。

［システム環境設定］ウィンドウの［閉塞状態を引き継ぐサーバ，サービス数(1)］の指定値によっては，この項目に指定する値を変更する必要があります。詳細については，「3.1　TP1/LiNKの実行環境の設定」の［閉塞状態を引き継ぐサーバ，サービス数(1)］の説明を参照してください。

3.1.3　ユーザサービス環境の設定

通信相手のサービス情報を指定するときは，［システム環境設定］ウィンドウの［ユーザサービス環境(M)...］ボタンをクリックします。ボタンをクリックすると，［ユーザサービス環境設定］ダイアログボックスが表示されます。

図3-5　［ユーザサービス環境設定］ダイアログボックス

このダイアログボックスには，通信相手システムにあるユーザサーバに関する情報を指定します。指定する情報は次のとおりです。

リモートAPI機能のために指定する内容

相手システムのホスト名

相手システムのポート番号

相手システムのユーザサーバのサービスグループ名

システムを構成するノード名に指定していないシステムと通信するために指定する内容

相手システムのホスト名

相手システムのスケジュールサービスのポート番号

相手システムのユーザサーバのサービスグループ名

TP1/LiNKは，UAPから呼び出されるdc_rpc_callについて，第1引数に指定されたサービスグループ名を，このダイアログボックスに指定されたサービスグループ名の中から検索します。一致するサービスグループ名が見つかった場合は，指定されているホストとポート番号へサービス要求を送信します。一致するサービスグループ名が見つからなかった場合は，従来どおりネーム情報検索で処理します。

複数のホスト名が指定されている場合，ランダムに選択したホストへサービス要求を送信します。サービス要求の送信で障害が発生すると，残りのホスト名から再度ランダムにホストを選択します。すべてのホストへのサービス要求の送信が障害になると，dc_rpc_callはエラーリターンします。サービス要求が成功すると，UAP内で以降に発行する同じサービスグループ名へのdc_rpc_callは，障害が発生するまで同じホストにサービス要求の送信を継続します。継続中のサービス要求の送信で障害になった場合，今回障害になったホストを除いたすべてのホスト名からランダムに選択したホストに対してサービス要求の送信を試みます。

同じサービスグループを指定した場合，［サービスグループ名］リストボックス中で上にあるサービスグループが有効になります。

システムを構成するノード名に設定していないノードにあるサービスグループ（SPP）が非トランザクション属性（atomic_update=N）であり，このサービスグループに対してトランザクション内からdc_rpc_callを発行した場合，dc_rpc_callはDCRPCER_TRNCHKでエラーリターンします。この場合は，SPPの環境設定でトランザクション属性を指定する（atomic_update=Y）か，dc_rpc_callのflagsにDCRPC_TPNOTRANを指定する必要があります。

リモートAPI機能を使って呼び出すサービスグループに対して非同期RPCを要求した場合は，このダイアログボックスの設定を無効とし，従来どおりネーム情報検索で処理します。また，リモートAPI機能を使って呼び出すサービスグループに対して，トランザクションとしてサービス要求をしても，無条件に非トランザクションモードで処理します。

ボタンの使い方

［上に移動(U)］ボタン

リストボックスから選択したサービスグループのカーソル位置を上に移動します。

［下に移動(O)］ボタン

リストボックスから選択したサービスグループのカーソル位置を下に移動します。

［追加(A)］ボタン

入力されたサービスグループ名，ホスト名，ポート番号および送信先をリストボックスに追加します。

［削除(D)］ボタン

リストボックスから選択したサービスグループに関する情報を削除します。

［上書き保存(V)］ボタン

［ユーザサービス環境設定］ダイアログボックスに設定した各項目の値を保存します。

［終了(C)］ボタン

［ユーザサービス環境設定］ダイアログボックスを終了します。

ダイアログボックスに設定する項目

［サービスグループ名(G)］　　～＜1～31文字の識別子＞

次に示す相手システムにあるサービスグループ名を指定します。

リモートAPI機能を使って呼び出すサービスグループ

システムを構成するノードに設定していないノードにあるサービスグループ

このテキストボックスには，複数のサービスグループ名を一括して指定できます。一括して指定するときは「サービスグループ名の先頭文字（1文字以上）＋*」の形式で指定します。

［ホスト名(H)］　　～＜1～64文字の識別子＞

次に示す相手システムのホスト名を指定します。

リモートAPI機能を使ってサービスを受け取るシステムのホスト名（またはファイアウォールのホスト名）

システムを構成するノードに設定していないノードでOpenTP1との通信に使うホスト名

追加する場合は，［ホスト名(H)］にホスト名を入力してから［ホスト名追加(J)］ボタンをクリックします。削除する場合は，リストボックスに表示されているホスト名のうち，削除するホスト名を選択してから［ホスト名削除(K)］ボタンをクリックします。なお，［送信先］欄で［RAPサービス/Firewall(R)］オプションボタンをオンにした場合は，複数のホスト名を指定できません。［ホスト名(H)］には，ポート番号を次の形式で指定できます。

　ホスト名：ポート番号

ポート番号の有効範囲は5001～65535です。ポート番号を省略した場合は［サービスを受信するポート番号(P)］で指定した値が仮定されます。複数のホスト名を指定した場合は，コンマで区切られてリストボックスに表示されます。リストボックスには31文字までしか表示されません。

［サービスを受信するポート番号(P)］　　～＜符号なし整数＞((1～65535))

次に示す相手システムのポート番号を指定します。

リモートAPI機能を使ってサービスを受け取るシステムのRAPサービスのポート番号（またはファイアウォールのポート番号）

システムを構成するノードに設定していないノードのOpenTP1のスケジュールサービスのポート番号

リモートAPI機能を経由してサービスを受け取るシステムのポート番号のときは，1～65535の範囲でポート番号を指定できます。スケジュールサービスのポート番号のときは，5001～65535の範囲でポート番号を指定できます。

［送信先］欄

TP1/LiNKで通信する相手の種類を指定します。

リモートAPI機能を経由してサービスグループを呼び出すときは［RAPサービス／Firewall(R)］オプションボタンをオンにしてください。

システムを構成するノードに設定していないノードのサービスグループを呼び出すときは［スケジュールサービス(S)］オプションボタンをオンにしてください。

リストボックスの［送信先］には，送信先に［RAPサービス／Firewall(R)］オプションボタンを指定したときは「R」が，［スケジュールサービス(S)］オプションボタンを指定したときは「S」が表示されます。

3.1.4　リアルタイム統計情報サービスの実行環境の設定

リアルタイム統計情報サービスの実行環境を設定するときは，［システム環境設定］ウィンドウの［サービス設定(2)...］ボタンをクリックします。ボタンをクリックすると，［リアルタイム統計情報サービス設定］ダイアログボックスが表示されます。

図3-6　［リアルタイム統計情報サービス設定］ダイアログボックス

ボタンの使い方

［追加(A)...］ボタン

リアルタイム統計情報取得対象定義を新しく設定する［リアルタイム統計情報取得対象定義］ダイアログボックスを開きます。

［変更(M)...］ボタン

すでに設定したリアルタイム統計情報取得対象定義を変更する［リアルタイム統計情報取得対象定義］ダイアログボックスを開きます。［統計情報取得対象定義］欄のリストボックスから変更するリアルタイム統計情報を選択して，［変更(M)...］ボタンをクリックします。

［削除(D)］ボタン

すでに設定したリアルタイム統計情報取得対象定義を削除します。［統計情報取得対象定義］欄のリストボックスから削除するリアルタイム統計情報取得対象定義を選択して，［削除(D)］ボタンをクリックします。

［上書き保存(V)］ボタン

［リアルタイム統計情報サービス設定］ダイアログボックスに設定した各項目の値を保存します。

リアルタイム統計情報サービスは，サービスを管理するサーバとしてRTSSUPおよびRTSSPPを提供します。これらのサーバは，システムサーバではなくSUPおよびSPPとして提供するため，リアルタイム統計情報サービスの設定を保存したときに，次のフォルダにRTSSUPおよびRTSSPPのユーザサーバ定義を作成します。

TP1/LiNKインストールフォルダ¥conf

すでに同じ名前でユーザサーバ定義が存在する場合は，上書き保存するかどうか確認するダイアログボックスが表示されます。上書き保存する場合は，［はい(Y)］ボタンをクリックしてください。

上書き保存しない場合は，［いいえ(N)］ボタンをクリックしてください。そのあと，ユーザサーバ名を変更または削除してから，再度上書き保存してください。

なお，TP1/Server Baseの場合に必要なrtssetupコマンドの実行は不要です。

［終了(C)］ボタン

［リアルタイム統計情報サービス設定］ダイアログボックスを終了します。上書き保存をしないで，［終了(C)］ボタンをクリックした場合，上書き保存するかどうかを確認するダイアログボックスが表示されます。上書き保存する場合は，［はい(Y)］ボタンをクリックしてください。

ダイアログボックスに設定する項目

［統計情報取得間隔(I)］　　～＜符号なし整数＞((10～86400))《600》（単位：秒）

リアルタイム統計情報を取得し編集する時間間隔を指定します。

RTSログファイルへの統計情報の出力処理に時間が掛かった場合，この項目に指定した時間間隔を超えて統計情報を取得する場合があります。

［最大取得サービス数(S)］　　～＜符号なし整数＞((1～1000))《64》

リアルタイム統計情報サービスで，統計情報を取得する対象の最大数を指定します。

一度リアルタイム統計情報サービスを開始したあと，TP1/LiNKのオンライン中にこの項目の値を変更しても反映されません。変更したい場合は，一度TP1/LiNKを終了してください。

［最大取得項目数(N)］　　～＜符号なし整数＞((1～1000))《64》

リアルタイム統計情報サービスが，一つの取得対象で統計情報を取得できるイベントの最大数を指定します。

一度リアルタイム統計情報サービスを開始したあと，TP1/LiNKのオンライン中にこの項目の値を変更しても反映されません。変更したい場合は，一度TP1/LiNKを終了してください。

［RTSログファイルに出力しない(L)］

取得した統計情報をRTSログファイルに出力するかどうかをチェックボックスで指定します。チェックボックスをオンにすると，取得した統計情報をRTSログファイルに出力しません。チェックボックスをオフにすると，取得した統計情報をRTSログファイルに出力します。初期値は，RTSログファイルに統計情報を出力します。

［RTSログファイル名(O)］　　～＜1～63文字のパス名＞《%DCDIR%¥spool¥dcrtsinf¥rtslog》

統計情報を出力するRTSログファイル名を絶対パスで指定します。

RTSログファイルの出力先フォルダにRTSログファイル名と同じ名称のファイル，またはフォルダを作成しないでください。同じ名称のファイルまたはフォルダを作成した場合の動作は保証できません。

環境変数DCDIRの設定値が41文字を超えた場合，この項目を省略しないでください。定義解析時にエラーが発生します。

［RTSログファイルのサイズ(F)］　　～＜符号なし整数＞((1024～1048576))《1024》（単位：キロバイト）

統計情報を出力するRTSログファイルのサイズを指定します。

TP1/LiNKでは，RTSログファイルは3世代用意され，すべての世代を使用したらオーバラップして上書きします。このため，ある程度の時間が経過すると古いリアルタイム統計情報がなくなります。この項目に設定する値を大きくすることで，RTSログファイルを上書きする時間を延長できます。

RTSログファイルのサイズは，一度の契機で出力するリアルタイム統計情報のサイズより大きな値を指定してください。一度の契機で出力するリアルタイム統計情報のサイズの算出式を次に示します。

一度の契機で出力するリアルタイム統計情報のサイズ＝
（96＋(40×［最大取得項目数(N)］の値)）×
リアルタイム統計情報を取得する対象の数※）

注※

リアルタイム統計情報を取得する対象の数は，［統計情報取得対象定義］欄のリストボックスで指定した取得対象の数です（取得対象に「サーバ」を指定した場合のリアルタイム統計情報の取得対象の数は「サービス数＋2」です）。また，rtsstatsコマンドで取得対象を変更する場合は，その数も考慮してください。

リアルタイム統計情報取得対象定義は同じサービスやサーバに対して重複して指定できます。重複して指定した場合，リアルタイム統計情報サービスが取得する統計情報の項目は，各定義で指定した項目を統合した数になります。重複して指定している場合，取得対象の数は増加しないで重複している取得対象ごとに一つとなります。

システム全体の統計情報は，リアルタイム統計情報の動作上，取得対象としてカウントしませんが，RTSログファイルの出力についてはカウントする必要があります。そのため，システム全体の統計情報を取得している場合は，計算式の「リアルタイム統計情報を取得する対象の数」に1を加算して計算してください。

注意

リアルタイム統計情報サービスの開始時に，RTSログファイルのバックアップファイルが作成されます。バックアップファイルは，RTSログファイル名に「.bk」を付与した名称で，RTSログファイルの出力先フォルダに作成されます。そのため，RTSログファイルの出力先フォルダには，最大で次に示すディスク容量が必要です。

［RTSログファイルのサイズ(F)］の指定値×3×2

RTSログファイルの出力先フォルダのディスク容量に余裕があることを確認してください。

RTSログファイルの出力先フォルダに，バックアップファイルと同じ名称のファイル，またはバックアップファイルと同じ名称のフォルダを作成しないでください。同じ名称のファイルを作成した場合は，バックアップファイルによって上書きされます。同じ名称のフォルダを作成した場合は，RTSログファイルのバックアップファイルは作成されません。

＜この項の構成＞

(1)　［リアルタイム統計情報取得対象定義］ダイアログボックスに設定する項目

(2)　［リアルタイム取得項目詳細］ダイアログボックスに設定する項目

(1)　［リアルタイム統計情報取得対象定義］ダイアログボックスに設定する項目

リアルタイム統計情報取得対象定義を設定するときは，［リアルタイム統計情報サービス設定］ダイアログボックスの［追加(A)...］ボタンをクリックします。ボタンをクリックすると，［リアルタイム統計情報取得対象定義］ダイアログボックスが表示されます。

すでに設定したリアルタイム統計情報取得対象定義を変更するときは，［リアルタイム統計情報サービス設定］ダイアログボックスの［統計情報取得対象定義］欄のリストボックスから項目を選択してダブルクリックするか，［変更(M)...］ボタンをクリックします。クリックすると，［リアルタイム統計情報取得対象定義］ダイアログボックスが表示されます。

図3-7　［リアルタイム統計情報取得対象定義］ダイアログボックス

ボタンの使い方

［詳細(D)...］ボタン

［イベント項目(E)］のリストボックスで選択したイベント項目についての［リアルタイム取得項目詳細］ダイアログボックスを開きます。

［OK］ボタン

指定した値に変更して，［リアルタイム統計情報取得対象定義］ダイアログボックスを終了します。変更した内容は，［リアルタイム統計情報サービス設定］ダイアログボックスの［統計情報取得対象定義］欄のリストボックスに反映されます。

［キャンセル］ボタン

指定した値に変更しないで，［リアルタイム統計情報取得対象定義］ダイアログボックスを終了します。

ダイアログボックスに設定する項目

［対象種別(U)］

次に示す取得するリアルタイム統計情報の取得対象種別をドロップダウンリストボックスから選択します。選択した対象種別は，［リアルタイム統計情報サービス設定］ダイアログボックスの［統計情報取得対象定義］欄のリストボックス（「対象種別」列）に表示されます。

システム
システム全体の統計情報として取得します。
このオプションを指定した場合，［リアルタイム統計情報サービス設定］ダイアログボックスで指定した［最大取得サービス数(S)］の値は消費しません。

サーバ
指定したサーバの統計情報を取得します。
［サーバ名(S)］に指定したサーバの次の統計情報を取得します。
・サーバ単位の統計情報
・指定されたサーバに定義されているすべてのサービスの統計情報
・指定されたサーバに定義されているすべてのサービス以外の処理の統計情報
このため，リアルタイム統計情報の取得対象の数は，「サービス数+2」（サーバ単位の統計情報＋各サービス単位の統計情報＋サービス実行以外のサーバ処理の統計情報）だけ増加します。
SUPなどのサービスを持たないサーバ名を指定した場合は，サーバ単位の統計情報だけを取得します。

サービス
指定したユーザサーバのサービス単位での統計情報を取得します。

任意
［対象名1(O)］と［対象名2(B)］の組み合わせによって，統計情報を取得する対象を設定します。指定できる組み合わせについては，「表3-3　［対象種別(U)］に「任意」を指定した場合の組み合わせ」を参照してください。この表の組み合わせ以外で取得できる統計情報はありません。

［サーバ名(S)］

［対象種別(U)］で「サーバ」または「サービス」を指定した場合，統計情報を取得するサーバ名称をドロップダウンリストボックスから選択します。

取得するユーザサーバは，［TP1/LiNKアプリケーション管理SPP］ウィンドウまたは［TP1/LiNKアプリケーション管理SUP］ウィンドウで，定義しておく必要があります。サーバ定義がない場合は指定できません。［TP1/LiNKアプリケーション管理SPP］ウィンドウについては，「6.2　アプリケーション管理（SPP）」を参照してください。また，［TP1/LiNKアプリケーション管理SUP］ウィンドウについては，「6.3　アプリケーション管理（SUP）」を参照してください。選択したサーバ名は，［リアルタイム統計情報サービス設定］ダイアログボックスの［統計情報取得対象定義］欄のリストボックス（「対象1」列）に表示されます。

［サービス名(V)］

［対象種別(U)］で「サービス」を指定した場合，統計情報を取得するサービス名称をドロップダウンリストボックスから選択します。

［サーバ名(S)］で指定したサーバの，指定したサービスの統計情報を取得します。

取得するユーザサーバは，［TP1/LiNKアプリケーション管理SPP］ウィンドウで定義しておく必要があります。サービス定義がない場合は指定できません。選択したサービス名は，［リアルタイム統計情報サービス設定］ダイアログボックスの［統計情報取得対象定義］欄のリストボックス（「対象2」列）に表示されます。

［対象名1(O)］　　～＜1～8文字の文字列＞

［対象名2(B)］　　～＜1～63文字の文字列＞

［対象種別(U)］に「任意」を指定した場合，統計情報を取得する対象を識別する取得対象名を指定します。

［対象名1(O)］設定内容は，［リアルタイム統計情報サービス設定］ダイアログボックスの［統計情報取得対象定義］欄のリストボックス（「対象1」列）に表示されます。［対象名2(B)］設定内容は，［リアルタイム統計情報サービス設定］ダイアログボックスの［統計情報取得対象定義］欄のリストボックス（「対象2」列）に表示されます。

指定できる組み合わせを，次の表に示します。［対象種別(U)］に「任意」を指定した場合，必ずこの表に従って［対象名1(O)］，［対象名2(B)］を指定してください。［対象種別(U)］に「任意」以外を指定した場合，［対象名1(O)］，［対象名2(B)］は指定できません。

表3-3　［対象種別(U)］に「任意」を指定した場合の組み合わせ

統計情報の取得対象 | ［対象名1(O)］ | ［対象名2(B)］
指定参照先ノード※1 | ポート番号※2 | IPアドレス※2

注※1

取得できるイベント項目は次のとおりです。

・指定参照先ノードへのサービス検索送信回数

・指定参照先ノードからのサービス検索応答受信回数

注※2

［システム環境設定］ウィンドウのシステムを構成するノード，またはドメイン定義ファイルに指定したノードのポート番号とIPアドレスを指定します。

［定義ファイル名(F)］

取得するリアルタイム統計情報の項目を定義した，リアルタイム取得項目定義ファイルの名称をドロップダウンリストボックスから選択します。

リアルタイム取得項目定義ファイルは，［リアルタイム取得項目定義ファイル一覧］ダイアログボックスで定義しておく必要があります。定義ファイルがない場合は指定できません。なお，この項目は省略できます。［リアルタイム取得項目定義ファイル一覧］ダイアログボックスについては，「3.1.5　リアルタイム統計情報サービスの取得項目定義ファイルの設定」を参照してください。

［イベント項目(E)］

リストボックスから各チェックボックスをクリックして，取得するイベント項目を選択します。

影付きのチェックボックスは各情報に関するイベント項目の一部が取得されることを意味します。各情報に関する詳細なイベント項目を表示するには，［詳細(D)...］をクリックして［リアルタイム取得項目詳細］ダイアログボックスを表示してください。TP1/LiNKで取得できる各統計情報のイベント項目については「5.4.4(3)　TP1/LiNKで取得できるリアルタイム統計情報」を参照してください。

なお，表示される内容は［定義ファイル名(F)］で指定したリアルタイム取得項目定義ファイルの内容が反映されるわけではありません。指定したリアルタイム取得項目定義ファイルで定義したイベント項目以外で取得したいイベント項目がある場合に，この項目のイベント項目を選択してください。［定義ファイル名(F)］で定義したイベント項目と［イベント項目(E)］で選択したイベント項目は，一つにまとめられ取得されます。つまり，［イベント項目(E)］でチェックしていないイベント項目でも，［定義ファイル名(F)］で定義している場合は，そのイベント項目の統計情報が取得されます。この項目は省略できます。

［リアルタイム統計情報取得対象定義］ダイアログボックスで各項目を指定する場合，次の点に注意してください。

［リアルタイム統計情報取得対象定義］ダイアログボックスで定義できる統計情報の取得対象は，［リアルタイム統計情報サービス設定］ダイアログボックスの［最大取得サービス数(S)］に指定した数までです。また，一つの取得対象で取得できるイベントの数は，［リアルタイム統計情報サービス設定］ダイアログボックスの［最大取得項目数(N)］に指定した数までです。

［定義ファイル名(F)］と［イベント項目(E)］を省略した場合でも，統計情報を取得するための領域は確保します。ただし，取得する統計情報は，任意区間でのユーザサーバ実行時間の情報だけです。

リアルタイム統計情報取得対象定義は同じサービスやサーバに対して重複して定義できます。重複して定義した場合，リアルタイム統計情報サービスが取得する統計情報の項目は，各定義で指定した項目をまとめたものになります。指定例を次に示します。

表3-4　同じサービスやサーバに対して重複して指定した場合の指定例

統計情報取得対象定義の指定 | 定義ファイルで指定した取得項目
対象種別 | サーバ名 | サービス名 | 定義ファイル名
サーバ | SERVER_A | － | 定義ファイル1 | 項目A，項目C
サービス | SERVER_A | SERVICE_B | 定義ファイル2 | 項目B
サービス | SERVER_A | SERVICE_C | 定義ファイル3 | 項目A，項目D

（凡例）

　－：指定なし。

表3-5　指定例の場合に取得されるリアルタイム統計情報の項目

サーバ名 | サービス名 | 項目A | 項目B | 項目C | 項目D
SRVER_A | サーバ全体 | ○ | × | ○ | ×
サービス外 | ○ | × | ○ | ×
SRVICE_A | ○ | × | ○ | ×
SRVICE_B | ○ | ○ | ○ | ×
SRVICE_C | ○ | × | ○ | ○

（凡例）

　○：取得する。

　×：取得しない。

リアルタイム統計情報取得対象定義を，同じサービスやサーバで重複して指定している場合，取得対象の数は増加しないで重複している取得対象ごとに一つとしてカウントされます。

［対象種別(U)］に「任意」を指定した場合，［対象名1(O)］に指定した値や［対象名2(B)］に指定した値が妥当な値であるかのチェックはされません。不要な取得対象を登録した場合は，rtslsコマンドで取得対象の構成を確認し，rtsstatsコマンドで不要な取得対象を削除してください。

リアルタイム統計情報サービスの開始後は，次に示すサービスはリアルタイム統計情報の取得対象に反映されません（［リアルタイム統計情報取得対象定義］ダイアログボックスの［サービス名(V)］にサービスを指定している場合でも取得対象として反映されません）。

［SPP環境設定］ダイアログボックスで追加または削除したサービス

サービス関数動的ローディング機能で追加または削除したサービス

リアルタイム統計情報サービスの開始後に取得対象の設定を変更するには，rtsstatsコマンドを使用するか，またはリアルタイム統計情報サービス（RTSSUP）を再起動してください。

(2)　［リアルタイム取得項目詳細］ダイアログボックスに設定する項目

［リアルタイム統計情報取得対象定義］ダイアログボックスの［詳細(D)...］ボタンをクリックした場合，または［リアルタイム取得項目定義］ダイアログボックスの［詳細(D)...］をクリックした場合に，［リアルタイム取得項目詳細］ダイアログボックスが表示されます。

図3-8　［リアルタイム取得項目詳細］ダイアログボックス

ボタンの使い方

［OK］ボタン

［イベント項目(E)］のリストボックスで選択したイベント項目の値に変更して，［リアルタイム取得項目詳細］ダイアログボックスを終了します。

［キャンセル］ボタン

指定した値に変更しないで，［リアルタイム取得項目詳細］ダイアログボックスを終了します。

ダイアログボックスに設定する項目

［イベント項目(E)］

リストボックスから各チェックボックスをクリックして，取得するイベント項目を選択します。TP1/LiNKで取得できる各統計情報のイベント項目については「5.4.4(3)　TP1/LiNKで取得できるリアルタイム統計情報」を参照してください。

3.1.5　リアルタイム統計情報サービスの取得項目定義ファイルの設定

リアルタイム取得項目定義ファイルを設定するときは，［システム環境設定］ウィンドウの［取得項目設定(3)...］ボタンをクリックします。ボタンをクリックすると，［リアルタイム取得項目定義ファイル一覧］ダイアログボックスが表示されます。

図3-9　［リアルタイム取得項目定義ファイル一覧］ダイアログボックス

TP1/LiNKでは，リアルタイム統計情報サービスで使用するテンプレートとして，次に示すTP1/LiNKで取得できるすべての項目を設定したリアルタイム取得項目定義ファイルを提供しています。リアルタイム取得項目定義ファイルは，「TP1/LiNKインストールフォルダ¥conf」直下にコピーして使用します。

TP1/LiNKインストールフォルダ¥rts_template¥examples¥conf¥LINK_ITM

ボタンの使い方

［追加(A)...］ボタン

リアルタイム取得項目定義ファイルを新しく設定する［リアルタイム取得項目定義］ダイアログボックスを開きます。

［変更(M)...］ボタン

すでに設定したリアルタイム取得項目定義ファイルを変更する［リアルタイム取得項目定義］ダイアログボックスを開きます。リストボックスから変更するリアルタイム取得項目定義ファイルを選択して，［変更(M)...］ボタンをクリックします。

［削除(D)］ボタン

すでに設定したリアルタイム取得項目定義ファイルを削除します。リストボックスから削除するリアルタイム取得項目定義ファイルを選択して，［削除(D)］ボタンをクリックします。

［終了(C)］ボタン

［リアルタイム取得項目定義ファイル一覧］ダイアログボックスを終了します。

［リアルタイム取得項目定義］ダイアログボックス

リアルタイム取得項目定義ファイルを追加するときは，［リアルタイム取得項目定義ファイル一覧］ダイアログボックスの［追加(A)...］ボタンをクリックします。ボタンをクリックすると，［リアルタイム取得項目定義］ダイアログボックスが表示されます。

リアルタイム取得項目定義ファイルを変更するときは，［リアルタイム取得項目定義ファイル一覧］ダイアログボックスのリストボックスから選択した項目をダブルクリックするか，［変更(M)...］ボタンをクリックすると，［リアルタイム取得項目定義］ダイアログボックスが表示されます。

図3-10　［リアルタイム取得項目定義］ダイアログボックス

ボタンの使い方

［詳細(D)...］ボタン

［イベント項目(E)］のリストボックスで選択したイベント項目についての［リアルタイム取得項目詳細］ダイアログボックスを開きます。

［上書き保存(V)］ボタン

［リアルタイム取得項目定義］ダイアログボックスに設定した各項目の値を保存します。

［終了(C)］ボタン

［リアルタイム取得項目定義］ダイアログボックスを終了します。

ダイアログボックスに設定する項目

［定義ファイル名(F)］　　～＜1～8文字の識別子＞

リアルタイム取得項目定義ファイル名を指定します。

リアルタイム取得項目定義ファイルは「%DCCONFPATH%」直下に作成されます。システム名およびユーザサーバ名とは異なるファイル名を指定してください。

定義ファイル名は，［リアルタイム取得項目定義ファイル一覧］ダイアログボックスの「ファイル名」の列に表示されます。

［コメント(O)］　　～＜35文字までの文字列＞

リアルタイム取得項目定義ファイルの内容に関するコメントを任意で入力します。入力したコメントは，［リアルタイム取得項目定義ファイル一覧］ダイアログボックスの「コメント」の列に表示されます。

［イベント項目(E)］

リストボックスから各チェックボックスをクリックして，取得するイベント項目を選択します。

影付きのチェックボックスは各情報に関するイベント項目の一部が取得されることを意味します。各情報に関する詳細なイベント項目を表示するには，［詳細(D)...］をクリックして［リアルタイム取得項目詳細］ダイアログボックスを表示してください。［リアルタイム取得項目詳細］ダイアログボックスについては，「3.1.4(2)　［リアルタイム取得項目詳細］ダイアログボックスに設定する項目」を参照してください。TP1/LiNKで取得できる各統計情報のイベント項目については「5.4.4(3)　TP1/LiNKで取得できるリアルタイム統計情報」を参照してください。

なお，リアルタイム統計情報取得対象定義やrtsstatsコマンドで指定した対象では取得できない項目を選択した場合，統計情報を取得するための領域を確保しますが統計情報は取得されません。

3.1.6　XAリソースサービス環境の設定

XAリソースサービス環境を指定するときは，［システム環境設定］ウィンドウの［XAリソースサービス環境(Y)...］ボタンをクリックします。ボタンをクリックすると，［XAリソースサービス環境設定］ダイアログボックスが表示されます。［XAリソースサービス環境(Y)...］ボタンは，［トランザクション機能］欄の［あり］オプションボタンを選択したときだけクリックできます。

図3-11　［XAリソースサービス環境設定］ダイアログボックス

ボタンの使い方

［初期値設定(I)］ボタン

［XAリソースサービス環境設定］ダイアログボックスのすべての項目を初期値にします。

［上書き保存(V)］ボタン

［XAリソースサービス環境設定］ダイアログボックスに設定した各項目の値を保存します。項目をすべて設定し終えてから［上書き保存(V)］ボタンをクリックすると，各項目を設定できます。また，このときに指定されたフォルダにXARファイル名を作成します。

XARファイルを再作成する場合は，［上書き保存(V)］ボタンをクリックした場合に出力される問い合わせ応答メッセージボックスに対して［はい(Y)］をクリックしてください。

［システム環境設定］ウィンドウ-［トランザクションブランチ数(B)］，［MSDTC連携機能を使用する(M)］および［XARファイルのレコード長(R)］の指定値を変更した場合は，［上書き保存(V)］ボタンをクリックして必ずXARファイルを再作成するようにしてください。

［終了(C)］ボタン

［XAリソースサービス環境設定］ダイアログボックスを終了します。XAリソースサービス環境設定を終了するときは，［終了(C)］ボタンをクリックします。

ダイアログボックスに設定する項目

［XAリソースサービスを使用する(X)］欄

XAリソースサービスを使用するかどうかをチェックボックスで指定します。

初期値はオフになっています。なお，XAリソースサービスの詳細については，マニュアル「OpenTP1 解説」を参照してください。

チェックボックスをオンにした場合，XAリソースサービスが起動されます。

［アイドル状態のトランザクションブランチの監視時間(T)］　　～＜符号なし整数＞((10～65535))《180》（単位：秒）

End()からPrepare()までのアイドル状態のトランザクションブランチを監視する時間を指定します。

指定された時間を超えた場合は，メッセージを出力してトランザクションブランチをロールバックします。アイドル状態を監視するインタバル時間は，10秒です。そのため，検知するのに時間が掛かる場合があります。

［オンライン用XARファイルを作成するフォルダ名(O)］　　～＜40文字までの英数字の完全パス名＞《%DCDIR%¥spool》

XAリソースサービスで使用するオンライン用の物理XARファイルを作成するフォルダ名を指定します。

オンライン用の物理XARファイル名は「xafileO」で作成されます（メッセージのXARファイルには「オンライン用XARファイルを作成するフォルダ名/xarfileO/xarO」で表示されます）。同じファイル名があるフォルダを指定しないでください。

オンライン用XARファイルサイズは，次の算出式で求められます。

XARファイルサイズ（単位：メガバイト）＝↑（（レコード数＋1）×レコード長）÷1048576↑

（凡例）

レコード数：［システム環境設定］ウィンドウ-［トランザクションブランチ数(B)］の指定値

レコード長：［XARファイルのレコード長(R)］の指定値

↑↑：小数点以下を切り上げます。

［バックアップ用XARファイルを作成するフォルダ名(B)］　　～＜40文字までの英数字の完全パス名＞《%DCDIR%¥spool》

XAリソースサービスで使用するバックアップ用の物理XARファイルを作成するフォルダ名を指定します。

バックアップ用の物理XARファイル名は「xafileB」で作成されます（メッセージのXARファイルには「バックアップ用XARファイルを作成するフォルダ名/xarfileB/xarB」で表示されます）。同じファイル名が存在するフォルダを指定しないでください。

バックアップ用XARファイルサイズは，次の算出式で求められます。

XARファイルサイズ（単位：メガバイト）＝↑（（レコード数＋1）×レコード長）÷1048576↑

（凡例）

レコード数：［システム環境設定］ウィンドウ-［トランザクションブランチ数(B)］の指定値

レコード長：［XARファイルのレコード長(R)］の指定値

↑↑：小数点以下を切り上げます。

［MSDTC連携機能を使用する(M)］欄

MSDTC連携機能を使用するかどうかをチェックボックスで指定します。初期値はオフになっています。なお，MSDTC連携機能の詳細については，マニュアル「OpenTP1 解説」を参照してください。

チェックボックスがオンのとき

　MSDTC連携機能を使用します。

チェックボックスがオフのとき

　MSDTC連携機能を使用しません。

［XARファイルのレコード長(R)］ ～〈符号なし整数〉((512～4096))《1024》（単位：バイト）

作成するXARファイルのレコード長を指定します。指定するレコード長には，512の整数倍を指定してください。この項目は，［MSDTC連携機能を使用する(M)］がオンのときに指定できます。

MSDTCとのトランザクション連携の場合，XAリソースサービスはトランザクション情報のほかにRI（トランザクション回復情報）をXARファイルに格納します。RIのサイズはMSDTCが動作する環境に依存するため，環境によってはXARファイルのレコード長不足でトランザクション決着処理に失敗する場合があります。そのため，MSDTC連携機能を使用する場合は，XARファイルのレコード長を1024バイト以上に指定することを推奨します。なお，MSDTC連携機能を使用しない場合のXARファイルのレコード長は512バイトになります。

レコード長不足によってトランザクションの決着処理に失敗した場合は，次の手順でXARファイルを再作成してください。

TP1/LiNKを停止します。

KFCA32045-Eメッセージの「必要なXARファイルのレコード長」に表示された値を，［XARファイルのレコード長(R)］に指定します。そのあと，［上書き保存(V)］ボタンをクリックした場合に出力される問い合わせ応答メッセージボックスに対して［はい(Y)］をクリックします。

TP1/LiNKを正常開始します。

3.1.7　ノード自動追加機能の設定

ノード自動追加機能を設定するときは，［システム環境設定］ウィンドウの［ノード自動追加機能設定(4)...］ボタンをクリックします。ボタンをクリックすると，［ノード自動追加機能設定］ダイアログボックスが表示されます。ノード自動追加機能については，マニュアル「OpenTP1 解説」を参照してください。

図3-12　［ノード自動追加機能設定］ダイアログボックス

ボタンの使い方

［OK］ボタン

各項目を設定した値に変更してから，［ノード自動追加機能設定］ダイアログボックスを終了します。

このとき［ノードリストファイルを作成するフォルダ名(F)］を指定している場合，指定したフォルダにノードリストファイルが作成されます。ノードリストファイルを再作成する場合は，［OK］ボタンをクリックしたときに出力される問い合わせ応答メッセージボックスに対して［はい(Y)］をクリックしてください。

［キャンセル］ボタン

各項目の値を変更しないで，［ノード自動追加機能設定］ダイアログボックスを終了します。

ダイアログボックスに設定する項目

［ノードの動作モード(M)］

次に示す対象をドロップダウンリストボックスから選択して，ノード自動追加機能を使用する場合の，ノードの動作モードを指定します。

マネジャノード
マネジャノードとして動作させます。

エージェントノード
エージェントノードとして動作させます。

ノーマルノード
ノード自動追加機能を使用しません。ノーマルノードとして動作させます。ドロップダウンリストボックスで，何も選択しなかった場合も同様です。

マネジャノードを指定した場合，［RPC詳細設定］ダイアログボックスの［ネームサービス］タブでの［ノード監視機能(C)］の指定を無視して，送受信型ノード監視機能によってエージェントノードとノーマルノードの稼働状況が監視されます。そのため，同一ホストで複数のエージェントノードやノーマルノードを動作させる場合は，一つのホストに複数の異なるIPアドレスを設定し，それぞれのエージェントノードまたはノーマルノードごとに異なるIPアドレスを設定してください。

エージェントノードを指定した場合，［マネジャノードのノード名(N)］にマネジャノードを指定してください。また，［RPC詳細設定］ダイアログボックスの［ネームサービス］タブでの［ノード監視機能(C)］の指定内容によって，次のように動作します。

［RPC詳細設定］ダイアログボックスの［ネームサービス］タブで［ノード監視機能(C)］を未指定，または「使用しない」を指定した場合
送受信型ノード監視機能によって，マネジャノードの稼働状況を監視します。同時にノードリストの整合性を確保します。

［RPC詳細設定］ダイアログボックスの［ネームサービス］タブで［ノード監視機能(C)］に「一方送信型ノード監視」，または「送受信型ノード監視」を指定した場合
指定値を無視して送受信型ノード監視機能によって，マネジャノードの稼働状況を監視します。同時にノードリストの整合性を確保します。エージェントノード，およびノーマルノードとのノード監視は指定値に従って監視します。

同一ホストで複数のマネジャノードを動作させる場合は，一つのホストに複数の異なるIPアドレスを設定し，それぞれのマネジャノードごとに異なるIPアドレスを設定してください。

ノードリストを引き継ぐ場合，OpenTP1の開始は，ノードリストファイル中に格納された動作モードに従います。nammstrコマンドで動作モードを変更したとき，この項目に指定した動作モードと一致しないことがあります。

OpenTP1の現在の動作モードは，次のコマンドで確認できます。

OpenTP1のオフライン時：namnldspコマンド

OpenTP1のオンライン時：namsvinfコマンドに-xオプションを指定

namnldspコマンド，およびnamsvinfコマンドの詳細については，マニュアル「OpenTP1 運用と操作」を参照してください。

［マネジャノードのノード名(N)］　　～＜1～61バイトの文字列＞

OpenTP1システム内で稼働するマネジャノードのノード名を指定します。

［マネジャノードのノード名(N)］には，マネジャノードのネームサービスのポート番号を次の形式で指定することもできます。

ノード名：ポート番号

［ノードの動作モード(M)］でエージェントノードを選択した場合に指定できます。

エージェントノードは，OpenTP1起動時に，指定されたノードに対してノードリスト要求を送信します。ノードリストを正常に受信できた場合だけ，指定されたノードをマネジャノードとして認識します。なお，マネジャノード以外のノード※が指定された場合は，ノードリストを正常に受信できないため，マネジャノードとして認識しません。また，マネジャノードからのノードリストを受信できないため，RPCの要求範囲は，指定したノードに限定されます。

エージェントノードの開始時に，マネジャノードが起動していない場合や，ネットワークなどの障害によって，通信ができない状態の場合も，RPCの要求範囲が指定したノードに限定されることがあります。

注※

［ノードの動作モード(M)］に，マネジャノード以外を指定しているノード，またはノード自動追加機能をサポートしていないノードです。

参考

ノードリストを引き継ぐと，このようなマネジャノードとの通信障害などの影響を受けないで，前回オンラインの終了時と同等のノードリストが使用でき，RPCの要求範囲を確保できます。

［停止を検知したノードのノード情報をノードリストから削除する(R)］

マネジャノードが停止を検知したエージェントノード，およびノーマルノードのノード情報を，ノードリストから削除するかどうかについて，チェックボックスで指定します。初期値はオフです。

［ノードの動作モード(M)］でマネジャノードを選択した場合に指定できます。

チェックボックスがオンのとき

　停止を検知したノードのノード情報をノードリストから削除し，マネジャノードの管理対象から外します。

チェックボックスがオフのとき

　停止を検知したノードのノード情報をノードリストから削除しません。停止を検知したノードのノード情報をRPC抑止リストへ登録します。

　ノード情報をノードリストから削除したい場合は，マネジャノードでnamndrmコマンドを実行してください。

次の場合は，ノードリストを削除しないで，次回のノードリストの整合性を確保するときに削除します。

マネジャノードがノードリストからノード情報を削除する際に，サービスグループ情報の検索など，ノードリストを参照する処理が並行して動作している場合

エージェントノードでノードリストの整合性を確保する際に，サービスグループ情報の検索など，ノードリストを参照する処理が並行して動作している場合

ノーマルノードを混在させて使用する運用の場合，このチェックボックスはオフにしてください。オンにすると，ノーマルノードの停止によって，マネジャノードのノードリストからノーマルノードの情報が削除されます。ノーマルノードの再開始後も，マネジャノードとのコネクションが切断されているため，ノーマルノードのノード情報がノードリストに登録されません。また，マネジャノードやほかのエージェントノードのサービスグループ情報（起動，停止，負荷状態の変更）に関する通知がノーマルノードへ送信されません。ノード間の負荷バランスを保つために，このチェックボックスをオフにしてください。

［ノーマルノードのノード情報をノードリストに登録する(P)］

エージェントノードのノードリストに，ノーマルノードのノードの情報を登録するかどうかについて，チェックボックスで指定します。初期値はオフです。

［ノードの動作モード(M)］でエージェントノードを選択した場合に指定できます。

チェックボックスがオンのとき

　ノーマルノードの情報をノードリストに登録します。

チェックボックスがオフのとき

　ノーマルノードの情報をノードリストに登録しません。

チェックボックスがオフのエージェントノードのノードリストには，ノーマルノードが登録されません。このエージェントノードとノーマルノード間では，サービスグループ情報（起動，停止，負荷状態の変更）に関する連携がされません。ノーマルノードを使用し，かつOpenTP1システム内のノード間の負荷バランスを保つために，このチェックボックスをオンにしてください。

［OpenTP1起動時のノードリスト要求応答待ち時間(W)］　　～＜符号なし整数＞((0～1800))《8》（単位：秒）

エージェントノードはOpenTP1の起動時に，マネジャノードに対してノードリスト要求を送信します。ノードリスト要求を送信してから，応答を受信するまでの待ち時間の最大値を指定します。指定時間を過ぎても応答がない場合は，ノードリスト要求はエラーとなります。エラー発生後の動作は，［ノードリスト要求でエラーが発生した場合の処理(E)］の指定値に従います。

［ノードの動作モード(M)］でエージェントノードを選択した場合に指定できます。

0を指定した場合，応答を受信するまで無限に待ち続ける状態になります。

大きな値を指定した場合，マネジャノードの動作状況によっては，OpenTP1の開始処理に時間が掛かるおそれがあります。

［OpenTP1起動時のノードリスト要求リトライ回数(C)］　　～＜符号なし整数＞((0～60))《0》

エージェントノードはOpenTP1の起動時に，マネジャノードに対してノードリスト要求を送信します。このノードリスト要求でエラーが発生した場合のリトライ回数を指定します。発生したエラーの回数が，指定した値を超えたときは，［ノードリスト要求でエラーが発生した場合の処理(E)］の指定に従った処理を実行します。

［ノードの動作モード(M)］にエージェントノードを選択した場合に指定できます。

0を指定した場合，リトライしません。

大きな値を指定した場合，マネジャノードの動作状況によっては，OpenTP1の開始処理に時間が掛かるおそれがあります。

［OpenTP1起動時のノードリスト要求リトライ間隔(I)］　　～＜符号なし整数＞((1～60))《10》（単位：秒）

エージェントノードはOpenTP1の起動時に，マネジャノードに対してノードリスト要求を送信します。このノードリスト要求でエラーが発生した場合のリトライ間隔を指定します。

［OpenTP1起動時のノードリスト要求リトライ回数(C)］で1以上を指定した場合に指定できます。

大きな値を指定した場合，マネジャノードの動作状況によっては，OpenTP1の開始処理に時間が掛かるおそれがあります。

［ノードリスト要求でエラーが発生した場合の処理(E)］

エージェントノードがOpenTP1の起動時に，マネジャノードからノードリストを正常に受信できなかった場合の処理をドロップダウンリストボックスで選択します。［ノードの動作モード(M)］でエージェントノードを選択した場合に指定できます。

停止する
OpenTP1の開始処理を中止します。
このとき，アボートコードnamdmnUが出力されます。ただし，再開始（リラン）時は，OpenTP1の開始処理を続行します。

続行する
OpenTP1の開始処理を続行します。ドロップダウンリストボックスで，何も選択しなかった場合も同様です。
OpenTP1開始完了後，［RPC詳細設定］ダイアログボックスの［ネームサービス］タブでの［ノード監視間隔時間(V)］に指定された間隔で，定期的にノードリスト要求を送信します。このときの応答待ち時間は，［RPC詳細設定］ダイアログボックスの［ネームサービス］タブで［ノードダウンを検知するまでの最大待ち時間(W)］に指定した値となります。マネジャノードからノードリストを受信するまでの間は，指定したノードだけで動作します。

［ノードリスト同期待ち時間(S)］　　～＜符号なし整数＞((0～65535))《60》（単位：秒）

エージェントノードからRPCメッセージが受信できる状態になってから，エージェントノードとノードリストの整合性を確保するまでの待ち時間を指定します。

［ノードの動作モード(M)］でマネジャノードを選択した場合に指定できます。ただし，ノードリストを引き継ぐ場合，この指定は無視されます。

マネジャノードは，ここで指定した時間が経過するまで，エージェントノードとノードリストの整合性を確保しません。ただし，OpenTP1システム内に新たに追加されたエージェントノードに対してはノードリストを返します。

［ノードリスト同期待ち時間(S)］には，エージェントノードに対する，［RPC詳細設定］ダイアログボックスの［ネームサービス］タブでの［ノード監視間隔時間(V)］の指定値と同じ値を指定してください。指定値が異なると，エージェントノードのノードリストから不当にノード情報が削除されることがあります。また，マネジャノードとエージェントノードとの間で，ノードリストの整合性が確保されるまでに時間が掛かるおそれがあります。

［ノードリストファイルを作成するフォルダ名(F)］　　～＜40文字までの英数字の完全パス名＞

ノード自動追加機能を使用する場合に，ノードリストの引き継ぎ機能で使用するノードリストファイルを作成するフォルダ名を完全パスで指定します。

［ノードの動作モード(M)］でマネジャノードまたはエージェントノードを選択した場合に指定できます。

ノードリストファイル名は「namnlfil」で作成されます。同じファイル名があるフォルダを指定しないでください。ノードリストファイルのサイズは，1メガバイトです。

なお，メッセージおよびnamnldspコマンドに指定するノードリストファイル名は「ノードリストファイルを作成するフォルダ名/namnlfil/ndls」になります。

ノード自動追加機能の使用をやめる場合など，ノードリストファイルを削除するには，指定を省略したあとに，エクスプローラなどで「namnlfil」ファイルを削除してください。

OpenTP1の起動時に，ネームサービスは指定されたノードリストファイルに登録されているノードリストを採用してサービスを開始します。OpenTP1のオンライン中は，一定間隔で使用中のノードリストをノードリストファイルへ書き込みます。

なお，次の場合は，ノードリストの引き継ぎは無効として，OpenTP1を起動します。

指定を省略した場合

指定したフォルダにノードリストファイルがない場合

指定したフォルダのノードリストファイルへのアクセスに失敗した場合

［ノードリストファイルを読み込む条件(L)］

次に示す対象をドロップダウンリストボックスから選択して，ノードリストを読み込む条件を指定します。

［ノードリストファイルを作成するフォルダ名(F)］を指定した場合に指定できます。

再開始時および正常開始時
再開始時および（強制）正常開始時にノードリストファイルを読み込みます。ただし，［ノードの動作モード(M)］の指定がエージェントノードの場合は，再開始時および（強制）正常開始時にマネジャノードからのノードリストの取得に失敗したときだけ，ノードリストファイルを読み込みます。

再開始時だけ
再開始時だけノードリストファイルを読み込みます。ただし，［ノードの動作モード(M)］の指定がエージェントノードの場合は，再開始時にマネジャノードからのノードリストの取得に失敗したときだけ，ノードリストファイルを読み込みます。

3.2　ユーザサーバの環境設定（SPP）

SPPの実行環境を設定する手順について説明します。

SPPの実行環境を設定するときは，［スタート］－［プログラム］－［TP1_LiNK］－［アプリケーション管理SPP］メニューを選択します。

［アプリケーション管理SPP］メニューを選択すると，［TP1/LiNKアプリケーション管理SPP］ウィンドウが表示されます。

図3-13　［TP1/LiNKアプリケーション管理SPP］ウィンドウ

ここでは，ユーザサーバの環境を設定する手順について説明します。［TP1/LiNKアプリケーション管理SPP］ウィンドウのメニューとボタンの使い方については，「6.2　アプリケーション管理（SPP）」を参照してください。

ユーザサーバの環境設定で設定する内容を次に説明します。

＜この節の構成＞

3.2.1　SPPの実行環境の設定

3.2.2　SPPの詳細設定

3.2.3　サーチパスの設定

3.2.4　自動起動の設定

3.2.5　リソースマネジャ拡張子の設定

3.2.1　SPPの実行環境の設定

SPPの実行環境を設定するときは，［TP1/LiNKアプリケーション管理SPP］ウィンドウの［サーバ定義(E)...］ボタンをクリックします。

ユーザサーバ名を選択してからボタンをクリックすると，選択したユーザサーバの環境を設定する［SPP環境設定］ダイアログボックスが表示されます。

ユーザサーバ名を選択しないでボタンをクリックすると，［アプリケーション環境SPP］ダイアログボックスが表示されます。

図3-14　［アプリケーション環境SPP］ダイアログボックス

ボタンの使い方

［新規作成(N)...］ボタン

SPPの実行環境を新しく設定する［SPP環境設定］ダイアログボックスを開きます。

［開く(O)...］ボタン

すでに設定したSPPの実行環境を変更する［SPP環境設定］ダイアログボックスを開きます。リストボックスから実行環境を変更するユーザサーバ名を選択して，［開く(O)...］ボタンをクリックします。

［削除(D)］ボタン

すでに設定したSPPの実行環境を削除します。リストボックスから削除するユーザサーバ名を選択して，［削除(D)］ボタンをクリックします。

［自動起動設定(A)...］ボタン

SPPの自動起動および自動起動の順番を指定する［自動起動設定］ダイアログボックスを開きます。

［終了(C)］ボタン

［アプリケーション環境SPP］ダイアログボックスを終了します。

SPPの環境を設定するダイアログボックスの開き方

新しくSPPの実行環境を設定する場合と，すでに設定してあるSPPの実行環境を変更する場合とで，ダイアログボックスの開き方が異なります。

新しくSPPの実行環境を設定する場合
［アプリケーション環境SPP］ダイアログボックスの［新規作成(N)...］ボタンをクリックすると，［SPP環境設定］ダイアログボックスが表示されます。
新しくSPPの実行環境を設定する場合は，初期値が設定されています。［SPP環境設定］ダイアログボックスの初期値については，「2.3　セットアップしたときの初期値」を参照してください。

すでに設定してあるSPPの実行環境を変更する場合
［アプリケーション環境SPP］ダイアログボックスのリストボックスから，実行環境を変更したいSPPのユーザサーバ名を選択します。そして，ユーザサーバ名をダブルクリックするか，または［開く(O)...］ボタンをクリックすると，［SPP環境設定］ダイアログボックスが表示されます。

図3-15　［SPP環境設定］ダイアログボックス

ボタンの使い方

［詳細設定(T)...］ボタン

SPPの環境の詳細を設定する［SPP詳細設定］ダイアログボックスを開きます。

［開く(O)］ボタン

［ユーザサーバ名(U)］ドロップダウンリストにユーザサーバ名を指定してから［開く(O)］ボタンをクリックすると，該当するSPPに設定している内容をダイアログボックスに表示します。

［初期値設定(I)］ボタン

［SPP環境設定］ダイアログボックスの，次に示す項目を初期値にします。

［プロセス数］欄

［優先順位］欄

［スケジュール情報］欄

［削除(D)］ボタン

［ユーザサーバ名(U)］一覧に指定したユーザサーバ名の設定内容を削除します。

［自動起動設定(A)...］ボタン

SPPの自動起動および自動起動の順番を指定する［自動起動設定］ダイアログボックスを開きます。

［上書き保存(V)］ボタン

［SPP環境設定］ダイアログボックスに設定した各項目の値を保存します。項目をすべて設定し終えてから［上書き保存(V)］ボタンをクリックすると，各項目を設定できます。

新規に作成したユーザサーバまたは［登録するサービス］欄を変更したユーザサーバの環境を設定すると，設定した環境に合わせたスタブのソースファイルが生成されます。スタブのソースファイルは，%DCDIR%¥aplib¥フォルダの下に「ユーザサーバ名_sstb.c」の名称で作成されます。ただし，すべてのサービスにUAP共用ライブラリ（DLL）を指定した場合は，スタブのソースファイルは生成されません。

［終了(C)］ボタン

［SPP環境設定］ダイアログボックスを終了します。

ダイアログボックスに設定する項目

［ユーザサーバ名(U)］　　～＜1～8文字の識別子＞

新しくSPPの実行環境を設定するときは，実行環境を設定するSPPのユーザサーバ名を入力します。すでに設定してあるSPPの実行環境を変更するときは，ドロップダウンリストからユーザサーバ名を選択します。

ユーザサーバ名には，英字の大文字と小文字の区別はありません。小文字で指定しても，すべて大文字で管理されます。

［サービスグループ名(G)］　　～＜1～31文字の識別子＞

SPPのサービスグループ名を入力します。ここには［ユーザサーバ名(U)］一覧の指定と同じ名称が表示されます。名称を変更するときは，直接入力してください。

［プログラム名(M)］　　～＜1～14文字の識別子＞

SPPの実行形式ファイル名を，".exe"を付けないで入力します。ここには［ユーザサーバ名(U)］一覧の指定と同じ名称が表示されます。名称を変更する場合は，直接入力してください。

［コメント］

このダイアログボックスの内容に関するコメントを任意で入力します。入力したコメントは，［アプリケーション環境SPP］ダイアログボックスのコメントの行に表示されます。

［プロセス数］欄

SPPの常駐プロセスと非常駐プロセスの数を指定します。［システム環境設定］ウィンドウの［サーバ数］欄にある［SPP(P)］には，常駐プロセス数と非常駐プロセス数の合計を指定してください。

常駐プロセス数と非常駐プロセス数の両方に0を指定すると，「常駐プロセス数1，非常駐プロセス数0」が仮定されます。［常駐(R)］の値と［非常駐(N)］の値の合計が128までになるように指定してください。合計が128を超える値は指定できません。

［常駐(R)］　　～＜符号なし整数＞((0～128))《1》
このSPPを実行する常駐プロセスの数を指定します。常駐プロセス数に0を指定したときは，非常駐プロセス数には1以上の値を指定してください。

［非常駐(N)］　　～＜符号なし整数＞((0～128))《0》
このSPPを実行する非常駐プロセスの数を指定します。非常駐プロセス数に0を指定すると，常駐プロセスだけのユーザサーバになります。

［優先順位］欄

［プロセス(P)］　　～＜符号なし整数＞((0～39))《0》
このSPPが実行されるときの優先順位を指定します。値が小さいほど優先順位が高くなります。ここで指定する優先順位は，次に示す4段階に分かれます。
0～9：THREAD_PRIORITY_NORMAL（優先度高い）
10～19：THREAD_PRIORITY_BELOW_NORMAL
20～29：THREAD_PRIORITY_LOWEST
30～39：THREAD_PRIORITY_IDLE（優先度低い）
［プロセス(P)］で指定できるのは，ユーザサーバのスレッド優先順位だけです。スレッド優先順位については，Microsoft Visual C++のWin32 APIの文法を参照してください。

［スケジュール(H)］　　～＜符号なし整数＞((1～16))《8》
スケジュールの優先順位を指定します。値が小さいほど優先順位が高くなります。

［スケジュール情報］欄

［非常駐プロセスを開始するプロセスあたりのサービス滞留数(Q)］　　～＜符号なし整数＞((0～512))《3》
非常駐プロセスを起動する目安になる，サービスの滞留数を指定します。（ここに指定した値×起動中のプロセス）の数を超えてサービス要求が滞留したときに，TP1/LiNKは非常駐プロセスを起動します。スケジュールキューに滞留しているサービス要求の数が（ここに指定した値×起動中のプロセス）の数以下になると，TP1/LiNKは非常駐プロセスを終了させます。
この項目の指定は，非常駐プロセスを使うSPPの場合だけ有効になります。

［サービスの最大入力データ長(L)］　　～＜符号なし整数＞((1～30719))《3》（単位：キロバイト）
サービスを要求されたときにクライアントから渡されるデータの最大長を指定します。

［サービス要求データ格納プール長(B)］　　～＜符号なし整数＞((1～30719))《12》（単位：キロバイト）
サービスを要求されたときにクライアントから渡されるデータを格納するプールの最大長を指定します。［サービスの最大入力データ長(L)］よりも少ない値を指定するとエラーになります。ここに指定する値を大きくすると，処理待ちのサービス要求をより多く滞留できます。
SPP環境設定のサービス要求データ格納プール長に十分な値を指定しなかった場合，KFCA00850-EまたはKFCA00854-Eのエラーメッセージが出力される場合があります。この場合，該当するSPPの［サービス要求データ格納プール長(B)］に，次に示す計算式で求めた値を指定して保存したあと，TP1/LiNKを正常開始させてください。
サービス要求データ格納プール長＝↑（（dc_rpc_call関数のinパラメタ長＋512バイト）×サービス滞留数）÷1024↑
（凡例）
↑↑：小数点以下を切り上げます。

［登録するサービス］欄

［サービス名(S)］　　～＜1～31文字の識別子＞

［エントリポイント名(E)］　　～＜1～20文字の識別子＞
このサービスグループに属するサービス名とそのサービスを提供するエントリポイント名の組をすべてのサービスについて指定します。エントリポイント名とは，C言語の場合は関数名，COBOL言語の場合はプログラム名または入り口名のことです。
追加する場合は，欄内下の［サービス名(S)］および［エントリポイント名(E)］を入力して，［設定(J)］ボタンをクリックします。
削除する場合は，リストボックスから削除するサービス名を選択して，［削除(K)］ボタンをクリックします。なお，登録したサービス名は昇順に表示されます。

［UAP共用ライブラリ(DLL)名(F)］　　～＜1～63バイトのパス名＞
サービス関数動的ローディング機能を使うサービスの場合，UAP共用ライブラリを指定します。UAP共用ライブラリは，ダイナミックリンクライブラリ（Dynamic Link Library）と同じ意味です。一般に拡張子が，「.dll」であるファイルのことを指します。［UAP共用ライブラリ(DLL)名(F)］の指定を省略した場合，スタブを使うサービスが登録されます。
なお，UAP共用ライブラリ名として，次に示す文字は指定できません。
・空白
・タブコード
・等号（=）
・コンマ（,）
・セミコロン（;）
・引用符（"）
UAP共用ライブラリの指定方法について次に説明します。
●環境変数を使用する場合
UAP共用ライブラリのパス名に環境変数を指定する場合，パス名の先頭だけ環境変数を指定できます。また，ここで指定するユーザサーバの環境変数は，グローバルまたはローカルに指定できます。なお，環境変数を指定した場合は，環境変数展開後のパス名で最大123文字指定できます。
指定例：
［サービス名(S)］：serviceA
［エントリポイント名(E)］：serviceA
［UAP共用ライブラリ(DLL)名(F)］：%USRDIR%¥lib¥usrlib.dll
ユーザサーバの環境変数：USRDIR
ユーザサーバの環境変数値：C:¥OLTP1¥usrdir

●UAP共用ライブラリ名称をフルパスで指定する場合
UAP共用ライブラリ名として，UAP共用ライブラリ名称のフルパスを指定した場合，TP1/LiNKは指定したUAP共用ライブラリを検索して使用します。
指定例：
［サービス名(S)］：serviceA
［エントリポイント名(E)］：serviceA
［UAP共用ライブラリ(DLL)名(F)］：C:¥OLTP1¥usrdir¥lib¥usrlib.dll

●UAP共用ライブラリ名称だけを指定する場合
UAP共用ライブラリ名としてUAP共用ライブラリ名称だけを指定した場合，TP1/LiNKは指定したUAP共用ライブラリをOSのライブラリサーチパスを基に検索して使用します。
指定例：
［サービス名(S)］：serviceA
［エントリポイント名(E)］：serviceA
［UAP共用ライブラリ(DLL)名(F)］：usrlib.dll
UAP共用ライブラリ名称だけを指定する場合は，指定するUAP共用ライブラリをOSのライブラリサーチパス内に配置してください。
UAP共用ライブラリの検索順序：
Windowsでは，次に示す順番で指定したUAP共用ライブラリの検索が行われます。
1. SPP実行ファイルが存在するフォルダ
2. SPPのカレントフォルダ（%DCDIR%¥tmp¥home¥ユーザサーバ名）※1
3. Windowsシステムフォルダ※2
4. Windowsフォルダ※2
5.［システム環境設定］ウィンドウの［サーチパス］欄に指定したサーチパス※3
注※1　TP1/LiNKが管理する一時フォルダです。このフォルダはTP1/LiNKシステムやUAPの起動時に削除されるので，UAP共用ライブラリを格納しないことを推奨します。
注※2　WindowsシステムフォルダまたはWindowsフォルダには，UAP共用ライブラリを格納しないことを推奨します。また，Windowsシステムフォルダとは，標準的な環境で「C:¥Windows¥System32¥」のことを示します。Windowsフォルダとは，標準的な環境で「C:¥Windows¥」のことを示します
注※3　複数のサーチパスを指定している場合，最初に検索されたサーチパスのUAP共用ライブラリが使用されます。

●UAP共用ライブラリ名称をフルパスで指定する方法と名称だけを指定する方法を併用する場合
UAP共用ライブラリの名称をフルパスで指定する方法と名称だけを指定する方法は併用できます。UAP共用ライブラリは，各UAP共用ライブラリの指定方式に従ってUAP上にローディングされます。ただし，名称をフルパスで指定する方法で指定したUAP共用ライブラリと名称だけを指定する方法で指定したUAP共用ライブラリが同一名称の場合，記述する順序によってローディングされるUAP共用ライブラリパスが異なるため注意してください。記述する順序の違いによるUAP共用ライブラリの検索順序について次に説明します。

指定例1：
UAP共用ライブラリの記述順序は次のとおりです。

記述する順序 | ［サービス名(S)］の指定例 | ［エントリポイント名(E)］の指定例 | ［UAP共用ライブラリ(DLL)名(F)］の指定例
1 | serviceA | serviceA | usrlib.dll
2 | serviceB | serviceB | C:¥OLTP1¥usrdir¥lib¥usrlib.dll

UAP共用ライブラリの検索順序：
まず，UAP共用ライブラリ名称だけを指定する方法のパス検索順序に従って，ライブラリパスが検索されます。最初に見つかったフォルダ下のUAP共用ライブラリがローディングされます。次にフルパスで指定する方法で指定したUAP共用ライブラリがローディングされます。
指定例1の場合，2種類の異なるUAP共用ライブラリがUAP上にローディングされます。ただし，名称だけを指定する方法でUAP共用ライブラリを検索した結果，フルパスで指定したUAP共用ライブラリと同じものが検索されれば，同じUAP共用ライブラリが2回ローディングされます。

指定例2：
UAP共用ライブラリの記述順序は次のとおりです。

記述する順序 | ［サービス名(S)］の指定例 | ［エントリポイント名(E)］の指定例 | ［UAP共用ライブラリ(DLL)名(F)］の指定例
1 | serviceA | serviceA | C:¥OLTP1¥usrdir¥lib¥usrlib.dll
2 | serviceB | serviceB | usrlib.dll

UAP共用ライブラリの検索順序：
フルパスで指定する方法で指定したUAP共用ライブラリがローディングされます。次に名称だけを指定する方法で指定したUAP共用ライブラリをローディングしようとします。
先にフルパスで同一名称のUAP共用ライブラリがローディングされているため，名称だけを指定する方法のパス検索順序が適用されないで，フルパスで指定する方法で指定したUAP共用ライブラリが再度ローディングされます。この指定順序の場合，フルパス指定したUAP共用ライブラリが2回，UAP上にローディングされます。
●スタブおよびサービス関数動的ローディング機能を使用するサービスを併用する場合
指定例：
UAP共用ライブラリの記述順序は次のとおりです。

記述する順序 | ［サービス名(S)］の指定例 | ［エントリポイント名(E)］の指定例 | ［UAP共用ライブラリ(DLL)名(F)］の指定例
1 | serviceA | serviceA | 指定なし
2 | serviceB | serviceB | C:¥OLTP1¥usrdir¥lib¥usrlib.dll

UAP共用ライブラリの検索順序：
サービスは指定したサービス名の昇順で検索されます。

［ユーザサーバの環境変数］欄　　～＜1～63文字の英数字＞

SPPの環境変数を設定します。

環境変数を設定する場合
環境変数をシステム全体で有効にする場合は，［グローバル欄］にカーソルを位置づけます。環境変数を［ユーザサーバ名(U)］欄のユーザサーバでだけ有効にする場合は，［ローカル］欄にカーソルを位置づけます。
次に，欄内下の［変数(Y)］と［値(Z)］に値を入力してから，［設定(W)］ボタンをクリックします。

環境変数を削除する場合
削除する環境変数を［グローバル］欄または［ローカル］欄から選択します。そして，［削除(X)］ボタンをクリックします。

エラーメッセージ

［SPP環境設定］ダイアログボックスの操作中にエラーが起こったときは，エラーメッセージが出力されます。表示内容を確認してから［OK］ボタンをクリックしてください。

3.2.2　SPPの詳細設定

SPP環境の詳細を設定するときは，［SPP環境設定］ダイアログボックスの［詳細設定(T)...］ボタンをクリックします。ボタンをクリックすると，［SPP詳細設定］ダイアログボックスが表示されます。

図3-16　［SPP詳細設定］ダイアログボックス

ボタンの使い方

［初期値設定(I)］ボタン

［SPP詳細設定］ダイアログボックスのすべての項目を初期値にします。

［OK］ボタン

各項目を設定した値に変更し，［SPP詳細設定］ダイアログボックスを終了します。

［キャンセル］ボタン

各項目の値を変更しないで，［SPP詳細設定］ダイアログボックスを終了します。

＜この項の構成＞

(1)　［トランザクション］タブに設定する項目

(2)　［閉塞］タブに設定する項目

(3)　［RPC］タブに設定する項目

(4)　［リモートAPI機能］タブに設定する項目

(5)　［サービス関数］タブに設定する項目

(6)　［その他］タブに設定する項目

(1)　［トランザクション］タブに設定する項目

［トランザクション］タブは，図3-16を参照してください。

［トランザクション属性(T)］

このSPPでトランザクション機能を使うかどうかをチェックボックスで指定します。

このチェックボックスをオンにする場合は，［システム環境設定］ウィンドウで，［トランザクション機能］欄の［あり］オプションボタンをオンにしておいてください。

［トランザクションブランチ限界経過時間(E)］　　～＜符号なし整数＞((0～65535))《0》（単位：秒）

このSPPでトランザクションブランチの処理を監視する限界経過時間を指定します。指定時間を超えたときは，このトランザクションブランチのプロセスを異常終了させて，ロールバックします。0を指定した場合は，時間監視しません。

［子トランザクションブランチを監視時間に含める(B)］

このSPPでトランザクションブランチの処理を監視する場合に，次に示す処理時間も監視時間に含めるかどうかをチェックボックスで指定します。

監視対象のトランザクションブランチが，RPC機能を使ってほかのトランザクションブランチを呼び出し，その処理が終わるのを待つ時間

連鎖RPCで呼び出されたサーバUAPが，次のサービス要求を待つ時間

監視対象のトランザクションブランチが，非同期RPCを使用してほかのトランザクションブランチを呼び出したあと，処理結果受信処理をしている時間

チェックボックスをオンにしたとき

1.，2.，3.のすべてを監視時間に含みます。

チェックボックスをオフにしたとき

3.だけを監視時間に含みます。

［リソースマネジャ拡張子設定(D)...］ボタン

このユーザサーバがアクセスするリソースマネジャ拡張子（リソースマネジャ接続時に設定したOPEN，CLOSE文字列に対応するリソースマネジャ拡張子）を設定する［リソースマネジャ拡張子設定］ダイアログボックスが表示されます。

(2)　［閉塞］タブに設定する項目

［SPP異常終了時，閉塞しない(A)］

このSPPを実行中にサーバプロセスが異常終了した場合，サービスグループを閉塞するかどうかをチェックボックスで指定します。

チェックボックスをオンにしたとき

サービスグループを閉塞しないで，サーバプロセスを自動再起動します。

チェックボックスをオフにしたとき

サービスグループを閉塞します。

［連続異常終了限界経過時間(X)］　　～＜符号なし整数＞((0～32767))《30》（単位：分）

このSPPでサーバプロセスが異常終了した回数を監視する限界経過時間を指定します。0を指定した場合は，時間監視しません。なお，指定時間内に3回連続してこのSPPのサーバプロセスが異常終了したときは，サービスグループを閉塞します。

［システム再開始時，閉塞状態を引き継ぐ(V)］

システムを再開始したときにサービスグループの閉塞状態を引き継ぐかどうかをチェックボックスで指定します。

チェックボックスをオンにしたとき

サービスグループの閉塞状態を引き継ぎます。

チェックボックスをオフにしたとき

サービスグループの閉塞状態を引き継ぎません。

［サービス単位の閉塞管理をする(S)］

このサービスグループに属するサービスについて，サービス単位の閉塞管理をするかどうかをチェックボックスで指定します。

チェックボックスをオンにしたとき

サービス単位に閉塞管理します。

チェックボックスをオフにしたとき

サービス単位の閉塞管理はしません。

サービス単位の閉塞管理をすることによって，サービス単位にサーバ異常終了時の閉塞，または［サービス閉塞管理］ダイアログボックスもしくは運用コマンドでの閉塞ができます。ただし，サーバ異常終了時のサービス単位の閉塞は，［SPP異常終了時，閉塞しない(A)］チェックボックスをオフにしたとき，または［連続サービス異常終了限界経過時間(T)］を指定したときだけできます。

対象となるサービスのスケジュール要求を受けた場合，サービス要求をサービス要求元にエラーリターンします。

［連続サービス異常終了限界経過時間(T)］　　～＜符号なし整数＞((0～32767))《0》（単位：分）

このユーザサーバのサーバプロセスが，同一サービス実行中に異常終了した回数を監視する限界経過時間を指定します。0を指定した場合は，時間監視しません。

この項目を指定すると，指定した時間内にサーバプロセスが同一サービス実行中（dc_rpc_mainloop関数内）で3回異常終了した場合は，そのサービスを閉塞します。また，サーバプロセスがサービス実行中以外（dc_rpc_mainloop関数外）で3回異常終了した場合は，サービスグループを閉塞します。

この項目の指定値は，サーバプロセスが異常終了しても，サービスグループを閉塞しないでサービス単位で閉塞管理する場合に有効となります。

この項目の指定値に0以外の値を指定すると，サービス単位で異常終了した回数を監視するため，［連続異常終了限界経過時間(X)］を指定しても無視されます。

［連続サービス異常終了限界経過時間(T)］と，［SPP異常終了時，閉塞しない(A)］，［サービス単位の閉塞管理をする(S)］，および［連続異常終了限界経過時間(X)］の指定の関係を，次に示します。

各オペランドの指定値 | サーバプロセスが異常終了した回数とOpenTP1の処理
［SPP異常終了時，閉塞しない(A)］ | ［サービス単位の閉塞管理をする(S)］ | ［連続異常終了限界経過時間(X)］ | ［連続サービス異常終了限界経過時間(T)］ | 1回目 | 2回目 | 3回目
オフ | オン | × | × | サービス閉塞 | － | －
オフ | × | × | サービスグループ閉塞 | － | －
オン | オン | 0 | 指定なし | プロセス再起動 | プロセス再起動 | プロセス再起動
0以外 | 指定なし | プロセス再起動 | プロセス再起動 | サービスグループ閉塞
0 | 0 | プロセス再起動 | プロセス再起動 | プロセス再起動
0以外 | 0 | プロセス再起動 | プロセス再起動 | サービスグループ閉塞
× | 0以外 | プロセス再起動 | プロセス再起動 | サービス閉塞※
オフ | 0 | × | プロセス再起動 | プロセス再起動 | プロセス再起動
0以外 | × | プロセス再起動 | プロセス再起動 | サービスグループ閉塞

（凡例）

×：指定できません（指定しても無視されます）。

－：何もしません。

注※

サーバプロセスがサービス実行中以外（dc_rpc_mainloop関数外）で3回異常終了した場合は，サービスグループを閉塞します。

(3)　［RPC］タブに設定する項目

［最大応答待ち時間(W)］　　～＜符号なし整数＞((0～65535))《180》（単位：秒）

このSPPでRPCによってプロセス間で通信する場合，サービス要求を送信してからサービスの応答が返るまでの待ち時間の最大値を指定します。

指定時間を過ぎても応答がないときは，RPCは送受信タイムアウトとしてエラーリターンします。0を指定したときは，応答を受信するまで待ち続けます。この指定を省略した場合，［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通の値が仮定されます。

［連鎖RPC間隔監視時間(C)］　　～＜符号なし整数＞((0～65535))《180》（単位：秒）

このSPPが連鎖RPCで呼び出された場合，前回のサービス要求に応答を返してから次のサービス要求を受けるまで，またはトランザクションが終了するまでの最大時間間隔を指定します。指定時間を超えたときは，このSPPは異常終了します。0を指定したときは，連鎖RPCでの次のサービス要求を受けるまで，またはトランザクションが終了するまで待ち続けます。

［ソケット用ファイル記述子の最大数(F)］　　～＜符号なし整数＞((32～2047))《64》

OpenTP1制御下のプロセスで，ソケット用に使用するファイル記述子の最大値を指定します。

OpenTP1制御下のプロセスでは，システムサービスやユーザサーバとの間で，ソケットを使用したTCP/IP通信でプロセス間の情報交換をしています。このため，同時に稼働するUAPプロセスの数によって，ソケット用のファイル記述子の最大数を変更する必要があります。

この指定値が小さいと，OpenTP1制御下の他プロセスとのコネクションが設定できなくなるため，プロセスはKFCA00307-Eのエラーメッセージを出力して異常終了します。

ソケット用ファイル記述子の最大数の計算式を次に示します。計算結果の値の小数点以下は切り上げます。

（このユーザサーバが通信するUAPプロセス数※¹＋システムサービスプロセス数※²）÷0.8

注※1

このユーザサーバが通信するUAPプロセス数は，次に示す値の合計です。

このユーザサーバが通信する自OpenTP1内のUAPプロセス数

このユーザサーバが通信する他ノード内のUAPプロセス数

注※2

システムサービスプロセス数とは，自OpenTP1内のシステムサービスプロセスの数です。自OpenTP1内のシステムサービスプロセスは，rpcstatコマンドで表示されるサーバ名をカウントすることで求められます。rpcstatコマンドで表示されるサーバ名のうち，マニュアル「OpenTP1 解説」のOpenTP1のプロセス構造に記載されているシステムサービスプロセスをカウントしてください。

指定を省略した場合，［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通の値が仮定されます。

［ソケットの一時クローズ開始数(G)］　　～＜符号なし整数＞((0～100))《100》（単位：％）

OpenTP1制御下のプロセスで，［ソケット用ファイル記述子の最大数］に指定した使用ソケット数の上限に対し，一時クローズ処理によるソケットの再利用を開始するパーセンテージを指定します。一時クローズ処理とは，保持したコネクションを，ユーザの関知しないところでコネクションを確立したプロセス間の合意のもとに切断することで，プロセス内で使用するソケット数を調整する機能です。

OpenTP1では，プロセス内のソケット用に使用しているファイル記述子の数が，「［ソケット用ファイル記述子の最大数］に指定した値×［ソケットの一時クローズ開始数］に指定した値÷100」の値を超えた時点で，一時クローズ処理を開始します。

0を指定すると，確立したコネクションを保持しないで，コネクションを確立するたびに一時クローズ処理を実行します。指定を省略した場合，［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通の値が仮定されます。

［ソケットの一時クローズ非対象数(U)］　　～＜符号なし整数＞((0～80))《0》（単位：％）

［ソケット用ファイル記述子の最大数］に指定した使用ソケット数の上限に対して，「［ソケット用ファイル記述子の最大数］に指定した値×［ソケットの一時クローズ非対象数］に指定した値÷100」の個数を一時クローズ処理の非対象として扱い，一時クローズ要求を送信しません。

ソケットの一時クローズ非対象数は，ソケットの一時クローズ開始数と同じか，それ以下の値を指定してください。指定を省略した場合，［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通の値が仮定されます。

OpenTP1制御下のプロセスは，システムサーバやユーザサーバとの間で，ソケットを使用したTCP/IP通信による，プロセス間の情報交換をします。このとき，コネクション確立時のオーバヘッド削減のために，一度確立したコネクションは切断しないで保持し，同じプロセス間の通信で再利用しています。しかし，同じプロセス間の通信が頻繁に発生しない運用や，通信する相手プロセスが非常に多いシステムでは，保持しているコネクション数がある程度増えてきたときに適度にコネクションを解放し，1プロセスで使用するソケット数を調整および再利用できるようにする必要があります。

また，OpenTP1制御下のプロセスから電文の送信が発生した場合は，コネクションを確立するときに送信ポートを確保します。このポートの個数は1マシンで約4000であるため，UAPプロセスが1プロセスで保持するコネクション数の，システム全体の合計が2000を超えない程度に，［ソケットの一時クローズ開始数］および［ソケットの一時クローズ非対象数］を指定して調整してください。

この指定値が適切でないと，1プロセス内で使用できるソケット数が上限に達して，一時クローズによるソケットの再利用が新たなコネクション確立要求に追いつかなくなったり，システム全体で使用するポート数がTCP/IPの上限を超え，プロセスが異常終了したりする場合があります。

OpenTP1で使用するポート番号使用量の見積もり式については，「3.1.2(4)　［ソケット］タブに設定する項目」の「表3-2　OpenTP1で使用するポート番号使用量の見積もり式」を参照してください。

［一時クローズ要求の応答監視時間(L)］　　～＜符号なし整数＞((0～65535))《180》（単位：秒）

OpenTP1制御下のプロセスで，使用中のソケット数が［ソケット用ファイル記述子の最大数］で指定した上限値に達した時点から，一時クローズ処理でソケットが空いて再利用できるようになるまでの監視時間を指定します。

ここで指定した時間を過ぎてもソケットが空かない場合は，そのプロセスを異常終了させます。

0を指定した場合は，無限に待ちます。指定を省略した場合，［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通の値が仮定されます。

［RPCトレースを取得するファイルの容量(J)］　　～＜符号なし整数＞((1024～2147483647))（単位：バイト）

このSPPでRPCトレースを取得する場合，RPCトレースを取得するファイルの容量を指定します。指定を省略した場合，［システム環境設定］ウィンドウで設定したシステム共通の値が仮定されます。

なお，RPCトレースファイル容量よりも，はるかに大きい電文が送受信された場合，編集時に何も出力しなかったり，出力情報にRPCトレースの抜け落ちが発生したりします。

また，RPCトレースを取得した場合，処理スピードが遅くなることが原因となって，RPCがタイムアウトでエラーリターンすることがあります。この場合，［RPC詳細設定］ダイアログボックスのシステム共通の最大応答待ち時間に十分な値を指定してください。

［一時クローズ処理要求が到着していないかどうかを検査する(Z)］

OpenTP1制御下のSPP，MHPがサービス要求の受信待ち状態のとき，定期的に割り込んで，一時クローズ処理要求が到着していないか検査するかどうかをチェックボックスで指定します。

チェックボックスがオンのとき

サービス要求の受信待ち状態に定期的に割り込み，一時クローズ処理要求が到着していないかどうかを検査します。

チェックボックスがオフのとき

サービス要求の受信待ち状態に割り込まないで，トランザクション回復要求が到着するまで待ち状態を継続します。

クライアントからのサービス要求が長時間発生しない常駐UAPに対しては，オンにする必要があります。また，時間帯によって業務トラフィックにばらつきのあるシステムでは，常駐UAPについてもオンにする必要があります。

［ソケットの再利用指示を受信できる契機を与えるインタバル時間(Y)］　　～＜符号なし整数＞((1～86400))《90》（単位：秒）

OpenTP1制御下のSPP，MHPが，サービス要求の受信待ち状態のとき，定期的に割り込んで，一時クローズ処理要求が到着していないかどうかを検査する場合の検査インタバル時間を，秒単位で指定します。

また，サービス要求を待つことなく次々にサービスを受け付けている場合には，連続してサービス要求を受け付けた時間が一定時間を超えたところで，一時クローズ処理要求が到着していないかどうかを検査します。

指定値は，このインタバル値としても使用されます（連続してサービス要求を受け付けた時間がこの指定値を超えたときの，一時クローズ処理要求到着検査には，割り込みは発生しません）。

この指定値は，［一時クローズ要求の応答監視時間(L)］指定値よりも小さい値を設定する必要があります。サービス要求待ち状態に割り込んで，一時クローズ処理要求受信を検査する機能は，［一時クローズ処理要求が到着していないかどうかを検査する(Z)］チェックボックスがオンのときにだけ動作します。

連続してサービス要求を受け付けたときに一時クローズ処理要求受信を検査する機能は，［一時クローズ処理要求が到着していないかどうかを検査する(Z)］の指定に関係なく動作します。最大値を指定した場合は，［一時クローズ処理要求が到着していないかどうかを検査する(Z)］の指定に関係なく，一時クローズ処理要求が到着していないかどうかの検査を実行しません。

［TCP/IPの受信バッファサイズ(H)］　　～＜符号なし整数＞((0，8192～1048576))《8192》（単位：バイト）

コネクションごとに確保されるTCP/IPの受信バッファのサイズを指定します。

高速な通信媒体やMTUの大きな通信媒体を使用している場合，この値を大きくすれば性能向上を見込めます。ただし，イーサネットなどのMTUの小さな通信媒体を使用している場合，性能が悪くなるおそれがあります。

0を指定した場合は，OSの受信バッファサイズが適用されます。受信データサイズが8192バイトを超える場合，この項目に0を指定することで受信バッファのサイズが拡張され，性能が向上することがあります。

0を指定する場合の使用方法については，マニュアル「OpenTP1 運用と操作」の遠隔サービス要求時の通信レスポンスのチューニングに関する記述を参照してください。

なお，0を指定する場合，このノードと通信するすべてのノードで同じ値を指定してください。同じ値を指定しない場合，通信するノードとバッファサイズに差異が生じ，通信性能が劣化するおそれがあります。また，1～8191は指定できません。OSで使用できるTCP/IPの受信バッファのサイズ以下の値を指定してください。

注

TCPは，受信したデータに対し，送達確認（ACK）パケットを返信します。受信バッファのサイズに対し，受信したデータが小さいと，データを受信しても直ちにACKを返信しません（遅延ACK）。この指定値に大きな値を指定し，小さいデータをやり取りし合うような通信処理の場合，遅延ACKの影響によって性能が悪くなるおそれがあります。遅延ACKについての詳細は，TCP/IPの文献を参照してください。

指定を省略した場合，［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通の値が仮定されます。

［TCP/IPの送信バッファサイズ(O)］　　～＜符号なし整数＞((0，8192～1048576))《8192》（単位：バイト）

コネクションごとに確保されるTCP/IPの送信バッファのサイズを指定します。

高速な通信媒体やMTUの大きな通信媒体を使用している場合，この値を大きくすれば性能向上を見込めます。ただし，イーサネットなどのMTUの小さな通信媒体を使用している場合，性能が悪くなるおそれがあります。

RPCは，送信バッファにデータ送信する段階で4キロバイト単位に送信していて，ネットワークの状態によっては送信バッファ内のデータがネットワーク上に出力しきれないで，送信処理に失敗することがあります。例えば，［RPC詳細設定］ダイアログボックスの［その他］タブで［RPC送受信電文の最大長(M)］に8を指定して8メガバイトのメッセージを送信する場合，ネットワークの状態次第では4キロバイトの送信処理で35ミリ秒の待ちが多く発生し，通信性能に大きな影響を与えるおそれがあります。

このような場合は，この項目に0を指定し，送信バッファサイズを調整することを推奨します。

0を指定した場合は，OSの送信バッファサイズが適用されます。送信データサイズが8192バイトを超える場合，この項目に0を指定することで送信バッファのサイズが拡張され，性能が向上することがあります。

0を指定する場合の使用方法については，マニュアル「OpenTP1 運用と操作」の遠隔サービス要求時の通信レスポンスのチューニングに関する記述を参照してください。

なお，0を指定する場合，このノードと通信するすべてのノードで同じ値を指定してください。同じ値を指定しない場合，通信するノードとバッファサイズに差異が生じ，通信性能が劣化するおそれがあります。また，1～8191は指定できません。OSで使用できるTCP/IPの送信バッファのサイズ以下の値を指定してください。

指定を省略した場合，［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通の値が仮定されます。

(4)　［リモートAPI機能］タブに設定する項目

［OpenTP1が常設コネクションを自動管理する(P)］

SPPでリモートAPI機能の常設コネクションを使用してサービス要求する場合に，SPPとリモートAPI制御プロセスとの間のコネクションをTP1/LiNKが自動的に管理するかどうかをチェックボックスで指定します。

チェックボックスをオンにしたとき

TP1/LiNKが自動的にコネクションを管理します。

チェックボックスをオフにしたとき

dc_rap_connect関数またはdc_rap_disconnect関数を使ってユーザがコネクションを管理します。

［常設コネクション問い合わせ間隔最大時間(M)］　　～＜符号なし整数＞((0～1048575))《0》（単位：秒）

SPPでリモートAPI機能を使用してサービス要求する場合に，リモートAPI制御プロセスがSPPからのサービス要求を処理してから，次のサービス要求を処理するまでの間の最大待ち時間を指定します。この指定値は，リモートAPI制御プロセス側で監視するタイマです。指定時間を超えても次のサービス要求がないときは，リモートAPI制御プロセスはSPPがダウンしたものと見なして処理します。0を指定したときは，リモートAPI制御プロセス側のデフォルト値（180秒）が有効となります。

(5)　［サービス関数］タブに設定する項目

［サービス関数をリトライする最大回数(R)］　　～＜符号なし整数＞((0～65535))《0》

サービスリトライ機能で，サービス関数をリトライする最大回数を指定します。

0を指定したときは，サービスリトライ機能を使用しません。このため，dc_rpc_service_retry関数はエラーリターンし，サービス関数はリトライされません。0以外を指定したときは，指定された回数だけ連続してサービス関数がリトライされます。指定された回数を超えて呼び出されたdc_rpc_service_retry関数はエラーリターンし，サービス関数はリトライされません。

［サービス関数実行監視時間(S)］　　～＜符号なし整数＞((0～65535))《0》（単位：秒）

SPPでのサービス関数開始から終了までの実行監視時間を指定します。ここで指定した時間を超えてもサービス関数がリターンしない場合，SPPは異常終了します。0を指定したときは，時間監視しません。

［サービス単位にスケジュールサービスの動作を指定］欄

SPPがスケジュールキューにサービス要求を登録，または取り出す場合の動作をサービス単位に指定できます。［SPP環境設定］ダイアログボックスまたは［SPP.NET環境設定］ダイアログボックスの［登録するサービス］欄でサービスを削除した場合は，この欄に指定した値が自動的に削除されます。

［サービス名(C)］　　～＜1～31文字の識別子＞
サービス単位での動作を指定するサービス名称をドロップダウンリストボックスから選択します。選択すると対応する［同時実行可能なサービス数(P)］，［キューイング可能なサービス要求数(N)］，または［キューイング可能なサービス要求データ格納プール長(L)］の指定値が表示されます。
ドロップダウンリストボックスから「サービス共通」を選択した場合は，すべてのサービスに対してサービス単位での動作を指定します。なお，「サービス共通」の設定とサービス名称を指定した設定がある場合は，サービス名称を指定した設定が優先されます。

［同時実行可能なサービス数(P)］　　～＜符号なし整数＞((1～128))
［サービス名(C)］で選択したサービス名に対するサービス要求について，同時実行可能なサービス数の上限値を指定します。
この指定値は，SPPの最大プロセス数（［SPP環境設定］ダイアログボックスに指定したプロセス数の合計値(［常駐(R)］+［非常駐(N)］)またはscdchprcコマンドで指定）よりも小さい値の場合に有効になります。この指定を省略した場合，同時実行可能なサービス数の上限値はチェックしません。

［キューイング可能なサービス要求数(N)］　　～＜符号なし整数＞((1～65535))
［サービス名(C)］で選択したサービス名に対するサービス要求について，スケジュールキューにキューイング可能なサービス要求数を指定します。
この指定値は，SPPのサービス要求データ格納プールにキューイング可能なサービス要求数よりも小さい値の場合に有効になります。この指定を省略した場合，キューイング可能なサービス要求数はチェックしません。

［キューイング可能なサービス要求データ格納プール長(L)］　　～＜符号なし整数＞((1～30719))（単位：キロバイト）
［サービス名(C)］で選択したサービス名に対するサービス要求について，スケジュールキューにキューイング可能なサービス要求データ格納プール長を指定します。
この指定値は，SPPのサービス要求データ格納プール長（［SPP環境設定］ダイアログボックスに指定した［サービス要求データ格納プール長(B)］）よりも小さい値の場合に有効になります。この指定を省略した場合，キューイング可能なサービス要求データ格納プール長はチェックしません。

注意

［キューイング可能なサービス要求数(N)］および［キューイング可能なサービス要求データ格納プール長(L)］の指定値によって，スケジュールキューにサービス要求が登録できない場合には，KFCA00831-Wメッセージを出力してほかのTP1ノードへの再スケジュールを試みます。再スケジュール先が存在しない場合は，RPC発行元にDCRPCER_NO_BUFS(-304)がリターンされます。

(6)　［その他］タブに設定する項目

［システム再開始時，自動起動する(N)］

TP1/LiNK再開始時，SPPを自動起動するかどうかをチェックボックスで指定します。

SPPが正常終了した場合，この指定は無効となります。

チェックボックスをオンにしたとき

TP1/LiNK再開始時，自動起動します。

チェックボックスをオフにしたとき

TP1/LiNK再開始時，自動起動しません。

［UAPトレース格納最大数(K)］　　～＜符号なし整数＞((0～4095))《32》

SPPで取得できるUAPトレースのレコード数を指定します。1レコードのサイズは256バイトです。0を指定したときは，UAPトレースを取得しません。

［スケジュール遅延限界経過時間(S)］　　～＜符号なし整数＞((0～32767))《0》（単位：秒）

スケジュールキューによるスケジューリングの遅延限界経過時間を指定します。

スケジュールキューにサービス要求が登録されているにもかかわらず，サービス要求が取り出されない状態が，この指定値を超えて続くと，該当サーバごとにKFCA00838-Wのエラーメッセージを出力します。

この際，［スケジュール遅延時にシステムダウンする(A)］をオンにしている場合には，SCDデーモンが異常終了してTP1/LiNKがシステムダウンします。この指定値を省略，または0を指定した場合，スケジュール遅延を監視しません。

スケジュールサービスは，10秒のインタバルでスケジュール遅延を監視するため，スケジュール遅延を検知するのに最大10秒掛かることがあります。この指定値には，該当サーバの起動処理時間およびサービス処理時間よりも大きい値を指定してください。

［スケジュール遅延時にシステムダウンする(A)］

スケジュール遅延時にシステムダウンするかどうかをチェックボックスで指定します。

チェックボックスがオンのとき

スケジュール遅延時にシステムダウンします。

チェックボックスがオフのとき

スケジュール遅延時にシステムダウンしません。

スケジュールキューにサービス要求が登録されているにもかかわらず，サービス要求が取り出されない状態が，［スケジュール遅延限界経過時間(S)］の指定値を超えて続くと，オンにした場合，KFCA00839-Eのエラーメッセージを出力したあと，SCDデーモンが異常終了してシステムダウンします。［スケジュール遅延限界経過時間(S)］を省略，または0を指定した場合，この指定は無視されます。

3.2.3　サーチパスの設定

ユーザサーバ固有で有効になるサーチパスを設定するときは，［TP1/LiNKアプリケーション管理SPP］ウィンドウの［プログラムのサーチパス(P)...］ボタンをクリックします。ボタンをクリックすると，［TP1/LiNKサーチパス］ダイアログボックスが表示されます。このダイアログボックスで，ユーザサーバに関するサーチパスを設定または変更します。

図3-17　［TP1/LiNKサーチパス］ダイアログボックス

サーチパスを追加する場合は，［変更サーチパス名(N)］にパス名を入力してから［設定(S)］ボタンをクリックします。

サーチパスを削除する場合は，リストボックスから削除するパス名を選択してから［削除(D)］ボタンをクリックします。

［TP1/LiNKサーチパス］ダイアログボックスを閉じるときは，［終了(C)］ボタンをクリックします。

サーチパスはTP1/LiNKが稼働しているときだけ変更できます。変更した値はそのオンライン中にだけ有効です。TP1/LiNKを再起動したときは，オンライン中に変更した値は引き継がれません。

なお，すでにサーチパス名の長さ（パスセパレータ';'を含める）が255文字を超えている場合は，「サーチパス状態のパス名に見つからないパス名があります。」というエラーダイアログボックスが表示され，サーチパスを変更できません。

3.2.4　自動起動の設定

ユーザサーバを自動起動するかどうかを設定するときは，次のどちらかの操作をします。

［アプリケーション環境SPP］ダイアログボックスの［自動起動設定(A)...］ボタンをクリック

［SPP環境設定］ダイアログボックスの［自動起動設定(A)...］ボタンをクリック

ボタンをクリックすると，［自動起動設定］ダイアログボックスが表示されます。このダイアログボックスで，ユーザサーバを自動起動するかどうかおよび自動起動の順番を設定します。

図3-18　［自動起動設定］ダイアログボックス

ボタンの使い方

［上書き保存(V)］ボタン

設定したユーザサーバの起動順位を保存します。

［終了(C)］ボタン

［自動起動設定］ダイアログボックスを終了します。

ダイアログボックスに設定する項目

TP1/LiNKを開始したときに，一緒に開始するSPPの起動順位を指定します。

［自動起動あり］欄

自動起動を設定しているユーザサーバ名を表示します。自動起動を指定するときは，［自動起動なし］欄からユーザサーバ名をドラッグして，［自動起動あり］欄の1から5番目のリストボックスへドロップします。

同じシステム内でサービスを要求する場合，自動起動する順番は，サービスを要求されるユーザサーバの方が早く起動するように設定してください。（例　SPPとSUPを自動起動させるときは，SPPの順位を上げておく）。ユーザサーバからサービスを要求したときに相手のユーザサーバが開始していないと，サービス要求がエラーリターンします。

［自動起動なし］欄

自動起動を指定していないユーザサーバ名を表示します。ユーザサーバの自動起動を解除するときは，［自動起動あり］欄のリストボックスからユーザサーバ名をドラッグして，［自動起動なし］欄のリストボックスへドロップします。

3.2.5　リソースマネジャ拡張子の設定

ユーザサーバがアクセスするリソースマネジャ拡張子（リソースマネジャ接続時に設定したOPEN，CLOSE文字列に対応するリソースマネジャ拡張子）を設定するときは，［SPP詳細設定］ダイアログボックスの［リソースマネジャ拡張子設定(D)...］ボタンをクリックします。ボタンをクリックすると，［リソースマネジャ拡張子設定］ダイアログボックスが表示されます。このダイアログボックスで，ユーザサーバがアクセスするリソースマネジャ拡張子を設定または変更します。

図3-19　［リソースマネジャ拡張子設定］ダイアログボックス

ボタンの使い方

次に示すボタンは，リストボックスにあるリソースマネジャ拡張子の行を選択してからクリックしてください。

［追加(A)］ボタン

［削除(D)］ボタン

［追加(A)］ボタン

［TP1/LiNKに登録されているリソースマネジャ拡張子(T)］リストボックスから選択したリソースマネジャ拡張子を［ユーザサーバに登録するリソースマネジャ拡張子(I)］リストボックスに登録します。

［削除(D)］ボタン

［ユーザサーバに登録するリソースマネジャ拡張子(I)］リストボックスから選択したリソースマネジャ拡張子を削除します。

［OK］ボタン

設定した値に変更してから，［リソースマネジャ拡張子設定］ダイアログボックスを終了します。

［キャンセル］ボタン

設定した値を変更しないで，［リソースマネジャ拡張子設定］ダイアログボックスを終了します。

ダイアログボックスに設定する項目

［リソースマネジャ名(R)］

次に示すリソースマネジャ名をドロップダウンリストボックスから選択します。

MS_SQL_Server

Oracle_XA

選択したリソースマネジャ名の登録内容が［ユーザサーバに登録するリソースマネジャ拡張子(I)］および［TP1/LiNKに登録されているリソースマネジャ拡張子(T)］リストボックスに表示されます。

［ユーザサーバに登録するリソースマネジャ拡張子(I)］

このユーザサーバに登録しているリソースマネジャ拡張子の一覧がリストボックスに表示されます。

［TP1/LiNKに登録されているリソースマネジャ拡張子(T)］

「2.1.3　リソースマネジャの接続」でTP1/LiNKに登録したリソースマネジャ拡張子の一覧がリストボックスに表示されます。すでに［ユーザサーバに登録するリソースマネジャ拡張子(I)］リストボックスに登録されたリソースマネジャ拡張子は表示されません。

［リソースマネジャ接続先選択機能を使用する(K)］

リソースマネジャ接続先選択機能を使用するかどうかをチェックボックスで指定します。リソースマネジャ接続先選択機能については，マニュアル「OpenTP1 プログラム作成の手引」を参照してください。

チェックボックスをオンにしたとき

　リソースマネジャ接続先選択機能を使用します。

チェックボックスをオフにしたとき

　リソースマネジャ接続先選択機能を使用しません。

指定したリソースマネジャ（リソースマネジャ名＋リソースマネジャ拡張子）をリソースマネジャ接続先選択機能の対象とする場合に指定します。

このオプションを指定した場合はトランザクションを開始する前にdc_trn_rm_select関数を使用して接続対象となるリソースマネジャ（リソースマネジャ名＋リソースマネジャ拡張子）を決定してください。dc_trn_rm_select関数で接続対象のリソースマネジャを決定しないままトランザクションを開始した場合は，このオプションを指定したリソースマネジャへの接続はできません。

このオプションはSUPまたはSPPにだけ指定できます。MHP，SUP.NETまたはSPP.NETでは指定できません。指定した場合は該当するリソースマネジャへの接続ができなくなるため，注意してください。

3.3　ユーザサーバの環境設定（SUP）

SUPの実行環境を設定する手順について説明します。

SUPの実行環境を設定するときは，［スタート］－［プログラム］－［TP1_LiNK］－［アプリケーション管理SUP］メニューを選択します。

［アプリケーション管理SUP］メニューを選択すると，［TP1/LiNKアプリケーション管理SUP］ウィンドウが表示されます。

図3-20　［TP1/LiNKアプリケーション管理SUP］ウィンドウ

ここでは，ユーザサーバの環境を設定する手順について説明します。［TP1/LiNKアプリケーション管理SUP］ウィンドウのメニューとボタンの使い方については，「6.3　アプリケーション管理（SUP）」を参照してください。

ユーザサーバの環境設定で設定する内容を次に説明します。

＜この節の構成＞

3.3.1　SUPの実行環境の設定

3.3.2　SUPの詳細設定

3.3.3　サーチパスの設定

3.3.4　自動起動の設定

3.3.5　リソースマネジャ拡張子の設定

3.3.1　SUPの実行環境の設定

SUPの実行環境を設定するときは，［TP1/LiNKアプリケーション管理SUP］ウィンドウの［サーバ定義(E)...］ボタンをクリックします。

注

［TP1/LiNKアプリケーション管理SUP］ウィンドウには，SUPのユーザサーバ名と一緒にRAPサービス名も表示されます。このRAPサービス名を選択して［サーバ定義(E)...］ボタンをクリックしてもエラーになります。RAPサービス名の環境を変更するときは，［RAPサービス環境設定］ダイアログボックスを使います。

ユーザサーバ名を選択してから［サーバ定義(E)...］ボタンをクリックすると，選択したユーザサーバの環境を設定する［SUP環境設定］ダイアログボックスが表示されます。

ユーザサーバ名を選択しないで［サーバ定義(E)...］ボタンをクリックすると，［アプリケーション環境SUP］ダイアログボックスが表示されます。

図3-21　［アプリケーション環境SUP］ダイアログボックス

ボタンの使い方

［新規作成(N)...］ボタン

SUPの実行環境を新しく設定する［SUP環境設定］ダイアログボックスを開きます。

［開く(O)...］ボタン

すでに設定したSUPの実行環境を変更する［SUP環境設定］ダイアログボックスを開きます。リストボックスから実行環境を変更するユーザサーバ名を選択して，［開く(O)...］ボタンをクリックします。

［削除(D)］ボタン

すでに設定したSUPの実行環境を削除します。リストボックスから削除するユーザサーバ名を選択して，［削除(D)］ボタンをクリックします。

［自動起動設定(A)...］ボタン

SUPの自動起動および自動起動の順番を指定する［自動起動設定］ダイアログボックスを開きます。

［終了(C)］ボタン

［アプリケーション環境SUP］ダイアログボックスを終了します。

SUPの環境を設定するダイアログボックスの開き方

新しくSUPの実行環境を設定する場合と，すでに設定してあるSUPの実行環境を変更する場合とで，ダイアログボックスの開き方が異なります。

新しくSUPの実行環境を設定する場合
［アプリケーション環境SUP］ダイアログボックスの［新規作成(N)...］ボタンをクリックしてください。ボタンをクリックすると，［SUP環境設定］ダイアログボックスが表示されます。
新しくSUPの実行環境を設定する場合は，初期値が設定されています。［SUP環境設定］ダイアログボックスの初期値については，「2.3　セットアップしたときの初期値」を参照してください。

すでに設定してあるSUPの実行環境を変更する場合
［アプリケーション環境SUP］ダイアログボックスのリストボックスから，実行環境を変更したいSUPのユーザサーバ名を選択します。そして，ユーザサーバ名をダブルクリックするか，または［開く(O)...］ボタンをクリックします。［SUP環境設定］ダイアログボックスが表示されます。

図3-22　［SUP環境設定］ダイアログボックス

ボタンの使い方

［詳細設定(T)...］ボタン

SUPの環境の詳細を設定する［SUP詳細設定］ダイアログボックスを開きます。

［初期値設定(I)］ボタン

［SUP環境設定］ダイアログボックスの［優先順位］欄を初期値にします。

［自動起動設定(A)...］ボタン

SUPの自動起動および自動起動の順番を指定する［自動起動設定］ダイアログボックスを開きます。

［開く(O)］ボタン

［ユーザサーバ名(U)］一覧にユーザサーバ名を指定してから［開く(O)］ボタンをクリックすると，該当するSUPに設定している内容をダイアログボックスに表示します。

［上書き保存(V)］ボタン

［SUP環境設定］ダイアログボックスに設定した各項目の値を保存します。項目をすべて設定し終えてから［上書き保存(V)］ボタンをクリックすると，各項目を設定できます。

［削除(D)］ボタン

［ユーザサーバ名(U)］一覧に指定したユーザサーバ名の設定内容を削除します。

［終了(C)］ボタン

［SUP環境設定］ダイアログボックスを終了します。

ダイアログボックスに設定する項目

［ユーザサーバ名(U)］　　～＜1～8文字の識別子＞

新しくSUPの実行環境を設定するときは，実行環境を設定するSUPのユーザサーバ名を入力します。すでに設定してあるSUPの実行環境を変更するときは，ドロップダウンリストからユーザサーバ名を選択します。

ユーザサーバ名には，英字の大文字と小文字の区別はありません。小文字で指定しても，すべて大文字で管理されます。

［プログラム名(P)］　　～＜1～8文字の識別子＞

SUPの実行形式ファイル名を，".exe"を付けないで入力します。ここには［ユーザサーバ名(U)］一覧の指定と同じ名称が表示されます。名称を変更する場合は，直接入力してください。

［コメント］

このダイアログボックスの内容に関するコメントを任意で入力します。入力したコメントは，［アプリケーション環境SUP］ダイアログボックスのコメントの行に表示されます。

［優先順位］欄

［プロセス(R)］　　～＜符号なし整数＞((0～39))《0》
このSUPが実行されるときの優先順位を指定します。値が小さいほど優先順位が高くなります。ここで指定する優先順位は，次に示す4段階に分かれます。
0～9：THREAD_PRIORITY_NORMAL（優先度高い）
10～19：THREAD_PRIORITY_BELOW_NORMAL
20～29：THREAD_PRIORITY_LOWEST
30～39：THREAD_PRIORITY_IDLE（優先度低い）
［プロセス(P)］で指定できるのは，ユーザサーバのスレッド優先順位だけです。スレッド優先順位については，Microsoft Visual C++のWin32 APIの文法を参照してください。

［ユーザサーバの環境変数］欄　　～＜1～63文字の識別子＞

SUPの環境変数を設定します。

環境変数を設定する場合
環境変数をシステム全体で有効にする場合は，［グローバル欄］にカーソルを位置づけます。環境変数を［ユーザサーバ名(U)］欄のユーザサーバでだけ有効にする場合は，［ローカル］欄にカーソルを位置づけます。
次に，欄内下の［変数(B)］と［値(Z)］に値を入力してから，［設定(S)］ボタンをクリックします。

環境変数を削除する場合
削除する環境変数を［グローバル］欄または［ローカル］欄から選択します。そして，［削除(E)］ボタンをクリックします。

エラーメッセージ

［SUP環境設定］ダイアログボックスの操作中にエラーが起こったときは，エラーメッセージが出力されます。表示内容を確認してから［OK］ボタンをクリックしてください。

3.3.2　SUPの詳細設定

SUP環境の詳細を設定するときは，［SUP環境設定］ダイアログボックスの［詳細設定(T)...］ボタンをクリックします。ボタンをクリックすると，［SUP詳細設定］ダイアログボックスが表示されます。

図3-23　［SUP詳細設定］ダイアログボックス

ボタンの使い方

［初期値設定(I)］ボタン

［SUP詳細設定］ダイアログボックスのすべての項目を初期値にします。

［OK］ボタン

各項目を設定した値に変更してから，［SUP詳細設定］ダイアログボックスを終了します。

［キャンセル］ボタン

各項目の値を変更しないで，［SUP詳細設定］ダイアログボックスを終了します。

＜この項の構成＞

(1)　［トランザクション］タブに設定する項目

(2)　［RPC］タブに設定する項目

(3)　［リモートAPI機能］タブに設定する項目

(4)　［その他］タブに設定する項目

(1)　［トランザクション］タブに設定する項目

［トランザクション］タブは，図3-23を参照してください。

［トランザクション属性(T)］

このSUPでトランザクション機能を使うかどうかをチェックボックスで指定します。

このチェックボックスをオンにする場合は，［システム環境設定］ウィンドウで，［トランザクション機能］欄の［あり］オプションボタンをオンにしておいてください。

［トランザクションブランチ限界経過時間(E)］　　～＜符号なし整数＞((0～65535))《0》（単位：秒）

このSUPでトランザクションブランチの処理を監視する限界経過時間を指定します。指定時間を超えたときは，このトランザクションブランチのプロセスを異常終了させて，ロールバックします。0を指定した場合は，時間監視しません。

［子トランザクションブランチを監視時間に含める(B)］

このSUPでトランザクションブランチの処理を監視する場合に，次に示す処理時間も監視時間に含めるかどうかをチェックボックスで指定します。

監視対象のトランザクションブランチが，RPC機能を使ってほかのトランザクションブランチを呼び出し，その処理が終わるのを待つ時間

連鎖RPCで呼び出されたサーバUAPが，次のサービス要求を待つ時間

監視対象のトランザクションブランチが，非同期RPCを使用してほかのトランザクションブランチを呼び出したあと，処理結果受信処理をしている時間

チェックボックスをオンにしたとき

1.，2.，3.のすべてを監視時間に含みます。

チェックボックスをオフにしたとき

3.だけを監視時間に含みます。

［リソースマネジャ拡張子設定(D)...］ボタン

このユーザサーバがアクセスするリソースマネジャ拡張子（リソースマネジャ接続時に設定したOPEN，CLOSE文字列に対応するリソースマネジャ拡張子）を設定する［リソースマネジャ拡張子設定］ダイアログボックスが表示されます。

(2)　［RPC］タブに設定する項目

［最大応答待ち時間(W)］　　～＜符号なし整数＞((0～65535))《180》（単位：秒）

このSUPでRPCによるプロセス間の通信をする場合，サービス要求を送信してからサービスの応答が返るまでの待ち時間の最大値を指定します。

指定時間を過ぎても応答がないときは，RPCは送受信タイムアウトとしてエラーリターンします。0を指定したときは，応答を受信するまで待ち続けます。指定を省略した場合，［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通の値が仮定されます。

［ソケット用ファイル記述子の最大数(F)］　　～＜符号なし整数＞((32～2047))《64》

OpenTP1制御下のプロセスで，ソケット用に使用するファイル記述子の最大値を指定します。

OpenTP1制御下のプロセスは，システムサービスやユーザサーバとの間で，ソケットを使用したTCP/IP通信でプロセス間の情報交換をしています。このため，同時に稼働するUAPプロセスの数によって，ソケット用のファイル記述子の最大数を変更する必要があります。

この項目の指定値が小さいと，OpenTP1制御下のほかのプロセスとのコネクションが設定できなくなるため，プロセスがKFCA00307-Eのエラーメッセージを出力して異常終了します。

ソケット用ファイル記述子の最大数の計算式を次に示します。計算結果の値の小数点以下は切り上げます。

（このユーザサーバが通信するUAPプロセス数※¹＋システムサービスプロセス数※²）÷0.8

注※1

このユーザサーバが通信するUAPプロセス数は，次に示す値の合計です。

このユーザサーバが通信する自OpenTP1内のUAPプロセス数

このユーザサーバが通信する他ノード内のUAPプロセス数

注※2

システムサービスプロセス数とは，自OpenTP1内のシステムサービスプロセスの数です。自OpenTP1内のシステムサービスプロセスは，rpcstatコマンドで表示されるサーバ名をカウントすることで求められます。rpcstatコマンドで表示されるサーバ名のうち，マニュアル「OpenTP1 解説」のOpenTP1のプロセス構造に記載されているシステムサービスプロセスをカウントしてください。

指定を省略した場合，［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通の値が仮定されます。

［ソケットの一時クローズ開始数(G)］　　～＜符号なし整数＞((0～100))《100》（単位：％）

OpenTP1制御下のプロセスで，［ソケット用ファイル記述子の最大数］に指定した使用ソケット数の上限に対し，一時クローズ処理でソケットの再利用を開始するパーセンテージを指定します。一時クローズ処理とは，保持したコネクションを，ユーザの関知しないところでコネクションを確立したプロセス間の合意のもとに切断することで，プロセス内で使用するソケット数を調整する機能です。

OpenTP1では，プロセス内のソケット用に使用しているファイル記述子の数が「［ソケット用ファイル記述子の最大数］に指定した値×［ソケットの一時クローズ開始数］に指定した値÷100」を超えた時点で，一時クローズ処理を開始します。

0を指定すると，確立したコネクションを保持しないで，確立するたびに一時クローズ処理を実行します。指定を省略した場合，［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通の値が仮定されます。

［ソケットの一時クローズ非対象数(U)］　　～＜符号なし整数＞((0～80))《0》（単位：％）

［ソケット用ファイル記述子の最大数］に指定した使用ソケット数の上限に対して，「［ソケット用ファイル記述子の最大数］指定値×［ソケットの一時クローズ非対象数］指定値÷100」の個数を一時クローズ処理の非対象として扱い，一時クローズ要求を送信しません。

ソケットの一時クローズ非対象数は，ソケットの一時クローズ開始数と同じかそれ以下の値を指定してください。指定を省略した場合，［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通の値が仮定されます。

OpenTP1制御下のプロセスは，システムサーバやユーザサーバとの間で，ソケットを使用したTCP/IP通信でプロセス間の情報交換をします。コネクション確立時のオーバヘッド削減のために，一度確立したコネクションは切断しないで保持し，同じプロセス間の通信にはコネクションを再利用しています。しかし，同じプロセスとの間の通信が頻繁に発生しない運用や，通信する相手プロセスが非常に多いシステムでは，保持しているコネクション数がある程度増えたときに適度にコネクションを解放して，1プロセスで使用するソケット数を調整および再利用できるようにする必要があります。

また，OpenTP1制御下のプロセスから電文の送信が発生した場合は，コネクションを確立する際に送信ポートを確保します。このポートの個数は1マシンで約4000であるため，UAPプロセスが1プロセスで保持するコネクション数の，システム全体の合計が2000を超えない程度に，［ソケットの一時クローズ開始数］および［ソケットの一時クローズ非対象数］の指定で調整してください。

この指定値が適切でないと，1プロセス内で使用できるソケット数が上限に達して，一時クローズによるソケットの再利用が新たなコネクション確立要求に追いつかなかったり，システム全体で使用するポート数がTCP/IPの上限を超え，プロセスが異常終了したりする場合があります。

OpenTP1で使用するポート番号使用量の見積もり式については，「3.1.2(4)　［ソケット］タブに設定する項目」の「表3-2　OpenTP1で使用するポート番号使用量の見積もり式」を参照してください。

［一時クローズ要求の応答監視時間(L)］　　～＜符号なし整数＞((0～65535))《180》（単位：秒）

OpenTP1制御下のプロセスで，使用中のソケット数が［ソケット用ファイル記述子の最大数］に指定した上限値に達した時点から，一時クローズ処理でソケットが空いて再利用できるようになるまでの監視時間を指定します。

ここで指定した時間を過ぎてもソケットが空かない場合は，そのプロセスを異常終了させます。

0を指定した場合は，無限に待ちます。指定を省略した場合，［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通の値が仮定されます。

［RPCトレースを取得するファイルの容量(J)］　　～＜符号なし整数＞((1024～2147483647))（単位：バイト）

このSUPでRPCトレースを取得する場合，RPCトレースを取得するファイルの容量を指定します。指定を省略した場合，［システム環境設定］ウィンドウで設定したシステム共通の値が仮定されます。

なお，RPCトレースファイル容量よりも，はるかに大きい電文が送受信された場合，編集時に何も出力しなかったり，出力情報にRPCトレースの抜け落ちが発生したりします。

また，RPCトレースを取得した場合，処理スピードが遅くなることが原因となって，RPCがタイムアウトでエラーリターンすることがあります。この場合，［RPC詳細設定］ダイアログボックスのシステム共通の最大応答待ち時間に十分な値を指定してください。

［TCP/IPの受信バッファサイズ(H)］　　～＜符号なし整数＞((0，8192～1048576))《8192》（単位：バイト）

コネクションごとに確保されるTCP/IPの受信バッファのサイズを指定します。

高速な通信媒体やMTUの大きな通信媒体を使用している場合，この値を大きくすれば性能向上を見込めます。ただし，イーサネットなどのMTUの小さな通信媒体を使用している場合，性能が悪くなるおそれがあります。

0を指定した場合は，OSの受信バッファサイズが適用されます。受信データサイズが8192バイトを超える場合，この項目に0を指定することで受信バッファのサイズが拡張され，性能が向上することがあります。

0を指定する場合の使用方法については，マニュアル「OpenTP1 運用と操作」の遠隔サービス要求時の通信レスポンスのチューニングに関する記述を参照してください。

なお，0を指定する場合，このノードと通信するすべてのノードで同じ値を指定してください。同じ値を指定しない場合，通信するノードとバッファサイズに差異が生じ，通信性能が劣化するおそれがあります。また，1～8191は指定できません。OSで使用できるTCP/IPの受信バッファのサイズ以下の値を指定してください。

注

TCPは，受信したデータに対し，送達確認（ACK）パケットを返信します。受信バッファのサイズに対し，受信したデータが小さいと，データを受信しても直ちにACKを返信しません（遅延ACK）。この指定値に大きな値を指定し，小さいデータをやり取りし合うような通信処理の場合，遅延ACKの影響によって性能が悪くなるおそれがあります。遅延ACKについての詳細は，TCP/IPの文献を参照してください。

指定を省略した場合，［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通の値が仮定されます。

［TCP/IPの送信バッファサイズ(O)］　　～＜符号なし整数＞((0，8192～1048576))《8192》（単位：バイト）

コネクションごとに確保されるTCP/IPの送信バッファのサイズを指定します。

高速な通信媒体やMTUの大きな通信媒体を使用している場合，この値を大きくすれば性能向上を見込めます。ただし，イーサネットなどのMTUの小さな通信媒体を使用している場合，性能が悪くなるおそれがあります。

RPCは，送信バッファにデータ送信する段階で4キロバイト単位に送信していて，ネットワークの状態によっては送信バッファ内のデータがネットワーク上に出力しきれないで，送信処理に失敗することがあります。例えば，［RPC詳細設定］ダイアログボックスの［その他］タブで［RPC送受信電文の最大長(M)］に8を指定して8メガバイトのメッセージを送信する場合，ネットワークの状態次第では4キロバイトの送信処理で35ミリ秒の待ちが多く発生し，通信性能に大きな影響を与えるおそれがあります。

このような場合は，この項目に0を指定し，送信バッファサイズを調整することを推奨します。

0を指定した場合は，OSの送信バッファサイズが適用されます。送信データサイズが8192バイトを超える場合，この項目に0を指定することで送信バッファのサイズが拡張され，性能が向上することがあります。

0を指定する場合の使用方法については，マニュアル「OpenTP1 運用と操作」の遠隔サービス要求時の通信レスポンスのチューニングに関する記述を参照してください。

なお，0を指定する場合，このノードと通信するすべてのノードで同じ値を指定してください。同じ値を指定しない場合，通信するノードとバッファサイズに差異が生じ，通信性能が劣化するおそれがあります。また，1～8191は指定できません。OSで使用できるTCP/IPの送信バッファのサイズ以下の値を指定してください。

指定を省略した場合，［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通の値が仮定されます。

(3)　［リモートAPI機能］タブに設定する項目

［OpenTP1が常設コネクションを自動管理する(P)］

SUPでリモートAPI機能の常設コネクションを使用してサービス要求する場合に，SUPとリモートAPI制御プロセスとの間のコネクションをTP1/LiNKが自動的に管理するかどうかをチェックボックスで指定します。

チェックボックスをオンにしたとき

TP1/LiNKが自動的にコネクションを管理します。

チェックボックスをオフにしたとき

dc_rap_connect関数またはdc_rap_disconnect関数を使ってユーザがコネクションを管理します。

［常設コネクション問い合わせ間隔最大時間(M)］　　～＜符号なし整数＞((0～1048575))《0》（単位：秒）

SUPでリモートAPI機能を使用してサービス要求する場合に，リモートAPI制御プロセスがSUPからのサービス要求を処理してから，次のサービス要求を処理するまでの間の最大待ち時間を指定します。この指定値は，リモートAPI制御プロセス側で監視するタイマです。ここで指定した時間を超えても次のサービス要求がないときは，リモートAPI制御プロセスはSUPがダウンしたものと見なして処理します。

0を指定したときは，リモートAPI制御プロセス側のデフォルト値（180秒）が有効となります。

(4)　［その他］タブに設定する項目

［システム再開始時，自動起動する(N)］

TP1/LiNKを再開始するとき，SUPを自動起動するかどうかをチェックボックスで指定します。SUPが正常終了した場合は，この指定は無効となります。

チェックボックスをオンにしたとき

SUPを自動起動します。

チェックボックスをオフにしたとき

SUPを自動起動しません。

［SUP異常終了時，再起動する(A)］

SUPが実行中に異常終了した場合，プロセスを再起動するかどうかをチェックボックスで指定します。

チェックボックスをオンにしたとき

プロセスを再起動します。

チェックボックスをオフにしたとき

プロセスを再起動しません。

［連続異常終了限界経過時間(X)］　　～＜符号なし整数＞((0～32767))《30》（単位：分）

SUPでサーバプロセスが異常終了した回数を監視する限界経過時間を指定します。0を指定した場合は，時間監視しません。なお，指定時間内に3回連続してSUPのサーバプロセスが異常終了したときは，再起動しません。

［UAPトレース格納最大数(K)］　　～＜符号なし整数＞((0～4095))《32》

SUPで取得できるUAPトレースのレコード数を指定します。1レコードのサイズは256バイトです。0を指定した場合は，UAPトレースを取得しません。

3.3.3　サーチパスの設定

サーチパスを設定するときは，［TP1/LiNKアプリケーション管理SUP］ウィンドウの［プログラムのサーチパス(P)...］ボタンをクリックします。ボタンをクリックすると，［TP1/LiNKサーチパス］ダイアログボックスが表示されます。このダイアログボックスで，ユーザサーバに関するサーチパスを設定または変更します。

［TP1/LiNKサーチパス］ダイアログボックスの操作方法は，SPPの場合と同じです。操作方法については，「3.2.3　サーチパスの設定」を参照してください。

3.3.4　自動起動の設定

ユーザサーバを自動起動するかどうかを設定するときは，次のどちらかの操作をして，［自動起動設定］ダイアログボックスを開きます。

［TP1/LiNKアプリケーション環境SUP］ウィンドウの［自動起動設定(A)...］ボタンをクリック

［SUP環境設定］ダイアログボックスの［自動起動設定(A)...］ボタンをクリック

［自動起動設定］ダイアログボックスで，ユーザサーバを自動起動するかどうか，および自動起動の順番を設定します。

このダイアログボックスの操作方法は，SPPの場合と同じです。操作方法については，「3.2.4　自動起動の設定」を参照してください。

3.3.5　リソースマネジャ拡張子の設定

ユーザサーバがアクセスするリソースマネジャ拡張子（リソースマネジャ接続時に設定したOPEN，CLOSE文字列に対応するリソースマネジャ拡張子）を設定するときは，［SUP詳細設定］ダイアログボックスの［リソースマネジャ拡張子設定(D)...］ボタンをクリックします。ボタンをクリックすると，［リソースマネジャ拡張子設定］ダイアログボックスが表示されます。このダイアログボックスで，ユーザサーバがアクセスするリソースマネジャ拡張子を設定または変更します。

［リソースマネジャ拡張子設定］ダイアログボックスの操作方法は，SPPの場合と同じです。操作方法については，「3.2.5　リソースマネジャ拡張子の設定」を参照してください。

3.4　RAPサービスの環境設定

RAPサービスの実行環境を設定する手順について説明します。

RAPサービスの実行環境を設定するときは，［スタート］－［プログラム］－［TP1_LiNK］－［RAPサービス環境］メニューを選択します。

［RAPサービス環境］メニューを選択すると，［RAPサービス環境］ウィンドウが表示されます。

図3-24　［RAPサービス環境］ウィンドウ

RAPサービスの開始と終了は［TP1/LiNKアプリケーション管理SUP］ウィンドウで操作します。RAPサービスの開始と終了については，「6.3　アプリケーション管理（SUP）」を参照してください。

RAPサービスの環境設定で設定する内容を次に説明します。

＜この節の構成＞

3.4.1　RAPサービス環境の設定

3.4.2　RAPサービスの詳細設定

3.4.3　自動起動の設定

3.4.1　RAPサービス環境の設定

［RAPサービス環境］ウィンドウの操作方法について説明します。

ボタンの使い方

［新規作成(N)...］ボタン

新しくRAPサービスの実行環境を設定する［RAPサービス環境設定］ダイアログボックスを開きます。

［開く(O)...］ボタン

すでに設定したRAPサービスの実行環境を変更する［RAPサービス環境設定］ダイアログボックスを開きます。リストボックスから実行環境を変更するRAPサービス名を選択して，［開く(O)...］ボタンをクリックします。

［削除(D)］ボタン

すでに設定したRAPサービスの実行環境を削除します。リストボックスから削除するRAPサービス名を選択して，［削除(D)］ボタンをクリックします。

［自動起動設定(A)...］ボタン

RAPサービスの自動起動および自動起動の順番を指定する［自動起動設定］ダイアログボックスを開きます。

［終了(C)］ボタン

［RAPサービス環境］ウィンドウを終了します。

RAPサービスの環境を設定するダイアログボックスの開き方

新しくRAPサービスの実行環境を設定する場合と，すでに設定してあるRAPサービスの実行環境を変更する場合とで，ダイアログボックスの開き方が異なります。

新しくRAPサービスの実行環境を設定する場合
［RAPサービス環境］ウィンドウの［新規作成(N)...］ボタンをクリックしてください。ボタンをクリックすると，［RAPサービス環境設定］ダイアログボックスが表示されます。
新しくRAPサービスの実行環境を設定する場合は，初期値が設定されています。［RAPサービス環境設定］ダイアログボックスの初期値については，「2.3　セットアップしたときの初期値」を参照してください。

すでに設定してあるRAPサービスの実行環境を変更する場合
［RAPサービス環境］ウィンドウのリストボックスから，実行環境を変更したいRAPサービス名を選択します。そして，RAPサービス名をダブルクリックするか，または［開く(O)...］ボタンをクリックします。［RAPサービス環境設定］ダイアログボックスが表示されます。
なお，実行環境を変更後，［上書き保存(V)］ボタンをクリックした場合には「RAPサービスのロードモジュールをTP1/LiNKインストールフォルダ名¥aplibにコピーします。」という確認ダイアログボックスが表示されます。TP1/LiNKのバージョンアップに伴い，上書き保存するときは「はい」をクリックしてください。それ以外の場合は「いいえ」をクリックしてください。

図3-25　［RAPサービス環境設定］ダイアログボックス

［RAPサービス環境設定］ダイアログボックスを初めて開くと，初期値が設定されています。［RAPサービス環境設定］ダイアログボックスの初期値については，「2.3　セットアップしたときの初期値」を参照してください。

ボタンの使い方

［詳細設定(T)...］ボタン

RAPサービスの環境の詳細を設定する［RAPサービス詳細設定］ダイアログボックスを開きます。

［初期値設定(I)］ボタン

［RAPサービス環境設定］ダイアログボックスの，次に示す項目を初期値にします。

［優先順位］欄

［RAPサービスのプロセス数］欄

［自動起動設定(A)...］ボタン

RAPサービスの自動起動および自動起動設定の順番を指定する［自動起動設定］ダイアログボックスを開きます。

［開く(O)］ボタン

［RAPサービス名(N)］一覧にRAPサービス名を指定してから［開く(O)］ボタンをクリックすると，該当するRAPサービスに設定している内容をダイアログボックスに表示します。

［上書き保存(V)］ボタン

［RAPサービス環境設定］ダイアログボックスに設定した各項目の値を保存します。項目をすべて設定し終えてから［上書き保存(V)］ボタンをクリックすると，各項目を設定できます。

［削除(D)］ボタン

［RAPサービス名(N)］一覧に指定したRAPサービス名の設定内容を削除します。

［終了(C)］ボタン

［RAPサービス環境設定］ダイアログボックスを終了します。

ダイアログボックスに設定する項目

［RAPサービス名(N)］　　～＜1～7文字の識別子＞

RAPサービスは，rapリスナーと呼ばれるSUP相当のプロセスと，rapサーバと呼ばれるSPP相当のプロセスで構成されています。ここで指定したRAPサービス名がrapリスナーのサーバ名になります。また，（RAPサービス名＋S）がrapサーバのサーバ名になります。

新しくRAPサービスの実行環境を設定するときは，実行環境を設定するRAPサービス名を入力します。すでに設定してあるRAPサービスの実行環境を変更するときは，一覧からRAPサービス名を選択します。

RAPサービス名には，英字の大文字と小文字の区別はありません。小文字で指定しても，すべて大文字で管理されます。

RAPサービスの開始と終了は［TP1/LiNKアプリケーション管理SUP］ウィンドウで操作します。このウィンドウの一覧には，RAPサービス名とSUPのユーザサーバ名とが混在して表示されます。そのため，RAPサービス名にはユーザサーバ名と明確に区別できる名称を付けることをお勧めします。

［コメント］

このダイアログボックスの内容に関するコメントを任意で入力します。入力したコメントは，［RAPサービス環境］ダイアログボックスのコメントの行に表示されます。

［RAPサービスのポート番号］欄

［ポート番号(P)］　　～＜符号なし整数＞((5001～65535))《10020》
RAPサービスが使うウェルノウンポート番号を指定します。複数のRAPサービスを起動するときは，それぞれに指定するポート番号が重ならないようにしてください。

［RAPサービスのプロセス数］欄

［常駐(R)］　　～＜符号なし整数＞((1～128))《1》
このRAPサービス（rapリスナー）で管理するrapサーバのプロセス数を指定します。ここで指定した数は，［システム環境設定］ウィンドウの［サーバ数］欄にある［SPP(P)］の値に加算してください。

［優先順位］欄

［プロセス(E)］　　～＜符号なし整数＞((0～39))《0》
このRAPサービスが実行されるときの優先順位を指定します。値が小さいほど優先順位が高くなります。

［ダイナミックコネクションスケジュール機能(Y)］欄

このRAPサービスでダイナミックコネクションスケジュール機能を使用するかどうかを指定します。ダイナミックコネクションスケジュール機能を使用する場合は，チェックボックスをオンにしてください。ダイナミックコネクションスケジュール機能については，マニュアル「OpenTP1 解説」を参照してください。

［最大クライアント数(M)］　　～＜符号なし整数＞((128～1024))《256》
このRAPサービスでダイナミックコネクションスケジュール機能を使用するときに同時接続する最大クライアント数を指定してください。

エラーメッセージ

［RAPサービス環境設定］ダイアログボックスの操作中にエラーが起こったときは，エラーメッセージが出力されます。表示内容を確認してから［OK］ボタンをクリックしてください。

3.4.2　RAPサービスの詳細設定

RAPサービス環境の詳細を設定するときは，［RAPサービス環境設定］ダイアログボックスの［詳細設定(T)...］ボタンをクリックします。ボタンをクリックすると，［RAPサービス詳細設定］ダイアログボックスが表示されます。

図3-26　［RAPサービス詳細設定］ダイアログボックス

ボタンの使い方

［初期値設定(I)］ボタン

［RAPサービス詳細設定］ダイアログボックスのすべての項目を初期値にします。

［OK］ボタン

各項目を設定した値に変更してから，［RAPサービス詳細設定］ダイアログボックスを終了します。

［キャンセル］ボタン

各項目の値を変更しないで，［RAPサービス詳細設定］ダイアログボックスを終了します。

＜この項の構成＞

(1)　［トランザクション］タブに設定する項目

(2)　［ソケット］タブに設定する項目

(3)　［応答時間］タブに設定する項目

(4)　［その他］タブに設定する項目

(1)　［トランザクション］タブに設定する項目

［トランザクション］タブは，図3-26を参照してください。

［トランザクションブランチ限界経過時間(E)］　　～＜符号なし整数＞((0～65535))《0》（単位：秒）

RAPサービスでトランザクションブランチの処理を監視する限界経過時間を指定します。指定時間を超えたときは，監視対象のトランザクションブランチのプロセスを異常終了させて，ロールバックします。0を指定した場合は，時間監視しません。

［子トランザクションブランチを監視時間に含める(B)］

このRAPサービスでトランザクションブランチの処理を監視する場合に，次に示す処理時間も監視時間に含めるかどうかをチェックボックスで指定します。

監視対象のトランザクションブランチが，RPC機能を使ってほかのトランザクションブランチを呼び出し，その処理が終わるのを待つ時間

連鎖RPCで呼び出されたサーバUAPが，次のサービス要求を待つ時間

監視対象のトランザクションブランチが，非同期RPCを使用してほかのトランザクションブランチを呼び出したあと，処理結果受信処理をしている時間

チェックボックスをオンにしたとき

1.，2.，3.のすべてを監視時間に含みます。

チェックボックスをオフにしたとき

3.だけを監視時間に含みます。

(2)　［ソケット］タブに設定する項目

［ソケット用ファイル記述子の最大数(F)］　　～＜符号なし整数＞((32～1993))《64》

OpenTP1制御下のプロセスで，ソケット用に使用するファイル記述子の最大数を指定します。

OpenTP1制御下のプロセスは，システムサービスやユーザサーバとの間で，ソケットを使用したTCP/IP通信でプロセス間の情報交換をしています。このため，同時に稼働するUAPプロセスの数によって，ソケット用のファイル記述子の最大数を変更する必要があります。

この指定値が小さいと，OpenTP1制御下のほかのプロセスとのコネクションが設定できなくなるため，プロセスがKFCA00307-Eのエラーメッセージを出力して異常終了します。

ソケット用ファイル記述子の最大数の計算式を次に示します。計算結果の値の小数点以下は切り上げます。

（このrapサーバが通信するUAPプロセス数※¹＋システムサービスプロセス数※²）÷0.8

注※1

このrapサーバが通信するUAPプロセス数は，次に示す値の合計です。

このrapサーバが通信する自OpenTP1内のUAPプロセス数

このrapサーバが通信する他ノード内のUAPプロセス数

注※2

システムサービスプロセス数とは，自OpenTP1内のシステムサービスプロセスの数です。自OpenTP1内のシステムサービスプロセスは，rpcstatコマンドで表示されるサーバ名をカウントすることで求められます。rpcstatコマンドで表示されるサーバ名のうち，マニュアル「OpenTP1 解説」のOpenTP1のプロセス構造に記載されているシステムサービスプロセスをカウントしてください。

指定を省略した場合，［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通の値が仮定されます。

OpenTP1の制限のため，次に示す場合は，指定値を調整してください。

［RAPサービス環境設定］ダイアログボックスの［ダイナミックコネクションスケジュール機能(Y)］欄をオンにしている場合

次の指定値の和が1993以下になるように調整してください。

［ソケット用ファイル記述子の最大数(F)］（この項目）

［RAPサービス環境設定］ダイアログボックスの［RAPサービスのプロセス数］欄の［常駐(R)］

［RAPサービス環境設定］ダイアログボックスの［ダイナミックコネクションスケジュール機能(Y)］欄の［最大クライアント数(M)］

［RAPサービス環境設定］ダイアログボックスの［ダイナミックコネクションスケジュール機能(Y)］欄をオフにしている場合

［ソケット用ファイル記述子の最大数(F)］の指定値が1993以下になるように調整してください。

［ソケットの一時クローズ開始数(G)］　　～＜符号なし整数＞((0～100))《100》（単位：％）

OpenTP1制御下のプロセスで，［ソケット用ファイル記述子の最大数］に指定した使用ソケット数の上限に対し，一時クローズ処理でソケットの再利用を開始するパーセンテージを指定します。

一時クローズ処理とは，保持したコネクションを，ユーザの関知しないところでコネクションを確立したプロセス間の合意の下に切断することで，プロセス内で使用するソケット数を調整する機能です。

OpenTP1では，プロセス内のソケット用に使用しているファイル記述子の数が「［ソケット用ファイル記述子の最大数］に指定した値×［ソケットの一時クローズ開始数］に指定した値÷100」を超えた時点で，一時クローズ処理を開始します。

0を指定すると，確立したコネクションを保持しないで，確立するたびに一時クローズ処理を実行します。

指定を省略した場合，［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通の値が仮定されます。

［ソケットの一時クローズ非対象数(U)］　　～＜符号なし整数＞((0～80))《0》（単位：％）

［ソケット用ファイル記述子の最大数］に指定した使用ソケット数の上限に対して，「［ソケット用ファイル記述子の最大数］指定値×［ソケットの一時クローズ非対象数］指定値÷100」の個数を一時クローズ処理の非対象として扱い，一時クローズ要求を送信しません。

ソケットの一時クローズ非対象数は，ソケットの一時クローズ開始数と同じかそれ以下の値を指定してください。指定を省略した場合，［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通の値が仮定されます。

OpenTP1制御下のプロセスは，システムサーバやユーザサーバとの間で，ソケットを使用したTCP/IP通信でプロセス間の情報交換をします。

コネクション確立時のオーバヘッド削減のために，一度確立したコネクションは切断しないで保持し，同じプロセス間の通信にはコネクションを再利用しています。

しかし，同じプロセスとの間の通信が頻繁に発生しない運用や，通信する相手プロセスが非常に多いシステムでは，保持しているコネクション数がある程度増えたときに適度にコネクションを解放して，1プロセスで使用するソケット数を調整および再利用できるようにする必要があります。

また，OpenTP1制御下のプロセスから電文の送信が発生した場合は，コネクションを確立する際に送信ポートを確保します。このポートの個数は1マシンで約4000であるため，UAPプロセスが1プロセスで保持するコネクション数の，システム全体の合計が2000を超えない程度に，［ソケットの一時クローズ開始数］および［ソケットの一時クローズ非対象数］の指定で調整してください。

この指定値が適切でないと，1プロセス内で使用できるソケット数が上限に達して，一時クローズによるソケットの再利用が新たなコネクション確立要求に追いつかなかったり，システム全体で使用するポート数がTCP/IPの上限を超え，プロセスが異常終了したりする場合があります。OpenTP1で使用するポート番号使用量の見積もり式については，「3.1.2(4)　［ソケット］タブに設定する項目」の「表3-2　OpenTP1で使用するポート番号使用量の見積もり式」を参照してください。

［一時クローズ要求の応答監視時間(L)］　　～＜符号なし整数＞((0～65535))《180》（単位：秒）

OpenTP1制御下のプロセスで，使用中のソケット数が［ソケット用ファイル記述子の最大数］に指定した上限値に達した時点から，一時クローズ処理でソケットが空いて再利用できるようになるまでの監視時間を指定します。ここで指定した時間を過ぎてもソケットが空かない場合は，そのプロセスを異常終了させます。

0を指定した場合は，無限に待ちます。指定を省略した場合，［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通の値が仮定されます。

［ソケットウィンドウサイズ(H)］　　～＜符号なし整数＞((4～2147483647))《4》（単位：キロバイト）

ソケットのウィンドウサイズを指定します。

(3)　［応答時間］タブに設定する項目

［メッセージ送受信最大監視時間(W)］　　～＜符号なし整数＞((0～65535))《180》（単位：秒）

rapリスナーおよびrapサーバがメッセージの送受信を開始してから，送受信が完了するまでの監視時間を指定します。

監視時間が経過してもメッセージの送受信が完了しない場合はメッセージを出力し，ネットワーク障害と同様の処理を行います。0を指定した場合は，時間監視をしません。

［問い合わせ間隔最大時間(M)］　　～＜符号なし整数＞((0～1048575))《180》（単位：秒）

クライアントがrapリスナーおよびrapサーバに問い合わせ応答をしてから次の問い合わせがあるまでの間隔の最大待ち時間を指定します。

この値はrapリスナーまたはrapサーバ側で監視するタイマであり，指定時間を超えても問い合わせがない場合，クライアントがダウンしたとして処理します。

0を指定した場合は，無限に待ちます。常駐SPPからリモートAPI機能を使用している場合，次の三つの項目に0を指定しないでください。

［問い合わせ間隔最大時間(M)］（この項目）

［SPP詳細設定］ダイアログボックスの［リモートAPI機能］タブの［常設コネクション問い合わせ間隔最大時間(M)］

［SUP詳細設定］ダイアログボックスの［リモートAPI機能］タブの［常設コネクション問い合わせ間隔最大時間(M)］

三つの項目のうちどれか一つでも0を指定すると，rapリスナーが存在するノードのOpenTP1システムを終了させようとしてもrapリスナーが終了できないため，常駐SPPが終了するまで無限に待ち続けます。

2.および3.の指定を省略した場合，1.の指定値が最大待ち時間となります。1.，2.，および3.すべての指定を省略した場合は，180秒が仮定されます。

［最大応答待ち時間(T)］　　～＜符号なし整数＞((0～65535))（単位：秒）

rapサーバがRPCを代理実行する場合，サービス要求を送信してからサービスの応答が返るまでの最大待ち時間を指定します。

TP1/LiNKの終了処理で，［最大応答待ち時間(T)］で指定した時間だけ終了処理を待ち合わせる場合があります。したがって，大きな値を指定した場合，TP1/LiNKの終了処理に時間が掛かるときがあります。

指定時間を過ぎても応答がない場合は，RPCは送受信タイムアウトとしてエラーリターンします。0を指定した場合は，応答を受信するまで待ち続けます。また，0を指定した場合，TP1/LiNKが終了しないときがあります。

［最大応答待ち時間(T)］は，［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通のデフォルト値で使用してください。

特別なチューニングを必要とする場合以外は，［最大応答待ち時間(T)］の内容を変更しないことをお勧めします。

［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通のデフォルト値よりも，極端に小さな値または大きな値を指定すると，TP1/LiNKがダウンに至る障害が発生する場合がありますので，ご注意ください。

［最大応答待ち時間(T)］の指定を省略した場合，［システム環境設定］－［RPC詳細設定］ダイアログボックスで設定したシステム共通の値が仮定されます。ただし，rapクライアント側で最大応答待ち時間を引き継ぐ設定にした場合は，rapクライアント側で設定した値が有効になります。

(4)　［その他］タブに設定する項目

［UAPトレース格納最大数(K)］　　～＜符号なし整数＞((0～4095))《32》

このrapリスナーまたはrapサーバで取得できるUAPトレースのレコード数を指定します。

1レコードのサイズは256バイトです。0を指定した場合は，UAPトレースを取得しません。

［RPCトレースを取得するファイルの容量(J)］　　～＜符号なし整数＞((1024～2147483647))（単位：バイト）

このrapリスナーまたはrapサーバでRPCトレースを取得する場合，RPCトレースを取得するファイルの容量を指定します。

指定を省略した場合，［システム環境設定］ウィンドウで設定したシステム共通の値が仮定されます。

なお，RPCトレースファイル容量よりも，はるかに大きい電文が送受信された場合，編集時に何も出力しなかったり，出力情報にRPCトレースの抜け落ちが発生したりします。

また，RPCトレースを取得した場合，処理スピードが遅くなることが原因となって，RPCがタイムアウトでエラーリターンすることがあります。この場合，［RPC詳細設定］ダイアログボックスのシステム共通の最大応答待ち時間に十分な値を指定してください。

［リカバリ要求用待機rapサーバ数(R)］　　～＜符号なし整数＞((［RAPサービスのプロセス数］欄［常駐(R)］の指定値-1))《0》

アプリケーションサーバからのXARトランザクションリカバリ要求用待機rapサーバ数を指定します。［RAPサービス環境設定］ダイアログボックスの［RAPサービスのプロセス数］欄の［常駐(R)］で指定した値より小さい値を指定してください。

［rapリスナー終了時のコネクション切断待ち時間(T)］　　～＜符号なし整数＞((0～3600))《0》（単位：秒）

rapリスナー終了時のrapクライアントとのコネクション切断待ち時間を指定します。rapリスナー終了時，［rapリスナー終了時のコネクション切断待ち時間(T)］に指定した時間が経過した場合，コネクションを切断してKFCA27763-W，またはFCA27765-Wメッセージを出力します。ただし，rapサーバがAPIを代理実行中は，コネクションを切断しません。［rapリスナー終了時のコネクション切断待ち時間(T)］を省略または0を指定した場合，rapクライアントからコネクション切断要求が到着するか，または問い合わせ間隔最大待ち時間が満了するまで，コネクションを切断しません。

［rapリスナー終了時のコネクション切断待ち時間(T)］には，システム終了監視時間（3600秒）の値より小さい値を指定することをお勧めします。

次の場合，rapリスナーの終了待ちが原因で，dcstopコマンドがタイムアウトすることがあります。

［rapリスナー終了時のコネクション切断待ち時間(T)］にシステム終了監視時間（3600秒）の値より大きい値を指定した場合

［rapリスナー終了時のコネクション切断待ち時間(T)］に0を指定した場合

［rapリスナー終了時のコネクション切断待ち時間(T)］を省略した場合

なお，rapリスナーは3秒ごとにイベントを監視しているため，この待ち時間には最大で3秒の誤差が発生することがあります。

［rapサーバ割り当て待ち要求の滞留監視時間(S)］　　～＜符号なし整数＞((0～65535))《30》（単位：秒）

rapクライアントの要求が滞留した場合の監視時間を指定します。rapクライアントの要求を実行するための空きrapサーバがないとき，要求はrapサーバが空くのを待ちます。この割り当て待ち要求の滞留時間が［rapサーバ割り当て待ち要求の滞留監視時間(S)］の指定値を超えた場合，KFCA27764-Wメッセージを出力します。［rapサーバ割り当て待ち要求の滞留監視時間(S)］に0を指定した場合は，滞留時間を監視しません。

［rapサーバ割り当て待ち要求の滞留監視時間(S)］には，rapクライアント側で指定する最大応答待ち時間より小さい値を指定することをお勧めします。［rapサーバ割り当て待ち要求の滞留監視時間(S)］にrapクライアント側の最大応答待ち時間より大きい値を指定した場合，クライアント側がすでにタイムアウトと判断した要求に対しても，KFCA27764-Wメッセージを出力することがあります。

なお，rapリスナーは3秒ごとにイベントを監視しているため，この監視時間には最大で3秒の誤差が発生することがあります。

［滞留警告メッセージの出力間隔(W)］　　～＜符号なし整数＞((3～65535))《180》（単位：秒）

rapクライアントの要求が滞留した場合に，KFCA27764-Wメッセージが出力される間隔を指定します。KFCA27764-Wメッセージが一度出力されたあと，この指定値を経過するまでの間，KFCA27764-Wメッセージは出力されません。［rapサーバ割り当て待ち要求の滞留監視時間(S)］に0を指定した場合，この指定値は無視されます。

なお，rapリスナーは3秒ごとにイベントを監視しているため，この監視時間には最大で3秒の誤差が発生することがあります。

3.4.3　自動起動の設定

RAPサービスを自動起動するかどうかを設定するときは，次のどちらかの操作をします。

［RAPサービス環境］ウィンドウの［自動起動設定(A)...］ボタンをクリック

［RAPサービス環境設定］ダイアログボックスの［自動起動設定(A)...］ボタンをクリック

ボタンをクリックすると，［自動起動設定］ダイアログボックスが表示されます。このダイアログボックスで，RAPサービスを自動起動するかどうかおよび自動起動の順番を設定します。

リモートAPI機能を使うときは，RAPサービスが開始してあることが前提です。RAPサービスには自動起動を指定しておくことをお勧めします。RAPサービスに手動起動を指定したときは，リモートAPI機能を使って通信する前に必ずRAPサービスを開始してください。

［自動起動設定］ダイアログボックスの操作方法は，SPPの場合と同じです。操作方法については，「3.2.4　自動起動の設定」を参照してください。

4.　実行環境の設定（オプション機能）

この章では，オプション機能を使用する場合の実行環境の設定について説明します。

＜この章の構成＞

4.1　OpenTP1以外のリソースマネジャ連携時の実行環境設定

4.2　マルチホームドホスト形態での実行環境の設定

4.3　クラスタ環境での実行環境の設定

4.4　TP1/LiNK拡張機能使用時の実行環境の設定

4.5　監査ログ機能使用時の設定

4.1　OpenTP1以外のリソースマネジャ連携時の実行環境設定

TP1/LiNKは次のOpenTP1以外のリソースマネジャと接続できます。

Microsoft SQL Server

HiRDB

Oracle

リソースマネジャを設定するときには，［リソースマネジャ］ウィンドウを使用します。使用方法については，「2.1.3　リソースマネジャの接続」を参照してください。

ここでは，TP1/LiNKのUAPからOpenTP1以外のリソースマネジャにアクセスするトランザクションを実行する際に必要な設定について，リソースマネジャごとに説明します。

＜この節の構成＞

4.1.1　Microsoft SQL Server連携時の環境設定

4.1.2　HiRDB連携時の環境設定

4.1.3　Oracle連携時の環境設定

4.1.4　OpenTP1以外のリソースマネジャ連携時の注意事項

4.1.1　Microsoft SQL Server連携時の環境設定

＜この項の構成＞

(1)　Microsoft SQL Serverの登録

(2)　Microsoft SQL Server連携時のOPEN，CLOSE文字列の設定

(3)　Microsoft SQL Server連携時のUAPのコンパイルとリンケージ

(4)　MSDTCの設定

(5)　Microsoft SQL Server連携時に必要な定義

(6)　Microsoft SQL Server連携時の注意事項

(1)　Microsoft SQL Serverの登録

Microsoft SQL Serverをリソースマネジャとして登録するには，［リソースマネジャのXA関連オブジェクト］ダイアログボックスを使用します。ダイアログボックスについては，「2.1.3(2)　リソースマネジャのXA関連オブジェクトの設定」を参照してください。また，Microsoft SQL Serverを登録するときに必要な「関連オブジェクト名称」などについては，Microsoft SQL ServerのXAインタフェースに関して記載されたマニュアルを参照してください。

［リソースマネジャのXA関連オブジェクト］ダイアログボックスでの指定例を次に示します。

C:¥PROGRA~1¥MICROS~3.NET¥Vc7¥PLATFO~1¥Lib¥xaSwitch.Lib

(2)　Microsoft SQL Server連携時のOPEN，CLOSE文字列の設定

TP1/LiNKでは，X/OpenのXAインタフェースで定められているリソースマネジャのOpen，Close文字列を設定する必要があります。Open，Close文字列は，［OPEN，CLOSE文字列］ダイアログボックスで設定します。ダイアログボックスについては，「2.1.3(4)　Open，Close文字列の指定」を参照してください。Microsoft SQL ServerのOpen，Close文字列として指定する内容については，Microsoft SQL Serverのマニュアルを参照してください。

［OPEN，CLOSE文字列］ダイアログボックスでの指定例を次に示します。

［トランザクションサービス用xa_open関数用文字列(T)］

Tm=OpenTP1,RmRecoveryGuid=986D495E-F4D4-4e80-8B70-9377FFAF33E7,Timeout=180000

［トランザクションサービス用xa_close関数用文字列(S)］

Tm=OpenTP1,RmRecoveryGuid=986D495E-F4D4-4e80-8B70-9377FFAF33E7,Timeout=180000

［ユーザサーバ用xa_open関数用文字列(U)］

Tm=OpenTP1,RmRecoveryGuid=986D495E-F4D4-4e80-8B70-9377FFAF33E7,Timeout=180000

［ユーザサーバ用xa_close関数用文字列(F)］

Tm=OpenTP1,RmRecoveryGuid=986D495E-F4D4-4e80-8B70-9377FFAF33E7,Timeout=180000

RmRecoveryGuidの値は，グローバルで一意な値を指定します。Microsoft Visual C++が提供する「guidgen」ユーティリティプログラムの「Registry Format」で取得した値（括弧は省く）を指定してください。

Timeoutの値は，XAトランザクションのタイムアウト値をミリ秒単位で指定します。タイムアウト時間が経過すると，Microsoft SQL Server（Windows MSDTC）はXAトランザクションを自動的にロールバックします。また，Open，Close文字列には，すべて同じ値を指定します。詳細は，Microsoft SQL Serverのマニュアルを参照してください。

(3)　Microsoft SQL Server連携時のUAPのコンパイルとリンケージ

UAPを作成する場合には，［オブジェクト作成］ダイアログボックスで「%DCDIR%¥spool¥trnrmcmd¥userobj¥」に作成した，トランザクション制御用オブジェクトファイルをリンケージしてください。ダイアログボックスについては，「2.1.3(5)　トランザクション制御用オブジェクトファイルの作成」を参照してください。

(4)　MSDTCの設定

リソースマネジャにMicrosoft SQL Serverを使用する場合，MSDTCのXAトランザクションを有効にする必要があります。MSDTCのXAトランザクションは，次の手順で有効にできます。

［スタート］－［プログラム］－［管理ツール］－［コンポーネントサービス］をクリックします。

管理コンソールで［コンポーネントサービス］－［コンピュータ］－［マイコンピュータ］を選択します。

［操作］－［プロパティ］を選択します。

［MSDTC］タブで［セキュリティの構成］ボタンをクリックします。

［セキュリティの構成］ダイアログボックスで［XAトランザクションを有効にする］チェックボックスをオンにして，［OK］ボタンをクリックします。

MSDTCを再起動します。

(5)　Microsoft SQL Server連携時に必要な定義

リソースマネジャにMicrosoft SQL Serverを使用する場合，トランザクションサービス定義（%DCDIR%¥conf¥trnファイル）にtrn_extend_functionオペランドを追加します。これによって，次の条件が重なった場合にTP1/LiNKのトランザクションの決着関数はDC_OK（0）ではなく，DCTRNER_HAZARD（-904）またはTX_HAZARD（-4）を返すようにできます。

リソースマネジャへのアクセスがMicrosoft SQL Serverしか存在しない（1相コミットで決着を行う）

Microsoft SQL Serverが，Timeoutの指定によってトランザクションを自動的にロールバックする

trn_extend_functionオペランドについて次に示します。

形式

set trn_extend_function = トランザクションサービスの機能拡張レベル
　　～〈16進数字〉((00000000～00000001))《00000000》

説明

トランザクションサービスの機能の拡張レベルを，次の中から指定します。

次の指定値で示す機能の拡張レベルを複数指定する場合，それぞれの指定値の論理和を指定してください。

00000000

トランザクションサービスの機能を拡張しません。

00000001

1相コミット時に，リソースマネジャからXAER_NOTAが返ってきた場合の関数のリターン値はDC_OK（または，TX_OK）ではなくDCTRNER_HAZARD（-904）（または，TX_HAZARD（-4））を返します。

このオペランドは，トランザクションブランチが関連するすべてのOpenTP1ノードのトランザクションサービス定義で指定してください。

トランザクションブランチが関連するすべてのOpenTP1ノードのうち，このオペランドの指定がないノードが一つ以上ある場合，1相コミットでリソースマネジャからXAER_NOTAが返されたときは，ルートトランザクションブランチのリターン値は変更されません。

1相コミットで，リソースマネジャからXAER_NOTAが返された場合の関数のリターン値を次の表に示します。

関数
リターン値

trn_extend_function=00000000​の場合
trn_extend_function=00000001​の場合

dc_trn_chained_commit
（CBLDCTRN('C-COMMIT')）
DC_OK（00000）
DCTRNER_HAZARD（00904），DCTRNER_HAZARD_NO_BEGIN（00927）

dc_trn_unchained_commit
（CBLDCTRN('U-COMMIT')）
DC_OK（00000）
DCTRNER_HAZARD（00904），

tx_commit
（TXCOMMIT）
TX_OK（TX-OK）
TX_HAZARD（TX-HAZARD），TX_HAZARD_NO_BEGIN（TX-HAZARD-NO-BEGIN）

dc_mcf_commit
（CBLDCMCF('COMMIT')）
DCMCFRTN_00000（00000）
DCMCFRTN_HAZARD（70908）

注

括弧内の英数字は，COBOL言語を使用した場合の関数名およびステータスコードです。

定義例

定義の最終行には，改行を入力してください。

# ALL RIGHTS RESERVED, COPYRIGHT (C)1994, HITACHI, LTD.
# LICENSED MATERIAL OF HITACHI,LTD.
# *
# * トランザクションサービス定義
# * 環境名： trn
# *
# TP1/LiNK (trn)
set trn_tran_process_count = 32
set trn_wait_rm_open = continue
trnstring -n MS_SQL_Server ¥
-o "Tm=OpenTP1,RmRecoveryGuid=986D495E-…33E7,Timeout=180¥
000"¥
-c "Tm=OpenTP1,RmRecoveryGuid=986D495E-…33E7,Timeout=180¥
000"¥
-O "Tm=OpenTP1,RmRecoveryGuid=986D495E-…33E7,Timeout=180¥
000"¥
-C "Tm=OpenTP1,RmRecoveryGuid=986D495E-…33E7,Timeout=180¥
000"¥
set trn_extend_function = 00000001

(6)　Microsoft SQL Server連携時の注意事項

リソースマネジャにMicrosoft SQL Serverを使用する場合，UAP作成時に次の点に注意してください。

DB-LibraryによってXA連携を行う場合（UAPをC言語またはMicrosoft Visual C++で作成）
TP1/LiNKのトランザクションとMicrosoft SQL Serverとの接続をXAで関連付けるために，各トランザクションブランチの先頭で関連付けを行うdbenlistxatrans関数を発行する必要があります。この関数が発行されていないと，TP1/LiNKで管理しているトランザクションで決着ができません。詳細は，Microsoft SQL Serverのマニュアルを参照してください。

ODBC接続によってXA連携を行う場合（UAPをC言語またはMicrosoft Visual C++で作成）
TP1/LiNKのトランザクションとMicrosoft SQL Serverとの接続をXAで関連付けるために，各トランザクションブランチの先頭で関連付けするSQLSetconnectOption関数またはSQLSetConnectAttr関数を発行する必要があります。この関数が発行されていないと，TP1/LiNKで管理しているトランザクションによる決着ができません。詳細は，Microsoft SQL Serverのマニュアルを参照してください。

ODBC接続によってXA連携を行う場合（COBOL言語で作成）
TP1/LiNKのトランザクションとMicrosoft SQL Serverとの接続をXAで関連付けるために，各トランザクションブランチの先頭で関連付けを行うサービスルーチン（COBOL言語で提供するCBLSQLSETOPT）を発行する必要があります。このサービスルーチンが発行されていないと，TP1/LiNKで管理しているトランザクションによる決着ができません。また，Microsoft SQL ServerとXA連携を行う［SPP環境設定］ダイアログボックスまたは［SUP環境設定］ダイアログボックスの［ユーザサーバの環境変数］の［変数(Y)］（または［変数(B)］）に「CBLSQLCOMMOD」を，[値(Z)］に「AUTO」を設定してください。各ダイアログボックスについては，「3.2.1　SPPの実行環境の設定」および「3.3.1　SUPの実行環境の設定」を参照してください。

また，連鎖型RPCを使用する場合には，次の三つの関数およびサービスルーチンを2回目以降のRPCで発行しないようにしてください。

dbenlistxatrans関数

SQLSetconnectOption関数

CBLSQLSETOPT

4.1.2　HiRDB連携時の環境設定

＜この項の構成＞

(1)　HiRDBの登録

(2)　HiRDB連携時の環境変数の設定

(3)　HiRDB連携時のUAPのコンパイルとリンケージ

(1)　HiRDBの登録

HiRDBをリソースマネジャとして登録する方法は，Microsoft SQL Serverの場合と同じです。「4.1.1(1)　Microsoft SQL Serverの登録」を参照してください。また，HiRDBを登録するときの入力に必要となる「関連オブジェクト名称」などについては，HiRDBのXAインタフェースに関して記載されたマニュアルを参照してください。

［リソースマネジャのXA関連オブジェクト］ダイアログボックスでの指定例を次に示します。

C:¥win32app¥hitachi¥hirdb_s¥CLIENT¥LIB¥pdcltx32.lib

(2)　HiRDB連携時の環境変数の設定

HiRDBにアクセスするためには，HiRDBが定めた環境変数に値を設定する必要があります。環境変数の設定は，次のダイアログボックスを使用します。

［オプション］ダイアログボックス
詳細は，「2.1.3(6)　トランザクションサービスの環境変数の設定」を参照してください。

［SPP環境設定］ダイアログボックスまたは［SUP環境設定］ダイアログボックス
詳細は，「3.2.1　SPPの実行環境の設定」および「3.3.1　SUPの実行環境の設定」を参照してください。

また，設定が必要な環境変数名や設定値などについては，HiRDBのインストール時に設定した値や，環境設定に関して記載されたマニュアルを参照してください。

各ダイアログボックスでの指定例を次に示します。

表4-1　［オプション］ダイアログボックスでの指定例（HiRDBの場合）

項番
［トランザクションサービスの環境変数］欄
［変数(V)］
［トランザクションサービスの環境変数］欄
［値(A)］

1
PDHOST
P2C3G50

2
PDNAMEPORT
22200

3
PDTMID
smpl

4
PDSWAITTIME
6000

表4-2　［SPP環境設定］ダイアログボックスまたは［SUP環境設定］ダイアログボックスでの指定例（HiRDBの場合）

項番
［ユーザサーバの環境変数］欄
［変数(Y)］※
［ユーザサーバの環境変数］欄
［値(Z)］

1
PDHOST
P2C3G50

2
PDNAMEPORT
22200

3
PDTMID
smpl

4
PDSWAITTIME
6000

5
PDUSER
'"root"/"root"'

6
PDXAMODE
1

注※

［SUP環境設定］ダイアログボックスの場合は［変数(B)］になります。

(3)　HiRDB連携時のUAPのコンパイルとリンケージ

UAPのコンパイルとリンケージは，Microsoft SQL Serverの場合と同じです。詳細は，「4.1.1(3)　Microsoft SQL Server連携時のUAPのコンパイルとリンケージ」を参照してください。

4.1.3　Oracle連携時の環境設定

＜この項の構成＞

(1)　Oracleの登録

(2)　Oracle連携時のOPEN，CLOSE文字列の設定

(3)　Oracle連携時の環境変数の設定

(4)　Oracle連携時のUAPのコンパイルとリンケージ

(5)　TP1/LiNKから複数のOracle DBMSにアクセスする場合

(6)　Oracle RACとの連携方法

(7)　Oracle連携時の注意事項

(1)　Oracleの登録

Oracleをリソースマネジャとして登録する方法は，Microsoft SQL Serverの場合と同じです。詳細は，「4.1.1(1)　Microsoft SQL Serverの登録」を参照してください。また，Oracleを登録するときに入力に必要となる「関連オブジェクト名称」などについては，OracleのXAインタフェースに関して記載されたマニュアルを参照してください。

［リソースマネジャのXA関連オブジェクト］ダイアログボックスでの指定例を次に示します。

C:¥orant¥rdbms¥XA¥ORAXA9.LIB

(2)　Oracle連携時のOPEN，CLOSE文字列の設定

TP1/LiNKでは，X/OpenのXAインタフェースで定められているリソースマネジャのOpen，Close文字列を設定する必要があります。Open，Close文字列は，［OPEN，CLOSE文字列］ダイアログボックスで設定します。ダイアログボックスについては，「2.1.3(4)　Open，Close文字列の指定」を参照してください。Open，Close文字列として指定する内容については，Oracleのマニュアルを参照してください。

なお，［トランザクションサービス用xa_open関数用文字列(T)］で指定するuidには，OracleのDB管理者を指定してください。指定したuidがOracleのDB管理者でなかった場合，またはDBA権限を持っていない場合にはUAPの部分回復，およびTP1/LiNKシステム再開始後のトランザクション回復処理が正常に行われない場合があります。

［OPEN，CLOSE文字列］ダイアログボックスでの指定例を次に示します。

［トランザクションサービス用xa_open関数用文字列(T)］

Oracle_XA+Acc=P/system/manager+SesTm=60

［トランザクションサービス用xa_close関数用文字列(S)］

設定は不要です。

［ユーザサーバ用xa_open関数用文字列(U)］

Oracle_XA+Acc=P/scott/tiger+SesTm=60

［ユーザサーバ用xa_close関数用文字列(F)］

設定は不要です。

(3)　Oracle連携時の環境変数の設定

Oracleにアクセスするためには，Oracleが定めた環境変数に値を設定する必要があります。環境変数の設定は，次のダイアログボックスを使用します。

［オプション］ダイアログボックス
詳細は，「2.1.3(6)　トランザクションサービスの環境変数の設定」を参照してください。

［SPP環境設定］ダイアログボックスまたは［SUP環境設定］ダイアログボックス
詳細は，「3.2.1　SPPの実行環境の設定」および「3.3.1　SUPの実行環境の設定」を参照してください。

また，設定が必要な環境変数名や設定値などについては，Oracleのインストール時に設定した値や，環境設定に関して記載されたマニュアルを参照してください。

Oracle連携時の各ダイアログボックスでの指定例を次に示します。

表4-3　［オプション］ダイアログボックスでの指定例（Oracleの場合）

項番
［トランザクションサービスの環境変数］欄
［変数(V)］
［トランザクションサービスの環境変数］欄
［値(A)］

1
ORACLE_HOME
c:¥orant

2
ORACLE_SID
ORCL

表4-4　［SPP環境設定］ダイアログボックスまたは［SUP環境設定］ダイアログボックスでの指定例（Oracleの場合）

項番
［ユーザサーバの環境変数］欄
［変数(Y)］※
［ユーザサーバの環境変数］欄
［値(Z)］

1
ORACLE_HOME
c:¥orant

2
ORACLE_SID
ORCL

注※

［SUP環境設定］ダイアログボックスの場合は［変数(B)］になります。

(4)　Oracle連携時のUAPのコンパイルとリンケージ

UAPのコンパイルとリンケージは，Microsoft SQL Serverの場合と同じです。詳細は，「4.1.1(3)　Microsoft SQL Server連携時のUAPのコンパイルとリンケージ」を参照してください。

(5)　TP1/LiNKから複数のOracle DBMSにアクセスする場合

TP1/LiNKから複数のOracle DBMSにアクセスする場合には，OracleのOpen，Close文字列指定の仕様によって，SQL*Netが必要です。Oracleのマニュアルを参照しSQL*Netのセットアップを行ってください。

また，Open，Close文字列の指定方法が通常の場合と異なります。［OPEN，CLOSE文字列］ダイアログボックスの［リソースマネジャ拡張子(R)］を使用して，「リソースマネジャ名＋リソースマネジャ拡張子」によって，DBMSを識別できるように指定します。［OPEN，CLOSE文字列］ダイアログボックスで指定したリソースマネジャ拡張子を，［SPP詳細設定］ダイアログボックスまたは［SUP詳細設定］ダイアログボックスでも指定して，各UAPが使用するOracleのOPEN，CLOSE文字列を設定します。［SPP詳細設定］ダイアログボックスまたは［SUP詳細設定］ダイアログボックスについては，「3.2.2　SPPの詳細設定」または「3.3.2　SUPの詳細設定」を参照してください。

また，OracleのDBMSが一つの場合でも，複数のOracleのuidでアクセスする場合でも，複数のOracleをアクセスするときと同様の指定が必要です。

(6)　Oracle RACとの連携方法

Oracle RAC機能を使用した場合，フェイルオーバーが発生すると，障害が発生したフェイルオーバー元から，フェイルオーバー先へインダウトトランザクション（未決着トランザクション情報）が転送されます。このインダウトトランザクションの転送処理をしている間，TP1/LiNKのトランザクション回復処理を抑止できます。この機能を使用しない場合には，Oracleの仕様によってTP1/LiNKとOracle間でトランザクション決着種別に不一致が発生するおそれがあります。

これを回避するためには，リソースマネジャ接続としてOracleを接続後に，トランザクションサービス定義（%DCDIR%¥conf¥trnファイル）のtrnstring定義コマンドで，-rオプションを指定してください。trnstring定義コマンドで-rオプションを指定した場合，リソースマネジャからの待ち合わせを行うので，トランザクション回復プロセスが占有され，回復処理が滞るためトランザクション回復プロセス数（trn_recovery_process_countオペランド）も，trnstring 定義コマンドの-rオプションで指定したリソースマネジャ数分増やしてください。また，trnstring定義コマンドの-rオプションを有効にするためには，［OPEN，CLOSE文字列］ダイアログボックスに"OPS_FAILOVER=T"を指定する必要があります。

この機能を使用して，開始処理中またはオンライン処理中にリソースマネジャに障害が発生した場合に，そのリソースマネジャが参加したトランザクションの該当リソースマネジャの障害が回復されるまでトランザクション回復処理が遅れます。

trn_recovery_process_countオペランドの説明を次に示します。

形式

set trn_recovery_process_count = 並行回復プロセス数
　　～＜符号なし整数＞((1～128))《1》

説明

トランザクションブランチが異常終了したときに，トランザクションブランチの回復処理を並行してできる数を指定します。

トランザクションブランチが異常終了した場合は，ここで指定した数だけ並行してトランザクションブランチの回復処理をします。

回復プロセス数に2以上を指定した場合，［システム環境設定］の［サーバ数］欄の［SPP(P)］に指定値を加えてください。なお，定義追加後にリソースマネジャ接続で設定を変更した場合は，再度指定してください。

定義例

定義の最終行には，改行を入力してください。

# ALL RIGHTS RESERVED, COPYRIGHT (C)1994, HITACHI, LTD.
# LICENSED MATERIAL OF HITACHI,LTD.
# *
# * トランザクションサービス定義
# * 環境名： trn
# *
# TP1/LiNK (trn)
set trn_tran_process_count = 32
set trn_wait_rm_open = continue
trnstring -n Oracle_XA -e -r ¥
-o "Oracle_XA+Acc=P/sys/syspass+SesTm=30"¥
-o "Oracle_XA+Acc=P/scott/tiger+SesTm=30"
set trn_recovery_process_count = 1
putenv ORACLE_SID ¥
ORCL
putenv ORACLE_HOME ¥
E:¥orant

(7)　Oracle連携時の注意事項

リソースマネジャにOracleを使用する場合，次の点に注意してください。

次の場合，KFCA00901-WメッセージやSQLのアクセスでOracleのORA-1012メッセージが出力されることがあります。Oracle DBMS，通信プロセスなどが起動されているかを確認してください。

TP1/LiNKとOracleをX/OpenのXAインタフェースで連携した場合

トランザクション中にOracleのSQL*Net機能の一部である通信プロセスが未起動の場合

障害が発生した場合

TP1/LiNKとOracleをX/OpenのXAインタフェースで連携した場合，Oracleの"SESSIONS"定義指定値を超えてOracleをXAインタフェースでアクセスするプロセスを起動した場合，KFCA00901-Wが出力されます。次の計算式を参考に，OracleのSESSIONS定義を見直してください。

Oracleアクセス基礎値 ≧
（（Oracleにアクセスするユーザサーバプロセスの総数＋1※1＋1※2）
×OracleのDBMS数）SESSIONSの最小値≧Oracleアクセス基礎値×n※3

注※1

TP1/LiNKのトランザクション回復プロセス分

注※2

TP1/LiNKのリソースマネジャ監視プロセス分

注※3

xa_open，xa_start，UOC(SQL)，xa_end，xa_closeの間に必要なSESSION数（通常1～5程度です。詳細は，Oracleのマニュアルを参照してください）

TP1/LiNKとOracleをX/OpenのXAインタフェースで連携した場合，Oracleの［OPEN，CLOSE文字列］ダイアログボックスに指定する「SesTm」は，Oracleのグローバルトランザクション監視時間値です。指定値に小さい値を指定した場合，監視時間経過後，OracleがTP1/LiNKの指示を待たないでトランザクションを決着させることがあります。そのため，ユーザサーバやTP1/LiNKシステムがダウンすることがあります。この指定値には，余裕のある値を指定してください。

TP1/LiNKとOracleをX/OpenのXAインタフェースで連携した場合，トランザクション実行中にOracleがダウンして再起動したとき，Oracleダウン前にOracleにアクセスしていたプロセスからの要求を，Oracleが受け付けなくなることがあります。その場合は，KFCA00901-W，KFCA00905-E，またはKFCA00906-Eメッセージが出力されます。該当サーバを終了したあと，再起動してください。該当サーバが 「_trnrcv」の場合は，TP1/LiNKシステムを終了させ，再起動してください。なお，KFCA00907-Eメッセージが出力された場合は，TP1/LiNKシステムダウンとなります。

4.1.4　OpenTP1以外のリソースマネジャ連携時の注意事項

OpenTP1以外のリソースマネジャを使用する場合，次の点に注意してください。

TP1/LiNKとDBMSをXAインタフェースで連携して使用する場合，障害の多くは［OPEN，CLOSE文字列］ダイアログボックスの指定に誤りがあるために発生します。その際には，KFCA00901-Wメッセージが出力されます。［OPEN，CLOSE文字列］ダイアログボックスの指定を見直してください。

TP1/LiNKとリソースマネジャをX/OpenのXAインタフェースで連携した場合には，トランザクションの開始，および同期点取得は，TP1/LiNKの提供している次の関数を使用してください。

dc_trn_begin()

dc_trn_chained_commit()

dc_trn_chained_rollback()

dc_trn_unchained_commit()

dc_trn_unchained_rollback()

tx_begin()

tx_commit()

tx_rollback()

リソースマネジャのSQL言語などでコミット，ロールバック指示をした場合，またはリソースマネジャがXA連携時に禁止している機能を使用した場合には，トランザクション処理が正常に実行されないで，リソース間の不整合が発生したり，TP1/LiNKシステムがダウンしたりすることがあります。

リソースマネジャと接続する際には，あらかじめMicrosoft Visual C++の実行に必要な環境変数（Path，Include，Lib）に設定しておいてください。

TP1/LiNKとリソースマネジャをX/OpenのXAインタフェースで連携する場合には，リソースマネジャの関連サービスがすべて起動されていることを確認してください。

TP1/LiNKシステムへリソースマネジャの登録を行うと，トランザクションサービスプロセスがリソースマネジャのDLLを使用します。したがって，［システム環境設定］ウィンドウの［サーチパス］欄にリソースマネジャのDLLの存在するパスを指定してください。指定例を次に示します。

Microsoft SQL Serverの場合

c:¥mssql¥binn

HiRDBの場合

c:¥hirdb_s¥client¥utl

Oracleの場合

c:¥orant¥bin

4.2　マルチホームドホスト形態での実行環境の設定

二つ以上の物理ネットワークに接続しているTCP/IPを使っているホストを，マルチホームドホストといいます。

TP1/LiNKが動作するホストが複数のネットワークアダプタで接続されている場合は，どのIPアドレス（ホスト名）が，どのOpenTP1に対応しているかを定義する必要があります。

このような環境でTP1/LiNKを使用する場合，TP1/LiNKインストールフォルダ¥conf¥BETRANRCファイルに，dcbindht定義コマンドを追加する必要があります。また，サブネットを使用したネットワーク環境でdcbindht定義コマンドを指定する場合は，rpc_netmaskオペランドも指定する必要があります。

＜この節の構成＞

4.2.1　dcbindht定義コマンド

4.2.2　rpc_netmaskオペランド

4.2.3　注意事項

4.2.1　dcbindht定義コマンド

形式

dcbindht -h ホスト名 〔-n ネットワーク名〔,ネットワーク名〕…〕

機能

TP1/LiNKが動作するホストが複数のネットワークアダプタで接続されている場合は，TP1/LiNKがどのネットワークアダプタを使用して通信するかを指定します。一つのネットワークアダプタに複数のIPアドレスを付けられる場合は，TP1/LiNKがどのIPアドレスを使用して通信するかを指定します。また，IPアドレスを引き継ぐ系切り替えを行うホストの場合も指定する必要があります。

この機能は，dcbindht定義コマンドで指定されたホスト名に対応するIPアドレスで，TP1/LiNKが動作しているということを，通信先のOpenTP1に明示的に通知します。

ネットワークアダプタが一つで，かつIPアドレスを一つしか持っていないマシンの場合，TP1/LiNKが通信に使用するIPアドレスも物理的に一つに決まりますので，このコマンドを指定する必要ありません。

2：1系切り替え構成や，相互系切り替え構成のように，IPアドレスを引き継ぐ系切り替えで，1ホスト内に複数のTP1/LiNKが稼働することがある場合，このコマンドを指定してください。なお，ルータなどを経由してネットワーク間を接続している場合は，ここで指定するネットワークアダプタを経由して通信するすべてのネットワークを指定しなければなりません。

指定を省略した場合，複数のネットワークアダプタ，または複数のIPアドレスのどれを使用してアクセスするかは，TCP/IPの制御で決定されます。ただし，複数のIPアドレスや複数のネットワークアダプタが接続されているマシンでも，指定を省略した場合，期待していないIPアドレスが通信先のOpenTP1に通知され，通信時に通信障害が発生することがあります。

オプション

●-h　ホスト名　　～〈1～64文字の識別子〉

TP1/LiNKの通信に使用する，ネットワークアダプタに対応したホスト名を指定します。TP1/LiNKで使用する，系切り替えで引き継ぎたいIPアドレスに対応したホスト名を指定します。Windowsの場合，ホスト名を%windir%¥system32¥drivers¥etc¥hostsに登録しておく必要があります。

●-n　ネットワーク名　　～〈1～64文字の識別子〉

-hオプションで指定したネットワークアダプタを経由して通信するネットワーク名を指定します。Windowsの場合，ネットワーク名を%windir%¥system32¥drivers¥etc¥networksに登録しておく必要があります。

このオプションの指定は省略できます。省略した場合，TP1/LiNKは-hオプションで指定されたホスト名に対応したネットワークアダプタまたはIPアドレスを，すべての通信で使用します。

4.2.2　rpc_netmaskオペランド

サブネットを使用したネットワーク上で稼働させている場合，rpc_netmaskオペランドを指定しないときには，dcbindht定義コマンドに指定したネットワーク名とTP1/LiNKの認識するネットワークアドレスが一致しないため，dcbindht定義コマンドの指定値が有効になりません。なお，rpc_netmaskオペランドに指定するサブネットマスクは，TP1/LiNKのグローバルドメイン下のネットワークですべて同一である必要があります。

形式

set rpc_netmask = TCP/IPのネットワーク定義ファイルに指定したサブネットマスク値

説明

TP1/LiNKが稼働する環境のネットワークでサブネットを使用している場合，TCP/IPのネットワーク定義ファイルに指定したサブネットマスク値を，「.」記法の文字列のインターネットアドレスで指定します（例：「rpc_netmask = 255.255.255.0」）。

インターネットアドレスの「.」と数字の間には，スペースを挿入しないでください。スペースを挿入すると，スペース以降の値は解釈されません。

TCP/IPのネットワーク定義ファイルにサブネットマスクを指定していない場合，このオプションの指定は省略できます。

4.2.3　注意事項

1ホスト内で複数のTP1/LiNKが稼働していて，IPアドレスを引き継ぐ系切り替え構成の場合は，必ずdcbindht定義コマンドを追加してください。指定を省略した場合，目的のOpenTP1と通信できないことがあります。

次に示す定義例のように，dcbindht定義コマンドの-nオプションの指定を省略した場合，TP1/LiNKはすべての通信で，-hオプションに指定されたホスト名に対応するIPアドレスを使用します。dcbindht定義コマンドには-nオプションの指定を省略した値を複数指定することはできません。複数指定した場合，先に記述してある値が有効になり，あとに定義された値は無視されます。
また，-nオプションが指定されている値と，-nオプションが省略されている値が混在する場合は，-nオプションが指定されている値が優先されます。

定義例

定義の最終行には，改行を入力してください。

# ALL RIGHTS RESERVED, COPYRIGHT (C)1994, HITACHI, LTD.
# LICENSED MATERIAL OF HITACHI,LTD.
# *
# * システム共通定義
# * 環境名： betranrc
# *
# TP1/LiNK (betranrc)
set name_port = 10000
set rpc_trace = N
set rpc_datacomp = N
set client_uid_check = N
set node_id = LiNK
set all_node = "TP1HOST"
set rpc_delay_statistics = Y
set my_host = "HOST_B"
set rpc_netmask = 255.255.255.0
# 送信先ネットワークアドレスがNET_A,NET_Bの場合，
# ホスト名HOST_Aをbindし，送信します。
dcbindht -h HOST_A -n NET_A,NET_B
# 送信先ネットワークアドレスがNET_A,NET_B以外の場合，
# ホスト名HOST_Bをbindし，送信します。
dcbindht -h HOST_B
# この定義が指定されても，先に定義された
# ホスト名HOST_Bが有効になります。
dcbindht -h HOST_C

複数のIPアドレスを持っているホストで，複数のIPアドレスを同一ネットワークに接続する場合，dcbindht定義コマンドの-hオプションで指定するホスト名をmy_hostオペランドにも指定してください。TP1/LiNKでは，コネクション接続先とmy_hostオペランドで指定された情報を対で管理しています。my_hostオペランドに指定した値と異なるホスト名をdcbindht定義コマンドの-hオプションに指定した場合，接続先が同じであっても，複数のコネクションを使用するおそれがあります。なお，dc_rpc_call_to関数を使用する場合に，dcbindht定義コマンドの-hオプションに指定したホスト名とmy_hostオペランドに指定したホスト名が異なるときの動作は保証できません。
my_hostオペランドの説明を次に示します。

形式

set my_host = "ホスト名"　　～〈1～63文字の英数字〉

説明

TP1/LiNKで使用するホスト名を指定します。Windowsの場合，ホスト名を%windir%¥system32¥drivers¥etc¥hostsに登録しておく必要があります。ホスト名は，1個だけ指定できます。

このオペランドの指定を省略した場合は，hostnameコマンドが返す名称が指定されたと解釈されます。

4.3　クラスタ環境での実行環境の設定

MSCSを使ってクラスタ構成を構築する場合の手順を次に示します。この手順では，2ノードのフェールオーバをサポートします。

＜この節の構成＞

4.3.1　インストール

4.3.2　ステータスファイルの設定

4.3.3　XARファイルの設定

4.3.4　ノードリストファイルの設定

4.3.5　プロセスサービス定義の変更

4.3.6　システム共通定義の変更

4.3.7　クライアント側の定義

4.3.8　MSCSへの設定

4.3.9　TP1/LiNKの起動と停止

4.3.10　構成上の注意事項

4.3.1　インストール

クラスタ構成でTP1/LiNKを運用する場合は，現用系および待機系それぞれのコンピュータのローカルディスク上に，同じドライブ名称，同じフォルダ名称でTP1/LiNKをインストールしてください。

4.3.2　ステータスファイルの設定

TP1/LiNKはシステム再開始の情報を，ステータスファイルと呼ばれるファイルに記録しています。クラスタ構成でTP1/LiNKを運用する場合は，再開始情報をコンピュータ間で共有するため，ステータスファイルを共有ディスク上に作成する必要があります。

TP1/LiNKがローカルディスクドライブCのフォルダ「C:¥OpenTP1」にインストールされて，共有ディスクドライブがドライブFに設定されている場合は，現用系および待機系のステータスファイルを次のように設定します。

現用系のコマンドプロンプトでdcstsmngコマンドを実行し，［TP1/LiNKステータスファイル管理］ダイアログボックスを開きます。マルチOpenTP1では，マルチOpenTP1用のコマンドプロンプト（dcmakeconコマンドで作成）からdcstsmngコマンドを実行してください。

「プライマリステータスファイル格納フォルダ」にステータスファイルを格納するフォルダを設定します（例：F:¥OpenTP1）。

MSCSを使って共有ディスクドライブのドライブFを待機系に移動させます。

待機系に対して，同様に1.，2.の操作を実行します。

ステータスファイル格納フォルダを設定する場合は，そのマシン上で共有ドライブが認識されている必要があります。

4.3.3　XARファイルの設定

TP1/LiNKはXAリソースサービス機能を使用しているとき，XARトランザクション情報をXARファイルに記録しています。クラスタ構成でTP1/LiNKを運用する場合は，XARトランザクション情報をコンピュータ間で共有するため，XARファイルを共有ディスク上に作成する必要があります。

TP1/LiNKがローカルディスクドライブCのフォルダ「C:¥OpenTP1」にインストールされて，共有ディスクドライブがドライブFに設定されている場合は，現用系および待機系のXARファイルを次のように設定します。

現用系の［システム環境設定］ウィンドウ－［XAリソースサービス環境設定］ダイアログボックスを開きます。

「オンライン用XARファイルを作成するフォルダ名」および「バックアップ用XARファイルを作成するフォルダ名」にXARファイルを格納するフォルダを設定します（例：F:¥OpenTP1）。

MSCSを使って共有ディスクドライブのドライブFを待機系に移動させます。

待機系に対して，同様に1.，2.の操作を実行します。

XARファイルを作成するフォルダ名を設定する場合は，そのマシン上で共有ドライブが認識されている必要があります。

4.3.4　ノードリストファイルの設定

ノード自動追加機能でノードリストファイルを使用しているとき，オンライン中にノードリストの情報を一定間隔でノードリストファイルに記録しています。クラスタ構成でTP1/LiNKを運用する場合は，ノードリスト情報をコンピュータ間で共有するため，ノードリストファイルを共有ディスク上に作成する必要があります。

TP1/LiNKがローカルディスクドライブCのフォルダ「C:¥OpenTP1」にインストールされていて，共有ディスクドライブがドライブFに設定されている場合は，現用系および待機系のノードリストファイルを次のように設定します。

現用系の［システム環境設定］ウィンドウ－［ノード自動追加機能設定］ダイアログボックスを開きます。

「ノードリストファイルを作成するフォルダ名」にノードリストファイルを格納するフォルダを設定します（例：F:¥OpenTP1）。

MSCSを使って共有ディスクドライブのドライブFを待機系に移動させます。

待機系に対して，同様に1.，2.の操作を実行します。

ノードリストファイルを作成するフォルダ名を設定する場合は，そのマシン上で共有ドライブが認識されている必要があります。

4.3.5　プロセスサービス定義の変更

TP1/LiNKには連続異常終了を監視する機能があります。この機能は，異常終了が一定期間内に連続して発生した場合，TP1/LiNKの起動を抑止します。

MSCSを使用する場合，連続異常終了の監視をMSCSが行うため，TP1/LiNKでは連続異常終了の監視を行わないように設定する必要があります。

TP1/LiNKの現用系および待機系それぞれのプロセスサービス定義（TP1/LiNKインストールフォルダ¥conf¥PRCファイル）に，次に示すterm_watch_timeオペランドを追加する必要があります。

形式

set term_watch_time = 0

定義例

定義の最終行には改行を入力してください。

# ALL RIGHTS RESERVED, COPYRIGHT (C)1994, HITACHI, LTD.
# LICENSED MATERIAL OF HITACHI,LTD.
# *
# * プロセスサービス定義
# * 環境名： prc
# *
# TP1/LiNK (prc)
set prc_process_count = 64
prcsvpath C:¥OpenTP1¥aplib
set term_watch_time = 0

4.3.6　システム共通定義の変更

TP1/LiNKのRPC通信に使用するFloatingIP※をシステム共通定義（TP1/LiNKインストールフォルダ¥conf¥BETRANRC）ファイルにdcbindht定義コマンド，およびrpc_netmaskオペランドを指定してください。指定方法については，「4.2　マルチホームドホスト形態での実行環境の設定」を参照してください。

注※

MSCSで表記されているIPアドレスリソースは，このマニュアルではFloatingIPと表記します。

通常，ホストAのOpenTP1の停止時にTCP/IPからRSTパケットが返ってこない場合，ホストBのOpenTP1では，ホストAのOpenTP1の停止を検出できません。ホストAのOpenTP1が再起動しても，ホストBのOpenTP1からホストAへ正常に送信できないため，結果応答を受け取れません。この場合，［システム環境設定］ウィンドウ－［RPC詳細設定］ダイアログボックスの［ネームサービス］タブで，［システムを構成するノードに起動通知を行う］チェックボックスをオンにします。ネームサーバ起動時に他ノードで起動するOpenTP1（ネームサーバ）に対して起動完了を通知することで，TP1/LiNKでは送信元のOpenTP1の状態を把握できます。このため，電文を正常に送受信できます。

なお，［システム環境設定］ウィンドウの［システムを構成するノード］で指定しているノード（all_node_exオペランドも含めます）がクラスタ環境である場合は，そのFloatingIPを指定してください。

4.3.7　クライアント側の定義

TP1/Clientに指定する接続先ホスト名は，系切り替え対象のFloatingIPアドレスを指定してください。

4.3.8　MSCSへの設定

MSCS構成でTP1/LiNKを使用するためのクラスタアドミニストレータの設定について説明します。

なお，MSFC（Microsoft Failover Cluster）またはWSFC（Windows Server Failover Clustering）を使用する場合は，その環境に合わせて用語を置き換えてお読みください。

＜この項の構成＞

(1)　グループの定義

(2)　リソースの定義

(1)　グループの定義

クラスタアドミニストレータの［ファイル］メニューから［新規作成］をクリックし，次に［グループ］をクリックします。

設定内容
設定例

［名前］［説明］を入力します。ここでグループ名称と詳細説明が設定されます。
［名前］：TP1/LiNK
［説明］：TP1/LiNKグループ

優先所有者を定義します。グループのフェールバック許可を設定した場合，優先所有者に設定された順序でフェールバックされます。優先所有者を設定しない場合はフェールバックされません。
node-Aを優先的に所有者にしたい場合は，node-A, node-Bの順に登録します。

(2)　リソースの定義

クラスタアドミニストレータの［ファイル］メニューから［新規作成］をクリックし，次に［リソース］をクリックします。

項番
設定内容
設定例

1
物理ディスクリソースを作成します。
Disk Groupがデフォルトで作成されていて，そのグループにリソースとしてディスクドライブが定義されています。したがって，このリソースを先に作成したグループに移動してください。
Disk Group1のリソース「Disk F:」をTP1/LiNKに移動します。

2
IPアドレスリソースを作成します。

新しいリソース画面で［名前］，［説明］を入力することで，リソース名称と詳細説明が設定されます。さらに，［リソースの種類］でIPアドレスを選択し，「グループ」では登録したいグループを選択します。

実行所有者画面で，実行できる所有者にノードを追加します。

依存関係画面で，IPアドレスリソースがオンラインになる前にオンラインにする必要があるリソースを登録します。

TCP/IPアドレスパラメタ画面で，［使用するネットワーク］でIPアドレスをバインドしたいネットワークカードを選択してください。［使用するネットワーク］ではネットワークカードに対してインストール時に設定した名称がメニューとして表示されます。
［アドレス］，［サブネットマスク］では，使用したいIPアドレスおよびサブネットマスクを設定してください。

次のように設定します。
［名前］：TP1/LiNK_IP
［説明］：F:ファイル共有用IPアドレス
［リソースの種類］：IPアドレス
［グループ］：TP1/LiNK

そのまま次へ進んでください。デフォルトではすべてのノードがすでに追加されています。

そのまま次へ進んでください。IPアドレスと依存関係が必要なリソースはないためです。

次のように設定します。
［使用するネットワーク］：Service Network（インストール時に設定した名称がプルダウンメニューとして表示されます）
［アドレス］：200.10.10.100
［サブネットマスク］：255.255.255.0

3
汎用サービスリソースを作成します。

新しいリソース画面で［名前］［説明］を入力することでリソース名称と詳細説明が設定されます。さらに，［リソースの種類］で汎用サービスを選択し，［グループ］では登録したいグループを選択します。

実行所有者画面で，実行できる所有者にノードを追加します。

依存関係画面で，汎用サービスリソースがオンラインになる前にオンラインにする必要があるリソースを登録します。

汎用サービスパラメタ画面で，［サービス名］を設定してください。

レジストリの複製画面では，何も設定しないで［完了］をクリックしてください。

次のように設定します。
［名前］：TP1/LiNKリソース
［説明］：TP1/LiNK
［リソースの種類］：汎用サービス
［グループ］：TP1/LiNK

そのまま次へ進んでください。デフォルトではすべてのノードがすでに追加されています。

そのまま次へ進んでください。汎用サービスと依存関係が必要なリソースは項番4で変更するためです。

［サービス名］：TP1LiNK

4
依存関係を変更します。
TP1/LiNKリソースは，［IPアドレス］と［共有ディスク］リソースとの依存関係を必要とします。
TP1/LiNKリソースの［プロパティ］－［依存関係の変更］を選択して，［依存関係変更］ダイアログボックスの［IPアドレス］および［共有ディスク］を［利用できるリソース］から［リソースの依存関係］へ移動します。
次のように設定します。
IPアドレス：「TP1/LiNK_IP」
共有ディスク：「Disk F:」

5
TP1/LiNKリソースに異常が発生した場合，現用系のマシンでリトライするか，すぐに待機系に処理を移すかの設定を，リソースのプロパティで行うことができます。
TP1/LiNKリソースの［プロパティ］－［詳細設定］を選択して，すぐに待機系に処理を移したい場合は［しきい値］を0に設定してください。
該当しません。

6
TP1/LiNKリソースの連続異常終了の監視については，グループのプロパティで設定できます。
TP1/LiNKグループの［プロパティ］－［フェールオーバー］を選択して，［しきい値］および［期間］を設定してください。
該当しません。

4.3.9　TP1/LiNKの起動と停止

TP1/LiNKをMSCS環境で起動する場合，TP1/LiNKリソースを選択して，右クリックでポップアップウィンドウを使用します。TP1/LiNKの起動する場合は［オンラインにする］を，TP1/LiNKを停止する場合は［オフラインにする］を選択します。

TP1/LiNKの起動と停止は，MSCSのコントロールに任せます。TP1/LiNKが提供するGUIやコマンドによる起動と停止の操作は，MSCS外からの操作となります。

4.3.10　構成上の注意事項

＜この項の構成＞

(1)　現用系および待機系の環境設定

(2)　相互系切り替え機能

(3)　マシンの時刻について

(4)　Hitachi HA Toolkit Extensionを使用した系切り替え機能

(5)　強制停止オプションについて

(1)　現用系および待機系の環境設定

クラスタ構成上でTP1/LiNKを動作させる場合，現用系および待機系の環境を，すべて同じ設定にする必要があります。TP1/LiNKの定義やユーザアプリケーションの配置など，TP1/LiNKの環境で異なる要素がある場合，系切り替えの発生時に正しく動作しなくなるおそれがあります。

また，TP1/LiNK以外の環境（搭載メモリ，ハードディスク容量，仮想メモリサイズなど）に関しても，現用系と待機系で同じ環境にすることをお勧めします。

(2)　相互系切り替え機能

現用系と待機系の二つのマシン上で起動できるTP1/LiNKの個数は1個だけです。このため，待機系のマシン上で別のTP1/LiNKを起動することはできません。待機系のマシン上で，別システムのTP1/LiNKを現用系として動作させて，現用系のマシンをそのシステムの待機系にするような相互系切り替えが必要になります。一つのマシンに二つのTP1/LiNKを運用するには，マルチOpenTP1形態のTP1/LiNKにしてください。詳細は，「2.1.8　マルチOpenTP1のセットアップと削除」を参照してください。

(3)　マシンの時刻について

現用系および待機系のマシン時刻は，同一になるように設定してください。二つのマシンの時刻は，Windowsの次に示すコマンドを実行することで合わせることができます。

net time ¥¥コンピュータ名 /set

(4)　Hitachi HA Toolkit Extensionを使用した系切り替え機能

Hitachi HA Toolkit Extensionを使用した系切り替えを行う場合，(1)から(3)の設定に加えて次に示す設定が必要です。

TP1/LiNKの現用系および待機系それぞれのシステムサービス構成定義（TP1/LiNKインストールフォルダ¥conf¥SYSCONFファイル）に，次に示すha_confオペランドを追加する必要があります。

形式

set ha_conf = Y

定義例

定義の最終行には，改行を入力してください。

# ALL RIGHTS RESERVED, COPYRIGHT (C)1994, HITACHI, LTD.
# LICENSED MATERIAL OF HITACHI,LTD.
# *
# * システムサービス構成定義
# * 環境名： sysconf
# *
# TP1/LiNK (sysconf)
set dam_conf = N  
set tam_conf = N  
set trn_conf = Y  
set sts_conf = Y  
set jnl_conf = N  
set mqa_conf = N  
set clt_conf = N  
set ha_conf = Y

系切り替え時に，システムサーバの起動を待たないで，待機系のユーザサーバを起動させたい場合は，TP1/LiNKの現用系および待機系それぞれのシステム環境定義（TP1/LiNKインストールフォルダ¥conf¥ENVファイル）に，次に示すuser_server_haオペランドを追加する必要があります。

形式

set user_server_ha = Y

定義例

定義の最終行には，改行を入力してください。

# ALL RIGHTS RESERVED, COPYRIGHT (C)1994, HITACHI, LTD.
# LICENSED MATERIAL OF HITACHI,LTD.
# *
# * システム環境定義
# * 環境名： env
# *
# TP1/LiNK (env)
set static_shmpool_size = 81448
set dynamic_shmpool_size = 0
set server_count = 354
set user_server_ha = Y

Hitachi HA Toolkit Extensionを使用した系切り替えの手順については，マニュアル「HITACHI HA Toolkit」を参照してください。

(5)　強制停止オプションについて

Hitachi HA Toolkit Extension無しのMSCS環境で，ほかのサービスが要因となってフェールオーバが発生した場合，MSCSからTP1/LiNKサービスに対して停止要求（計画停止A）が実行されます。

このとき，RAPサービスのクライアント切断待ちなどでTP1/LiNKの停止処理が滞ってしまうことがあります。この場合，クラスタアドミニストレータでTP1/LiNKサービスを登録時の起動パラメタに"forcedterminate"を指定して，TP1/LiNKサービスの停止が強制停止になるように設定してください。

4.4　TP1/LiNK拡張機能使用時の実行環境の設定

TP1/Extension 1をインストールすることで次の拡張機能を使用できます。

性能検証用トレース

OpenTP1で動作する各種サービスの主なイベントでOpenTP1識別子などのトレース情報を取得します。

マルチスケジューラ機能

従来のスケジューラデーモン（これ以降マスタスケジューラデーモンといいます）とは別に，サービス要求受信専用デーモン（これ以降マルチスケジューラデーモンといいます）を複数プロセス起動し，サービス要求メッセージ受信処理を並行動作させれば，受信処理の競合によるスケジューリング遅延を回避できます。

これらの機能の詳細については，マニュアル「OpenTP1 解説」を参照してください。ここでは，拡張機能を使用する場合に必要な環境設定方法について説明します。

なお，これらの機能はTP1/Extension 1をインストールしていることが前提です。TP1/Extension 1をインストールしていない場合の動作は保証できません。

＜この節の構成＞

4.4.1　性能検証用トレース使用時の環境設定

4.4.2　マルチスケジューラ機能使用時の環境設定

4.4.1　性能検証用トレース使用時の環境設定

性能検証用トレース情報を取得する場合，次の定義ファイルにオペランドを追加する必要があります。

システム共通定義（%DCDIR%¥conf¥BETRANRCファイル）
prf_traceオペランド
trn_prf_trace_levelオペランド
nam_prf_trace_levelオペランド
fil_prf_trace_optionオペランド
fil_prf_trace_delay_timeオペランド

トランザクションサービス定義（%DCDIR%¥conf¥trnファイル）
trn_prf_event_trace_levelオペランド
trn_prf_event_trace_conditionオペランド

性能検証用トレース定義（%DCDIR%¥conf¥PRFファイル）
prf_file_sizeオペランド

TRNイベントトレース定義（%DCDIR%¥conf¥_trファイル）
prf_file_sizeオペランド

XAリソースサービス定義（%DCDIR%¥conf¥xarファイル）
xar_prf_trace_levelオペランド

XAR性能検証用トレース定義（%DCDIR%¥conf¥_xrファイル）
prf_file_sizeオペランド

プロセスサービス定義（%DCDIR%¥conf¥prcファイル）
prc_prf_traceオペランド

rapリスナーサービス定義（%DCDIR%¥conf¥GUIRAP¥RAPサービス名ファイル）
scs_prf_trace_levelオペランド

＜この項の構成＞

(1)　システム共通定義の変更

(2)　トランザクションサービス定義の変更

(3)　性能検証用トレース定義の変更

(4)　TRNイベントトレース定義の変更

(5)　XAリソースサービス定義の変更

(6)　XAR性能検証用トレース定義の変更

(7)　プロセスサービス定義の変更

(8)　rapリスナーサービス定義の変更

(1)　システム共通定義の変更

形式

set prf_trace = Y|N
　　～《N》
set trn_prf_trace_level = 性能検証用トレースの取得レベル
　　～((00000001～00000003))《00000001》
set nam_prf_trace_level = NAMイベントトレースの取得レベル
　　～((00000000～00000007))《00000003》
set fil_prf_trace_option = 0|1
　　～《1》
set fil_prf_trace_delay_time = FILイベントトレース取得条件となるファイルアクセス処理時間のしきい値
　　～〈符号なし整数〉((1～65535))《10》（単位：秒）

説明

●prf_trace

性能検証用トレース情報を取得するかどうかを指定します。

Y

性能検証用トレース情報を取得します。

N

性能検証用トレース情報を取得しません。

●trn_prf_trace_level

性能検証用トレースの取得レベルを指定します。性能検証用トレース情報で，トランザクション関係のトレースの取得レベルを指定します。トランザクション関係のトレースのイベントIDは0x4000から0x4150です。イベントIDの詳細については，マニュアル「OpenTP1 運用と操作」を参照してください。

00000001

イベントIDが0x4000から0x4017の性能検証用トレース情報を取得します。

00000002

トランザクションの開始時および終了時のイベント（イベントIDが0x4100，0x4150）の性能検証用トレース情報を取得します。

00000003

00000001および00000002の両方の性能検証用トレース情報を取得します。

●nam_prf_trace_level

性能検証用トレース情報の取得で，ネームサービス関係のトレース（NAMイベントトレース）の取得レベルを指定します。NAMイベントトレースのイベントIDは0xf000から0xffffです。

なお，次の値以外を指定した場合は，00000003を指定したと仮定されます。

00000000

NAMイベントトレースを取得しません。

00000001

サービスグループ情報の登録，削除などのイベント情報を取得します。イベントIDの0xf100から0xf1ffまでが該当します。

00000002

ネームサーバ（namd）が行う他ノードとの通信処理に関するNAMイベントトレースを取得します。イベントIDの0xf000から0xf0ffまでが該当します。

00000003

00000001および00000002の両方のNAMイベントトレースを取得します。

00000004

UAPおよび運用コマンドのプロセスとネームサーバ（namd）との通信処理に関するNAMイベントトレースを取得します。イベントIDの0xf200から0xf2ffまでが該当します。

00000005

00000001および00000004の両方のNAMイベントトレースを取得します。

00000006

00000002および00000004の両方のNAMイベントトレースを取得します。

00000007

すべてのNAMイベントトレース（00000001，00000002および00000004に該当するNAMイベントトレース）を取得します。

取得したトレースをファイル出力または編集出力するには，prfgetコマンドまたはprfedコマンドを使用します。prfgetコマンドまたはprfedコマンドの詳細については，マニュアル「OpenTP1 運用と操作」を参照してください。

●fil_prf_trace_option

FILイベントトレースを取得するかどうかを指定します。

0

FILイベントトレースを取得しません。

1

ステータスファイル，XARファイル，またはノードリストファイルへのアクセス要求で，fil_prf_trace_delay_timeオペランドの指定値以上の処理時間が掛かった場合，遅延情報としてFILイベントトレースを取得します。

このオペランドに0または1以外の値を指定しないでください。0または1以外の値を指定した場合の動作は保証できません。

FILイベントトレースで取得されるイベントIDは，0x6805，0x6807，0x6905，0x6907，および0x6909です。

イベントIDの詳細については，マニュアル「OpenTP1 運用と操作」を参照してください。

●fil_prf_trace_delay_time

FILイベントトレースの取得条件となるファイルアクセス処理時間のしきい値を指定します。

注

しきい値を監視する時間精度は秒単位です。そのため，タイミングによっては，このオペランドに指定した値よりも短いファイルアクセス処理時間でFILイベントトレースが取得されることがあります。しきい値が小さくなるほど，誤差の影響を受けやすくなるため，注意してください。

(2)　トランザクションサービス定義の変更

形式

set trn_prf_event_trace_level = TRNイベントトレースの取得レベル
　　～((00000000～00000007))《00000007》
set trn_prf_event_trace_condition = TRNイベントトレースの種類〔,TRNイベントトレースの種類〕
　　～《xafunc》

説明

●trn_prf_event_trace_level

TRNイベントトレースの取得レベルを指定します。

このオペランドは，イベントトレースの取得機能を制御します。このオペランドの指定を省略した場合は，入り口情報，正常出口情報，およびエラー出口情報をトレースとして取得します。TRNイベントトレースの詳細については，マニュアル「OpenTP1 解説」のトレース機能についての記述を参照してください。

00000000

TRNイベントトレースを取得しません。

00000001

イベントの入り口でトレースを取得します（入り口情報）。

00000002

イベントの出口でトレースを取得します（正常出口情報）。

trn_prf_event_trace_conditionオペランドに，xafuncを指定した場合は，XA関数のリターン値が0以上のときにトレースを取得します。

00000004

イベントの出口で障害が発生したときにトレースを取得します（エラー出口情報）。

00000007

イベントの入り口，および出口（障害発生時を含む）でトレースを取得します（入り口情報，正常出口情報，およびエラー出口情報）。

取得したトレースをファイル出力または編集出力するには，prfgetコマンドまたはprfedコマンドを使用します。ファイルの出力結果は，%DCDIR%¥spool¥dctrninf¥trace¥prfに保存されます。prfgetコマンドまたはprfedコマンドの詳細については，マニュアル「OpenTP1 運用と操作」を参照してください。

●trn_prf_event_trace_condition

取得するTRNイベントトレースの種類を指定します。取得したいトレースによって，複数の種類を指定できます。このオペランドの指定を省略した場合は，XA関数についてのトレースを取得します。

xafunc

XA関数についてのトレースを取得します。

trnservice

トランザクションサービスの動作状況についてのトレースを取得します。

(3)　性能検証用トレース定義の変更

形式

set prf_file_size = トレースファイルのサイズ
　　～〈符号なし整数〉((1024～1048576))《1024》（単位：キロバイト）

説明

性能検証用トレース情報のトレースファイルのサイズを指定します。

このファイルは性能検証用トレース定義の3世代分用意され，3世代すべてを使用したらオーバラップして上書きします。このため，ある程度時間が経つと古いトレース情報がなくなります。このprf_file_sizeを大きくすることで，ファイルを上書きする時間を延長できます。

トレースファイルのサイズは次の式で求められます。

1ファイルサイズ=128＋(1トランザクションで必要なトレースデータ長※
×実行トランザクション数)

注※

1トランザクションで必要なトレースデータ長は，マニュアル「OpenTP1 運用と操作」を参照して計算してください。

なお，TP1/LiNKの終了時にprfトレースファイルのバックアップを取得します。バックアップファイルは，%DCDIR%¥spool¥save下に作成されます。prfトレースファイルのバックアップの対象となるファイルの一覧を次の表に示します。

表4-5　prfトレースファイルのバックアップの対象となるファイルの一覧

トレースファイル名称 | ファイル名 | バックアップファイル名※
性能検証用トレース情報のトレースファイル | prf_001，prf_002，prf_003 | prf_nnn.bk1，prf_nnn.bk2
TRNイベントトレースファイル | _tr_001，_tr_002，_tr_003 | _tr_nnn.bk1，_tr_nnn.bk2
NAMイベントトレースファイル | _nm_001，_nm_002，_nm_003 | _nm_nnn.bk1，_nm_nnn.bk2
XAR性能検証用トレース情報ファイル | _xr_001，_xr_002，_xr_003 | _xr_nnn.bk1，_xr_nnn.bk2
プロセスサービスイベントトレース | _pr_001，_pr_002，_pr_003 | _pr_nnn.bk1，_pr_nnn.bk2
FILイベントトレース情報ファイル | _fl_001，_fl_002，_fl_003 | _fl_nnn.bk1，_fl_nnn.bk2

注※

nnn：各トレースファイルのファイル名に対応した値です。

各トレースファイルの詳細については，マニュアル「OpenTP1 解説」を参照してください。

(4)　TRNイベントトレース定義の変更

形式

set prf_file_size = トレースファイルのサイズ
　　～〈符号なし整数〉((1024～1048576))《1024》（単位：キロバイト）

説明

TRNイベントトレース情報のトレースファイルのサイズを指定します。

TRNイベントトレース情報は，3世代分用意され，3世代すべてを使用したらオーバラップして上書きします。このため，ある程度時間が経つと古いトレース情報がなくなります。prf_file_sizeオペランドを大きくすることで，ファイルを上書きする時間を延長できます。

トランザクション実行中に取得するトレースファイルの1ファイルサイズの算出式を，次に示します。

1ファイルサイズ※=128＋（12×アクセスするリソースマネージャ数
×320×実行トランザクション数）

注※

2相コミットのトランザクションの場合，1トランザクションブランチ当たりに取得するトレース量は「12×アクセスするリソースマネージャ数」です。ただし，トレース量は，ユーザサーバにリンケージされているXAインタフェースオブジェクトファイルや，トランザクションの最適化などの条件によって異なります。

(5)　XAリソースサービス定義の変更

形式

set xar_prf_trace_level = XAR性能検証用トレース情報の取得レベル
　　～((00000000～00000003))《00000003》

説明

XAR性能検証用トレースの取得レベルを指定します。複数の取得レベルを指定したい場合は，それぞれの指定値の論理和を指定してください。

XAR性能検証用トレースの詳細については，マニュアル「OpenTP1 解説」の障害の原因解析の説明を参照してください。

00000000

XAR性能検証用トレースを取得しません。

00000001

アプリケーションサーバからのトランザクション要求の入り口および出口で，トレース（イベントIDが0x4a00から0x4a0fまで）を取得します。

00000002

TP1/LiNKのトランザクション処理の入り口および出口で，トレース（イベントIDが0x4b00から0x4b0fまで）を取得します。

取得したトレースをファイル出力または編集出力するには，prfgetコマンドまたはprfedコマンドを使用します。ファイルの出力結果は，%DCDIR%¥spool¥dcxarinfに保存されます。

prfgetコマンド，prfedコマンド，およびイベントIDの詳細については，マニュアル「OpenTP1 運用と操作」を参照してください。

(6)　XAR性能検証用トレース定義の変更

形式

set prf_file_size = XAR性能検証用トレース情報ファイルのサイズ
　　～〈符号なし整数〉((1024～1048576))《10240》（単位：キロバイト）

説明

XAR性能検証用トレース情報ファイルのサイズを指定します。

XAR性能検証用トレース情報は，3世代分用意され，3世代すべてを使用したらオーバラップして上書きします。このため，ある程度時間がたつと古いトレース情報がなくなります。prf_file_sizeオペランドを大きくすることで，ファイルを上書きする時間を延長できます。

トランザクション実行中に取得するトレースファイルの1ファイルサイズの算出式を，次に示します。

1ファイルサイズ※=128＋(384×(4＋1トランザクションで実行するRPCコール回数)×実行トランザクション数)

注※

トレース量は，トランザクションの最適化などの条件によって異なります。

(7)　プロセスサービス定義の変更

形式

set prc_prf_trace = Y|N
　　～《Y》

説明

プロセスサービスのイベントトレースを取得するかどうかを指定します。

Y

プロセスサービスのイベントトレースを取得します。

N

プロセスサービスのイベントトレースを取得しません。

このオペランドでYを指定した場合，プロセスサービスの動作を検証するためのイベントトレースが取得されます。

イベントIDの詳細については，マニュアル「OpenTP1 運用と操作」を参照してください。

イベントトレースは次に示すファイルに取得されます。

0xb001～0xb003：%DCDIR%¥spool¥dcprfinfの下のトレースファイル

0xb010以降：%DCDIR%¥spool¥dcprcinfの下のトレースファイル

イベントトレースのうち，プロセスの生成と消滅については次に示すタイミングで情報が取得されます。

プロセス生成時に子プロセスで取得（イベントIDは0xb001）

プロセス消滅時に取得（イベントIDは0xb002）

プロセス生成時に親プロセスで取得（イベントIDは0xb003）

prfedコマンド実行時に-dオプションを指定すると，1.では生成したプロセスのサーバ名を，2.では消滅したIDとその終了状態を，また3.では生成したプロセスIDを，表示されるデータとして取得します。したがって，取得したトレース情報をprfedコマンドで出力する場合は，-dオプションを指定してください。

-dオプションを指定すると次のようにトレース情報が出力されます。

1.の場合

Offset  +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +a +b +c +d +e +f  ASCII_code
+0000  aa aa aa aa aa aa aa aa                          AAAAAAAA

aa：生成したプロセスのサーバ名（16進数字）

AAAAAAAA：生成したプロセスのサーバ名（ASCIIコード）

2.の場合

Offset  +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +a +b +c +d +e +f  ASCII_code
+0000  bb bb bb bb cc cc cc cc                          BBBBCCCC

bb：消滅したプロセスID（16進数字）

BBBB：消滅したプロセスID（ASCIIコード）

cc：消滅したプロセスの終了状態（16進数字）

CCCC：消滅したプロセスの終了状態（ASCIIコード）

3.の場合

Offset  +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +a +b +c +d +e +f  ASCII_code
+0000  dd dd dd dd                                      DDDD

dd：生成したプロセスID（16進数字）

DDDD：生成したプロセスID（ASCIIコード）

prfedコマンドの詳細については，マニュアル「OpenTP1 運用と操作」を参照してください。

(8)　rapリスナーサービス定義の変更

形式

set scs_prf_trace_level = リモートAPI機能での性能検証用トレース取得レベル
　　～〈符号なし整数〉((00000000～00000009))《00000001》

説明

リモートAPI機能での性能検証用トレースの取得レベルを指定します。指定した値が次に示すビットを含む場合，情報を取得します。性能検証用トレースの取得レベルを複数指定する場合，それぞれの指定値の論理和を指定してください。

00000000

リモートAPI機能での性能検証用トレースを取得しません。

00000001

イベントIDが0x5001～0x5008の性能検証用トレースを取得します。

00000008

イベントIDが0x5200，または0x5201の性能検証用トレースを取得します。

イベントIDの詳細については，マニュアル「OpenTP1 運用と操作」を参照してください。

なお，rapリスナーサービス定義を変更したあと，［RAPサービス環境］ウィンドウで，対象のRAPサービスの［RAPサービス環境設定］ダイアログボックスを開き，［上書き保存(V)］ボタンをクリックしてください。

4.4.2　マルチスケジューラ機能使用時の環境設定

マルチスケジューラ機能を使用する場合，サーバ側のスケジュールサービス定義（%DCDIR%¥conf¥SCDファイル）とユーザサーバのユーザサービス定義（%DCDIR%¥conf¥ユーザサーバ名）に定義コマンドを追加する必要があります。

＜この項の構成＞

(1)　スケジュールサービス定義の変更

(2)　ユーザサービス定義の変更

(3)　注意事項

(1)　スケジュールサービス定義の変更

形式

scdmulti 〔-m  マルチスケジューラデーモン数〕
        〔-p  ポート番号〕
        〔-g  マルチスケジューラグループ名〕
        〔-t〕

機能

マルチスケジューラ機能を提供するマルチスケジューラデーモンに関する情報を指定します。

オプション

●-m　マルチスケジューラデーモン数　　～〈符号なし整数〉((1～4096))《1》

マルチスケジューラデーモンのプロセス数を指定します。

このオプションで起動するプロセスは，-pオプションの指定値から順にポート番号が割り当てられます。

●-p　ポート番号　　～〈符号なし整数〉((5001～65535))

マルチスケジューラデーモンのベースとなるポート番号を指定します。

マルチスケジューラ機能では，このオプション指定値から「（-pオプション指定値）＋（-mオプション指定値）-1」までのポート番号を，順にマルチスケジューラデーモンに割り当てて起動します。

このオプションは，scdmulti定義コマンドを複数指定する場合，または［システム環境設定］ウィンドウの［スケジュールサービスのポート番号］欄にポート番号を指定する場合には省略できます。その場合，scdmulti定義コマンドがすでに実行されていれば，「直前のscdmulti定義コマンドで使用したポート番号＋1」がこのオプションの指定値となります。scdmulti定義コマンドがまだ実行されてなく，スケジュールサービス定義のscd_portオペランドが指定されていれば，「ポート番号の指定値＋1」の値をこのオプションの指定値とします。そのほかの場合は定義エラーとなります。

このオプションの指定値によって決定した各マルチスケジューラデーモンのポート番号が，他スケジューラデーモンのポート番号と重複した場合は，定義エラーとなります。

●-g　マルチスケジューラグループ名　　～〈1～8文字の識別子〉《scdmltgp》

scdmulti定義コマンドで起動されたマルチスケジューラデーモンのグループ名を指定します。

マルチスケジューラデーモンを複数グループに分け，グループ間のサービス要求メッセージ受信処理が競合しないようにする場合にだけ指定する必要があります。

このオプションを指定した場合，このscdmulti定義コマンドで起動されたマルチスケジューラデーモンにサービス要求をスケジューリングさせたいユーザサーバのユーザサービス定義（%DCDIR%¥conf¥ユーザサーバ名）で，scdmulti定義コマンドの-gオプションに，このオプションに指定したマルチスケジューラグループ名を指定する必要があります。詳細については，「4.4.2(2)　ユーザサービス定義の変更」を参照してください。

このオプションを省略した場合，"scdmltgp"が指定されたものとします。したがって，"scdmltgp"はマルチスケジューラグループ名として使用しないでください。

●-t

マルチスケジューラデーモンがサービス要求を受信したとき，かつ，自ノードのユーザサーバが高負荷状態のときに，マルチスケジューラ機能を使用していないほかのノードのユーザサーバ（ユーザサービス定義のscdmulti定義コマンドで，マルチスケジューラ機能を指定していないユーザサーバ）にサービス要求を一部，転送し負荷分散するかどうかを指定します。

自ノードのユーザサーバの閉塞などによって，スケジュールできない場合には，このオプションを指定しなくても，サービス要求が負荷分散されます。

このオプションを指定すると，マルチスケジューラ機能を使用していないユーザサーバへの負荷分散処理はマスタスケジューラデーモン経由になるため，マスタスケジューラデーモンに負荷が集中することがあります。

サービス要求の負荷分散が行われる条件を次の表に示します。

表4-6　サービス要求の負荷分散が行われる条件

scdmulti定義コマンドの-tオプションの指定
サーバの状態
サービス要求の負荷分散

ノードA
（サービス要求の転送元）
（マルチスケジューラ機能の指定あり）
ノードB
（サービス要求の転送先）
（マルチスケジューラ機能の指定なし）

指定あり
通常状態
通常状態
×

高負荷状態
×

スケジュールできない状態
×

高負荷状態
通常状態
○

高負荷状態
×

スケジュールできない状態
×

スケジュールできない状態
通常状態
○

高負荷状態
○

スケジュールできない状態
×※

指定なし
通常状態
通常状態
×

高負荷状態
×

スケジュールできない状態
×

高負荷状態
通常状態
×

高負荷状態
×

スケジュールできない状態
×

スケジュールできない状態
通常状態
○

高負荷状態
○

スケジュールできない状態
×※

（凡例）

○：サービス要求を負荷分散します。

×：サービス要求を負荷分散しません。

注※

ユーザサーバの閉塞が原因で，スケジュールできない状態の場合だけ，スケジュールサービスは，ユーザサーバがスケジュールできない状態であることを把握できます。

ユーザサーバの閉塞以外の原因（例：メッセージ格納バッファ不足）で，スケジュールできない状態の場合は，サービス要求の転送先からサービス要求元にエラーが通知されます。

(2)　ユーザサービス定義の変更

形式

scdmulti  〔-g  マルチスケジューラグループ名〕

機能

マルチスケジューラ機能を使用するTP1/LiNKのシステムで，該当するユーザサーバが使用するマルチスケジューラに関する情報を指定します。

オプション

●-g　マルチスケジューラグループ名　　～〈1～8文字の識別子〉《scdmltgp》

該当するユーザサーバが使用するマルチスケジューラグループの名称を指定します。

(3)　注意事項

マルチスケジューラデーモンが使用するポート番号は，必ず割り当てできるようにしてください。

-pオプションに指定するポート番号は，他プログラムで使用するウェルノウンポート番号と重複しない値で，かつ，OSが他プロセスに自動的に割り当てない値を指定してください。

マルチスケジューラデーモン起動時に，指定されたポート番号が割り当てられない場合は，スケジュールサービス開始処理をエラーとし，OpenTP1システムの起動を中止します。

マルチスケジューラデーモンは，OpenTP1のシステムサーバとして起動するため，全scdmulti定義コマンドの-mオプションの指定値の合計を，［システム環境設定］ウィンドウの［サーバ数］欄の［SUP(U)］に加える必要があります。指定値が不足した場合は，マスタスケジューラデーモンが「hm02102」，または「hm02301」でアボートします。

この定義コマンドは複数指定できます。ただし，-gオプションを省略したこの定義コマンドを複数指定した場合，または-gオプションに同一名称を指定したこの定義コマンドを複数指定した場合は，定義エラーとし，OpenTP1システムの起動を中止します。

クライアント側でサービス要求をマルチスケジューラ機能を使用してスケジューリングするかどうかを指定する場合，%DCDIR%¥conf¥ユーザサーバ名ファイルに次の定義を追加します。マルチスケジューラ機能を使用する場合，RPC発行元ユーザサーバで指定します。

set multi_schedule = Y

マルチスケジューラデーモンがすべてのOpenTP1システムで起動されていない場合は，マスタスケジューラデーモンにサービス要求を送信します。

OpenTP1システム内の同一サービスグループに，マルチスケジューラ機能を使用しているユーザサーバと，マルチスケジューラ機能を使用していないユーザサーバが混在する場合，マルチスケジューラ機能を使用したサービス要求は，マルチスケジューラ機能を使用しているユーザサーバに優先して負荷分散されます。

4.5　監査ログ機能使用時の設定

TP1/LiNKでは，TP1/Server Baseと同様に監査ログ機能を使用できます。TP1/LiNKで監査ログ機能を使用する場合に，必要な設定について説明します。

監査ログ機能の詳細については，マニュアル「OpenTP1 解説」またはマニュアル「OpenTP1 運用と操作」を参照してください。

＜この節の構成＞

4.5.1　監査ログ機能を使用するときの定義の変更

4.5.2　監査ログ機能を使用するときの実行環境の作成

4.5.3　監査イベントの出力情報（Windows版）

4.5.4　推奨する監査ログの取得項目

4.5.5　監査ログ機能を使用するときの注意事項

4.5.1　監査ログ機能を使用するときの定義の変更

監査ログ機能を使用する場合，次の定義ファイルにオペランドを追加する必要があります。

ログサービス定義（%DCDIR%¥conf¥LOGファイル）
log_audit_outオペランド
log_audit_pathオペランド
log_audit_sizeオペランド
log_audit_countオペランド
log_audit_messageオペランド

rapリスナーサービス定義（%DCDIR%¥conf¥GUIRAP¥RAPサービス名ファイル）
log_audit_out_suppressオペランド
log_audit_messageオペランド

ユーザサービスデフォルト定義（%DCDIR%¥conf¥USRRCファイル）
log_audit_out_suppressオペランド
log_audit_messageオペランド

ユーザサービス定義（%DCDIR%¥conf¥ユーザサーバ名ファイル）
log_audit_out_suppressオペランド
log_audit_messageオペランド

＜この項の構成＞

(1)　ログサービス定義の変更

(2)　rapリスナーサービス定義の変更

(3)　ユーザサービスデフォルト定義の変更

(4)　ユーザサービス定義の変更

(5)　log_audit_messageオペランドで指定できるメッセージIDと監査イベントの対応

(1)　ログサービス定義の変更

形式

set log_audit_out = Y|N
　　～《N》
set log_audit_path = 監査ログファイルの出力先フォルダ
　　～〈1～63文字のパス名〉《%DCDIR%¥auditlog》
set log_audit_size = 監査ログファイルの最大サイズ
　　～〈符号なし整数〉((1～2047))《10》（単位：メガバイト）
set log_audit_count = 監査ログファイルの最大数
　　～〈符号なし整数〉((1～256))《2》
set log_audit_message = 監査ログを取得する項目のメッセージID〔,監査ログを取得する項目のメッセージID〕・・・
　　～〈符号なし整数〉((33400～99999))

説明

●log_audit_out

監査ログ機能を使用するかどうかを指定します。

Y

監査ログ機能を使用します。

N

監査ログ機能を使用しません。

Yを指定したときだけ，以降で説明するオペランドの指定が有効になります。

●log_audit_path

監査ログ機能を使用する場合に，監査ログファイルを出力するフォルダを絶対パスで指定します。

絶対パスを指定する場合，次のことに注意してください。

共有ディスク上のフォルダは指定しないでください。

指定したパスを構成する各ディレクトリのアクセス権限は，Everyoneグループがフルアクセスできる権限が必要です。

監査ログファイルを格納できるディスク容量が必要です。

なお，最下層のフォルダは，dcauditsetupコマンドによって作成されますが，上位フォルダは事前に準備しておく必要があります。

監査ログファイルを格納するフォルダに必要なディスク容量の計算式を次に示します。

ディスク容量（単位：メガバイト）＝ 監査ログファイルの最大サイズ×監査ログファイルの最大数

このオペランドは，log_audit_outオペランドにYを指定した場合に有効です。

●log_audit_size

監査ログ機能を使用する場合に，監査ログファイルの最大サイズを指定します。監査ログファイルのサイズが指定値に達した場合には，出力先ファイルを切り替えます。

このオペランドは，log_audit_outオペランドにYを指定した場合に有効です。

●log_audit_count

監査ログ機能を使用する場合に，監査ログファイルの最大数を指定します。

監査ログの出力先ファイルを切り替える時点で，ファイル数（ログファイル数＋バックアップログファイル数）がこのオペランドの指定値を超える場合は，最も古いファイルが削除されます。

このオペランドの指定値とバックアップログファイル名の対応を次の表に示します。

1

バックアップログファイルは作成されません。

2～256

audit001.log～audit255.log

このオペランドの指定値が大きくなると，出力先ファイル切り替え時のオーバヘッドが大きくなるため注意してください。

このオペランドは，log_audit_outオペランドにYを指定した場合に有効です。

●log_audit_message

監査ログを取得する項目のメッセージIDを33400～99999の範囲で指定します。指定できるメッセージIDは最大2048個です。

このオペランドで指定できるメッセージIDについては，「(5)　log_audit_messageオペランドで指定できるメッセージIDと監査イベントの対応」を参照してください。

なお，このオペランドは，ユーザサービス定義，rapリスナーサービス定義，およびユーザサービスデフォルト定義でも指定できます。指定値の優先順位は次のとおりです（1.＞2.＞3.）。

ユーザサービス定義またはrapリスナーサービス定義

ユーザサービスデフォルト定義

ログサービス定義

このオペランドは，log_audit_outオペランドにYを指定した場合に有効です。

(2)　rapリスナーサービス定義の変更

形式

set log_audit_out_suppress = Y|N
　　～《N》
set log_audit_message = 監査ログを取得する項目のメッセージID〔,監査ログを取得する項目のメッセージID〕・・・
　　～〈符号なし整数〉((33400～99999))

説明

●log_audit_out_suppress

rapリスナーおよびrapサーバから出力される監査ログを抑止する場合に指定します。

Y

rapリスナーおよびrapサーバから出力される監査ログを抑止します。

N

rapリスナーおよびrapサーバから出力される監査ログを抑止しません。

このオペランドは，ログサービス定義のlog_audit_outオペランドにYを指定した場合だけ有効です。

●log_audit_message

TP1/LiNKが取得する監査ログのうち，rapリスナーサービス定義に指定できる監査ログのメッセージIDを指定します。指定できるメッセージIDは，最大2048個です。

このオペランドで指定できるメッセージIDについては，「(5)　log_audit_messageオペランドで指定できるメッセージIDと監査イベントの対応」を参照してください。

このオペランドを省略し，ユーザサービスデフォルト定義でも指定を省略した場合，ログサービス定義の値が仮定されます。このオペランドは，ログサービス定義のlog_audit_outオペランドにYを指定し，rapリスナーサービス定義のlog_audit_out_suppressオペランドにNを指定した場合に有効です。

なお，rapリスナーサービス定義を変更したあと，［RAPサービス環境］ウィンドウで，対象のRAPサービスの［RAPサービス環境設定］ダイアログボックスで，［上書き保存(V)］ボタンをクリックしてください。

(3)　ユーザサービスデフォルト定義の変更

形式

set log_audit_out_suppress = Y|N
　　～《N》
set log_audit_message = 監査ログを取得する項目のメッセージID〔,監査ログを取得する項目のメッセージID〕・・・
　　～〈符号なし整数〉((33400～99999))

説明

●log_audit_out_suppress

ユーザサービス定義のlog_audit_out_suppressオペランドの指定を省略したときに設定される値を指定します。

●log_audit_message

ユーザサービス定義のlog_audit_messageオペランドの指定を省略したときに設定される値を指定します。

このオペランドで指定できるメッセージIDについては，「(5)　log_audit_messageオペランドで指定できるメッセージIDと監査イベントの対応」を参照してください。

(4)　ユーザサービス定義の変更

形式

set log_audit_out_suppress = Y|N
　　～《N》
set log_audit_message = 監査ログを取得する項目のメッセージID〔,監査ログを取得する項目のメッセージID〕・・・
　　～〈符号なし整数〉((33400～99999))

説明

●log_audit_out_suppress

このユーザサーバから出力される監査ログを抑止する場合に指定します。

Y

このユーザサーバから出力される監査ログを抑止します。

N

このユーザサーバから出力される監査ログを抑止しません。

このオペランドは，ログサービス定義のlog_audit_outオペランドにYを指定した場合だけ有効です。

●log_audit_message

監査ログを取得する項目のメッセージIDの番号を33400～99999の範囲で指定します。指定できるメッセージIDは最大2048個です。

次に示す監査ログを取得する項目のメッセージIDを指定できます。

TP1/LiNKが取得する監査ログのうちユーザサービス定義に指定できる監査ログのメッセージID

UAPで任意に取得する監査ログのメッセージID

このオペランドで指定できるメッセージIDについては，「(5)　log_audit_messageオペランドで指定できるメッセージIDと監査イベントの対応」を参照してください。

このオペランドを省略し，ユーザサービスデフォルト定義でもlog_audit_outオペランドの指定を省略した場合，ログサービス定義の値が仮定されます。

このオペランドは，ログサービス定義のlog_audit_outオペランドにYを指定し，ユーザサービス定義のlog_audit_out_suppressオペランドにNを指定した場合に有効です。

(5)　log_audit_messageオペランドで指定できるメッセージIDと監査イベントの対応

log_audit_messageオペランドで指定できるメッセージIDと，監査イベントの対応を次の表に示します。

表4-7　log_audit_messageオペランドで指定できるメッセージIDと監査イベントの対応

監査イベント | log_audit_messageオペランドを指定する定義 | メッセージID
ログサービス定義 | ユーザサービス定義 | rapリスナーサービス定義
TP1/LiNK開始 | ○ | － | － | KFCA33400-I
TP1/LiNK待機状態 | ○ | － | － | KFCA33401-I
TP1/LiNK正常終了 | ○ | － | － | KFCA33402-I
TP1/LiNK異常終了 | ○ | － | － | KFCA33403-E
プロセスサービスの重大なエラー | ○ | － | － | KFCA33404-E
ユーザサーバ開始 | ○ | － | － | KFCA33405-I
ユーザサーバ正常終了 | ○ | － | － | KFCA33406-I
ユーザサーバ異常終了 | ○ | － | － | KFCA33407-E
ユーザサーバ閉塞 | ○ | － | － | KFCA33408-I
ユーザサーバのサービス閉塞 | ○ | － | － | KFCA33409-I
クライアントユーザ認証成功 | ○ | － | － | KFCA33410-I
クライアントユーザ認証失敗 | ○ | － | － | KFCA33411-W
サービス関数の実行開始 | ○ | ○ | ○ | KFCA33412-I
サービス関数の実行完了 | ○ | ○ | ○ | KFCA33413-I
不正な電文の破棄 | ○ | ○ | ○ | KFCA33414-W
RPCの呼び出し完了 | ○ | ○ | ○ | KFCA33415-I
RPC応答の受信（dc_rpc_poll_any_replies関数の使用時） | ○ | ○ | － | KFCA33416-I
rapの不正な電文の破棄 | ○ | － | ○ | KFCA33417-W
TP1/LiNKファイルシステムに対するアクセスエラー | ○ | ○ | ○ | KFCA33418-W※¹
コマンドの実行※² | ○ | － | － | KFCA33419-I
サービス開始※³ | ○ | － | － | KFCA33420-I
サービス停止※³ | ○ | － | － | KFCA33421-I
UAPからユーザが任意に取得する監査ログの取得 | ○ | ○ | － | KFCA34000-x～KFCA34999-x※⁴

（凡例）

○：指定できます。

－：指定できません（指定しても無効です）。

注※1

ステータスサーバ開始時に出力される次のメッセージ（自由記述）が出力されても正常動作のため，問題はありません。

The process of the user SYSTEM failed to access the OpenTP1 file system. (proc = Init, rc = -1534)

The process of the user SYSTEM failed to access the OpenTP1 file system. (proc = Open, rc = -1535)

注※2

GUI経由で実行された場合も含みます。

注※3

TP1/LiNK固有の監査イベントです。

監査イベントの出力情報については，「4.5.3　監査イベントの出力情報（Windows版）」を参照してください。

注※4

KFCA34000-x～KFCA34999-xは，UAPで任意の監査ログを取得する場合に，監査ログに対して割り当てられるメッセージIDです。xにはdc_log_audit_print関数で指定したメッセージの種類（E，WまたはI）が入ります。

4.5.2　監査ログ機能を使用するときの実行環境の作成

監査ログ機能を使用するときの実行環境の作成方法について説明します。

＜この項の構成＞

(1)　監査ログ機能に必要なフォルダとファイルの作成

(2)　実行環境を作成したあとの定義の変更

(1)　監査ログ機能に必要なフォルダとファイルの作成

監査ログ機能を使用するために必要なフォルダとファイルを作成します。フォルダとファイルを作成するために，dcauditsetupコマンドを実行します。このコマンドを実行すると，次のフォルダとファイルが作成されます。

表4-8　dcauditsetupコマンドの実行時に作成されるフォルダとファイル

フォルダとファイル | 内容
%DCDIR%¥auditlog※ | 監査ログファイルを格納するフォルダ
%DCDIR%¥auditlog¥audit.log※ | 監査ログファイル

注※

ログサービス定義のlog_audit_pathオペランドの指定を省略した場合のフォルダです。log_audit_pathオペランドを指定した場合，指定したフォルダが作成され，作成されたフォルダ下にファイルが作成されます。

なお，作成されるフォルダは最下層だけです。上位のフォルダは事前に準備しておく必要があります。

(2)　実行環境を作成したあとの定義の変更

実行環境を作成したあとに監査ログについての定義を変更する手順を次に示します。

TP1/LiNKを停止します。

定義を変更します。

dcauditsetupコマンドを実行します。

TP1/LiNKを起動します。

4.5.3　監査イベントの出力情報（Windows版）

Ｗindows版TP1/Server BaseとTP1/LiNKでは，マニュアル「OpenTP1 運用と操作」で説明している監査イベントの出力情報に加え，次の表に示す監査イベントが出力されます。なお，Ｗindows版TP1/Server BaseとTP1/LiNKでは，監査ログで出力するサブジェクト識別情報のユーザ名はプロセスの実行アカウントとなります。サーバプロセスのユーザ名はサービスログオンアカウント（デフォルトはSYSTEM）となります。

UNIX版TP1/Server Baseと共通の監査イベントの出力情報については，マニュアル「OpenTP1 運用と操作」を参照してください。

表4-9　監査イベントの出力情報

監査イベント | 監査イベントの出力情報
出力項目名 | 出力内容
サービス開始 | メッセージID（msgid） | KFCA33420-I
コンポーネント（compid） | nts
監査事象種別（ctgry） | StartStop
監査事象結果（result） | Success
サブジェクト識別情報（subj:（euid，pid）） | サービスログオンアカウント
オブジェクト（obj） | サービス名（Windowsのサービス名称）
動作情報（op） | Start
オブジェクトロケーション情報（objloc） | －
リクエスト送信元ホスト（from:ipv4） | －
リクエスト送信元ポート番号（from:port） | －
リクエスト送信先ホスト（to:ipv4） | －
リクエスト送信先ポート番号（to:port） | －
ログメッセージサイズ（単位：バイト） | 268＋2×(a＋b)
サービス停止 | メッセージID（msgid） | KFCA33421-I
コンポーネント（compid） | nts
監査事象種別（ctgry） | StartStop
監査事象結果（result） | Success
サブジェクト識別情報（subj:（euid，pid）） | サービスログオンアカウント
オブジェクト（obj） | サービス名（Windowsのサービス名称）
動作情報（op） | Stop
オブジェクトロケーション情報（objloc） | －
リクエスト送信元ホスト（from:ipv4） | －
リクエスト送信元ポート番号（from:port） | －
リクエスト送信先ホスト（to:ipv4） | －
リクエスト送信先ポート番号（to:port） | －
ログメッセージサイズ（単位：バイト） | 259＋2×(a＋b)

（凡例）

－：該当しません。

a：サブジェクト識別情報に出力される値の文字数

b：オブジェクト情報に出力される値の文字数

4.5.4　推奨する監査ログの取得項目

監査ログを大量に取得すると性能劣化を招くため，必要な項目だけを取得するようにしてください。推奨する監査ログの取得項目を次に示します。

TP1/LiNKの開始，終了などに関する監査ログ（KFCA33400-I～KFCA33404-E）

コマンド実行に関する監査ログ（KFCA33419-I）

ユーザサーバで任意に取得した監査ログ（KFCA34000-x～KFCA34999-x）
ユーザサーバで監査ログを取得する場合は，まず動作履歴を残したいユーザサーバを絞り込んでください。
ユーザサーバプログラムを修正できない場合は，サービス関数の実行開始（KFCA33412-I），または実行完了（KFCA33413-I）のどちらかの監査ログを取得することで，ユーザサーバプログラムへのアクセス記録を管理できます。

ログサービス定義に，推奨する監査ログの取得項目を指定した例を次に示します。

ログサービス定義のlog_audit_messageオペランドの指定

set log_audit_message = 33400,33401,33402,33403,33404,33419

監査ログを出力するユーザサーバのユーザサービス定義

set log_audit_message=34000

なお，定義の1行の最大長は80バイトです。1行の最大長を超えて指定する場合は，複数行に分けて記述してください。このとき，行の末尾に継続記号¥を記述します。記述記号¥の後ろには，何も記述しないでください。

4.5.5　監査ログ機能を使用するときの注意事項

事前に性能評価を実施してから使用することを推奨します。監査ログを大量に取得すると性能劣化を招くため，必要な項目だけを取得するようにしてください。

ログサービス定義のlog_audit_messageオペランドの指定値を変更した場合は，dcauditsetupコマンドを実行してください。TP1/LiNKを再インストールした場合にも，dcauditsetupコマンドを実行してください。

5.　TP1/LiNKの運用

この章では，TP1/LiNKの開始方法と終了方法，およびTP1/LiNKを操作する方法について説明します。また，TP1/LiNKのサンプルについても説明します。

＜この章の構成＞

5.1　TP1/LiNKの開始

5.2　TP1/LiNKの終了

5.3　ユーザサーバの操作

5.4　TP1/LiNKの各種操作

5.5　リモートAPI機能の使い方

5.6　TP1/LiNKの連続運転に関する運用

5.7　マルチOpenTP1の運用

5.8　JP1連携時の運用（JP1/Base，JP1/AJS，およびJP1/AJS2 - Scenario Operation）

5.9　JP1連携時の運用（PFM - Agent for OpenTP1）

5.10　TP1/LiNKのサンプル

5.1　TP1/LiNKの開始

TP1/LiNKを開始する方法について説明します。

＜この節の構成＞

5.1.1　TP1/LiNKの開始形態

5.1.2　TP1/LiNKを開始するには

5.1.1　TP1/LiNKの開始形態

TP1/LiNKの開始形態について説明します。TP1/LiNKは，必ずOpenTP1管理者が開始してください。

＜この項の構成＞

(1)　開始形態の種類

(2)　再開始（リラン）をする設定

(3)　必ず正常開始で開始する場合

(1)　開始形態の種類

TP1/LiNKの開始形態には，次の二つがあります。

(a)　正常開始

新しくTP1/LiNKを開始することを正常開始といいます。前回の業務が終了したときの状態を何も引き継がない開始形態です。

(b)　再開始（リラン）

前回の業務が終了したときの状態を引き継いで開始することを再開始（リラン）といいます。TP1/LiNKを再開始（リラン）すると，次の二つの内容を引き継いで開始します。

ユーザサーバの閉塞状態：前回の運用中に異常終了によって閉塞したユーザサーバがあると，再開始後も閉塞されたままとなります。

ユーザサーバの構成：前回の業務での定義設定がそのまま引き継がれます。

TP1/LiNKの運用では，通常は再開始（リラン）で開始します。初めてTP1/LiNKを使うときや前回の運用でトラブルが起こって停止したときは，正常開始で開始します。

(2)　再開始（リラン）をする設定

［システム環境設定］ウィンドウの［トランザクション機能］欄にある［APの状態引き継ぎ(A)］チェックボックスをオンにしておきます。オンにしていない場合は，再開始（リラン）とはならないで正常開始となります。

(3)　必ず正常開始で開始する場合

次に示す場合，TP1/LiNKは正常開始で開始します。

TP1/LiNKを組み込んだ直後

また，次に示す場合，正常開始の操作でTP1/LiNKを開始してください。

TP1/LiNKのシステム環境設定を変更したあと

前回の業務を引き継がないで，TP1/LiNKを開始する場合

5.1.2　TP1/LiNKを開始するには

TP1/LiNKはWindowsを起動したときに自動的に開始することも，Windowsの稼働中にオペレータの操作で開始することもできます。TP1/LiNKを開始する方法を次に示します。

自動起動

Windowsを起動したときに自動的にTP1/LiNKを開始する方法です。

手動起動

Windowsの稼働中にTP1/LiNKをオペレータの操作で開始する方法です。

TP1/LiNKの自動起動と手動起動の概要を次の図に示します。

図5-1　TP1/LiNKの自動起動と手動起動

＜この項の構成＞

(1)　TP1/LiNKの自動起動

(2)　TP1/LiNKの手動起動

(1)　TP1/LiNKの自動起動

Windowsの起動と一緒にTP1/LiNKを自動起動する場合は，TP1/LiNKをセットアップするときに，自動起動の指定をしておきます。

セットアップが完了したあとでも，自動起動するかどうかを変更できます。変更するときは，［コントロールパネル］ウィンドウの［サービス］でTP1/LiNKのスタートアップ種別を変更します。

(2)　TP1/LiNKの手動起動

手動起動でTP1/LiNKを開始する方法には，次の四つがあります。

TP1/LiNKのウィンドウを操作して開始する方法

［管理ツール］ウィンドウの［サービス］を使って開始する方法

ntbstartコマンドを使って開始する方法

net startコマンドを使って開始する方法

それぞれの方法を説明します。

(a)　TP1/LiNKのウィンドウを操作して開始する方法

［TP1_LiNKコントロール］メニューを選択すると，［TP1/LiNKコントロール］ウィンドウが表示されます。このウィンドウにあるボタンをクリックして開始します。開始するときは，次のどちらかを選択できます。

再開始（リラン）で開始するとき

［TP1/LiNKコントロール］ウィンドウの［起動(S)］ボタンをクリックします。前回の業務が終了したときの状態を引き継いで，TP1/LiNKを開始します。

正常開始で開始するとき

［TP1/LiNKコントロール］ウィンドウの［正常開始(N)］チェックボックスをオンにしてから［起動(S)］ボタンをクリックします。前回の業務が終了したときの状態を引き継がないで，TP1/LiNKを開始します。

(b)　［管理ツール］ウィンドウの［サービス］を使って開始する方法

TP1/LiNKを［サービス］から開始する手順を示します。

［管理ツール］ウィンドウの［サービス］をダブルクリックします。

［サービス］に表示されている候補から，TP1/LiNKを選択します。

右クリックして［プロパティ］を選択します。

［全般］タブで［開始］ボタンをクリックします。

TP1/LiNKを強制的に正常開始させたいときは，［開始パラメータ］にnormalを指定してください。［開始パラメータ］に何も指定しないで開始した場合は，再開始（リラン）で開始します。

(c)　ntbstartコマンドを使って開始する方法

TP1/LiNKをntbstartコマンドを使って開始する手順を示します。

［スタート］－［プログラム］－［アクセサリ］から［コマンドプロンプト］を選択します。

［コマンドプロンプト］で「ntbstart」と入力します。

ntbstartコマンドの詳細については，「7.　運用コマンド」の「ntbstart（TP1/LiNKの開始）」を参照してください。

(d)　net startコマンドを使って開始する方法

TP1/LiNKをnet startコマンドを使って開始する手順を示します。

［スタート］－［プログラム］－［アクセサリ］から［コマンドプロンプト］を選択します。

［コマンドプロンプト］で「net start TP1LiNK」と入力します。

net startコマンドの詳細については，OSのマニュアルを参照してください。

なお，TP1/LiNKのサービス名は，「TP1LiNK」または「TP1/LiNK」となります。

5.2　TP1/LiNKの終了

TP1/LiNKを終了する方法について説明します。

＜この節の構成＞

5.2.1　TP1/LiNKの終了形態

5.2.2　TP1/LiNKを終了するには

5.2.1　TP1/LiNKの終了形態

TP1/LiNKの終了形態について説明します。TP1/LiNKは，必ずOpenTP1管理者が終了してください。

＜この項の構成＞

(1)　終了形態の種類

(2)　トラブルによって停止する場合

(1)　終了形態の種類

TP1/LiNKの終了形態には，次の二つがあります。

(a)　停止

TP1/LiNKを終了させることを停止といいます。停止する操作をすると，TP1/LiNKはクライアントからのサービス要求を受け付けなくなります。そして，すでに受け取っているスケジュール待ちのサービス要求をすべて処理してから，TP1/LiNKは終了します。

なお，TP1/LiNKの停止は，TP1/Server BaseのOpenTP1終了モードの「計画停止A」に相当します。

(b)　強制停止

業務の都合によって，TP1/LiNKを強制的に停止させることを強制停止といいます。強制停止する操作をすると，TP1/LiNKはクライアントからのサービス要求を受け付けなくなります。そして，すでに受け取っているスケジュール待ちのサービス要求をすべて破棄して，TP1/LiNKはすぐに停止します。

(2)　トラブルによって停止する場合

トラブルが起こって，TP1/LiNKが停止してしまうことを異常終了といいます。すでに受け取っているスケジュール待ちのサービス要求はすべて破棄されます。

TP1/LiNKが異常終了した場合，自動起動されます。

10分内に3回連続でTP1/LiNKが異常終了した場合，KFCA00715-Eのエラーメッセージを出力して，システムの開始または再開始を中断します。この場合は，システムダウンした要因を取り除いてから，手動で開始または再開始してください。

net stopコマンドを含むWindowsのサービスでTP1/LiNKを停止した場合に，何らかの原因でTP1/LiNKを停止できないときは，再び停止要求をします。この停止もできない場合は，強制停止によって停止します。

TP1/LiNKの停止処理が1時間経過しても終了しない場合は，KFCA01864-Eのエラーメッセージを出力して，強制停止によって停止します。この場合，アボートコードWnts01で各サーバプロセスを異常終了させます。このとき再停止要求は拒否され，KFCA01869-Eのエラーメッセージが出力されます。

5.2.2　TP1/LiNKを終了するには

手動起動でTP1/LiNKを終了する方法には，次の四つがあります。

TP1/LiNKのウィンドウを操作して終了する方法

［管理ツール］ウィンドウの［サービス］を使って終了する方法

dcstopコマンドを使って終了する方法

net stopコマンドを使って終了する方法

それぞれの方法を説明します。

＜この項の構成＞

(1)　TP1/LiNKのウィンドウを操作して終了する方法

(2)　［管理ツール］ウィンドウの［サービス］を使って終了する方法

(3)　dcstopコマンドを使って終了する方法

(4)　net stopコマンドを使って終了する方法

(1)　TP1/LiNKのウィンドウを操作して終了する方法

［TP1_LiNKコントロール］メニューを選択すると，［TP1/LiNKコントロール］ウィンドウが表示されます。このウィンドウにあるボタンをクリックして終了します。

終了するときは，次のどちらかを選択します。

停止するとき

［TP1/LiNKコントロール］ウィンドウの［停止(T)］ボタンをクリックします。

強制停止するとき

［TP1/LiNKコントロール］ウィンドウの［強制停止(O)］ボタンをクリックします。

［停止(T)］ボタンをクリックしてもTP1/LiNKが終了しないときは，［強制停止(O)］ボタンをクリックして強制停止してください。

(2)　［管理ツール］ウィンドウの［サービス］を使って終了する方法

TP1/LiNKを［管理ツール］ウィンドウの［サービス］から終了する手順を示します。

［管理ツール］ウィンドウの［サービス］をダブルクリックします。

［サービス］に表示されている候補から，TP1/LiNKを選択します。

右クリックして［プロパティ］を選択します。

［全般］タブで［停止］ボタンをクリックします。

(3)　dcstopコマンドを使って終了する方法

TP1/LiNKをdcstopコマンドを使って終了する手順を示します。

［スタート］－［プログラム］－［アクセサリ］から［コマンドプロンプト］を選択します。

［コマンドプロンプト］で「dcstop -a」と入力します。

dcstopコマンドの詳細については，マニュアル「OpenTP1 運用と操作」のコマンド文法の説明を参照してください。

(4)　net stopコマンドを使って終了する方法

TP1/LiNKをnet stopコマンドを使って終了する手順を示します。

［スタート］－［プログラム］－［アクセサリ］から［コマンドプロンプト］を選択します。

［コマンドプロンプト］で「net stop TP1LiNK」と入力します。

net stopコマンドの詳細については，OSのマニュアルを参照してください。

なお，TP1/LiNKのサービス名は，「TP1LiNK」または「TP1/LiNK」となります。

5.3　ユーザサーバの操作

TP1/LiNKでは，ユーザサーバ単位で開始したり終了したりできます。TP1/LiNKのユーザサーバの開始方法と終了方法について説明します。

＜この節の構成＞

5.3.1　ユーザサーバの開始

5.3.2　ユーザサーバの終了

5.3.3　TP1/LiNK稼働中のユーザサーバの操作

5.3.1　ユーザサーバの開始

ユーザサーバは，TP1/LiNKを開始したときに自動的に開始することも，TP1/LiNKの稼働中にオペレータの操作で開始することもできます。

ユーザサーバを開始する方法を次に示します。

自動起動

TP1/LiNKを開始したときに，事前に設定した順位に従って自動的に起動する方法です。

手動起動

TP1/LiNKの稼働中にオペレータの操作で開始する方法です。

ユーザサーバの自動起動と手動起動を次の図に示します。

図5-2　ユーザサーバの自動起動と手動起動

＜この項の構成＞

(1)　ユーザサーバの自動起動（TP1/LiNKを開始したときにユーザサーバも開始）

(2)　ユーザサーバの手動起動（TP1/LiNKの稼働中にユーザサーバを開始）

(1)　ユーザサーバの自動起動（TP1/LiNKを開始したときにユーザサーバも開始）

TP1/LiNKを開始する前に，［SPP環境設定］ダイアログボックスまたは［SUP環境設定］ダイアログボックスで，ユーザサーバをTP1/LiNKと一緒に開始するよう，指定（自動起動の指定）しておきます。自動起動するかどうかは，ユーザサーバごとに指定します。

TP1/LiNKにユーザサーバを登録した直後の初期値では，自動起動ではなく手動起動するように設定されています。ユーザサーバをTP1/LiNKと一緒に開始したい場合は，自動起動に変更してください。

自動起動を指定したユーザサーバには，自動起動の順位もあわせて指定します。順位を指定するときは，サービスを要求されるユーザサーバが先に起動するように指定してください。自動起動の順位を設定する方法については，「3.2.4　自動起動の設定」を参照してください。

(2)　ユーザサーバの手動起動（TP1/LiNKの稼働中にユーザサーバを開始）

自動起動で開始していないユーザサーバを，TP1/LiNKの稼働中に開始できます。開始する場合は，［アプリケーション管理SPP］メニューまたは［アプリケーション管理SUP］メニューを選択します。

メニューを選択すると，［TP1/LiNKアプリケーション管理SPP］ウィンドウまたは［TP1/LiNKアプリケーション管理SUP］ウィンドウが開くので，次に示すどちらかの操作をします。

ユーザサーバ名を選択して，［起動(S)］ボタンをクリックする。

ユーザサーバ名をダブルクリックする。

［TP1/LiNKアプリケーション管理SPP］ウィンドウの操作方法については，「6.2　アプリケーション管理（SPP）」を，［TP1/LiNKアプリケーション管理SUP］ウィンドウの操作方法については，「6.3　アプリケーション管理（SUP）」を参照してください。

5.3.2　ユーザサーバの終了

ユーザサーバを終了する方法について説明します。ユーザサーバが終了するのは，次に示す場合です。

TP1/LiNKが終了したとき

TP1/LiNKの稼働中に，ユーザサーバを終了させるボタンをクリックしたとき

ユーザサーバにトラブルが起こったとき

＜この項の構成＞

(1)　ユーザサーバの終了形態

(2)　ユーザサーバの終了状態とTP1/LiNKの終了との関係

(1)　ユーザサーバの終了形態

ユーザサーバの終了形態は，次の三つです。

(a)　正常終了

TP1/LiNKの正常終了または［TP1/LiNKアプリケーション管理］ウィンドウの［停止(T)］ボタンをクリックしてユーザサーバを正常に終了させることを，正常終了といいます。

ユーザサーバを終了させる操作をすると，ユーザサーバはクライアントからのサービス要求を受け付けなくなります。そして，すでに受け取っているスケジュール待ちのサービス要求をすべて処理してから，ユーザサーバは終了します。

(b)　強制停止

業務の都合で，［TP1/LiNKアプリケーション管理］ウィンドウの［強制停止(O)］ボタンをクリックしてユーザサーバを強制的に終了させることを，強制停止といいます。

ユーザサーバを強制停止させると，ユーザサーバはクライアントからのサービス要求を受け付けなくなります。そして，すでに受け取っているスケジュール待ちのサービス要求をすべて破棄して，ユーザサーバはすぐに停止します。サービスの応答を待っているクライアントには，エラーを報告します。

(c)　異常終了

ユーザサーバにトラブルが起こって停止してしまうことを，異常終了といいます。すでに受け取いるスケジュール待ちのサービス要求をすべて破棄して，ユーザサーバはすぐに終了します。サービスの応答を待っているクライアントには，エラーを報告します。

(2)　ユーザサーバの終了状態とTP1/LiNKの終了との関係

ユーザサーバを強制停止させたままでは，TP1/LiNKは正常終了できません。この場合は，ユーザサーバをもう一度開始して正常終了させたあとで，TP1/LiNKを正常終了させてください。

強制停止させたユーザサーバを開始できないときは，TP1/LiNKを強制停止させてください。

5.3.3　TP1/LiNK稼働中のユーザサーバの操作

開始したユーザサーバは，業務に応じて次の操作ができます。

サーチパスの変更（SPP，SUP）

TP1/LiNK稼働中のユーザサーバの入れ替え（SPP，SUP）

スケジュール状態の表示（SPP）

スケジュールの閉塞（SPP）

RAPサービスの操作

RAPサービスもユーザサーバ（SUP）と同様に操作できます。RAPサービスを操作するときは［TP1/LiNKアプリケーション管理SUP］ウィンドウを使います。

この項では，SUPとRAPサービスをSUPに統一して説明します。RAPサービスを操作するときは，SUPをRAPサービスに読み替えてください。

ここでは，開始したユーザサーバの操作について説明します。説明中のウィンドウおよびダイアログボックスの操作方法については，「6.　ウィンドウの操作」を参照してください。

ユーザサーバを操作する場合は，［アプリケーション管理SPP］メニューまたは［アプリケーション管理SUP］メニューでウィンドウを開きます。アプリケーションの種類に応じて，どちらかのメニューを選択してください。

＜この項の構成＞

(1)　ユーザサーバのサーチパスを変更できます

(2)　TP1/LiNKの稼働中にユーザサーバを入れ替えることができます

(3)　ユーザサーバのスケジュールの状態を表示できます

(4)　ユーザサーバのスケジュールを閉塞できます

(1)　ユーザサーバのサーチパスを変更できます

ユーザサーバのサーチパスとコマンドのサーチパスは，初期値がそれぞれ%DCDIR%¥aplib¥と%DCDIR%¥bin¥になっています。業務の都合でユーザサーバを格納するフォルダのパスを変更したい場合は，初期値以外のパス名に変更できます。

サーチパスを変更するときは，［TP1/LiNKアプリケーション管理SPP］ウィンドウまたは［TP1/LiNKアプリケーション管理SUP］ウィンドウの［プログラムのサーチパス(P)...］ボタンをクリックして［TP1/LiNKサーチパス］ダイアログボックスを開きます。

サーチパスを変更する方法については，「3.2.3　サーチパスの設定」を参照してください。

(2)　TP1/LiNKの稼働中にユーザサーバを入れ替えることができます

TP1/LiNKの稼働中にユーザサーバを入れ替える手順を次に示します。

［TP1/LiNKアプリケーション管理SPP］ウィンドウまたは［TP1/LiNKアプリケーション管理SUP］ウィンドウを開いて，入れ替える前のユーザサーバを停止します。

ユーザサーバを入れ替えます。

［TP1/LiNKアプリケーション管理SPP］ウィンドウまたは［TP1/LiNKアプリケーション管理SUP］ウィンドウを開いて，入れ替えたあとのユーザサーバを起動します。

現在稼働しているユーザサーバと同じ名称のユーザサーバを別のフォルダ下に作成して，入れ替える手順を次に示します。

［TP1/LiNKアプリケーション管理SPP］ウィンドウまたは［TP1/LiNKアプリケーション管理SUP］ウィンドウを開いて，入れ替える前のユーザサーバを停止します。

ウィンドウの［プログラムのサーチパス(P)...］ボタンをクリックして［TP1/LiNKサーチパス］ダイアログボックスを開きます。このダイアログボックスでサーチパスを変更します。

［TP1/LiNKアプリケーション管理SPP］ウィンドウまたは［TP1/LiNKアプリケーション管理SUP］ウィンドウを開いて，入れ替えたあとのユーザサーバを起動します。

ユーザサーバを入れ替えたあとにTP1/LiNKが異常終了して再開始（リラン）した場合は，変更したサーチパスは無効になり，入れ替える前のユーザサーバが起動されます。

(3)　ユーザサーバのスケジュールの状態を表示できます

SPPがTP1/LiNKによってどのようにスケジュールされているかを表示できます。

スケジュールの状態を表示するときは，［TP1/LiNKアプリケーション管理SPP］ウィンドウの［最新情報に更新(L)］ボタンをクリックします。

ユーザサーバのスケジュール状態を表示する操作方法については，「6.2　アプリケーション管理（SPP）」を参照してください。

(4)　ユーザサーバのスケジュールを閉塞できます

トラブルが起こったときや，実行形式ファイルを入れ替えるためにSPPを停止したいときには，スケジュールを閉塞します。

スケジュールを閉塞した時点で，閉塞したSPPに対するクライアントからのサービス要求はエラーとなります。また，すでに受け取っているスケジュール待ちのサービス要求も，クライアントにエラーを報告します。

スケジュールを閉塞するときは，［TP1/LiNKアプリケーション管理SPP］ウィンドウの［閉塞(D)］ボタンをクリックします。閉塞したSPPのスケジュールを再開するときは，［閉塞解除(R)］ボタンをクリックします。

サービス単位のスケジュールを閉塞するときは，［TP1/LiNKアプリケーション管理SPP］ウィンドウの［サービス(V)...］ボタンをクリックして［サービス閉塞管理］ダイアログボックスを開いたあと，該当のユーザサーバ名を選択して［閉塞(H)］ボタンをクリックします。閉塞したサービスのスケジュールを再開するときは，該当のユーザサーバ名を選択して［閉塞解除(R)］ボタンをクリックします。

ユーザサーバのスケジュールを閉塞する操作方法については，「6.2　アプリケーション管理（SPP）」を参照してください。

サービス単位のスケジュールを閉塞する操作方法については，「6.2.1　サービス単位の閉塞管理」を参照してください。

5.4　TP1/LiNKの各種操作

ここでは，次に示すTP1/LiNKの操作について説明します。

メッセージログのチェック

トレース情報の出力

稼働統計情報の出力

リアルタイム統計情報の出力

トランザクション機能に関する運用

XAリソースサービスに関する運用

これらの操作をするときは，［TP1/LiNKオペレーション］ウィンドウのボタンをクリックして，それぞれのダイアログボックスを開きます。［TP1/LiNKオペレーション］ウィンドウについては，「6.4　TP1/LiNKオペレーション」を参照してください。ただし，リアルタイム統計情報で使用するRTSSUPおよびRTSSSPの操作については，「6.2　アプリケーション管理（SPP）」および「6.3　アプリケーション管理（SUP）」を参照してください。

＜この節の構成＞

5.4.1　メッセージログのチェック

5.4.2　トレース情報の出力

5.4.3　稼働統計情報の出力

5.4.4　リアルタイム統計情報の出力

5.4.5　トランザクション機能に関する運用

5.4.6　XAリソースサービスに関する運用

5.4.1　メッセージログのチェック

TP1/LiNKの稼働中には，TP1/LiNKの状態を示すシステムメッセージがコンソールに出力されます。このメッセージは，イベントビューアにも通知されます。さらに，TP1/LiNKは，あとで確認できる履歴としてメッセージを自動的にファイルに保存しています。保存したメッセージをメッセージログといいます。OpenTP1管理者は，メッセージログの内容を参照して，TP1/LiNKの開始状態や開始時間およびトラブルが起こった原因を知ることができます。

メッセージログの概要を次の図に示します。

図5-3　メッセージログの概要

メッセージログを取得する準備

メッセージログを出力するときは，［TP1/LiNKオペレーション］ウィンドウの［メッセージログ表示(M)...］ボタンをクリックして［TP1/LiNKメッセージログ表示］ダイアログボックスを開きます。そして，［TP1/LiNKメッセージログ表示］ダイアログボックスに，ログを取得する条件を指定してから，［開始(S)］ボタンをクリックします。

メッセージログを保存するファイルに空き領域がなくなると，ファイルの先頭から上書きされます。ファイルが上書きされるときは，そのことを知らせるメッセージが表示されます。

メッセージログの操作方法については，「6.4.3　メッセージログの表示」を参照してください。

5.4.2　トレース情報の出力

TP1/LiNKは，ユーザサーバの動作を確認するために，次のトレース情報を取得します。

RPCトレース

UAPトレース

ここでは，これらのトレース情報を出力する方法について説明します。トレース情報を出力するときは，［TP1/LiNKオペレーション］ウィンドウの［トレース情報表示(I)...］ボタンをクリックして［TP1/LiNKトレース情報表示］ダイアログボックスを開きます。

＜この項の構成＞

(1)　RPCトレースを編集出力できます

(2)　UAPトレースを編集出力できます

(1)　RPCトレースを編集出力できます

ユーザサーバ間の通信（RPC）の履歴情報のことをRPCトレースといいます。

RPCトレースを取得するときは，事前に［システム環境設定］ウィンドウの［トレース取得(L)］チェックボックスをオンにするか，各UAPの［SPP詳細設定］ダイアログボックスまたは［SUP詳細設定］ダイアログボックスの［RPCトレースを取得するファイルの容量(J)］に値を設定して，RPCトレースを取得する指定をしてください。

RPCトレースを編集出力するときは，［TP1/LiNKトレース情報表示］ダイアログボックスの［RPCトレース(R)］オプションボタンをオンにして，編集出力するための操作をしてください。

(2)　UAPトレースを編集出力できます

ユーザサーバが異常終了または強制終了した場合，そのユーザサーバの処理に関する情報をTP1/LiNKが自動的に出力します。この情報をUAPトレースといいます。UAPトレースを編集出力するときは，［TP1/LiNKトレース情報表示］ダイアログボックスの［UAPトレース(U)］オプションボタンをオンにして，編集出力するための操作をしてください。

RPCトレースとUAPトレースの出力方法については，「6.4.2　トレース情報の出力」を参照してください。

5.4.3　稼働統計情報の出力

TP1/LiNKでは，ユーザサーバおよびTP1/LiNKの各種機能に関する稼働情報を取得できます。この情報を稼働統計情報といいます。稼働統計情報を編集して出力することで，TP1/LiNKの稼働状況を知ることができます。

稼働統計情報の取得と編集出力の概要を次の図に示します。

図5-4　稼働統計情報の取得と編集出力の概要

＜この項の構成＞

(1)　稼働統計情報の種類

(2)　稼働統計情報を取得するための指定

(3)　稼働統計情報の取得

(4)　稼働統計情報の編集出力

(1)　稼働統計情報の種類

稼働統計情報には，次に示す3種類があります。これらの情報が稼働統計情報として取得されます。

システム統計情報
TP1/LiNKシステム全体の統計情報

レスポンス統計情報
リモートプロシジャコールの応答時間とサービスの実行時間に関する統計情報

通信遅延時間統計情報
リモートプロシジャコールの応答時間のうち，実際の通信に必要な時間に関する統計情報

(2)　稼働統計情報を取得するための指定

TP1/LiNKを開始する前に，［システム環境設定］ウィンドウで稼働統計情報を取得するための指定をしておきます。このとき，取得する稼働統計情報を格納するファイル（稼働統計情報ファイル）の容量も指定します。

(3)　稼働統計情報の取得

稼働統計情報を取得するときは，［TP1/LiNKオペレーション］ウィンドウの［稼働統計管理(S)...］ボタンをクリックして［TP1/LiNK稼働統計管理］ダイアログボックスを開きます。そして，［TP1/LiNK稼働統計管理］ダイアログボックスに，情報を取得する条件を指定してから，［取得開始(J)］ボタンをクリックします。

稼働統計情報の取得を終了するときは，［TP1/LiNK稼働統計管理］ダイアログボックスの［取得終了(K)］ボタンをクリックします。［取得終了(K)］ボタンをクリックしないと，TP1/LiNKが停止するまで，稼働統計情報を取得し続けます。

なお，レスポンス統計情報および通信遅延時間統計情報については，UAPでリモートプロシジャコールを実行するときに自動的に取得されます。

(4)　稼働統計情報の編集出力

稼働統計情報を編集出力するときは，［TP1/LiNKオペレーション］ウィンドウの［稼働統計管理(S)...］ボタンをクリックして［TP1/LiNK稼働統計管理］ダイアログボックスを開きます。そして，［TP1/LiNK稼働統計管理］ダイアログボックスに，保存するファイル名を指定してから［編集開始(E)］ボタンをクリックします。ボタンをクリックすると，稼働統計情報を編集出力できます。

稼働統計情報の操作方法については，「6.4.4　稼働統計情報の管理」を参照してください。

5.4.4　リアルタイム統計情報の出力

リアルタイム統計情報サービスは，システム全体，サーバおよびサービス単位に統計情報を取得します。このリアルタイム統計情報を標準出力やログファイルに出力すると，TP1/LiNKの稼働状況をリアルタイムに把握でき，システムの運用管理や障害復旧を迅速に行えます。機能の詳細については，マニュアル「OpenTP1 解説」を参照してください。

リアルタイム統計情報サービスでは，次に示すUAPを使用します。

RTSSUP

リアルタイム統計情報サービスを使用する場合に起動させるUAPです。リアルタイム統計情報を取得，出力できます。

RTSSPP

リアルタイム統計情報サービスの拡張機能を使用する場合に起動させるUAPです。拡張機能では，リアルタイム統計情報サービスのオンライン中に，取得する情報の設定を変更できます。

RTSSUPおよびRTSSPPを操作するときは，［スタート］－［プログラム］－［TP1_LiNK］－［アプリケーション管理SUP］（または［アプリケーション管理SPP］）メニューを選択します。

［アプリケーション管理SUP］（または［アプリケーション管理SPP］）メニューを選択すると，［TP1/LiNKアプリケーション管理SUP］（または［TP1/LiNKアプリケーション管理SPP］）ウィンドウが表示されます。

図5-5　［TP1/LiNKアプリケーション管理SUP］ウィンドウ

図5-6　［TP1/LiNKアプリケーション管理SPP］ウィンドウ

ここでは，RTSSUPおよびRTSSPPを開始および終了させる手順について説明します。［TP1/LiNKアプリケーション管理SUP］ウィンドウおよび［TP1/LiNKアプリケーション管理SPP］ウィンドウのメニューとボタンの使い方については，「6.2　アプリケーション管理（SPP）」および「6.3　アプリケーション管理（SUP）」を参照してください。また，リアルタイム統計情報サービスおよびリアルタイム統計情報サービスの拡張機能の開始と終了の詳細については，マニュアル「OpenTP1 運用と操作」を参照してください。

＜この項の構成＞

(1)　リアルタイム統計情報サービスおよびリアルタイム統計情報サービスの拡張機能の開始

(2)　リアルタイム統計情報サービスおよびリアルタイム統計情報サービスの拡張機能の終了

(3)　TP1/LiNKで取得できるリアルタイム統計情報

(1)　リアルタイム統計情報サービスおよびリアルタイム統計情報サービスの拡張機能の開始

［TP1/LiNKアプリケーション管理SUP］（または［TP1/LiNKアプリケーション管理SPP］）ウィンドウのリストボックスに表示されたRTSSUP（またはRTSSPP）を選択して，［起動(S)］をクリックします。

RTSSUP（またはRTSSPP）は，［リアルタイム統計情報サービス設定］ダイアログボックスの設定保存時にユーザサーバ定義を作成しますので，作成は不要です。RTSSUP（またはRTSSPP）は，［SUP環境設定］（［SPP環境設定］）ダイアログボックスで変更できません。

TP1/LiNKと一緒に開始したい場合は，通常のUAPと同様に自動起動を設定できます。自動起動の設定方法については，「5.3.1　ユーザサーバの開始」を参照してください。また，dcsvstrtコマンドでRTSSUP（またはRTSSPP）を起動することもできます。

リアルタイム統計情報サービスおよびリアルタイム統計情報サービスの拡張機能の起動後に使用できる機能を次に示します。

リアルタイム統計情報サービスの場合

リアルタイム統計情報の標準出力への出力（rtslsコマンド）
リアルタイム統計情報サービスの管理情報，取得した統計情報を標準出力へ出力できます。

リアルタイム統計情報ログファイルの編集出力（rtseditコマンド）
RTSログファイルからリアルタイム統計情報を収集し，編集後，CSV形式でファイルまたは標準出力へ出力できます。

リアルタイム統計情報サービスの拡張機能の場合

リアルタイム統計情報の設定変更（rtsstatsコマンド）※
リアルタイム統計情報サービスのオンライン中にリアルタイム統計情報の取得対象，またはリアルタイム統計情報を取得する項目の設定を変更できます。

注※

リアルタイム統計情報サービスの拡張機能がオンライン中である場合，RTSSPPに対して次のボタン（またはコマンド）を使用しないでください。

［閉塞(D)］ボタン（scdholdコマンド）

［閉塞解除(R)］ボタン（scdrlesコマンド）

RTSSPPに対して，［閉塞(D)］ボタン（scdholdコマンド）を実行した場合，rtsstatsコマンドが実行できなくなります。

(2)　リアルタイム統計情報サービスおよびリアルタイム統計情報サービスの拡張機能の終了

［TP1/LiNKアプリケーション管理SUP］（または［TP1/LiNKアプリケーション管理SPP］）ウィンドウのリストボックスに表示されたRTSSUP（またはRTSSPP）を選択し，［停止(T)］ボタンをクリックします。ボタンをクリックすると，RTSSUP（またはRTSSPP）を停止して終了させることができます。また，dcsvstopコマンドで停止することもできます。

(3)　TP1/LiNKで取得できるリアルタイム統計情報

TP1/LiNKで取得できるリアルタイム統計情報を次の表に示します。各項目の詳細については，マニュアル「OpenTP1 運用と操作」を参照してください。

表5-1　TP1/LiNKで取得できるリアルタイム統計情報

項番 | イベント項目名 | 項目ID
リアルタイム統計情報種別 | リアルタイム統計情報の項目名
1 | ネーム情報 | グローバルキャッシュヒット | 1300
2 | ローカルキャッシュヒット | 1301
3 | サービス情報の検索回数 | 1302
4 | 指定参照先ノードへのサービス検索の送信回数 | 1304
5 | 指定参照先ノードからのサービス検索の応答受信回数 | 1305
6 | 共用メモリ管理情報 | 静的共用メモリの使用サイズ | 1400
7 | 静的共用メモリプールの必要最大サイズ | 1401
8 | 動的共用メモリの使用サイズ | 1402
9 | 動的共用メモリプールの必要最大サイズ | 1403
10 | プロセス情報 | プロセス生成 | 1500
11 | UAP異常終了 | 1501
12 | システムサーバ異常終了 | 1502
13 | プロセス終了 | 1503
14 | 起動プロセス数 | 1504
15 | RPC情報 | RPCコール（同期応答型） | 1700
16 | RPCコール（連鎖RPC型） | 1701
17 | ユーザサービス実行 | 1730
18 | RPCタイムアウト | 1731
19 | スケジュール情報 | スケジュール待ち | 1800
20 | スケジュール | 1801
21 | メッセージ格納バッファプールの使用中サイズ | 1802
22 | メッセージ格納バッファプールの不足でスケジュールできなかったメッセージサイズ | 1803
23 | スケジュール滞留 | 1804
24 | サービス単位のスケジュール待ち | 1805
25 | サービス単位のメッセージ格納バッファプールの使用中サイズ | 1806
26 | 同時実行サービス数 | 1807
27 | トランザクション情報 | コミット | 1900
28 | ロールバック | 1901
29 | コマンドによるコミット | 1902
30 | コマンドによるロールバック | 1903
31 | コマンドによるハザード | 1904
32 | コマンドによるミックス | 1905
33 | ブランチ実行時間 | 1906
34 | ブランチ同期点処理の実行時間 | 1907
35 | XAリソースサービス情報 | Start()要求 | 2500
36 | Start()要求エラー | 2501
37 | Call()要求 | 2502
38 | Call()要求エラー | 2503
39 | End()要求 | 2504
40 | End()要求エラー | 2505
41 | Prepare()要求 | 2506
42 | Prepare()要求エラー | 2507
43 | Commit()要求 | 2508
44 | Commit()要求エラー | 2509
45 | Rollback()要求 | 2510
46 | Rollback()要求エラー | 2511
47 | Recover()要求 | 2512
48 | Recover()要求エラー | 2513
49 | Forget()要求 | 2514
50 | Forget()要求エラー | 2515
51 | リアルタイム統計情報 | 任意区間の実行 | 1000000​～2147483647​

5.4.5　トランザクション機能に関する運用

ユーザサーバでトランザクション機能を使う場合，その運用を支援するため，OpenTP1管理者は次に示すトランザクションに関する機能を使えます。

トランザクションの状態表示

トランザクションの強制決着

トランザクションの強制終了

トランザクション機能の操作をするときは，［TP1/LiNKオペレーション］ウィンドウの［トランザクション管理(T)...］ボタンをクリックして［TP1/LiNKトランザクション管理］ダイアログボックスを開きます。

トランザクション機能の操作方法については，「6.4.1　トランザクションの管理」を参照してください。

5.4.6　XAリソースサービスに関する運用

＜この項の構成＞

(1)　XAリソースサービスを使用するための前提機能

(2)　XAリソースサービスのトランザクション管理

(3)　XAリソースサービスの開始と終了

(4)　XARファイルに障害が発生した場合の運用

(1)　XAリソースサービスを使用するための前提機能

XAリソースサービスを使用するには，次に示す機能および製品の使用が前提です。

J2EEで動作するアプリケーションサーバと連携する場合

リモートAPI機能

TP1/Client/J

uCosminexus TP1 ConnectorまたはCosminexus TP1 Connector

.NET Frameworkアプリケーションと連携する場合

リモートAPI機能

Client .NET

Connector .NET

(2)　XAリソースサービスのトランザクション管理

XAリソースサービスは，TP1/Client/JまたはClient .NETからのトランザクション要求種別に従って，トランザクションの管理を開始したり終了したりします。また，TP1/Client/JまたはClient .NETから渡されるXAリソースサービスで連携するアプリケーションサーバのXID（トランザクション識別子）とOpenTP1が管理しているXIDとを対応づけてトランザクション情報を共用メモリ上で管理します。トランザクション情報は，必要に応じてXARファイルに記録します。トランザクション情報の管理を表5-2および表5-3に，XAリソースサービスの運用を図5-7に示します。

表5-2　トランザクション情報の管理（アプリケーションサーバ連携）

トランザクション
要求種別
トランザクション情報の管理
トランザクションの状態変更
（正常ケース）

開始
終了
ファイルのI/O

Start()
○
－
○
なし → Active

Call()
－
－
－
変化しない

End()
－
－
－
Active → Idle

Prepare()
－
－
－
Idle → Prepared

○
－
Idle → なし※1

Commit()
－
○
－
Prepared → なし※2

Idle → なし※3

Rollback()
－
○
－
Prepared → なし※2

Idle → なし※3

Recover()
－
－
－
変化しない

Forget()
－
○
－
Heuristically Completed → なし

（凡例）

○：処理を実行します。

－：処理を実行しません。

注※1

トランザクションブランチがread onlyの場合

注※2

2相コミット，またはロールバックの場合

注※3

1相コミット，またはロールバックの場合

表5-3　トランザクション情報の管理（MSDTC連携）

トランザクション
要求種別
トランザクション情報の管理
トランザクションの状態変更
（正常ケース）

開始
終了
ファイルのI/O

Call()
○
－
－
なし → Active※1

－
－
－
変化しない

Prepare()
－
－
○
Active → Idle → Prepared

○
○
Active → Idle → なし※2

Commit()
－
○
－
Prepared → なし※3

Active → Idle → なし※4

Rollback()
－
○
－
Prepared → なし※3

Active → Idle → なし※4

Recover()
－
－
－
変化しない

Forget()
－
○
－
Heuristically Completed → なし

（凡例）

○：処理を実行します。

－：処理を実行しません。

注※1

トランザクション内で最初のCall()要求の場合

注※2

トランザクションブランチがread onlyの場合

注※3

2相コミット，またはロールバックの場合

注※4

1相コミット，またはロールバックの場合

図5-7　XAリソースサービスの運用

XAリソースサービスを使用する場合の注意

次の場合，トランザクションが不正に残ることがあります。

rapリスナー，またはrapサーバを強制停止した場合
この場合，rapリスナー，またはrapサーバを開始してください。

リモートAPI機能で動作保証されていない操作をした場合

(a)　XARファイル

XAリソースサービスは，必要に応じてトランザクション情報をXARファイルに格納します。

XARファイルの作成

XARファイルには，オンライン用XARファイルとバックアップ用XARファイルの二つが必要です。通常はオンライン用XARファイルを使用し，オンライン用XARファイルに障害が発生した場合，バックアップ用XARファイルに自動的にスワップします。障害発生を考慮して，オンライン用XARファイルとバックアップ用XARファイルは異なるディスクボリュームに格納してください。

XARファイルは，一つのトランザクションブランチに対して1レコードを使用します。そのため，XARファイルには，同時に起動するトランザクションブランチ数（［システム環境設定］ウィンドウ-［トランザクションブランチ数(B)］の値）以上のレコードが必要です。

XARファイルは［システム環境設定］ウィンドウ-［XAリソースサービス環境設定］ダイアログボックスの［オンライン用XARファイルを作成するフォルダ名(O)］および［バックアップ用XARファイルを作成するフォルダ名(B)］にフォルダ名を指定して［上書き保存(V)］をクリックすることで作成できます。

XARファイルは［システム環境設定］ウィンドウ-［トランザクションブランチ数(B)］の指定値を基にxafileO（オンライン用XARファイル），xafileB（バックアップ用XARファイル）のファイル名で作成されます。

また，［システム環境設定］ウィンドウ-［トランザクションブランチ数(B)］の指定値を変更した場合は［上書き保存(V)］をクリックしてXARファイルを再作成するようにしてください。

XARファイルは，XAリソースサービスの正常開始処理で初期化されます。

また，次の状態ではXAリソースサービスはトランザクション情報を管理できません。

OpenTP1が未起動

リモートAPI機能が未起動

XAリソースサービスが未起動

XAリソースサービスが閉塞

XAリソースサービスは，オンライン用XARファイルとバックアップ用XARファイルの両方に障害が発生した場合に閉塞します。閉塞を解除するには，［TP1/LiNK　XAリソースサービス管理］ダイアログボックスの［サービス閉塞解除(E)］ボタンをクリックしてください。詳細については，「5.4.6(4)　XARファイルに障害が発生した場合の運用」を参照してください。

XAリソースサービスが管理するトランザクションの状態を表示するには，［TP1/LiNK　XAリソースサービス管理］ダイアログボックスを開いて［最新情報に更新(L)］ボタンをクリックしてください。未決着のトランザクションを決着させるには，［コミット(M)］，［ロールバック(R)］，または［強制終了(F)］ボタンをクリックしてください。詳細については，「6.4.5　XAリソースサービスの管理」を参照してください。

(3)　XAリソースサービスの開始と終了

(a)　XAリソースサービスの開始

XAリソースサービスを使用するかどうかは，［システム環境設定］ウィンドウの［XAリソースサービス環境設定］ダイアログボックスの［XAリソースサービスを使用する(X)］チェックボックスで指定します。チェックボックスをオンにした場合，OpenTP1の起動時にXAリソースサービスが開始されます。詳細については，「3.1.6　XAリソースサービス環境の設定」を参照してください。

XAリソースサービスを開始すると，XARファイルは初期化されます。XAリソースサービスの開始に失敗した場合，OpenTP1の起動も失敗します。

(b)　XAリソースサービスの再開始

XAリソースサービスを再開始するにはOpenTP1を再開始します。前回OpenTP1を正常開始したときのXAリソースサービスの開始状態によって，XAリソースサービスを再開始するかどうかが決定します。

前回のOpenTP1の正常開始時にXAリソースサービスを開始していれば，XAリソースサービスを再開始します。XAリソースサービスを開始していなければ，XAリソースサービスを再開始しません。

XAリソースサービスを再開始すると，XARファイルは初期化されます。XAリソースサービスの再開始に失敗した場合，OpenTP1の再開始も失敗します。

OpenTP1再開始時に，［XAリソースサービス環境設定］ダイアログボックスの次の項目の設定を変更できます。

［アイドル状態のトランザクションブランチの監視時間(T)］

［オンライン用XARファイルを作成するフォルダ名(O)］

［バックアップ用XARファイルを作成するフォルダ名(B)］

OpenTP1の再開始時に［オンライン用XARファイルを作成するフォルダ名(O)］または［バックアップ用XARファイルを作成するフォルダ名(B)］の値を変更するのはXARファイルに障害が発生した場合だけです。それ以外の場合に，OpenTP1の再開始時に［オンライン用XARファイルを作成するフォルダ名(O)］または［バックアップ用XARファイルを作成するフォルダ名(B)］の値を変更すると，トランザクションブランチを回復できなくなるので注意してください。XARファイルに障害が発生したときのトランザクションブランチの回復方法については，「5.4.6(4)　XARファイルに障害が発生した場合の運用」を参照してください。

XAリソースサービスを再開始すると，XARファイルを使用して前回のトランザクションブランチの状態に戻す処理（トランザクションブランチの回復処理）をします。

バックアップ用XARファイルが使用されている場合，バックアップ用XARファイルからトランザクションブランチを回復します。バックアップ用XARファイルが使用されていない場合，オンライン用XARファイルからトランザクションブランチを回復します。

トランザクションブランチの回復処理では，XARファイルの各レコードに記録されている前回のトランザクション情報を調査します。1相目の状態（Prepared）のまま決着が行われていないトランザクションブランチの場合，再びPrepared状態に戻します。

XARファイルにはトランザクションブランチのXID情報が含まれているため，再びアプリケーションサーバからのトランザクション決着指示を受け付けられるようになります。

Heuristically completed状態のトランザクションブランチの場合，再びHeuristically completed状態に戻し，ヒューリスティックを完了させます。Prepared状態になる前（Active，Idle）のトランザクションブランチの場合，すべてロールバックします。これらのトランザクションブランチのXID情報は削除されるため，アプリケーションサーバからトランザクションブランチの決着要求が来てもコミット決着できません。

また，トランザクション決着済み（コミットまたはロールバック）のトランザクションブランチの場合，トランザクションブランチの回復処理が行われてもトランザクションの決着結果は変わりません。

トランザクションの状態ごとのトランザクションブランチの回復処理を次の表に示します。

表5-4　OpenTP1再開始時のトランザクションブランチ回復処理

トランザクション状態 | 処置 | XID情報
Active | ロールバック | 削除
Idle | ロールバック | 削除
Prepared | OpenTP1のPJ出力前 | トランザクション決着待ち | 残す
OpenTP1のPJ出力後 | コミット済み | 削除
Rollback only | ロールバック | 削除
Heuristically completed | ヒューリスティック完了 | 残す

(c)　XAリソースサービスの終了

XAリソースサービスは，OpenTP1の終了時に終了します。すべてのアプリケーションサーバからのトランザクションブランチが決着していないとOpenTP1を終了できません。

決着していないトランザクションブランチがある場合，トランザクションブランチの決着を待ちます。OpenTP1の強制停止を実行した場合，トランザクションブランチの決着を待たないで強制的にOpenTP1が終了します。

(4)　XARファイルに障害が発生した場合の運用

XAリソースサービスのオンライン中に，XARファイルのI/O障害が発生した場合，オンライン用XARファイルからバックアップ用XARファイルに自動的にスワップします。この機能をスワップ機能といいます。この機能を使用すると，オンライン用XARファイルに障害が発生しても，XAリソースサービスのオンラインを続行できます。

XARファイルのI/O障害発生時にXAリソースサービスのオンラインを再開始する方法は，障害がどのファイルで，またどの時点で発生するかによって異なります。障害発生時点ごとの運用方法を次に示します。

オンライン用XARファイルに障害が発生した時点で，スワップ機能を使用して新しいXARファイルと入れ替える方法

1.のあと，さらにバックアップ用XARファイルに障害が発生し，XAリソースサービスが閉塞した時点で新しいXARファイルと入れ替える方法

オンライン用XARファイルに障害が発生し，OpenTP1が停止した時点で新しいXARファイルと入れ替える方法

オンライン用とバックアップ用の両方のXARファイルに障害が発生し，XAリソースサービスが閉塞およびOpenTP1が停止した時点で新しいXARファイルと入れ替える方法

1.および2.の方法は，OpenTP1を停止させることなく，障害が発生したXARファイルを新しいXARファイルに入れ替えます。これらの方法は，共用メモリから障害発生前のトランザクションブランチを回復できます。

1.の方法は，バックアップ用XARファイルに障害が発生する前に対策を実施するので，より確実にXAリソースサービスを運用できます。

3.の方法は，OpenTP1が停止しても，バックアップ用XARファイルの情報から障害発生前のトランザクションブランチを回復できます。

4.の方法はOpenTP1が停止し，さらにオンライン用およびバックアップ用の両方のXARファイルに障害が発生しているため，新しいXARファイルに入れ替えても，障害発生前のトランザクションブランチを回復できません。

それぞれの方法の詳細について説明します。

(a)　オンライン用XARファイルに障害が発生した時点でのXARファイルの入れ替え

オンライン用XARファイルに障害が発生すると，XAリソースサービスはバックアップ用XARファイルにスワップして運用を続行します。この時点でオンライン用XARファイルを新しいファイルに入れ替えると，OpenTP1を停止させることなく，障害発生前のトランザクションブランチを回復できます。

XAリソースサービスがバックアップ用XARファイルを使用して運用中の場合，オンライン用XARファイルを入れ替えるには，［TP1/LiNK　XAリソースサービス管理］ダイアログボックスの［サービス閉塞(H)］ボタンをクリックしてXAリソースサービスを強制的に閉塞します。XAリソースサービスが閉塞しても，ほかのOpenTP1サービスは実行できます。オンライン用XARファイルに障害が発生した時点での，オンライン用XARファイルの入れ替え方法を次に示します。

［TP1/LiNK　XAリソースサービス管理］ダイアログボックスの［サービス閉塞(H)］ボタンをクリックします。
XAリソースサービスが閉塞します。

［XAリソースサービス環境設定］ダイアログボックスの［オンライン用XARファイルを作成するフォルダ名(O)］だけを変更します。そのあと，［上書き保存(V)］ボタンをクリックして，新しいオンライン用XARファイルを作成します。
障害が発生しているオンライン用XARファイルを作成するフォルダとは別のディスクボリュームに作成してください。［システム環境設定］ウィンドウ-［トランザクションブランチ数(B)］の指定値は変更しないでください。

［TP1/LiNK　XAリソースサービス管理］ダイアログボックスの［サービス閉塞解除(E)］ボタンをクリックします。
XAリソースサービスの閉塞が解除されます。共用メモリからトランザクションブランチを回復し，新しく作成したオンライン用XARファイルを使用してXAリソースサービスのオンラインが再開始されます。

オンライン用XARファイルに障害が発生した場合のXARファイルの入れ替え方法を次の図に示します。

図5-8　オンライン用XARファイルに障害が発生した場合のXARファイルの入れ替え方法

(b)　バックアップ用XARファイルに障害が発生した時点でのXARファイルの入れ替え

オンライン用XARファイルに障害が発生し，バックアップ用XARファイルにスワップしてXAリソースサービスの運用を続行している間に，バックアップ用XARファイルにも障害が発生した場合，XAリソースサービスは閉塞状態になります。XAリソースサービスが閉塞状態になると，XAリソースサービスで連携するアプリケーションサーバからのトランザクション指示に対して，すべてXAER_RMERRを返します。ただし，障害が局所化されているため，OpenTP1は停止しないで，XAリソースサービス以外のOpenTP1サービスは実行できます。また，XARファイルを新しいファイルに入れ替えれば，XAリソースサービスのトランザクションブランチを回復できます。

オンライン用XARファイルとバックアップ用XARファイルの両方に障害が発生してXAリソースサービスが閉塞状態になった場合の，XARファイルの入れ替え方法を次に示します。

［XAリソースサービス環境設定］ダイアログボックスの［オンライン用XARファイルを作成するフォルダ名(O)］および［バックアップ用XARファイルを作成するフォルダ名(B)］を変更します。そのあと，［上書き保存(V)］ボタンをクリックして，新しいXARファイルを作成します。
オンライン用とバックアップ用のXARファイルを作成するフォルダを，障害の発生していないディスクボリューム上に作成してください。［システム環境設定］ウィンドウ-［トランザクションブランチ数(B)］の指定値は変更しないでください。

［TP1/LiNK　XAリソースサービス管理］ダイアログボックスの［サービス閉塞解除(E)］ボタンをクリックします。
XAリソースサービスの閉塞が解除されます。共用メモリからトランザクションブランチを回復し，新しく作成したオンライン用XARファイルを使用してXAリソースサービスのオンラインが再開始されます。

バックアップ用XARファイルで障害が発生した場合のXARファイルの入れ替え方法を次の図に示します。

図5-9　バックアップ用XARファイル障害発生時のXARファイルの入れ替え方法

(c)　オンライン用XARファイルに障害が発生しOpenTP1が停止した場合のXARファイルの入れ替え

オンライン用XARファイルに障害が発生し，さらにOpenTP1が停止（正常停止／異常停止）すると，XAリソースサービスは閉塞します。XAリソースサービスを再開始するには，新しいXARファイルを作成してからOpenTP1を再開始します。

オンライン用XARファイルに障害が発生し，さらにOpenTP1が停止した場合のXARファイルの入れ替え方法を次に示します。

［XAリソースサービス環境設定］ダイアログボックスの［オンライン用XARファイルを作成するフォルダ名(O)］だけを変更します。そのあと，［上書き保存(V)］ボタンをクリックして，新しいオンライン用XARファイルを作成します。
障害が発生しているオンライン用XARファイルを作成するフォルダとは別のディスクボリュームに作成してください。［システム環境設定］ウィンドウ-［トランザクションブランチ数(B)］の指定値は変更しないでください。

OpenTP1を再開始します。
OpenTP1を再開始すると，XAリソースサービスの閉塞が解除されます。バックアップ用XARファイルからトランザクションブランチを回復し，新しく作成したオンライン用XARファイルを使用してXAリソースサービスが再開始されます。

注意

停止したOpenTP1を正常開始，および再開始するときは，オンライン用およびバックアップ用の両方のXARファイルがI/O可能になっている必要があります。XARファイルに障害が発生したままではOpenTP1を開始できません。

オンライン用XARファイルに障害が発生し，さらにOpenTP1が停止した場合のXARファイルの入れ替え方法を次の図に示します。

図5-10　オンライン用XARファイル障害発生時およびOpenTP1停止時のXARファイルの入れ替え方法

(d)　バックアップ用XARファイルに障害が発生しOpenTP1が停止した場合のXARファイルの入れ替え

オンライン用およびバックアップ用の両方のXARファイルに障害が発生し，さらにOpenTP1が停止（正常停止／異常停止）すると，XAリソースサービスは閉塞します。この場合，障害発生前のトランザクションブランチは回復できません。XAリソースサービスを再開始するには，新しいXARファイルを作成してからOpenTP1を強制正常開始します。

オンライン用およびバックアップ用の両方のXARファイルに障害が発生し，OpenTP1が停止した場合のXARファイルの入れ替え方法を次に示します。

［XAリソースサービス環境設定］ダイアログボックスの［オンライン用XARファイルを作成するフォルダ名(O)］および［バックアップ用XARファイルを作成するフォルダ名(B)］を変更します。そのあと，［上書き保存(V)］ボタンをクリックして，新しいXARファイルを作成します。
オンライン用とバックアップ用のXARファイルを作成するフォルダを，障害の発生していないディスクボリューム上に作成してください。

OpenTP1を強制正常開始します。
OpenTP1を再開始すると，XAリソースサービスの閉塞が解除されます。新しく作成したオンライン用XARファイルを使用してXAリソースサービスのオンラインが再開始されます。ただし，障害前のトランザクションブランチは回復できません。

注意

停止したOpenTP1を強制正常開始するときは，オンライン用およびバックアップ用の両方のXARファイルがI/O可能になっている必要があります。XARファイルに障害が発生したままではOpenTP1を開始できません。

オンライン用およびバックアップ用の両方のXARファイルに障害が発生し，OpenTP1が停止した場合のXARファイルの入れ替え方法を次の図に示します。

図5-11　オンライン用およびバックアップ用の両方のXARファイルに障害が発生し，OpenTP1が停止した場合のXARファイルの入れ替え方法

5.5　リモートAPI機能の使い方

リモートAPI機能の使い方について説明します。リモートAPI機能は，インターネット／イントラネットでファイアウォールを経由して通信するときに必要です。

＜この節の構成＞

5.5.1　リモートAPI機能の概要

5.5.2　リモートAPI機能を使うときの準備

5.5.3　RAPサービスの操作

5.5.4　リモートAPI機能を使うときの注意事項

5.5.1　リモートAPI機能の概要

クライアントで呼び出した関数（API）をサーバに通知して，サーバでこのAPIを代行できます。これをリモートAPI機能といいます。

リモートAPI機能を使った通信では，クライアントで呼び出したAPIをサーバが受け取って，自システムのユーザサーバにAPIを実行し直します。APIを実行し直すTP1/LiNKのサービスをRAPサービスといいます。

RAPサービスで代行できるAPIは，リモートプロシジャコール（dc_rpc_call関数）です。ただし，リモートAPI機能を使ったRPCは非同期型RPCにはできません。

リモートAPI機能の概要を次の図に示します。

図5-12　リモートAPI機能の概要

注※1

クライアントになるOpenTP1システムには，次の製品があります。

TP1/Client/W

TP1/Client/P

TP1/Client/J

TP1/Client for .NET Framework

TP1/LiNK

TP1/Server Base

また，TP1/LiNKをクライアントにしてTP1/Server Baseをサーバにすることもできます。

注※2

リモートAPI機能を使った通信では，システム間に論理的な通信路が確立されます。この通信路を常設コネクションといいます。

常設コネクションによって，リモートAPIを要求したUAP（rapクライアント）とrapサーバとは1対1で関係づけられます。常設コネクションの確立および解放は，rapリスナーが管理しています。リモートAPIを受け付けると，rapリスナーはrapクライアントとの間に常設コネクションを確立し，確立したコネクションをrapサーバに渡します。rapリスナーが管理できる常設コネクションの最大数は256です。

5.5.2　リモートAPI機能を使うときの準備

TP1/LiNKでRAPサービスを使うときに設定する内容を次に示します。TP1/LiNK以外のOpenTP1製品でリモートAPI機能の環境を設定する方法については，該当するOpenTP1のマニュアルを参照してください。

＜この項の構成＞

(1)　クライアント側のTP1/LiNKの設定（システム環境の設定）

(2)　サーバ側のTP1/LiNKの設定（RAPサービスの設定）

(1)　クライアント側のTP1/LiNKの設定（システム環境の設定）

［システム環境設定］ウィンドウの［ユーザサービス環境(M)...］ボタンをクリックして，［ユーザサービス環境設定］ダイアログボックスを開きます。［ユーザサービス環境設定］ダイアログボックスには，相手システムのホスト名とRAPサービスのポート番号を指定します。ファイアウォールを経由した通信のときは，ファイアウォールのホスト名とポート番号を指定します。［送信先］欄は［RAPサービス／Firewall(R)］オプションボタンをオンにします。

［ユーザサービス環境設定］ダイアログボックスの指定は，自システムがクライアントになるときに必要です。

(2)　サーバ側のTP1/LiNKの設定（RAPサービスの設定）

TP1/LiNKのシステムで開始するRAPサービスを設定します。［スタート］－［プログラム］－［TP1_LiNK］－［RAPサービス環境］メニューを選択して，［RAPサービス環境］ウィンドウを開きます。そして［RAPサービス環境］ウィンドウの一覧からRAPサービスを選択して［RAPサービス環境設定］ダイアログボックスを開きます。このダイアログボックスでRAPサービスの環境を設定します。

(a)　RAPサービス名とポート番号の関係

サーバのTP1/LiNKでは，異なる名称で複数のRAPサービスを起動できます。このとき，それぞれのRAPサービスのポート番号は異なる番号を指定してください。

(b)　［システム環境設定］ウィンドウに加算するRAPサービスのプロセス数

リモートAPI機能を使うときには，［システム環境設定］ウィンドウの［サーバ数］欄に，使用するRAPサービスごとのプロセス数を加算してください。加算するプロセス数を次に示します。

［SUP(U)］

1を加算

［SPP(P)］

［RAPサービス環境設定］ダイアログボックスの［RAPサービスのプロセス数］欄に指定した数を加算

［RAPサービス環境設定］ダイアログボックスの指定は，自システムがサーバになるときに必要です。

［ユーザサービス環境設定］ダイアログボックスと［RAPサービス環境設定］ダイアログボックスに指定する値とネットワークの関係を次の図に示します。

図5-13　［ユーザサービス環境設定］ダイアログボックスと［RAPサービス環境設定］ダイアログボックスに指定する値とネットワークの関係

5.5.3　RAPサービスの操作

リモートAPI機能を使った通信で，サーバ側のシステムに必要なRAPサービスの操作について説明します。

＜この項の構成＞

(1)　RAPサービスの開始

(2)　RAPサービスの終了

(1)　RAPサービスの開始

リモートAPI機能を使うときは，RAPサービスが起動していることが前提です。RAPサービスはrapリスナーと呼ばれるSUP相当のプロセスと，rapサーバと呼ばれるSPP相当のプロセスで構成されています。rapサーバについてはrapリスナーが開始時に自動的に起動しますが，［TP1/LiNKアプリケーション管理SPP］ウィンドウにrapサーバの状態は表示されません。rapリスナーを開始するには，次の二つの方法があります。

自動起動（TP1/LiNKの開始と一緒に開始する）

［RAPサービス環境設定］ダイアログボックスの［自動起動設定(A)...］ボタンをクリックして，［自動起動設定］ダイアログボックスを開きます。このダイアログボックスの［自動起動あり］欄に，RAPサービス名を指定します。

手動起動（TP1/LiNKの動作中に開始する）

TP1/LiNKの動作中に，［TP1/LiNKアプリケーション管理SUP］ウィンドウを使って開始します。

(2)　RAPサービスの終了

RAPサービスは，TP1/LiNKを終了すると一緒に終了します。また，TP1/LiNKの動作中に，rapリスナーは［TP1/LiNKアプリケーション管理SUP］ウィンドウを使って終了することもできます。rapサーバについてはrapリスナーが終了時に自動的に終了しますが，［TP1/LiNKアプリケーション管理SPP］ウィンドウにrapサーバの状態は表示されません。ただし，rapリスナーを強制停止した場合はrapサーバを停止できないため，強制停止しないでください。もし，rapリスナーを強制停止した場合は，TP1/LiNKを強制停止させて再起動してください。

RAPサービスの開始と終了の操作には［TP1/LiNKアプリケーション管理SUP］ウィンドウを使います。このウィンドウの一覧には，SUPのユーザサーバ名とRAPサービス名が混在して表示されます。そのため，RAPサービス名にはユーザサーバ名と明確に区別できる名称を付けておくことをお勧めします。

5.5.4　リモートAPI機能を使うときの注意事項

常設コネクションの管理方法は，コネクションの確立・解放方法によって二つに分けられます。コネクションの確立および解放をTP1/LiNKが管理する形態をオートコネクトモード，ユーザがAPI（常設コネクションを設定するdc_rap_connect関数，常設コネクションを解放するdc_rap_disconnect関数）を使って管理する形態を非オートコネクトモードといいます。コネクションをどちらのモードで管理するかは，rapクライアントの［SPP詳細設定］ダイアログボックスまたは［SUP詳細設定］ダイアログボックスで設定できます。

リモートAPI機能を使った通信のときは，RPCトレースを取得しません。ただし，RAPサービスが代行したAPIについては，RPCトレースを取得します。

稼働統計情報のうち，レスポンス統計情報と通信遅延時間統計情報は，リモートAPI機能を使った通信に関する情報は取得しません。

リモートAPI機能を使用し，TP1/LiNKがrapクライアントとなる場合，RPCのユーザデータ圧縮機能は使用できません。

rapリスナーの開始時にKFCA00327-WメッセージまたはKFCA00850-Eメッセージが出力されてもプログラム上の問題はありません。これは，rapリスナーがrapサーバに対してサービス関数を実行するときに発行するRPCのエラーメッセージです。rapリスナーはRPCでエラーが発生した場合にリトライするため，問題はありません。

リモートAPI機能を使用して連鎖RPC（dc_rpc_call関数のflags引数にDCRPC_CHAINEDを指定）を実行した場合にRPCが正常に終了しないときは，dc_rpc_close関数を発行してUAPの処理を中止します。このとき，rapサーバは連鎖RPCのリソースを完全にクリアするために「KFCA26921-E 理由コード=401」を出力して，アボートコードVrext03で異常終了します。また，連鎖RPCが正常に行われたとしても，連鎖RPCの終了RPC（dc_rpc_call関数のflags引数にDCNOFLAGSを指定）を行わなかった場合も同様に，rapサーバはダウンします。

常駐SPPからリモートAPI機能を使用している場合，その常駐SPPの常駐コネクション問い合わせ間隔最大時間に0を指定しないでください。指定した場合，rapリスナーがあるノードのOpenTP1を終了させようとしても，rapリスナーが終了できないため，常駐SPPが終了するまで無限に待ちます。

rapサーバと同じノードにあるUAPに対して，リモートAPI機能を使用した要求をしないでください。要求した場合の動作は保証できません。

XAリソースサービスを使用している場合，rapリスナーおよびrapサーバが正常終了していないときに，起動中のrapリスナーおよびrapサーバの定義を「RAPサービス環境設定」を使用して変更しないでください。変更した場合，XARトランザクションのステータスがアクティブ状態のままとなり，トランザクションが決着しないで残ってしまうことがあります。OpenTP1では，正常終了時以外にrapリスナーおよびrapサーバの定義を変更した場合の動作は保証できません。

クライアントからの要求最大待ち時間の満了を検知した際のエラーメッセージ出力をしたくない場合は，TP1/LiNKインストールフォルダ¥conf¥GUIRAP¥＜RAPサービス名＞ファイルに，次に示すオペランドを追加してください。定義を追加したあとで，「RAPサービス環境設定」の［上書き保存(V)］ボタンをクリックしてください。

オペランド：set rap_inquire_timeout_message = N
このオペランドで抑止されるメッセージは次のとおりです。
・KFCA26956-Eメッセージの理由コード=71
・KFCA26965-Eメッセージの理由コード=71

指定例：定義の最終行には，改行を入力してください。
# TP1/LiNK (rapリスナーサービス定義)
# コメント = TP1/LiNK RAP Service
set rap_listen_port = 10030
set rap_parallel_server = 10
set nice = 0
set rap_connection_assign_type = static
set rap_inquire_timeout_message = N

rapサーバプロセスがハングアップして，サービス要求を受け付けなくなることがあります。この現象は，rapkillコマンドと，rapkillコマンドを実行するSUPを利用することで回避できます。rapkillコマンドの詳細については，「7.　運用コマンド」の「rapkill（rapサーバの限界監視時間の指定と強制停止）」を参照してください。

RAPリスナープロセスでRAPサーバとの通信を行うためのポートに対して，RAPサーバ以外から不正な電文を受信した場合，KFCA26955-Wメッセージの理由コードに「35：不正な電文を受信しました。」が表示されます。

次に示すコマンドは，rapサーバに対して実行しないでください。実行した場合の動作は保証できません。

scdchprcコマンド

scdholdコマンド

scdrlesコマンド

scdrsprcコマンド

5.6　TP1/LiNKの連続運転に関する運用

＜この節の構成＞

5.6.1　リソースの扱い

5.6.2　時刻変更に関する注意

5.6.1　リソースの扱い

TP1/LiNKを連続運転できるようにするには，連続運転で使用するリソース量が増加し続けないようにしておく必要があります。TP1/LiNKでは，リソースに関して，次のように制御しています。

メモリ量

連続運転によって，所要メモリ量が増加し続けることはありません。

ディスク量

ファイルごとのディスク容量の扱いを，次の表に示します。

表5-5　TP1/LiNKで使用するディスク量の扱い

フォルダ
説　明

%DCDIR%¥aplib
増加しません。

%DCDIR%¥bin
増加しません。

%DCDIR%¥include
増加しません。

%DCDIR%¥lib
増加しません。

%DCDIR%¥spool
メッセージログファイル（dclog1，dclog2）などのトレースが格納されます。TP1/LiNKのトレースはラップアラウンドするため，一定容量以上にはなりません。共用メモリダンプもここに出力されます。サイズは定義に依存するため一定容量になります。

%DCDIR%¥spool¥cmdlog¥*
TP1/LiNKのコマンドログが格納されます。一定容量でラップアラウンドするため，一定容量以上にはなりません。

%DCDIR%¥spool¥dcjnlinf¥*
稼働統計情報ファイルが格納されます。一定容量でラップアラウンドするため，一定容量以上にはなりません。

%DCDIR%¥spool¥dclckinf¥*
増加しません。

%DCDIR%¥spool¥dclitinf¥*
GUI操作時の作業ファイルが格納されます。ファイルサイズは一定値であり，ファイル数も定義に比例するため，一定容量以上にはなりません。

%DCDIR%¥spool¥dcprfinf¥*
ファイルサイズ，ファイル数が一定値であり，かつ，ラップアラウンドするため，一定容量以上にはなりません。

%DCDIR%¥spool¥dcrapinf¥*
ファイルサイズ，ファイル数が一定値であり，かつ，ラップアラウンドするため，一定容量以上にはなりません。

%DCDIR%¥spool¥dctrninf¥*
増加しません。
%DCDIR%¥spool¥dctrninf¥traceにはXAインタフェースのトレースが格納されますが，一定容量でラップアラウンドするため，一定容量以上にはなりません。

%DCDIR%¥spool¥errlog¥*
TP1/LiNKエラーログ情報が格納されます。一定容量でラップアラウンドするため，一定容量以上にはなりません。

%DCDIR%¥spool¥save¥*
コアファイルが退避されます。コアファイルは3世代以上は作成されないため，一定容量以上にはなりません。

%DCDIR%¥spool¥save¥rpctrc¥*
RPCトレースファイルが退避されます。生成時刻がオンライン開始から24時間以上経過したファイルは削除されるため，一定容量以上にはなりません。

%DCDIR%¥spool¥save¥trc¥*
UAPトレースファイルが退避されます。生成時刻がオンライン開始から24時間以上経過したファイルは削除されるため，一定容量以上にはなりません。

%DCDIR%¥spool¥shm¥*
ファイルサイズが一定値であり，一定容量以上にはなりません。

%DCDIR%¥spool¥trnrmcmd¥*
リソースマネジャ接続時に作成したオブジェクトファイルが格納されます。

%DCDIR%¥tmp
各プロセスのホームディレクトリです。プロセスがダウンした場合，ここにコアファイルができ，その後%DCDIR%¥spool¥saveに移されます。したがって，一時的に増加しますが元に戻ります。オンラインを再開始するとクリアされます。

5.6.2　時刻変更に関する注意

TP1/LiNKではステータスファイルなどに日付や時間の情報を格納しています。TP1/LiNKの再開始時などにその情報を使用します。また，トレースファイルなど，各種作業ファイルにも日付や時刻の情報を持ち，さまざまなチェック処理でその情報を使用しています。そのため，TP1/LiNKの開始中，オンライン中，または停止中に時刻を変更した場合，問題が発生します。

＜この項の構成＞

(1)　時刻を進める場合

(2)　時刻を遅らせる場合

(1)　時刻を進める場合

TP1/LiNKのデーモンが一定期間動作しない場合は，TP1/LiNKの内部のチェックによってタイムアウトになり，システムがダウンします。そのため，システムの時刻を進めた場合，タイムアウトが発生したと不当に判断してシステムがダウンすることがあります。TP1/LiNKの開始中，オンライン中，または停止中に，秒単位またはそれより大きな単位で時刻を進めないでください。何らかのテストで時刻を進める必要がある場合は，TP1/LiNKを停止させたあとに時刻を変更してください。

(2)　時刻を遅らせる場合

時刻を遅らせた場合，再開始の失敗，トランザクション回復不正，不当なシステムウェイトなどの問題が発生するおそれがあり，動作を保証できません。そのため，TP1/LiNKの開始中，オンライン中，または停止中に強制的に時刻を遅らせないでください。時刻を遅らせると，システムの時刻よりも時刻が進んだ状態のファイルがTP1/LiNKシステム内に残り，ラップアラウンド運用のトレースファイルの切り替えに失敗する場合があります。何らかのテストで時刻を遅らせる必要がある場合は，いったんTP1/LiNKを削除したあとに時刻を変更してください。時刻変更後，TP1/LiNKの再インストールやリソースマネジャの再接続などで，システムの再構築をしてください。

5.7　マルチOpenTP1の運用

マルチOpenTP1形態のTP1/LiNKを運用する場合，GUIとコマンドで操作します。ここでは，コマンドを使用した場合の操作について説明します。

マルチOpenTP1形態のTP1/LiNKでは，dcmakeconコマンドでコマンドプロンプトを作成して，その中でコマンドを実行する必要があります。ただし，「net start TP1LiNKXX」や「net stop TP1LiNKXX」については，通常のコマンドプロンプトからも実行できます（「XX」はマルチOpenTP1の識別子）。なお，dcmakeconコマンドを実行することで，あらかじめ環境変数が設定された，特定のTP1/LiNKを動かすためのコマンドプロンプトを作成します。したがって，ユーザ側で環境変数は変更しないでください。変更した場合の動作は保証できません。dcmakeconコマンドについては，「7.　運用コマンド」の「dcsetupml（マルチOpenTP1のセットアップと削除）」を参照してください。

なお，オリジナルのTP1/LiNKを操作する場合は，通常のコマンドプロンプト内でTP1/LiNKのコマンドを実行することも，コマンド引数なしのdcmakeconで起動したコマンドプロンプト内でTP1/LiNKのコマンドを実行することもできます。

また，マルチOpenTP1の運用コマンド実行時に重大な障害が発生した場合，速やかに次の資料を退避した上で，保守員に連絡してください。

%TEMP%¥dcsetupml.log

%DCDIR%¥spool¥errlog¥*.*（%DCDIR%は，オリジナルのTP1/LiNKのインストールフォルダ）

5.8　JP1連携時の運用（JP1/Base，JP1/AJS，およびJP1/AJS2 - Scenario Operation）

JP1と連携してシナリオテンプレートを利用する機能を使う場合は，JP1/Base，JP1/AJS，およびJP1/AJS2 - Scenario Operationを使用します。JP1/Baseについてはマニュアル「JP1/Base 運用ガイド」を，JP1/AJSについては内容に応じて該当するマニュアルを，JP1/AJS2 - Scenario Operationについてはマニュアル「JP1/Automatic Job Management System 2 - Scenario Operation」を参照してください。

＜この節の構成＞

5.8.1　シナリオテンプレートを利用したシステムの運用

5.8.2　シナリオの登録

5.8.3　スケールアウトの運用

5.8.4　スケールインの運用

5.8.5　ローリングアップデートの運用

5.8.6　サンプルシナリオテンプレートの利用

5.8.1　シナリオテンプレートを利用したシステムの運用

TP1/LiNKで利用するシナリオテンプレートとは，TP1/LiNKのコマンド，およびTP1/LiNKのコマンドを組み合わせた運用手順を，テンプレート（ひな形）として部品化したものです。また，シナリオテンプレートを業務に関連付けて運用手順として実行できるようにしたものを，シナリオと呼びます。

シナリオテンプレートを利用すると，JP1と連携してTP1/LiNKシステムを自動的に運用できます。TP1/LiNKがシナリオテンプレートを提供しているシナリオを次に示します。

スケールアウト
新しいTP1/LiNKのノードを構築して，TP1/LiNKシステムのドメイン構成に新しいTP1/LiNKのノードを追加します。

スケールイン
業務単位またはノード単位で，負荷レベルの低いノードのリソースを解放して，他システムに割り当てます。

ローリングアップデート
システムを停止させることなく，OSやUAPのセキュリティ対策パッチを適用します。

TP1/LiNKが提供しているシナリオテンプレートを次に示します。

OpenTP1_AddNode

OpenTP1_ChangeNodeID

OpenTP1_Deploy

OpenTP1_ScenarioAddNode

OpenTP1_Start

OpenTP1_StartUAP

OpenTP1_Stop

OpenTP1_StopUAP

OpenTP1_Undeploy

OpenTP1_UpdateDomain

OpenTP1_ScenarioScaleout

シナリオテンプレートの詳細については，「付録B　シナリオテンプレートの詳細」を参照してください。

シナリオテンプレートからTP1/LiNKのコマンドを実行する場合は，JP1/AJS2 - Scenario OperationでTP1/LiNKのコマンドの終了状態を判断するために，dcjcmdexコマンドにTP1/LiNKのコマンドを指定して実行してください。

5.8.2　シナリオの登録

シナリオテンプレートをJP1/AJS2 - Scenario Operationに登録するには，次に示すシナリオテンプレート定義ファイルをJP1/AJS2 - Scenario Operation Managerのシナリオライブラリフォルダに組み込みます。

シナリオテンプレート定義ファイル

%DCDIR%¥jp1_template¥ScenarioTemplate¥TP1_LiNK.sjis.xml

組み込み先シナリオライブラリフォルダ

/ScenarioLibrary/OpenTP1/TP1_LiNK

シナリオテンプレート定義ファイルをJP1/AJS2 - Scenario Operation Managerのシナリオライブラリフォルダに組み込む方法については，マニュアル「JP1/Automatic Job Management System 2 - Scenario Operation」を参照してください。

シナリオの登録時に設定するシナリオ変数について説明します。

＜この項の構成＞

(1)　シナリオ変数

(1)　シナリオ変数

運用環境によって変化する情報を，シナリオに応じてあらかじめ設定しておく変数をシナリオ変数と呼びます。例えば，ホスト名，ファイル名などをシナリオ変数として設定したあとで，シナリオ登録時にシナリオ変数の値を設定すると，運用環境に応じたシナリオを実行できます。

TP1/LiNKが提供するシナリオテンプレートは，入力するシナリオ変数（入力シナリオ変数）から，環境変数およびシナリオの実行ユーザを設定します。

入力シナリオ変数から設定する環境変数を次の表に示します。

表5-6　入力シナリオ変数から設定する環境変数

環境変数 | 説明 | シナリオ実行時の設定値※1
DCDIR | TP1/LiNKインストールフォルダ※2 | ?DCDIR?
DCCONFPATH | TP1/LiNKの定義ファイル格納フォルダ※3 | ?DCCONFPATH?

注※1

「?」で囲まれた文字列は，値を設定するJP1/AJS2 - Scenario Operationの入力シナリオ変数を示します。

注※2

完全パス名を50バイト以内で指定してください。

注※3

完全パス名で指定してください。

これらの環境変数を実行ユーザのシステム環境変数に設定している場合は，入力シナリオ変数にもシステム環境変数と同じ値を設定する必要があります。入力シナリオ変数，システム環境変数の両方を指定した場合の動作については，JP1/AJSのマニュアルの環境変数に関する記述を参照してください。

シナリオの実行ユーザは，各シナリオテンプレートの入力シナリオ変数USER_NAMEで指定します。シナリオの実行ユーザとして指定できるのは，JP1/Baseでユーザマッピングされたユーザだけです。シナリオを実行する前に，OpenTP1管理者をユーザマッピングしてください。ユーザマッピングの詳細については，マニュアル「JP1/Base 運用ガイド」を参照してください。

5.8.3　スケールアウトの運用

スケールアウトを実行すると，新しいTP1/LiNKのノードを構築して，TP1/LiNKシステムのドメイン構成に新しいTP1/LiNKのノードを追加します。これによって，システム拡張に伴う作業を速やかに処理できます。

＜この項の構成＞

(1)　スケールアウトの運用モデル

(2)　スケールアウトのシナリオ構成

(3)　スケールアウトとDPMを利用するTP1/LiNKの環境設定手順

(1)　スケールアウトの運用モデル

スケールアウトを実行すると，新しいTP1/LiNKのノードを追加するシナリオ，およびドメイン構成管理ノードを更新するシナリオが実行されます。スケールアウトを実行する場合の運用モデルを次の図に示します。

図5-14　スケールアウトの運用モデル

注※1

TP1/LiNK-Nの［RPC詳細設定］ダイアログボックスの［ネームサービス］タブの［ドメイン定義ファイルを使用する(F)］チェックボックスをオンにする

注※2

TP1/LiNK-A，TP1/LiNK-BおよびTP1/LiNK-Cの［システム環境設定］ウィンドウの［システムを構成するノード］欄にTP1/LiNK-Nを指定する

(2)　スケールアウトのシナリオ構成

TP1/LiNKのスケールアウトでは，新しいTP1/LiNKのノードを追加するシナリオを実行したあとに，ドメイン構成管理ノードを更新するシナリオを実行します。それぞれのシナリオについて説明します。

(a)　新しいTP1/LiNKのノードを追加するシナリオ

新しいTP1/LiNKのノードを追加するシナリオの実行順序を，次の図に示します。

図5-15　新しいTP1/LiNKのノードを追加するシナリオの実行順序

注※

INST_DIRはOpenTP1_GetInstDirから引き継がれる変数です。

各シナリオテンプレートの説明を次の表に示します。

表5-7　新しいTP1/LiNKのノードを追加するシナリオのシナリオテンプレート

項番 | シナリオテンプレートの名称 | 説明
1 | OpenTP1_GetInstDir※1 | TP1/LiNKインストールフォルダ取得
2 | OpenTP1_MakeTP1Dir※1 | TP1/LiNKフォルダの作成
3 | OpenTP1_SetConfig※1 | TP1/LiNKの定義設定
4 | OpenTP1_ChangeNodeID※2 | ノード識別子の設定
5 | OpenTP1_Deploy※2 | TP1/LiNKの登録
6 | OpenTP1_MakeFileSystem※3 | TP1/LiNKファイルシステムの作成
7 | OpenTP1_Start※2 | TP1/LiNKの起動
8 | OpenTP1_StartUAP※2 | UAPの起動

注※1

ユーザが作成します。TP1/LiNKが提供するサンプルについては，「5.8.6　サンプルシナリオテンプレートの利用」を参照してください。

注※2

TP1/LiNKが提供します。詳細については，「付録B　シナリオテンプレートの詳細」を参照してください。

注※3

XAリソースサービス機能を使用する場合にだけ必要です。XAリソースサービス機能を使用する場合は，XARファイル作成バッチファイル（%DCDIR%¥jp1_template¥examples¥tools¥dcj_mkfs.bat）を使用して，XARファイルを作成してください。XARファイル作成バッチファイルに指定する引数を次に示します。

・第1引数

［XAリソースサービス環境設定］ダイアログボックスの［オンライン用XARファイルを作成するフォルダ名(O)］に指定した値です。

・第2引数

［XAリソースサービス環境設定］ダイアログボックスの［バックアップ用XARファイルを作成するフォルダ名(B)］に指定した値です。

・第3引数

［システム環境設定］ウィンドウの［トランザクションブランチ数(B)］に指定した値です。

・第4引数

［XAリソースサービス環境設定］ダイアログボックスの［XARファイルのレコード長(R)］に指定した値です。

省略時は512が仮定されます。指定する場合は，第5引数を省略できません。

・第5引数

XARファイルサイズです。

省略時は1が仮定されます。指定する場合は，第4引数を省略できません。

XARファイルサイズは，次の算出式の値になります。

XARファイルサイズ（単位：メガバイト）＝↑（（レコード数＋1）×レコード長）÷1048576↑

（凡例）

レコード数：第3引数の値

レコード長：第4引数の値

↑↑：小数点以下を切り上げます。

(b)　ドメイン構成管理ノードを更新するシナリオ

ドメイン構成管理ノードを更新するときの前提条件を次に示します。

［RPC詳細設定］ダイアログボックスの［ネームサービス］タブで［ドメイン定義ファイルを使用する(F)］チェックボックスをオンにしている

ドメイン構成管理ノードがオンラインである

ドメイン構成管理ノードを更新するシナリオの実行順序を，次の図に示します。

図5-16　ドメイン構成管理ノードを更新するシナリオの実行順序

各シナリオテンプレートの説明を次の表に示します。

表5-8　ドメイン構成管理ノードを更新するシナリオのシナリオテンプレート

項番 | シナリオテンプレートの名称 | 説明
1 | OpenTP1_AddNode | ドメイン定義ファイルへの追加
2 | OpenTP1_UpdateDomain | ドメイン構成の更新

これらのシナリオテンプレートはTP1/LiNKが提供します。詳細については，「付録B　シナリオテンプレートの詳細」を参照してください。

(3)　スケールアウトとDPMを利用するTP1/LiNKの環境設定手順

スケールアウトを実行すると，TP1/LiNKの環境設定手順の一部を自動化できます。ここでは，スケールアウトとDPMのディスク複製機能を利用する場合の環境設定手順について説明します。手順1.～6.は，システム管理者（Administrators）の権限を持つユーザが実行してください。また，手順1.～4.はTP1/LiNKシステムのマスタコンピュータ（ディスク複製元）で，手順5.はDPMがインストールされているコンピュータで，手順6.～7.は新しく追加するTP1/LiNKのノード（ディスク複製先）で実行してください。

hostsファイルに，TP1/LiNKシステムが使用するホスト名を登録します。

OpenTP1管理者を登録します。
詳細については，「2.1.1　セットアップの準備」を参照してください。

TP1/LiNKのプログラムプロダクトをインストールします。
TP1/LiNKのプログラムプロダクトをインストールするディスク（マスタディスク）は，必ずOSと同じディスクに作成してください。この場合にリソースマネジャを利用するときは，リソースマネジャを接続する必要があります。詳細については，「2.1.3　リソースマネジャの接続」を参照してください。

スケールアウトで使用する，TP1/LiNKの環境設定をするためのファイルを作成します。
詳細については，「5.8.6(3)　サンプルシナリオテンプレートのカスタマイズ」を参照してください。

DPMのディスク複製機能を利用して，TP1/LiNKシステムのマスタコンピュータからバックアップしたディスクを，新しく追加するTP1/LiNKのノードにリストアします。
ディスク複製先のネットワークタイプは，DHCPではなく固定IPで割り当ててください。DPMの使用方法については，マニュアル「ServerConductor/DeploymentManager ユーザーズガイド」を参照してください。

JP1/AJS - Agentをセットアップします。
JP1/AJS - Agentのセットアップ方法については，マニュアル「JP1/Automatic Job Management System 2 セットアップガイド」，またはマニュアル「JP1/Automatic Job Management System 3 構築ガイド1」参照してください。

スケールアウトを実行します。
スケールアウトを実行すると，新しいTP1/LiNKのノードを追加するシナリオが実行されます。

5.8.4　スケールインの運用

スケールインを実行すると，ノード単位または業務単位で，負荷レベルの低いノードのリソースを解放して，他システムに割り当てます。これによって，リソースを有効に利用できます。

＜この項の構成＞

(1)　スケールインのシナリオ構成

(1)　スケールインのシナリオ構成

TP1/LiNKのスケールインのシナリオには，TP1/LiNKを停止してノード単位にリソースを解放するシナリオと，UAPを停止して業務単位にリソースを解放するシナリオの二つがあります。二つのシナリオのどちらかを実行してください。それぞれのシナリオについて説明します。

(a)　TP1/LiNKを停止してリソースを解放するシナリオ

TP1/LiNKを停止してTP1/LiNKのノードのリソースを解放するシナリオを，次の図に示します。

図5-17　TP1/LiNKを停止してリソースを解放するシナリオ

シナリオテンプレートの説明を次の表に示します。

表5-9　TP1/LiNKを停止してリソースを解放するシナリオのシナリオテンプレート

項番 | シナリオテンプレートの名称 | 説明
1 | OpenTP1_Stop | TP1/LiNKの停止

このシナリオテンプレートはTP1/LiNKが提供します。詳細については，「付録B　シナリオテンプレートの詳細」を参照してください。

(b)　UAPを停止してリソースを解放するシナリオ

UAPを停止してTP1/LiNKの業務リソースを解放するシナリオを，次の図に示します。

図5-18　UAPを停止してリソースを解放するシナリオ

シナリオテンプレートの説明を次の表に示します。

表5-10　UAPを停止してリソースを解放するシナリオのシナリオテンプレート

項番 | シナリオテンプレートの名称 | 説明
1 | OpenTP1_StopUAP | UAPの停止

このシナリオテンプレートはTP1/LiNKが提供します。詳細については，「付録B　シナリオテンプレートの詳細」を参照してください。

5.8.5　ローリングアップデートの運用

ローリングアップデートを実行すると，システムを停止させることなく，OSやUAPのセキュリティ対策パッチを適用します。これによって，システムを連続運転できます。

TP1/LiNKの停止および削除によってTP1/LiNKシステムが停止するおそれのあるノードは，ローリングアップデートを実行しないでください。

＜この項の構成＞

(1)　ローリングアップデートの運用モデル

(2)　ローリングアップデートのシナリオ構成

(1)　ローリングアップデートの運用モデル

ローリングアップデートを実行する場合の運用モデルを次の図に示します。

図5-19　ローリングアップデートの運用モデル

(2)　ローリングアップデートのシナリオ構成

ローリングアップデートの実行順序を，次の図に示します。

図5-20　ローリングアップデートの実行順序

各シナリオテンプレートの説明を次の表に示します。

表5-11　ローリングアップデートのシナリオテンプレート

項番 | シナリオテンプレートの名称 | 説明
1 | OpenTP1_Stop※1 | TP1/LiNKの停止
2 | OpenTP1_Undeploy※1 | TP1/LiNKの削除
3 | Patch※2 | パッチの適用
4 | OpenTP1_Deploy※1 | TP1/LiNKの登録
5 | OpenTP1_Start※1 | TP1/LiNKの起動

注※1

TP1/LiNKが提供します。詳細については，「付録B　シナリオテンプレートの詳細」を参照してください。

注※2

ユーザが作成します。

5.8.6　サンプルシナリオテンプレートの利用

TP1/LiNKでは，スケールアウトのシナリオテンプレートのうち，新しいTP1/LiNKのノードを追加するシナリオのサンプルシナリオテンプレートを提供しています。

TP1/LiNKをインストールした状態でサンプルシナリオテンプレート（OpenTP1_ScenarioScaleout）を実行すると，新しいTP1/LiNKの環境構築をしたあとに，TP1/LiNKとサンプルユーザサーバ（SPP）を起動します。サンプルシナリオテンプレートをカスタマイズすると，使用する環境に合わせて，スケールアウトを簡単に実行できます。

＜この項の構成＞

(1)　サンプルシナリオテンプレートの概要

(2)　サンプルシナリオテンプレートの登録

(3)　サンプルシナリオテンプレートのカスタマイズ

(1)　サンプルシナリオテンプレートの概要

サンプルシナリオテンプレートの概要について説明します。

サンプルシナリオテンプレートは，次の表に示す処理を実行します。

表5-12　サンプルシナリオテンプレートが実行する処理

項番
処理内容
シナリオテンプレートの名称
参照する入力シナリオ変数

1
TP1/LiNKインストールフォルダ取得
OpenTP1_GetInstDir

HOST_NAME

USER_NAME

2
TP1/LiNKフォルダの作成
OpenTP1_MakeTP1Dir

DCDIR

DCCONFPATH

HOST_NAME

USER_NAME

MULTI_ID

INST_DIR※

3
TP1/LiNKの定義設定
OpenTP1_SetConfig

DCDIR

DCCONFPATH

HOST_NAME

USER_NAME

PORT_NUMBER

INST_DIR※

4
ノード識別子の設定
OpenTP1_ChangeNodeID

DCDIR

DCCONFPATH

HOST_NAME

USER_NAME

NODE_ID

INST_DIR※

5
TP1/LiNKの登録
OpenTP1_Deploy

DCDIR

HOST_NAME

USER_NAME

MULTI_ID

6
TP1/LiNKの起動
OpenTP1_Start

DCDIR

DCCONFPATH

HOST_NAME

USER_NAME

7
UAP（サンプルプログラム）の起動
OpenTP1_StartUAP

DCDIR

DCCONFPATH

HOST_NAME

USER_NAME

USER_SERVER_NAME

注※

シナリオ入力変数INST_DIRは，項番1の「TP1/LiNKインストールフォルダ取得」ジョブによって取得されます。そのあとのジョブに引き継がれるため，ユーザが入力する必要はありません。

シナリオテンプレートごとに詳細を説明します。

TP1/LiNKインストールフォルダ取得（OpenTP1_GetInstDir）
システム環境変数のDCDIRをTP1/LiNKのインストールフォルダとして取得します。また，得られたTP1/LiNKインストールフォルダを出力シナリオ変数OUT_INST_DIRに引き継ぎます。

TP1/LiNKフォルダの作成
TP1/LiNKフォルダを作成します。TP1/LiNKのフォルダ作成バッチファイル（TP1/LiNKインストールフォルダ¥jp1_template¥examples¥tools¥dcjmk_dcdir.bat）を使用して，次のTP1/LiNKフォルダを作成します。
フォルダ：入力シナリオ変数DCDIRの設定値
所有者：入力シナリオ変数USER_NAMEの設定値

TP1/LiNKの定義設定（OpenTP1_SetConfig）
TP1/LiNK環境設定バッチファイル（%DCDIR%¥jp1_template¥examples¥tools¥dcjset_conf.bat）を使用して，定義ファイルおよびロードモジュールを，次に示す順序で設定します。

%DCDIR%¥jp1_template¥examplesフォルダ下にあるaplib，confを%DCDIR%¥フォルダ下のaplib，confにコピーする

定義ファイルのノード固有情報（ネームサービスのポート番号など）を設定する

ノード識別子の設定（OpenTP1_ChangeNodeID）
TP1/LiNKのノード識別子を入力シナリオ変数NODE_IDの設定値で設定します。

TP1/LiNKの登録
dcsetupmlコマンドを実行し，TP1/LiNKをOSに登録します。

TP1/LiNKの起動（OpenTP1_Start）
TP1/LiNKを起動します。

UAP（サンプルプログラム）の起動（OpenTP1_StartUAP）
入力シナリオ変数USER_SERVER_NAMEに設定されたユーザサーバのUAPを起動します。

(2)　サンプルシナリオテンプレートの登録

サンプルシナリオテンプレートを実行するには，サンプルシナリオテンプレートを，JP1/AJS2 - Scenario Operation Viewの操作によってJP1/AJS - Managerに登録します。

サンプルシナリオテンプレートは，次の場所に格納されています。

/ScenarioLibrary/OpenTP1/TP1_LiNK/OpenTP1_ScenarioScaleout

サンプルシナリオテンプレートを登録するには，次の表に示す入力シナリオ変数を設定します。

表5-13　サンプルシナリオテンプレートへの設定情報

入力シナリオ変数 | 内容 | 設定例
DCDIR | TP1/LiNKインストールフォルダ | C:¥OpenTP1_Multi
DCCONFPATH | TP1/LiNKの定義ファイル格納フォルダ | C:¥OpenTP1_Multi¥conf
HOST_NAME※1 | 実行するTP1/LiNKのノードのホスト名 | hostX
USER_NAME※1 | TP1/LiNKのユーザ名 | Administrator
USER_SERVER_NAME | ユーザサーバ名 | SPP（サンプルでは固定）
NODE_ID | TP1/LiNKのノード識別子（ノードごとに一意の4文字以内の文字列） | smpl
PORT_NUMBER | TP1/LiNKのネームポート番号 | 10000
MULTI_ID※2 | マルチOpenTP1の識別子（ノード内で一意の2文字以内の文字列） | ml

注※1

設定を省略できます。

注※2

オリジナルの場合は設定を省略できます。

表5-13の設定例の値をサンプルシナリオテンプレートに設定してシナリオを実行した場合，次の図に示すフォルダ構成のTP1/LiNK実行環境が作成されます。

図5-21　サンプルシナリオテンプレート実行後のTP1/LiNKフォルダ

(3)　サンプルシナリオテンプレートのカスタマイズ

サンプルとして提供される定義ファイルやTP1/LiNK環境設定バッチファイルなどをカスタマイズすると，TP1/LiNKの構成を簡単に変更できます。また，使用する環境に合わせてカスタマイズしたファイルを，TP1/LiNKのインストール環境とともにDPMで作成するマスタディスクに格納すると，スケールアウトを簡単に実行できます。

ユーザがカスタマイズできるサンプルファイルを次に示します。

サンプルプログラムのロードモジュール

定義ファイル

TP1/LiNK環境設定バッチファイル

各ファイルのカスタマイズ方法を次に示します。

(a)　サンプルプログラムのロードモジュールのカスタマイズ

業務に合わせたSUPおよびSPPを作成し，ロードモジュール（実行形式ファイル）を任意のフォルダに格納してください。

(b)　定義ファイルおよびTP1/LiNK環境設定バッチファイルのカスタマイズ

TP1/LiNKの定義をカスタマイズするには，定義ファイルおよびTP1/LiNK環境設定バッチファイルを変更します。

定義ファイルのカスタマイズ
TP1/LiNKの各定義ファイルの中で必要なものを，あらかじめTP1/LiNK環境設定GUIで設定しておきます。設定内容をノードごとに変えたい場合は，定義ファイルの内容にシナリオテンプレート用の文字列「@DCxxxxxx@」を設定してください。「@DCxxxxxx@」の値は，dcjchconfコマンドで設定できます。TP1/LiNK環境設定GUIの項目と定義ファイルの関連については，「付録C　GUIと定義ファイルの関連」を参照してください。

TP1/LiNK環境設定バッチファイルのカスタマイズ
TP1/LiNK環境設定バッチファイルは，定義ファイルに設定された文字列「@DCxxxxxx@」を，dcjchconfコマンドを実行して設定します。サンプルシナリオテンプレートの場合，次の表に示すように設定されます。

表5-14　サンプルシナリオテンプレートの文字列「@DCxxxxxx@」の設定値

ファイル名 | オペランド名 | 定義ファイルの設定値 | TP1/LiNK環境設定バッチファイルの設定値※1
betranrc | node_id※2 | @DCNODE_ID@ | ?NODE_ID?
name_port | @DCport_number@ | ?PORT_NUMBER?

注※1

「?」で囲まれた文字列は，入力シナリオ変数に設定された値を示します。

注※2

サンプルシナリオテンプレートが実行する「ノード識別子の設定」シナリオを実行すると，自動的に設定されます。

5.9　JP1連携時の運用（PFM - Agent for OpenTP1）

PFM - Agent for OpenTP1と連携する場合，システム共通定義（%DCDIR%¥conf¥BETRANRCファイル）のstatisticsオペランドにYを指定してください。statisticsオペランドの説明と定義例を次に示します。

●set statistics = Y|N

共用メモリ上にシステム統計情報を取得するかどうかを指定します。

Y

共用メモリ上にシステム統計情報を取得します。

N

共用メモリ上にシステム統計情報を取得しません。

定義例

定義例の最終行には，改行を入力してください。

# ALL RIGHTS RESERVED, COPYRIGHT (C)1996, HITACHI, LTD.
# LICENSED MATERIAL OF HITACHI,LTD.
# *
# * システム共通定義
# * 環境名： betranrc
# *
# TP1/LiNK (betranrc)
set name_port = 10000
set rpc_trace = N
set rpc_datacomp = N
set client_uid_check = N
set node_id = LiNK
set rpc_delay_statistics = Y
set statistics = Y

5.10　TP1/LiNKのサンプル

システムをより手軽に構築するため，TP1/LiNKにはアプリケーションプログラムのサンプル（例題）が格納してあります。

サンプルのアプリケーションプログラムは，メモリテーブル上にデータベースを作成して，そのデータを参照したり更新したりします。このアクセス手順で，TP1/LiNKのAPIを使う方法がわかります。

＜この節の構成＞

5.10.1　サンプルのファイル構成

5.10.2　サンプルを使う手順

5.10.3　サンプルのアプリケーションプログラムの仕様

5.10.4　UAPのコンパイルとリンケージ

5.10.1　サンプルのファイル構成

サンプルで使うフォルダとファイルについて説明します。

＜この項の構成＞

(1)　フォルダの構成

(2)　%DCDIR%¥jp1_template¥examples¥フォルダの内容

(3)　%DCDIR%¥rts_template¥examples¥conf¥フォルダの内容

(4)　%DCDIR%¥sample¥フォルダの内容

(1)　フォルダの構成

TP1/LiNKのサンプルが格納してあるフォルダの内容を次の図に示します。

次の図は，TP1/LiNKのフォルダ（OpenTP1ホームディレクトリ）を仮定値（C:¥OpenTP1）にした場合の例です。

図5-22　TP1/LiNKのサンプルが格納してあるフォルダの内容

(2)　%DCDIR%¥jp1_template¥examples¥フォルダの内容

%DCDIR%¥jp1_template¥examples¥フォルダには，スケールアウトのサンプルシナリオテンプレートで使う各種のフォルダやファイルを格納してあります。

%DCDIR%¥jp1_template¥examples¥aplib¥フォルダ
サンプルシナリオテンプレートのサンプルプログラムのロードモジュール（%DCDIR%¥jp1_template¥examples¥source¥フォルダ下のソースファイルに対するロードモジュール）を格納してあるフォルダです。

%DCDIR%¥jp1_template¥examples¥conf¥フォルダ
サンプルシナリオテンプレートで使用する定義ファイルを格納してあるフォルダです。

%DCDIR%¥jp1_template¥examples¥tools¥フォルダ
次に示す，サンプルシナリオテンプレートで使用するバッチファイルを格納してあるフォルダです。

dcjset_conf.bat
サンプルシナリオテンプレート用のTP1/LiNK環境設定バッチファイル

dcj_mkfs.bat
XAリソースサービスを使用する場合にXARファイルを作成するためのバッチファイル

dcj_comp.bat
サンプルシナリオテンプレート用のTP1/LiNKの環境（オリジナルまたはマルチ）種別取得バッチファイル

dcjmk_dcdir.bat
サンプルシナリオテンプレート用のTP1/LiNKフォルダ作成バッチファイル

%DCDIR%¥jp1_template¥examples¥source¥フォルダ
シナリオテンプレートのサンプルプログラム（UAP）を格納してあるフォルダです。
サンプルシナリオテンプレートでは，%DCDIR%¥sample¥tp1link¥フォルダ（「5.10.1(4)　%DCDIR%¥sample¥フォルダの内容」を参照）のC言語でコーディングしたアプリケーションプログラムをサンプルプログラムとして使用しています。サンプルプログラムの仕様については，「5.10.3　サンプルのアプリケーションプログラムの仕様」を参照してください。

(3)　%DCDIR%¥rts_template¥examples¥conf¥フォルダの内容

TP1/LiNKでは，リアルタイム統計情報サービスで使用するテンプレートとして，次に示すTP1/LiNKで取得できるすべての項目を設定したリアルタイム取得項目定義ファイルを提供しています。%DCDIR%¥conf直下にコピーして使用します。

LINK_ITM

(4)　%DCDIR%¥sample¥フォルダの内容

%DCDIR%¥sample¥フォルダには，サンプルとして使う各種のフォルダやファイルを格納してあります。

%DCDIR%¥sample¥template¥フォルダ
COBOL言語でアプリケーションプログラムを作成するときに，DATADIVISIONのコーディングの負担を軽くするために使う，COBOL言語用テンプレートを格納してあるフォルダです。COBOL言語用テンプレートについては，マニュアル「OpenTP1 プログラム作成の手引」のOpenTP1のサンプルの記述を参照してください。

%DCDIR%¥sample¥tp1link¥フォルダ
次に示すTP1/LiNKのサンプルを格納してあるフォルダです。

c¥
C言語でコーディングしたアプリケーションプログラム

cobol¥
COBOL言語でコーディングしたアプリケーションプログラム

conf¥
サンプルのアプリケーションプログラムの実行環境ファイル

5.10.2　サンプルを使う手順

サンプルを使う手順について説明します。TP1/LiNKのサンプルを使うまでの手順を次の図に示します。

図5-23　TP1/LiNKのサンプルを使うまでの手順

＜この項の構成＞

(1)　アプリケーションプログラムを作成します

(2)　アプリケーションプログラムの実行環境を設定します

(3)　TP1/LiNKを開始します

(4)　ユーザサーバを実行します

(1)　アプリケーションプログラムを作成します

アプリケーションプログラムは，次に示す手順で作成します。

(a)　実行形式ファイルを作成します

アプリケーションプログラムのソースプログラムを実行形式ファイルにするときは，Microsoft Visual C++のツールのnmakeコマンドを使います。nmakeコマンドで使うmakefileは，アプリケーションプログラムのフォルダ（c¥またはcobol¥）にそれぞれ格納してあります。

Visual Studio 2012では，makefile内で使用している標準コンパイルオプション定義マクロであるntwin32.makは配布されません。そのため，サンプルプログラムをコンパイルする場合にVisual Studio 2012コマンドプロンプトを使用して，コマンドライン上からnmakeコマンドを実行すると，ntwin32.makが見つからない旨のエラーが発生します。対処方法については，リリースノート（README）を参照してください。

nmakeコマンドは，c¥フォルダまたはcobol¥フォルダに移動してから実行します。

コマンド入力例を次に示します。

C言語の場合（スタブを使う場合）

C:¥>cd ¥OpenTP1¥sample¥tp1link¥c   <CR>
C:¥OpenTP1¥sample¥tp1link¥c> nmake  <CR>

C言語の場合（サービス関数動的ローディング機能を使う場合）

C:¥>cd ¥OpenTP1¥sample¥tp1link¥c <CR>
C:¥OpenTP1¥sample¥tp1link¥c> nmake /f make_svdl <CR>

COBOL言語の場合（スタブを使う場合）

C:¥>cd ¥OpenTP1¥sample¥tp1link¥cobol   <CR>
C:¥OpenTP1¥sample¥tp1link¥cobol> nmake <CR>

COBOL言語（COBOL2002）の場合（サービス関数動的ローディング機能を使う場合）

C:¥>cd ¥OpenTP1¥sample¥tp1link¥cobol <CR>
C:¥OpenTP1¥sample¥tp1link¥cobol> nmake /f make_svdl <CR>

COBOL言語（Micro Focus COBOL）の場合（スタブを使う場合）

C:¥>cd ¥OpenTP1¥sample¥tp1link¥cobol   <CR>
C:¥OpenTP1¥sample¥tp1link¥cobol> nmake /f make_mf  <CR>

COBOL言語（Micro Focus COBOL）の場合（サービス関数動的ローディング機能を使う場合）

C:¥>cd ¥OpenTP1¥sample¥tp1link¥cobol <CR>
C:¥OpenTP1¥sample¥tp1link¥cobol> nmake /f makemf_svdl <CR>

これらのコマンドを実行すると，c¥フォルダまたはcobol¥フォルダの下にSPPとSUPの実行形式ファイルが作成されます（サービス関数動的ローディング機能を使う場合はUAP共用ライブラリファイルも作成されます）。作成される実行形式ファイル名およびUAP共用ライブラリファイル名を次の表に示します。

表5-15　実行形式ファイル名およびUAP共用ライブラリファイル名

言語種別
ファイル種別
スタブを使う場合
サービス関数動的ローディング機能を使う場合

C言語
実行形式ファイル名

spp.exe

sup.exe

spp2.exe

sup2.exe

UAP共用ライブラリファイル名
－
libsv.dll

COBOL言語
実行形式ファイル名

cblspp.exe

cblsup.exe

cblspp2.exe

cblsup2.exe

UAP共用ライブラリファイル名
－
libsv.dll

（凡例）

－：作成されません。

(b)　実行形式ファイルをコピーします

アプリケーションプログラムの実行形式ファイルおよびUAP共用ライブラリファイルを，%DCDIR%¥aplib¥フォルダの下にコピーしてください。

(2)　アプリケーションプログラムの実行環境を設定します

アプリケーションプログラムの実行環境を設定する手順を次に示します。

(a)　実行環境を設定したファイルをコピーします

サンプルでは，アプリケーションプログラムの実行環境を設定したファイルも格納してあります。

実行環境を設定したファイルは，%DCDIR%¥sample¥tp1link¥conf¥フォルダの下に，SPP用とSUP用の両方が格納してあります。実行環境を設定したファイル名を次の表に示します。これらのファイルを，%DCDIR%¥conf¥フォルダの下にコピーしてください。

表5-16　実行環境を設定したファイル名

言語種別
スタブを使う場合
サービス関数動的ローディング機能を使う場合

C言語

spp

sup

spp2

sup2

COBOL言語

cblspp

cblsup

cblspp2

cblsup2

(b)　実行環境を確認します

［SPP環境設定］ダイアログボックスまたは［SUP環境設定］ダイアログボックスを使って，アプリケーションプログラムの実行環境が設定してあるかどうかを確認してください。コピーしたファイルと同じ名称のユーザサーバが登録してあれば，サンプルの準備作業は完了です。

(3)　TP1/LiNKを開始します

サンプルを使うときは，TP1/LiNKを開始してあることが前提です。TP1/LiNKを開始してください。

(4)　ユーザサーバを実行します

TP1/LiNKを開始したあとで，次に示す手順でユーザサーバを開始してください。

［TP1/LiNKアプリケーション管理SPP］ウィンドウを使って，サーバのAP（spp，spp2，cblsppまたはcblspp2）を開始します。サーバのAPがオンライン状態になると，TP1/LiNKのメッセージログとWindowsのイベントビューアにメッセージが登録されます。

サーバのAPがオンライン状態になったことを確認したあとで，［TP1/LiNKアプリケーション管理SUP］ウィンドウを使って，クライアントのAP（sup，sup2，cblsupまたはcblsup2）を開始します。クライアントのAPからサービスが要求されて，サーバのAPがデータベースを参照および更新します。

5.10.3　サンプルのアプリケーションプログラムの仕様

TP1/LiNKのサンプルに格納してあるアプリケーションプログラムの仕様は，TP1/Server Baseのサンプル（Baseサンプル）と同じです。ただし，サーバのAPではトランザクションの制御はしていません。

サンプルのアプリケーションプログラムの仕様については，マニュアル「OpenTP1 プログラム作成の手引」のBaseサンプルの仕様を参照してください。

5.10.4　UAPのコンパイルとリンケージ

UAPをコンパイルし，リンケージするために，Microsoft Visual C++のツールのnmakeコマンドを使います。ここでは，nmakeコマンドとともに使用できるmakefileの例を，作成する言語ごとに説明します。詳細については，各言語のマニュアルを参照してください。なお，サービス関数動的ローディング機能を使用してUAPを作成する場合は，「(5)　サービス関数動的ローディング機能を使用する場合」を参照してください。

＜この項の構成＞

(1)　SPPをC言語で作成する場合

(2)　SPPをCOBOL2002で作成する場合

(3)　SPPをVisual Studioのプロジェクトで作成する場合

(4)　SPPをCOBOL2002開発マネージャで作成する場合

(5)　サービス関数動的ローディング機能を使用する場合

(1)　SPPをC言語で作成する場合

(a)　ソースファイル名

C言語で作成したUAPのソースプログラム名

メイン関数：exmain.c

サービス関数1：exsv1.c

サービス関数2：exsv2.c

RPCインタフェース定義ファイル名：ex.def

(b)　メイクファイル

# TP1TEST Make File
NODEBUG=1
!include <ntwin32.mak>
SYSLIB = msvcrt.lib $(conlibsdll)
TP1LIB = betran.lib
RMLIB = RM.lib

all:TP1TEST.exe

#コンパイル
exmain.obj:exmain.c
$(cc) $(cflags) $(cvarsdll) $(cdebug) $*.c

exsv1.obj:exsv1.c
$(cc) $(cflags) $(cvarsdll) $(cdebug) $*.c

exsv2.obj:exsv2.c
$(cc) $(cflags) $(cvarsdll) $(cdebug) $*.c

ex_sstb.obj:ex_sstb.c
$(cc) $(cflags) $(cvarsdll) $(cdebug) $*.c

#スタブソースファイルの作成
ex_sstb.c:ex.def
$(DCDIR)¥bin¥stbmake $?

# リンケージ
TP1TEST.exe: exmain.obj exsv1.obj exsv2.obj ex_sstb.obj
$(link) /NODEFAULTLIB $(conflags) $(linkdebug) /out:$*.exe $** ¥
[$(DCDIR)¥spool¥trnrmcmd¥userobj¥オブジェクトファイル名 ¥]
[$(RMLIB)] $(TP1LIB) $(SYSLIB)

（凡例）

RM.libおよび[$(RMLIB)]

使用するリソースマネジャのライブラリ名を指定します。

[$(DCDIR)¥spool¥trnrmcmd¥userobj¥オブジェクトファイル名 ¥]

OpenTP1下でリソースマネジャにアクセスするトランザクションを実行する場合だけ指定します。完全パス名で指定してください。

トランザクション制御用オブジェクトファイルは，［リソースマネジャ接続］アイコンで作成します。作成方法の詳細については，「2.1.3　リソースマネジャの接続」を参照してください。

ntwin32.makについて

Visual Studio 2012では，標準コンパイルオプション定義マクロであるntwin32.makは配布されません。

(c)　マニフェストファイルについて

Visual Studioで作成したプログラムを動作させる場合，マニフェストファイルが必要です。マニフェストファイルをメイクファイルに埋め込まない場合，プログラムを実行するフォルダにマニフェストファイルをコピーする必要があります。

なお，Visual Studio 2010またはVisual Studio 2012を使用してプログラムを作成している場合，マニフェストが作成されないことがあります。この場合は，マニフェストファイルは必須ではありません。

(d)　メイクファイル（マニフェストファイルを埋め込む場合）

# TP1TEST Make File
NODEBUG=1
!include <ntwin32.mak>
SYSLIB = msvcrt.lib $(conlibsdll)
TP1LIB = betran.lib
RMLIB = RM.lib

all:TP1TEST.exe

#コンパイル
exmain.obj:exmain.c
$(cc) $(cflags) $(cvarsdll) $(cdebug) $*.c

exsv1.obj:exsv1.c
$(cc) $(cflags) $(cvarsdll) $(cdebug) $*.c

exsv2.obj:exsv2.c
$(cc) $(cflags) $(cvarsdll) $(cdebug) $*.c

ex_sstb.obj:ex_sstb.c
$(cc) $(cflags) $(cvarsdll) $(cdebug) $*.c

#スタブソースファイルの作成
ex_sstb.c:ex.def
$(DCDIR)¥bin¥stbmake $?

# リンケージ
TP1TEST.exe: exmain.obj exsv1.obj exsv2.obj ex_sstb.obj
$(link) /NODEFAULTLIB $(conflags) $(linkdebug) /out:$*.exe $** ¥
[$(DCDIR)¥spool¥trnrmcmd¥userobj¥オブジェクトファイル名 ¥]
[$(RMLIB)] $(TP1LIB) $(SYSLIB)
mt -manifest $@.manifest -outputresource:$@;1

（凡例）

RM.libおよび[$(RMLIB)]

使用するリソースマネジャのライブラリ名を指定します。

[$(DCDIR)¥spool¥trnrmcmd¥userobj¥オブジェクトファイル名 ¥]

OpenTP1下でリソースマネジャにアクセスするトランザクションを実行する場合だけ指定します。完全パス名で指定してください。

トランザクション制御用オブジェクトファイルは，［リソースマネジャ接続］アイコンで作成します。作成方法の詳細については，「2.1.3　リソースマネジャの接続」を参照してください。

ntwin32.makについて

Visual Studio 2012では，標準コンパイルオプション定義マクロであるntwin32.makは配布されません。

(e)　アプリケーションの配置について

Visual Studioで作成したアプリケーションをVisual Studioをインストールしていない環境で動作させる場合，Visual C++アプリケーションの実行に必要なMicrosoft Visual C++再頒布可能パッケージ（x86）をインストールする必要があります。詳細は，各Visual Studioのドキュメントを参照してください。

(2)　SPPをCOBOL2002で作成する場合

(a)　ソースファイル名

メインプログラム名：main.cbl

サービスプログラム名1：sev1.cbl

サービスプログラム名2：sev2.cbl

RPCインタフェース定義ファイル名：ex.def

(b)　メイクファイル

# TP1TEST Make File
NODEBUG=1
!include <ntwin32.mak>
CBLFG1 = -Compile,NoLink -Lib,CUI -Comp5 -Main,System
CBLFG2 = -Compile,NoLink -Lib,CUI -Comp5
TP1LIB = betran.lib
RMLIB = RM.lib
CCBL = ccbl2002

all:TP1TEST.exe

# コンパイル
main.obj:main.cbl
$(CCBL) $(CBLFG1) main.cbl

sev1.obj:sev1.cbl
$(CCBL) $(CBLFG2) sev1.cbl

sev2.obj:sev2.cbl
$(CCBL) $(CBLFG2) sev2.cbl

ex_sstb.obj:ex_sstb.c
$(cc) $(cflags) $(cvarsdll) $(cdebug) $*.c

# スタブソースファイルの作成
ex_sstb.c:ex.def
$(DCDIR)¥bin¥stbmake $?

# リンケージ
TP1TEST.exe: main.obj sev1.obj sev2.obj ex_sstb.obj
$(CCBL) -Lib,CUI -OutputFile $*.exe $** ¥
[$(DCDIR)¥spool¥trnrmcmd¥userobj¥オブジェクトファイル名 ¥]
[$(RMLIB)] $(TP1LIB)

（凡例）

RM.libおよび[$(RMLIB)]

使用するリソースマネジャのライブラリ名を指定します。

[$(DCDIR)¥spool¥trnrmcmd¥userobj¥オブジェクトファイル名 ¥]

OpenTP1下でリソースマネジャをアクセスするトランザクションを実行する場合だけ指定します。完全パス名で指定してください。

トランザクション制御用オブジェクトファイルは，［リソースマネジャ接続］アイコンで作成します。作成方法の詳細については，「2.1.3　リソースマネジャの接続」を参照してください。

ntwin32.makについて

Visual Studio 2012では，標準コンパイルオプション定義マクロであるntwin32.makは配布されません。

(3)　SPPをVisual Studioのプロジェクトで作成する場合

(a)　プロジェクトの種類

プロジェクト作成時に指定するプロジェクトの種類は，Win32プロジェクトを指定してください。

(b)　プロジェクトの設定

プロジェクトを構成するファイル

プロジェクトを構成するソースファイルとして作成したアプリケーションのソース，およびスタブソースファイルを指定してください。

CまたはMicrosoft Visual C++の設定

全般カテゴリで使用する追加のインクルードディレクトリとして，TP1/LiNKインストールフォルダ¥includeを指定してください。

コード生成カテゴリで使用するランタイムライブラリとして，「マルチスレッド DLL(/MD)」を指定してください。

プリコンパイル済みヘッダーカテゴリで，「プリコンパイル済みヘッダーを使用しない」を選択してください。

リンカの設定

全般カテゴリで使用する追加のライブラリディレクトリとして，TP1/LiNKインストールフォルダ¥libを指定してください。

入力カテゴリで使用する追加する依存関係として，msvcrt.lib betran.libを指定してください。また，必要に応じて次に示す内容を指定してください。
・リソースマネジャのライブラリ
　リソースマネジャを使用する場合だけ指定します。
・%DCDIR%¥spool¥trnrmcmd¥userobj¥トランザクション制御用オブジェクトファイル名
　OpenTP1下でリソースマネジャをアクセスするトランザクションを実行する場合だけ指定します。完全パス名で指定してください。
トランザクション制御用オブジェクトファイルは，［リソースマネジャ接続］アイコンで作成します。作成方法の詳細については，「2.1.3　リソースマネジャの接続」を参照してください。

入力カテゴリの，すべての既定のライブラリの無視で，はい（/NODEFAULTLIB）を選択してください。

システムカテゴリのサブシステムとして，コンソール（/SUBSYSTEM:CONSOLE）を選択してください。

(4)　SPPをCOBOL2002開発マネージャで作成する場合

(a)　プロジェクトの設定の［リンク］タブ

「-Lib：CUI用の実行時ライブラリを使用する」を設定してください。

「ライブラリの指定」として，次に示す内容を指定してください。

リソースマネジャのライブラリ
リソースマネジャを使用する場合だけ指定します。

betran.lib

(b)　プロジェクトの設定の［ユーザ設定］タブ

リンケージオプションとして，次に示す内容を追加してください。

Microsoft Visual C++で作成したスタブオブジェクトファイル名

%DCDIR%¥spool¥trnrmcmd¥userobj¥トランザクション制御用オブジェクトファイル名
OpenTP1下でリソースマネジャにアクセスするトランザクションを実行する場合だけ指定します。完全パス名で指定してください。
トランザクション制御用オブジェクトファイルは，［リソースマネジャ接続］アイコンで作成します。作成方法の詳細については，「2.1.3　リソースマネジャの接続」を参照してください。

(5)　サービス関数動的ローディング機能を使用する場合

(a)　メインプログラムの作成

dc_rpc_mainloop関数を含むメインプログラムを作成します。作成例については，製品に付属されているサンプルソース（メイクファイル）を参照してください。

(b)　UAP共用ライブラリの作成

UAP共用ライブラリ中には，複数のサービス関数を含めることができます。UAP共用ライブラリに含まれる関数の中で，［SPP環境設定］ダイアログボックスの［登録するサービス］欄で指定するサービス関数については，必ずUAP共用ライブラリからエクスポートしてください。エクスポートされていないサービス関数がUAP共用ライブラリに存在していた場合，ユーザサーバ起動時（非常駐サーバの場合はプロセス起動時）にKFCA00344-Eメッセージが出力されて，dc_rpc_mainloop関数のDCRPCER_FATAL（-303）でエラーリターンします。［SPP環境設定］ダイアログボックスの［登録するサービス］欄で指定するサービス関数以外の関数についてのエクスポートは必須ではありませんので，処理形態に応じてエクスポートしてください。

UAP共用ライブラリから関数をエクスポートするには，LIBコマンドまたはLINKコマンドを使用する方法があります。次に示すどれかの方法でサービス関数をエクスポートしてください。

LIBコマンドまたはLINKコマンドで指定するオブジェクトファイル内で，__declspec（dllexport）を使用してサービス関数名を定義する。

LIBコマンドのオプションで，「/EXPORT:サービス関数名」を指定する。

LIBコマンドのオプションで，「/DEF:モジュール定義ファイル」を指定して，モジュール定義ファイル中にEXPORTS文形式でサービス関数を定義する。

サービス関数の作成例については，製品に付属されているサンプルソース（メイクファイル）を参照してください。

(c)　UAP共用ライブラリを作成する場合の注意

［SPP環境設定］ダイアログボックスの［登録するサービス］欄で指定したUAP共用ライブラリ内でTLS（スレッドローカルストレージ）を使用した変数宣言をしないようにしてください。次のように，コーディングを含むUAPオブジェクトが，UAP共用ライブラリ内に存在する場合，該当の変数を参照するときにアクセス例外が発生します。

__declspec(Thread) int sample;

(d)　サービス関数動的ローディング機能を使用する場合の注意事項

次に示す場合はサービス関数動的ローディング機能を使用できません。

MHPサーバ

SPP.NETサーバ

マネージドコードのUAP共用ライブラリ
マネージドコードのUAP共用ライブラリに含まれるサービス関数は，サービス関数動的ローディング機能で呼び出すことはできません。

6.　ウィンドウの操作

この章では，TP1/LiNKのウィンドウおよびダイアログボックスを操作する方法について説明します。

＜この章の構成＞

6.1　TP1/LiNKコントロール（TP1/LiNKの開始と終了）

6.2　アプリケーション管理（SPP）

6.3　アプリケーション管理（SUP）

6.4　TP1/LiNKオペレーション

6.5　ヘルプの使い方

6.1　TP1/LiNKコントロール（TP1/LiNKの開始と終了）

TP1/LiNKを開始または終了する方法について説明します。

TP1/LiNKを開始または終了するときは，［スタート］－［プログラム］－［TP1_LiNK］－［TP1_LiNKコントロール］メニューを選択します。

［TP1_LiNKコントロール］メニューを選択すると，［TP1/LiNKコントロール］ウィンドウが表示されます。

図6-1　［TP1/LiNKコントロール］ウィンドウ

メニューバーのコマンド

［TP1/LiNKコントロール］ウィンドウのメニューについて説明します。

［ファイル(F)］メニュー

［ファイル(F)］メニューには，次に示すコマンドがあります。

［終了(X)］：［TP1/LiNKコントロール］ウィンドウを終了します。

［ヘルプ(H)］メニュー

バージョン情報を示すヘルプを開きます。［ヘルプ(H)］メニューについては，「6.5　ヘルプの使い方」を参照してください。

ボタンの使い方

［起動(S)］ボタン

TP1/LiNKを開始します。［正常開始(N)］チェックボックスの指定のしかたによって，開始形態が異なります。

通常の業務でTP1/LiNKを開始するとき
［正常開始(N)］チェックボックスをオフにして［起動(S)］ボタンをクリックします。TP1/LiNKは再開始（リラン）で開始します。

TP1/LiNKを正常開始するとき
［正常開始(N)］チェックボックスをオンにして［起動(S)］ボタンをクリックします。前回の業務が終了したときの状態を何も引き継ぎません。

TP1/LiNKを組み込んだ直後に開始すると，正常開始として開始します。

TP1/LiNKのシステム環境設定を変更したあとは，必ず正常開始でTP1/LiNKを開始してください。

［停止(T)］ボタン

TP1/LiNKを終了します。

［強制停止(O)］ボタン

TP1/LiNKを強制的に停止します。次の場合は，［強制停止(O)］ボタンをクリックして，TP1/LiNKをいったん強制停止してください。

［起動(S)］ボタンをクリックしても，TP1/LiNKが開始しない

［停止(T)］ボタンをクリックしても，TP1/LiNKが終了しない

ウィンドウの内容

［TP1/LiNK状態］欄

現在のTP1/LiNKの状態が，テキストボックスに表示されます。ボタンをクリックする前に，［TP1/LiNK状態］欄の表示を確認してください。

6.2　アプリケーション管理（SPP）

TP1/LiNKのユーザサーバ（SPP）を操作する方法について説明します。

SPPを操作するときは，［スタート］－［プログラム］－［TP1_LiNK］－［アプリケーション管理SPP］メニューを選択します。

［アプリケーション管理SPP］メニューを選択すると，［TP1/LiNKアプリケーション管理SPP］ウィンドウが表示されます。

図6-2　［TP1/LiNKアプリケーション管理SPP］ウィンドウ

メニューバーのコマンド

［TP1/LiNKアプリケーション管理SPP］ウィンドウのメニューについて説明します。

［ファイル(F)］メニュー

［ファイル(F)］メニューには，次に示すコマンドがあります。

［終了(X)］：［TP1/LiNKアプリケーション管理SPP］ウィンドウを終了します。

［ヘルプ(H)］メニュー

バージョン情報を示すヘルプを開きます。［ヘルプ(H)］メニューについては，「6.5　ヘルプの使い方」を参照してください。

ボタンの使い方

次に示すボタンは，リストボックスにあるSPPのユーザサーバ名の行を選択してからクリックしてください。ユーザサーバ名を選択しないでボタンをクリックした場合，エラーダイアログボックスが表示されます。また，ユーザサーバ名を同時に複数選択して，各ボタンをクリックすることもできます。ただし，同時に選択できるユーザサーバ数は13までです。なお，複数のユーザサーバ名の行を選択して［サービス(V)...］ボタンをクリックした場合は，最上位のユーザサーバの［サービス閉塞管理］ダイアログボックスを開きます。

［起動(S)］ボタン

［停止(T)］ボタン

［強制停止(O)］ボタン

［閉塞(D)］ボタン

［閉塞解除(R)］ボタン

［サービス(V)...］ボタン

［起動(S)］ボタン

指定したユーザサーバを開始します。指定したユーザサーバが開始したあと，リストボックスにあるユーザサーバの行に最初の状態が表示されます。

また，リストボックスにあるユーザサーバ名をダブルクリックして開始することもできます。

［停止(T)］ボタン

指定したユーザサーバを正常終了します。指定したユーザサーバが終了したあと，リストボックスにあるユーザサーバの行に最新の状態が表示されます。

［最新情報に更新(L)］ボタン

リストボックスの情報を最新の状態にします。

［強制停止(O)］ボタン

指定したユーザサーバを強制停止します。指定したユーザサーバが強制停止したあと，リストボックスにあるユーザサーバの行に最新の状態が表示されます。

［サービス(V)...］ボタン

次に示すユーザサーバを選択した場合，サービス単位の閉塞管理をするための［サービス閉塞管理］ダイアログボックスを開きます。

［SPP詳細設定］ダイアログボックスの［閉塞］タブで［サービス単位の閉塞管理をする(S)］チェックボックスがオンの場合

ユーザサーバの状態が「実行中」または「閉塞中」の場合

TP1/LiNKが稼働しているときだけ，このボタンは有効です。複数のユーザサーバ名を選択して，［サービス(V)...］ボタンをクリックした場合，最上位のユーザサーバの［サービス閉塞管理］ダイアログボックスを開きます。

［サービス閉塞管理］ダイアログボックスの使い方については，「6.2.1　サービス単位の閉塞管理」を参照してください。

［閉塞(D)］ボタン

指定したユーザサーバのスケジュールを閉塞します。指定したユーザサーバのスケジュールが閉塞したあと，リストボックスにあるユーザサーバの行に最新の状態が表示されます。

［閉塞解除(R)］ボタン

指定したユーザサーバのスケジュール閉塞状態を解除します。指定したユーザサーバの閉塞が解除されたあと，リストボックスにあるユーザサーバの行に最新の状態が表示されます。

［プログラムのサーチパス(P)...］ボタン

ユーザサーバのサーチパスを追加または削除する［TP1/LiNKサーチパス］ダイアログボックスを開きます。

TP1/LiNKが稼働しているときでも，サーチパスを変更できます。変更後のサーチパスは，いったんSPPを終了させてから再び起動すると有効になります。［TP1/LiNKサーチパス］ダイアログボックスの使い方については，「3.2.3　サーチパスの設定」を参照してください。

［サーバ定義(E)...］ボタン

SPPの実行環境を設定する［アプリケーション環境SPP］ダイアログボックスを開きます。TP1/LiNKが稼働しているときでも，SPPの環境設定を変更できます。変更後の設定内容は，いったんSPPを終了させてから再び起動すると有効になります。［アプリケーション環境SPP］ダイアログボックスの使い方については，「3.2.1　SPPの実行環境の設定」を参照してください。

［終了(C)］ボタン

［TP1/LiNKアプリケーション管理SPP］ウィンドウを終了します。

＜この節の構成＞

6.2.1　サービス単位の閉塞管理

6.2.1　サービス単位の閉塞管理

サービス単位に閉塞管理する方法について説明します。

サービス単位に閉塞管理をするときは，［TP1/LiNKアプリケーション管理SPP］ウィンドウの［サービス(V)...］ボタンをクリックします。ボタンをクリックすると，［サービス閉塞管理］ダイアログボックスが表示されます。

図6-3　［サービス閉塞管理］ダイアログボックス

ダイアログボックスの内容

［サービス状態］

現在のサービスの状態が表示されます。

実行中…スケジューリングできる状態

閉塞中…サービス閉塞中（サービス要求を受け付けられる状態で閉塞中）

停止中…TP1/LiNKが停止または表示対象のユーザサーバが停止した場合

ボタンの使い方

次に示すボタンは，リストボックスにあるサービス名を選択し，クリックしてください。サービス名を選択しないでボタンをクリックした場合，エラーダイアログボックスが表示されます。また，サービス名を同時に複数選択して，各ボタンをクリックすることもできます。ただし，同時に選択できるサービス名は13までです。

［閉塞(H)］ボタン

［閉塞解除(R)］ボタン

［閉塞(H)］ボタン

指定したサービスのスケジュールを閉塞します。指定したサービスのスケジュールが閉塞したあと，リストボックスにあるサービスの行に最新の状態が表示されます。

［閉塞解除(R)］ボタン

指定したサービスのスケジュール閉塞状態を解除します。指定したサービスの閉塞が解除されたあと，リストボックスにあるサービスの行に最新の状態が表示されます。

［最新情報に更新(L)］ボタン

リストボックスの情報を最新の状態にします。

［終了(C)］ボタン

［サービス閉塞管理］ダイアログボックスを終了します。

6.3　アプリケーション管理（SUP）

TP1/LiNKのユーザサーバ（SUP）またはRAPサービスを操作する方法について説明します。

SUPまたはRAPサービスを操作するときは，［スタート］－［プログラム］－［TP1_LiNK］－［アプリケーション管理SUP］メニューを選択します。

［アプリケーション管理SUP］メニューを選択すると，［TP1/LiNKアプリケーション管理SUP］ウィンドウが表示されます。

図6-4　［TP1/LiNKアプリケーション管理SUP］ウィンドウ

以降の操作説明では，操作する対象をSUPに統一して表記します。RAPサービスを操作するときは，SUPをRAPサービスに読み替えてください。

メニューバーのコマンド

［TP1/LiNKアプリケーション管理SUP］ウィンドウのメニューについて説明します。

［ファイル(F)］メニュー

［ファイル(F)］メニューには，次に示すコマンドがあります。

［終了(X)］：［TP1/LiNKアプリケーション管理SUP］ウィンドウを終了します。

［ヘルプ(H)］メニュー

バージョン情報を示すヘルプを開きます。［ヘルプ(H)］メニューについては，「6.5　ヘルプの使い方」を参照してください。

ボタンの使い方

次に示すボタンは，リストボックスにあるSUPのユーザサーバ名の行を選択してからクリックしてください。ユーザサーバ名を選択しないでボタンをクリックしても無視されます。

［起動(S)］ボタン

［停止(T)］ボタン

［強制停止(O)］ボタン

［起動(S)］ボタン

指定したユーザサーバを開始します。指定したユーザサーバが開始したあと，リストボックスにあるユーザサーバの行に最新の状態が表示されます。

また，リストボックスにあるユーザサーバ名をダブルクリックして開始することもできます。

［停止(T)］ボタン

指定したユーザサーバを正常終了します。指定したユーザサーバが終了したあと，リストボックスにあるユーザサーバの行に最新の状態が表示されます。

［強制停止(O)］ボタン

指定したユーザサーバを強制停止します。指定したユーザサーバが強制停止したあと，リストボックスにあるユーザサーバの行に最新の状態が表示されます。

［最新情報に更新(L)］ボタン

リストボックスの情報を最新の状態にします。

［プログラムのサーチパス(P)...］ボタン

ユーザサーバのサーチパスを追加または削除する［TP1/LiNKサーチパス］ダイアログボックスを開きます。

TP1/LiNKが稼働しているときでも，サーチパスを変更できます。変更後のサーチパスは，いったんSUPを終了させてから再び起動すると有効になります。［TP1/LiNKサーチパス］ダイアログボックスの使い方については，「3.3.3　サーチパスの設定」を参照してください。

［サーバ定義(E)...］ボタン

SUPの実行環境を設定する［アプリケーション環境SUP］ダイアログボックスを開きます。TP1/LiNKが稼働しているときでも，SUPの環境設定を変更できます。変更後の設定内容は，いったんSUPを終了させてから再び起動すると有効になります。［アプリケーション環境SUP］ダイアログボックスの使い方については，「3.3.1　SUPの実行環境の設定」を参照してください。

RAPサービス名を選択してこのボタンをクリックすると，エラーになります。

［終了(C)］ボタン

［TP1/LiNKアプリケーション管理SUP］ウィンドウを終了します。

6.4　TP1/LiNKオペレーション

TP1/LiNKを運用するときの操作について説明します。

TP1/LiNKを操作するときは，［スタート］－［プログラム］－［TP1_LiNK］－［TP1_LiNKオペレーション］メニューを選択します。

［TP1_LiNKオペレーション］メニューを選択すると，［TP1/LiNKオペレーション］ウィンドウが表示されます。

図6-5　［TP1/LiNKオペレーション］ウィンドウ

メニューバーのコマンド

［TP1/LiNKオペレーション］ウィンドウのメニューについて説明します。

［ファイル(F)］メニュー

［ファイル(F)］メニューには，次に示すコマンドがあります。

［終了(X)］：［TP1/LiNKオペレーション］ウィンドウを終了します。

［ヘルプ(H)］メニュー

バージョン情報を示すヘルプを開きます。［ヘルプ(H)］メニューについては，「6.5　ヘルプの使い方」を参照してください。

ボタンの使い方

［トランザクション管理(T)...］ボタン

トランザクション機能に関する操作をする［TP1/LiNKトランザクション管理］ダイアログボックスを開きます。

［トレース情報表示(I)...］ボタン

RPCトレースとUAPトレースを編集出力する［TP1/LiNKトレース情報表示］ダイアログボックスを開きます。

［メッセージログ表示(M)...］ボタン

メッセージログを管理する［TP1/LiNKメッセージログ表示］ダイアログボックスを開きます。

［稼働統計管理(S)...］ボタン

稼働統計情報を取得または編集出力する［TP1/LiNK稼働統計管理］ダイアログボックスを開きます。

［XAリソースサービス管理(X)...］ボタン

XAリソースサービスに関する操作をする［TP1/LiNK XAリソースサービス管理］ダイアログボックスを開きます。

［終了(C)］ボタン

［TP1/LiNKオペレーション］ウィンドウを終了します。

＜この節の構成＞

6.4.1　トランザクションの管理

6.4.2　トレース情報の出力

6.4.3　メッセージログの表示

6.4.4　稼働統計情報の管理

6.4.5　XAリソースサービスの管理

6.4.1　トランザクションの管理

トランザクション機能の管理を操作する方法について説明します。

トランザクションに関する操作をするときは，［TP1/LiNKオペレーション］ウィンドウの［トランザクション管理(T)...］ボタンをクリックします。ボタンをクリックすると，［TP1/LiNKトランザクション管理］ダイアログボックスが表示されます。

図6-6　［TP1/LiNKトランザクション管理］ダイアログボックス

ダイアログボックスの内容

［処理状態］

現在のトランザクション処理状態の種別が表示されます。

ACTIVE…実行中

BEGINNING…トランザクションブランチ開始処理中

COMMIT…コミット処理中

FORGETTING…トランザクションブランチ終了処理中

HEURISTIC_COMMIT…ヒューリスティック決定コミット処理中

HEURISTIC_FORGETTING…ヒューリスティック決定後のトランザクションブランチ終了処理中

HEURISTIC_ROLLBACK…ヒューリスティック決定ロールバック処理中

IDLE…同期点処理へ移行中

PREPARE…コミット（1相目）処理中

READY…コミット（2相目）処理待ち

ROLLBACK…ロールバック処理中

ROLLBACK_ACTIVE…ロールバック処理待ち

SUSPENDED…中断中

ボタンの使い方

次に示すボタンは，リストボックスにあるユーザサーバ名の行を選択してからクリックしてください。ユーザサーバ名を選択しないでボタンをクリックしても無視されます。

［コミット(M)］ボタン

［ロールバック(R)］ボタン

［強制終了(F)］ボタン

「処理状態」に状態が表示されていないユーザサーバの行を選択してクリックすると，［コミット(M)］ボタンまたは［ロールバック(R)］ボタンはエラーになります。

［コミット(M)］ボタン

指定したユーザサーバが実行しているトランザクションを強制的にコミットします。指定したユーザサーバの処理をコミットしたあと，リストボックスにあるユーザサーバの行に最新の状態が表示されます。

［ロールバック(R)］ボタン

指定したユーザサーバが実行しているトランザクションを強制的にロールバックします。指定したトランザクションをロールバックしたあと，リストボックスにあるユーザサーバの行に最新の状態が表示されます。

［強制終了(F)］ボタン

指定したユーザサーバが実行しているトランザクションを強制的に終了します。指定したトランザクションを強制的に終了したあと，リストボックスにあるユーザサーバの行に最新の状態が表示されます。

［最新情報に更新(L)］ボタン

リストボックスの情報を最新の状態にします。

［終了(C)］ボタン

［TP1/LiNKトランザクション管理］ダイアログボックスを終了します。

［TP1/LiNKトランザクション情報］ダイアログボックス

［TP1/LiNKトランザクション管理］ダイアログボックスのリストボックスのユーザサーバ名をダブルクリックすると，［TP1/LiNKトランザクション情報］ダイアログボックスが表示されます。［TP1/LiNKトランザクション情報］ダイアログボックスには，選択したユーザサーバのトランザクションに関する詳細情報が表示されます。

図6-7　［TP1/LiNKトランザクション情報］ダイアログボックス

ボタンの使い方

［終了(C)］ボタン

［TP1/LiNKトランザクション情報］ダイアログボックスを終了します。

ダイアログボックスの内容

［処理状態］欄

現在のトランザクション処理状態の種別が表示されます。種別については，［TP1/LiNKトランザクション管理］ダイアログボックスの［処理状態］の説明を参照してください。

6.4.2　トレース情報の出力

ユーザサーバの状態を知るためのトレース情報（RPCトレース，UAPトレース）を出力する方法について説明します。トレース情報を出力するときは，［TP1/LiNKオペレーション］ウィンドウの［トレース情報表示(I)...］ボタンをクリックします。ボタンをクリックすると，［TP1/LiNKトレース情報表示］ダイアログボックスが表示されます。

図6-8　［TP1/LiNKトレース情報表示］ダイアログボックス

ボタンの使い方

［開始(S)］ボタン

このダイアログボックスに設定した内容で，トレース情報の出力を開始します。

RPCトレースを出力するときは，［トレースの選択］欄の［RPCトレース(R)］オプションボタンおよび［保存先ファイル名(A)］オプションボタンをオンにして，［開始(S)］ボタンをクリックします。

［SPP詳細設定］ダイアログボックスまたは［SUP詳細設定］ダイアログボックスの［RPCトレースを取得するファイルの容量(J)］に値が設定されているUAPのRPCトレースを出力するときは，［トレースの選択］欄の［RPCトレース(R)］オプションボタンをオンにして，編集するRPCトレースを［トレースファイル一覧(L)］から選択し，［開始(S)］ボタンをクリックします。ボタンをクリックすると，［保存先ファイル名(A)］に示すファイルに，RPCトレースを出力できます。

UAPトレースを出力するときは，［トレースの選択］欄の［UAPトレース(U)］オプションボタンおよび［保存先ファイル名(A)］オプションボタンをオンにして，編集するUAPトレースを［トレースファイル一覧(L)］から選択してから［開始(S)］ボタンをクリックします。ボタンをクリックすると，［保存先ファイル名(A)］に示すファイルにUAPトレースを編集出力できます。

各トレースの出力結果を表示するときは，［プログラムファイル名(E)］オプションボタンをオンにして，［開始(S)］ボタンをクリックします。

［終了(C)］ボタン

［TP1/LiNKトレース情報表示］ダイアログボックスを終了します。

ダイアログボックスに設定する内容

［トレースの選択］欄

出力するトレース情報の種別をオプションボタンで設定します。

RPCトレースを出力するときは，［RPCトレース(R)］オプションボタンをオンにします。

UAPトレースを出力するときは，［UAPトレース(U)］オプションボタンをオンにします。

［ファイルオプション］欄

［保存先ファイル名(A)］オプションボタン
トレース情報を保存するファイル名を指定します。ファイル名を省略すると「trace.txt」が仮定されます。

［プログラムファイル名(E)］オプションボタン
［保存先ファイル名(A)］オプションボタンで指定したファイルを管理するアプリケーションソフトの実行形式ファイルを指定します。ここで指定するアプリケーションソフトは，システムにインストールしてあるものだけ有効です。ファイル名を省略すると，「notepad.exe」が仮定されます。

［トレースファイル一覧(L)］
［RPCトレース(R)］オプションボタンをオンにした場合，［SPP詳細設定］ダイアログボックスまたは［SUP詳細設定］ダイアログボックスの［RPCトレースを取得するファイルの容量(J)］に値が設定されているUAPのRPCトレースファイル（2進のデータ）の一覧が表示されます。RPCトレースファイルの名称は，ユーザサーバ名です。RPCトレースを編集出力するときには，この一覧からファイル名を選択して［開始(S)］ボタンをクリックします。
［UAPトレース(U)］オプションボタンをオンにした場合，異常終了または強制終了したUAPのUAPトレースファイル（2進のデータ）の一覧が表示されます。UAPトレースファイルの名称は，ユーザサーバ名.nnn（nnnはプロセスID）です。UAPトレースを編集出力するときは，この一覧からファイル名を選択して［開始(S)］ボタンをクリックします。

［ファイルの保存］欄

［保存先ファイル名(N)］
TP1/LiNKが取得した各種ファイルのファイル名が表示されます。

［フォルダ(F)］
［保存先ファイル名(N)］一覧のファイルが保存されている，Windowsのファイルシステムです。

［ドライブ(V)］
Windowsのドライブです。

＜この項の構成＞

(1)　RPCトレースの出力形式

(2)　UAPトレースの出力形式

(1)　RPCトレースの出力形式

RPCトレースの出力形式を次に示します。

［Recv-Reply］
 server :  SPP41r
 node   :  192.130.56.216
 port   :  2046
 date   :  Sun May 21 14:41:52 2000      088:369
 <Service information>
     group   : SPP41s
     service : SPP41s
     status  : Unchained                   xid  : 89010000
 <Send source>
     node    : 192.130.56.215              family :  2
     port    : 2367                        tid    :  1
 <Receive destination>
     node    : 192.130.56.216              family :  2
     port    : 2321                        tid    :  0
 <Data>
000000  53657276 69636520 68656174 73763120   serv ice  heat sv1
000010  4e6f2e32 3120636f 6d706c65 74652066   No.2 1 co mple te.f
000020  726f6d20 2c627920 77617920 6f66202c   rom. ,by  way  of,
000030  00000000 00000000 00000000        .... .... .... ....
000040 - 003f0 :   SAME DATA
   :            :     :      :    :
   :            :     :      :    :

（凡例）

［ ］：RPCトレースの種別が表示されます。

Send　　　…RPCでサービスを要求したことを示します。

Receive　　…RPCのサービス要求を受信したことを示します。

Send-Reply …要求したサービスの応答を送信したことを示します。

Recv-Reply …要求したサービスの応答を受信したことを示します。

Send-Error …サービス要求がエラーである応答を送信したことを示します。

Recv-Error …サービス要求がエラーである応答を受信したことを示します。

no<n>

RPCトレースの通番（10進数）が表示されます。

nest-level<n>

RPCのネスト（10進数）。最初にサービスを要求したユーザサーバには，1が表示されます。

server

ユーザサーバ名が表示されます。

node

RPCのサービスを要求したノードおよびサービスを要求されたノードのポート番号（IPアドレス）が表示されます。

port

RPCトレースを取得する対象のBSDソケットのポート番号が表示されます。

date

トレースを取得した日時が，「WW MM DD hh:mm:ss YYYY」の形式で表示されます。

（WW…曜日，MM…月，DD…日，hh…時，mm…分，ss…秒，YYYY…西暦の年）

nid

TP1/LiNKのノード識別子（4文字）が表示されます。

pid

RPCトレースを取得する対象のプロセスID（10進数で左詰め）が表示されます。

<Service information>の内容

group

サービスグループ名が表示されます（最大31文字）。

service

サービス名が表示されます（最大31文字）。

status

連鎖RPCかどうかが表示されます。

Chained：連鎖RPCのサービス要求を示します。

Unchained：連鎖RPCでないサービス要求を示します。

xid

グローバルトランザクション識別子の一連番号（16進数で右詰め）が表示されます。

<Send source>，<Receive destination>の内容

Send sourceはサーバの場合のクライアントに関する情報を，Receive destinationはクライアントの場合のサーバに関する情報を示します。

node：通信相手のノードのポート番号（IPアドレス）。

port：通信相手のBSDソケットのポート番号（10進数で左詰め）。

family：ネットワークの種類。

tid：通信相手のプロセスのスレッドID（10進数で左詰め）。

<Data>の内容

次に示す形式で表示されます。

RPCデータのロケーション

1行当たり最大16バイトのデータ本体（16進数）

データをASCIIコードに変換した表示（16文字以内）
変換した結果，印字できない文字は，ピリオド"."で表示されます。

(2)　UAPトレースの出力形式

UAPトレースの出力形式を次に示します。

（凡例）

UAPトレースのヘッダ

UAPトレースのデータ
TP1/LiNKのUAPトレースとして，ユーザサーバからTP1/LiNKのライブラリ関数を呼び出した履歴が表示されます。

サービスグループ名

ユーザサーバに該当するサービスグループ名が表示されます。

プロセスID

UAPトレースを取得したプロセスのプロセスIDが表示されます。

サービス名

SPPの場合は，プロセスで実行したサービス名が表示されます。

SUPの場合は，'*'が表示されます。

関数

ユーザサーバから呼び出した関数名が表示されます。

オプションフラグ

関数に設定した引数が表示されます。

リターンコード

関数の実行結果が表示されます。

取得日時

取得日時が「YY/MM/DD hh:mm:ss」の形式で表示されます。

（YY…西暦年の下2けた，MM…月，DD…日，hh…時，mm…分，ss…秒）

6.4.3　メッセージログの表示

メッセージログを操作する方法について説明します。

メッセージログに関する操作をするときは，［TP1/LiNKオペレーション］ウィンドウの［メッセージログ表示(M)...］ボタンをクリックします。ボタンをクリックすると，［TP1/LiNKメッセージログ表示］ダイアログボックスが表示されます。

図6-9　［TP1/LiNKメッセージログ表示］ダイアログボックス

ボタンの使い方

［開始(S)］ボタン

このダイアログボックスに設定した内容で，メッセージログを保存します。

［終了(C)］ボタン

［TP1/LiNKメッセージログ表示］ダイアログボックスを終了します。

ダイアログボックスに設定する内容

［ファイルオプション］欄

［保存先ファイル名(A)］オプションボタン
メッセージログ情報を保存するファイル名を指定します。ファイル名を省略すると「logcat.txt」が仮定されます。

［プログラムファイル名(E)］オプションボタン
［保存先ファイル名(A)］オプションボタンで指定したファイルを管理するアプリケーションソフトの実行形式ファイル名を指定します。ここで指定するアプリケーションソフトは，システムにインストールしてあるものだけ有効です。ファイル名を省略すると「notepad.exe」が仮定されます。

［ファイルの保存］欄

［保存先ファイル名(N)］
TP1/LiNKが取得した各種ファイルのファイル名がリストボックスに表示されます。

［フォルダ(F)］
［保存先ファイル名(N)］一覧のファイルが保存されている，Windowsのファイルシステムです。

［ドライブ(V)］
Windowsのドライブです。

6.4.4　稼働統計情報の管理

TP1/LiNKの稼働統計情報を操作する方法について説明します。稼働統計情報に関する操作をするときは，［TP1/LiNKオペレーション］ウィンドウの［稼働統計管理(S)...］ボタンをクリックします。ボタンをクリックすると，［TP1/LiNK稼働統計管理］ダイアログボックスが表示されます。

図6-10　［TP1/LiNK稼働統計管理］ダイアログボックス

［TP1/LiNK稼働統計管理］ダイアログボックスで編集出力できる稼働統計情報を次に示します。

システム統計情報（TP1/LiNK全体の稼働統計情報）

レスポンス統計情報（dc_rpc_call関数の応答時間，サービスの実行時間およびサーバのCPU時間に関する稼働統計情報）

通信遅延時間統計情報（dc_rpc_call関数の応答時間のうち，実際の通信（サービス要求の送信と応答の送信）に必要な時間に関する稼働統計情報）

これら3種類の稼働統計情報は，稼働統計情報ごとにヘッダを付けて，連続してファイルに出力されます。

ボタンの使い方

［取得開始(J)］ボタン

稼働統計情報の取得を開始します。稼働統計情報の取得に関する内容をすべて指定してからクリックします。

［取得終了(K)］ボタン

稼働統計情報の取得を終了します。

［編集開始(D)］ボタン

稼働統計情報の編集出力を開始します。稼働統計情報の編集出力オプションに関する内容をすべて指定してからクリックします。

［編集開始(D)］ボタンを選択すると，稼働統計ファイルをスワップされるため，稼働統計情報を編集できます。ただし，オンライン中に［編集開始(D)］ボタンを続けて4回選択しないでください。稼働統計ファイルは3世代までしか保存されないため，続けて4回選択すると最初の稼働統計情報が上書きされます。

［終了(C)］ボタン

［TP1/LiNK稼働統計管理］ダイアログボックスを終了します。

ダイアログボックスに設定する内容

［ユーザサーバ名］　　～＜1～8文字の識別子＞

稼働統計情報を取得および編集出力する対象のユーザサーバ名を指定します。リストボックスには，システムにあるすべてのユーザサーバが表示されます。

稼働統計情報を編集出力するときには，リストボックスからユーザサーバ名を一つだけ選択してから実行してください。このとき，ユーザサーバ名の指定は省略できません。

［統計情報種別］欄

稼働統計情報の種別のうち，取得する情報のチェックボックスをオンにします。

［RPC情報(R)］：RPCについての情報

［ネーム情報(A)］：ネームについての情報

［プロセス情報(P)］：プロセスについての情報

［スケジュール情報(U)］：スケジュールについての情報

［トランザクション情報(Z)］：トランザクションについての情報

［共用メモリ情報(Y)］：共用メモリについての情報

［Message Queue情報(Q)］：TP1/Message Queue※についての情報

注※

TP1/LiNKのVersion 7に対応するTP1/Message Queueは，現時点では未発行です。発行時期をご確認ください。

［取得間隔］欄

［1時間(H)］　　～＜符号なし整数＞((1～24))《1》

［10分(T)］　　～＜符号なし整数＞((10～1440))《10》

［1分(M)］　　～＜符号なし整数＞((1～9))《1》

稼働統計情報を取得する時間間隔をスクロールバーで指定します。時間間隔の単位は，オプションボタンで指定します。指定を省略すると，仮定値が設定されます。

［すべての稼働統計情報を取得(L)］

TP1/LiNKにあるすべてのユーザサーバの稼働統計情報を取得するときは，このチェックボックスをオンにしてください。このチェックボックスをオンにすると，［統計情報種別］欄と［ユーザサーバ名］欄に指定した内容は無視されます。

［開始時刻(B)］，［終了時刻(G)］

稼働統計情報を編集出力する範囲を開始時刻と終了時刻で指定します。

時刻は，西暦の年，月，日，時，および分を，yyyy年mm月dd日hh時mm分の形式で指定してください。月，日，時，および分が1けたの場合，前に"0"を指定してください。例えば，2001年6月1日8時1分を指定する場合は，「2001年06月01日08時01分」と指定します。

指定できる時間の範囲は，1970年01月01日00時00分から当年当月当日の現在時刻までです。

［TP1/LiNK稼働統計管理］ダイアログボックスを開いた直後は，［開始時刻(B)］にTP1/LiNKがオンライン状態になった時刻が，［終了時刻(G)］に当年当月当日の現在時刻が仮定されます。

［開始時刻(B)］と［終了時刻(G)］を両方とも空白にすると，稼働統計情報の取得を開始してから現在までの情報すべてを編集出力します。

［編集間隔］欄

［1時間(O)］　　～＜符号なし整数＞((1～24))《1》

［10分(E)］　　～＜符号なし整数＞((10～30))《10》

［1分(I)］　　～＜符号なし整数＞((1～9))《1》

稼働統計情報を編集出力する時間間隔をスクロールバーで指定します。時間間隔の単位は，オプションボタンで指定します。指定を省略すると，仮定値が設定されます。

［ファイルオプション］欄

［保存先ファイル名(S)］オプションボタン
稼働統計情報を保存するファイル名を指定します。ファイル名を省略すると「dcstts.txt」が仮定されます。

［プログラムファイル名(X)］オプションボタン
［保存先ファイル名(S)］オプションボタンで指定したファイルを管理するアプリケーションソフトの実行形式ファイルを指定します。ここで指定するアプリケーションソフトは，システムにインストールしてあるものだけ有効です。ファイル名を省略すると「notepad.exe」が仮定されます。

［ファイルの保存］欄

［保存先ファイル名(N)］
TP1/LiNKが取得した各種ファイルのファイル名がリストボックスに表示されます。

［フォルダ(F)］
［保存先ファイル名(N)］のファイルが保存されている，Windowsのファイルシステムです。

［ドライブ(V)］
Windowsのドライブです。

稼働統計情報の出力形式

稼働統計情報の出力形式を稼働統計情報の種類ごとに示します。

1.システム統計情報

システム統計情報の出力形式を次に示します。

注

稼働統計情報は10けたまで表示されます。イベント数，最大値，最小値，平均値がオーバフローした場合は，'*'が表示されます。

（凡例）

TP1/LiNKのシステムサービス（内部処理をするサービス）についての稼働統計情報

ユーザサーバについての稼働統計情報

jnlstts xx-xx

「jnlstts バージョン-リビジョン番号」が表示されます。

ファイル名称

'stdin'と表示されます。

ファイル作成日時

統計情報取得ファイルが作成された日時が表示されます。

出力指定日時

［開始時刻(B)］，［終了時刻(G)］，またはjnlsttsコマンドの-tオプションで指定した開始時刻と終了時刻が表示されます。省略した項目は，'*'で表示されます。

ノード識別子

ノード識別子が表示されます。

サーバ名

サーバの名称が表示されます。

SYSTEM：TP1/LiNKのシステムサービスに関する表示であることを示します。

ユーザサーバ名：該当するユーザサーバについての表示であることを示します。

編集対象時間

稼働統計情報の取得編集時間が表示されます。

ファイル作成日時，出力指定日時，および編集対象時間は，「YY-MM-DD hh:mm:ss」の形式で表示されます。

（YY…西暦年の下2けた，MM…月，DD…日，hh…時，mm…分，ss…秒）

システム統計情報の詳細は，マニュアル「OpenTP1 運用と操作」のシステム統計情報の説明を参照してください。

2.レスポンス統計情報

レスポンス統計情報の出力形式を次に示します。jnlsttsコマンドにallを付けて実行した場合は，システム統計情報に続いて表示されます。

注

稼働統計情報は10けたまで表示されます。イベント数，最大値，最小値，平均値がオーバフローした場合は，'*'が表示されます。

（凡例）

サービス名単位に，繰り返し表示されます。

jnlstts xx-xx

「jnlstts バージョン－リビジョン番号」が表示されます。

ノード識別子

ノード識別子が表示されます。

サービスグループ名

サービスグループ名が表示されます。

編集対象時間

レスポンス統計情報の取得編集時間が表示されます。

サービス名

レスポンス統計情報の対象になるサービス名が表示されます。「YY-MM-DD hh:mm:ss」の形式で表示されます。

（YY…西暦年の下2けた，MM…月，DD…日，hh…時，mm…分，ss…秒）

レスポンス統計情報の詳細は，マニュアル「OpenTP1 運用と操作」のレスポンス統計情報の説明を参照してください。

3.通信遅延時間統計情報

通信遅延時間統計情報の出力形式を次に示します。jnlsttsコマンドにallを付けて実行した場合は，レスポンス統計情報に続いて表示されます。

注

稼働統計情報は10けたまで表示されます。イベント数，最大値，最小値，平均値がオーバフローした場合は，'*'が表示されます。

送信元・送信先のOSの時刻精度によっては，時刻戻しが発生しなくても，通信時間が数ミリ秒といった短い時間の場合，遅延時間がマイナス値になることがあります。

その場合，編集対象の時間帯の最大値，最小値に'*'が表示されます。

（凡例）

送信先ノード識別子単位に，繰り返し表示されます。

jnlstts xx-xx

「jnlstts バージョン－リビジョン番号」が表示されます。

ノード識別子

ノード識別子が表示されます。

送信先ノード識別子

RPCでサービスを要求した先のシステムのノード識別子が表示されます。

編集対象時間

通信遅延時間統計情報の取得編集時間が表示されます。「YY-MM-DD hh:mm:ss」の形式で表示されます。

（YY…西暦年の下2けた，MM…月，DD…日，hh…時，mm…分，ss…秒）

通信遅延時間統計情報の詳細は，マニュアル「OpenTP1 運用と操作」の通信遅延時間統計情報の説明を参照してください。

6.4.5　XAリソースサービスの管理

XAリソースサービスの管理を操作する方法について説明します。

XAリソースサービスに関する操作をするときは，［TP1/LiNKオペレーション］ウィンドウの［XAリソースサービス(X)...］ボタンをクリックします。ボタンをクリックすると，［TP1/LiNK XAリソースサービス管理］ダイアログボックスが表示されます。

図6-11　［TP1/LiNK XAリソースサービス管理］ダイアログボックス

ダイアログボックスの内容

［処理状態］

現在のトランザクション処理状態の種別が表示されます。

A…アクティブ

HC…ヒューリスティックコミット

HH…ヒューリスティックハザード

HM…ヒューリスティックミックス

HR…ヒューリスティックロールバック

I…アイドル

P…プリペア

ボタンの使い方

次に示すボタンは，リストボックスにあるXARトランザクションの行を選択してからクリックしてください。XARトランザクションの行を選択しないでボタンをクリックした場合，エラーになります。

［コミット(M)］ボタン

［ロールバック(R)］ボタン

［強制終了(F)］ボタン

［コミット(M)］ボタン

選択されたXARトランザクションの状態をヒューリスティックコミットに決着します。このボタンで状態を変更できるトランザクションは，「処理状態」が「P（プリペア状態）」のトランザクションです。選択されたXARトランザクションをコミットしたあと，リストボックスにあるXARトランザクションの最新状態が表示されます。

［ロールバック(R)］ボタン

選択されたXARトランザクションの状態をヒューリスティックロールバックに決着します。このボタンで状態を変更できるトランザクションは，「処理状態」が「P（プリペア状態）」のトランザクションです。選択されたXARトランザクションをロールバックしたあと，リストボックスにあるXARトランザクションの最新状態が表示されます。

［強制終了(F)］ボタン

選択されたXARトランザクションを無効にします。このボタンで状態を変更できるトランザクションは，「処理状態」が「HH（ヒューリスティックハザード状態）」，「HC（ヒューリスティックコミット状態）」，「HR（ヒューリスティックロールバック状態）」，または「HM（ヒューリスティックミックス状態）」のトランザクションです。選択されたXARトランザクションを無効にしたあと，リストボックスにあるXARトランザクションの最新状態が表示されます。

［最新情報に更新(L)］ボタン

リストボックスのXARトランザクション情報を最新の状態にします。

［サービス閉塞(H)］ボタン

XAリソースサービスを閉塞状態にします。

［サービス閉塞解除(E)］ボタン

XAリソースサービスの閉塞状態を解除します。

［終了(C)］ボタン

［TP1/LiNK XAリソースサービス管理］ダイアログボックスを終了します。

［TP1/LiNK XARトランザクション情報］ダイアログボックス

［TP1/LiNK XAリソースサービス管理］ダイアログボックスのリストボックスのプロセスIDをダブルクリックすると，［TP1/LiNK XARトランザクション情報］ダイアログボックスが表示されます。［TP1/LiNK XARトランザクション情報］ダイアログボックスには，選択したプロセスIDのXARトランザクションに関する詳細情報が表示されます。

図6-12　［TP1/LiNK XARトランザクション情報］ダイアログボックス

ボタンの使い方

［終了(C)］ボタン

［TP1/LiNK XARトランザクション情報］ダイアログボックスを終了します。

ダイアログボックスの内容

［トランザクション状態］欄

現在のトランザクション処理状態の種別が表示されます。種別については，［TP1/LiNK XAリソースサービス管理］ダイアログボックスの［処理状態］の説明を参照してください。

［ロールバックオンリーマーク］欄

現在のトランザクションでのロールバック状態の種別が表示されます。

INIT…初期状態

RBONLY1…マーク付きトランザクション有り

RBONLY2…トランザクション無し

RBONLY3…マーク無しトランザクション有り

6.5　ヘルプの使い方

TP1/LiNKの［ヘルプ(H)］メニューを参照する方法について説明します。［ヘルプ(H)］メニューの内容を次に示します。

［バージョン情報(A)...］

［TP1/LiNKバージョン情報］ダイアログボックスが表示されます。このダイアログボックスには，次の情報が表示されます。

TP1/LiNKのバージョンおよびリビジョン

コピーライト

ライセンス登録名（OpenTP1管理者の名前および会社名）

7.　運用コマンド

この章では，TP1/LiNKの運用コマンドについて説明します。

＜この章の構成＞

TP1/LiNKのコマンド一覧

TP1/LiNKのコマンドの早見表

コマンドの入力方法と入力形式

ntbstart（TP1/LiNKの開始）

dcsvstrt（ユーザサーバの開始）

dcstats（システム統計情報の取得開始，終了）

jnlcopy（稼働統計情報の中間ファイルへの出力）

jnlstts（稼働統計情報の編集出力）

jnlswpfg（稼働統計情報ファイルのスワップ）

dcsetupml（マルチOpenTP1のセットアップと削除）

dcdls（マルチOpenTP1のインストール状態の表示）

dcmakecon（特定のTP1/LiNKにコマンドを入力するためのコマンドプロンプトの作成）

prcpthls（ユーザサーバのサーチパスの表示）

uatdump（UAPトレースの編集出力）

rapkill（rapサーバの限界監視時間の指定と強制停止）

dcauditsetup（監査ログ機能の環境設定）

TP1/LiNKのコマンド一覧

TP1/LiNKのコマンド一覧を次の表に示します。TP1/LiNKのコマンドを実行できるのは，OpenTP1管理者だけです。

表7-1　TP1/LiNKのコマンド一覧

機能 | コマンド名 | TP1/LiNKが稼働していない | TP1/LiNKが稼働中 | ユーザサーバの処理から実行※1 | 監査ログの出力
TP1/LiNKの開始/終了 | TP1/LiNKの開始 | ntbstart | ○ | × | × | ○
TP1/LiNKの終了 | dcstop※2 | × | ○ | × | ○
ユーザサーバの開始 | dcsvstrt | × | ○ | ○ | ○
ユーザサーバの終了 | dcsvstop※2 | × | ○ | ○ | ○
稼働統計情報の管理 | システム統計情報の取得開始，終了 | dcstats | × | ○ | ○ | ○
稼働統計情報の中間ファイルへの出力 | jnlcopy | ○ | ○ | × | ○
稼働統計情報の編集出力 | jnlstts | ○ | ○ | × | ○
稼働統計情報ファイルのスワップ | jnlswpfg | × | ○ | ○ | ○
リアルタイム統計情報管理 | RTS（リアルタイム統計情報）ログファイルの編集出力 | rtsedit※2 | ○ | ○ | × | ×
リアルタイム統計情報の標準出力への出力 | rtsls※2 | × | ○ | × | ×
リアルタイム統計情報の設定変更 | rtsstats※2 | × | ○ | × | ○
システムの管理 | マルチOpenTP1のセットアップと削除 | dcsetupml | ○ | × | × | ○
マルチOpenTP1のインストール状態の表示 | dcdls | ○ | ○ | × | ×
特定のTP1/LiNKにコマンドを入力するためのコマンドプロンプトの作成 | dcmakecon | ○ | ○ | × | ×
保守資料の取得 | dcrasget※2 | ○ | ○ | ○ | ×
製品情報の表示 | dcpplist※2 | ○ | ○ | ○ | ×
共用メモリの状態表示 | dcshmls※2 | × | ○ | ○ | ×
一時クローズ処理の実行状態の表示 | rpcstat※2 | × | ○ | ○ | ×
メッセージログの管理 | メッセージログファイルの内容表示 | logcat※2 | × | ○ | ○ | ×
監査ログ管理 | 監査ログ機能の環境設定 | dcauditsetup | ○ | × | × | ○
プロセスの管理 | ユーザサーバの状態表示 | prcls※2 | × | ○ | ○ | ×
ユーザサーバのサーチパスの変更 | prcpath※2 | × | ○ | ○ | ○
ユーザサーバのサーチパスの表示 | prcpthls | × | ○ | ○ | ×
スケジュールの管理 | プロセス数の変更 | scdchprc※3 | × | ○ | ○ | ○
スケジュールの閉塞 | scdhold※2 | × | ○ | ○ | ○
スケジュール状態の表示 | scdls※2 | × | ○ | ○ | ×
スケジュール閉塞の解除 | scdrles※2 | × | ○ | ○ | ○
プロセスの停止および再起動 | scdrsprc※3 | × | ○ | ○ | ○
トランザクション機能の管理 | トランザクションの強制コミット | trncmt※2 | × | ○ | ○ | ○
トランザクションの強制終了 | trnfgt※2 | × | ○ | ○ | ○
トランザクションの状態表示 | trnls※2 | × | ○ | ○ | ×
トランザクションの強制ロールバック | trnrbk※2 | × | ○ | ○ | ○
ネーム管理 | TP1/LiNK起動確認，キャッシュ削除 | namalivechk※2 | × | ○ | ○ | ○
ドメイン構成の変更（ドメイン定義ファイル使用） | namchgfl※2 | × | ○ | ○ | ○
起動通知情報の強制的無効化 | namunavl※2 | × | ○ | × | ○
OpenTP1のサーバ情報の表示 | namsvinf※2 | ○ | ○ | ○ | ×
OpenTP1ノードのRPC抑止リストの操作 | namblad※2 | × | ○ | ○ | ○
ノードリスト情報の削除 | namndrm※2 | × | ○ | × | ○
管理ノードの変更 | nammstr※2 | × | ○ | × | ○
ノードリストファイルの内容表示 | namnldsp※2 | ○ | ○ | ○ | ×
ノードのオプション情報の変更 | namndopt※2 | ○ | ○ | ○ | ×
各種トレース情報の管理 | RPCトレースの出力 | rpcdump※2 | ○ | ○ | × | ×
UAPトレースの編集出力 | uatdump | ○ | × | × | ×
性能検証用トレース管理 | 性能検証用トレース情報編集解析 | dcalzprf※4 | ○ | ○ | × | ×
トレース情報ファイルの編集出力 | prfed※4 | ○ | ○ | × | ×
トレース情報ファイルの取り出し | prfget※4，※5 | ○ | ○ | × | ○
XAリソース管理 | XARトランザクション状態の変更 | xarforce※2 | × | ○ | ○ | ○
XAリソースサービスの閉塞 | xarhold※2 | × | ○ | ○ | ○
XARトランザクション情報の表示 | xarls※2 | × | ○ | ○ | ×
XAリソースサービスの閉塞解除 | xarrles※2 | × | ○ | ○ | ○
リモートAPI管理 | リモートAPI機能に使用する定義の自動生成 | rapdfgen※2 | ○ | × | × | ○
rapリスナーおよびrapサーバの状態表示 | rapls※2 | × | ○ | × | ×
rapサーバの限界監視時間の指定と強制停止 | rapkill | × | ○ | ○ | ×
JP1連携 | シナリオテンプレートからのTP1/LiNKのコマンドの実行 | dcjcmdex※2 | ○ | ○ | × | ○
定義ファイルのオペランドの指定 | dcjchconf※2 | ○ | × | × | ×
ドメイン定義ファイルの更新 | dcjnamch※2 | ○ | ○ | ○ | ○

（凡例）

○：該当する条件で実行できます。

×：該当する条件では実行できません。

注※1

TP1/LiNKのライブラリ関数を使って，ユーザサーバからコマンドを実行することを示します。

注※2

コマンドの文法については，マニュアル「OpenTP1 運用と操作」のコマンド文法の説明を参照してください。TP1/LiNKの環境設定とTP1/Server Baseのシステムサービス定義との対応については，「付録E　TP1/LiNKの環境設定とTP1/Server Baseシステムサービス定義との対応」を参照してください。

注※3

コマンドの文法については，マニュアル「OpenTP1 運用と操作」のコマンド文法の説明を参照してください。このコマンドの使用は，TP1/Extension 1をインストールしていることが前提です。TP1/Extension 1をインストールしていない場合の動作は保証できません。

注※4

コマンドの文法については，マニュアル「OpenTP1 運用と操作」のコマンド文法の説明を参照してください。性能検証用トレースの環境設定方法については，「4.4　TP1/LiNK拡張機能使用時の実行環境の設定」を参照してください。このコマンドの使用は，TP1/Extension 1をインストールしていることが前提です。TP1/Extension 1をインストールしていない場合の動作は保証できません。

注※5

次に示す-fオプションの値は，指定できません。

・_mc：MCF性能検証用トレース情報を取得します。

・_jl：JNL性能検証用トレース情報を取得します。

・_lk：LCK性能検証用トレース情報を取得します。

TP1/LiNKのコマンドの早見表

TP1/LiNKのコマンドの早見表を次に示します。この表では，この章内の各コマンドの説明に記載しているコマンド以外のオプションは，一部省略して表記しています。

表7-2　TP1/LiNKのコマンドの早見表

コマンド名 | オプション，フラグ引数およびコマンド引数 | コマンドとオプションを組み合わせた機能
ntbstart | － | － | TP1/LiNKの開始（正常開始または再開始）
-n | － | 強制的な正常開始
-U | － | ユーザサーバの起動の抑止
dcstop | － | － | 正常終了
-n | － | 強制正常終了
-f | － | 強制停止
-df | － | 強制停止して，コアファイルと共用メモリ情報を取得
dcsvstrt | -u | ユーザサーバ名 | 指定したユーザサーバの開始
dcsvstop | － | ユーザサーバ名 | 指定したユーザサーバの終了
-f | ユーザサーバ名 | 指定したユーザサーバの強制停止
-df | ユーザサーバ名 | 指定したユーザサーバを強制停止して，コアファイルを取得
dcstats | － | － | システム全体のシステム統計情報の取得
-k | 〔〔統計情報種別〕〔，統計情報種別〕…〕 | 取得するシステム統計情報の種別の設定
-m | 時間間隔 | システム統計情報を取得する時間の単位
-a | － | システム全体，および全ユーザサーバのシステム統計情報の取得
-s | － | システム全体のシステム統計情報の取得
〔〔サーバ名〕〔△サーバ名〕…〕 | システム全体，および指定したサーバ単位のシステム統計情報の取得
-r | － | システム統計情報の取得の終了
jnlcopy | － | 稼働統計情報ファイル名 | 稼働統計情報の中間ファイルへの出力
jnlstts | － | － | jnlcopyコマンドで作成した中間ファイルの稼働統計情報の先頭から最後までを，1ページ当たり24行で編集出力
-e | 編集項目 | 稼働統計情報の編集項目の指定
-l | 行 | 稼働統計情報の1ページ当たりの出力行数
-i | 時間間隔 | 稼働統計情報を編集出力する時間の単位
-t | 〔開始〕〔，終了〕 | 取得した稼働統計情報を編集出力する時間の範囲
-s | サーバ名 | 稼働統計情報を出力したいサーバ名
jnlswpfg | － | － | 稼働統計情報ファイルのスワップ
rtsedit | － | RTS（リアルタイム統計情報）ログファイル名 | RTSログファイルからリアルタイム統計情報を収集し，編集後，CSV形式でファイルまたは標準出力に出力
rtsls | － | － | 共用メモリ上に取得した，リアルタイム統計情報サービスの管理情報，およびリアルタイム統計情報を標準出力に出力
rtsstats | － | － | リアルタイム統計情報の取得対象および取得項目の設定を変更
dcsetupml | -u | － | 指定したマルチOpenTP1を最新の状態に更新
-d | － | 指定したマルチOpenTP1を削除
マルチOpenTP1セットアップフォルダ | マルチOpenTP1をインストールするフォルダを50文字以内で指定
識別子 | マルチOpenTP1を識別するための識別子を指定
dcdls | -d | TP1/LiNKのフォルダ | セットアップされているマルチOpenTP1の識別子とインストールしたフォルダを表示
dcmakecon | 識別子 | 識別子に指定したマルチOpenTP1にコマンドを入力するためのコマンドプロンプトの作成
dcshmls | -d | stt | 静的共用メモリの使用状況の表示
dyn | 動的共用メモリの使用状況の表示
all | 静的共用メモリと動的共用メモリの使用状況の表示
-r | － | 共用メモリごとの詳細情報を表示
rpcstat | － | － | 一時クローズ処理の実行状態の表示
logcat | -niNIdtHpab | 指定したオプションに該当する情報の表示
-f | メッセージログファイル名 | 指定したファイル名の情報の表示
prcls | -a | － | すべてのユーザサーバの状態の表示
-g | サービスグループ名 | 指定したサービスグループの状態の表示
-l | 実行形式ファイル名 | 指定した実行形式ファイルの状態の表示
-s | サーバ名 | 指定したサーバ名の状態の表示
-p | プロセスID | 指定したプロセスIDの状態の表示
prcpath | － | 変更後のパス名 | ユーザサーバのサーチパスを，指定したパス名に変更
prcpthls | － | － | ユーザサーバ，およびユーザサーバから起動されるコマンドのサーチパス名の表示
scdchprc | － | － | プロセス数を変更
scdhold | -a | － | すべてのユーザサーバのスケジュールを閉塞
-s | ユーザサーバ名 | 指定したユーザサーバのスケジュールを閉塞
-ap | － | すべてのユーザサーバのスケジュールを閉塞（ただし，クライアントからの要求は受け付ける）
-s | ユーザサーバ名 -p | 指定したユーザサーバのスケジュールを閉塞（ただし，クライアントからの要求は受け付ける）
scdls | -a | － | すべてのユーザサーバのスケジュールの状態の表示
-s | ユーザサーバ名 | 指定したユーザサーバのスケジュールの状態の表示
scdrles | -a | － | すべてのユーザサーバのスケジュール閉塞の解除
-s | ユーザサーバ名 | 指定したユーザサーバのスケジュール閉塞の解除
-ap | － | 指定したユーザサーバのスケジュール閉塞の解除
-s | ユーザサーバ名 -p | -pオプションのscdholdコマンドで閉塞したスケジュール閉塞の解除
scdrsprc | － | － | プロセスを停止および再起動
trncmt | -t | -af | すべてのトランザクションを強制コミット
-T | トランザクショングローバル識別子 -af | 指定した識別子のトランザクションを強制コミット
trnfgt | -t | -af | すべてのトランザクションを強制終了
-T | トランザクショングローバル識別子 -af | 指定した識別子のトランザクションを強制終了
trnls | -t | 〔-{a|c}〕 | すべてのトランザクションを表示
-T | トランザクショングローバル識別子 〔-{a|c}〕 | 指定した識別子のトランザクションを表示
-bc | － | 分岐したトランザクションとブランチの数を表示
-B | システムノードID 〔-{a|c}〕 | IDで示すノードへ分岐したトランザクションの表示
-rc | － | リソースマネジャ接続のトランザクションを表示
-R | RM名＋RM拡張子 〔-{a|c}〕 | 指定したリソースマネジャ接続のトランザクションを表示
trnrbk | -t | -af | すべてのトランザクションを強制ロールバック
-T | トランザクショングローバル識別子 -af | 指定した識別子のトランザクションを強制ロールバック
namalivechk | -l | － | 起動確認対象のTP1/LiNKのノードのサービス情報出力
-c | － | TP1/LiNK起動確認とキャッシュ削除
namchgfl | － | － | ドメイン構成の変更（ドメイン定義ファイル使用）
-d | － | ドメイン定義ファイルに指定しているノードの起動状況を確認
namunavl | -l | － | 起動通知できなかったIPアドレスの出力
-n | ノード名 | TP1/LiNK起動通知情報の強制的無効化
namsvinf | -b | － | 共用メモリ上のRPC抑止リストの登録状況を出力
-r | － | 起動確認を終えたOpenTP1ノードから順に起動結果およびOpenTP1の情報を出力
-w | 最大応答待ち時間 | 応答が返るまでの待ち時間および起動確認の応答待ち時間の最大値を指定
namblad | -a | ノード名〔:ポート番号〕 | 指定したノードをRPC抑止リストに登録
-d | ノード名〔:ポート番号〕 | 指定したノードをRPC抑止リストから削除
namndrm | -n | ノード名〔:ポート番号〕 | 指定した停止ノード情報の削除
nammstr | -u | － | エージェントノードを，一時的にマネジャノードに置き換え
-d | ノード名〔:ポート番号〕 | マネジャノードを，一時的にエージェントノードに置き換え
namnldsp | － | ノードリストファイル名 | ノードリストファイルの内容表示
namndopt | -p | ｛high｜low｝ ノード名〔:ポート番号〕 | 指定したノードのオプション情報（ノードの優先度）の変更
rpcdump | － | RPCトレースファイル名 | 指定したトレースファイルから，RPCのトレース情報を出力
uatdump | － | － | 退避コアファイル名にcoreが仮定され，標準出力に出力
－ | 退避コアファイル名 | 指定した退避コアファイルから，UAPのトレース情報を出力
dcalzprf | － | － | 性能検証用トレース情報編集解析
prfed | － | － | トレース情報ファイルを編集出力
prfget | － | － | トレース情報ファイルを取り出し
xarforce | -c | － | ヒューリスティックコミットに決着
-r | － | ヒューリスティックロールバックに決着
-f | － | トランザクションを無効化
-u | TP1/LiNKトランザクションID | 指定したTP1/LiNKトランザクションIDの状態を変更
xarhold | － | － | XAリソースサービスの閉塞
xarls | -c | － | XAリソースサービスの管理情報を表示
-a | － | XAリソースサービスで管理しているすべてのトランザクションの状態を表示
-p | プロセスID | 指定したプロセスIDのトランザクションを表示
xarrles | － | － | XAリソースサービスの閉塞解除
rapdfgen | － | rapリスナーサービス定義ファイル名 | リモートAPI機能を実行するために必要な定義を生成
rapls | － | rapリスナー名 | rapリスナーおよびrapサーバの状態表示
rapkill | － | － | rapサーバの限界監視時間の指定と強制停止
-t | 限界経過時間 | dc_rpc_call代理実行処理を監視する限界経過時間
-f | － | -tオプションで指定した限界経過時間を超えているdc_rpc_call代理実行中のrapサーバを強制停止
-d | － | -tオプションで指定した限界経過時間を超えているdc_rpc_call代理実行中のrapサーバにダンプファイルを取得
－ | rapリスナー名〔〔△rapリスナー名〕…〕 | 指定したrapリスナー名の状態を表示
dcauditsetup | － | OpenTP1ホームディレクトリ | 監査ログの環境設定
dcjcmdex | － | TP1/LiNKのコマンド名 | シナリオテンプレートからのTP1/LiNKのコマンドの実行
dcjchconf | － | オペランド名，オペランドの値 | 定義ファイルのオペランドの指定
dcjnamch | － | ノード名 | ドメイン定義ファイルの更新
dcrasget | － | 取得先ディレクトリ | OpenTP1のトラブルシュートに必要な保守資料を指定されたディレクトリに取得
-g | 保守資料を取得する前に取得対象ディレクトリの情報を表示して処理を続行するかどうかの問い合わせをしないで処理を実行
-l | %DCDIR%spoolなどの容量の大きい情報は取得しないで，コマンド実行結果などによって得られる情報だけを取得
-c | -cオプションによる圧縮機能は，TP1/LiNKでは未サポート
dcpplist | － | － | OpenTP1ディレクトリに構築した環境で動作している製品の形名やバージョンなどを表示

（凡例）

－：該当項目なし

コマンドの入力方法と入力形式

コマンドの入力方法と入力形式について説明します。

コマンドの入力方法

コマンドの実行には，次に示す2とおりの方法があります。

コマンドプロンプトで実行

アプリケーションからライブラリ関数（dc_adm_call_command関数）を使って実行

ここでは，コマンドプロンプトでコマンドを実行する方法について説明します。ライブラリ関数を使ってコマンドを実行する方法については，マニュアル「OpenTP1 プログラム作成の手引」を参照してください。

コマンドの入力形式

コマンドの入力形式例を次に示します。

C:¥>コマンド名△オプション△コマンド引数

コマンド名
コマンド名とは，実行するコマンドのファイル名のことです。TP1/LiNKのコマンドは，%DCDIR%¥bin¥フォルダの下にあります。TP1/LiNKのインストール時にOpenTP1管理者がTP1/LiNKのコマンドを使えるようにするため，コマンドのサーチパスのシステム環境変数（PATH）に%DCDIR%¥binを加えてください。

オプション
オプションとは，マイナス記号（-）で始まる英文字です。オプションの属性をより明確にするために，オプションと一緒に指定する文字列をフラグ引数といいます。オプションには，フラグ引数を一つ指定するものと，指定しないものがあります。
次の説明中に使用するC:¥>はプロンプト，cmdはコマンド名を示します。

フラグ引数を指定しないオプションの場合，一つのマイナス記号のあとにまとめて指定できます。
（例）次の二つは同じ意味です。
C:¥>cmd -a -b -c
C:¥>cmd -abc

フラグ引数を必要とするオプションフラグのフラグ引数は，省略できません。

フラグ引数の文字列の中に空白を含めるときは，前後を引用符（"）で囲んでください。
（例）1と2を引数に持つオプション-dは，次のように入力します。
C:¥>cmd -d "1 2"

同じオプションフラグを2回以上指定すると，最後に指定したオプションが有効になります。
（例）C:¥>cmd -a 12 -a 27
　　　　　　　無効　有効

オプションは，コマンド引数よりも前で指定してください。
（例）オプション-bがフラグ引数を持たないオプションのときは，-cはオプションと見なされません。
C:¥>cmd -b file -c

マイナス記号を二つ指定すると，そこでオプションの終わりと見なされます。
（例）次のように入力すると，-bはコマンド引数と見なされます。
C:¥>cmd -a -- -b

マイナス記号だけのオプションは入力できません。
（例）次のように入力すると，-はコマンド引数と見なされます。
C:¥>cmd -

-hのオプションを付けて実行すると，コマンドの使い方（ヘルプメッセージ）を出力できます。

コマンド引数
コマンド引数とは，コマンドの操作対象となる名称のことです。コマンド文法の説明に従って指定してください。

ntbstart（TP1/LiNKの開始）

形式

ntbstart 〔-n〕〔-U〕

機能

コマンド入力環境の環境変数DCDIRに対応したTP1/LiNKサービスを開始します。

オプション

-n
前回の終了モードに関係なく，TP1/LiNKを強制的に正常開始します。このオプションの指定を省略すると，前回の終了モードの指定内容から開始モードが決定されます。
　前回の終了モードが正常終了の場合…正常開始
　前回の終了モードが正常終了以外の場合…再開始

-U
開始モードが再開始の場合に，ユーザサーバの起動を抑止します。このオプションは，障害が発生し，TP1/LiNKの状態を回復するためにTP1/LiNKをオンラインにして作業する必要はあるが，ユーザサーバは起動する必要がない場合などに使用してください。

出力メッセージ

メッセージID
内容
出力先

KFCA26560-I
TP1/LiNKサービスは開始中です
標準出力

KFCA26561-I
TP1/LiNKサービスを開始しました
標準出力

KFCA26562-E
TP1/LiNKサービスの開始中にエラーが発生したため，ntbstartコマンドを中止します
標準エラー出力

KFCA26563-E
ntbstartコマンドに指定したオプションが正しくありません
標準エラー出力

KFCA26565-E
ntbstartコマンドの引数が正しくありません
標準エラー出力

KFCA26567-E
プロセス固有メモリの確保に失敗したため，ntbstartコマンドを実行できません
標準エラー出力

KFCA26570-E
TP1/LiNKサービスのアクセス権限がないため，ntbstartコマンドを実行できません
標準エラー出力

KFCA26571-E
TP1/LiNKサービスとの接続に失敗したため，ntbstartコマンドを実行できません
標準エラー出力

KFCA26572-E
TP1/LiNKサービスの状態取得に失敗したため，ntbstartコマンドを実行できません
標準エラー出力

KFCA26573-E
TP1/LiNKサービスが停止中ではないため，ntbstartコマンドを実行できません。
標準エラー出力

KFCA26574-E
TP1/LiNKサービスが無効に設定されているため，ntbstartコマンドを実行できません
標準エラー出力

KFCA26575-E
レジストリの参照に失敗したため，ntbstartコマンドを実行できません
標準エラー出力

KFCA26578-I
使用方法：ntbstart 〔-n〕〔-U〕
標準出力，
標準エラー出力

注意事項

ntbstartコマンドに-Uオプションを付けて実行する場合には，次のことに注意してください。

正常開始では-Uオプションは無視されます。

オンライン開始後に-Uオプションでユーザサーバを起動したい場合には，dcsvstrtコマンドを使用してください。

オンライン開始後に-Uオプションでユーザサーバの構成を回復したい場合には，正常終了および強制正常終了以外でシステムを停止し，ntbstartで-Uオプションを付けないでオンラインを開始してください。

前回のオンラインでリモートAPI機能を使用したあとのリランの際に-Uオプションを指定した場合，リモートAPIの構成回復まではしません。-Uオプションを指定したあとにリモートAPI機能を使用したい場合は，オンライン開始後，dcsvstrtコマンドでrapリスナーを手動で開始するか，いったん，正常終了および強制正常終了以外でシステムを停止してからntbstartで-Uオプションを付けないでオンラインを開始してください。

サーバの閉塞状態を引き継ぐ設定をした場合，次の問題が発生します。

スケジュールの閉塞状態は，ntbstart -Uコマンドでリランしたオンラインでは引き継がれません。
スケジュール閉塞状態のSPPが存在し，かつntbstart -Uコマンドでリランしたオンラインを，いったん計画停止または強制停止してから再度ntbstartコマンドを使用して起動した場合，ntbstart -Uコマンドを実行する前のオンラインのスケジュール閉塞状態がSPPに引き継がれてしまいます。ntbstart -Uコマンドを実行する前のオンラインのスケジュール閉塞状態が引き継がれないようにするには，次のような対策が必要です。
・ntbstart -Uコマンドでリランしたオンラインは，正常停止するかまたは強制正常開始する。
・すべてのSPPで［SPP詳細設定］ダイアログボックスの［閉塞］タブの［システム再開始時，閉塞状態を引き継ぐ(V)］チェックボックスをオフにする。

系切り替え機能を使用している場合，待機系にあるTP1/LiNKでは-nオプションは無視されます。

dcsvstrt（ユーザサーバの開始）

形式

dcsvstrt -u ユーザサーバ名〔,ユーザサーバ名〕…

機能

ユーザサーバを開始します。

オプション

-u　ユーザサーバ名　　～〈1～8文字の識別子〉
開始するユーザサーバのサーバ名を指定します。
一つのdcsvstrtコマンドで指定できるユーザサーバ名の最大数は50です。
複数のユーザサーバ名を指定する場合，ユーザサーバ名とユーザサーバ名との間をコンマ（，）で区切ります。このとき，ユーザサーバ名の直後に空白を入れないでください。
ユーザサーバ名の大文字，小文字は区別されます。例えば，dcsvstrt -u Supで起動して，GUIでSUPを停止しようとするとエラーになります。
このオプションの指定を省略すると，ユーザサーバは開始しません。

出力メッセージ

出力メッセージは，TP1/LiNKとOpenTP1（TP1/Server Base）で共用となっています。TP1/LiNKでは，メッセージ中のdcsvstart（OpenTP1コマンド）を，dcsvstrt（TP1/LiNKのコマンド）に読み替えてください。

メッセージID
内容
出力先

KFCA01801-E
環境変数DCDIRが未設定です
標準エラー出力

KFCA01811-I
サーバは開始中です
メッセージログファイル

KFCA01812-E
サーバの開始処理が失敗しました
標準エラー出力，
メッセージログファイル

KFCA01813-I
サーバはオンライン中です
メッセージログファイル

KFCA01815-E
システムでエラーが発生しました
標準エラー出力

KFCA01818-E
サーバの起動を中止します
標準エラー出力

KFCA01860-E
dcsvstartコマンドの入力形式が正しくありません
標準エラー出力

KFCA01861-E
dcsvstartコマンドの処理に失敗しました
標準エラー出力

KFCA01863-E
dcsvstartコマンドを実行できません
標準エラー出力，
メッセージログファイル

KFCA01866-E
サーバ重複エラーが発生しました
標準エラー出力

KFCA01867-E
共用メモリを確保できません
標準エラー出力

KFCA01868-E
サーバ名が正しくありません
標準エラー出力

KFCA01869-E
dcsvstartコマンドは受け付けられません
標準エラー出力

KFCA01870-E
メモリ不足が発生しました
標準エラー出力，
メッセージログファイル

注意事項

TP1/LiNKでは，dcsvstart（OpenTP1コマンド）の-aオプションに該当する指定はできません。このため，dcsvstrtコマンドに-aオプションを付けて実行しないでください。

dcstats（システム統計情報の取得開始，終了）

形式

dcstats {〔-k 統計情報種別〔,統計情報種別〕…〕〔-m 時間間隔〕
      〔-{a|s}〕〔サーバ名〔△サーバ名〕…〕|-r}

機能

指定したサーバ名のシステム統計情報を，指定した時間間隔で統計情報取得ファイルに取得します。システム統計情報の取得は，-rオプション指定のdcstatsコマンドで終了できます。-rオプション指定のdcstatsコマンドを実行しないと，TP1/LiNKが停止するまで取得し続けます。

オプション

-k　統計情報種別
取得するシステム統計情報の種別を指定します。複数の統計情報種別を指定する場合，統計情報種別と統計情報種別との間をコンマ（，）で区切ります。
rpc：RPC情報
prc：プロセス情報
nam：ネーム情報
scd：スケジュール情報
trn：トランザクション情報
osl：共用メモリ管理情報
-kオプションの指定を省略すると，すべてのシステム統計情報を取得します。

-m　時間間隔　　～〈符号なし整数〉((1～1440))《10》
システム統計情報を統計情報取得ファイルに取得する時間間隔を，分単位で指定します。

-a
システム全体，および全ユーザサーバのシステム統計情報を取得します。-sオプションと同時に指定することはできません。

-s
システム全体のシステム統計情報を取得します。-aオプションと同時に指定することはできません。

-r
システム統計情報の取得を終了します。
ほかのオプションと同時に指定すると，-rオプションが有効になり，ほかのオプションは無視されます。

コマンド引数

サーバ名　　～〈1～8文字の識別子〉
取得するシステム統計情報の発生元のユーザサーバの名称を指定します。
指定したサーバ単位にシステム統計情報を取得します。
-aオプションを指定した場合，サーバ名の指定は無視されます。

注意事項

dcstatsコマンドでシステム統計情報を取得する場合は，システム統計情報を取得する設定をしている必要があります。TP1/LiNKを開始する前に，［システム環境設定］ウィンドウでシステム統計情報を取得する指定をしておいてください。

dcstatsコマンドの指定は，TP1/LiNK再開始時には引き継がれません。TP1/LiNK再開始後にシステム統計情報を取得する場合は，再びdcstatsコマンドを実行してください。

ユーザサーバを一度終了すると，正常開始時にはユーザサーバのシステム統計情報取得の指定は引き継がれません。一度終了したユーザサーバのシステム統計情報を取得する場合は，ユーザサーバの正常開始完了後にdcstatsコマンドを実行してください。

-a，-sオプション，およびサーバ名の指定をすべて省略した場合，システム全体のシステム統計情報を取得します。

jnlcopy（稼働統計情報の中間ファイルへの出力）

形式

jnlcopy 稼働統計情報ファイル名〔△稼働統計情報ファイル名〕…

機能

指定した稼働統計情報ファイル内の情報を，中間ファイルに出力します。

中間ファイルは，%DCDIR%¥spool¥dclitinfフォルダの下にguiostae.jnlというファイル名で作成されます。

コマンド引数

稼働統計情報ファイル名　　～〈パス名〉
稼働統計情報ファイルの名称を完全パス名で指定します。
TP1/LiNKは，稼働統計情報ファイルを，%DCDIR%¥spool¥dcjnlinf¥staフォルダの下に作成します。稼働統計情報ファイルは，ファイル1，ファイル2，ファイル3の順に作成されます。ファイル3まで作成したあとは，ファイル1から順に上書きして使用します。
稼働統計情報ファイルのファイル1，ファイル2，ファイル3の合計サイズは，［システム環境設定］ウィンドウの［統計ファイルサイズ(S)］で設定した値になります。
複数の稼働統計情報ファイルを指定するときは，稼働統計情報ファイル名と稼働統計情報ファイル名との間を空白で区切るか，コマンド引数にワイルドカードを使用して%DCDIR%¥spool¥dcjnlinf¥sta¥sta_*と指定してください。

jnlstts（稼働統計情報の編集出力）

形式

jnlstts〔-e 編集項目〕〔-l 行〕
      〔-i 時間間隔〕〔-t〔開始〕〔，終了〕〕
      〔-s サーバ名〕

機能

jnlcopyコマンドで作成した中間ファイルから，稼働統計情報を収集し，編集後，標準出力に出力します。出力する情報を次に示します。

システム統計情報（dcstatsコマンドで取得したTP1/LiNKの統計情報）

レスポンス統計情報（dc_rpc_call関数の応答時間，サービスの実行時間に関する稼働統計情報）

通信遅延時間統計情報（dc_rpc_call関数の応答時間のうち，実際の通信（サービス要求の送信と応答の送信）に必要な時間に関する稼働統計情報）

オプション

-e　編集項目　　～《all》
稼働統計情報の編集項目を指定します。
sys：システム統計情報を出力します。
rsp：レスポンス統計情報を出力します。
dly：通信遅延時間統計情報を出力します。
all：すべての統計情報を出力します。

-l　行　　～〈符号なし整数〉((12～256))《24》
1ページ当たりの出力行数を指定します。出力行数が-lオプションの指定値を超えると，稼働統計情報を改ページして出力します。

-i　時間間隔
-tオプションで指定した時間範囲内に取得した稼働統計情報を出力する間隔を，時間隔または分間隔で指定します。

h〔HH〕：時間隔（01≦HH≦24）で出力します。

（例）3時間おきに編集出力する場合 … -i h03

HHの指定を省略して，-i hとだけ指定すると，1時間間隔で編集出力されます。

m〔MM〕：1分間隔（01≦MM≦09）または10分間隔（10≦MM≦30）で出力します。

（例）20分おきに編集出力する場合 … -i m20

MMの指定を省略して，-i mとだけ指定すると，10分間隔で編集出力されます。

-iオプションでは，時間隔または分間隔のどちらか一方だけを指定してください。時間隔と分間隔の両方を指定すると，エラーになります。
-iオプションそのものを省略すると，1時間間隔で編集出力されます。

-t〔開始〕〔，終了〕
取得した稼働統計情報を編集出力する時間の範囲を指定します。ここで指定した時間の範囲内に取得した統計情報取得ファイルを編集出力します。
開始は，1970年1月1日0時0分0秒から当年当月当日の現在時刻までの範囲で指定します。
開始，または終了のどちらか一方を必ず指定してください。開始の指定を省略すると，統計情報ファイルの先頭から指定した終了までが出力範囲となります。終了の指定を省略すると，指定した開始から統計情報ファイルの最後までが出力範囲となります。
開始，および終了は，「hhmmss〔MMDD〔YYYY〕〕」の形式で指定します。

hh：時（00≦hh≦23）

指定を省略できません。

mm：分（00≦mm≦59）

指定を省略できません。

ss：秒（00≦ss≦59）

指定を省略できません。

MM：月（01≦MM≦12）

指定を省略できます。※

DD：日（01≦DD≦31）

指定を省略できます。※

YYYY：年（1970からの西暦を4けたで指定します）

指定を省略できます。※

注※

開始，または終了の「年」の指定を省略した場合は，当年の指定月日時刻と見なされます。「年，月，日」の指定を省略した場合，当年当月当日の指定時刻と見なされます。「月，日」，「月」，または「日」だけを省略することはできません。省略した場合はオプションエラーになります。「月」または「日」を省略したい場合は，「年」，「月」，「日」のすべてを省略してください。

-tオプションの指定を省略すると，統計情報ファイル内のすべての情報を編集出力します。

-s　サーバ名　　～〈1～8文字の識別子〉
稼働統計情報を編集出力したいサーバ名を指定します。
SYSTEM：TP1/LiNKのシステムサービスの稼働統計情報を出力
ユーザサーバ名：ユーザサーバの稼働統計情報を出力
-sオプションを省略すると，システム内にあるすべてのサーバの統計情報を出力します。

-eオプション，-sオプションおよびサーバ名の指定をすべて省略すると，システム全体の稼働統計情報の取得（-sオプションだけを指定）が仮定されます。

-eオプション，-sオプション，およびサーバ名の指定と取得する稼働統計情報の関係を次に示します。

-eオプション | -sオプション | 取得する稼働統計情報の内容
sys | SYSTEM | システム全体のシステム統計情報
サーバ名 | 指定したサーバのシステム統計情報
－ | システム全体のシステム統計情報
rsp | SYSTEM | システム全体のレスポンス統計情報
サーバ名 | この組み合わせは指定できません。
－ | システム全体のレスポンス統計情報
dly | SYSTEM | この組み合わせは指定できません。
サーバ名 | この組み合わせは指定できません。
－ | システム全体の通信遅延時間統計情報
all | SYSTEM | システム全体のすべての稼働統計情報
サーバ名 | 指定したサーバのすべての稼働統計情報※
－ | システム全体のすべての稼働統計情報

（凡例）　－：コマンド引数（サーバ名）を省略することを示します。

注※　レスポンス統計情報と通信遅延時間統計情報は，すべてのデータが出力されます。

出力形式

「6.4.4　稼働統計情報の管理」を参照してください。

注意事項

-tオプションで稼働統計情報の出力範囲を指定する場合，-tオプションで指定した開始または終了と一致するファイルがないときは，開始と終了の間にあるファイルが出力対象になります。

-tオプションで稼働統計情報の出力範囲を指定する場合，日付をわたるために開始時刻が終了時刻よりも遅くなるときは，必ず「月」「日」または「月」「日」「年（西暦）」を指定して，終了時刻が開始時刻よりあとであることを明らかにして指定してください。この指定を省略すると，開始時刻と終了時刻の関係に矛盾があると見なされ，jnlsttsコマンドはエラーになります。日付を省略すると，jnlsttsコマンドを入力した年月日が仮定されるため，出力範囲が該当する年月日以外の日付のときは，必ず「月」「日」または「月」「日」「年（西暦）」を指定してください。

稼働統計情報を編集出力する開始時刻は，-tオプションで開始を指定したかどうかによって異なります。指定した場合は，-tオプションの開始が含まれる時間帯から出力します。指定しなかった場合は，該当するファイルの先頭のレコード時刻が含まれる時間帯から出力します。ここでいう時間帯とは，おのおのの開始時刻の時間（hh:00）を基に，-iオプションで指定した時間間隔で区切った間隔のことです。

稼働統計情報を編集出力する終了時刻を指定すると，指定終了時刻を含む時間帯まで出力されます。例えば，-tオプションで終了を9時0分0秒と指定して，-iオプションで時間間隔を30分と指定すると，最終時間帯は9:00～9:30ですが，実際は9時0分0秒の稼働統計情報が出力されます。

稼働統計情報の数値のうち，平均値の編集結果は，小数点以下1けたが切り捨てて出力されます。

稼働統計情報の数値のうち，イベント数および平均値がオーバフローして'*'が設定されても，最大値と最小値は保証されます。

取得編集時間帯にデータがないときは，その時間帯に'該当データなし'が出力されます。

オプションの指定をすべて省略した場合，jnlcopyコマンドで作成した中間ファイルの稼働統計情報の先頭から最後までを，1ページ当たり24行で編集出力します。

RPC送信元・RPC送信先のOSの時刻精度によっては，時刻戻しが発生しなくても，通信時間とOSの時刻に誤差が生じ，通信遅延時間統計情報の編集結果のデータがマイナス値になることがあります。取得編集時間帯のデータにマイナス値が含まれているときは，編集対象時間帯の最大値，最小値，および平均値に'*'を出力します。

コマンド実行例

統計情報取得ファイルの先頭から1997年7月18日15時30分0秒までの稼働統計情報を，30分間隔で編集出力する例を次に示します。

C:¥>jnlstts   -i m30   -t, 15300007181997   <CR>

この例の場合，最終時間帯は15:30～16:00ですが，1997年7月18日15時30分0秒のシステム統計情報を出力します。

jnlswpfg（稼働統計情報ファイルのスワップ）

形式

jnlswpfg

機能

現用の稼働統計情報ファイルを即時に切り替えます。

jnlswpfgコマンドは，TP1/LiNKが動作中で，かつ［システム環境設定］ウィンドウの［稼働統計情報の取得］欄で［あり］をオンにしているときだけ実行できます。

出力メッセージ

メッセージID | 内容 | 出力先
KFCA01280-E | jnlswpfgコマンドの処理が失敗しました | 標準エラー出力
KFCA04199-I | ヘルプメッセージ | 標準出力
KFCA01285-E | スワップ処理中です | 標準エラー出力

dcsetupml（マルチOpenTP1のセットアップと削除）

形式

dcsetupml 〔-{u|d}〕 マルチOpenTP1セットアップフォルダ 識別子

機能

マルチOpenTP1形態のTP1/LiNKをセットアップ，更新，および削除します。

第1引数に指定したフォルダにマルチOpenTP1形態のTP1/LiNKをセットアップします。また，第2引数の識別子は同一ホスト内のTP1/LiNKを識別するために使われます。TP1/LiNKがオフラインのとき実行できます。識別子は半角英数字1～2文字でユーザが任意に設定できます。なお，このコマンドは，マルチOpenTP1用のコマンドプロンプトからは実行できません。

オプション

-u
引数に対応するマルチOpenTP1を最新の状態に更新します。すでにマルチOpenTP1環境を構築した状態で，オリジナルのTP1/LiNKにソフトウェアをインストールまたは削除するなどして環境を変更した場合，オリジナルのTP1/LiNKとの同期を取るためにマルチOpenTP1を更新します。

-d
引数に対応するマルチOpenTP1を削除します。

コマンド引数

マルチOpenTP1セットアップフォルダ　　～〈パス名〉((50文字以内))
マルチOpenTP1をセットアップするフォルダを50文字以内で指定します。

識別子　　～〈1～2文字の識別子〉
マルチOpenTP1形態のTP1/LiNKを識別するためのマルチOpenTP1識別子を指定します。
ただし，「o1」はオリジナル用として使用できません。また，アルファベットの大文字と小文字は区別されません。

注意事項

このコマンドは，オリジナルのTP1/LiNKおよびセットアップ先のマルチOpenTP1が停止している状態で実行してください。また，Administratorsグループに所属しているユーザで実行してください。

このコマンドは，TP1/LiNKインストールフォルダ下の各フォルダ（bin，etc，sample，include，lib）をコピーします。ユーザがTP1/LiNKインストールフォルダ下の各フォルダのファイルを変更または追加した場合，そのままコピーされるので注意してください。confフォルダに関しては，マルチOpenTP1セットアップフォルダ先に必要なシステム定義ファイルがない場合だけ，システム定義ファイル（初期値）がコピーされます。ユーザサーバ定義はコピーされません。

dcdls（マルチOpenTP1のインストール状態の表示）

形式

dcdls 〔-d TP1/LiNKのフォルダ〕

機能

現在セットアップされているマルチOpenTP1形態のTP1/LiNKの識別子とセットアップフォルダを表示します。TP1/LiNKがオンラインでもオフラインでも実行できます。このコマンドは，マルチOpenTP1用のコマンドプロンプトからは実行できません。

オプション

-d　TP1/LiNKのフォルダ
指定されたフォルダがマルチTP1/LiNKのセットアップフォルダである場合，マルチOpenTP1識別子（2文字以内）を返します。ただし，オリジナルのTP1/LiNKのセットアップフォルダが指定された場合は，「original」を返します。

出力形式

オプションなしの場合

識別子  フォルダ
------   AA..AA
BB       CC..CC
：         ：

AA..AA

オリジナルのTP1/LiNKをインストールしたフォルダ

BB

マルチOpenTP1の識別子

CC..CC

マルチOpenTP1形態のTP1/LiNKをセットアップしたフォルダ

-dオプションを指定した場合

-dオプションで指定したフォルダ | 出力結果 | 出力先
オリジナルTP1/LiNKのセットアップフォルダ | original | 標準出力
マルチOpenTP1のセットアップフォルダ | マルチOpenTP1識別子（2文字以内） | 標準出力

dcmakecon（特定のTP1/LiNKにコマンドを入力するためのコマンドプロンプトの作成）

形式

dcmakecon 〔識別子〕

機能

レジストリを参照し，識別子に対応するマルチOpenTP1形態のTP1/LiNKにコマンドを入力するための，マルチOpenTP1用の新しいコマンドプロンプトを起動します。

識別子の指定を省略した場合は，オリジナルのTP1/LiNKにコマンドを入力するための新しいコマンドプロンプトを起動します。TP1/LiNKがオンラインでもオフラインでも実行できます。マルチOpenTP1でのコマンド操作は，このコマンドプロンプト内で行います。ただし，dcsetupmlコマンド，dcdlsコマンド，およびdcmakeconコマンドは，マルチOpenTP1用のコマンドプロンプトからは実行できません。

このコマンドを実行した場合，環境変数PATH，DCDIR，DCCONFPATH，DCUAPCONFPATH，Include，Libを次の表に示すとおり，設定および変更します。環境変数は起動後のコンソールの中でだけ有効です。

表7-3　コンソール中での環境変数の設定

環境変数 | 設定
PATH | 「識別子に対応するマルチOpenTP1セットアップフォルダ¥bin」をいちばん前に追加します。これによって対応するTP1/LiNKのコマンドが最優先で実行されます。
DCDIR | 「識別子に対応するマルチOpenTP1セットアップフォルダ」に設定します。
DCCONFPATH | 「識別子に対応するマルチOpenTP1セットアップフォルダ¥conf」に設定します。
Include | 「識別子に対応するマルチOpenTP1セットアップフォルダ¥include」をいちばん前に追加します。
Lib | 「識別子に対応するマルチOpenTP1セットアップフォルダ¥lib」をいちばん前に追加します。

コマンド引数

識別子　　～〈1～2文字の識別子〉

マルチOpenTP1形態のTP1/LiNKをセットアップするときの識別子を指定します。コマンド引数なしで，このコマンドを実行した場合，オリジナルのTP1/LiNKを操作するように環境変数を設定します。

注意事項

このコマンドを実行した場合，あらかじめ環境変数が設定された，特定のTP1/LiNKを動かすためのコマンドプロンプトを作成します。したがって，ユーザ側で環境変数は変更しないでください。変更した場合の動作は保証できません。

prcpthls（ユーザサーバのサーチパスの表示）

形式

prcpthls

機能

ユーザサーバプロセスを起動するときに使用するサーチパス，およびユーザサーバから起動されるコマンドに使用するサーチパスを標準出力に出力します。

出力形式

aa....aa

aa....aa

ユーザサーバのサーチパス名

出力例：C:¥OpenTP1¥bin;C:¥OpenTP1¥aplib

出力メッセージ

メッセージID | 内容 | 出力先
KFCA00710-E | 共用メモリを利用できません | 標準エラー出力
KFCA00712-E | 予期しないエラーが発生しました | 標準エラー出力
KFCA00750-E | メモリ不足です | 標準エラー出力
KFCA00755-E | プロセス間通信ができません | 標準エラー出力

uatdump（UAPトレースの編集出力）

形式

uatdump 〔退避コアファイル名〕

機能

指定した退避コアファイルを編集して，標準出力に出力します。

コマンド引数

退避コアファイル名　　～〈パス名〉
退避コアファイル名とは，異常終了したUAPプロセスのUAPトレースファイルです。退避コアファイルをパス名で指定します。
TP1/LiNKでは，UAPトレースファイルは「ユーザサーバ名.プロセスID」で作成されます。
UAPがダウンした場合，UAPトレースファイルは%DCDIR%¥spool¥save¥trcフォルダの下にコピーされます。また，次回開始時には，正常に終了したユーザサーバのUAPトレースファイルも，%DCDIR%¥spool¥save¥trcフォルダの下にコピーされます。
なお，生成から24時間経過しているUAPトレースファイルは，TP1/LiNK開始時に削除されます。

出力形式

「6.4.2(2)　UAPトレースの出力形式」を参照してください。

出力メッセージ

メッセージID | 内容 | 出力先
KFCA03100-E | メモリ不足が発生しました | 標準エラー出力
KFCA03101-E | オプションフラグが不正です | 標準エラー出力
KFCA03102-E | 指定したファイルはありません | 標準エラー出力
KFCA03103-E | 指定したファイルにトレースデータがありません | 標準エラー出力
KFCA03104-W | トレースデータに不正な種別コードがあります | 標準エラー出力
KFCA03105-I | ヘルプメッセージ | 標準出力

注意事項

コマンド引数の指定を省略した場合，退避コアファイル名にcoreが仮定され，標準出力に出力します。

ヘルプメッセージ（KFCA03105-I）の-f オプションは使用できません。

rapkill（rapサーバの限界監視時間の指定と強制停止）

形式

rapkill -t 限界経過時間 〔-f〕〔-d〕 rapリスナー名〔〔△rapリスナー名〕…〕

機能

指定したrapリスナー下で動作するdc_rpc_call代理実行中のrapサーバで，-tオプションで指定した限界経過時間を超えているrapサーバの情報を標準出力に表示します。また，オプションの指定で該当するrapサーバを強制停止します。

オプション

-t　限界経過時間　　～〈符号なし整数〉((1～65535))
dc_rpc_call代理実行処理を監視する限界経過時間を，秒単位で指定します。
-tオプションに指定した値を，（コマンド入力時刻－dc_rpc_call代理実行開始時刻）の値が超えているrapサーバの情報を標準出力に表示します。
RPC最大応答待ち時間×2（安全値）を目安にして指定してください。

-f
-tオプションで指定した限界経過時間を超えているdc_rpc_call代理実行中のrapサーバを強制停止します。

-d
-tオプションで指定した限界経過時間を超えているdc_rpc_call代理実行中のrapサーバに，userdumpコマンドを実行してダンプファイルを取得します。
ダンプファイルは「RAPSERVR_プロセスID.dmp」の名称でコマンド実行フォルダに出力されます。このオプションを-fオプションと同時に指定した場合，ダンプファイルを取得したあとで，該当するrapサーバを強制停止します。

コマンド引数

rapリスナー名　　～〈1～7文字の識別子〉
状態を表示したいrapリスナー名を指定します。

出力形式

aa...aa：rapリスナー名（7文字以内）

bbbb：rapリスナーの状態

Init…サービス開始中

Serv…サービス中

Term…サービス終了中

ccccc：ポート番号

ddd：起動サーバ数

eee：起動サーバ数のうち現在サービス実行中のサーバ数

ff...ff：コネクト中のクライアント数

ggggg：サーバのプロセスID

h：サーバの実行状態

I…サーバ開始中または再開始処理中

F…未スケジュール

S…サービス実行中

T…サーバ終了処理中

i：サーバのトランザクションモード

T…トランザクションモード

－…非トランザクションモード

j：サーバのRPC実行モード

－…通常RPC実行モード

C…連鎖RPC実行モード

kkk.kkk.kkk.kkk：該当するサーバでサービス中のクライアントのIPアドレス

yyyy/mm/dd HH:MM:SS：dc_rpc_call代理実行開始時刻

なお，-tオプションで指定した限界経過時間を超えているdc_rpc_call代理実行中のrapサーバがない場合は，rapサーバの情報は表示されません。

出力メッセージ

メッセージID | 内容 | 出力先
KFCA26911-E | コマンドでエラーが発生しました | 標準エラー出力
KFCA27750-E | コマンド実行中に障害が発生しました | 標準エラー出力
KFCA27751-W | 指定されたrapリスナーは未起動です | 標準エラー出力

注意事項

-dオプションを指定する場合は，実行するコマンドプロンプトのPATH環境変数にuserdump.exeのパスがある必要があります。

userdump.exe実行時は，userdump.exeが出力するメッセージを表示します。

rapkillコマンドでrapサーバを強制停止する場合，アボートコードWnts01でrapサーバが異常終了します。

rapkillコマンドを実行するSUPのサンプル

rapkillコマンドを実行するSUPのサンプルと格納場所を次に示します。

ソースファイル：%DCDIR%¥sample¥TP1LINK¥RAPKILL¥RAPKILLP.C

メイクファイル：%DCDIR%¥sample¥TP1LINK¥RAPKILL¥MAKEFILE

定義ファイル：%DCDIR%¥sample¥TP1LINK¥CONF¥RAPKILL

サンプルSUPの仕様

環境変数RAPKILL_INTERVALに指定された時間間隔（デフォルト値：1800，単位：秒）でrapkill -fdコマンドを実行します。停止は，TP1/LiNK停止と同期します。

また，userdumpコマンドの実行時に，カレントディレクトリに出力されたダンプファイルを%DCDIR%¥spool¥saveに移動します。

rapkillコマンドのオプションは，次に示す環境変数で変更できます。

●RAPKILL_T_OPTION

-tオプションの限界経過時間を指定します（デフォルト値：360）。

●RAPKILL_LISTENER_NAME

rapリスナー名を指定します（デフォルト値：RSV）。

サンプルSUPの使用方法

実行形式ファイルを作成します
Microsoft Visual C++のnmakeコマンドを実行して実行形式ファイルを作成します。コマンドの入力例を次に示します。
C:¥>cd %DCDIR%¥sample¥TP1LINK¥RAPKILL <CR>
C:¥>nmake <CR>

実行形式ファイルをコピーします
作成した実行形式ファイルrapkillp.exeを，%DCDIR%¥aplib下にコピーします。

定義ファイルをコピーします
定義ファイル%DCDIR%¥sample¥TP1LINK¥CONF¥RAPKILLを，%DCDIR%¥conf下にコピーします。

実行環境を確認します
［アプリケーション管理SUP］ウィンドウで，ユーザサーバ名RAPKILLがあることを確認したあとで，RAPKILLの環境変数などを変更します。
-dオプションを指定してrapkillコマンドを実行する場合は，userdumpコマンドのパスが，システム環境変数か，または［システム環境設定］ウィンドウのサーチパスにある必要があります。
また，自動起動する場合はRAPサービスよりあとに起動してください。

SUP使用上の注意事項

RAPサービスの起動や停止のタイミングによっては，rapkillコマンドがRAPサービス未起動でエラー（dc_adm_call_command関数がDCADMER_STATNOTZERO（-1855）でエラーリターン）になることがあります。

dcauditsetup（監査ログ機能の環境設定）

形式

dcauditsetup OpenTP1ホームディレクトリ

機能

監査ログ機能を使用するために必要な環境を設定します。

「4.5.1　監査ログ機能を使用するときの定義の変更」に示すログサービス定義の監査ログに関連するオペランド（log_audit_xxxxオペランド）を変更する場合は，TP1/LiNKを停止し，定義を変更したあとにこのコマンドを実行してください。

ログサービス定義のlog_audit_outオペランドを指定していない場合，またはlog_audit_outオペランドにNを指定している場合は，監査ログ機能は無効です。

このコマンドを実行したときに作成されるフォルダおよびファイル名を次の表に示します。

フォルダおよびファイル | 内容
%DCDIR%¥auditlog※ | 監査ログファイルを格納するフォルダ
%DCDIR%¥auditlog¥audit.log※ | 監査ログファイル

注※

ログサービス定義のlog_audit_pathオペランドの指定を省略した場合のフォルダです。log_audit_pathオペランドを指定した場合，指定したフォルダが作成され，作成されたフォルダ下にファイルが作成されます。

なお，作成されるフォルダは最下層だけです。上位のフォルダは事前に準備しておく必要があります。

コマンド引数

OpenTP1ホームディレクトリ　　～〈パス名〉
OpenTP1ホームディレクトリを50文字以内で指定します。

出力メッセージ

メッセージID | 内容 | 出力先
KFCA33500-I | ヘルプメッセージ | 標準エラー出力
KFCA33501-E | コマンド実行中にエラーが発生しました | 標準エラー出力
KFCA33502-I | ログサービス定義を解析しました | 標準出力
KFCA33503-I | 監査ログ機能を有効・無効にしました | 標準出力

8.　トラブルが起こったときは

この章では，TP1/LiNKにトラブルが起こったときの処置について説明します。

＜この章の構成＞

8.1　トラブルの現象とその原因

8.2　トラブルの場合の処置

8.3　トラブル時に参照する情報

8.4　エラーメッセージに出力される値について

8.5　ウィルス駆除プログラムの使用について

8.1　トラブルの現象とその原因

トラブルの現象とその原因を次の表に示します。

表8-1　トラブルの現象とその原因

現象 | 考えられる原因 | 参照個所
ユーザサーバを開始できない | メモリが不足しています。 | 8.2.1(1)
実行環境に設定した値が間違っています。
ユーザサーバを終了できない | ユーザサーバの不良です。 | 8.2.1(2)
ユーザサーバが異常終了した | TP1/LiNKまたはユーザサーバ自身の不良です。 | 8.2.1(3)
コネクションを確立できない | 通信障害が発生しています。 | 8.2.1(4)
TP1/LiNKを開始できない | TP1/LiNKが正しくセットアップされていません。 | 8.2.3(1)
TP1/LiNKの環境を設定した値が間違っています。
メモリまたはディスクの容量が不足しています。
OSの構成がTP1/LiNKの実行環境として適当ではありません。
TCP/IPの環境をセットアップしていません。
ハードウェア（ディスクまたはLAN）の不良です。
TP1/LiNKの操作が正常に実行しない | 該当する操作を実行できる環境ではありません。
利用者に，操作を実行する権限がありません。
TP1/LiNKを正常終了させるボタンをクリックしたが，終了しない | ユーザサーバの処理が不当に長く続いているか，または異常終了しているユーザサーバがあります。 | 8.2.3(2)
TP1/LiNKが異常終了した | TP1/LiNKのプロセスまたはユーザサーバのプロセスが，不当に停止されました。 | 8.2.3(3)
TP1/LiNKの内部処理で不良を検出しました。
TP1/LiNKの操作が応答待ちタイムアウトになる | OSの負荷が高いため，決められた時間内に処理が完了しませんでした。 | 8.2.3(4)

8.2　トラブルの場合の処置

TP1/LiNKのトラブルを解決する方法について説明します。ここで説明していないトラブル（OS，コンパイラなど）の処置については，該当するマニュアルを参照してください。

＜この節の構成＞

8.2.1　ユーザサーバのトラブルの場合

8.2.2　ファイルのトラブルの場合

8.2.3　TP1/LiNKのトラブルの場合

8.2.4　リソースマネジャのトラブルの場合

8.2.5　CPUのトラブルの場合

8.2.1　ユーザサーバのトラブルの場合

ユーザサーバにトラブルが起こったときの処置について説明します。

＜この項の構成＞

(1)　ユーザサーバを開始できないとき

(2)　ユーザサーバを終了できないとき

(3)　ユーザサーバが異常終了したとき

(4)　通信障害が発生したとき

(1)　ユーザサーバを開始できないとき

メモリの容量が不足しているときは，そのことを知らせるメッセージが出力されます。

共用メモリが不足したときは，TP1/LiNKをいったん正常終了させてから，再び開始させてください。

プロセス固有メモリが不足したときは，稼働中の不要なユーザサーバを停止させてください。不要なユーザサーバがないときは，Windowsの仮想メモリページファイルを拡張してください。

デスクトップヒープが不足したときに不要なプロセスがある場合は，そのプロセスを停止させてください。不要なプロセスがない場合は，Windowsのデスクトップヒープ領域を拡張してください。

プロセスの起動とサーバマシンのログオフ処理が重なると，プロセスの起動に失敗することがあります。プロセスが頻繁に生成されるTP1/LiNK起動時などは，該当するサーバマシンでのログオフ操作を控えてください。

SPPの起動時に，KFCA00830-EメッセージおよびKFCA01812-Eメッセージが出力されて，SPPの起動に失敗することがあります。このメッセージは［システム環境設定］ウィンドウのサーバ数のSPPに指定したプロセス数よりも多くSPPを起動しようとした場合に出力されます。このメッセージが出力された場合は，該当する指定を見直して，TP1/LiNKを正常開始させてください。

ユーザサーバが終了状態0x00000080または0xC0000135でダウンする場合は，UAPの実行に必要なDLLのパスが設定されていないか，マニフェストファイルがないか，またはマニフェストファイルに記載されているライブラリを参照できません。この場合は，次の対処をしてください。

UAPの実行に必要なDLLのパスを設定してください。詳細については，「3.1　TP1/LiNKの実行環境の設定」の［サーチパス］欄を参照してください。

マニフェストファイル，またはライブラリを確認してください。詳細については，「5.10.4　UAPのコンパイルとリンケージ」を参照してください。

(2)　ユーザサーバを終了できないとき

ユーザサーバの状態を表示（［TP1/LiNKアプリケーション管理SPP］ウィンドウまたは［TP1/LiNKアプリケーション管理SUP］ウィンドウを表示）して，終了しない原因を確認してください。確認したあと，強制的に終了させる必要があるときは，ユーザサーバを強制停止する操作をしてください。

(3)　ユーザサーバが異常終了したとき

TP1/LiNKとユーザサーバのどちらに原因があるかを示すメッセージが表示されます。

ユーザサーバに原因があるときは，プログラムを修正したあとで再び開始させてください。

TP1/LiNKに原因があるときは，OpenTP1管理者または保守員に連絡してください。

(4)　通信障害が発生したとき

TP1/LiNKのRPCでは，TCP/IPのコネクション設定処理を12秒で監視しています。

WANを経由した遠隔地との通信などで，伝送効率の悪いネットワークを使用した場合，通信障害が発生することがあります。この場合，問題の発生しているSPPまたはSUPの，TP1/LiNKインストールフォルダ¥conf¥ユーザサーバ名ファイルに，次に示す定義を追加する必要があります。

形式

set ipc_conn_interval = コネクション確立時の最大監視時間　　
～〈符号なし整数〉((0～65535))（単位：秒）

説明

データ送信時のコネクション確立監視時間を秒単位で指定します。ノンブロッキングモードで呼び出したconnect()システムコールに対する応答を受信するまでの監視時間を指定します。なお，12秒（デフォルト値）未満の値を指定した場合は，SYN再送によるコネクション確立に失敗するおそれがあるため，12秒以上の値を指定することを推奨します。

定義例

定義の最終行には改行を入力してください。

# TP1/LiNK (spp)
# コメント = TP1/LiNK sample SPP (C Language)
set module = "SPP"
set type = other
set service_group = "LINK_SVG_C"
set receive_from = queue
set nice = 0
set atomic_update = N
set parallel_count = 1,1
set balance_count = 3
set schedule_priority = 8
set message_buflen = 2048
set message_store_buflen = 6144
set service = "refer=refer",¥
"update=update"
set ipc_conn_interval = 60

8.2.2　ファイルのトラブルの場合

ファイルにトラブルが起こったときの処置について説明します。

＜この項の構成＞

(1)　TP1/LiNKの状態を管理するファイルにトラブルが起こったとき

(2)　ステータスファイルが破壊されたとき

(3)　TP1/LiNKのシステムファイルや実行モジュールが破壊されたとき

(1)　TP1/LiNKの状態を管理するファイルにトラブルが起こったとき

TP1/LiNKの状態を管理するファイルにトラブルが起こったときは，TP1/LiNKは停止します。このように終了してしまったときは，TP1/LiNKを強制的に正常開始してください。このとき，再開始（リラン）とはならないで正常開始になるので，ユーザサーバの閉塞状態などは引き継げません。

(2)　ステータスファイルが破壊されたとき

TP1/LiNKの稼働中にコンピュータの電源の切断などをすると，TP1/LiNKのステータスファイルが破壊されることがあります。この状態で，TP1/LiNKを再開始しようとすると，KFCA01040-Eメッセージが出力されてTP1/LiNKの起動に失敗します。このメッセージが出力された場合は，TP1/LiNKを強制的に正常開始してください。

(3)　TP1/LiNKのシステムファイルや実行モジュールが破壊されたとき

コンピュータの電源の切断などをすると，TP1/LiNKのシステムファイルや実行モジュールが破壊されて，TP1/LiNKを稼働できなくなることがあります。この場合は，環境を引き継ぐ指定でTP1/LiNKを再インストールしてください。

8.2.3　TP1/LiNKのトラブルの場合

TP1/LiNKでトラブルが起こったときの処置について説明します。

＜この項の構成＞

(1)　TP1/LiNKを開始できないとき

(2)　TP1/LiNKを終了できないとき

(3)　TP1/LiNKが異常終了したとき

(4)　TP1/LiNKの操作が応答待ちタイムアウトしたとき

(1)　TP1/LiNKを開始できないとき

TP1/LiNKを開始できない原因には，次のことが考えられます。

(a)　TP1/LiNKが正しくセットアップされていない

TP1/LiNKをセットアップし直してください。セットアップし直すときは，セットアッププログラム（setup.exe）を使います。

(b)　メモリまたはディスクの容量不足

メモリまたはディスクの容量が不足していることを知らせるメッセージが出力されます。稼働中の不要なユーザサーバを停止させるか，または不要なファイルを削除してから，TP1/LiNKを再び開始させてください。

プロセス固有メモリが不足しているときは，Windowsの仮想メモリページファイルの容量を見直してください。

共用メモリが不足しているときは，TP1/LiNKをインストールしたディスクパーティションの残り容量が，TP1/LiNKが確保する共用メモリ容量よりも大きくなるように，不要なファイルを削除してください。

システムの仮想メモリ不足が原因となって，TP1/LiNKサーバ・コマンド，またはSUP/SPPの実行時にアプリケーションエラー（初期化失敗・メモリ参照例外など）になることがあります。この場合は，「リリースノート」を参照してページファイルを拡張してください。

(c)　TCP/IPの環境をセットアップしていない

通信不良を示すメッセージが出力されます。TCP/IPの環境を正しくセットアップし直したあとで，TP1/LiNKを再び開始してください。TP1/LiNKサービスの開始処理中は，Windowsのダイヤルネットワーク（リモートアクセス）のダイヤルアウトをしないでください。

(d)　ハードウェアの不良

入出力エラーのメッセージが出力されます。トラブルの原因となったデバイスを交換，または修理してください。

(e)　TP1/LiNKインストールフォルダへのアクセス

TP1/LiNK起動中は，TP1/LiNKインストールフォルダにアクセスしないでください。TP1/LiNK起動（システムサーバ，ユーザサーバ）中に，TP1/LiNKインストールフォルダにエクスプローラなどを使ってアクセスした場合，起動に失敗することがあります。

(2)　TP1/LiNKを終了できないとき

［TP1/LiNKアプリケーション管理SPP］ウィンドウまたは［TP1/LiNKアプリケーション管理SUP］ウィンドウの［最新情報に更新(L)］ボタンをクリックして，現在のユーザサーバの状態を確認してください。ユーザサーバが終了しないで続いているときは，終了を待つか，終了しないユーザサーバを強制停止させてください。

(3)　TP1/LiNKが異常終了したとき

TP1/LiNKの内部処理で不良を検出したときは，メッセージと，不良原因を示す理由コードが出力されます。これらの情報を保守員に連絡してください。

(4)　TP1/LiNKの操作が応答待ちタイムアウトしたとき

OSの負荷が低くなったことを確認してから，ボタンをクリックしてください。

8.2.4　リソースマネジャのトラブルの場合

リソースマネジャでトラブルが起こったときは，その旨を示すメッセージが通知されます。

TP1/Messagingにトラブルが起こったときの処置については，マニュアル「TP1/Messaging 使用の手引」にある障害対策の説明を参照してください。

TP1/Message Queue※にトラブルが起こったときの処置については，マニュアル「TP1/Message Queue 使用の手引」にある障害対策の説明を参照してください。

DBMSにトラブルが起こったときの処置については，該当するDBMSのマニュアルにある障害対策の説明を参照してください。

注※

TP1/LiNKのVersion 7に対応するTP1/Message Queueは，現時点では未発行です。発行時期をご確認ください。

8.2.5　CPUのトラブルの場合

OSおよびハードウェアのトラブルを解決する方法に従って原因を取り除いたあとで，CPU内のOSを回復して，TP1/LiNKを開始してください。

8.3　トラブル時に参照する情報

TP1/LiNKでトラブルが起こったときに参照する情報の一覧を次の表に示します。

表8-2　トラブルが起こったときに参照する情報

取得情報
出力情報
参照方法
備考

メッセージログファイル
TP1/LiNKまたはユーザサーバから出力したメッセージ
［TP1/LiNKメッセージログ表示］ダイアログボックスを表示して操作
ありません。

UAPトレース
UAPトレースファイル
［TP1/LiNKトレース情報表示］ダイアログボックスの［UAPトレース(U)］オプションボタンをオンにして操作
TP1/LiNKが出力するUAPトレースファイル（2進のデータ）は，
%DCDIR%¥spool¥save¥trc¥フォルダの下にユーザサーバ名.nnn（nnnはプロセスID）という名称で退避されます。

RPCトレース
ユーザサーバがTP1/LiNKのRPCで通信するために使うデータ
［TP1/LiNKトレース情報表示］ダイアログボックスの［RPCトレース(R)］オプションボタンをオンにして操作
RPCトレースファイルには，受信データが送信データよりも先に出力されることがあります。

8.4　エラーメッセージに出力される値について

TP1/LiNKが出力するエラーメッセージの対処で補足する内容について説明します。

エラーメッセージのシステムコール名およびerrno値

次に示すエラーメッセージのシステムコールおよびerrno値については，Win32 API，Windows SocketsまたはCランタイムライブラリの関数名およびそのエラーコードが表示されます。

エラーコード値については，Microsoft Visual C++の文法で該当する関数名のエラーコードの説明を参照してください。

KFCA00100-E

KFCA00107-E

KFCA00224-E

KFCA00700-E

また，KFCA01820-Eメッセージの終了状態には，Win32 APIのGetExitCodeProcess()で返されるプロセスの終了状態（8けたの16進数）が表示されます。

エラーメッセージKFCA00715-Eのエラー要因についての補足事項

KFCA00715-Eメッセージの要因コードが500の場合は，TP1/LiNK開始中のシステム初期化処理が次に示す時間を超えた場合に出力されます。

［システム環境設定］ウィンドウの［RPC詳細設定］ダイアログボックスの［応答待ち時間］タブの［最大応答待ち時間(W)］（対象：システム共通）に指定した時間

このとき，TP1/LiNKサービスはオンライン状態となります。

この要因コードが表示された場合は，［TP1/LiNKコントロール］ウィンドウまたはdcstop -fコマンドでTP1/LiNKを強制停止させてから再起動してください。

このメッセージが繰り返し出力される場合は，TP1/LiNKインストールフォルダ¥conf¥ENVファイルに，次に示すオペランドを追加してください。

set system_init_watch_time = システム初期化の待ち時間　　
～〈符号なし整数〉((0～65535))（単位：秒）

システム開始処理のうち，システム初期化処理（システムサービス開始前の初期化処理）の待ち時間の最大値を指定します。0を指定した場合は，システム初期化処理が終わるまで無限に待ち続けます。

このオペランドの指定を省略した場合は，次に示す値が仮定されます。

［システム環境設定］ウィンドウの［RPC詳細設定］ダイアログボックスの［応答待ち時間］タブの［最大応答待ち時間(W)］（対象：システム共通）に指定した時間

定義例

定義の最終行には，改行を入力してください。

# ALL RIGHTS RESERVED, COPYRIGHT (C)1994, HITACHI, LTD.
# LICENSED MATERIAL OF HITACHI,LTD.
# *
# * システム環境定義
# * 環境名： env
# *
# TP1/LiNK (env)
set static_shmpool_size = 21699
set dynamic_shmpool_size = 0
set server_count = 64
set system_init_watch_time = 300

エラーメッセージKFCA00854-Eの対策についての補足事項

サーバ名が_clttrnまたは_cltconの場合は，TP1/LiNKインストールフォルダ¥conf¥CLTSRVファイルに，次に示すオペランドを追加してください。

set message_store_buflen = メッセージ格納バッファプール長
～〈符号なし整数〉((1024～31457280))《8196》（単位：バイト）

CUPからのトランザクショナルRPC要求，常設コネクション要求を，トランザクショナルRPC実行プロセス，CUP実行プロセスに渡す前にいったん格納しておく共用メモリのプールの大きさを指定します。

次の計算式で求めた値を指定してください。

メッセージ格納バッファプール長＝D×C

D：制御データ長（256バイト）

C：トランザクショナルRPC要求数，常設コネクション要求数のうち大きい値

なお，この計算式の算出結果が8196より小さい場合は，指定する必要はありません。

定義例

定義の最終行には，改行を入力してください。

# ALL RIGHTS RESERVED, COPYRIGHT (C)1994, HITACHI, LTD.
# LICENSED MATERIAL OF HITACHI,LTD.
#
# *
# * クライアントサービス定義
# * 環境名： cltsrv
# *
# TP1/LiNK (cltsrv)
set clt_trn_conf = Y
set parallel_count = 1,2
set balance_count = 3
set clt_cup_conf = Y
set cup_parallel_count = 1,2
set cup_balance_count = 3
set message_store_buflen = 13312

エラーメッセージKFCA01812-Eのエラー要因についての補足事項

エラー要因がMEMORYのKFCA01812-Eのメッセージは，［システム環境設定］ウィンドウの［サーチパス］欄にUAPのサーチパスが設定されていない場合にも出力されます。

また，エラー要因がFORK FAILEDのKFCA01812-Eメッセージは，ロードモジュールのないUAPを起動しようとしたときにも出力されます。該当するUAPのロードモジュールがあるかどうかを確認してください。

エラーメッセージKFCA03909-Eの対策についての補足事項

エラーメッセージKFCA03909-Eが出力されたとき，またはアボートコードWshm02で異常終了したときは，次のような理由が考えられます。

TP1/LiNKが使う共用メモリの上限値を超過

ディスク容量が不足

このようなときは，［システム環境設定］ウィンドウと［SPP環境設定］ダイアログボックスで設定した項目（プロセス数など）を見直してください。

8.5　ウィルス駆除プログラムの使用について

TP1/LiNKが動作するコンピュータで，実行プログラムをリアルタイムに検疫する機能を持つウィルス駆除プログラムを起動している場合，通信性能が劣化することでスループット全体に影響を与えることがあります。

9.　メッセージ

この章では，TP1/LiNKのメッセージについて説明します。この章に載っていないメッセージについては，マニュアル「OpenTP1 メッセージ」を参照してください。

＜この章の構成＞

9.1　メッセージの形式

9.2　メッセージの詳細

9.3　アボートコードの内容

9.1　メッセージの形式

TP1/LiNKのメッセージの出力形式について説明します。メッセージは，次に示す形式でイベントビューアとコンソールに出力されます。

KFCAnnnnn-X YY……YY

KFCAnnnnn-X：メッセージID（半角の英数字11文字）

YY……YY：メッセージテキスト

このマニュアルでの記述形式を次に示します。

KFCAn₁n₂n₃n₄n₅-X

メッセージテキスト　　（Y）

メッセージの意味を説明します。

（S）メッセージを出力したあとで，TP1/LiNKの処理を示します。

（O）メッセージが出力されたときの，オペレータの処置を示します。

［対策］メッセージが出力されたときの，OpenTP1管理者の処置を示します。

オペレータの処置または［対策］の説明に「保守員に連絡してください。」と記述してある場合は，当社社員または当社営業担当部署に連絡してください。

記号の意味を次に示します。

KFCA：TP1/LiNKのメッセージであることを示します。

n₁n₂n₃n₄n₅：メッセージの通し番号を示します（5けた）。

X：メッセージの種類を示します。

E…エラーメッセージです。TP1/LiNKのライブラリまたは環境設定が正常に動作しないことを示します。

I…情報メッセージです。TP1/LiNKからオペレータに通知する，単なる動作を示します。

Y：メッセージの出力先を示します。

E…標準エラー出力

S…標準出力

L…メッセージログファイル（dclog1，dclog2）

A…監査ログ

運用コマンド出力メッセージを除いた，出力先がコンソール，標準エラー出力，または標準出力のメッセージは，Windowsのイベントビューアにも出力されます。TP1/LiNKが出力したメッセージは，ソースの項目にTP1/LiNKと表示されます。

出力先が複数の場合は「＋」でつないで表記します。出力先がメッセージログファイルの場合（Lだけの場合）は，出力先を示す記号は表記しません。

9.2　メッセージの詳細

TP1/LiNKのメッセージを示します。ここに載っていないメッセージについては，マニュアル「OpenTP1 メッセージ」を参照してください。

KFCA01010-E

最新の情報を持つステータスファイルでエラーが発生しました。ステータス物理ファイル名：aa....aa
理由コード：bbbbbbbbbb　　（L＋E）

最新の情報を持つステータスファイルでエラーが起こりました。

aa....aa：ステータス物理ファイルを示すパス名（63文字以内の完全パス名）

bbbbbbbbbb：エラーの内容を示す理由コード（10けたの数字）

（S）予備のステータスファイルがある場合は，スワップ処理をします。予備のステータスファイルがない場合は，TP1/LiNKの開始処理を中止します。その後，トラブルが起こったファイルを閉塞状態にします。

［対策］保守員に連絡してください。

KFCA01040-E

ステータス物理ファイルでaa....aaエラーが発生しました。ステータス物理ファイル名：bb....bb
理由コード：cccccccccc　　（L＋E）

ステータス物理ファイルでエラーが起こりました。

aa....aa：エラー内容の，次のうちのどれか一つが表示（10文字以内の英数字）

create：ファイルの作成

fstat：ファイルの状態報告

open：ファイルのオープン

close：ファイルのクローズ

read：レコードの入力

write：レコードの出力

logical：レコードの整合性チェックエラー

filecheck：ファイルの妥当性チェックエラー

delete：ファイルの削除

bb....bb：ステータス物理ファイルを示すパス名（63文字以内の完全パス名）

cccccccccc：エラーの内容を示す理由コード（10けたの数字）

（S）予備のステータスファイルがある場合，スワップ処理をします。予備のステータスファイルがない場合，エラーが起こったファイルを閉塞状態にして，処理を続けます。

［対策］保守員に連絡してください。

KFCA01046-I

ステータス物理ファイルを再作成します。ステータス物理ファイル名：aa....aa
理由コード：bbbbbbbbbb　　（L＋E）

ステータス物理ファイルを再作成します。

aa....aa：ステータス物理ファイルを示すパス名（63文字以内の完全パス名）

bbbbbbbbbb：再作成する理由コード（10けたの数字）

（S）処理を続けます。

KFCA01048-E

ステータスファイルシステムを作成できません。ファイルシステムパス名：aa....aa
理由コード：bbbbbbbbbb　　（L＋E）

ステータスファイルシステムを作成したときにエラーが起こりました。

aa....aa：ステータス物理ファイルを示すパス名（63文字以内の完全パス名）

bbbbbbbbbb：エラーの内容を示す理由コード（10けたの数字）

（S）予備のステータスファイルがある場合，スワップ処理をします。予備のステータスファイルがない場合，エラーが起こったファイルを閉塞状態にして，処理を続けます。

［対策］理由コードを保守員に連絡してください。

KFCA01051-I

ステータスサービスは，エラーが発生したステータス物理ファイルをclose後，閉塞状態にします。　　（L＋E）

TP1/LiNKは，エラーが起こったステータス物理ファイルをクローズして，その後閉塞状態にします。

（S）予備のステータスファイルがある場合，スワップ処理をします。予備のステータスファイルがない場合，エラーが起こったファイルを閉塞状態にして，処理を続けます。

［対策］保守員に連絡してください。

KFCA01103-E

ジャーナルサービスを開始できません。理由コード＝aaaa　　（L＋E）

ジャーナルサービスの開始／再開始（リラン）処理中にトラブルが起こりました。

aaaa：トラブルの内容を示す理由コード（4けた以内の英数字）

（S）TP1/LiNKは異常終了します。

［対策］理由コード一覧の内容を参照して，次に示す対策をしたあとで，TP1/LiNKを再開始してください。

理由コード
意味
対策

101
メモリが不足しました。
TP1/LiNKが使うメモリ容量を見直してください。

103
ネットワークのトラブルが起こりました。
トラブルを対処してから，システムを再び起動してください。

517
TP1/LiNKの内部ファイルでトラブルが起こりました。
このメッセージよりも前で出力されているシステムコールのエラーメッセージを基に，原因を調査して対策してください。
対策したあと，システムを再び起動してください。

KFCA02660-I

使用方法：jnlstts〔-h〕〔-e 編集項目〕〔-l 行〕〔-i 時間間隔〕〔-t〔開始〕〔，終了〕〕〔-s サーバ名〕　　（E）

jnlsttsコマンドの使い方です。このメッセージは，次のような場合に表示されます。

コマンドのオプションに-hオプション（ヘルプメッセージの表示）を指定した場合。

コマンドのオプションまたは引数の指定が間違っている場合。

（S）コマンドの使い方が間違っている場合は，コマンド処理を中止します。

（O）コマンドの使い方が間違っている場合は，文法を確認してから，再びコマンドを実行してください。

KFCA04150-I

aa....aaをジャーナルファイルの現用として割り当てました。　　（L+S）

TP1/LiNKの履歴情報を取得するファイルを割り当てました。

aa....aa：割り当てたファイルの名称（12文字以内の英数字）

KFCA04151-I

aa....aaをジャーナルファイルから切り離しました。　　（L+S）

TP1/LiNKの履歴情報を取得するファイルを別のファイルに切り替えたので，aa....aaのファイルを切り離しました

aa....aa：切り離したファイルの名称（12文字以内の英数字）

KFCA04152-E

aa....aaジャーナルファイルのアクセスで障害が発生しました。理由コード＝bbbb-cc　　（L+E）

TP1/LiNKの履歴情報を取得するファイルへのアクセスでトラブルが起こりました。

aa....aa：トラブルが起こったファイルの名称（12文字以内の英数字）

bbbb：理由コード（4けた以内の英数字）

cc：TP1/LiNKの内部コード

（S）TP1/LiNKは異常終了します。

（O）理由コードの内容を参照して，次に示す対策をしたあとで，TP1/LiNKを再び開始してください。

理由コード | 意味 | 対策
303 | TP1/LiNKの内部ファイルのオープンに失敗しました。 | 保守員に連絡してください。
305 | TP1/LiNKの内部ファイルの書き込み処理でトラブルが起こりました。 | 保守員に連絡してください。

KFCA04199-I

使用方法：jnlswpfg　　（E）

jnlswpfgコマンドの使い方です。このメッセージは，次のような場合に表示されます。

コマンドのオプションまたは引数の指定が間違っている場合。

（S）コマンドの使い方が間違っている場合は，コマンド処理を中止します。

（O）コマンドの使い方が間違っている場合は，文法を確認してから，再びコマンドを実行してください。

KFCA26521-W

内部イベント通知に失敗しました。（DCDIR＝aa....aa）　　（E）

TP1/LiNKの内部イベント通知に失敗しました。このメッセージは，次のような場合に表示されます。

環境変数DCDIRをコマンドプロンプトやバッチファイルに設定した場合。

クライアント接続マネジャから，TP1/LiNKの開始または終了をした場合。

aa....aa：当該プロセス内で設定されている環境変数DCDIRの設定値

（S）処理を続けます。

［対策］環境変数DCDIRをコマンドプロンプトやバッチファイルに設定した場合は，設定値がシステム環境変数に設定されている値と異なっているおそれがあります。大文字，小文字の差異も含めて，システム環境変数の設定値と同じ値を環境変数DCDIRに設定してください。クライアント接続マネジャから，TP1/LiNKの開始または終了をした場合は，接続先のターミナルサーバ上のシステム環境変数DCNTB_TERMINAL_SERVERに'1'を設定し，OSを再起動したあと，TP1/LiNKシステムを開始してください。

KFCA26525-W

OpenTP1サービスが制御シグナルを受信しました。制御シグナル＝aa....aa　　（E）

このメッセージは，次のような場合に表示されます。

TP1/LiNKのコンソール画面でCtrlとBreakキーを同時に押した場合。

TP1/LiNKのコンソールを閉じた場合。

TP1/LiNKの起動中にシャットダウン処理が行われた場合。

aa....aa：TP1/LiNKのコンソールが受信した制御シグナル

1：CTRL+BREAKシグナル

2：CTRL+CLOSEシグナル

6：シャットダウンシグナル

（S）TP1/LiNKを異常終了します。

KFCA26551-E

aa....aaの実行に失敗しました。理由コード=bbb　　（E）

コマンドの実行中にエラーが起こりました。

aa....aa：コマンド名

bbb：理由コード（3けたの数字）

（O）理由コードの内容を参照して，次に示す対策をしたあとで，再びコマンドを実行してください。

理由コード
意味
対策

101
メモリ不足が発生しました。
メモリ不足を解消したあとに，再度コマンドを実行してください。

102
レジストリ情報が不正です。
TP1/LiNKのレジストリ情報が壊れているおそれがあります。保守員に連絡してください。

103
Administrator権限がありません。またはマルチOpenTP1用のコマンドプロンプト上でコマンドを実行しました。
コマンド実行アカウントにAdministrator権限が与えられているかどうか確認してください。または，コマンド実行環境がマルチOpenTP1用のコマンドプロンプト上ではないことを確認してください。対策後に，再度コマンドを入力してください。

104
内部矛盾が発生しました。
コマンド実行中にTP1/LiNKの内部処理で障害が発生しました。保守員に連絡してください。

105
システムエラーが発生しました。
コマンド実行中に予期しない障害が発生しました。保守員に連絡してください。

201
フォルダの作成に失敗しました。
指定したマルチOpenTP1セットアップフォルダおよびその配下のフォルダに書き込みアクセス権があるか確認してください。対策後に，再度コマンドを実行してください。

202
ファイルコピーに失敗しました。
指定したマルチOpenTP1環境下で実行中のコマンドやオープン中のファイルがないか確認してください。対策後に，再度コマンドを入力してください。

205
環境変数の設定に失敗しました。
コマンド実行環境が不安定な状態です。新しいコマンドプロンプトを起動して再度コマンドを実行してください。繰り返し発生する場合は，保守員に連絡してください。

206
コマンドプロンプトの作成に失敗しました。

207
マルチOpenTP1識別ファイルの作成に失敗しました。
%DCDIR%¥lib¥sysconfフォルダおよびその配下のファイルにアクセス権があるか確認してください 。対策後に，再度コマンドを実行してください。

210
サービスの登録に失敗しました。
障害発生時のTP1/LiNKサービスの登録状態を次の手順で保存し，保守員に連絡してください。

［管理ツール］－［コンピュータの管理］－［サービスとアプリケーション］－［サービス］を開く。

［サービス］でリストボックス中に表示されている「TP1LiNK」（マルチOpenTP1の場合は「TP1LiNKXX」）のハードコピーを取得する。「TP1LiNKXX」の「XX」はマルチOpenTP1の識別子です。

211
サービス状態の取得に失敗しました。

212
サービスの削除に失敗しました。

213
dcsetupmlコマンドが別プロセスで実行中のため中止しました。
タスクマネージャなどで，ほかのdcsetupmlコマンドが実行中でないことを確認したあと，再度コマンドを実行してください。

214
フォルダの削除に失敗しました。
指定したマルチOpenTP1環境で次に示すフォルダとその配下のファイルにアクセス権があるか確認してください。削除が可能なアクセス権が与えられている場合は，指定したマルチOpenTP1環境下で実行中のコマンドやオープン中のファイルがないか確認してください。確認したあと，次のフォルダが存在している場合は，手動でフォルダを削除してください。

%DCDIR%¥bin

%DCDIR%¥lib

%DCDIR%¥include

%DCDIR%¥etc

%DCDIR%¥sample

dcsetupml -uコマンドを実行したときに，この理由コードが出力された場合は，上記対策後に，再度コマンドを入力してください。

305
マルチOpenTP1環境が存在しません。
マルチOpenTP1環境は存在しません。引数を見直しあと，再度コマンドを実行してください。

308
OpenTP1が開始状態です。
オリジナルのTP1/LiNKまたは指定したマルチOpenTP1の識別子に対応するマルチOpenTP1が開始状態です。オリジナルのTP1/LiNKおよび識別子に対応したマルチOpenTP1を停止したあと，再度コマンドを実行してください。

KFCA26552-E

aa....aaのコマンド引数が不正です。理由コード=bbb　　（E）

コマンドの引数が不正なため，エラーが起こりました。

aa....aa：コマンド名

bbb：理由コード（3けたの数字）

（O）理由コードの内容を参照して，次に示す対策をしたあとで，再びコマンドを実行してください

理由コード | 意味 | 対策
301 | 引数の数が不正です。 | 正しい引数を指定してください。
302 | 識別子が不正です。 | 正しい識別子を指定してください。
303 | パスが不正です。 | 正しいパスを指定してください。
304 | 指定した識別子は登録されていません。 | dcdlsコマンドで識別子を確認して，登録済みの識別子を指定してください。
309 | オプションの指定が不正です。 | 正しい引数を指定してください。
310 | セットアップ済みの識別子です。 | dcdlsコマンドで識別子を確認して，未登録の識別子を指定してください。
311 | セットアップ済みのパスです。 | dcdlsコマンドでパスを確認して，未セットアップのパスを指定してください。
312 | 識別子とパスが登録情報と一致しません。 | dcdlsコマンドでパスを確認して，正しい識別子とパスを指定してください。

KFCA26553-I

使用方法：dcsetupml [-u|-d] マルチOpenTP1セットアップディレクトリ 識別子　　（E）

dcsetupmlコマンドの使い方です。このメッセージは，コマンドのオプションまたは引数の指定が間違っている場合に表示されます。

（S）コマンドの使い方が間違っている場合は，コマンド処理を中止します。

（O）コマンドの使い方が間違っている場合は，文法を確認してから，再びコマンドを実行してください。

KFCA26554-I

使用方法：dcdls [-d OpenTP1ディレクトリ]　　（E）

dcdlsコマンドの使い方です。このメッセージは，コマンドのオプションまたは引数の指定が間違っている場合に表示されます。

（S）コマンドの使い方が間違っている場合は，コマンド処理を中止します。

（O）コマンドの使い方が間違っている場合は，文法を確認してから，再びコマンドを実行してください。

KFCA26555-I

使用方法：dcmakecon [識別子]　　（E）

dcmakeconコマンドの使い方です。このメッセージは，コマンドのオプションまたは引数の指定が間違っている場合に表示されます。

（S）コマンドの使い方が間違っている場合は，コマンド処理を中止します。

（O）コマンドの使い方が間違っている場合は，文法を確認してから，再びコマンドを実行してください。

KFCA26556-E

指定したディレクトリはOpenTP1ディレクトリではありません。　　（E）

コマンド実行中にエラーが起こりました。

（S）コマンド処理を中止します。

（O）指定したフォルダ名がTP1/LiNKのフォルダ名であるか確認してください。

KFCA26560-I

aa....aa開始中です。　　（S）

TP1/LiNKサービスは開始中です。

aa....aa：サービス名

KFCA26561-I

aa....aaが開始しました。　　（S）

TP1/LiNKサービスを開始しました。

aa....aa：サービス名

KFCA26562-E

aa....aa開始中にエラーが発生したため，bb....bbコマンドを中止します。　　（E）

TP1/LiNKサービスの開始中にエラーが発生したため，コマンド処理を中止します。

aa....aa：サービス名

bb....bb：コマンド名

（S）コマンド処理を中止します。

（O）OpenTP1管理者に連絡してください。

［対策］メッセージログファイルやイベントビューアでエラーの原因を確認して，対策を行ってください。

KFCA26563-E

aa....aaコマンドに指定したオプションが不正です。　　（E）

コマンドに存在しないオプションを指定したか，または，コマンド引数の指定を省略できないオプションにコマンド引数を指定していません。

aa....aa：コマンド名

（S）コマンド処理を中止します。

（O）OpenTP1管理者に連絡してください。

［対策］メッセージログファイルやイベントビューアでエラーの原因を確認して，対策を行ってください。

KFCA26565-E

aa....aaコマンドに指定した引数が不正です。　　（E）

コマンドに存在しないコマンド引数を指定したか，または，コマンド引数の数が間違っています。

aa....aa：コマンド名

（S）コマンド処理を中止します。

（O）正しいコマンド引数を指定して，再度コマンドを実行してください。

KFCA26567-E

プロセス固有メモリの確保に失敗したため，aa....aaコマンドを実行できません。　　（E）

プロセス固有メモリの確保に失敗したため，コマンドを実行できません。

aa....aa：コマンド名

（S）コマンド処理を中止します。

（O）OpenTP1管理者に連絡してください。

［対策］プロセスが動作できるメモリを確保してください。

KFCA26570-E

サービス(aa....aa)のアクセス権限が無いため，bb....bbコマンドを実行できません。　　（E）

コマンドを実行したユーザアカウントに，システム管理者（Administrators）の権限がありません。

aa....aa：サービス名

bb....bb：コマンド名

（S）コマンド処理を中止します。

（O）システム管理者（Administrators）の権限を持つユーザアカウントが，再度コマンドを実行してください。

［対策］メッセージログファイルやイベントビューアでエラーの原因を確認して，対策を行ってください。

KFCA26571-E

サービス(aa....aa)との接続に失敗したため，bb....bbコマンドを実行できません。　　（E）

指定されたサービスのハンドルをオープンする処理中にエラーが発生しました。

aa....aa：サービス名

bb....bb：コマンド名

（S）コマンド処理を中止します。

（O）OpenTP1管理者に連絡してください。

［対策］保守員に連絡してください。

KFCA26572-E

サービス(aa....aa)の状態取得に失敗したため，bb....bbコマンドを実行できません。　　（E）

指定されたサービスの状態の取得処理中にエラーが発生しました。

aa....aa：サービス名

bb....bb：コマンド名

（S）コマンド処理を中止します。

（O）OpenTP1管理者に連絡してください。

［対策］保守員に連絡してください。

KFCA26573-E

サービス(aa....aa)が停止中ではないため，bb....bbコマンドを実行できません。状態＝cc....cc　　（E）

TP1/LiNKサービスが停止中ではないため，コマンドを実行できません。

aa....aa：サービス名

bb....bb：コマンド名

cc....cc：サービスの状態

ONLINE：開始中

STAT_PENDING：開始処理中

STOP_PENDING：停止処理中

UNKNOWN：状態を取得できない

（S）コマンド処理を中止します。

（O）サービスが停止状態になったことを確認したあとで，再度コマンドを実行してください。

KFCA26574-E

サービス(aa....aa)が無効に設定されているため，bb....bbコマンドを実行できません。　　（E）

指定したサービスのプロパティで，［スタートアップの種類(E)］が［無効］に設定されているため，コマンド処理を開始できません。

aa....aa：サービス名

bb....bb：コマンド名

（S）コマンド処理を中止します。

（O）OpenTP1管理者に連絡してください。

［対策］次に示す手順でサービスを有効にしてください。

［スタート］－［プログラム］－［管理ツール］－［サービス］をクリックします。

［サービス］に表示されている候補から，開始するサービスを選択します。

右クリックして［プロパティ］を選択します。

［全般］タブの［スタートアップの種類(E)］を［自動］または［手動］に変更します。

KFCA26575-E

レジストリの参照に失敗したため，aa....aaコマンドを実行できません。　　（E）

TP1/LiNKのレジストリキーのオープン処理中，または，データの読み取り処理中にエラーが発生しました。

aa....aa：コマンド名

（S）コマンド処理を中止します。

（O）OpenTP1管理者に連絡してください。

［対策］保守員に連絡してください。

KFCA26578-I

使用方法：ntbstart 〔-n〕〔-U〕　　（E＋S）

ntbstartコマンドの使い方です。このメッセージは，次のような場合に表示されます。

コマンドのオプションに-hオプション（ヘルプメッセージの表示）を指定した場合。

コマンドのオプションまたは引数の指定が間違っている場合。

（S）コマンドの使い方が間違っている場合は，コマンド処理を中止します。

（O）コマンドの使い方が間違っている場合は，文法を確認してから，再びコマンドを実行してください。

KFCA33420-I

サービスaa....aaをユーザbb....bbとして起動します。　　（A）

このメッセージは監査ログに出力されます。

aa....aa：サービス名

bb....bb：サービスログオンアカウント（デフォルトはSYSTEM）

KFCA33421-I

サービスaa....aaが停止しました。　　（A）

このメッセージは監査ログに出力されます。

aa....aa：サービス名

9.3　アボートコードの内容

TP1/LiNKのアボートコード（異常停止要因コード）の内容を次の表に示します。

表9-1　アボートコードの内容

アボートコード
原因
対策

asini33
環境変数DCCONFPATHが示すフォルダに必要な定義ファイルがないか，またはTP1/LiNKで解析できないファイルがあります。
次の対策後，TP1/LiNKを再び開始してください。

環境変数DCCONFPATHが示すディレクトリに次に示すファイルがすべてあることを確認してください。ない場合は，バックアップからコピーするか，再インストールしてください。
BETRANRC，CLTSRV，ENV，ITV，JNL，LCK，LOG，NAM，PRC，PRF，RTS，SCD，STAJNL，STS，SYSCONF，TIM，TRN，USRCONF，USRNET，USRRC，XAR

環境変数DCCONFPATHが示すフォルダの定義ファイルを手動で編集している場合は，設定を見直してください。

環境変数DCCONFPATHが示すフォルダに不要なファイルをコピーしている場合は，削除してください。

jput206
TP1/LiNKの履歴情報の取得中に，ファイルでエラーが起こりました。
メッセージログの理由コードから原因を調査して，対策してください。

jswl202
TP1/LiNKの履歴情報の取得中に，ファイルの切り替え（スワップ）でトラブルが起こりました。
メッセージログの理由コードから原因を調査して，対策してください。

r550002
次に示す原因で，トランザクション処理でエラーが起こりました。

TP1/LiNKの環境設定で，トランザクションを使わない指定をしているのに，ユーザサーバにトランザクション機能を使う指定をしています。

オンラインで同時に起動するトランザクションブランチの数が，TP1/LiNKの環境設定で指定した値を超えています。

ユーザサーバの環境設定で，トランザクション機能を使用しないように指定してください。
オンラインで同時に起動するトランザクションブランチの数を適切な値に変更してください。

Wsig06
メモリが不足しています。
仮想メモリのページファイルサイズを見積もり直して，TP1/LiNKを再び開始してください。

Wsig10
メモリが不足しています。
仮想メモリのページファイルサイズを見積もり直して，TP1/LiNKを再び開始してください。

Wsig21
16ビットアプリケーションなどの不正な実行ファイルをユーザサーバに指定したおそれがあります。
実行ファイルを正しく実行できるかどうかを調査して，対策してください。
ユーザサーバには32ビットアプリケーションを指定してください。

Wshm02
OpenTP1ホームディレクトリ下のディスク容量が不足しています。
OpenTP1ホームディレクトリ下のディスク容量を見積もり直して，TP1/LiNKを再び開始してください。

Wnts01
強制停止要求を受けました。
UAPでのトランザクションブランチ処理時間またはサービス関数処理時間が，限界値を超えた原因を調査して，対策してください。
なお，このアボートコードがdcstop -fdコマンドまたはdcsvstop -fdコマンドの実行時に出力された場合は，問題ありません。
タイミングによって，次のアボートコードとあわせて出力される場合があります。

iexpir1

iexpir2

付録

＜この付録の構成＞

付録A　TP1/LiNKのアプリケーションプログラミングインタフェース

付録B　シナリオテンプレートの詳細

付録C　GUIと定義ファイルの関連

付録D　参照するマニュアルの制限事項

付録E　TP1/LiNKの環境設定とTP1/Server Baseシステムサービス定義との対応

付録F　共用メモリとファイル容量の見積もり式

付録G　バージョンアップ時の変更点

付録H　TP1/LiNK Q&A

付録I　用語解説

付録A　TP1/LiNKのアプリケーションプログラミングインタフェース

TP1/LiNKのアプリケーションプログラミングインタフェースについて説明します。

＜この節の構成＞

(1)　アプリケーションプログラミングインタフェースの機能

(2)　マニュアル「OpenTP1 プログラム作成の手引」を参照するときの注意

(3)　ライブラリ関数の一覧

(4)　アプリケーションプログラム作成時の注意事項

(1)　アプリケーションプログラミングインタフェースの機能

TP1/LiNKのAPIを次に示します。各機能については，マニュアル「OpenTP1 プログラム作成の手引」を参照してください。

(a)　リモートプロシジャコール

アプリケーションのプロセス同士で，C言語の関数呼び出しと同様の方法で通信できます。サービスを要求する側（クライアント）は，サービスを提供する側（サーバ）のネットワーク内の位置を意識する必要はありません。

(b)　リモートAPI機能関連

リモートAPI機能を使うときに，ユーザサーバから常設コネクションを確立したり解放したりできます。

(c)　システム管理関連

アプリケーションからコマンドを実行したり，アプリケーションのプロセスの状態を取得したりできます。

(d)　メッセージログ関連

TP1/LiNKから通知されるシステムメッセージと同様の出力先に，アプリケーションからメッセージログを出力できます。

(e)　トランザクション制御

アプリケーションからトランザクションの開始と終了を宣言して，処理の単位を管理できます。TP1/LiNKのオプション機能です。

トランザクション制御を使うユーザサーバは，TP1/LiNKのトランザクション機能が前提です。トランザクション制御をする場合は，TP1/LiNKとユーザサーバの環境を設定するときに，トランザクション機能を使うことを指定しておきます。

TP1/LiNKのアプリケーションプログラムで使えるトランザクション制御には，次に示す2種類があります。

OpenTP1独自のインタフェース

TXインタフェース（X/Openの仕様に準拠したトランザクション制御）

(2)　マニュアル「OpenTP1 プログラム作成の手引」を参照するときの注意

マニュアル「OpenTP1 プログラム作成の手引」は，分散トランザクション処理機能OpenTP1（TP1/Server Base）のアプリケーションプログラムの機能についても記述してあります。そのため，TP1/LiNKのアプリケーションでは使えない機能の説明もあります。マニュアルの読書手順を参照して，TP1/LiNKで使える機能の記述を参照してください。

(3)　ライブラリ関数の一覧

TP1/LiNKのアプリケーションで使えるライブラリ関数の一覧を次の表に示します。

TP1/Messagingで使えるライブラリ関数についてはマニュアル「TP1/Messaging 使用の手引」を，TP1/Message Queue※で使えるライブラリ関数についてはマニュアル「TP1/Message Queue 使用の手引」を参照してください。

注※

TP1/LiNKのVersion 7に対応するTP1/Message Queueは，現時点では未発行です。発行時期をご確認ください。

表A-1　アプリケーションで使えるライブラリ関数の一覧

TP1/LiNKのライブラリ関数
SUP
SPP
オフラインの業務をするUAP

トランザクションでない
トランザクション処理
（ルート）
トランザクションでない
トランザクション処理

ルート
ルート以外

リモートプロシジャコール関連
（OpenTP1独自のインタフェース）
dc_rpc_open
○
－
○M
－
－
－

dc_rpc_mainloop
－
－
○M
－
－
－

dc_rpc_call
○
○
○
○
○
－

dc_rpc_call_to
○
○
○
○
○
－

dc_rpc_cltsend
－
－
○
○
○
－

dc_rpc_poll_any_replies
○
○
○
○
○
－

dc_rpc_get_error_descriptor
○
○
○
○
○
－

dc_rpc_discard_further_replies
○
○
○
○
○
－

dc_rpc_discard_specific_reply
○
○
○
○
○
－

dc_rpc_service_retry
－
－
○S
－
－
－

dc_rpc_get_service_prio
○
○
○
○
○
－

dc_rpc_set_service_prio
○
○
○
○
○
－

dc_rpc_get_watch_time
○
○
○
○
○
－

dc_rpc_set_watch_time
○
○
○
○
○
－

dc_rpc_get_callers_address
－
－
○
○
○
－

dc_rpc_get_gateway_address
－
－
○
○
○
－

dc_rpc_close
○
－
○M
－
－
－

リモートAPI機能関連
dc_rap_connect
○
－
－
－
－
－

dc_rap_disconnect
○
－
－
－
－
－

システム管理関連
dc_adm_call_command
○
○
○
○
○
－

dc_adm_complete
○
－
－
－
－
－

dc_adm_status
○
○
○
○
○
－

メッセージログ
dc_logprint
○
○
○
○
○
－

監査ログの出力
dc_log_audit_print
○
○
○
○
○
－

リアルタイム統計情報サービス
dc_rts_utrace_put
○
○
○
○
○
－

トランザクション関連
（OpenTP1独自のインタフェース）
dc_trn_begin※
○
－
○
－
－
－

dc_trn_chained_commit※
－
○
－
○
－
－

dc_trn_chained_rollback※
－
○
－
○
－
－

dc_trn_unchained_commit※
－
○
－
○
－
－

dc_trn_unchained_rollback※
－
○
－
○
○
－

dc_trn_info
○
○
○
○
○
－

dc_trn_rm_select※
－
○
－
○
－
－

トランザクション関連
（TXインタフェース）
tx_begin※
○
－
○
－
－
－

tx_close※
○
－
○
－
－
－

tx_commit
TX_CHAINED指定※
－
○
－
○
－
－

tx_commit
TX_UNCHAINED指定※
－
○
－
○
－
－

tx_info
○
○
○
○
○
－

tx_open※
○
－
○
－
－
－

tx_rollback
TX_CHAINED指定※
－
○
－
○
－
－

tx_rollback
TX_UNCHAINED指定※
－
○
－
○
○
－

tx_set_commit_return※
○
○
○
○
○
－

tx_set_transaction_control※
○
○
○
○
○
－

tx_set_transaction_timeout※
○
○
○
○
○
－

（凡例）

○：該当する条件で使えます。

○M：メイン関数だけで使えます。

○S：サービス関数だけで使えます。

－：該当する条件では使えません。

注※

この関数を呼び出すユーザサーバを使えるのは，TP1/LiNKでトランザクション機能を使う設定をしているときだけです。

(4)　アプリケーションプログラム作成時の注意事項

(a)　TP1/LiNKのユーザアプリケーションプログラム（UAP）をシングルスレッド環境で実行

TP1/LiNKのUAPは，メインスレッド以外にスレッドを作成しないで，シングルスレッド環境で実行してください。メインスレッド以外のスレッドを作成して実行すると（マルチスレッド環境），UAPが誤動作して異常終了するおそれがあります。ただし，OpenTP1下のUAPはDLLを使用したマルチスレッド環境で動作するため，UAP作成時に指定するリンケージランタイムライブラリには，msvcrt.libを指定してください。

JNI（Java Native Interface）などのスレッドが生成されるコーディングはしないでください。この場合の動作は保証できません。

(b)　UAPメッセージのイベントビューアへの出力

dc_logprint関数（COBOL言語の場合はCBLDCLOG('PRINT ')）を使用したメッセージは，Windowsのイベントビューアに出力されます。なお，引数（COBOL言語の場合はデータ領域）に値を設定する場合，次の点に注意してください。

出力する文字列に，10行以上設定しないでください。

メッセージ表示色の設定は無視されます。

引数（COBOL言語の場合はデータ領域）に不正な値が設定された場合は，イベントビューアに「メッセージ不正のため，xx....xxは出力できません」（xx....xxはメッセージID）が出力されます。

(c)　Micro Focus Net Expressを使用する場合

COBOL2002を使用している場合，この注意は該当しません。

TP1/LiNKの関数の引数のうち，数値データのデータ型にはCOMPではなく，COMP-5を使用してください。

UAPを実行するときは，OpenTP1コンソールのバッファサイズおよびウィンドウサイズの高さに大きな値を設定しないでください。大きな値を設定すると，コンソールの表示が不正になり，UAPが正常に動作しないおそれがあります。

Micro Focus Net Expressで作成したUAPを動作させた場合，TP1/LiNKコンソールのタイトル文字が変更されます。

Micro Focus Net Expressで作成したUAPで，DISPLAY文によってTP1/LiNKのコンソールにメッセージを出力した場合は，UAPの実行中にシステムをログオフするとUAPが閉塞します。メッセージを出力したい場合は，CBLDCLOG('PRINT ')を使用してください。

(d)　dc_adm_call_command関数，システム運用の管理のCOBOL-UAP作成用プログラム（CBLDCADM）を使用する場合

dc_adm_call_command関数のDCADM_DELAYフラグの設定は無効です。これは，dc_adm_call_command関数の出力情報の取得方式が，UNIXのOpenTP1とWindowsのTP1/LiNKで異なるためです。

コマンドラインの文字列中に'/'，または'$'を含む場合，コマンドラインに対してTP1/LiNKが文字列変換処理を実行します。TP1/LiNKが行う文字列変換処理を無効にしてコマンドラインを実行したい場合は，［SPP環境設定］ダイアログボックスまたは［SUP環境設定］ダイアログボックスで，環境変数「DCADMCONVSEP」に「1」を設定してください。

コマンドライン文字列の末尾に'&'を記述したときの，指定したコマンドの非同期実行はサポートしていません。

dc_adm_call_command()の第一引数comに指定できる文字列の長さは500バイト以下です。501バイト以上指定するとdc_adm_call_command()はDCADMER_PARAMをリターンします。

CBLDCADM('COMMAND ')のデータ名Gに指定できる文字列の長さは500バイト以下です。501バイト以上指定するとCBLDCADM('COMMAND ')はステータスコードに01802を設定します。

(e)　プロセス，スレッドを停止させる関数またはメソッドの呼び出し

TP1/LiNKのUAPでは，サービス関数（SPP）およびサービスメソッド（SPP.NET）内で，プロセスおよびスレッドを停止させる関数またはメソッドを呼び出さないでください。呼び出した場合，次に示す現象が発生することがあります。

サービス関数（SPP）およびサービスメソッド（SPP.NET）の予期しない動作

サービスグループに対するサービス要求の失敗

［TP1/LiNKアプリケーション管理SPP］ウィンドウでUAPを停止できない

TP1/LiNKを正常終了できない

(f)　Visual Studioで作成したデバッグバージョンのオブジェクトファイル

Visual Studioで作成したデバッグバージョンのオブジェクトファイルは，Visual Studioがインストールされていない環境では動作させることができないおそれがあります。Visual Studioがインストールされていない環境でデバッグする場合，リンケージされたdllファイルおよびマニフェストファイルの内容を確認して，適切なマニフェストファイルを作成してください。マニフェストファイルの詳細については，Visual Studioのマニュアルのマニフェストについての記述を参照してください。

(g)　Visual StudioとCOBOLの環境が共存する場合

Visual StudioとCOBOLが共存する環境で，各言語のコンパイルを実行する場合は，各言語の環境変数が，ほかの言語より前に設定されていることを確認してください。ほかの言語の環境変数が各言語の環境変数より前に設定されていると，意図しないリンケージが実行されるおそれがあります。

(h)　Visual StudioとHitachi COBOL2002を併用する場合

COBOL2002は，Visual Studio .NET 2002によって作成しています。このため，Visual Studio 2005で作成したオブジェクトを，ccbl2002コマンドやCOBOL2002に含まれるリンカ(LINK.EXE)でリンクすると，エラーが発生します。次に示す手順に従って環境設定をしたあとでリンケージしてください。

環境変数PATHおよびLIBに，COBOLのパスがVisual Studioのパスより前になるように設定してください。

SPP用のスタブをコンパイルする場合，/Zlオプションを指定してください。

SPP用のスタブ以外のCプログラムは，DLLとして作成してください。

COBOL2002 02-00以降は，このエラーは発生しません。COBOL2002 02-00以降とVisual Studio併用時の注意事項については，COBOL2002のリリースノートの注意事項をご確認ください。

(i)　WinSockのライブラリを使用する場合

WinSockのライブラリを使用する場合，TP1の通信処理ができなくなるため，次に示す関数を発行しないでください。

WSAStartup()

WSACleanup()

付録B　シナリオテンプレートの詳細

TP1/LiNKが提供しているシナリオテンプレートの詳細を説明します。

異常時の対処

シナリオ実行時に異常が発生すると，エラーメッセージが出力されることがあります。エラーメッセージに従って対処してください。エラーメッセージの詳細については，マニュアル「OpenTP1 メッセージ」を参照してください。

＜この節の構成＞

付録B.1　OpenTP1_AddNode

付録B.2　OpenTP1_ChangeNodeID

付録B.3　OpenTP1_Deploy

付録B.4　OpenTP1_ScenarioAddNode

付録B.5　OpenTP1_Start

付録B.6　OpenTP1_StartUAP

付録B.7　OpenTP1_Stop

付録B.8　OpenTP1_StopUAP

付録B.9　OpenTP1_Undeploy

付録B.10　OpenTP1_UpdateDomain

付録B.11　OpenTP1_ScenarioScaleout

付録B.1　OpenTP1_AddNode

名称

OpenTP1_AddNode

概要

TP1/LiNKのノードのドメイン定義ファイルへの追加

機能

ドメイン構成管理ノードのドメイン定義ファイルに，新しく追加するTP1/LiNKのノードのホスト名およびノード番号を追加します。

新しく追加したTP1/LiNKのノードのホスト名およびポート番号を，自ホストのドメイン定義ファイルに追加する場合に，このシナリオテンプレートをシナリオの配下に複写して，シナリオの一部として利用します。

このシナリオテンプレートを実行したあとにOpenTP1_UpdateDomainシナリオテンプレートを実行すると，ドメイン構成が更新されます。

このシナリオテンプレートを実行する場合の前提条件は，［RPC詳細設定］ダイアログボックスの［ネームサービス］タブで［ドメイン定義ファイルを使用する(F)］チェックボックスをオンにしていることです。

入力シナリオ変数

●DCDIR　　～〈1～50文字の文字列〉

TP1/LiNKフォルダ名を指定します。

●DCCONFPATH

TP1/LiNKの定義ファイル格納フォルダを指定します。

●HOST_NAME

シナリオジョブを実行するTP1/LiNKのノードのホスト名を指定します。

この入力シナリオ変数は省略できます。省略した場合，シナリオの実行先ホストでシナリオジョブを実行します。

●USER_NAME

シナリオジョブを実行するOpenTP1管理者のユーザ名を指定します。

この入力シナリオ変数は省略できます。省略した場合，JP1/Baseで定義したユーザマッピングのプライマリユーザがシナリオジョブを実行します。

●ADD_HOST_NAME　　～〈1～64文字の文字列〉

TP1/LiNKシステムに新しく追加するTP1/LiNKのノードのホスト名を指定します。

●PORT_NUMBER　　～((5001～65535))

新しく追加するTP1/LiNKのノードのネームサーバが使用するポート番号を指定します。

出力シナリオ変数

なし。

実行ユーザ

入力シナリオ変数USER_NAMEで指定したOpenTP1管理者です。

付録B.2　OpenTP1_ChangeNodeID

名称

OpenTP1_ChangeNodeID

概要

TP1/LiNKのノード識別子の設定

機能

新しく追加するTP1/LiNKのノード識別子を設定します。

このシナリオテンプレートを実行すると，システム環境設定の定義ファイル（%DCDIR%¥conf¥betranrc）のnode_idに指定したノード識別子を設定します。このシナリオテンプレートを実行する前に，システム環境設定の定義ファイルの設定内容を次のように変更してください。

set node_id = @DCNODE_ID@

スケールアウトやTP1/LiNKの環境設定でノード識別子を変更する場合に，このシナリオテンプレートをシナリオの配下に複写して，シナリオの一部として利用します。

入力シナリオ変数

●DCDIR　　～〈1～50文字の文字列〉

TP1/LiNKフォルダ名を指定します。

●DCCONFPATH

TP1/LiNKの定義ファイル格納フォルダを指定します。

●HOST_NAME

シナリオジョブを実行するTP1/LiNKのノードのホスト名を指定します。

この入力シナリオ変数は省略できます。省略した場合，シナリオの実行先ホストでシナリオジョブを実行します。

●USER_NAME

シナリオジョブを実行するOpenTP1管理者のユーザ名を指定します。

この入力シナリオ変数は省略できます。省略した場合，JP1/Baseで定義したユーザマッピングのプライマリユーザがシナリオジョブを実行します。

●NODE_ID　　～〈4文字の文字列〉

設定するTP1/LiNKのノード識別子を指定します。

TP1/LiNKシステムで一意になるように指定してください。

出力シナリオ変数

なし。

実行ユーザ

入力シナリオ変数USER_NAMEで指定したOpenTP1管理者です。

付録B.3　OpenTP1_Deploy

名称

OpenTP1_Deploy

概要

TP1/LiNKの登録

機能

マルチOpenTP1を登録するときに，指定したTP1/LiNKフォルダ下のTP1/LiNKを，OSに登録します。ただし，オリジナルの場合は処理をしません。

なお，マルチOpenTP1の登録後，TP1/LiNKのショートカットのメニューは登録されません。メニューを登録したい場合は，「2.1.2(5)(a)　TP1/LiNKのショートカット」を参照して登録してください。

スケールアウト，ローリングアップデートなどでTP1/LiNKをOSに登録する場合に利用します。このシナリオテンプレートは，シナリオの配下にコピーすると，シナリオの一部としても利用できます。

入力シナリオ変数

●DCDIR　　～〈1～50文字の文字列〉

登録するTP1/LiNKフォルダ名を指定します。

TP1/LiNKシステムで一意になるように指定してください。

●HOST_NAME

シナリオジョブを実行するTP1/LiNKのノードのホスト名を指定します。

この入力シナリオ変数は省略できます。省略した場合，シナリオの実行先ホストでシナリオジョブを実行します。

●USER_NAME

シナリオジョブを実行するOpenTP1管理者のユーザ名を指定します。

この入力シナリオ変数は省略できます。省略した場合，JP1/Baseで定義したユーザマッピングのプライマリユーザがシナリオジョブを実行します。

●MULTI_ID　　～〈1～2文字の文字列〉

マルチOpenTP1の識別子を指定します。オリジナルの場合には，省略できます。

出力シナリオ変数

なし。

実行ユーザ

入力シナリオ変数USER_NAMEで指定したOpenTP1管理者です。

付録B.4　OpenTP1_ScenarioAddNode

名称

OpenTP1_ScenarioAddNode

概要

ドメインの新規追加

機能

TP1/LiNKシステムのドメイン構成管理ノードのドメイン定義ファイルに，新しくTP1/LiNKのノードを追加します。

新しく追加したTP1/LiNKのノードを，ドメイン構成管理ノードに追加する場合に利用します。これによって，クライアントは新しく追加したTP1/LiNKのノードのサービスを利用できます。

このシナリオテンプレートは，次に示すシナリオテンプレートで構成されています。

OpenTP1_AddNode

OpenTP1_UpdateDomain

このシナリオテンプレートを実行する場合の前提条件を次に示します。

［RPC詳細設定］ダイアログボックスの［ネームサービス］タブで［ドメイン定義ファイルを使用する(F)］チェックボックスをオンにしている

ドメイン構成管理ノードがオンラインである

入力シナリオ変数

●DCDIR　　～〈1～50文字の文字列〉

TP1/LiNKフォルダ名を指定します。

●DCCONFPATH

TP1/LiNKの定義ファイル格納フォルダを指定します。

●HOST_NAME

シナリオジョブを実行するTP1/LiNKのノードのホスト名を指定します。

この入力シナリオ変数は省略できます。省略した場合，シナリオの実行先ホストでシナリオジョブを実行します。

●USER_NAME

シナリオジョブを実行するOpenTP1管理者のユーザ名を指定します。

この入力シナリオ変数は省略できます。省略した場合，JP1/Baseで定義したユーザマッピングのプライマリユーザがシナリオジョブを実行します。

●ADD_HOST_NAME　　～〈1～64文字の文字列〉

TP1/LiNKシステムに新しく追加するTP1/LiNKのホスト名を指定します。

●PORT_NUMBER　　～((5001～65535))

TP1/LiNKシステムに新しく追加するTP1/LiNKのノードのネームサーバが使用するポート番号を指定します。

出力シナリオ変数

なし。

実行ユーザ

入力シナリオ変数USER_NAMEで指定したOpenTP1管理者です。

付録B.5　OpenTP1_Start

名称

OpenTP1_Start

概要

TP1/LiNKの起動

機能

新しく追加したTP1/LiNKを起動します。前回の終了モードが正常終了の場合は正常開始，異常終了の場合は再開始します。

スケールアウト，ローリングアップデートなどでTP1/LiNKを起動する場合に利用します。このシナリオテンプレートは，シナリオの配下に複写すると，シナリオの一部としても利用できます。

入力シナリオ変数

●DCDIR　　～〈1～50文字の文字列〉

TP1/LiNKフォルダ名を指定します。

●DCCONFPATH

TP1/LiNKの定義ファイル格納フォルダを指定します。

●HOST_NAME

シナリオジョブを実行するTP1/LiNKのノードのホスト名を指定します。

この入力シナリオ変数は省略できます。省略した場合，シナリオの実行先ホストでシナリオジョブを実行します。

●USER_NAME

シナリオジョブを実行するOpenTP1管理者のユーザ名を指定します。

この入力シナリオ変数は省略できます。省略した場合，JP1/Baseで定義したユーザマッピングのプライマリユーザがシナリオジョブを実行します。

出力シナリオ変数

なし。

実行ユーザ

入力シナリオ変数USER_NAMEで指定したOpenTP1管理者です。

付録B.6　OpenTP1_StartUAP

名称

OpenTP1_StartUAP

概要

UAPの起動

機能

ユーザサーバを起動します。

スケールアウトなどでユーザサーバを起動する場合に利用します。このシナリオテンプレートは，シナリオの配下に複写すると，シナリオの一部としても利用できます。

入力シナリオ変数

●DCDIR　　～〈1～50文字の文字列〉

TP1/LiNKフォルダ名を指定します。

●DCCONFPATH

TP1/LiNKの定義ファイル格納フォルダを指定します。

●HOST_NAME

シナリオジョブを実行するTP1/LiNKのノードのホスト名を指定します。

この入力シナリオ変数は省略できます。省略した場合，シナリオの実行先ホストでシナリオジョブを実行します。

●USER_NAME

シナリオジョブを実行するOpenTP1管理者のユーザ名を指定します。

この入力シナリオ変数は省略できます。省略した場合，JP1/Baseで定義したユーザマッピングのプライマリユーザがシナリオジョブを実行します。

●USER_SERVER_NAME　　～〈1～8文字の文字列〉

起動するユーザサーバ名を指定します。

出力シナリオ変数

なし。

実行ユーザ

入力シナリオ変数USER_NAMEで指定したOpenTP1管理者です。

付録B.7　OpenTP1_Stop

名称

OpenTP1_Stop

概要

TP1/LiNKの停止

機能

TP1/LiNKを停止して，TP1/LiNKのノードの空いているリソースを解放します。

スケールイン，ローリングアップデートなどでTP1/LiNKを停止する場合に利用します。このシナリオテンプレートは，シナリオの配下に複写すると，シナリオの一部としても利用できます。

入力シナリオ変数

●DCDIR　　～〈1～50文字の文字列〉

TP1/LiNKフォルダ名を指定します。

●DCCONFPATH

TP1/LiNKの定義ファイル格納フォルダを指定します。

●HOST_NAME

シナリオジョブを実行するTP1/LiNKのノードのホスト名を指定します。

この入力シナリオ変数は省略できます。省略した場合，シナリオの実行先ホストでシナリオジョブを実行します。

●USER_NAME

シナリオジョブを実行するOpenTP1管理者のユーザ名を指定します。

この入力シナリオ変数は省略できます。省略した場合，JP1/Baseで定義したユーザマッピングのプライマリユーザがシナリオジョブを実行します。

出力シナリオ変数

なし。

実行ユーザ

入力シナリオ変数USER_NAMEで指定したOpenTP1管理者です。

付録B.8　OpenTP1_StopUAP

名称

OpenTP1_StopUAP

概要

UAPの停止

機能

ユーザサーバを停止します。

スケールインなどでユーザサーバを停止する場合に利用します。このシナリオテンプレートは，シナリオの配下に複写すると，シナリオの一部としても利用できます。

入力シナリオ変数

●DCDIR　　～〈1～50文字の文字列〉

TP1/LiNKフォルダ名を指定します。

●DCCONFPATH

TP1/LiNKの定義ファイル格納フォルダを指定します。

●HOST_NAME

シナリオジョブを実行するTP1/LiNKのノードのホスト名を指定します。

この入力シナリオ変数は省略できます。省略した場合，シナリオの実行先ホストでシナリオジョブを実行します。

●USER_NAME

シナリオジョブを実行するOpenTP1管理者のユーザ名を指定します。

この入力シナリオ変数は省略できます。省略した場合，JP1/Baseで定義したユーザマッピングのプライマリユーザがシナリオジョブを実行します。

●USER_SERVER_NAME　　～〈1～8文字の文字列〉

停止するユーザサーバ名を指定します。

出力シナリオ変数

なし。

実行ユーザ

入力シナリオ変数USER_NAMEで指定したOpenTP1管理者です。

付録B.9　OpenTP1_Undeploy

名称

OpenTP1_Undeploy

概要

TP1/LiNKの削除

機能

マルチOpenTP1を削除したときに指定したTP1/LiNKフォルダ下のTP1/LiNKを，OSから削除します。ただし，オリジナルの場合は処理をしません。

ローリングアップデートでTP1/LiNKをOSから削除する場合に利用します。このシナリオテンプレートは，シナリオの配下にコピーすると，シナリオの一部としても利用できます。

入力シナリオ変数

●DCDIR　　～〈1～50文字の文字列〉

削除するTP1/LiNKフォルダ名を指定します。

●HOST_NAME

シナリオジョブを実行するTP1/LiNKのノードのホスト名を指定します。

この入力シナリオ変数は省略できます。省略した場合，シナリオの実行先ホストでシナリオジョブを実行します。

●USER_NAME

シナリオジョブを実行するOpenTP1管理者のユーザ名を指定します。

この入力シナリオ変数は省略できます。省略した場合，JP1/Baseで定義したユーザマッピングのプライマリユーザがシナリオジョブを実行します。

出力シナリオ変数

なし。

実行ユーザ

入力シナリオ変数USER_NAMEで指定したOpenTP1管理者です。

付録B.10　OpenTP1_UpdateDomain

名称

OpenTP1_UpdateDomain

概要

ドメイン構成の更新

機能

TP1/LiNKシステムのドメイン構成を，TP1/LiNKの動作中に更新します。

OpenTP1_AddNodeシナリオテンプレートなどでドメイン定義ファイルに追加した新しいノードをシステムに追加する場合に，このシナリオテンプレートをシナリオの配下に複写して，シナリオの一部として利用します。

このシナリオテンプレートを実行する場合の前提条件を次に示します。

［RPC詳細設定］ダイアログボックスの［ネームサービス］タブで［ドメイン定義ファイルを使用する(F)］チェックボックスをオンにしている

TP1/LiNKがオンラインである

入力シナリオ変数

●DCDIR　　～〈1～50文字の文字列〉

TP1/LiNKフォルダ名を指定します。

●DCCONFPATH

TP1/LiNKの定義ファイル格納フォルダを指定します。

●HOST_NAME

シナリオジョブを実行するTP1/LiNKのノードのホスト名を指定します。

この入力シナリオ変数は省略できます。省略した場合，シナリオの実行先ホストでシナリオジョブを実行します。

●USER_NAME

シナリオジョブを実行するOpenTP1管理者のユーザ名を指定します。

この入力シナリオ変数は省略できます。省略した場合，JP1/Baseで定義したユーザマッピングのプライマリユーザがシナリオジョブを実行します。

出力シナリオ変数

なし。

実行ユーザ

入力シナリオ変数USER_NAMEで指定したOpenTP1管理者です。

付録B.11　OpenTP1_ScenarioScaleout

名称

OpenTP1_ScenarioScaleout

概要

スケールアウトのサンプルシナリオテンプレート

機能

TP1/LiNKをインストールしたあとに実行すると，TP1/LiNKの環境設定をして，TP1/LiNKおよびサンプルSPPを起動します。

入力シナリオ変数

●DCDIR　　～〈1～50文字の文字列〉

登録するTP1/LiNKフォルダ名を指定します。

TP1/LiNKシステムで一意になるように指定してください。

●DCCONFPATH

TP1/LiNKの定義ファイル格納フォルダを指定します。

●HOST_NAME

シナリオジョブを実行するTP1/LiNKのノードのホスト名を指定します。

この入力シナリオ変数は省略できます。省略した場合，シナリオの実行先ホストでシナリオジョブを実行します。

●USER_NAME

シナリオジョブを実行するOpenTP1管理者のユーザ名を指定します。

この入力シナリオ変数は省略できます。省略した場合，JP1/Baseで定義したユーザマッピングのプライマリユーザがシナリオジョブを実行します。

●USER_SERVER_NAME　　～〈1～8文字の文字列〉

起動するユーザサーバ名を指定します。

サンプルシナリオテンプレートを使用する場合は，SPPを指定してください。

●NODE_ID　　～〈4文字の文字列〉

設定するTP1/LiNKのノード識別子を指定します。

TP1/LiNKシステムで一意になるように指定してください。

●PORT_NUMBER　　～((5001～65535))

TP1/LiNKシステムに新しく追加するTP1/LiNKのノードのネームサーバが使用するポート番号を指定します。

●MULTI_ID　　～〈1～2文字の文字列〉

マルチOpenTP1の識別子を指定します。オリジナルの場合には省略できます。

出力シナリオ変数

なし。

実行ユーザ

入力シナリオ変数USER_NAMEで指定したOpenTP1管理者です。

付録C　GUIと定義ファイルの関連

TP1/LiNKのGUIと定義ファイルの関連を表C-1～表C-5に示します。

表C-1～表C-3および表C-5に示すTP1/LiNK環境設定GUIの項目は，%DCDIR%¥confフォルダ下の定義ファイルに反映されます。表C-4に示すRAPサービス環境設定は，%DCDIR%¥conf¥GUIRAPフォルダ下のrapリスナーサービス定義ファイルに反映されます。

定義ファイルの設定内容を手動で変更する場合は，それぞれの表中にある設定内容列のフォーマットに従って変更してください。フォーマットに従っていない場合は，GUIの起動または表示に失敗することがあります。

表C-1　GUIと定義ファイルの関連（システム環境設定）

GUI名
設定項目
定義ファイル名
設定内容

［システム環境設定］
ネームサービスのポート番号
betranrc
set name_port = ポート番号

ノード識別子
betranrc
set node_id = 識別子

ユーザ認証機能
betranrc

オンの場合

set client_uid_check = Y

オフの場合

set client_uid_check = N

RPCオプション
トレース取得
betranrc

オンの場合

set rpc_trace = Y

オフの場合

set rpc_trace = N

RPCオプション
データ圧縮
betranrc

オンの場合

set rpc_datacomp = Y

オフの場合

set rpc_datacomp = N

サーバ数

SUP

SPP

閉塞状態を引き継ぐサーバ，サービス数

env
set server_count = サーバ数

注

サーバ数：SUP数＋SPP数＋54

prc
set prc_process_count = サーバ数

注

サーバ数：SUP数＋SPP数＋54

scd
set scd_server_count = SPP数
set scd_hold_recovery_count = 閉塞状態を引き継ぐサーバ，サービス数

tim
set tim_watch_count = サーバ数

注

サーバ数：トランザクションブランチ数＋SPP数

稼働統計情報の取得

あり

なし

betranrc

ありの場合

set rpc_delay_statistics = Y

なしの場合

set rpc_delay_statistics = N

sysconf

ありの場合

set jnl_conf = Y

なしの場合

set jnl_conf = N

usrrc

ありの場合

set rpc_response_statistics = Y

なしの場合

set rpc_response_statistics = N

稼働統計情報の取得

統計ファイルサイズ

stajnl
set jnl_file_size = （統計ファイルサイズ×1000）÷3

トランザクション機能

あり

なし

sysconf

ありの場合

set trn_conf = Y

なしの場合

set trn_conf = N

トランザクション機能

APの状態引き継ぎ

sysconf

オンの場合

set sts_conf = Y

オフの場合

set sts_conf = N

トランザクションブランチ数
trn
set trn_tran_process_count = トランザクションブランチ数

スケジュールサービスのポート番号
scd
set scd_port = ポート番号

システムを構成するノード
betranrc
set all_node = "ノード名1",¥
"ノード名2",¥
…
"ノード名n"

サーチパス
prc
prcsvpath パス名1;¥
パス名2;¥
…
パス名n

［クライアントサービス環境設定］
CUPからトランザクションを実行する
sysconf

オンの場合

set clt_conf = Y

オフの場合

set clt_conf = N

cltsrv

オンの場合

set clt_trn_conf = Y

オフの場合

set clt_trn_conf = N

実行プロセス数

常駐

非常駐

cltsrv
set parallel_count = 常駐数,常駐数+非常駐数

実行プロセス数

サービス滞留数

cltsrv
set balance_count = サービス滞留数

CUPから常設コネクションを確立する
sysconf

オンの場合

set clt_conf = Y

オフの場合

set clt_conf = N

cltsrv

オンの場合

set clt_cup_conf = Y

オフの場合

set clt_cup_conf = N

確立プロセス数

常駐

非常駐

cltsrv
set cup_parallel_count = 常駐数,常駐数+非常駐数

確立プロセス数

サービス滞留数

cltsrv
set cup_balance_count = サービス滞留数

［RPC詳細設定］
最大応答待ち時間

対象：システム共通

betranrc
set watch_time = 最大応答待ち時間

最大応答待ち時間

対象：ネームサービス

nam
set watch_time = 最大応答待ち時間

最大応答待ち時間

対象：トランザクションサービス

trn
set watch_time = 最大応答待ち時間

コネクション確立監視時間
betranrc
set ipc_conn_interval = 監視時間

RPCをリトライする
betranrc

オンの場合

set rpc_retry = Y

オフの場合

なし

サービス要求送信リトライ回数最大値
betranrc
set rpc_retry_count = リトライ回数最大値

サービス要求送信リトライ間隔時間
betranrc
set rpc_retry_interval = リトライ間隔時間

サービス情報領域の大きさ
nam
set name_total_size = サービス情報領域の大きさ

サービス情報キャッシュ領域の大きさ
nam
set name_cache_size = サービス情報キャッシュ領域の大きさ

システムを構成するノードに起動通知を行う
betranrc

オンの場合

set name_notify = Y

オフの場合

なし

グローバル検索機能を使用する
nam

オンの場合

set name_global_lookup = Y

オフの場合

なし

ドメイン定義ファイルを使用する
betranrc

オンの場合

set name_domain_file_use = Y

オフの場合

なし

all_nodeのドメイン定義ファイルに指定する最大ノード数
betranrc
set all_node_extend_number = 最大ノード数

all_node_exのドメイン定義ファイルに指定する最大ノード数
betranrc
set all_node_ex_extend_number = 最大ノード数

ノード監視機能
nam

使用しないの場合

なし

一方送信型ノード監視の場合

set name_audit_conf = 1

送受信型ノード監視の場合

set name_audit_conf = 2

ノード監視間隔時間
nam
set name_audit_interval = 監視間隔時間

ノードダウンを検知するまでの最大待ち時間
nam
set name_audit_watch_time = 待ち時間

他ノードのサービス情報の有効時間
nam
set name_cache_validity_time = 有効時間

ソケット用ファイル記述子の最大数

対象：システム共通

betranrc
set max_socket_descriptors = ソケット用ファイル記述子の最大数

ソケット用ファイル記述子の最大数

対象：ネームサービス

nam
set max_socket_descriptors = ソケット用ファイル記述子の最大数

ソケット用ファイル記述子の最大数

対象：スケジュールサービス

scd
set max_socket_descriptors = ソケット用ファイル記述子の最大数

ソケット用ファイル記述子の最大数

対象：トランザクションサービス

trn
set max_socket_descriptors = ソケット用ファイル記述子の最大数

ソケットの一時クローズ開始数／ソケットの一時クローズ非対象数

対象：システム共通

betranrc
set ipc_sockctl_highwater = 開始数,非対象数

ソケットの一時クローズ開始数／ソケットの一時クローズ非対象数

対象：ネームサービス

nam
set ipc_sockctl_highwater = 開始数,非対象数

ソケットの一時クローズ開始数／ソケットの一時クローズ非対象数

対象：スケジュールサービス

scd
set ipc_sockctl_highwater = 開始数,非対象数

ソケットの一時クローズ開始数／ソケットの一時クローズ非対象数

対象：トランザクションサービス

trn
set ipc_sockctl_highwater = 開始数,非対象数

一時クローズ要求の応答監視時間

対象：システム共通

betranrc
set ipc_sockctl_watchtime = 応答監視時間

一時クローズ要求の応答監視時間

対象：ネームサービス

nam
set ipc_sockctl_watchtime = 応答監視時間

一時クローズ要求の応答監視時間

対象：スケジュールサービス

scd
set ipc_sockctl_watchtime = 応答監視時間

一時クローズ要求の応答監視時間

対象：トランザクションサービス

trn
set ipc_sockctl_watchtime = 応答監視時間

一時クローズ処理要求が到着していないかどうかを検査する
trn

オンの場合

set polling_control_data = Y

オフの場合

なし

ソケットの再利用指示を受信できる契機を与えるインタバル時間
trn
set thread_yield_interval = インタバル時間

TCP/IPの受信バッファサイズ
betranrc
set ipc_recvbuf_size = 受信バッファサイズ

TCP/IPの送信バッファサイズ
betranrc
set ipc_sendbuf_size = 送信バッファサイズ

最小ポート番号
betranrc
set rpc_port_base = 最小ポート番号

RPCトレースを取得するファイルの容量
betranrc
set rpc_trace_size = ファイルの容量

RPC送受信電文の最大長
betranrc
set rpc_max_message_size = 最大長

［ユーザサービス環境設定］
－
usrnet

送信先がスケジュールサービスの場合でリモートAPI機能を使わないとき

dcsvgdef ¥

-g サービスグループ名 ¥

-h ホスト名1,¥ホスト名2,¥

…

ホスト名n ¥

-p ポート番号

送信先がスケジュールサービスの場合でリモートAPI機能を使うとき

dcsvgdef ¥

-g サービスグループ名 ¥

-h ホスト名 ¥

-p ポート番号 ¥

-w

［リアルタイム統計情報サービス設定］
統計情報取得間隔
rts
set rts_trcput_interval = 取得間隔

最大取得サービス数
rts
set rts_service_max = サービス数

最大取得項目数
rts
set rts_item_max = 項目数

RTSログファイルに出力しない
rts

オンの場合

set rts_log_file = N

オフの場合

なし

RTSログファイル名
rts
set rts_log_file_name = ファイル名

RTSログファイルのサイズ
rts
set rts_log_file_size = ファイルサイズ

［リアルタイム統計情報取得対象定義］
［リアルタイム取得項目詳細］
－
rts

対象種別がシステムの場合

rtsput -u sys ¥

-f 定義ファイル名 ¥

-e 項目ID,¥

項目ID,¥

…

項目ID

対象種別がサーバの場合

rtsput -u srv ¥

-s サーバ名 ¥

-f 定義ファイル名 ¥

-e 項目ID,¥

項目ID,¥

…

項目ID

対象種別がサービスの場合

rtsput -u svc ¥

-s サーバ名 ¥

-v サービス名 ¥

-f 定義ファイル名 ¥

-e 項目ID,¥

項目ID,¥

…

項目ID

対象種別が任意の場合

rtsput -u obj ¥

-o 対象名1 ¥

-b 対象名2 ¥

-f 定義ファイル名 ¥

-e 項目ID,¥

項目ID,¥

…

項目ID

［リアルタイム取得項目定義］
［リアルタイム取得項目詳細］
イベント項目

ネーム情報：グローバルキャッシュヒット

リアルタイム取得項目定義ファイル名

オンの場合

set rts_nam_global_cache_hit = Y

オフの場合

なし

イベント項目

ネーム情報：ローカルキャッシュヒット

リアルタイム取得項目定義ファイル名

オンの場合

set rts_nam_local_cache_hit = Y

オフの場合

なし

イベント項目

ネーム情報：サービス情報の検索回数

リアルタイム取得項目定義ファイル名

オンの場合

set rts_nam_lookup = Y

オフの場合

なし

イベント項目

ネーム情報：指定参照先ノードへのサービス検索の送信回数

リアルタイム取得項目定義ファイル名

オンの場合

set nam_node_lookup = Y

オフの場合

なし

イベント項目

ネーム情報：指定参照先ノードからのサービス検索の応答受信回数

リアルタイム取得項目定義ファイル名

オンの場合

set rts_nam_node_lookup_responce = Y

オフの場合

なし

イベント項目

共用メモリ管理情報：静的共用メモリの使用サイズ

リアルタイム取得項目定義ファイル名

オンの場合

set rts_osl_stamem_acq = Y

オフの場合

なし

イベント項目

共用メモリ管理情報：静的共用メモリプールの必要最大サイズ

リアルタイム取得項目定義ファイル名

オンの場合

set rts_osl_stamem_pol = Y

オフの場合

なし

イベント項目

共用メモリ管理情報：動的共用メモリの使用サイズ

リアルタイム取得項目定義ファイル名

オンの場合

set rts_osl_dynmem_acq = Y

オフの場合

なし

イベント項目

共用メモリ管理情報：動的共用メモリプールの必要最大サイズ

リアルタイム取得項目定義ファイル名

オンの場合

set rts_osl_dynmem_pol = Y

オフの場合

なし

イベント項目

プロセス情報：プロセス生成

リアルタイム取得項目定義ファイル名

オンの場合

set rts_prc_prc_genert = Y

オフの場合

なし

イベント項目

プロセス情報：UAP異常終了

リアルタイム取得項目定義ファイル名

オンの場合

set rts_prc_uap_abnml = Y

オフの場合

なし

イベント項目

プロセス情報：システムサーバ異常終了

リアルタイム取得項目定義ファイル名

オンの場合

set rts_prc_sys_abnml = Y

オフの場合

なし

イベント項目

プロセス情報：プロセス終了

リアルタイム取得項目定義ファイル名

オンの場合

set rts_prc_prc_term = Y

オフの場合

なし

イベント項目

プロセス情報：起動プロセス数

リアルタイム取得項目定義ファイル名

オンの場合

set rts_prc_prc_num = Y

オフの場合

なし

イベント項目

RPC情報：RPCコール（同期応答型）

リアルタイム取得項目定義ファイル名

オンの場合

set rts_rpc_rpc_call = Y

オフの場合

なし

イベント項目

RPC情報：RPCコール（連鎖RPC型）

リアルタイム取得項目定義ファイル名

オンの場合

set rts_rpc_rpc_call_chained = Y

オフの場合

なし

イベント項目

RPC情報：ユーザサービス実行

リアルタイム取得項目定義ファイル名

オンの場合

set rts_rpc_usr_srvc = Y

オフの場合

なし

イベント項目

RPC情報：RPCタイムアウト

リアルタイム取得項目定義ファイル名

オンの場合

set rts_rpc_rpc_ovrtim = Y

オフの場合

なし

イベント項目

スケジュール情報：スケジュール待ち

リアルタイム取得項目定義ファイル名

オンの場合

set rts_scd_scd_wait = Y

オフの場合

なし

イベント項目

スケジュール情報：スケジュール

リアルタイム取得項目定義ファイル名

オンの場合

set rts_scd_schedule = Y

オフの場合

なし

イベント項目

スケジュール情報：メッセージ格納バッファプールの使用中サイズ

リアルタイム取得項目定義ファイル名

オンの場合

set rts_scd_using_buf = Y

オフの場合

なし

イベント項目

スケジュール情報：メッセージ格納バッファプールの不足でスケジュールできなかったメッセージサイズ

リアルタイム取得項目定義ファイル名

オンの場合

set rts_scd_lack_buf = Y

オフの場合

なし

イベント項目

スケジュール情報：スケジュール滞留

リアルタイム取得項目定義ファイル名

オンの場合

set rts_scd_scd_stay = Y

オフの場合

なし

イベント項目

スケジュール情報：サービス単位のスケジュール待ち

リアルタイム取得項目定義ファイル名

オンの場合

set rts_scd_svc_scd_wait = Y

オフの場合

なし

イベント項目

スケジュール情報：サービス単位のメッセージ格納バッファプールの使用中サイズ

リアルタイム取得項目定義ファイル名

オンの場合

set rts_scd_svc_using_buf = Y

オフの場合

なし

イベント項目

スケジュール情報：同時実行サービス数

リアルタイム取得項目定義ファイル名

オンの場合

set rts_scd_parallel = Y

オフの場合

なし

イベント項目

トランザクション情報：コミット

リアルタイム取得項目定義ファイル名

オンの場合

set rts_trn_commit = Y

オフの場合

なし

イベント項目

トランザクション情報：ロールバック

リアルタイム取得項目定義ファイル名

オンの場合

set rts_trn_rollback = Y

オフの場合

なし

イベント項目

トランザクション情報：コマンドによるコミット

リアルタイム取得項目定義ファイル名

オンの場合

set rts_trn_cmt_cmd = Y

オフの場合

なし

イベント項目

トランザクション情報：コマンドによるロールバック

リアルタイム取得項目定義ファイル名

オンの場合

set rts_trn_rbk_cmd = Y

オフの場合

なし

イベント項目

トランザクション情報：コマンドによるハザード

リアルタイム取得項目定義ファイル名

オンの場合

set rts_trn_haz_cmd = Y

オフの場合

なし

イベント項目

トランザクション情報：コマンドによるミックス

リアルタイム取得項目定義ファイル名

オンの場合

set rts_trn_mix_cmd = Y

オフの場合

なし

イベント項目

トランザクション情報：ブランチ実行時間

リアルタイム取得項目定義ファイル名

オンの場合

set rts_trn_branch = Y

オフの場合

なし

イベント項目

トランザクション情報：ブランチ同期点処理の実行時間

リアルタイム取得項目定義ファイル名

オンの場合

set rts_trn_sync_point = Y

オフの場合

なし

イベント項目

XAリソースサービス情報：Start()要求

リアルタイム取得項目定義ファイル名

オンの場合

set rts_xar_start = Y

オフの場合

なし

イベント項目

XAリソースサービス情報：Start()要求エラー

リアルタイム取得項目定義ファイル名

オンの場合

set rts_xar_start_err = Y

オフの場合

なし

イベント項目

XAリソースサービス情報：Call()要求

リアルタイム取得項目定義ファイル名

オンの場合

set rts_xar_call = Y

オフの場合

なし

イベント項目

XAリソースサービス情報：Call()要求エラー

リアルタイム取得項目定義ファイル名

オンの場合

set rts_xar_call_err = Y

オフの場合

なし

イベント項目

XAリソースサービス情報：End()要求

リアルタイム取得項目定義ファイル名

オンの場合

set rts_xar_end = Y

オフの場合

なし

イベント項目

XAリソースサービス情報：End()要求エラー

リアルタイム取得項目定義ファイル名

オンの場合

set rts_xar_end_err = Y

オフの場合

なし

イベント項目

XAリソースサービス情報：Prepare()要求

リアルタイム取得項目定義ファイル名

オンの場合

set rts_xar_prepare = Y

オフの場合

なし

イベント項目

XAリソースサービス情報：Prepare()要求エラー

リアルタイム取得項目定義ファイル名

オンの場合

set rts_xar_prepare_err = Y

オフの場合

なし

イベント項目

XAリソースサービス情報：Commit()要求

リアルタイム取得項目定義ファイル名

オンの場合

set rts_xar_commit = Y

オフの場合

なし

イベント項目

XAリソースサービス情報：Commit()要求エラー

リアルタイム取得項目定義ファイル名

オンの場合

set rts_xar_commit_err = Y

オフの場合

なし

イベント項目

XAリソースサービス情報：Rollback()要求

リアルタイム取得項目定義ファイル名

オンの場合

set rts_xar_rollback = Y

オフの場合

なし

イベント項目

XAリソースサービス情報：Rollback()要求エラー

リアルタイム取得項目定義ファイル名

オンの場合

set rts_xar_rollback_err = Y

オフの場合

なし

イベント項目

XAリソースサービス情報：Recover()要求

リアルタイム取得項目定義ファイル名

オンの場合

set rts_xar_recover = Y

オフの場合

なし

イベント項目

XAリソースサービス情報：Recover()要求エラー

リアルタイム取得項目定義ファイル名

オンの場合

set rts_xar_recover_err = Y

オフの場合

なし

イベント項目

XAリソースサービス情報：Forget()要求

リアルタイム取得項目定義ファイル名

オンの場合

set rts_xar_forget = Y

オフの場合

なし

イベント項目

XAリソースサービス情報：Forget()要求エラー

リアルタイム取得項目定義ファイル名

オンの場合

set rts_xar_forget_err = Y

オフの場合

なし

［XAリソースサービス環境設定］
XAリソースサービスを使用する
trn

オンの場合

set trn_xar_use = Y

オフの場合

なし

アイドル状態のトランザクションブランチの監視時間
xar
set xar_session_time = 監視時間

オンライン用XARファイルを作成するフォルダ名
xar
xarfile -t online -a ¥
"フォルダ名/xarfileO/xarO"

注

フォルダ名中のパスセパレータは’/’で記述

バックアップ用XARファイルを作成するフォルダ名
xar
xarfile -t backup -a ¥
"フォルダ名/xarfileB/xarB"

注

フォルダ名中のパスセパレータは’/’で記述

MSDTC連携機能を使用する
xar

オンの場合

set xar_msdtc_use = Y

オフの場合

なし

XARファイルのレコード長
xar
set xar_file_record_size = レコード長

注

xar_file_record_sizeオペランドは，TP1/LiNKの独自定義であり，GUIおよび共用メモリ自動計算だけで使用

［ノード自動追加機能設定］
ノードの動作モード
betranrc

マネジャノードの場合

set name_service_mode = manager

エージェントノードの場合

set name_service_mode = agent

ノーマルノードの場合

set name_service_mode = normal

マネジャノードのノード名
betranrc
set name_manager_node = ¥
"ノード名"

停止を検知したノードのノード情報をノードリストから削除する
betranrc

オンの場合

set name_remove_down_node = Y

オフの場合

なし

ノーマルノードのノード情報をノードリストに登録する
betranrc

オンの場合

set name_node_add_policy = all

オフの場合

なし

OpenTP1起動時のノードリスト要求応答待ち時間
nam
set name_start_watch_time = 応答待ち時間

OpenTP1起動時のノードリスト要求リトライ回数
nam
set name_start_retry_count = リトライ回数

OpenTP1起動時のノードリスト要求リトライ間隔
nam
set name_start_retry_interval = リトライ間隔

ノードリスト要求でエラーが発生した場合の処理
nam

停止するの場合

set name_start_error = stop

続行するの場合

set name_start_error = continue

ノードリスト同期待ち時間
nam
set name_sync_ready_time = 同期待ち時間

ノードリストファイルを作成するフォルダ名
ノードリストファイルを読み込む条件
nam
ノードリストファイルを読み込む条件が再開始時および正常開始時の場合
namnlfil -n ¥
フォルダ名/namnlfil/ndls
ノードリストファイルを読み込む条件が再開始時だけの場合
namnlfil -r ¥
フォルダ名/namnlfil/ndls
注
フォルダ名中のパスセパレータは’/’で記述

（凡例）－：該当項目なし

表C-2　GUIと定義ファイルの関連（SPP環境設定）

GUI名
設定項目
定義ファイル名
設定内容

［SPP環境設定］
サービスグループ名
ユーザサーバ名
set service_group = "サービスグループ名"

プログラム名
ユーザサーバ名
set module = "プログラム名"

プロセス数

常駐

非常駐

ユーザサーバ名
set parallel_count = 常駐数,常駐数+非常駐数

優先順位

プロセス

ユーザサーバ名
set nice = 優先順位

優先順位

スケジュール

ユーザサーバ名
set schedule_priority = 優先順位

スケジュール情報

サービス滞留数

ユーザサーバ名
set balance_count = サービス滞留数

スケジュール情報

サービスの最大入力データ長

ユーザサーバ名
set message_buflen = サービスの最大入力データ長×1024+1024

スケジュール情報

サービス要求データ格納プール長

ユーザサーバ名
set message_store_buflen = プール長×1024+1024

登録するサービス

サービス名

エントリポイント名

UAP共用ライブラリ（DLL）名

ユーザサーバ名
set service = "サービス名1=エントリポイント名1;¥
UAP共用ライブラリ名1",¥
"サービス名2 = エントリポイント名2;¥
UAP共用ライブラリ名2",¥
…
"サービス名n = エントリポイント名n;¥
UAP共用ライブラリ名n"

ユーザサーバの環境変数

グローバル

usrrc
putenv 環境変数名¥
環境変数値

ユーザサーバの環境変数

ローカル

ユーザサーバ名
putenv 環境変数名¥
環境変数値

自動起動設定
usrconf
dcsvstrt -u ユーザサーバ名1,…ユーザサーバ名7,¥
ユーザサーバ名8,…ユーザサーバ名14,¥
…
ユーザサーバ名n

注

1行に記述できるユーザサーバ名の最大数は7です。一つのdcsvstrtで指定できるユーザサーバ名の最大数は50です。指定したユーザサーバ群は並列に起動され，すべて起動されてから次のコマンドを実行します。dcsvstrtを指定できる最大数は5です。

［SPP詳細設定］
トランザクション属性
ユーザサーバ名

オンの場合

set atomic_update = Y

オフの場合

set atomic_update = N

トランザクションブランチ限界経過時間
ユーザサーバ名
set trn_expiration_time = 限界経過時間

子トランザクションブランチを監視時間に含める
ユーザサーバ名

オンの場合

set trn_expiration_time_suspend = Y

オフの場合

set trn_expiration_time_suspend = N

SPP異常終了時，閉塞しない
ユーザサーバ名

オンの場合

set hold = N

オフの場合

set hold = Y

連続異常終了限界経過時間
ユーザサーバ名
set term_watch_time = 限界経過時間

システム再開始時，閉塞状態を引き継ぐ
ユーザサーバ名

オンの場合

set hold_recovery = Y

オフの場合

set hold_recovery = N

サービス単位に閉塞管理する
ユーザサーバ名

オンの場合

set service_hold = Y

オフの場合

set service_hold = N

連続サービス異常終了限界経過時間
ユーザサーバ名
set service_term_watch_time = 限界経過時間

最大応答待ち時間
ユーザサーバ名
set watch_time = 最大応答待ち時間

連鎖RPC間隔監視時間
ユーザサーバ名
set watch_next_chain_time = 連鎖RPC間隔監視時間

ソケット用ファイル記述子の最大数
ユーザサーバ名
set max_socket_descriptors = 最大数

ソケットの一時クローズ開始数／ソケットの一時クローズ非対象数
ユーザサーバ名
set ipc_sockctl_highwater = 開始数,非対象数

一時クローズ要求の応答監視時間
ユーザサーバ名
set ipc_sockctl_watchtime = 応答監視時間

RPCトレースを取得するファイルの容量
ユーザサーバ名
set rpc_trace = Y
set rpc_trace_name = "フォルダ名
/spool/save/rpctrc/ユーザサーバ名"
set rpc_trace_size = ファイルの容量

注

フォルダ名はTP1/LiNKインストールフォルダ

一時クローズ処理要求が到着していないかどうかを検査する
ユーザサーバ名

オンの場合

set polling_control_data = Y

オフの場合

set polling_control_data = N

ソケットの再利用指示を受信できる契機を与えるインタバル時間
ユーザサーバ名
set thread_yield_interval = インタバル時間

TCP/IPの受信バッファサイズ
ユーザサーバ名
set ipc_recvbuf_size = 受信バッファサイズ

TCP/IPの送信バッファサイズ
ユーザサーバ名
set ipc_sendbuf_size = 送信バッファサイズ

TP1/LiNKが常設コネクションを自動管理する
ユーザサーバ名

オンの場合

set rpc_rap_auto_connect = Y

オフの場合

set rpc_rap_auto_connect = N

常設コネクション問い合わせ間隔最大時間
ユーザサーバ名
set rpc_rap_inquire_time = 最大時間

サービス関数をリトライする最大回数
ユーザサーバ名
set rpc_service_retry_count = 最大回数

サービス関数実行監視時間
ユーザサーバ名
set service_expiration_time = 監視時間

サービス単位にスケジュールサービスの動作を指定

サービス名

ユーザサーバ名
scdsvcdef -c サービス名 -p 同時実行可能なサービス数 -n キューイング可能なサービス要求数 -l キューイング可能なサービス要求データ格納プール長×1024

サービス単位にスケジュールサービスの動作を指定

同時実行可能なサービス数

ユーザサーバ名
scdsvcdef -c サービス名 -p 同時実行可能なサービス数 -n キューイング可能なサービス要求数 -l キューイング可能なサービス要求データ格納プール長×1024

サービス単位にスケジュールサービスの動作を指定

キューイング可能なサービス要求数

ユーザサーバ名
scdsvcdef -c サービス名 -p 同時実行可能なサービス数 -n キューイング可能なサービス要求数 -l キューイング可能なサービス要求データ格納プール長×1024

サービス単位にスケジュールサービスの動作を指定

キューイング可能なサービス要求データ格納プール長

ユーザサーバ名
scdsvcdef -c サービス名 -p 同時実行可能なサービス数 -n キューイング可能なサービス要求数 -l キューイング可能なサービス要求データ格納プール長×1024

システム再開始時，自動起動する
ユーザサーバ名

オンの場合

set node_down_restart = Y

オフの場合

set node_down_restart = N

UAPトレース格納最大数
ユーザサーバ名
set uap_trace_max = UAPトレース格納最大数

スケジュール遅延限界経過時間
ユーザサーバ名
set schedule_delay_limit = スケジュール遅延限界経過時間

スケジュール遅延時にシステムダウンする
ユーザサーバ名

オンの場合

set schedule_delay_abort = Y

オフの場合

set schedule_delay_abort = N

［リソースマネジャ拡張子設定］
リソースマネジャ名
リソースマネジャ拡張子
リソースマネジャ接続先選択機能を使用する
ユーザサーバ名

リソースマネジャ接続先選択機能を使用するがオンの場合

trnrmid -n リソースマネジャ名 -k -i 拡張子,¥

拡張子,¥

…

拡張子

リソースマネジャ接続先選択機能を使用するがオフの場合

trnrmid -n リソースマネジャ名 -i 拡張子,¥

拡張子,¥

…

拡張子

表C-3　GUIと定義ファイルの関連（SUP環境設定）

GUI名
設定項目
定義ファイル名
設定内容

［SUP環境設定］
プログラム名
ユーザサーバ名
set module = "プログラム名"

優先順位

プロセス

ユーザサーバ名
set nice = 優先順位

ユーザサーバの環境変数

グローバル

usrrc
putenv 環境変数名¥
環境変数値

ユーザサーバの環境変数

ローカル

ユーザサーバ名
putenv 環境変数名¥
環境変数値

自動起動設定
usrconf
dcsvstrt -u ユーザサーバ名1,…ユーザサーバ名7,¥
ユーザサーバ名8,…ユーザサーバ名14,¥
…
ユーザサーバ名n

注

1行に記述できるユーザサーバ名の最大数は7です。一つのdcsvstrtで指定できるユーザサーバ名の最大数は50です。指定したユーザサーバ群は並列に起動され，すべて起動されてから次のコマンドを実行します。dcsvstrtを指定できる最大数は5です。

［SUP詳細設定］
トランザクション属性
ユーザサーバ名

オンの場合

set atomic_update = Y

オフの場合

set atomic_update = N

トランザクションブランチ限界経過時間
ユーザサーバ名
set trn_expiration_time = 限界経過時間

子トランザクションブランチを監視時間に含める
ユーザサーバ名

オンの場合

set trn_expiration_time_suspend = Y

オフの場合

set trn_expiration_time_suspend = N

最大応答待ち時間
ユーザサーバ名
set watch_time = 最大応答待ち時間

ソケット用ファイル記述子の最大数
ユーザサーバ名
set max_socket_descriptors = 最大数

ソケットの一時クローズ開始数／ソケットの一時クローズ非対象数
ユーザサーバ名
set ipc_sockctl_highwater = 開始数,非対象数

一時クローズ要求の応答監視時間
ユーザサーバ名
set ipc_sockctl_watchtime = 応答監視時間

RPCトレースを取得するファイルの容量
ユーザサーバ名
set rpc_trace = Y
set rpc_trace_name = "フォルダ名
/spool/save/rpctrc/ユーザサーバ名"
set rpc_trace_size = ファイルの容量

注

フォルダ名はTP1/LiNKインストールフォルダ

TCP/IPの受信バッファサイズ
ユーザサーバ名
set ipc_recvbuf_size = 受信バッファサイズ

TCP/IPの送信バッファサイズ
ユーザサーバ名
set ipc_sendbuf_size = 送信バッファサイズ

TP1/LiNKが常設コネクションを自動管理する
ユーザサーバ名

オンの場合

set rpc_rap_auto_connect = Y

オフの場合

set rpc_rap_auto_connect = N

常設コネクション問い合わせ間隔最大時間
ユーザサーバ名
set rpc_rap_inquire_time = 最大時間

システム再開始時，自動起動する
ユーザサーバ名

オンの場合

set node_down_restart = Y

オフの場合

set node_down_restart = N

SUP異常終了時，再起動する
ユーザサーバ名

オンの場合

set auto_restart = Y

オフの場合

set auto_restart = N

連続異常終了限界経過時間
ユーザサーバ名
set term_watch_time = 経過時間

UAPトレース格納最大数
ユーザサーバ名
set uap_trace_max = UAPトレース格納最大数

［リソースマネジャ拡張子設定］
リソースマネジャ名
リソースマネジャ拡張子
リソースマネジャ接続先選択機能を使用する
ユーザサーバ名

リソースマネジャ接続先選択機能を使用するがオンの場合

trnrmid -n リソースマネジャ名 -k -i 拡張子,¥

拡張子,¥

…

拡張子

リソースマネジャ接続先選択機能を使用するがオフの場合

trnrmid -n リソースマネジャ名 -i 拡張子,¥

拡張子,¥

…

拡張子

表C-4　GUIと定義ファイルの関連（RAPサービス環境設定）

GUI名
設定項目
定義ファイル名
設定内容

［RAPサービス環境設定］
RAPサービスのポート番号

ポート番号

RAPサービス名
set rap_listen_port = ポート番号

RAPサービスのプロセス数

常駐

RAPサービス名
set rap_parallel_server = 常駐数

優先順位

プロセス

RAPサービス名
set nice = 優先順位

ダイナミックコネクションスケジュール機能
RAPサービス名

オンの場合

set rap_connection_assign_type = dynamic

オフの場合

set rap_connection_assign_type = static

最大クライアント数
RAPサービス名
set rap_max_client = 最大クライアント数

自動起動設定
usrconf
dcsvstrt -u ユーザサーバ名1,…ユーザサーバ名7,¥
ユーザサーバ名8,…ユーザサーバ名14,¥
…
ユーザサーバ名n

注

1行に記述できるユーザサーバ名の最大数は7です。一つのdcsvstrtで指定できるユーザサーバ名の最大数は50です。指定したユーザサーバ群は並列に起動され，すべて起動されてから次のコマンドを実行します。dcsvstrtを指定できる最大数は5です。

［RAPサービス詳細設定］
トランザクションブランチ限界経過時間
RAPサービス名
set trn_expiration_time = 限界経過時間

子トランザクションブランチを監視時間に含める
RAPサービス名

オンの場合

set trn_expiration_time_suspend = Y

オフの場合

set trn_expiration_time_suspend = N

ソケット用ファイル記述子の最大数
RAPサービス名
set max_socket_descriptors = 最大数

ソケットの一時クローズ開始数／ソケットの一時クローズ非対象数
RAPサービス名
set ipc_sockctl_highwater = 開始数,非対象数

一時クローズ要求の応答監視時間
RAPサービス名
set ipc_sockctl_watchtime = 応答監視時間

ソケットウィンドウサイズ
RAPサービス名
set rap_max_buff_size = ウィンドウサイズ

メッセージ送受信最大監視時間
RAPサービス名
set rap_watch_time = メッセージ送受信最大監視時間

問い合わせ間隔最大時間
RAPサービス名
set rap_inquire_time = 問い合わせ間隔最大時間

最大応答待ち時間
RAPサービス名
set watch_time = 最大応答待ち時間

UAPトレース格納最大数
RAPサービス名
set uap_trace_max = UAPトレース格納最大数

RPCトレースを取得するファイルの容量
RAPサービス名
set rpc_trace = Y
set rpc_trace_name = "フォルダ名
/spool/save/rpctrc/RAPサービス名"
set rpc_trace_size = ファイルの容量

注

フォルダ名はTP1/LiNKインストールフォルダ

リカバリ要求用待機rapサーバ数
RAPサービス名
set rap_recovery_server = 待機rapサーバ数

rapリスナー終了時のコネクション切断待ち時間
RAPサービス名
set rap_term_disconnect_time = コネクション切断待ち時間

rapサーバ割り当て待ち要求の滞留監視時間
RAPサービス名
set rap_stay_watch_time = 滞留監視時間

滞留警告メッセージの出力間隔
RAPサービス名
set rap_stay_warning_interval = 出力間隔

注

rapリスナーサービス定義ファイルを変更した場合は，rapdfgenコマンドを実行してください。

表C-5　GUIと定義ファイルの関連（リソースマネジャ接続）

GUI名
設定項目
定義ファイル名
設定内容

［リソースマネジャ接続］
TP1/Message Queue接続時
sysconf
set mqa_conf = Y

TP1/Messaging接続時
sysconf
dcsvstrt -m _mumngr

［OPEN，CLOSE文字列］
－
trn

MS_SQL_Server接続時

trnstring -n MS_SQL_Server -i 拡張子 ¥

-o "トランザクションサービスOPEN文字列"¥

-c "トランザクションサービスCLOSE文字列"¥

-O "ユーザサーバOPEN文字列"¥

-C "ユーザサーバCLOSE文字列"

Oracle接続時

trnstring -n Oracle_XA -e -i 拡張子 ¥

-o "トランザクションサービスOPEN文字列"¥

-O "ユーザサーバOPEN文字列"

HiRDB接続時

trnstring -n HiRDB_DB_SERVER

［オプション］
トランザクションサービスの環境変数
trn
putenv 環境変数名¥
環境変数値

リソースマネジャオープンエラー時の処置
trn

TP1続行

set trn_wait_rm_open = continue

TP1停止

set trn_wait_rm_open = stop

オープン処理をリトライ後，TP1続行

set trn_wait_rm_open = retry_continue

オープン処理をリトライ後，TP1停止

set trn_wait_rm_open = retry_stop

リトライ間隔
trn
set trn_retry_interval_rm_open = リトライ間隔

リトライ回数
trn
set trn_retry_count_rm_open = リトライ回数

プリペア，コミット最適化

HiRDBのプリペア，コミット最適化を抑止する

trn

オンの場合

trnstring -n HiRDB_DB_SERVER -d

オフの場合

trnstring -n HiRDB_DB_SERVER

（凡例）－：該当項目なし

付録D　参照するマニュアルの制限事項

巻頭の<関連マニュアル>で示すマニュアルは，TP1/LiNKとOpenTP1（TP1/Server Base）で共用となっています。そのため，関連マニュアルの記述にはTP1/Server Baseだけで使えてTP1/LiNKでは使えない機能の説明があります。

ここでは，関連マニュアルの内容のうち，TP1/LiNKでは使えない機能について説明します。

＜この節の構成＞

付録D.1　TP1/LiNKでは使えない機能

付録D.2　TP1/Clientの機能のうち，TP1/LiNKでは使えない機能

付録D.1　TP1/LiNKでは使えない機能

TP1/LiNKでは，同一バージョン・リビジョンのTP1/Server Base相当の機能を使用できます。ただし，次に示す機能は使えません。

次に示すユーザデータを管理する機能
DAMファイルサービス（TP1/FS/Direct Access）
TAMファイルサービス（TP1/FS/Table Access）
ISTサービス（TP1/Shared Table Access）
トランザクション機能付きのISAMファイルサービス（ISAM/B）
任意のファイルの排他制御

デッドロック情報の出力

XATMIインタフェース機能

通信プロトコルにOSI TPを使ったリモートプロシジャコール

ゲートウェイを使った他社オープンシステムとの通信

他社アプリケーションソフトへのメッセージログの通知

OpenTP1のセキュリティ機能

マルチノード機能（TP1/Multi）

リソースマネジャモニタ（TP1/Resource Manager Monitor）

ソケット受信型サーバの作成

オンラインテスタ（TP1/Online Tester，TP1/Message Control/Tester）

ユーザサーバ開始時にパラメタを渡すコマンド（dcsvstart -a）

名前付きパイプを使ったユーザサーバのスケジュール

ドメイン修飾をしたサービス要求

オフラインテスタ（TP1/Offline Tester）

rapクライアントマネジャ

未決着トランザクション情報ファイルの作成

システム定義のチェックコマンド（dcdefchk）

付録D.2　TP1/Clientの機能のうち，TP1/LiNKでは使えない機能

マニュアル「OpenTP1 クライアント使用の手引 TP1/Client/W，TP1/Client/P編」または「OpenTP1 クライアント使用の手引 TP1/Client/J編」のTP1/ Server Baseに関連する記述のうち，TP1/LiNKでは使えない機能の一覧を次に示します。

XATMIインタフェース機能

オンラインテスタ機能

クライアント拡張サービスのポート番号の指定

トランザクションブランチCPU時間監視

トランザクションブランチ統計情報取得の指定

付録E　TP1/LiNKの環境設定とTP1/Server Baseシステムサービス定義との対応

TP1/LiNK環境設定GUIの項目およびTP1/Server Baseシステムサービス定義の対応関係を表E-1～表E-5に示します。なお，TP1/LiNKで設定できないTP1/Server Baseシステムサービス定義については，デフォルト値が適用されます。

表E-1　TP1/LiNKの環境設定とTP1/ Server Baseシステムサービス定義との対応（システム環境設定）

TP1/LiNK
TP1/Server Base
システムサービス定義

GUI名
設定項目

［システム環境設定］
ネームサービスのポート番号
システム共通定義
name_port

ノード識別子
システム共通定義
node_id

ユーザ認証機能
システム共通定義
client_uid_check

RPCオプション
トレース取得
システム共通定義
rpc_trace

RPCオプション
データ圧縮
システム共通定義
rpc_datacomp

サーバ数
SUP
SPP
閉塞状態を引き継ぐサーバ，サービス数
システム環境定義
server_count
プロセスサービス定義
prc_process_count
スケジュールサービス定義
scd_server_count
scd_hold_recovery_count
タイマサービス定義
tim_watch_count

稼働統計情報の取得
あり
なし
システム共通定義
rpc_delay_statistics
ユーザサービスデフォルト定義
rpc_response_statistics

稼働統計情報の取得
統計ファイルサイズ
－

トランザクション機能
あり
なし
－

トランザクション機能
APの状態引き継ぎ
－

トランザクションブランチ数
トランザクションサービス定義
trn_tran_process_count

スケジュールサービスのポート番号
スケジュールサービス定義
scd_port

システムを構成するノード
システム共通定義
all_node

サーチパス
プロセスサービス定義
prcsvpath

［クライアントサービス環境設定］
CUPからトランザクションを実行する
システムサービス構成定義
clt_conf
クライアントサービス定義
clt_trn_conf

実行プロセス数
常駐
非常駐
クライアントサービス定義
parallel_count

実行プロセス数
サービス滞留数
クライアントサービス定義
balance_count

CUPから常設コネクションを確立する
システムサービス構成定義
clt_conf
クライアントサービス定義
clt_cup_conf

確立プロセス数
常駐
非常駐
クライアントサービス定義
cup_parallel_count

確立プロセス数
サービス滞留数
クライアントサービス定義
cup_balance_count

［RPC詳細設定］
最大応答待ち時間
システム共通定義
ネームサービス定義
トランザクションサービス定義
watch_time

コネクション確立監視時間
システム共通定義
ipc_conn_interval

RPCをリトライする
システム共通定義
rpc_retry

サービス要求送信リトライ回数最大値
システム共通定義
rpc_retry_count

サービス要求送信リトライ間隔時間
システム共通定義
rpc_retry_interval

サービス情報領域の大きさ
ネームサービス定義
name_total_size

サービス情報キャッシュ領域の大きさ
ネームサービス定義
name_cache_size

システムを構成するノードに起動通知を行う
システム共通定義
name_notify

グローバル検索機能を使用する
ネームサービス定義
name_global_lookup

ドメイン定義ファイルを使用する
システム共通定義
name_domain_file_use

all_nodeのドメイン定義ファイルに指定する最大ノード数
システム共通定義
all_node_extend_number

all_node_exのドメイン定義ファイルに指定する最大ノード数
システム共通定義
all_node_ex_extend_number

ノード監視機能
ネームサービス定義
name_audit_conf

ノード監視間隔時間
ネームサービス定義
name_audit_interval

ノードダウンを検知するまでの最大待ち時間
ネームサービス定義
name_audit_watch_time

他ノードのサービス情報の有効時間
ネームサービス定義
name_cache_validity_time

ソケット用ファイル記述子の最大数
システム共通定義
ネームサービス定義
スケジュールサービス定義
トランザクションサービス定義
max_socket_descriptors

ソケットの一時クローズ開始数
ソケットの一時クローズ非対象数
システム共通定義
ネームサービス定義
スケジュールサービス定義
トランザクションサービス定義
ipc_sockctl_highwater

一時クローズ要求の応答監視時間
システム共通定義
ネームサービス定義
スケジュールサービス定義
トランザクションサービス定義
ipc_sockctl_watchtime

一時クローズ処理要求が到着していないかどうかを検査する
トランザクションサービス定義
polling_control_data

ソケットの再利用指示を受信できる契機を与えるインタバル時間
トランザクションサービス定義
thread_yield_interval

TCP/IPの受信バッファサイズ
システム共通定義
ipc_recvbuf_size

TCP/IPの送信バッファサイズ
システム共通定義
ipc_sendbuf_size

最小ポート番号
システム共通定義
rpc_port_base

RPCトレースを取得するファイルの容量
システム共通定義
rpc_trace_size

RPC送受信電文の最大長
システム共通定義
rpc_max_message_size

［ユーザサービス環境設定］
－
システム共通定義
dcsvgdef

［リアルタイム統計情報サービス設定］
統計情報取得間隔
リアルタイム統計情報サービス定義
rts_trcput_interval

最大取得サービス数
リアルタイム統計情報サービス定義
rts_service_max

最大取得項目数
リアルタイム統計情報サービス定義
rts_item_max

RTSログファイルに出力しない
リアルタイム統計情報サービス定義
rts_log_file

RTSログファイル名
リアルタイム統計情報サービス定義
rts_log_file_name

RTSログファイルのサイズ
リアルタイム統計情報サービス定義
rts_log_file_size

［リアルタイム統計情報取得対象定義］
［リアルタイム取得項目詳細］
－
リアルタイム統計情報サービス定義
rtsput

［リアルタイム取得項目定義］
［リアルタイム取得項目詳細］
イベント項目
ネーム情報：グローバルキャッシュヒット
リアルタイム取得項目定義
rts_nam_global_cache_hit

イベント項目
ネーム情報：ローカルキャッシュヒット
リアルタイム取得項目定義
rts_nam_local_cache_hit

イベント項目
ネーム情報：サービス情報の検索回数
リアルタイム取得項目定義
rts_nam_lookup

イベント項目
ネーム情報：指定参照先ノードへのサービス検索の送信回数
リアルタイム取得項目定義
nam_node_lookup

イベント項目
ネーム情報：指定参照先ノードからのサービス検索の応答受信回数
リアルタイム取得項目定義
rts_nam_node_lookup_responce

イベント項目
共用メモリ管理情報：静的共用メモリの使用サイズ
リアルタイム取得項目定義
rts_osl_stamem_acq

イベント項目
共用メモリ管理情報：静的共用メモリプールの必要最大サイズ
リアルタイム取得項目定義
rts_osl_stamem_pol

イベント項目
共用メモリ管理情報：動的共用メモリの使用サイズ
リアルタイム取得項目定義
rts_osl_dynmem_acq

イベント項目
共用メモリ管理情報：動的共用メモリプールの必要最大サイズ
リアルタイム取得項目定義
rts_osl_dynmem_pol

イベント項目
プロセス情報：プロセス生成
リアルタイム取得項目定義
rts_prc_prc_genert

イベント項目
プロセス情報：UAP異常終了
リアルタイム取得項目定義
rts_prc_uap_abnml

イベント項目
プロセス情報：システムサーバ異常終了
リアルタイム取得項目定義
rts_prc_sys_abnml

イベント項目
プロセス情報：プロセス終了
リアルタイム取得項目定義
rts_prc_prc_term

イベント項目
プロセス情報：起動プロセス数
リアルタイム取得項目定義
rts_prc_prc_num

イベント項目
RPC情報：RPCコール（同期応答型）
リアルタイム取得項目定義
rts_rpc_rpc_call

イベント項目
RPC情報：RPCコール（連鎖RPC型）
リアルタイム取得項目定義
rts_rpc_rpc_call_chained

イベント項目
RPC情報：ユーザサービス実行
リアルタイム取得項目定義
rts_rpc_usr_srvc

イベント項目
RPC情報：RPCタイムアウト
リアルタイム取得項目定義
rts_rpc_rpc_ovrtim

イベント項目
スケジュール情報：スケジュール待ち
リアルタイム取得項目定義
rts_scd_scd_wait

イベント項目
スケジュール情報：スケジュール
リアルタイム取得項目定義
rts_scd_schedule

イベント項目
スケジュール情報：メッセージ格納バッファプールの使用中サイズ
リアルタイム取得項目定義
rts_scd_using_buf

イベント項目
スケジュール情報：メッセージ格納バッファプールの不足でスケジュールできなかったメッセージサイズ
リアルタイム取得項目定義
rts_scd_lack_buf

イベント項目
スケジュール情報：スケジュール滞留
リアルタイム取得項目定義
rts_scd_scd_stay

イベント項目
スケジュール情報：サービス単位のスケジュール待ち
リアルタイム取得項目定義
rts_scd_svc_scd_wait

イベント項目
スケジュール情報：サービス単位のメッセージ格納バッファプールの使用中サイズ
リアルタイム取得項目定義
rts_scd_svc_using_buf

イベント項目
スケジュール情報：同時実行サービス数
リアルタイム取得項目定義
rts_scd_parallel

イベント項目
トランザクション情報：コミット
リアルタイム取得項目定義
rts_trn_commit

イベント項目
トランザクション情報：ロールバック
リアルタイム取得項目定義
rts_trn_rollback

イベント項目
トランザクション情報：コマンドによるコミット
リアルタイム取得項目定義
rts_trn_cmt_cmd

イベント項目
トランザクション情報：コマンドによるロールバック
リアルタイム取得項目定義
rts_trn_rbk_cmd

イベント項目
トランザクション情報：コマンドによるハザード
リアルタイム取得項目定義
rts_trn_haz_cmd

イベント項目
トランザクション情報：コマンドによるミックス
リアルタイム取得項目定義
rts_trn_mix_cmd

イベント項目
トランザクション情報：ブランチ実行時間
リアルタイム取得項目定義
rts_trn_branch

イベント項目
トランザクション情報：ブランチ同期点処理の実行時間
リアルタイム取得項目定義
rts_trn_sync_point

イベント項目
XAリソースサービス情報：Start()要求
リアルタイム取得項目定義
rts_xar_start

イベント項目
XAリソースサービス情報：Start()要求エラー
リアルタイム取得項目定義
rts_xar_start_err

イベント項目
XAリソースサービス情報：Call()要求
リアルタイム取得項目定義
rts_xar_call

イベント項目
XAリソースサービス情報：Call()要求エラー
リアルタイム取得項目定義
rts_xar_call_err

イベント項目
XAリソースサービス情報：End()要求
リアルタイム取得項目定義
rts_xar_end

イベント項目
XAリソースサービス情報：End()要求エラー
リアルタイム取得項目定義
rts_xar_end_err

イベント項目
XAリソースサービス情報：Prepare()要求
リアルタイム取得項目定義
rts_xar_prepare

イベント項目
XAリソースサービス情報：Prepare()要求エラー
リアルタイム取得項目定義
rts_xar_prepare_err

イベント項目
XAリソースサービス情報：Commit()要求
リアルタイム取得項目定義
rts_xar_commit

イベント項目
XAリソースサービス情報：Commit()要求エラー
リアルタイム取得項目定義
rts_xar_commit_err

イベント項目
XAリソースサービス情報：Rollback()要求
リアルタイム取得項目定義
rts_xar_rollback

イベント項目
XAリソースサービス情報：Rollback()要求エラー
リアルタイム取得項目定義
rts_xar_rollback_err

イベント項目
XAリソースサービス情報：Recover()要求
リアルタイム取得項目定義
rts_xar_recover

イベント項目
XAリソースサービス情報：Recover()要求エラー
リアルタイム取得項目定義
rts_xar_recover_err

イベント項目
XAリソースサービス情報：Forget()要求
リアルタイム取得項目定義
rts_xar_forget

イベント項目
XAリソースサービス情報：Forget()要求エラー
リアルタイム取得項目定義
rts_xar_forget_err

［XAリソースサービス環境設定］
XAリソースサービスを使用する
トランザクションサービス定義
trn_xar_use

アイドル状態のトランザクションブランチの監視時間
XAリソースサービス定義
xar_session_time

オンライン用XARファイルを作成するフォルダ名
XAリソースサービス定義
xarfile -t online

バックアップ用XARファイルを作成するフォルダ名
XAリソースサービス定義
xarfile -t backup

MSDTC連携機能を使用する
XAリソースサービス定義
xar_msdtc_use

XARファイルのレコード長
該当定義なし
（xarinitコマンドの-sオプションに相当）

［ノード自動追加機能設定］
ノードの動作モード
システム共通定義
name_service_mode

マネジャノードのノード名
システム共通定義
name_manager_node

停止を検知したノードのノード情報をノードリストから削除する
システム共通定義
name_remove_down_node

ノーマルノードのノード情報をノードリストに登録する
システム共通定義
name_node_add_policy

OpenTP1起動時のノードリスト要求応答待ち時間
ネームサービス定義
name_start_watch_time

OpenTP1起動時のノードリスト要求リトライ回数
ネームサービス定義
name_start_retry_count

OpenTP1起動時のノードリスト要求リトライ間隔
ネームサービス定義
name_start_retry_interval

ノードリスト要求でエラーが発生した場合の処理
ネームサービス定義
name_start_error

ノードリスト同期待ち時間
ネームサービス定義
name_sync_ready_time

ノードリストファイルを作成するフォルダ名
ノードリストファイルを読み込む条件
ネームサービス定義
namnlfil

（凡例）－：該当項目なし

表E-2　TP1/LiNKの環境設定とTP1/ Server Baseシステムサービス定義との対応（SPP環境設定）

TP1/LiNK
TP1/Server Base
システムサービス定義

GUI名
設定項目

［SPP環境設定］
サービスグループ名
ユーザサービス定義
service_group

プログラム名
ユーザサービス定義
module

プロセス数
常駐
非常駐
ユーザサービス定義
parallel_count

優先順位
プロセス
ユーザサービス定義
nice

優先順位
スケジュール
ユーザサービス定義
schedule_priority

スケジュール情報
サービス滞留数
ユーザサービス定義
balance_count

スケジュール情報
サービスの最大入力データ長
ユーザサービス定義
message_buflen

スケジュール情報
サービス要求データ格納プール長
ユーザサービス定義
message_store_buflen

登録するサービス
サービス名
エントリポイント名
UAP共用ライブラリ（DLL）名
ユーザサービス定義
service

ユーザサーバの環境変数
グローバル
ユーザサービスデフォルト定義
putenv

ユーザサーバの環境変数
ローカル
ユーザサービス定義
putenv

自動起動設定
ユーザサービス構成定義
dcsvstart

［SPP詳細設定］
トランザクション属性
ユーザサービス定義
atomic_update

トランザクションブランチ限界経過時間
ユーザサービス定義
trn_expiration_time

子トランザクションブランチを監視時間に含める
ユーザサービス定義
trn_expiration_time_suspend

SPP異常終了時，閉塞しない
ユーザサービス定義
hold

連続異常終了限界経過時間
ユーザサービス定義
term_watch_time

システム再開始時，閉塞状態を引き継ぐ
ユーザサービス定義
hold_recovery

サービス単位に閉塞管理する
ユーザサービス定義
service_hold

連続サービス異常終了限界経過時間
ユーザサービス定義
service_term_watch_time

最大応答待ち時間
ユーザサービス定義
watch_time

連鎖RPC間隔監視時間
ユーザサービス定義
watch_next_chain_time

ソケット用ファイル記述子の最大数
ユーザサービス定義
max_socket_descriptors

ソケットの一時クローズ開始数
ソケットの一時クローズ非対象数
ユーザサービス定義
ipc_sockctl_highwater

一時クローズ要求の応答監視時間
ユーザサービス定義
ipc_sockctl_watchtime

RPCトレースを取得するファイルの容量
ユーザサービス定義
rpc_trace
rpc_trace_name
rpc_trace_size

一時クローズ処理要求が到着していないかどうかを検査する
ユーザサービス定義
polling_control_data

ソケットの再利用指示を受信できる契機を与えるインタバル時間
ユーザサービス定義
thread_yield_interval

TCP/IPの受信バッファサイズ
ユーザサービス定義
ipc_recvbuf_size

TCP/IPの送信バッファサイズ
ユーザサービス定義
ipc_sendbuf_size

TP1/LiNKが常設コネクションを自動管理する
ユーザサービス定義
rpc_rap_auto_connect

常設コネクション問い合わせ間隔最大時間
ユーザサービス定義
rpc_rap_inquire_time

サービス関数をリトライする最大回数
ユーザサービス定義
rpc_service_retry_count

サービス関数実行監視時間
ユーザサービス定義
service_expiration_time

サービス単位にスケジュールサービスの動作を指定
サービス名
ユーザサービス定義
scdsvcdef

サービス単位にスケジュールサービスの動作を指定
同時実行可能なサービス数
ユーザサービス定義
scdsvcdef

サービス単位にスケジュールサービスの動作を指定
キューイング可能なサービス要求数
ユーザサービス定義
scdsvcdef

サービス単位にスケジュールサービスの動作を指定
キューイング可能なサービス要求データ格納プール長
ユーザサービス定義
scdsvcdef

システム再開始時，自動起動する
ユーザサービス定義
node_down_restart

UAPトレース格納最大数
ユーザサービス定義
uap_trace_max

スケジュール遅延限界経過時間
ユーザサービス定義
schedule_delay_limit

スケジュール遅延時にシステムダウンする
ユーザサービス定義
schedule_delay_abort

［リソースマネジャ拡張子設定］
リソースマネジャ拡張子
ユーザサービス定義
trnrmid

表E-3　TP1/LiNKの環境設定とTP1/ Server Baseシステムサービス定義との対応（SUP環境設定）

TP1/LiNK
TP1/Server Base
システムサービス定義

GUI名
設定項目

［SUP環境設定］
プログラム名
ユーザサービス定義
module

優先順位
プロセス
ユーザサービス定義
nice

ユーザサーバの環境変数
グローバル
ユーザサービスデフォルト定義
putenv

ユーザサーバの環境変数
ローカル
ユーザサービス定義
putenv

自動起動設定
ユーザサービス構成定義
dcsvstart

［SUP詳細設定］
トランザクション属性
ユーザサービス定義
atomic_update

トランザクションブランチ限界経過時間
ユーザサービス定義
trn_expiration_time

子トランザクションブランチを監視時間に含める
ユーザサービス定義
trn_expiration_time_suspend

最大応答待ち時間
ユーザサービス定義
watch_time

ソケット用ファイル記述子の最大数
ユーザサービス定義
max_socket_descriptors

ソケットの一時クローズ開始数
ソケットの一時クローズ非対象数
ユーザサービス定義
ipc_sockctl_highwater

一時クローズ要求の応答監視時間
ユーザサービス定義
ipc_sockctl_watchtime

RPCトレースを取得するファイルの容量
ユーザサービス定義
rpc_trace
rpc_trace_name
rpc_trace_size

TCP/IPの受信バッファサイズ
ユーザサービス定義
ipc_recvbuf_size

TCP/IPの送信バッファサイズ
ユーザサービス定義
ipc_sendbuf_size

TP1/LiNKが常設コネクションを自動管理する
ユーザサービス定義
rpc_rap_auto_connect

常設コネクション問い合わせ間隔最大時間
ユーザサービス定義
rpc_rap_inquire_time

システム再開始時，自動起動する
ユーザサービス定義
node_down_restart

SUP異常終了時，再起動する
ユーザサービス定義
auto_restart

連続異常終了限界経過時間
ユーザサービス定義
term_watch_time

UAPトレース格納最大数
ユーザサービス定義
uap_trace_max

［リソースマネジャ拡張子設定］
リソースマネジャ拡張子
ユーザサーバ名
trnrmid

表E-4　TP1/LiNKの環境設定とTP1/ Server Baseシステムサービス定義との対応（RAPサービス環境設定）

TP1/LiNK
TP1/Server Base
システムサービス定義

GUI名
設定項目

［RAPサービス環境設定］
RAPサービスのポート番号
rapリスナーサービス定義
rap_listen_port

RAPサービスのプロセス数
常駐
rapリスナーサービス定義
rap_parallel_server

優先順位
プロセス
rapリスナーサービス定義
nice

ダイナミックコネクションスケジュール機能
rapリスナーサービス定義
rap_connection_assign_type

最大クライアント数
rapリスナーサービス定義
rap_max_client

自動起動設定
ユーザサービス構成定義
dcsvstart

［RAPサービス詳細設定］
トランザクションブランチ限界経過時間
rapリスナーサービス定義
trn_expiration_time

子トランザクションブランチを監視時間に含める
rapリスナーサービス定義
trn_expiration_time_suspend

ソケット用ファイル記述子の最大数
rapリスナーサービス定義
max_socket_descriptors

ソケットの一時クローズ開始数
ソケットの一時クローズ非対象数
ユーザサービス定義
ipc_sockctl_highwater

一時クローズ要求の応答監視時間
ユーザサービス定義
ipc_sockctl_watchtime

ソケットウィンドウサイズ
rapリスナーサービス定義
rap_max_buff_size

メッセージ送受信最大監視時間
rapリスナーサービス定義
rap_watch_time

問い合わせ間隔最大時間
rapリスナーサービス定義
rap_inquire_time

最大応答待ち時間
rapリスナーサービス定義
watch_time

UAPトレース格納最大数
rapリスナーサービス定義
uap_trace_max

RPCトレースを取得するファイルの容量
rapリスナーサービス定義
rpc_trace
rpc_trace_name
rpc_trace_size

リカバリ要求用待機rapサーバ数
rapリスナーサービス定義
rap_recovery_server

rapリスナー終了時のコネクション切断待ち時間
rapリスナーサービス定義
rap_term_disconnect_time

rapサーバ割り当て待ち要求の滞留監視時間
rapリスナーサービス定義
rap_stay_watch_time

滞留警告メッセージの出力間隔
rapリスナーサービス定義
rap_stay_warning_interval

表E-5　TP1/LiNKの環境設定とTP1/ Server Baseシステムサービス定義との対応（リソースマネジャ接続）

TP1/LiNK
TP1/Server Base
システムサービス定義

GUI名
設定項目

［リソースマネジャ接続］
TP1/Message Queue接続時
システムサービス構成定義
mqa_conf

TP1/Messaging接続時
システムサービス構成定義
dcsvstart

［OPEN，CLOSE文字列］
－
トランザクションサービス定義
trnstring

［OPEN，CLOSE文字列一覧］
－
トランザクションサービス定義
trnstring

［オプション］
トランザクションサービスの環境変数
トランザクションサービス定義
putenv

リソースマネジャオープンエラー時の処置
TP1続行
TP1停止
オープン処理をリトライ後，TP1続行
オープン処理をリトライ後，TP1停止
トランザクションサービス定義
trn_wait_rm_open

リトライ間隔
トランザクションサービス定義
trn_retry_interval_rm_open

リトライ回数
トランザクションサービス定義
trn_retry_count_rm_open

プリペア，コミット最適化
トランザクションサービス定義
trnstring

（凡例）－：該当項目なし

付録F　共用メモリとファイル容量の見積もり式

共用メモリ，ステータスファイルの容量，および稼働統計情報ファイルの容量の見積もり式について説明します。

＜この節の構成＞

付録F.1　共用メモリの見積もり式

付録F.2　ステータスファイル容量の見積もり式

付録F.3　稼働統計情報ファイル容量の見積もり式

付録F.1　共用メモリの見積もり式

TP1/LiNKシステムでのシステムサーバが，システム開始から終了までに占有する共用メモリ（マップドファイル）の総量は，次の表に従って算出したメモリ量の合計値に安全値（1.3）を乗算した値として，システムの開始時に自動的に確保されます。

TP1/Messagingの共用メモリ量は，マニュアル「TP1/Messaging 使用の手引」を基に算出して加算してください。

表F-1　静的共用メモリのサイズの算出法

項番
コンポーネント名
サイズまたはサイズ算出式（単位：バイト）

1
スケジューラ

48160＋（（scd_server_count＋3）×1216）
＋（scd_hold_recovery_count×160）
　I
＋Σ（サービスグループIのmessage_store_buflen＋128）
　I=0
＋（J×128）＋（K×128）
　L
＋Σ（サービスグループLのサービス数×64＋192）
　L=0
　M
＋Σ（サービスグループMのサービス数×128＋64）
　M=0

2
ロックサーバ

62144

3
トランザクションマネジャ

2048＋1280×（RM名＋RM拡張子の数）
＋（816＋128×（RM名＋RM拡張子の数）＋128×32）
＋↓（63＋4×（RM名＋RM拡張子の数）÷32↓×32）
×trn_tran_process_count×2＋128
＋（32＋（512＋（（RM名＋RM拡張子の数）＋32）×10）
×↑（trn_tran_process_count）÷10↑＋32

4
タイマサーバ

32×（trn_tran_process_count＋scd_server_count）＋1440

5
ジャーナルサーバ

49120

6
プロセスサーバ

944×（server_count＋54）＋60624

7
システムマネジャ

128×（server_count＋57）＋6024＋ユーザサーバ定義数×1024

8
ネームサーバ

（name_total_size＋name_cache_size）×1024

9
性能トレース取得サービス

prf_traceオペランドにNを指定した場合

共用メモリの所要量は，1024バイトです。

prf_traceオペランドにYを指定した場合

共用メモリの所要量は，1551360​バイトです。

10
rapリスナー／rapサーバ

1024＋148×rap_parallel_server
＋↑rap_parallel_server/8↑260×rap_max_client

11
XAリソースサービス
MSDTC連携機能を使用しない場合

↑（（672＋288×trn_tran_process_count）÷32）↑×32＋32

MSDTC連携機能を使用する場合

↑（（672＋xar_file_record_size×trn_tran_process_count）÷32）↑×32＋32

12
メッセージキューシステムコール分

16＋（72＋12×↑max_message_store_buflen÷512↑）
×（scd_server_count＋5）

13
リアルタイム統計情報サービス

64

（凡例）

I：SPP定義数（scd_server_countに指定した数のSPP定義数。見積もりの対象となるSPP定義は，ユーザサーバ（ファイル）名の昇順で抽出されます）

J：マルチスケジューラグループ数

K：マルチスケジューラデーモン数

L：サービス単位の閉塞管理をするように指定したSPP定義数（SPP詳細設定）

M：サービス単位にスケジュールサービスの動作を指定したSPP定義数（SPP詳細設定）

scd_server_count：SPP数（システム環境設定）

scd_hold_recovery_count：閉塞状態を引き継ぐサーバ，サービス数（システム環境設定）

message_store_buflen：サービス要求データ格納プール長（SPP環境設定）

trn_tran_process_count：トランザクションブランチ数（システム環境設定）

server_count：SUP数＋SPP数（システム環境設定）

name_total_size：サービス情報領域の大きさ（システム環境設定－RPC詳細設定）

name_cache_size：サービス情報キャッシュ領域の大きさ（システム環境設定－RPC詳細設定）

rap_parallel_server：RAPサービスのプロセス数（RAPサービス環境設定）

rap_max_client：最大クライアント数（RAPサービス環境設定）

xar_file_record_size：XARファイルのレコード長（XAリソースサービス環境設定）

max_message_store_buflen：サービス要求データ格納プール長（SPP環境設定）の最大値

↑↑：小数点以下を切り上げます。

↓↓：小数点以下を切り捨てます。

表F-2　動的共用メモリのサイズの算出法

項番
コンポーネント名
サイズまたはサイズ算出式（単位：バイト）

1
リアルタイム統計情報サービス

304＋（↑（4×rts_service_max）／8↑×8）
＋（104×（rts_service_max＋1））
＋（144×rts_item_max×（rts_service_max＋1））

（凡例）

rts_service_max：リアルタイム統計情報サービスで，統計情報を取得する対象の最大数（リアルタイム統計情報サービス設定）

rts_item_max：リアルタイム統計情報サービスで，一つの取得対象で統計情報を取得できるイベントの最大数（リアルタイム統計情報サービス設定）

↑↑：小数点以下を切り上げます。

付録F.2　ステータスファイル容量の見積もり式

＜この項の構成＞

(1)　ステータスファイルのレコード数

(2)　ステータスファイルの容量

(1)　ステータスファイルのレコード数

TP1/LiNKシステムでのシステムサーバが，システム開始から終了までに必要なステータスファイルのレコード数は，次に示す式に従って自動的にシステムの開始時に確保されます。計算式の単位は，レコード数です。

（各サービスに必要なレコード数※1の総和＋ステータスファイルの管理に必要なレコード数※2の総和）×1.2※3

注※1

↑（表F-3に示す「1キー当たりのステータスファイル使用容量」
÷（32768－40））↑×（表F-3に示す「「キー数」）
↑↑は，小数点以下を切り上げます。

注※2

↑（各サービスに必要なレコード数＋8776
＋↑（8192÷（32768－40））↑×16）÷（32768－40）↑
↑↑は，小数点以下を切り上げます。

注※3

安全値です。

表F-3　各サービスの1キー当たりのステータスファイル使用量とキー数

項番
項目
1キー当たりのステータスファイル使用量（単位：バイト）
キー数

1
システムマネジャ

A×128＋2432

1

2
スケジュールサービス

B×144＋128

1

3
トランザクションジャーナルサービス

32＋448＋128×（RM名＋RM拡張子の数）＋4096）×10

C

4
トランザクションサービス

256＋1220×（RM名＋RM拡張子の数）

1

5
XAリソースサービス

64

1

（凡例）

A：SUP数（システム環境設定）＋SPP数（システム環境設定）＋54

B：SPP数（システム環境設定）

C：↑トランザクションブランチ数（システム環境設定）÷10↑

　↑↑は，小数点以下を切り上げます。

(2)　ステータスファイルの容量

ステータスファイルの容量は次に示す算出式で求めます。

ステータスファイルの容量（単位：バイト）＝（必要なレコード数）×32768×2

TP1/Messagingのステータスファイルの容量は，マニュアル「TP1/Messaging 使用の手引」を基に算出して加算してください。

付録F.3　稼働統計情報ファイル容量の見積もり式

TP1/LiNKシステムでの稼働統計情報ファイルの容量を見積もるために，次に示す式でオンライン開始から終了までに発生する統計情報のジャーナル総量を求めます。

稼働統計情報ファイルの容量（単位：バイト）
＝オンライン開始から終了までに取得する統計情報のジャーナル量※
＋4096
×（オンライン開始から終了までにUAPから呼び出すTP1/LiNKのRPC回数の総和）

注※

オンライン開始から終了までに取得する統計情報のジャーナル量は，次に示す式で求めます。

（↑（j＋240）÷4096↑×nb＋↑（（b－j×nb）＋240）÷4096↑）×4096×N

（凡例）

↑↑：小数点以下を切り上げます。

j：32000

nb：↓b÷j↓

　↓↓は，小数点以下を切り捨てます。

b：（80＋ak×24）×as

ak：dcstatsコマンドの-kオプションに指定した統計情報種別を数値にしたもの。次の数値に置き換わります（-kオプションの指定を省略した場合は117）。

　rpc：4

　prc：3

　nam：3

　scd：4

　trn：2

　osl：19

as：dcstatsコマンドに指定したユーザサーバ数に関する値（何も指定しない場合は1）。

　-aオプションを指定した場合：全ユーザサーバ数（SUP数＋SPP数）＋1

　-sオプションを指定した場合：dcstatsコマンドに指定したユーザサーバ数＋1

　-aオプションまたは-sオプションを指定しない場合で，dcstatsコマンドにユーザサーバを指定した場合：指定したユーザサーバ数

N：稼働統計開始から終了までの時間を，取得間隔時間の指定値で割った値（統計情報の取得回数）

実際に用意する稼働統計情報ファイルの総容量は，次に示す式で求めます。

稼働統計情報ファイルの総容量（単位：バイト）
＝稼働統計情報ファイルの容量×1.2（安全値）＋81920

付録G　バージョンアップ時の変更点

各バージョンでの変更点を次に示す分類ごとに示します。

GUI，関数，定義およびコマンドの追加と削除

動作の変更

GUI，関数，定義およびコマンドのデフォルト値の変更

＜この節の構成＞

付録G.1　07-06での変更点

付録G.2　07-02での変更点

付録G.3　07-01での変更点

付録G.4　07-00での変更点

付録G.1　07-06での変更点

TP1/LiNK 07-06でのGUI，関数，定義およびコマンドの追加と削除を次の表に示します。

表G-1　TP1/LiNK 07-06でのGUI，関数，定義およびコマンドの追加と削除

種別
分類
内容

追加
GUI
［システム環境設定］ウィンドウの［システムを構成するノード］欄に［ノード自動追加機能設定(4)...］ボタンを追加

［RPC詳細設定］ダイアログボックスの［ネームサービス］タブに［他ノードのサービス情報の有効時間(O)］テキストボックスを追加

［RPC詳細設定］ダイアログボックスの［ソケット］タブに［TCP/IPの受信バッファサイズ(H)］テキストボックスを追加

［RPC詳細設定］ダイアログボックスの［ソケット］タブに［TCP/IPの送信バッファサイズ(O)］テキストボックスを追加

［ノード自動追加機能設定］ダイアログボックスを追加

［リソースマネジャ拡張子設定］ダイアログボックスを追加

関数
dc_trn_rm_select

CBLDCTRN('RMSELECT')

定義
システム共通定義

fil_prf_trace_delay_timeオペランド

fil_prf_trace_optionオペランド

rapリスナーサービス定義

scs_prf_trace_levelオペランド

コマンド
prfedコマンド

-vオプション

prfgetコマンド

-fオプションの指定値に_flを追加

trncmtコマンド

-qオプション

trnrbkコマンド

-qオプション

trnfgtコマンド

-qオプション

dcalzprfコマンド

nammstrコマンド

namndoptコマンド

namndrmコマンド

namnldspコマンド

namsvinfコマンド

-xオプション

削除
なし

TP1/LiNK 07-06での動作の変更を次の表に示します。

表G-2　TP1/LiNK 07-06での動作の変更

分類
内容

GUI
［システム環境設定］ウィンドウの［ノード名(N)］にサービス情報優先度指定機能(:high)を指定できるように変更

［RPC詳細設定］ダイアログボックス［ネームサービス］タブの［ドメイン定義ファイルを使用する(F)］で使用有無を決定するドメイン定義ファイルに，優先選択ノードの定義ファイルを追加

Microsoft SQL Serverでも設定できるように［OPEN，CLOSE文字列一覧］および［OPEN，CLOSE文字列］ダイアログボックスを変更

［SPP詳細設定］ダイアログボックスの［トランザクション］タブの［リソースマネジャ拡張子(D)］テキストボックスを［リソースマネジャ拡張子設定(D)...］ボタンに変更

［SPP詳細設定］ダイアログボックスの［RPC］タブの［TCP/IPの受信バッファサイズ(H)］テキストボックスに0を指定できるように変更

［SPP詳細設定］ダイアログボックスの［RPC］タブの［TCP/IPの送信バッファサイズ(O)］テキストボックスに0を指定できるように変更

［SUP詳細設定］ダイアログボックスの［トランザクション］タブの［リソースマネジャ拡張子(D)］テキストボックスを［リソースマネジャ拡張子設定(D)...］ボタンに変更

［SUP詳細設定］ダイアログボックスの［RPC］タブの［TCP/IPの受信バッファサイズ(H)］テキストボックスに0を指定できるように変更

［SUP詳細設定］ダイアログボックスの［RPC］タブの［TCP/IPの送信バッファサイズ(O)］テキストボックスに0を指定できるように変更

定義
性能検証用トレース取得サービスの稼働数，および関連する定義を変更

コマンド
次のコマンドの出力形式を変更

namsvinf

メッセージ
KFCA26954-W，KFCA26956-W，KFCA26965-E，KFCA27790-W

出力情報に，送信元IPアドレスと送信元ポート番号の情報を追加

KFCA00974-I，KFCA00976-I，KFCA00977-I

出力情報に-qオプションを追加

その他
次に示すイベントトレース情報を取得するように変更

FILイベントトレース

静的共用メモリの算出式を変更

付録G.2　07-02での変更点

TP1/LiNK 07-02でのGUI，関数，定義およびコマンドの追加と削除を次の表に示します。

表G-3　TP1/LiNK 07-02でのGUI，関数，定義およびコマンドの追加と削除

種別
分類
内容

追加
GUI
［SPP環境設定］ダイアログボックスに［UAP共用ライブラリ(DLL)名(F)］テキストボックスを追加

［SPP詳細設定］ダイアログボックスの［閉塞］タブに［サービス単位の閉塞管理をする(S)］チェックボックスを追加

［SPP詳細設定］ダイアログボックスの［閉塞］タブに［連続サービス異常終了限界経過時間(T)］テキストボックスを追加

［SPP詳細設定］ダイアログボックスの［サービス関数］タブに［サービス単位にスケジュールサービスの動作を指定］欄を追加

［システム環境設定］ウィンドウに［閉塞状態を引き継ぐサーバ，サービス数(1)］スピンボックスを追加

［TP1/LiNKアプリケーション管理SPP］ウィンドウに［サービス(V)...］ボタンを追加

［サービス閉塞管理］ダイアログボックスを追加

［リアルタイム取得項目詳細］ダイアログボックスで次のスケジュール情報イベント項目を追加

サービス単位のスケジュール待ち

サービス単位のメッセージ格納バッファプールの使用中サイズ

同時実行サービス数

［RAPサービス詳細設定］ダイアログボックスの［応答時間］タブに［最大応答待ち時間(T)］テキストボックスを追加

［RAPサービス詳細設定］ダイアログボックスの［その他］タブに［rapリスナー終了時のコネクション切断待ち時間(T)］テキストボックスを追加

［RAPサービス詳細設定］ダイアログボックスの［その他］タブに［rapサーバ割り当て待ち要求の滞留監視時間(S)］テキストボックスを追加

［RAPサービス詳細設定］ダイアログボックスの［その他］タブに［滞留警告メッセージの出力間隔(W)］テキストボックスを追加

関数
dc_log_audit_print

CBLDCADT('PRINT ')

定義
システム共通定義

nam_prf_trace_levelオペランド

XAリソースサービス定義

xar_prf_trace_levelオペランド

XAR性能検証用トレース定義

prf_file_sizeオペランド

プロセスサービス定義

prc_prf_traceオペランド

ログサービス定義

log_audit_outオペランド

log_audit_pathオペランド

log_audit_sizeオペランド

log_audit_countオペランド

log_audit_messageオペランド

rapリスナーサービス定義

log_audit_out_suppressオペランド

log_audit_messageオペランド

ユーザサービスデフォルト定義

log_audit_out_suppressオペランド

log_audit_messageオペランド

ユーザサービス定義

log_audit_out_suppressオペランド

log_audit_messageオペランド

コマンド
dcauditsetupコマンド

prfgetコマンド

-fオプションの指定値に_nm，_xr，_pr

nambladコマンド

scdlsコマンド

-cオプション

-aeオプション

-eオプション

-tオプション

削除
なし

TP1/LiNK 07-02での動作の変更を次の表に示します。

表G-4　TP1/LiNK 07-02での動作の変更

分類 | 内容
GUI | なし
関数 | なし
定義 | なし
コマンド | なし
メッセージ | なし
その他 | 監査ログ機能を追加
rapクライアントからの要求が，rapサーバ割り当て待ちで［RAPサービス詳細設定］ダイアログボックスの［滞留警告メッセージの出力間隔(W)］の指定値を超えて滞留した場合に，KFCA27764-Wメッセージを出力するように変更
リアルタイム統計情報サービスの開始時に，RTSログファイルのバックアップファイルを作成するように変更

TP1/LiNK 07-02でのGUI，関数，定義およびコマンドのデフォルト値の変更はありません。

付録G.3　07-01での変更点

TP1/LiNK 07-01でのGUI，関数，定義およびコマンドの追加と削除を次の表に示します。

表G-5　TP1/LiNK 07-01でのGUI，関数，定義およびコマンドの追加と削除

種別
分類
内容

追加
GUI
［XAリソースサービス環境設定］ダイアログボックスに［MSDTC連携機能を使用する(M)］チェックボックスを追加

［XAリソースサービス環境設定］ダイアログボックスに［XARファイルのレコード長(R)］テキストボックスを追加

関数
なし

定義
なし

コマンド
dcpplistコマンド

dcrasgetコマンド

xarlsコマンドの-rオプション

その他
XAリソースサービスを使用したRPCコールにデータ圧縮機能を追加

変更
GUI
なし

関数
なし

定義
なし

コマンド
xarforceコマンド

-tオプションに指定する「OpenTP1トランザクションID」の最大文字数（56文字）を80文字に拡大

-uオプションに指定する「クライアントトランザクションID」の最大文字数（256文字）を280文字に拡大

xarlsコマンド

表示する「OpenTP1トランザクションID」の最大文字数（56文字）を80文字に拡大

表示する「クライアントトランザクションID」の最大文字数（256文字）を280文字に拡大

TP1/LiNK 07-01での動作の変更を次の表に示します。

表G-6　TP1/LiNK 07-01での動作の変更

分類
内容

GUI
なし

関数
なし

定義
なし

コマンド
rtseditコマンドの-mオプションの出力結果にRTSログファイルのバージョン情報を追加

xarlsコマンドの-cオプションの出力結果に「DID情報」，「ノードID情報」，および「MSDTC連携で使用する回復情報」を追加

メッセージ
自ノードと同じノード識別子を指定したノードから通信を受信した場合に，KFCA00677-Wメッセージを出力するように変更

その他
rapリスナーおよびRTSSPP（リアルタイム統計情報サービスの拡張機能）に対して，次に示すコマンドが有効にならないように変更
scdchprc，scdhold，scdrles，scdrsprc

XAリソースサービスで連携するアプリケーションサーバからのEnd要求で内部矛盾が発生した場合，rapサーバは，次に示すアボートコードで終了して，トランザクション処理をロールバックオンリーに遷移するように仕様を改善
Jend006，Jend007，Jend008，Jend009，Jend010，Jend011

TP1/LiNK 07-01でのGUI，関数，定義およびコマンドのデフォルト値の変更はありません。

付録G.4　07-00での変更点

TP1/LiNK 07-00でのGUI，関数，定義およびコマンドの追加と削除を次の表に示します。

表G-7　TP1/LiNK 07-00でのGUI，関数，定義およびコマンドの追加と削除

種別 | 分類 | 内容
追加 | GUI | RPC詳細設定ダイアログボックスの応答待ち時間タグに［コネクション確立監視時間(W)］テキストボックスを追加
RPC詳細設定ダイアログボックスのネームサービスタグに［ノード監視機能を使用する(C)］ドロップダウンリストボックスを追加
RPC詳細設定ダイアログボックスのネームサービスタグに［ノード監視間隔時間(V)］テキストボックスを追加
RPC詳細設定ダイアログボックスのネームサービスタグに［ノードダウンを検知するまでの最大待ち時間(W)］テキストボックスを追加
RPC詳細設定ダイアログボックスのその他タグに［RPC送受信電文の最大長(M)］テキストボックスを追加
［システム環境設定］ウィンドウに［リアルタイム統計情報の取得］欄（［サービス設定(F)...］ボタン，［取得項目設定(H)...］ボタン）を追加
［リアルタイム統計情報サービス設定］ダイアログボックス
［リアルタイム取得項目定義ファイル一覧］ダイアログボックス
［リアルタイム統計情報取得対象定義］ダイアログボックス
［リアルタイム取得項目定義］ダイアログボックス
［リアルタイム取得項目詳細］ダイアログボックス
関数 | dc_rts_utrace_put
CBLDCRTS('RTSPUT ')
定義 | なし
コマンド | rtseditコマンド
rtslsコマンド
rtsstatsコマンド
dcsetupmlコマンド
dcdlsコマンド
dcmakeconコマンド
削除 | なし

TP1/LiNK 07-00での動作の変更を次の表に示します。

表G-8　TP1/LiNK 07-00での動作の変更

分類 | 内容
GUI | なし
関数 | なし
定義 | なし
コマンド | なし
メッセージ | KFCA00107-Eメッセージの詳細情報を，モジュール名称からOpenTP1ファイルシステム名に変更
KFCA00854-Eメッセージに「格納できなかったメッセージサイズ」の情報を追加
その他 | JP1/AJS2-SO用サンプルシナリオテンプレートのコマンド優先度（「なし」）を「3」に変更
マルチOpenTP1セットアップ方式を変更

TP1/LiNK 07-00でのGUI，関数，定義およびコマンドのデフォルト値の変更はありません。

付録H　TP1/LiNK Q&A

TP1/LiNKを操作する上で疑問が起こりやすい内容について，Q&A形式で説明します。TP1/LiNKを使うときの問題解決のヒントとして活用してください。

Q.1

OpenTP1管理者を決めなければいけないのはなぜですか。OSの最高権限を持つユーザ（システム管理者など）がOpenTP1管理者を兼ねてはいけませんか。

A.1

システム管理者（Administrators）以上の権限があるユーザはすべてTP1/LiNKを操作できるので，Windowsで認証できるようにする必要があります。

また，OpenTP1管理者のパスワードが第三者に簡単に変更されないようにしておくことも重要です。

Q.2

TP1/LiNKを開始すると，システムメッセージが次々と表示されますが，どのメッセージが表示された時点でTP1/LiNKの開始処理が正常に終わったことになるのでしょうか。

A.2

TP1/LiNKが正常に開始したことを知らせるのは，メッセージID　KFCA01809-Iです。次にKFCA00806-Iが表示されて，ユーザサーバへのスケジュールが開始します。したがって，KFCA00806-Iが表示されることで，TP1/LiNKの開始処理が正常に終わったと見なしてください。

Q.3

アプリケーション（ユーザサーバ）の常駐プロセス数と非常駐プロセス数は，幾つずつ指定するのが適切でしょうか。

A.3

次に示す内容を参考にしてください。

常駐プロセス数の指定数

TP1/LiNKの稼働中に，そのユーザサーバへ同時にサービスが要求されたときに，同時に実行したい数を指定してください。

非常駐プロセス数の指定数

TP1/LiNKの処理がピークに達して，一定時間サービス要求が増えるときに，増える分のサービス数を指定してください。指定した数のプロセスがサービスの滞留数に応じて起動され，サービス要求を処理します。サービスの滞留数が減ってくると非常駐プロセスは停止されるため，オンラインの負荷が低いときには資源を節約できます。

サービスの滞留数の指定数

サービスの滞留数は，dc_rpc_call関数がタイムアウトになる時間（180秒）内にシステムで処理できる分の数を指定してください。

ユーザサーバのプロセスが常駐プロセスだけのときと，非常駐プロセスがあるときでは，次のように処理が異なります。

常駐プロセスだけのとき（非常駐プロセスがない）
サービスの滞留数で指定した数のサービス要求を，TP1/LiNKのシステムに滞留させます。先に処理しているサービス要求が終了してから，順次滞留しているサービス要求を処理します。

非常駐プロセスを指定してあるとき
（サービスの滞留数×起動プロセス数（常駐＋非常駐））で示す数だけのサービス要求をTP1/LiNKのシステムに滞留させ，サービスの滞留数の値まで滞留した時点で，非常駐プロセスがサービス要求を処理します。

Q.4

常駐プロセスと非常駐プロセスが起動するタイミングはいつですか。

A.4

次に示します。

常駐プロセスの起動と停止

TP1/LiNKと一緒に開始する指定のユーザサーバは，TP1/LiNKの開始処理が終わったときに常駐プロセスの起動が完了します。TP1/LiNKと一緒に開始しないユーザサーバは，ユーザサーバをオンライン中に開始するコマンドが正常に実行できたときに常駐プロセスの起動が完了します。常駐プロセスは，ユーザサーバが停止するとき（オペレータが停止するコマンドを実行，またはTP1/LiNKが終了するとき）に停止します。

非常駐プロセスの起動と停止

クライアントUAPからdc_rpc_call関数でサービスを要求され，次に示す条件をすべて満たしたときに，非常駐プロセスが起動します。

該当するユーザサーバの常駐プロセスがすべて処理中である。

サービスの滞留数が，指定した値に達した。

非常駐プロセスは，サービスの滞留数が指定した値以下になると，処理を終えたプロセスから順次停止します。

Q.5

SPPとSUPの運用の違いは何ですか。

A.5

SPPとSUPでは，開始方法には違いはありません。どちらもTP1/LiNKと一緒に開始させたり，TP1/LiNKの実行中に任意に開始させたりできます。開始させたあとには，SPPとSUPで違いがあります。

SPPは，TP1/LiNKのサービスを実現するアプリケーションです。そのため，効率的にサービス要求を処理できるように，複数のプロセスで実行できます（マルチサーバ）。また，クライアントからのサービス要求に意図的にエラーを返して不要な再実行を防げるように，SPPを閉塞したりオンライン中に終了したりできます。

SUPは，TP1/LiNKのサーバでクライアントの役割だけをするアプリケーションです。一つのプロセスだけで実行するため，マルチサーバは使えません。また，SUPを閉塞させることもできません。

Q.6

システムの運用中に，ディスク容量に空きがなくなることがあります。TP1/LiNKが使うファイルのうち，削除して差し支えないファイルはどれでしょうか。

A.6

TP1/LiNKが使うファイルのうち，次に示すファイルは削除しても運用には差し支えありません。ただし，いったん削除したファイルは回復できませんので注意してください。

UAPトレースファイル（%DCDIR%¥spool¥save¥trc¥フォルダ下のユーザサーバ名.nnnファイル（nnnはプロセスID））

RPCトレースファイル（%DCDIR%¥spool¥rpctr1，rpctr2，rpctrl，および%DCDIR%¥spool¥save¥rpctrc¥フォルダ下のファイル）

共用メモリダンプファイル（%DCDIR%¥spool¥shmdump）

退避コアファイル（%DCDIR%¥spool¥save¥フォルダ下のファイル）

Q.7

TP1/LiNKで使うデータのうち，バックアップを取る必要があるものを教えてください。

A.7

「2.2.3　バックアップを取得しておくフォルダ」で説明したファイルは，バックアップを取得しておくことをお勧めします。

バックアップを取るときは，TP1/LiNKをいったん停止させてください。TP1/LiNKの稼働中にバックアップを取るのは避けてください。

Q.8

TP1/LiNKで使う環境変数には，どのようなものがありますか。

A.8

TP1/LiNKでは，"DC"で始まる環境変数を使っています。TP1/LiNKで使う代表的な環境変数と，変数に定義してある内容を示します。

DCDIR（OpenTP1ホームディレクトリ）

DCCONFPATH（TP1/LiNKの定義ファイルを格納するフォルダ）

DCSVNAME（ユーザサーバ名）

DCSVGNAME（サービスグループ名（SPPの場合だけ参照できます））

そのほかにも，環境変数PATHには，TP1/LiNKのコマンドのサーチパスが設定してあります。これらの環境変数はすべてTP1/LiNKで設定されます。運用中にこれらの値を変更（再設定）しないでください。

環境変数を参照する時は，OSの機能を使ってください。

Q.9

TP1/LiNKを組み込んでセットアップするときに，環境変数DCDIRを設定する必要はありますか。

A.9

TP1/LiNKの組み込み時にはDCDIRを参照しないので，設定しておく必要はありません。A.8で示す環境変数は，TP1/LiNKのセットアップの過程で自動的に設定されます。

Q.10

トランザクションの処理からほかのマシンのユーザサーバへサービスを要求するとトランザクションの処理を拡張できますが，どの範囲まで拡張できますか。

A.10

TP1/LiNKまたはTP1/Server Baseのユーザサーバの場合は，トランザクション属性に指定しておけば，システム間にわたる処理をトランザクションにできます。これ以外のマシン間で通信する場合は，トランザクション処理にはできません。なお，TP1/LiNKでは一つのトランザクションブランチから生成する子トランザクションブランチ（発行するdc_rpc_call関数）の最大数は32です。

Q.11

TP1/LiNKとTP1/Server Baseでは，何が異なるのでしょうか。

A.11

TP1/LiNKは，OpenTP1システムを比較的小規模な部門に適用できるようにしています。そのため，TP1/Server Baseに比べ，使える機能に制限があります。より大規模なシステムでオンライントランザクション機能を構築する場合には，TP1/Server Baseへのアップグレードをお勧めします。TP1/Server Baseが使える適用OSについては，OpenTP1のマニュアルを参照するか，当社社員または当社営業部員にお尋ねください。

Q.12

TP1/LiNKで使うデータベースのセキュリティは，どのように管理しているのでしょうか。

A.12

TP1/LiNKでは，データベースのアクセスでセキュリティのチェックはしていません。DBMSやOSで使えるセキュリティの機能で対処してください。

Q.13

マニュアルやヘルプのほかにTP1/LiNKに関する情報を知りたいときには，どうしたらよいですか。

A.13

当社社員または当社営業部員にお尋ねください。

付録I　用語解説

英字｜ア行｜カ行｜サ行｜タ行｜ナ行｜ハ行｜マ行｜ヤ行｜ラ行

英字

AP（Application Program）

TP1/LiNKの業務処理を総称してアプリケーションといいます。アプリケーションとして作成するプログラムをアプリケーションプログラム（AP）またはユーザアプリケーションプログラム（UAP）といいます。アプリケーションプログラムをTP1/LiNKに登録して，サーバとして業務を実行するプロセスをユーザサーバといいます。

CUP（Client User Program）

OpenTP1クライアント機能のアプリケーションプログラムのことです。TP1/LiNKのサーバに，リモートプロシジャコールを使ってサービスを要求します。CUPの詳細については，マニュアル「OpenTP1 クライアント使用の手引 TP1/Client/W，TP1/Client/P編」，またはマニュアル「OpenTP1 クライアント使用の手引 TP1/Client/J編」を参照してください。

DBMS（Database Management System）

データベースを管理するためのソフトウェアのことです。DBMSは，複数の利用者が同時にデータを更新しても，矛盾が起こらないように管理しています。さらに，セキュリティ機能を備えたDBMSもあります。TP1/LiNKをDBMSと連携して使うことで，より効率の良いクライアント／サーバシステムを構築できます。

DTP（Distributed Transaction Processing）モデル

オープンシステムの標準化を目的とした団体であるX/Openが規定する，分散処理システムモデルのことです。DTPモデルは，トランザクション処理を管理，実行するトランザクションマネジャ（TM），各種資源を管理するリソースマネジャ（RM），および業務処理をするアプリケーション（AP）から構成されます。また，アプリケーション間の通信を管理するコミュニケーションリソースマネジャ（CRM）もDTPモデルに含まれます。

MQI（Message Queue Interface）

メッセージキューイング機能を使った通信をする場合に，アプリケーションで使う命令文（API）のことです。MQIは，WebSphere MQで標準化しています。

MQシステム

メッセージキューイング機能のキューマネジャがあるシステム（ノード）のことです。

OpenTP1管理者

TP1/LiNKを管理する，OSの利用者のことです。setup.exeを実行して，TP1/LiNKをセットアップする操作をしたシステム管理者がOpenTP1管理者となります（Administrators以上のユーザはすべてOpenTP1管理者と同じ権限になります）。

OpenTP1管理者は，TP1/LiNKを使う上で重要な権限を持つユーザです。システムの機密保護上，利用者名称にはパスワードを必ず設定して，限られたユーザだけがOpenTP1管理者の利用者名称を使えるようにしてください。

OpenTP1ホームディレクトリ

TP1/LiNKで使う各種フォルダやファイルを格納しているディレクトリのことです。TP1/LiNKを組み込むときには，OpenTP1ホームディレクトリのフォルダ名（ディレクトリ名）を指定します。

TP1/LiNKでは，OpenTP1ホームディレクトリをDCDIRという環境変数で管理しています。

RAPサービス

リモートAPI機能を使うときに必要な，TP1/LiNKのサービスのことです。RAPサービスはクライアントから来るAPIをいったん受け取って，TP1/LiNKのユーザサーバへのサービス要求を代行します。RAPサービスは，ユーザサーバ（SUP）と同じ操作で開始したり終了したりできます。

TP1/LiNKのシステムでは，OpenTP1のリモートAPI機能でのrapリスナーとrapサーバを総称してRAPサービスと表記します。

RM（Resource Manager）

分散処理システムで資源を管理するソフトウェア製品の総称です。TP1/LiNKでは，次に示すソフトウェア製品をリソースマネジャとして使えます。

OpenTP1のリソースマネジャ
TP1/Messaging，TP1/Message Queue※

市販アプリケーションソフトのリソースマネジャ
ORACLEなど各種DBMS，Microsoft SQL Server，HiRDB

OpenTP1のリソースマネジャを使う場合は，TP1/LiNKの環境設定でリソースマネジャ名を登録する必要があります。また，トランザクション処理のアプリケーションからリソースマネジャへアクセスするときは，トランザクション制御用オブジェクトファイルが必要です。

注※

TP1/LiNKのVersion 7に対応するTP1/Message Queueは，現時点では未発行です。発行時期をご確認ください。

RPC（Remote Procedure Call）

アプリケーションのプロセス間で通信する機能のことです。TP1/LiNKのアプリケーションは，ほかのシステムとRPCで通信します。RPCでサービスを要求するときは，通信相手がネットワークのどのノードにあるかを意識する必要はありません。

SPP（Service Providing Program）

TP1/LiNKのアプリケーションのうち，ファイルへのアクセスなどサーバの役割をするプログラムのことです。

SUP（Service Using Program）

TP1/LiNKのアプリケーションのうち，SPPに処理を要求するだけの，クライアント専用のプログラムのことです。

TM（Transaction Manager）

トランザクション処理を管理および実行する機能のことです。

TP（Transaction Processing）モニタ

トランザクション処理の監視および制御をするソフトウェアのことです。オンラインシステムを構築するための基盤となる機能を提供しています。TPモニタには，ほかのシステムとデータをやり取りするための通信機能，トランザクションを効率的に処理するためのスケジュール機能，トラブルが起こってもデータとトランザクションの消失や不整合を防ぐ回復機能があります。

TP1/LiNKでは，TPモニタの機能をオプションで提供しています。TP1/LiNKをTPモニタとして使うときは，環境設定でトランザクション機能を使う指定をしてください。

UAP（User Application Program）

アプリケーションの業務をプログラムとして作成したものです。アプリケーションプログラムともいいます。UAPはTP1/LiNKのユーザサーバです。

UAP共用ライブラリ

UAP共用ライブラリとは，ダイナミックリンクライブラリ（DLL）と同義です。

一般に拡張子が「.dll」であるファイルを指します。

WebSphere MQ

米国IBM社が開発した，メッセージ蓄積型の通信を実現する製品群のことです。TP1/LiNKでは，TP1/Message Queue※を使うとメッセージ蓄積型の通信ができるようになります。

注※

TP1/LiNKのVersion 7に対応するTP1/Message Queueは，現時点では未発行です。発行時期をご確認ください。

ア行

アプリケーション

→AP（Application Program）を参照してください。

カ行

稼働統計情報

稼働中のユーザサーバおよびTP1/LiNKのシステムサービスに関する各種情報を稼働統計情報といいます。稼働統計情報を編集出力すると，TP1/LiNKの稼働状況を知ることができます。この情報を参照して，TP1/LiNKのシステム構成を検討できます。

環境変数

プログラムの処理で有効になる値を定義した変数のことです。TP1/LiNKで環境変数を定義するときは，該当するユーザサーバだけに有効になる環境変数（ローカルな環境変数）とTP1/LiNKのユーザサーバすべてで有効になる環境変数（グローバルな環境変数）を選べます。

監査ログ

システム構築者，運用者，および使用者がTP1/LiNKのプログラムに対して実行した操作，およびその操作に伴うプログラムの動作の履歴が出力されるファイルのことです。監査ログには「いつ」，「だれが」，「何をしたか」などが記録されます。そのため，システムの使用状況，不正アクセスなどを監査する資料として使用できます。

キューマネジャ

メッセージキューイング機能を管理するソフトウェア製品のことです。メッセージキューイング機能を使って通信するシステムには，キューマネジャが必要になります。TP1/LiNKでメッセージキューイング機能を使う場合は，TP1/Message Queue※がキューマネジャの役割をします。

注※

TP1/LiNKのVersion 7に対応するTP1/Message Queueは，現時点では未発行です。発行時期をご確認ください。

クライアント／サーバ

プログラムとプログラムの通信方法の一つです。業務処理を依頼する方をクライアント，要求を受けて業務を実行する方をサーバといいます。

クライアント／サーバとは，プログラム間の相対的な関係を示す用語です。サーバからさらにサーバへサービスを要求したときは，サービスを要求したサーバはクライアントになります。

サ行

サービス

クライアント／サーバシステムでは，クライアントから要求された手続きを総称してサービスといいます。アプリケーションのコーディング時には，C言語の場合は関数として，COBOL言語の場合はサブルーチンとして，サービスを作成します。

サービス関数動的ローディング機能

UAP共用ライブラリ化したサービス関数を，動的にローディングする（読み込む）機能のことです。UAP共用ライブラリ化とは，UAPのソースファイルを翻訳（コンパイル）して作成したUAPオブジェクトファイルを結合（リンケージ）して，共用ライブラリとしてまとめることです。

サービス関数動的ローディング機能を使うと，サービス関数を追加または削除する場合に，スタブの変更，およびSPPの実行形式ファイルの再生成をしなくても，［SPP環境設定］ダイアログボックスの［UAP共用ライブラリ(DLL)名(F)］を変更するだけでサービス関数を追加または削除できます。SPP起動時にサービス関数をローディングするため，SPPの実行形式ファイル作成時には，スタブおよびサービス関数は不要です。

サービスグループ

TP1/LiNKのアプリケーション（SPP）は，クライアントからの手続き要求を処理するサービスの集合です。このことから，アプリケーションのことをサービスグループといいます。TP1/LiNKでは，サービスグループはアプリケーションの実行形式ファイルであり，ユーザサーバでもあります。TP1/LiNKのリモートプロシジャコールの関数dc_rpc_callでは，サービスを要求するときにサービスグループ名とサービス名を引数に設定します。

システムサービス

TP1/LiNKのアプリケーションをユーザサーバということに対して，TP1/LiNKの個々の機能を指してシステムサービスといいます。システムサービスには，TP1/LiNKの状態を管理するステータスサービスやトランザクション機能を管理するトランザクションサービスなどがあります。

シナリオ

シナリオテンプレートを業務に関連付けて運用手順として実行できるようにしたものです。JP1/AJS2 - Scenario Operationが，シナリオテンプレートをシナリオとしてJP1/AJSに登録し，JP1/AJS2が実行します。

シナリオジョブ

シナリオジョブテンプレートを業務に関連付けて運用手順として実行できるようにしたものです。JP1/AJS2 - Scenario Operationが使用します。シナリオ中に定義されたコマンド，シェルスクリプト，Windows実行ファイルなどを定義したオブジェクトです。

シナリオジョブテンプレート

JP1/AJS2 - Scenario Operationが使用するシナリオテンプレートの部品です。シナリオテンプレート中に定義されたコマンド，シェルスクリプト，Windows実行ファイルなどを定義しています。TP1/LiNKでは，シナリオテンプレートを利用する運用で使用します。

シナリオテンプレート

運用手順を，テンプレート（ひな形）として部品化したものです。JP1/AJS2 - Scenario Operationが使用します。TP1/LiNKでは，シナリオテンプレートを利用する運用で使用します。

シナリオ変数

JP1/AJS2 - Scenario Operationで，運用環境によって変化する情報を，シナリオに応じてあらかじめ設定しておく変数です。TP1/LiNKのフォルダ情報などを設定します。

シナリオライブラリ

JP1/AJS2 - Scenario Operationで，シナリオテンプレートを管理するフォルダです。

スケジュール機能

ユーザサーバを負荷の量に応じて起動させたり停止させたりする，TP1/LiNKの機能です。スケジュールとプロセスを管理することで，負荷を分散したり，使うプロセスを抑えたりでき，プロセスが増え過ぎて性能が下がるのを避けることができます。

スタブ

リモートプロシジャコールに必要な，アプリケーションにリンケージするライブラリのことです。サービスを提供するユーザサーバ（SPP）を実行形式プログラムにするときに，スタブをリンケージさせます。

スタブのソースファイルは，ユーザサーバの実行環境を設定するときに自動的に生成されます。

スタブについては，マニュアル「OpenTP1 プログラム作成の手引」を参照してください。

ステータスサービス

TP1/LiNKのシステムサービスの一つで，アプリケーションの実行状態など，システム内の各種情報を管理します。

タ行

ディレクトリ【UNIXの用語】

UNIX OSの木構造のファイル管理のうち，ファイルを持つテーブルの役割をするファイルです。最上位のディレクトリをルートディレクトリといい，各ディレクトリはルートディレクトリの下に作成します。ルートディレクトリはスラント（/）で表記します。

ディレクトリの下にはファイルを格納できます。ディレクトリの下にディレクトリを作成することもできます。

Windowsでは，ディレクトリのことをフォルダといいます。

データベースマネジメントシステム

→DBMS（Database Management System）を参照してください

同期点

トランザクション処理の区切りのことです。トランザクション処理を有効にする同期点処理をコミットといい，トランザクション処理を無効にする同期点処理をロールバックといいます。アプリケーションプログラムの同期点処理については，マニュアル「OpenTP1 プログラム作成の手引」のトランザクション制御に関する説明を参照してください。

ドメイン

ネットワークを論理的に区切った単位のことです。

ドメイン内のTP1/LiNKシステムをサーバマネージャで開始できます。

トランザクション

ファイルからデータを読み出して，変更したデータを書き込む処理（更新処理）では，データの一貫性を保持するため，途中で分けられません。このような処理の単位をトランザクションといいます。トランザクションの処理結果は，有効にするか無効にするかのどちらかに必ず決められます。

トランザクション機能

TP1/LiNKのアプリケーションの処理を，トランザクションとする機能です。トランザクション機能を使うと，TP1/LiNKをTPモニタとして使えます。

トランザクションサービス

TP1/LiNKのシステムサービスの一つで，トランザクション処理で使う資源を管理します。一部のリソースマネジャ（例　HiRDB）とTP1/LiNKをXAインタフェースで接続するときは，リソースマネジャの環境を設定するときにトランザクションサービスの環境変数を設定する必要があります。

トランザクションマネジャ

→TM（Transaction Manager）を参照してください。

ナ行

ノード間負荷バランス機能

複数のノードで，同じサービスグループ名のユーザサーバがそのサービスグループ名でサービスを要求されたときに，どちらのノードのユーザサーバでも処理できるようにする負荷分散の形態です。ノードのスケジュール状態に応じて，より効果的に処理できるノードへ負荷を分散させます。ノード間負荷バランス機能については，マニュアル「OpenTP1 プログラム作成の手引」を参照してください。

ハ行

プロセス

ユーザサーバまたはTP1/LiNKが，OSの作業領域を使う処理をプロセスといいます。TP1/LiNKでは，ユーザサーバのプロセスが必要以上に増えたり減ったりしないように，システムで使うプロセスの総数を管理しています。

閉塞

ユーザサーバが異常終了したときに，TP1/LiNKがスケジュールを中止することです。異常終了したユーザサーバを閉塞することで，クライアントからのサービス要求に意図的にエラーを返して，不要な再実行や応答待ちのタイムアウトを防ぐようにしています。

閉塞の対象になるユーザサーバはSPPです。SUPは閉塞の対象になりません。

TP1/LiNKの稼働中にコマンドを実行して，意図的にユーザサーバを閉塞することもできます。

異常終了した原因を対処したあとで再びスケジュールを開始するときは，閉塞を解除します。

マ行

マルチサーバ

ユーザサーバのプロセスを複数起動させて，複数のサービス要求を並行して処理する機能のことです。マルチサーバによって，アプリケーションの処理効率が上がります。

メッセージキューイング機能

米国IBM社が開発した，メッセージ蓄積型の通信手段のことです。アプリケーションが登録したメッセージをキューマネジャが送受信するため，システム間の通信手順や通信障害時の処理をユーザサーバで意識しなくて済みます。また，アプリケーションは任意のタイミングでメッセージを扱えるので，電子メールのような運用ができます。メッセージキューイング機能を使うには，TP1/LiNKのシステムにTP1/Message Queue※が必要です。アプリケーションからキューへアクセスするときには，WebSphere MQ標準のAPI（MQI Message Queue Interface）を使います。

注※

TP1/LiNKのVersion 7に対応するTP1/Message Queueは，現時点では未発行です。発行時期をご確認ください

メッセージ送受信

アプリケーションがメッセージの送信（SEND）または受信（RECEIVE）を要求する通信のことです。メッセージ送受信は，主にメインフレームで使います。TP1/LiNKでメッセージ送受信の通信をするときには，TP1/Messagingが必要です。

ヤ行

ユーザサーバ

TP1/LiNKのアプリケーション，またはTP1/LiNKのアプリケーションを実行するプロセスのことです。アプリケーションプログラムの実行形式ファイルが，TP1/LiNKのサーバの業務をすることからユーザサーバといいます。

ラ行

リアルタイム統計情報

システム全体，サーバおよびサービス単位で，リアルタイムに出力できる統計情報を，リアルタイム統計情報といいます。リアルタイム統計情報を出力することで，OpenTP1システムの稼働状況をリアルタイムに把握でき，システムの運用管理や障害復旧を迅速に行えます。

リアルタイム統計情報サービス

システムの稼働状況をリアルタイムに把握するためのリアルタイム統計情報を管理する機能のことです。

リソースマネジャ

→RM（Resource Manager）を参照してください。

リモートAPI機能

クライアントから実行したAPIをサーバで代行できるようにするTP1/LiNKの機能のことです。ファイアウォールを経由して通信するときに，リモートAPI機能を使います。

リモートAPI機能を使うときには，RAPサービスが必要です。

リモートプロシジャコール

→RPC（Remote Procedure Call）を参照してください。

索引

[記号]
[Ａ][Ｃ][Ｄ][Ｈ][Ｊ][Ｍ][Ｎ][Ｏ][Ｐ][Ｒ][Ｓ][Ｔ][Ｕ][Ｗ][Ｘ]
[ア行][カ行][サ行][タ行][ナ行][ハ行][マ行][ヤ行][ラ行]

(記号)

.NET Frameworkと連携したシステム

%DCDIR%¥jp1_template¥examples¥aplib¥フォルダ

%DCDIR%¥jp1_template¥examples¥conf¥フォルダ

%DCDIR%¥jp1_template¥examples¥source¥フォルダ

%DCDIR%¥jp1_template¥examples¥tools¥フォルダ

%DCDIR%¥sample¥template¥フォルダ

%DCDIR%¥sample¥tp1link¥フォルダ

(英字)

(Ａ)

AP〔用語解説〕

(Ｃ)

COBOL言語用テンプレート

CPUのトラブルの場合

CUP〔用語解説〕

(Ｄ)

DBMS〔用語解説〕

DBMSのサーバにTP1/LiNKを使ったクライアント／サーバシステム

dcauditsetup

dcdls

dcmakecon

dcsetupml

dcstats

dcsvstrt

DTP（Distributed Transaction Processing）モデル〔用語解説〕

(Ｈ)

HiRDB連携時の環境設定

(Ｊ)

J2EEで動作するアプリケーションサーバと連携したシステム

jnlcopy

jnlstts

jnlswpfg

JP1連携時の運用（JP1/Base，JP1/AJS，およびJP1/AJS2 - Scenario Operation）

JP1連携時の運用（PFM - Agent for OpenTP1）

(Ｍ)

MCF

Microsoft SQL Server連携時の環境設定

MQI〔用語解説〕

MQシステム〔用語解説〕

MSDTC連携機能

(Ｎ)

ntbstart

(Ｏ)

［OPEN，CLOSE文字列一覧］ダイアログボックス

［OPEN，CLOSE文字列］ダイアログボックス

Open，Close文字列の指定

OpenTP1_AddNode

OpenTP1_ChangeNodeID

OpenTP1_Deploy

OpenTP1_ScenarioAddNode

OpenTP1_ScenarioScaleout

OpenTP1_Start

OpenTP1_StartUAP

OpenTP1_Stop

OpenTP1_StopUAP

OpenTP1_Undeploy

OpenTP1_UpdateDomain

OpenTP1（TP1/Server Base）と連携したクライアント／サーバシステム

OpenTP1（TP1/Server Base）と連携したクライアント／サーバシステム（リモートプロシジャコールの例）

OpenTP1以外のリソースマネジャ連携時の実行環境設定

OpenTP1管理者

OpenTP1管理者〔用語解説〕

OpenTP1管理者が使うフォルダとファイルの一覧

OpenTP1管理者の決定

OpenTP1管理者の条件

OpenTP1ホームディレクトリ〔用語解説〕

Oracle連携時の環境設定

(Ｐ)

prcpthls

(Ｒ)

rapkill

rapサーバ ,[2]

rapサーバの限界監視時間の指定と強制停止

RAPサービス

RAPサービス〔用語解説〕

［RAPサービス環境］ウィンドウ

RAPサービス環境に関する設定の初期値

RAPサービス環境の設定

RAPサービスの開始

RAPサービスの環境設定

RAPサービスの終了

RAPサービスの詳細設定

RAPサービスの設定

RAPサービス名とポート番号の関係

rapリスナー ,[2] ,[3]

RM〔用語解説〕

RPC〔用語解説〕

［RPC詳細設定］ダイアログボックス

RPCトレースの出力形式

RPCトレースファイル

RPCトレースを編集出力できます

RTSSPP

RTSSUP

RTSログファイルのバックアップファイル

(Ｓ)

SPP〔用語解説〕

［SPP環境設定］ダイアログボックス

［SPP詳細設定］ダイアログボックス

SPPの作成手順

SPPの作成手順（サービス関数動的ローディング機能を使う場合）

SPPの作成手順（スタブを使う場合）

SPPの実行環境の初期値

SPPの実行環境の設定

SPPのプログラムの構成

SPPのプログラムの構成（スタブを使う場合）

SUP〔用語解説〕

［SUP環境設定］ダイアログボックス

［SUP詳細設定］ダイアログボックス

SUPの作成手順

SUPの実行環境の初期値

SUPの実行環境の設定

(Ｔ)

TM〔用語解説〕

TP（Transaction Processing）モニタ〔用語解説〕

TP1/Client/JのOpenTP1クライアント機能を使ったクライアント／サーバシステム

TP1/Client/WまたはTP1/Client/PのOpenTP1クライアント機能を使ったクライアント／サーバシステム

TP1/Extension 1

TP1/LiNK Q&A

［TP1/LiNK XARトランザクション情報］ダイアログボックス

［TP1/LiNKアプリケーション管理SPP］ウィンドウ ,[2]

［TP1/LiNKアプリケーション管理SUP］ウィンドウ ,[2]

TP1/LiNKインストールフォルダへのアクセス

TP1/LiNKオペレーション

［TP1/LiNKオペレーション］ウィンドウ

TP1/LiNKが異常終了したとき

TP1/LiNK拡張機能使用時の実行環境の設定

TP1/LiNKがクライアントになるときの指定

TP1/LiNKがサーバになるときの指定

TP1/LiNK稼働中のユーザサーバの操作

［TP1/LiNK稼働統計管理］ダイアログボックス

TP1/LiNKコントロール

［TP1/LiNKコントロール］ウィンドウ

［TP1/LiNKサーチパス］ダイアログボックス

TP1/LiNKで取得できるリアルタイム統計情報

TP1/LiNKでは使えない機能

TP1/LiNKとJP1，NETMの連携

TP1/LiNKとは

［TP1/LiNKトランザクション管理］ダイアログボックス

［TP1/LiNKトランザクション情報］ダイアログボックス

［TP1/LiNKトレース情報表示］ダイアログボックス

TP1/LiNKのアイコンとショートカットを確認

TP1/LiNKのアプリケーションプログラミングインタフェース

TP1/LiNKのインストール先フォルダ名の制限

TP1/LiNKの運用

TP1/LiNKの開始

TP1/LiNKの開始形態

TP1/LiNKの開始と終了

TP1/LiNKの稼働中にユーザサーバを入れ替えることができます

TP1/LiNKの環境設定とTP1/Server Baseシステムサービス定義との対応

TP1/LiNKの環境設定の定義ファイルが格納してあるフォルダ

TP1/LiNKの構成 ,[2] ,[3]

TP1/LiNKのコマンド一覧

TP1/LiNKのコマンドの早見表

TP1/LiNKのコンソールを設定

TP1/LiNKのサンプル

TP1/LiNKのサンプルが格納してあるフォルダ

TP1/LiNKのサンプルが格納してあるフォルダの内容

TP1/LiNKのサンプルを使うまでの手順

TP1/LiNKのシステムファイルや実行モジュールが破壊されたとき

TP1/LiNKの実行環境の確認

TP1/LiNKの実行環境の初期値

TP1/LiNKの実行環境の設定

TP1/LiNKの自動起動

TP1/LiNKの自動起動と手動起動

TP1/LiNKの終了形態

TP1/LiNKの手動起動

TP1/LiNKの状態を管理するファイルにトラブルが起こったとき

TP1/LiNKのショートカット

TP1/LiNKのセットアップ

TP1/LiNKの操作が応答待ちタイムアウトしたとき

TP1/LiNKのトラブルの場合

TP1/LiNKのフォルダの構成

TP1/LiNKのフォルダの内容

TP1/LiNKの連続運転に関する運用

［TP1/LiNKメッセージログ表示］ダイアログボックス

TP1/LiNKをWindowsから削除する方法

TP1/LiNKを開始します

TP1/LiNKを開始するには

TP1/LiNKを開始する方法

TP1/LiNKを開始する前にファイルを作成するフォルダ

TP1/LiNKを開始するまでに準備する内容

TP1/LiNKを開始できないとき

TP1/LiNKを組み込む場所を確認

TP1/LiNKを実行環境だけで運用する方法

TP1/LiNKを終了するには

TP1/LiNKを終了する方法

TP1/LiNKを終了できないとき

TP1/LiNKをセットアップし直す方法

TP1/LiNKを使ったクライアント／サーバシステムの利点

TP1/LiNKを使ったシステム構築の例

TP1/Message Queue

TP1/Messaging

TP1/Server Baseの構成

(Ｕ)

UAP〔用語解説〕

UAP共用ライブラリ ,[2]

UAP共用ライブラリ〔用語解説〕

UAP共用ライブラリの作成

UAPトレースの出力形式

UAPトレースの編集出力

UAPトレースファイル

UAPトレースを編集出力できます

UAPのコンパイルとリンケージ

uatdump

(Ｗ)

WebSphere MQ〔用語解説〕

Webサーバシステムの構成

Windowsを再起動

(Ｘ)

XARファイルに障害が発生した場合の運用

XAリソースサービス環境の設定

XAリソースサービスに関する運用

XAリソースサービスの運用

XAリソースサービスの開始

XAリソースサービスの管理

XAリソースサービスの再開始

XAリソースサービスの終了

XAリソースサービスのトランザクション管理

(ア行)

(あ)

アプリケーション〔用語解説〕

［アプリケーション環境SPP］ダイアログボックス

［アプリケーション環境SUP］ダイアログボックス

アプリケーション管理（SPP）

アプリケーション管理（SUP）

アプリケーションの実行

アプリケーションの準備

アプリケーションプログラミングインタフェースの機能

アプリケーションプログラム作成時の注意事項

アプリケーションプログラムに結合させるファイルを格納するフォルダ

アプリケーションプログラムに付ける名称

アプリケーションプログラムの概要

アプリケーションプログラムの実行環境を設定します

アプリケーションプログラムの種類

アプリケーションプログラムを作成します

アボートコードの内容

(い)

異常終了 ,[2]

インターネット／イントラネットを使った通信 ,[2]

(う)

ウィルス駆除プログラムの使用について

ウィンドウの操作

運用コマンド

(え)

エラーメッセージに出力される値

エントリポイント名

(お)

オートコネクトモード

［オブジェクト作成］ダイアログボックス

［オプション］ダイアログボックス

(カ行)

(か)

開始形態の種類

稼働統計情報

稼働統計情報〔用語解説〕

稼働統計情報の管理

稼働統計情報の出力

稼働統計情報の出力形式

稼働統計情報の取得

稼働統計情報の取得と編集出力の概要

稼働統計情報の種類

稼働統計情報の中間ファイルへの出力

稼働統計情報の編集出力 ,[2]

稼働統計情報ファイルのスワップ

稼働統計情報ファイル容量の見積もり式

稼働統計情報を取得するための指定

環境変数〔用語解説〕

監査イベントの出力情報（Windows版）

監査ログ

監査ログ〔用語解説〕

監査ログ機能使用時の設定

監査ログ機能に必要なフォルダとファイルの作成

監査ログ機能の環境設定

監査ログ機能を使用するときの実行環境の作成

監査ログ機能を使用するときの注意事項

監査ログ機能を使用するときの定義の変更

(き)

キューマネジャ〔用語解説〕

強制停止 ,[2]

業務で使うフォルダとファイル

共用メモリとファイル容量の見積もり式

共用メモリの見積もり式

(く)

クライアント／サーバ〔用語解説〕

クライアント（Webブラウザ）の構成

クライアント側のTP1/LiNKの設定

［クライアントサービス環境設定］ダイアログボックス

クライアントサービス環境の設定

クライアントのアプリケーションプログラム（SUP，CUP）

クライアントの構成 ,[2]

クライアントの役割だけをするプログラム（SUP）

クライアントユーザプログラム（CUP） ,[2]

クラスタ環境での実行環境の設定

(こ)

コマンド一覧

コマンドの入力形式

コマンドの入力方法

コマンドの早見表

コミット

(サ行)

(さ)

サーチパスの設定 ,[2]

サーバオプションを設定

サーバ側のTP1/LiNKの設定

サーバになるアプリケーションプログラム（SPP）

サーバの構成 ,[2]

サービス

サービス〔用語解説〕

サービス関数

サービス関数動的ローディング機能 ,[2]

サービス関数動的ローディング機能〔用語解説〕

サービス関数動的ローディング機能を使用するSPP

サービスグループ〔用語解説〕

サービスグループ名

サービス単位のスケジュール制御

サービスプログラム

［サービス閉塞管理］ダイアログボックス

サービス名

サービスを提供するプログラム（SPP）

サービスを利用するプログラム（SUP）

再開始（リラン）

削除したあとに残るフォルダ

削除する手順

参照するマニュアルの制限事項

サンプルシナリオテンプレートのカスタマイズ

サンプルシナリオテンプレートの登録

サンプルシナリオテンプレートの利用

サンプルのアプリケーションプログラムの仕様

サンプルのファイル構成

サンプルを使う手順

(し)

時刻変更に関する注意

システム運用管理機能JP1

［システム環境設定］ウィンドウ

［システム環境設定］ウィンドウに加算するRAPサービスのプロセス数

システム環境の設定

システム環境変数Pathを設定

システムサービス〔用語解説〕

システム統計情報

システム統計情報の出力形式

システム統計情報の取得開始，終了

実行環境を確認します

実行環境を設定したファイルをコピーします

実行形式ファイルをコピーします

実行形式ファイルを作成します

［自動起動設定］ダイアログボックス

自動起動の設定 ,[2] ,[3]

シナリオ

シナリオ〔用語解説〕

シナリオジョブ〔用語解説〕

シナリオジョブテンプレート〔用語解説〕

シナリオテンプレート

シナリオテンプレート〔用語解説〕

シナリオテンプレート定義ファイルが格納してあるフォルダ

シナリオテンプレートを利用したシステムの運用

シナリオの登録

シナリオ変数

シナリオ変数〔用語解説〕

シナリオライブラリ〔用語解説〕

終了形態の種類

常設コネクション

常駐プロセス

(す)

推奨する監査ログの取得項目

スケールアウトの運用

スケールインの運用

スケジュール機能〔用語解説〕

スケジュールサービスのポート番号を指定するとき

スケジュールの優先度

スケジュールの優先度の概要

スタブ

スタブ〔用語解説〕

スタブを使用するSPP

ステータスサービス〔用語解説〕

ステータスファイルが破壊されたとき

ステータスファイル容量の見積もり式

(せ)

正常開始

正常終了

性能検証用トレース

性能検証用トレース使用時の環境設定

セットアップしたときの初期値

セットアップの準備

セットアップの手順

セットアッププログラム（setup.exe）を起動

(タ行)

(た)

ダイナミックコネクションスケジュール機能

他ノードのサーバUAPにサービスを要求する概要

(つ)

通信障害が発生したとき

通信遅延時間統計情報

通信遅延時間統計情報の出力形式

(て)

停止

ディレクトリ〔用語解説〕

データベースとTP1/LiNKを連携したサーバの形態

データベースマネジメントシステム〔用語解説〕

(と)

同期応答型RPC

同期点〔用語解説〕

統合ネットワーク管理NETM

特長

特定のTP1/LiNKにコマンドを入力するためのコマンドプロンプトの作成

ドメイン〔用語解説〕

トラブルが起こったときに参照する情報

トラブルが起こったときは

トラブルの現象とその原因

トラブルの場合の処置

トランザクション

トランザクション〔用語解説〕

トランザクション機能〔用語解説〕

トランザクション機能に関する運用

トランザクションサービス〔用語解説〕

トランザクションサービスの環境変数の設定

トランザクション制御用オブジェクトファイルの作成

トランザクションの管理

トランザクションマネジャ〔用語解説〕

トレース情報の出力 ,[2]

(ナ行)

(な)

名前と会社名を指定

(に)

入力シナリオ変数

入力シナリオ変数から設定する環境変数

(の)

ノード間負荷バランス機能〔用語解説〕

(ハ行)

(は)

バックアップを取得しておくフォルダ

(ひ)

非応答型RPC

非オートコネクトモード

非常駐プロセス

非同期応答型RPC

(ふ)

ファイルのトラブルの場合

プロセス

プロセス〔用語解説〕

プロセスの種類

プロセスの設定

プロセスの負荷分散（マルチサーバ）

プロセスを制御する前提条件

(へ)

閉塞〔用語解説〕

ヘルプの使い方

(マ行)

(ま)

マニュアル「OpenTP1 プログラム作成の手引」を参照するときの注意

マルチOpenTP1

マルチOpenTP1のインストール状態の表示

マルチOpenTP1の運用

マルチOpenTP1の実行環境の設定

マルチOpenTP1のセットアップ

マルチOpenTP1のセットアップと削除 ,[2]

マルチOpenTP1を削除する方法

マルチサーバ

マルチサーバ〔用語解説〕

マルチサーバの概要

マルチスケジューラ機能

マルチスケジューラ機能使用時の環境設定

マルチホームドホスト形態での実行環境の設定

(め)

メイン関数

メインフレームと連携した通信 ,[2]

メインフレームの構成

メインプログラム

メッセージキューイング機能〔用語解説〕

メッセージキューイング機能を使った通信の概要

メッセージ送受信

メッセージ送受信〔用語解説〕

メッセージ送受信機能を使った通信の概要

メッセージ送受信用のアプリケーション

メッセージの形式

メッセージの詳細

メッセージログの概要

メッセージログのチェック

メッセージログの表示

メッセージログを取得する準備

メニューとアイコンの一覧

(ヤ行)

(ゆ)

ユーザサーバ

ユーザサーバ〔用語解説〕

ユーザサーバが異常終了したとき

ユーザサーバ環境に関する設定の初期値

ユーザサーバで使うプロセスの概要

ユーザサーバに関する情報のファイルが作成されるフォルダ

ユーザサーバの開始

ユーザサーバの開始と終了

ユーザサーバの環境設定（SPP）

ユーザサーバの環境設定（SUP）

ユーザサーバのサーチパスの表示

ユーザサーバのサーチパスを変更できます

ユーザサーバの自動起動

ユーザサーバの自動起動と手動起動

ユーザサーバの終了形態

ユーザサーバの終了状態とTP1/LiNKの終了との関係

ユーザサーバの手動起動

ユーザサーバのスケジュールの状態を表示できます

ユーザサーバのスケジュールを閉塞できます

ユーザサーバのトラブルの場合

ユーザサーバの閉塞

ユーザサーバ名

ユーザサーバを開始する方法

ユーザサーバを開始できないとき

ユーザサーバを実行します

ユーザサーバを終了する方法

ユーザサーバを終了できないとき

ユーザサーバを閉塞する場合

［ユーザサービス環境設定］ダイアログボックス

［ユーザサービス環境設定］ダイアログボックスと［RAPサービス環境設定］ダイアログボックスに指定する値とネットワークの関係

ユーザサービス環境の設定

ユーザ認証機能

(よ)

用語解説

(ラ行)

(ら)

ライブラリ関数の一覧

(り)

［リアルタイム取得項目詳細］ダイアログボックス

［リアルタイム取得項目定義］ダイアログボックス

リアルタイム取得項目定義テンプレートファイルが格納してあるフォルダ

［リアルタイム取得項目定義ファイル一覧］ダイアログボックス

リアルタイム統計情報〔用語解説〕

リアルタイム統計情報サービス

リアルタイム統計情報サービス〔用語解説〕

リアルタイム統計情報サービスおよびリアルタイム統計情報サービスの拡張機能の開始

リアルタイム統計情報サービスおよびリアルタイム統計情報サービスの拡張機能の終了

［リアルタイム統計情報サービス設定］ダイアログボックス

リアルタイム統計情報サービスの拡張機能

リアルタイム統計情報サービスの実行環境の設定

リアルタイム統計情報サービスの取得項目定義ファイルの設定

［リアルタイム統計情報取得対象定義］ダイアログボックス

リアルタイム統計情報の出力

リアルタイム統計情報の設定変更

リアルタイム統計情報の標準出力への出力

リアルタイム統計情報ログファイルの編集出力

リソースの扱い

リソースマネジャ〔用語解説〕

［リソースマネジャ］ウィンドウ

［リソースマネジャ接続］ダイアログボックス

［リソースマネジャのXA関連オブジェクト］ダイアログボックス

リソースマネジャのXA関連オブジェクトの設定

リソースマネジャの接続 ,[2]

リソースマネジャのトラブルの場合

利点

リモートAPI機能〔用語解説〕

リモートAPI機能の概要 ,[2]

リモートAPI機能の使い方

リモートAPI機能を使うときの準備

リモートAPI機能を使うときの注意事項

リモートプロシジャコール〔用語解説〕

リモートプロシジャコールの概要

リモートプロシジャコールの形態 ,[2]

リモートプロシジャコールを使ったアプリケーションプログラムの通信

(る)

ルートディレクトリ

(れ)

レスポンス統計情報

レスポンス統計情報の出力形式

(ろ)

ローリングアップデートの運用

ロールバック

ログイン名を登録

■ 商標類

BSDは，米国Berkeley Software Design, Inc.の商品名称です。
Microsoft Accessは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
MicrosoftおよびExcelは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
MicrosoftおよびMS-DOSは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
MicrosoftおよびSQL Serverは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
MicrosoftおよびVisual Basicは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
MicrosoftおよびVisual C++は，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
MicrosoftおよびVisual Studioは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
MicrosoftおよびWindows Serverは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
Microsoft Windows Socketsは，米国Microsoft Corporationが開発したプログラミングインタフェースの仕様の名称です。
OracleとJavaは，Oracle Corporation 及びその子会社，関連会社の米国及びその他の国における登録商標です。
UNIXは，The Open Groupの米国ならびに他の国における登録商標です。
WebSphereは，米国およびその他の国におけるInternational Business Machines Corporationの商標です。
Win32は，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
Windowsは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
Windows Vistaは，米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
X/Openは，The Open Groupの英国ならびに他の国における登録商標です。
XATMIは，X/Open Company Limitedが開発したアプリケーションインタフェースの名称です。
イーサネットは，富士ゼロックス（株）の商品名称です。
その他記載の会社名，製品名は，それぞれの会社の商標もしくは登録商標です。