sysVar.remoteSystemID

システム変数 sysVar.remoteSystemID は、プログラム、VSAM ファイル、CICS® トランザクション、または一時データ・キューなどのリモート・エンティティーのロケーションを表すシステム名を含んでいます。 この変数では、ファイルやプログラムの動的な定義はサポートされませんが、事前定義されたロケーション・セットからの動的な選択はサポートされます。例えば、CICS では、適切な CICS テーブルでプログラムまたはファイルを定義する必要があります。

システム変数 sysVar.remoteSystemID は、リモート・プログラムのロケーションを表すシステム名を含んでいます。この変数では、プログラムの動的な定義はサポートされませんが、事前定義されたロケーション・セットからの動的な選択はサポートされます。

sysVar.remoteSystemID は、初期設定ではブランクになっているため、この変数の使用を必要とする何らかの呼び出しやファイル入出力関数を実行する場合は、事前に設定する必要があります。

COBOL プログラムを生成する場合、sysVar.remoteSystemID の値は大文字に変換されます。 ただし、ターゲット言語にかかわらず、sysVar.remoteSystemID と文字ストリングの比較では大文字小文字が区別され、変数に割り当てられた値が基になります。例えば、以下のコードにおける比較の結果は偽になります。
  sysVar.remoteSystemID = "myWin";

  // 結果は偽
  if (sysVar.remoteSystemID == "MYWIN")
    record1.resourceAssociation = "myCorp.txt";
  end

項目が許可されているほとんどの場所で、sysVar.remoteSystemID を、assignment 文内のターゲットまたはソース、システム関数に渡される値、論理式内の項目、または return 文内の引き数として使用することができます。

sysVar.remoteSystemID には、以下のような特性があります。
プリミティブ型
CHAR
データ長
8 (ブランクが埋め込まれる)
複数のセグメントにわたって値が保管されるかどうか
はい

リモート・プログラムのアクセス

sysVar.remoteSystemID の値は、リンケージ・オプション・パーツ、callLink 応訴、プロパティー location が PROGRAMCONTROLLED に設定されている場合にのみ、リモート・プログラムのアクセスを提供します。リモート・プログラムの sysVar.remoteSystemID の意味の詳細については、『callLink エレメントの location』のシステム名 の説明を参照してください。

リモート・ファイルのアクセス

sysVar.remoteSystemID の値は、以下の場合にのみ、リモート VSAM ファイルまたは一時データ・キューのアクセスを提供します。
  • コードが COBOL 用に生成されている
  • fileLink エレメント』に記されているように、リンケージ・オプション・パーツ、fileLink エレメント、プロパティー locationSpec が programControlled に設定されている

リモート・ファイルの場合、システム名は CICS システム ID になります。

リモート・トランザクションのアクセス

sysVar.remoteSystemID の値によって、以下の場合にのみ CICS トランザクションにアクセスできます。
  • sysLib.startTransaction 関数を使用してトランザクションを開始
  • コードが COBOL 用に生成されている
  • 『asynchLink エレメント』で説明したように、asynchLink element リンケージ・オプション・パーツの locationSpec プロパティーに PROGRAMCONTROLLED が設定されている

リモート・トランザクションの場合、システム名は CICS システム ID になります。

ターゲット・プラットフォーム

プラットフォーム 互換性に関する考慮事項
CICS for z/OS® なし
z/OS バッチ 非サポート
プラットフォーム 互換性に関する考慮事項
iSeries™ COBOL 非サポート

  sysVar.remoteSystemID = "myCICS";

    // COBOL の場合、値が大文字に変換されても
    // 結果は常に真
  if (sysVar.remoteSystemID == "myCICS")
    record1.resourceAssociation = "MYCORP.MYDATA";
  end
  sysVar.remoteSystemID = "myWIN";

  // 結果は真
  if (sysVar.remoteSystemID == "myWIN")
    record1.resourceAssociation = "myCorp.txt";
  end
ご利用条件 | フィードバック
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.(C) Copyright IBM Japan 2005.