systemType

sysVar.systemType システム変数は、プログラムが実行しているターゲット・システムを識別します。 この変数は読み取り専用です。

下の表に、有効な値を示します。

表 1. systemType の有効な値
プラットフォーム
AIX® AIX
DEBUG これが表示されるのは、デバッグ時に、EGL デバッグ設定「systemType を DEBUG に設定」が YES (デフォルト) に設定されている場合のみです。 それ以外の場合、sysVar.systemType は、デバッグに使用しているビルド記述子のシステム・フィールドに従って設定されます。
HPUX HP-UX
IMSBMP IMS™ BMP
IMSVS IMS/VS
ISERIESC iSeries® COBOL
ISERIESJ iSeries Java™
JAVASCRIPT 任意の Rich UI アプリケーションの値
LINUX Linux (Intel ハードウェア)
SOLARIS Solaris
USS z/OS® UNIX システム・サービス
VSEBATCH VSE バッチ
VSECICS CICS® for VSE
WIN Windows 2000/NT/XP
ZLINUX zSeries ハードウェア上の 64 ビット Linux。これは、Java 生成の場合のみのターゲット環境です。
ZOSBATCH z/OS バッチ
ZOSCICS z/OS CICS

特性

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

定義に関する考慮事項

sysVar.systemType の値は、生成時のコード検証に影響を与えません。 例えば、以下の add 文は、 Windows 用に生成を行う場合でも検証されます。
  if (sysVar.systemType IS AIX)
    add myRecord;
  end
ターゲット・システムで実行されないコードを検証しないようにするには、 以下のいずれかの処置をとります。
  • eliminateSystemDependentCode ビルド記述子オプションを YES に設定します。現在の例では、 このビルド記述子オプションを YES に設定すると、add 文は検証されません。 ただし、生成プログラムがシステム依存コードを除去できるのは、 論理式 (この場合は sysVar.systemType IS AIX) が単純で生成時に評価できる場合だけであることに注意してください。
  • または、検証しない文を 2 番目のプログラムに移動し、 元のプログラムが新規プログラムを以下のように条件付きで呼び出すようにします。
      if (sysVar.systemType IS AIX)
        call myAddProgram myRecord;
      end

  if (sysVar.systemType is WIN)
    call myAddProgram myRecord;
  end

フィードバック