getVAGSysType()

vgLib.getVAGSysType() システム関数は、 プログラムが実行されているターゲット・システムを識別します。 この関数は、VisualAge® Generator の互換モードで実行している場合にのみサポートされます。 代わりに sysVar.systemType を使用します。

生成される出力が Java™ ラッパーの場合、vgLib.getVAGSysType() は 使用不可です。その他の場合、この関数は、VisualAge Generator EZESYS 特殊機能語によって以前に戻された文字値を戻します。現在のシステムが VisualAge Generator によってサポートされていなかった場合、 この関数は sysVar.systemType に格納されたコードと同等の大文字のストリングを戻します。

vgLib.getVAGSysType() で戻される値は、 文字ストリングとしてのみ使用可能です。 以下のように sysVar.systemType では使用できましたが、戻り値を論理式で演算子 is または not とともに使用することはできません。
  // sysVar.systemType に対してのみ有効
  if (sysVar.systemType is AIX)
    call myProgram;
  end

構文

  vgLib.getVAGSysType( )
  returns (result CHAR(8))
result
次の表に示される、システム・タイプ・コードを含む文字ストリング。
表 1. getVAGSysType の戻り値
sysVar.systemType の値 vgLib.getVAGSysType で戻される値
AIX® "AIX"
DEBUG "ITF" [Integrated Test Facility]
HPUX "HP"
IMSBMP "IMSBMP"
IMSVS "IMSVS"
ISERIESC "OS400"
ISERIESJ "OS400"
LINUX "LINUX"
SOLARIS "SOLARIS"
USS "OS390"
VSEBATCH "VSEBATCH"
VSECICS "VSECICS"
WIN "WINNT"
ZLINUX "ZLINUX"
ZOSBATCH "MVSBATCH"
ZOSCICS "MVSCICS"

定義に関する考慮事項

vgLib.getVAGSysType() の値は、生成時に検証されるコードに影響しません。 例えば、以下の add 文は、 Windows 用に Java コードを生成する場合でも検証されます。
  mySystem CHAR(8);
  mySystem = vgLib.getVAGSysType();
  if (mySystem == "AIX")
    add myRecord;
  end
ターゲット・システムで実行されないコードの検査を回避するには、検査しない文を 2 番目のプログラムに移動してください。その後、以下のように元のプログラムで新しいプログラムを条件付きで呼び出します。
  mySystem CHAR(8);
  mySystem = vgLib.getVAGSysType();

  if (mySystem == "AIX")
    call myAddProgram myRecord;
  end

フィードバック