# Entrada

> La captura de un valor por el operador, escrita en un punto: la casilla admite lo que admite el punto, y rechaza lo demás con el motivo.

**Entrada** es el campo de captura del operador: un borrador que es del operador, y una tecla
**Escribir** que lo manda a un punto por el punto único de escritura de la estación. No dibuja
ninguna lectura propia: quien quiera el valor del punto junto a la casilla compone un
[Valor](component-value) al lado, y nombrar el campo es una [Etiqueta](component-label). Es un
componente de *Mando*; uno nuevo ocupa 4 × 1 celdas.

El borrador es del operador: el refresco en vivo nunca sobrescribe lo que se escribió, y una
captura rechazada se queda en la casilla para que la corrección sea una edición y no volver a
escribir todo.

## Datos {#data}

| Campo | Qué hace | Valores | Predeterminado |
|---|---|---|---|
| Dirección | La dirección de Logic con raíz del punto escrito: una variable de memoria, un tag escribible, un campo de preparación de una unidad (`Next.<field>`) o el punto de comentario de la corrida (`Commands.Comment`). Aquí no se descarta nada: lo que la casilla acepta después se lee del propio punto. | Texto libre; sugerencias de la lista viva de puntos | vacía |

Bajo la dirección, el panel imprime qué admite el campo ahora mismo ("Este campo admite un
número, de 0 a 100, con 1 decimal."), así que un punto de dos estados se ve convirtiendo la fila
en una tecla por estado antes de que el sinóptico llegue a correr.

## Qué admite la casilla {#what-the-box-takes}

La clase de captura se **deriva del punto**, nunca se elige al lado: una categoría que usted
pudiera indicar contra el punto sería una segunda declaración, libre de contradecir a la que el
punto ya hace:

| El punto | La casilla | Conducta |
|---|---|---|
| Un punto booleano | Una tecla por estado (**Encendido** / **Apagado**) en lugar de una casilla | Un toque es la instrucción entera. Las teclas llevan valores absolutos, así que siguen sirviendo con mala calidad, a diferencia del [Conmutador](component-toggle), que tiene que conocer la lectura que niega. Ninguna de las dos teclas muestra el estado del punto. |
| Un punto entero | Una casilla de número entero | Las capturas con decimales se rechazan; el teclado táctil ofrece dígitos. Un tag entero cuya Escala o Calibración cambia el valor admite un número decimal: su valor de ingeniería es real. |
| Un punto real (decimal) | Una casilla de número | Se juzga contra la banda y contra los decimales declarados cuando se presiona **Escribir**, nunca en cada pulsación; el teclado táctil ofrece un teclado decimal. |
| Texto, un instante, un punto de preparación o de comentario, o una dirección a la que todavía no contesta nada | Una casilla de texto libre | La banda y los decimales no se leen, y el panel lo dice. |

## Número {#number}

La banda y la finura que el operador indica *encima* del punto:

| Campo | Qué hace | Valores | Predeterminado |
|---|---|---|---|
| Mínimo | El número más bajo que manda el campo. En blanco deja ese lado de la banda abierto. | Cualquier número, o en blanco | en blanco |
| Máximo | El número más alto que manda el campo. En blanco deja ese lado abierto. Un mínimo por encima del máximo no deja ningún número entre ellos, y el panel advierte que el campo rechazaría toda captura. | Cualquier número, o en blanco | en blanco |
| Decimales | Qué tan fina es la captura que manda el campo. En blanco manda la precisión que se haya escrito. Un punto que cuenta lo fija en 0, sea lo que sea que esté guardado. Los decimales se le piden al valor, no a los dígitos: `12.500` es `12.5`, así que los ceros de cola que agregó un teclado nunca se rechazan. | De 0 a 15, o en blanco | en blanco |

Un tag que declara límites propios (con su etapa de conversión **Límites** activada) aprieta lo
que se haya indicado aquí: el campo acepta solo lo que la cadena de conversión con tipo llevaría
sin cambios.

Una captura fuera de la banda, demasiado fina, o que no es un número en absoluto se **rechaza
con el motivo y no se escribe nada**. El número es una instrucción para la planta, y uno distinto
tomado en el extremo sería la estación decidiendo por el operador. Esto es, a propósito, lo
contrario de los campos de configuración del propio editor, que toman una captura fuera de banda
en el extremo más cercano y lo dicen.

## La semántica de la escritura {#write-semantics}

- **Variable de memoria**: el borrador se valida contra la categoría de salida de la variable y
  después se escribe por el punto único de la lógica. Una casilla vacía escribe un valor vacío.
- **Tag escribible**: el borrador llega al punto único como valor de ingeniería, nunca
  convertido antes al tipo de nodo del tag. El punto único deshace la calibración y la escala
  camino al bus (la cadena de conversión del tag al revés), así que 0.5 en un tag Int16 con
  escala 0.1 llega al equipo como 5. Un valor que el tipo de nodo no admite una vez desescalado
  (un negativo en un tipo sin signo, uno por encima del máximo del tipo) se rechaza con el rango
  del tipo, y no se escribe nada.
- **`Next.<field>`**: guarda el texto en el área de preparación de la unidad, para la próxima
  corrida. Preparar es preparación, no una escritura a la planta: sin punto único y sin entrada
  en el diario. La línea de respuesta dice "Preparado".
- **`Commands.Comment`**: añade un comentario de corrida (o una nota posterior a la corrida
  mientras está en reposo) al contexto activo de la unidad, atribuido al operador con la sesión
  iniciada; la casilla se limpia y la línea de respuesta dice "Comentario agregado". Un
  comentario vacío se rechaza.

La línea de respuesta transitoria informa de todo desenlace y vence a los pocos segundos. La
autorización se vuelve a verificar en la pulsación. En una celda sin línea para ella y sin título
de esquina sobre el mando, la respuesta toma la palabra de la tecla **Escribir** mientras se
muestra (sobre un punto de dos estados, la palabra de la tecla que se presionó), un rechazo con
la tinta de error. La tecla conserva su ancho, así que lo que no cabe termina en puntos
suspensivos, con la respuesta completa en la información emergente, y el campo nunca se mueve.

Quien espera al equipo es el campo, no la Lógica, así que la línea informa en qué acabó el valor
y no solamente que se envió. Un rechazo se escribe con las palabras de quien lo rechazó: las de
la estación para lo que resolvió antes de enviar ("No se escribió en 'Setpoint': el equipo no
está conectado.") y las del equipo o su driver para lo que pasó en el cable. Un valor que una
entrada más nueva sobre el mismo punto rebasó antes de que se enviara no es un rechazo y no dice
nada: el valor más nuevo es el que recibe la planta.

## Los permisos y el candado {#permissions-and-the-lock}

Escribir una variable o un tag necesita el permiso del rol para operar paneles de control; los
puntos de preparación y de comentario son mutaciones de Process y necesitan en cambio el permiso
de ejecutar procedimientos. Una pulsación bloqueada dibuja la marca de candado compartida con el
motivo en la información emergente, y la casilla misma queda desactivada mientras hay bloqueo
(véase la [página de paneles de control](home)). Un punto vinculado que no logra leer lleva la
marca compartida de mala lectura: las teclas de bandera y la casilla de texto siguen sirviendo,
porque su instrucción no depende de la lectura.

Las secciones compartidas Apariencia, Identificación, Posición y capa y Acciones se describen en
la [página de componentes](components#the-shared-property-sections).
