VGLib.getVAGSysType

La función de sistema VGLib.getVAGSysType identifica el sistema destino en el que se ejecuta el programa. La función está soportada (durante el desarrollo) si la propiedad de programa VAGCompatibility está seleccionada o (durante la generación) si la opción del descriptor de construcción VAGCompatibility está establecida en yes.

Si la salida generada es una envoltura Java, VGLib.getVAGSysType no está disponible. De lo contrario, la función devuelve el valor de carácter que devolvería la palabra de función especial EZESYS de VisualAge Generator. Si el sistema actual no está soportado en VisualAge Generator, la función devuelve la serie en mayúsculas equivalente del código devuelto por sysVar.systemType.


Diagrama de sintaxis de VGLib.getVAGSysType
resultado
Una serie de caracteres que contiene el código de tipo de sistema, como se muestra en la tabla siguiente.

VGLib.getVAGSysType devuelve el equivalente de VisualAge Generator del valor de sysVar.systemType.

Valor de sysVar.systemType Valor devuelto por VGLib.getVAGSysType
AIX "AIX"
DEBUG "ITF"
ISERIESC "OS400"
ISERIESJ "OS400"
LINUX "LINUX"
USS "OS390"
WIN "WINNT"
ZOSBATCH "MVSBATCH"
ZOSCICS "MVSCICS"
Valor de sysVar.systemType Valor devuelto por VGLib.getVAGSysType
AIX "AIX"
DEBUG "ITF"
ISERIESC "OS400"
ISERIESJ "OS400"
LINUX "LINUX"
USS "OS390"
WIN "WINNT"
El valor devuelto por VGLib.getVAGSysType sólo puede utilizarse como serie de caracteres; no puede utilizarse el valor devuelto con los operandos is o not en una expresión lógica, operación que sí puede realizarse con sysVar.systemType:
  // válido SÓLO para sysVar.systemType
  if sysVar.systemType is AIX
    call myProgram;
  end

El único lugar en el que puede utilizarse VGLib.getVAGSysType es como origen de una sentencia assignment o move.

Las características de VGLib.getVAGSysType son las siguientes:
Tipo primitivo
CHAR
Longitud de datos
8 (rellenado con blancos)
¿Se restaura siempre el valor después de una sentencia converse?

Es aconsejable utilizar sysVar.systemType en lugar de VGLib.getVAGSysType.

Consideraciones acerca de la definición

El valor de VGLib.getVAGSysType no afecta al código que se valida durante la generación. Por ejemplo, la siguiente sentencia add se valida aunque se genere para Windows:
  mySystem CHAR(8);
  mySystem = VGLib.getVAGSysType();
  if (mySystem == "AIX")
    add myRecord;
  end
Para evitar la validación de código que nunca se ejecutará en el sistema destino, traslade las sentencias que no desee validar a un segundo programa; a continuación, deje que el programa original llame al programa nuevo de forma condicional:
  mySystem CHAR(8);
  mySystem = VGLib.getVAGSysType();

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

Existe una forma alternativa de resolver el problema, pero sólo si utiliza sysVar.systemType en lugar de VGLib.getVAGSysType; para obtener detalles, consulte eliminateSystemDependentCode.

Condiciones de uso | Comentarios
(C) Copyright IBM Corporation 2000, 2005. Reservados todos los derechos.