¿Existen algunos trucos para depurar una aplicación Jmp?
Supongo que la forma predeterminada de hacerlo es algo como:
Utilice el depurador Jmp, agregue puntos de interrupción, deje que el código de la aplicación se ejecute y se detenga en el punto de interrupción, luego verifique lo que está sucediendo paso a paso...
Cuando tengo que depurar código JSL que no es de aplicación, me gusta tener la libertad de ejecutar cualquier código del script en cualquier momento.
Por ejemplo, elimine la configuración modal de una ventana de informe, cree la ventana de informe y luego ejecute algunas líneas de código que se encuentran en otra posición en el archivo jsl.
¿Esto también es posible con aplicaciones de Application Builder?
1) ¿Cómo habilitar el registro integrado en Application Builder?

2) Para depurar aplicaciones generadas manualmente, encontré
myApp = JMP App();
(myApp << Get Namespace) << Show Contents;
Cuando ejecuto una aplicación desde Application Builder no tengo un identificador miAplicación que puedo usar para hablar con la aplicación.
¿Existe algún comando para obtener el espacio de nombres de la aplicación actual e "infiltrarse" en el código?
((current report() << get App() ) << get Namespace()) << include Namespace in HERE
¿De modo que pueda copiar fragmentos de código de la aplicación y ejecutarlos directamente en una ventana de secuencia de comandos, con acceso directo al espacio de nombres de la aplicación en ejecución?
3) Si cometo errores en mi código JSL, JSL edotor me advertirá o mostrará un mensaje de error que me ayudará a encontrar el error y corregirlo.
Si abro el script fuente de una aplicación y cometo un pequeño error, Jmp fallará cuando ejecuto el código con << editar o << ejecutar
¿Alguna posibilidad de cambiar el código fuente con menos castigo por mis puntos de penalización? ¿Existe una rutina de verificación previa que pueda usar antes de atreverme a ejecutar el script?
En realidad, lo mismo para los scripts incluidos: ¿existe la posibilidad de ejecutar manualmente el código en el script incluido, con acceso al espacio de nombres AQUÍ del script principal?
guión principal:
Names Default to HERE(1);
::myNamespace = localHERE(); //*)
temp =5;
include ("script_inc.jsl");guión incluido:
///////////////////////////
// to be able to manually execute code in this file, which accesses variables of the main file,
// you need direct access to the namespace of the main file. To get this access, execute:
///////////////////////////
access Namespace(::myNamespace) // *)
Show(temp);
*) (obviamente) esto no funciona
Esta captura de pantalla muestra el "problema": cuando se incluye en el script principal, script_B conoce las variables del Aquí Espacio de nombres del script principal (registro de la ventana izquierda).
Pero ejecutado por separado, script_B tiene el suyo propio. Aquí espacio de nombres.
Es como diseñado:
Scripting esencial para la eficiencia y la reproducibilidad: hacer menos para hacer más (2019-US-TUT-290)
... pero hace imposible ejecutar líneas individuales directamente desde script_B para depurar.
-> ¿Cómo puedo vincular los espacios de nombres para permitirme depurar script_B?