PROGRAM( ) (Función)
Devuelve el nombre del programa que se está ejecutando actualmente, el nivel del programa actual o el nombre del programa que se estaba ejecutando cuando se produjo un error.
PROGRAM([nLevel])
Valores devueltos
Character o Numeric
Parámetros
nLevel
Especifica en cuántos niveles de programa anteriores se debe buscar el nombre del programa. Este parámetro puede estar comprendido entre 0 y el nivel de anidamiento del programa. Un programa puede ejecutar otro programa, que a su vez puede ejecutar otro programa, y así sucesivamente. Los programas pueden anidarse hasta 128 niveles.Si especifica 0 ó 1 para nLevel, PROGRAM( ) devolverá el nombre del programa maestro (el programa de nivel más alto). Si nLevel excede la profundidad de anidamiento del programa, PROGRAM( ) devolverá una cadena vacía.
Si especifica – 1 para nLevel, PROGRAM( ) devuelve como valor numérico el nivel del programa actual. PROGRAM(-1) siempre devuelve cero cuando se ejecuta desde la ventana Comandos.
Observaciones
PROGRAM( ) ayuda al programa en la recuperación de errores. Es similar SYS(16).
Si se utiliza sin ningún argumento, PROGRAM( ) devuelve el nombre del programa que se está ejecutando actualmente.
Ejemplo
ON ERROR DO errhand WITH PROGRAM( )
** The next line should generate an error ** USE nodatabase ON ERROR && Returns to system default error-handling routine PROCEDURE errhand PARAMETERS gcProgram WAIT 'An error occurred in the program ' + gcProgram WINDOW
Vea también
DO | LINENO( ) | MESSAGE( ) | SYS(16) - Nombre de archivo del programa en ejecución | ASTACKINFO( )