SYSTEM: Cómo llamar a un programa de sistema

Cómo:

Sistemas operativos disponibles: Windows

Lenguajes disponibles: informes

La función SYSTEM llama a un programa de DOS, un programa en lote o una aplicación de Windows desde un procedimiento. SYSTEM pasa una cadena de comandos a DOS, o a Windows, y el programa se ejecuta como si se hubiera introducido en la línea de comandos de DOS, o en el campo de línea de comandos del cuadro de diálogo Ejecutar del Administrador de programas de Windows. Cuando sale del programa, el control vuelve a WebFOCUS.

SYSTEM detiene la ejecución de FOCUS de cualquier comando posterior, hasta que salga de la aplicación. Presenta una ventaja con respecto al comando FOCUS DOS, que también permite llamar a programas de DOS y aplicaciones de Windows desde un procedimiento.

Al ejecutar un comando desde SYSTEM, éste se ejecuta del siguiente modo:


Principio de página

x
Sintaxis: Cómo Llamar a un programa de DOS o de Windows
SYSTEM(length, 'string ', returncode)

donde:

length

Número entero

Es la longitud en caracteres de string.

string

Alfanumérico

Es un comando válido de Windows o DOS, con parámetros de línea de comandos entre comillas simples.

returncode

Doble precisión

Es el nombre o la longitud de la variable que contiene el valor del nivel de error de DOS.



Ejemplo: Cómo ejecutar el comando DIR

SYSTEM pasa el comando DIR al intérprete de comandos de DOS para que cree un listado clasificado de directorios, sin información de encabezado ni de resumen, y redirecciona la salida a un archivo llamado DIR.LIS:

-SET &RETCODE = SYSTEM(31,'COMMAND /C DIR /O-N /B >DIR.LIS','D4');


Ejemplo: Cómo cambiar el directorio predeterminado

SYSTEM cambia el directorio predeterminado y detiene el procesamiento hasta que finalice la operación:

-SET &ERRORLEVEL = SYSTEM(15,'CHDIR \CARDATA','D4');


Ejemplo: Cómo ejecutar el programa de comprobación de disco

SYSTEM ejecuta el programa de comprobación de disco y redirecciona la salida a un archivo llamado CHKDSK.TXT. (El redireccionamiento de la salida hace que el archivo esté disponible para los programas que quieran leerlo.)

-SET &RETCODE=SYSTEM(19,'CHKDSK > CHKDSK.TXT','D4');

WebFOCUS