画面・帳票サポートシステム XMAP3 プログラミングガイド


16.3.4 ラジオボタンボックス

ラジオボタンボックスの論理マップ生成規則とマッピング規則について説明します。

〈この項の構成〉

(1) ラジオボタンボックスの定義

(2) ラジオボタンボックス属性の論理マップ生成規則とマッピング規則

ラジオボタンボックス属性の論理マップ生成規則とマッピング規則について説明します。この項目は,ダイアログで「動的変更(APから表示属性を変更する)」を指定したときだけ論理マップが生成されます。

(a) 論理マップ生成規則

COBOL
{02|03} マップ名-RADIOnnnn-A PIC X(長さ)〔OCCURS 回数〕.
C言語
unsigned char マップ名_RADIOnnnn_A〔[回数]〕[長さ];

(b) マッピング規則

  • APが制御項目に代入した内容と表示結果

    《「動的変更(APから表示属性を変更する)」を指定した場合》

    APが制御項目に代入した内容

    マッピングオプション

    表示結果

    セットアップで指定してある修飾名と同じ

    マージ

    ラジオボタンの修飾名に対応する属性を使って表示する。

    先頭にデータ有無コード,または設定していない修飾名

    標準の属性を使って表示する。

    セットアップで指定してある修飾名と同じ

    論理マップ

    ラジオボタンの修飾名に対応する属性を使って表示する。

    先頭にデータ有無コード,または設定していない修飾名

    (表示形態が「全面書換」のとき)

    標準の属性を使って表示する。

    (表示形態が「一部上書」で直前に表示したマップと同じ場合)

    前回の属性のまま表示する。

    (表示形態が「一部上書」で直前に表示したマップと異なる場合)

    標準の属性を使って表示する。

    物理マップ

    標準の属性を使って表示する。

    (凡例)

    −:該当しない。

    修飾名と修飾名に対応したボタン属性情報は,ドローセットアップの「表示属性の動的変更」の「候補選択コントロール」タブで変更できます。

    《「動的変更(APから表示属性を変更する)」を指定しない場合》

    標準の属性を使って表示します。

(3) ラジオボタンボックス可変用論理テーブルの論理マップ生成規則とマッピング規則

ラジオボタンボックス可変用論理テーブルの論理マップ生成規則とマッピング規則について説明します。

(a) 論理マップ生成規則

COBOL
{02|03} マップ名-RADIOnnnn-O 〔OCCURS 回数〕.
 {03|04} マップ名-RADIO-LABELnnnn-O PIC {9(長さ)|X(長さ)|N(長さ÷2)|編集文字}.
 {03|04} マップ名-RADIO-CODEnnnn-O PIC {9(長さ)|X(長さ)|N(長さ÷2)|編集文字}.
C言語
struct {
 unsigned char マップ名_RADIO_LABELnnnn_O[長さ];
 unsigned char マップ名_RADIO_CODEnnnn_O [長さ];
} マップ名-RADIOnnnn_O〔[回数]〕;

(b) マッピング規則

  • APが論理項目に代入した内容と表示結果

    《ラベル項目を指定した場合》

    APが論理項目に代入した内容

    マッピングオプション

    表示結果

    すべてデータ

    マージ,

    論理マップ

    代入されたデータを表示する。

    すべて(00)16

    ヌルクリアして表示する。

    すべて(20)16

    空白で表示する。

    先頭1文字がデータ有無コード

    データ有無コード(1F)16を設定した場合,例としてX'1F414234'またはX'1F1F1F'のようなデータが該当する。

    (コード項目のデータがある)

    コード項目のデータを表示する。

    (コード項目のデータがない)

    ボタン図形だけでラベルは表示しない。

    データの後半にデータ有無コード

    データ有無コード(1F)16を仮定した場合,例としてX'4142431F1F'のようなデータが該当する。

    ラベル項目の桁寄せ向きに従って桁寄せし,埋字指定の内容で埋字をして表示する。

    画面の表示長より長いデータ

    ラベル項目の桁寄せ向きに従って桁寄せし,余りを切り捨てて表示する。

    物理マップ

    何も表示しない。

    (凡例)

    −:該当しない。

    注※

    ラベル項目のデータ型とコード項目のデータ型が同じ場合だけ,ラベル項目にデータ有無コードを設定できます。

(4) ラジオボタンの入力論理マップ生成規則とマッピング規則

ラジオボタンの入力論理マップ生成例とマッピング規則について説明します。

(a) 入力論理マップ生成規則

COBOL
・論理マップ可変部の集団項目化を指定した場合
03 マップ名-FIELDnnnn-H.
 04 マップ名-FIELDnnnn-I PIC {X(長さ)|N(長さ÷2)|9(長さ)}.
・論理マップ可変部の集団項目化を指定しない場合
02 マップ名-FIELDnnnn-I PIC {X(長さ)|N(長さ÷2)|9(長さ)}.
C言語
unsigned char マップ名_FIELDnnnn_I[長さ];

(b) マッピング規則

  • 入力操作と結果(論理項目の内容)

    入力操作

    結果(論理項目の内容)

    ボタンボックス中からボタンを選ぶ

    選んだボタンに対応する定数を論理項目に設定する。

    ボタンボックス中からボタンを選ばない

    (固定ラジオボタンの場合)

    ボタン属性情報で「選択済みにする」を指定したボタンに対応する定数を論理項目に設定する。複数のボタン属性情報に「選択済みにする」を指定した場合,最初に指定したラジオボタンに対応する定数を論理項目に設定する。

    「選択済みにする」を指定しなかった場合,初期クリア文字に従って論理項目をクリアする。

    (可変ラジオボタンの場合)

    初期クリア文字に従って論理項目をクリアする。