16.3.13 スピンボックス
スピンボックスの論理マップ生成規則とマッピング規則について説明します。
(1) スピンボックスの定義
-
スピンボックスの属性
スピンボックスダイアログで「動的変更(APから表示属性を変更する)」を選ぶと生成されます。
-
制御項目のデータ名:マップ名-FIELDnnnn-A
データ名は,スピンボックスダイアログのAPが渡す項目の「データ名」に従います。
-
長さ:2
長さは,ドローセットアップの「運用管理者用の設定」の[修飾名の設定]ボタンをクリックして表示される,修飾名の設定ダイアログで変更できます。変更するときには,「動的変更の種別」から「キャラクタコントロール(キーエントリ/選択エントリ)」を選択し,「修飾名長」で長さを設定します。
-
-
スピンボックスの定義
-
ボックス項目のデータ名:マップ名-FIELDnnnn-I/O
データ名は,スピンボックスダイアログのAPが受け取る項目の「データ名」で変更できます。
-
長さ:APが受け取る項目のデータ長で指定
-
(2) スピンボックスの論理マップ生成規則とマッピング規則
(a) 項目属性の論理マップ生成規則とマッピング規則
スピンボックスの項目属性に関する論理マップ生成規則とマッピング規則について説明します。この論理マップは,スピンボックスダイアログで「動的変更(APから表示属性を変更する)」を選び,属性項目データ名を指定することで生成されます。
-
論理マップ生成規則
- COBOL
-
{02|03} マップ名-FIELDnnnn-A PIC X(長さ).
- C言語
-
unsigned char マップ名_FIELDnnnn_A[長さ];
-
マッピング規則
-
APが制御項目に代入した内容と表示結果
- 《「動的変更(APから表示属性を変更する)」を指定した場合》
-
APが制御項目に代入した内容
マッピング
オプション
表示結果
修飾名と同じ
マージ
スピンボックスの修飾名に対応する属性を使って表示する。
先頭にデータ有無コード,または
修飾名以外(上記以外)
標準の属性を使って表示する。
修飾名と同じ
論理マップ
スピンボックスの修飾名に対応する属性を使って表示する。
先頭にデータ有無コード,または
修飾名以外(上記以外)
- (表示形態が「全面書換」の場合)
-
標準の属性を使って表示する。
- (表示形態が「一部上書」で直前に表示したマップと同じ場合)
-
前回の属性をそのまま表示する。
- (表示形態が「一部上書」で直前に表示したマップと異なる場合)
-
標準の属性を使って表示する。
−
物理マップ
標準の属性を使って表示する。
- 《「動的変更(APから表示属性を変更する)」を指定しない場合》
-
標準の属性を使って表示します。
-
(b) 可変項目の出力論理マップ生成規則とマッピング規則
可変項目の出力論理マップ生成規則と論理マップ生成規則について説明します。
-
出力論理マップの生成規則
- COBOL
-
COBOLの可変項目の生成規則は,使用目的によってデータ型が変わります。
・数字項目の場合
{02|03} マップ名-FIELDnnnn-O PIC 9(長さ)〔OCCURS 回数〕.
・文字項目の場合
{02|03} マップ名-FIELDnnnn-O PIC X(長さ)〔OCCURS 回数〕.
・数字編集項目の場合
{02|03} マップ名-FIELDnnnn-O PIC 編集文字〔OCCURS 回数〕.
- C言語
-
C言語使用時は,数字編集項目は指定できません。
unsigned char マップ名_FIELDnnnn_O 〔[回数]〕[長さ];
-
マッピング規則
-
APが出力項目データ名の領域に代入した内容と結果
APが出力項目データ名
の領域に代入した内容
マッピング
オプション
結果
すべてデータの場合
マージ,
論理マップ
代入されたデータを表示する※。
先頭1文字がデータ有無コード
データ有無コード(1F)16を設定した場合,例としてX'1F414234'またはX'1F1F1F'のようなデータが該当する。このとき,表示形態が「全面書換」か「一部上書」によって次のように異なる。
全面書換の場合:最小値を表示する。
一部上書の場合:直前に表示したデータのまま表示
する。
データの後半にデータ有無コード
データ有無コード(1F)16を仮定した場合,例として
X'4142431F1F'のようなデータが該当する※。
−
物理マップ
最小値を表示する。
-
(c) スピンボックスの入力論理マップ生成規則とマッピング規則
スピンボックスの入力論理マップ生成規則と論理マップ生成規則について説明します。
-
入力論理マップの生成規則
- COBOL
-
COBOLの可変項目の生成規則は,使用目的によってデータ型が変わります。
・論理マップ可変部の集団項目化を指定した場合
・数字項目の場合
03 マップ名-FIELDnnnn-H 〔OCCURS 回数〕. 04 マップ名-FIELDnnnn-I PIC 編集文字.
・文字項目の場合
03 マップ名-FIELDnnnn-H 〔OCCURS 回数〕. 04 マップ名-FIELDnnnn-I PIC X(長さ).
・論理マップ可変部の集団項目化を指定していない場合
・数字項目の場合
02 マップ名-FIELDnnnn-I PIC 9(長さ) 〔OCCURS 回数〕.
・文字項目の場合
02 マップ名-FIELDnnnn-I PIC X(長さ) 〔OCCURS 回数〕.
C言語
unsigned char マップ名_FIELDnnnn_I 〔[回数]〕[長さ];
-
マッピング規則
-
入力操作と入力項目データ名の領域の内容
- 《使用目的が日本語以外の場合》
-
入力操作
結果(入力項目データ名の領域の内容)
スピンボックスにフォーカスを位置づけ,ボタン操作で表示データを変更する。
選択したデータを入力項目データ名の領域に代入する。
入力操作なし
初期クリア文字に従って入力データ名の領域をクリアする。入力操作がなかったときのマッピング規則については,「16.2.12 入力操作がなかったとき」を参照のこと。
-