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ón stream().
  • 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.

Tabla 1. Resumen de las funciones de modeler.script
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.