SYS(16) - Nombre de archivo del programa en ejecución
Devuelve el nombre de archivo del programa que se está ejecutando.
SYS(16 [, nProgramLevel])
Valores devueltos
Character
Parámetros
nProgramLevel
Indica de cuántos niveles anteriores se ha cargado el nombre del programa. Este argumento puede valer entre 1 y la profundidad de anidación de los programas.Si nProgramLevel es 0 ó 1, SYS(16) devuelve el nombre del programa principal (el programa que se ejecutó primero). Si se omite nProgramLevel, se devolverá el nombre del programa que se esté ejecutando actualmente. Si nProgramLevel es mayor que la profundidad de anidación del programa, se devolverá la cadena vacía.
Observaciones
Esta opción es útil cuando se recuperan errores. SYS(16) es similar a PROGRAM( ). Sin embargo, SYS(16) devuelve la ruta de acceso con el nombre del programa; PROGRAM( ) devuelve solamente el nombre del programa.
Si se está ejecutando un procedimiento o una función, SYS(16) devolverá también el nombre del archivo que contiene el procedimiento o la función después del nombre de éstos.
Cuando el programa en ejecución forma parte de una aplicación (.app), SYS(16) devuelve únicamente el nombre del programa; no se devuelve la ruta de acceso con el nombre del programa.
Ejemplo
Puede devolverse el anidamiento del programa con el pequeño programa de ejemplo siguiente:
STORE 1 TO gnX
DO WHILE LEN(SYS(16,gnX)) != 0
? SYS(16,gnX)
STORE gnX+1 TO gnX
ENDDO
Vea también
LINENO( ) | ON ERROR | PROGRAM( ) | SYS( ) Introducción a las funciones