チェックボックス

最終更新日: 2021年6月11日
R8 | R9

実装イメージと定義方法

実装イメージ

2つのモデル「顧客」「地区」を例に説明します。
顧客モデルは地区モデルのデータを参照しています。
顧客データの登録画面は、地区モデルに登録された地区名情報をチェックボックス形式で表示し、そのうちの1つ~複数選択する入力仕様です。

図1 モデル「顧客」と「地区」の関係

定義方法

  1. WagbyDesignerで顧客モデルの「地区」項目の型を「他モデルの項目参照」に設定します。
    図2 モデル定義
  2. 「他モデルの項目参照」を選択すると、詳細設定のダイアログが開きます。
    ここで、地区モデルの地区名項目を参照するよう設定します。
    入力タイプは「チェックボックス」を選択します。
    これで、設定は完了です。
    図3 詳細設定

初期値を設定する

チェックボックスの初期値を指定することができます。
顧客モデルの新規登録画面を開いた際に、地区名「北海道」「東北」「北陸」「関東」の4つを選択状態にする例で説明します。

実装イメージ

下図のような状態になります。

図5 チェックボタンの初期値

定義方法

  1. 初期値としたいデータの主キー(ここでは地区コード)の値を確認します。
    主キーの値はアプリケーションの詳細表示画面で確認できます。
    図6 初期値として用いるデータの主キーを調べる
  2. WagbyDesignerで顧客モデルの地区名項目の詳細を開き、「初期値」タブを選択します。
    選択すると、各画面における初期値の設定情報が表示されます。
    登録画面の初期値を指定する場合は、「登録画面表示時」の欄に設定をします。
    初期値設定の詳細はこちらをご覧ください。

    注意

    初期値は画面ごとに設定を行います。全画面共通の設定ではありません。

    図7 初期値設定タブ
  3. 先程アプリケーション上で確認した主キー値を入力し、「OK」をクリックします。
    チェックボックスの場合は半角コンマ(,)区切りで複数の値を指定することができます。 これで設定は完了です。
    図8 登録画面の初期値を指定

チェックボックスの特殊表記・応用例

初期値 > チェックボックス」をご覧ください。
全選択状態を初期値とする「ALL」表記や、自動計算式との組み合わせで使えるテクニック等を説明しています。

選択肢の全選択と全選択解除

項目名の横にあるボタンをクリックすると、すべての選択肢一を度に選択状態にできます。

図9 全選択ボタン

全選択状態の場合には、クリアボタンが表示されます。
このボタンをクリックすると、すべてのチェックがはずれます。

図10 クリアボタン

このボタンはデフォルトで表示されます。
設定によって非表示にすることもできます。

定義方法

モデル項目詳細定義ダイアログの「入力制御」タブをクリックして開きます。
「モデル参照」欄の「クリアボタンを作成する」のチェックをはずすと非表示になります。
(デフォルトでは有効になっています。)
この設定は登録・更新・検索すべての入力欄に反映されます。

図11 クリアボタンの表示設定

選択肢の表示順を変更する

選択肢モデルの「選択肢の表示順変更」と同じルールを、通常のモデルにも設定することができます。

詳細はこちらをご覧ください。

選択肢を無効にする

選択肢モデルの「選択肢の無効化」と同じルールを、通常のモデルに設定することができます。

詳細はこちらをご覧ください。

無効な項目も検索対象とする

選択肢モデルの「無効な項目も検索対象とする」と同じルールを、任意のモデルに設定することができます。

詳細はこちらをご覧ください。

折り返し数の設定

実装イメージ

ラジオボタンの選択肢はデフォルトで1行につき4つの選択肢が表示される設定になっています。
1行に表示する選択肢の数は自由に設定することができます。
下図では1行に8つの選択肢を表示しています。

図12 1行8つ表示で折り返し

定義方法

注意

ここでは詳細画面の設定方法を説明しています。一覧画面に適用する場合は「一覧画面への適用」をご覧ください。

参照する側のモデル項目(ここでは顧客モデルの地区名項目)の詳細定義ダイアログを開きます。
「入力制御」タブをクリックして開きます。
「モデル参照」欄の「チェックボックス・ラジオボタンの折り返し数」を指定します。空白の場合は「4」と解釈されます。

図13 折り返し数の設定

検索画面の設定

検索時の入力タイプを変更する」で検索画面の入力タイプをチェックボックスとした場合にも、ここでの設定値が反映されます。

一覧画面の設定

モデル項目詳細設定の出力制御 > 一覧画面 > モデル参照 > 1行に表示するチェックボックス・ラジオボタンの表示数にて設定してください。

図14 一覧画面の設定

チェックマークの表示設定

実装イメージ

詳細表示画面では、選択したデータの横にチェックマークが表示されます。(デフォルト動作)

図15 チェックマークが表示される

このチェック画像を非表示にすることもできます。

図16 チェックマークを非表示に設定

定義方法

注意

ここでは詳細画面の設定方法を説明しています。一覧画面に適用する場合は「一覧画面への適用」をご覧ください。

モデル項目詳細定義の「出力制御」タブをクリックして開きます。
「詳細画面」タブ内のモデル参照欄の「チェックボックス選択時の画像を表示しない」にチェックを入れます。
(デフォルトではチェックがはずれています。)

図17 チェックボックス選択時の画像を表示しない設定

仕様・制約

  • 上記の設定は詳細画面のみ有効です。一覧画面用の設定は別途必要です。(出力制御 > 「詳細画面」タブより行えます。)
  • 参照連動項目の参照先がチェックボックス型の場合、参照先のチェックボックスの「チェックボックス選択時の画像を表示しない」設定が詳細画面/一覧画面に反映されます。登録・更新画面には反映されません。

一覧表示画面への適用

実装イメージ

上記で説明した「折り返し数」と「チェック画像の表示切り替え」の設定を一覧表示画面にも設定することができます。 下の図は、折り返し数を「1」に、チェックマークを「非表示」と設定した場合の表示です。

図18 一覧画面

定義方法

モデル項目詳細定義ダイアログの「出力制御」タブをクリックして開きます。
続いて、「一覧画面」タブをクリックします。
「モデル参照欄」の「チェックボックスの選択された画像を表示しない」「1行に表示するチェックボックス・ラジオボタンの表示数」をそれぞれ設定します。

図19 一覧画面の設定

仕様・制約

本設定はグリッド形式には対応していません。

選択していない項目も表示する

実装イメージ

データの詳細画面では、下図のように選択した項目のみが表示されます。これがデフォルト動作です。

図20 詳細画面での表示

設定によって、下図のように選択されていない項目も表示することができます。

図21 選択されなかった項目も表示する

定義方法

モデル項目の型詳細設定ダイアログを開きます。(型選択欄の横のボタンをクリック)
「オプション」をクリックして開きます。
「選択されなかった項目名を表示する」設定にチェックを入れると、選択したもの以外の表示設定が有効になります。

図22 モデル項目の型詳細設定ダイアログ

ワンポイント

この設定は一覧画面にも反映されます。

選択できる個数を設定する

実装イメージ

複数の選択肢の中から、最大で 3 つまで選択できる(4つ以上選択すると入力エラーにする)例を紹介します。

図23 4つ選択するとエラーとする

定義方法

モデル項目詳細定義ダイアログの「入力チェック」タブをクリックして開きます。
「ユーザ定義チェック」欄に、許容する(エラーにならない)条件を記述します。
エラー時のメッセージ内容もここで設定します。
「選択した値が3つ以下であること」を示す式は以下の通りです。

CHECKED(${area})<=3

図24 ユーザ定義チェックの設定

詳細は「ユーザ定義チェック」をご覧ください。

検索時の入力タイプを変更する

登録・更新画面と検索画面の入力タイプを変更することができます。
詳細はこちらをご覧ください。

参照先モデルのデータが削除されていた場合

参照先のデータが削除されていた場合、詳細表示画面には 「存在しないデータ」と表示されます。
この文言は変更することができます。 詳細はこちらをご覧ください。

データベース内部の詳細

チェックボックスで選択された値を管理するため、別のテーブルが用意されます。詳細...

仕様・制約

  • 参照先のモデルの主キーが複合キーの場合、本機能(チェックボックスとして参照する)は利用できません。
  • 他モデルの参照項目の参照先が、他モデルの参照項目となっている定義は動作しません。
    例えば次のようなケースについて、
    他モデルの参照(チェックボックス) > 他モデルの参照(リストボックス) > 通常項目
    他モデルの参照項目の参照先に、他モデルの参照項目を指定することはできません。

    ※ Wagbyでは、モデル参照は「ID部」を管理しています。そのため上の定義だと、チェックボックスに表示される選択肢に、リストボックスのID部が表示されてしまいます。これは利用者の意図とは異なる動作です。
    ※ 上記の例ではチェックボックス > リストボックスの組み合わせでしたが、リストボックスのみならずラジオボタン、チェックボックス、検索画面いずれの組み合わせも同様に、動作しません。