# 入力

> 操作員がポイントに書き込む値の入力です。欄はそのポイントが受け付けるものを受け付け、それ以外は理由とともに拒否します。

**入力** は、操作員の入力欄です。操作員が持つ下書きと、それをステーションのただ 1 つの書き込みの経路を通してポイントへ送る **設定** のキーからできています。自分では読み取り値を描きません。欄の隣にポイントの値がほしいなら、隣に [数値](component-value) を組み合わせ、欄に名前を付けるのは [テキスト](component-label) です。*操作* のコンポーネントで、新しく置くと 4 × 1 のます目を占めます。

下書きは操作員のものです。実時間の更新が、入力したものを上書きすることは決してありません。拒否された入力も欄に残るので、直すのは書き直しではなく手直しになります。

## データ {#data}

| 欄 | 何をするか | 値 | 既定 |
|---|---|---|---|
| アドレス | 書き込むポイントの、根の付いた Logic のアドレスです。内部値の変数、書き込めるタグ、ユニットの用意の欄（`Next.<field>`）、または実行のコメントのポイント（`Commands.Comment`）です。ここでは何も除外しません。欄が何を受け付けるかは、そのあとポイント自身から読まれます。 | 自由入力。候補は実時間のポイントの一覧から | 空 |

アドレスの下で、パネルはその欄が今何を受け付けるかを出すので（「この欄は 小数点以下 1 桁までの数値（0 から 100 まで） を受け付けます。」）、2 つの状態のポイントが行を状態ごとのキーに変えるさまも、画面を動かす前に見て取れます。

## 欄が受け付けるもの {#what-the-box-takes}

入力の方式は **ポイントから導かれる** もので、その隣で選ぶものではありません。ポイントに対して指定できる種別は 2 つめの宣言になり、ポイントがすでにしている宣言と食い違う自由を持ってしまうからです。

| ポイント | 欄 | ふるまい |
|---|---|---|
| ブール値のポイント | 欄の代わりに、状態ごとのキー（**オン** / **オフ**） | 1 回触れることが指示のすべてです。キーは絶対の値を運ぶので、品質が不良でも使えるままです。読み取り値を反転させるために、それを知っていなければならない [トグル](component-toggle) とは違うところです。どちらのキーも、ポイントの状態は見せません。 |
| 整数のポイント | 整数の欄 | 小数の入力は拒否され、タッチのキーボードは数字を出します。スケールか校正が値を変える整数型のタグは小数を受け付けます。工業値が実数だからです。 |
| 実数（小数）のポイント | 数値の欄 | **設定** を押したときに、範囲と宣言した桁に照らして判断されます。1 打ごとではありません。タッチのキーボードは小数のパッドを出します。 |
| テキスト、時刻、用意やコメントのポイント、またはまだ何も答えないアドレス | 自由なテキストの欄 | 範囲と小数桁は読まれず、パネルがそう述べます。 |

## 数値 {#number}

ポイントの *上に重ねて* 操作員が指定する、範囲と細かさです。

| 欄 | 何をするか | 値 | 既定 |
|---|---|---|---|
| 最小値 | 欄が送るいちばん小さい数です。空欄なら、範囲のその側は開いたままです。 | 任意の数、または空欄 | 空欄 |
| 最大値 | 欄が送るいちばん大きい数です。空欄なら、その側は開いたままです。最小が最大より上だと、その間に数が残らないので、パネルは、この欄がすべての入力を拒否することになると警告します。 | 任意の数、または空欄 | 空欄 |
| 小数桁 | 欄が送る入力の細かさです。空欄なら、入力された精度をそのまま送ります。数えるポイントは、何が保存されていても 0 に留めます。桁は数字の見た目ではなく値についてたずねられるので、`12.500` は `12.5` であり、キーパッドが付けた末尾の 0 が拒否されることはありません。 | 0 から 15、または空欄 | 空欄 |

自分で上下限を宣言しているタグ（**上下限** の変換の段階が有効なもの）は、ここで指定したものをさらに狭めます。欄が受け付けるのは、その型付きの値の変換経路がそのまま通す値だけです。

範囲の外、細かすぎる、あるいはそもそも数でない入力は、**理由とともに拒否され、何も書き込まれません**。数値は設備への指示であり、端で取った別の数を書くことは、ステーションが操作員の代わりに決めてしまうことになるからです。これは、範囲の外の入力を最も近い端で取ってそう述べる、エディター自身の設定の欄とは、意図してわざと逆にしてあります。

## 書き込みの意味 {#write-semantics}

- **内部値の変数**。下書きはその変数の出力の種別に照らして確かめられ、ロジックの経路を通して書き込まれます。空の欄は、空の値を書き込みます。
- **書き込めるタグ**。下書きは工業値のまま経路に渡され、先にタグのノードの型に合わせられることはありません。経路はバスへ向かう途中で校正とスケールを逆に計算します（タグの変換経路を逆にたどります）。そのため、スケール 0.1 の Int16 のタグに 0.5 を書くと、機器には 5 が届きます。逆スケーリングしたあとでノードの型に収まらない値（符号なしの型への負の数、型の最大値を超える数）は、その型の範囲を添えて拒否され、何も書き込まれません。
- **`Next.<field>`**。次の実行のために、そのテキストをユニットの用意の場所に置きます。用意は準備であって、設備への書き込みではありません。経路も通らず、記録の項目も残りません。応答の行は「用意しました」と述べます。
- **`Commands.Comment`**。実行のコメント（待機中なら実行後のメモ）を、ユニットの今の文脈に付け加え、サインインしている操作員に帰属させます。欄は空になり、応答の行は「コメントを追加しました」と述べます。空のコメントは拒否されます。

しばらく出る応答の行がすべての結果を伝え、数秒で消えます。認可は押したその時にもう一度確かめられます。応答の行を置く場所がなく、操作部の上に隅の表題もないセルでは、応答が表示されているあいだ、応答が **設定** キーの文字の場所に出ます（2 状態のポイントでは、押されたキーの文字の場所）。拒否はエラーの色で出ます。キーは幅を保つので、入りきらない分は省略記号で切られ、応答の全体はツールチップに出ます。入力欄は動きません。

機器を待つのはロジックではなく入力欄のほうなので、この行が伝えるのは、送ったという事実ではなく、その値がどうなったかです。拒否は、拒んだ相手の言葉で書かれます。送る前にステーションが決めたことはステーション自身の言葉で（「「Setpoint」は書き込まれませんでした。機器が接続されていません。」）、電線の上で起きたことは機器やその通信の担い手の言葉で書かれます。同じポイントへの新しい入力に送信前に追い越された値は失敗ではなく、何も述べません。現場に渡されるのは新しいほうの値だからです。

## 権限と錠前 {#permissions-and-the-lock}

変数やタグへの書き込みには、ロールの「ダッシュボードの操作」の権限が要ります。用意とコメントのポイントは Process を変えるものなので、代わりに「手順の実行」の権限が要ります。塞がれた押下は共通の錠前の印を描いて理由をツールチップに持ち、錠前が掛かっている間は欄そのものも使えなくなります（[ダッシュボードのページ](home) を参照）。読み取りに失敗しているポイントにバインドしていると、共通の読み取り不良の印が付きます。フラグのキーとテキストの欄は使えるままです。その指示は読み取り値に頼っていないからです。

共通の外観、識別、位置とレイヤー、アクションの節は [コンポーネントのページ](components#the-shared-property-sections) で説明しています。
