Operar

Las unidades en uso: un nodo por unidad con los paneles y los paneles de control desde los que se ejecuta, qué es una corrida, el ciclo de vida del Arranque a Completada, y qué se rechaza mientras está detenido.

Ver como Markdown

Operar es el último de los cuatro grupos de un modelo en la columna Espacio de trabajo de la página Process (Process > Modelos > un modelo > Operar), después de Definición, Visualización y Preparación. Los otros tres declaran el proceso; este contiene las unidades en uso, un nodo por unidad, y bajo cada unidad las superficies desde las que se opera. Aquí no se configura nada: una unidad se declara y se termina en la página propia del modelo (Unidades), sus paneles y sus paneles de control se disponen en Visualización, y lo que ejecuta se compone en Preparación.

La rama se dibuja para todo rol que pueda consultar los modelos (Consultar los modelos, Ejecutar procedimientos, Gestionar Process). Un rol que solo tiene Editar recetas y evaluaciones ve cada modelo reducido a su grupo de Preparación, así que Operar no se le dibuja. Mirar es gratis con el árbol; preparar, arrancar y conducir una corrida exigen Ejecutar procedimientos, y un panel lo dice en su cara cuando al rol le falta.

La página Operar

Al seleccionar el grupo se abre un muro de tarjetas, una por unidad, encabezado "Las estaciones sobre las que se ejecuta este modelo. Abra una para preparar un procedimiento, arrancarlo y seguir una corrida registrada y evaluada." Al hacer clic en una tarjeta se abre esa unidad. Cada tarjeta lleva el estado en vivo de la unidad, resuelto con esta precedencia:

Estado Significado
Paro disparado, A la espera de rearme, Señal de paro no disponible El enclavamiento de la unidad no está Normal. Se muestra solo cuando el modelo observa un paro externo; manda sobre todo lo de abajo.
Grabando, En pausa, Guardando, Preparando, Finalizando Una corrida posee la unidad: está muestreando, en pausa en una consigna, escribiendo su instantánea, reservada antes de que la corrida exista, o cerrando su archivo después del estado terminal.
En reposo · procedimiento Nada posee la unidad y ese procedimiento está preparado para el siguiente Arranque.
En reposo · sin procedimiento preparado Nada posee la unidad y no hay nada preparado.

Un modelo sin unidades dice "Todavía no hay unidades. Agregue una en la página del propio modelo, en la tabla Unidades." La fila del grupo en el árbol cuenta sus unidades.

La barra de detalle lleva los dos disparadores por lote, dibujados solo para un rol con Ejecutar procedimientos. En esta barra no hay nada más, porque aquí no se crea ni se elimina nada.

Comando Qué hace Atenuado cuando (situación) No se dibuja cuando (rol)
Arrancar todas Arranca todas las unidades que tienen un procedimiento preparado y pueden ejecutarse ahora; las demás se saltan en silencio. Toda corrida arrancada graba como responsable al operador con la sesión iniciada en esta pantalla. Ninguna unidad acepta un Arranque ahora mismo, o ya se está despachando un lote. Sin Ejecutar procedimientos.
Detener todas Detiene todas las unidades que están en marcha ahora; las que ya estaban detenidas siguen detenidas. Ninguna unidad acepta un Paro ahora mismo, o ya se está despachando un lote. Sin Ejecutar procedimientos.

Un lote es un disparador, no una operación coordinada: cada unidad corre por su cuenta, un rechazo en una unidad queda en el diario y nunca revierte a otra, y el registro de acciones reporta la cuenta ("3 unidades arrancadas", "No se pudo detener ninguna unidad.").

La unidad

La página propia de una unidad la nombra, dice si una corrida la posee y abre hacia cada una de sus superficies. El encabezado lleva la misma píldora que llevan las tarjetas (Grabando, En pausa, Guardando, Preparando, Finalizando; nada mientras la unidad está libre), y una tarjeta, Superficies, lista como fichas los paneles y los paneles de control que define el modelo, dibujados para esta unidad. La página no tiene verbos de barra ni menú del botón derecho: es una entrada, no un lugar para editar.

Bajo la unidad, el árbol tiene un nodo por panel del modelo, y después un nodo por panel de control. Los dos abren bajo la misma barra de escenario que usa la página View, llamada "Model · Unit · Surface", con la píldora del estado de la corrida junto al nombre y los dos verbos de ventana del lado de cola: Expandir le entrega a la superficie toda la ventana, Pantalla completa (F11) toma la pantalla entera, y Esc sale de cualquiera de las dos.

  • Un nodo de panel dibuja las tarjetas que dispone el panel, para esta unidad: la tarjeta Corrida, la tarjeta Metadatos, el Estado de la corrida, los Comentarios, las Ocurrencias, el gráfico de Canales, el balance de Productividad, los Comandos sueltos y cualquier panel de control que el panel incruste como tarjeta. Esa superficie, tarjeta por tarjeta, es Corridas y comentarios.
  • Un nodo de panel de control ejecuta la única definición del modelo con cada canal abstracto respondido por la fuente vinculada de esta unidad. Muestra el panel de control y nunca lo edita: editar es un verbo de la fila propia del modelo en Visualización (Paneles de control de un modelo). Un panel de control sin nada colocado lo dice en vez de dibujar un escenario vacío. Sus componentes de comando aquí solo necesitan Ejecutar procedimientos, porque esta es la superficie oficial de Process y no un panel de control propio de la estación.

Un panel o un panel de control marcado Mostrar en View aparece además en la página View, una entrada por unidad del modelo, con el mismo nombre; lo que dibuja es lo mismo en los dos lados.

Qué es una corrida

Una corrida es una ejecución de un procedimiento en una unidad. Se llama "Procedimiento · Unidad", se graba en un archivo SQLite propio bajo la carpeta acquisitions de la raíz de datos de la aplicación, y la señala una fila del índice de históricos, que es lo que permite encontrar y reanudar una corrida sin terminar después de un reinicio. El modo del procedimiento es la envolvente de la corrida: Instantáneo aplica, graba una fila y juzga una vez, y termina por su cuenta; Temporizado corre la ventana del procedimiento, repetida como ciclos si se quiere, y termina cuando cierra la última ventana; Controlado aplica en el Arranque y graba hasta que alguien lo detiene.

Una corrida por unidad a la vez. El Arranque reserva la unidad antes de resolver nada, así que una unidad que prepara está Ocupada sin pretender que graba; la reserva dura a lo largo de En marcha, En pausa, Guardando y el cierre final del archivo. Mientras cualquier unidad está ocupada, toda superficie de configuración de la estación es de solo lectura ("La configuración está bloqueada mientras una unidad está en marcha."); Operar en sí sigue vivo, porque operar no es configurar.

El ciclo de vida

Estado Significado Se entra por Se sale por
Preparando La unidad está reservada y la corrida se está validando y materializando. No es un estado guardado: el punto Procedure.Status lo dice mientras Busy ya es verdadero. Arrancar La corrida materializándose (En marcha), o un rechazo (en reposo otra vez).
En marcha El muestreo y, para una corrida Temporizada, el reloj de la ventana se están moviendo. Arrancar, Reanudar Pausar, Detener, Abortar, el fin de la ventana, una falla, el enclavamiento.
En pausa El reloj de la ventana está congelado en la última consigna; el datalog sigue grabando. Solo corridas Temporizadas. Pausar Reanudar, Abortar, el enclavamiento. Detener no se aplica a una corrida en pausa.
Guardando El muestreo se detuvo; el bloque de finalización corrió y se está escribiendo la instantánea congelada. Detener, Abortar, el fin de la ventana, el enclavamiento, una corrida Instantánea que se completa La instantánea al quedar escrita.
Completada Terminó limpiamente; el veredicto es el de la evaluación. Guardando después de un Paro, un fin de ventana o una corrida Instantánea Terminal.
Abortada Terminó antes de tiempo; el veredicto es NOK haya juzgado lo que haya juzgado la evaluación. Guardando después de un Aborto, una política de fallas de receta puesta en Abortar, el enclavamiento, o el runtime deteniéndose Terminal.
Fallida Terminó por un error irrecuperable; el veredicto es Ninguno. Una falla mientras corre o mientras termina; un puntero en Guardando que dejó atrás una caída regresa como Fallida en el siguiente arranque Terminal.

Una corrida que estaba En marcha o En pausa cuando la aplicación se cerró no está terminada: se reanuda en el siguiente arranque, un perfil temporizado en pausa en su segmento y su ciclo persistidos.

Toda corrida graba quién la arrancó (el operador con la sesión iniciada en la pantalla que presionó Arrancar, la estación cuando no había nadie, la automatización de la unidad, o un agente) y quién la terminó (las mismas clases, para un Paro o un Aborto). Una ventana que se agotó, un disparo de enclavamiento y una falla terminan sin nadie nombrado. Pausar y Reanudar no dejan ningún actor detrás.

Qué se rechaza, y por qué

  • Runtime detenido: mientras el runtime de la estación está detenido, Arrancar, Pausar, Reanudar, Detener, Abortar, los comandos sueltos, preparar y los comentarios se rechazan todos con ese motivo, y la tarjeta Corrida lo escribe bajo sus botones. Las corridas que siguen abiertas cuando el runtime se detiene terminan como Abortadas.
  • El enclavamiento: mientras el enclavamiento de una unidad está Disparado, A la espera de rearme o No disponible, en esa unidad no se admite ningún Arranque, Reanudar, instantánea, evaluación ni aplicación de receta nuevos ("La unidad 'X' está bloqueada por su enclavamiento: motivo"). Detener y Abortar siguen disponibles.
  • Nada preparado: el Arranque necesita un procedimiento preparado ("No hay ningún procedimiento preparado. Elija uno primero.").
  • Una fuente que tiene otra corrida: dos unidades que escriben la misma fuente no pueden ejecutarse juntas; el segundo Arranque se rechaza por canal y por unidad que la tiene.

Las páginas de este grupo:

Página Cubre
Corridas y comentarios El panel de una unidad: preparar, el Arranque y qué valida, los comandos del ciclo de vida, las tarjetas en vivo, los comentarios, los comandos sueltos, el archivo de la corrida, y los caminos de la automatización y del agente al mismo ciclo de vida.
El espacio de direcciones de la unidad Todos los puntos que publica una unidad en Process.<Model>.<Unit>, su tipo y su significado, y qué puntos son comandos escribibles.