El contexto de los scripts
El módulo modeler.script proporciona el contexto en el que se ejecuta un script. El módulo se importa automáticamente a un script de SPSS Modeler durante la ejecución. El módulo define cuatro funciones que proporcionan un script con acceso a su entorno de ejecución:
- La función
session()devuelve la sesión para el script. La sesión define información, tal como el entorno local y el proceso de fondo de SPSS Modeler (ya sea un proceso local o un proceso de SPSS Modeler Server conectado a la red) que se está utilizando para ejecutar rutas. - La función
stream()se puede utilizar con la ruta y los scripts Supernodo. Esta función devuelve la ruta que es propietaria del script de ruta o el script Supernodo que se está ejecutando. - La función
diagram()se puede utilizar con los scripts Supernodo. Esta función devuelve el diagrama dentro del Supernodo. Para otros tipos de script, esta función devuelve el mismo que la funciónstream(). - La función
supernode()se puede utilizar con los scripts Supernodo. Esta función devuelve el Supernodo propietario del script que se está ejecutando.
En la tabla siguiente se resumen las cuatro funciones y sus resultados.
| Tipo de script | session() |
stream() |
diagram() |
supernode() |
|---|---|---|---|---|
| Autónomo | Devuelve una sesión | Devuelve la ruta gestionada actual en el momento en que se invoca el script (por ejemplo, la ruta se pasa con la opción -stream de modalidad de proceso por lotes) o None. |
Igual que para stream() |
No es aplicable |
| Ruta | Devuelve una sesión | Devuelve una ruta | Igual que para stream() |
No es aplicable |
| Supernodo | Devuelve una sesión | Devuelve una ruta | Devuelve una ruta Supernodo | Devuelve un Supernodo |
El módulo modeler.script también define un modo de finalizar el script con un código de salida. La función exit(exit-code) detiene la ejecución del script y devuelve el código de salida de entero suministrado.
Uno de los métodos que se define para una ruta es runAll(List).
Este método ejecuta todos los nodos ejecutables. Los modelos o resultados que se generan mediante la ejecución de los nodos se añaden a la lista suministrada.
Es común que la ejecución de ruta genere resultados, tales como modelos, gráficos y otros. Para capturar este resultado, un script puede proporcionar una variable que se inicializa en una lista, por ejemplo:
ruta = modeler.script.stream()
results = []
stream.runAll(results)
Cuando se completa la ejecución, se puede acceder a todos los objetos generados por la ejecución en la lista results.