【ローコード開発ツール】Wagby EE 使ってみた! - 第7回 繰り返しコンテナ、繰り返し項目を追加する

前回までは他モデルと連携させて、親子関係や外部連携の設定を行いました

今回は、必要に応じて項目を繰り返し入力できるようにする「繰り返しコンテナ」と「繰り返し項目」を紹介します

繰り返しコンテナ

モデルの中に、複数の項目をまとめて何個も作成できるようにしたものを繰り返しコンテナといいます

イメージとしては、レシートの中にある商品明細のようなものです

今回は例として、売上モデルに繰り返しコンテナの設定をしていきます

設定方法

まずは商品モデルを作成し、各項目を下表のように設定します

次に、売上モデルに繰り返しコンテナ専用の項目を追加します

例として、商品名と単価を内訳としてグループ化し、繰り返し登録できるように設定していきます

INFO

・繰り返しコンテナ、繰り返しコンテナID、繰り返したい項目は、通常の項目を挟まずに連続配置する必要があります。

・繰り返しコンテナIDは必須で、繰り返しコンテナの直後に配置します。

・繰り返しコンテナIDと繰り返したい項目の項目IDの始まりは、details/のように一致させる必要があります。

NOTICE

・項目IDは、同じモデル内の他の項目名と重複しないようにしてください。例えば”name”という項目IDが既にされている場合、コンテナ内に”details/name”という項目IDを設定することはできません。

・異なるコンテナIDでも、"details1/name"が既に設定されている場合、"details2/name"を設定することはできずエラーとなります。

なお、今回は商品名と単価を参照連動に設定します。参照連動の詳細については第6回をご参照ください

ここまで設定できたら、差分ビルドを行ってアプリケーション画面を見てみます

アプリで確認

売上の登録画面を見てみます。行の追加や、自由に行の挿入・削除ができるようになりました

商品名と単価は参照連動の設定をしているので、売上登録する前に商品を登録しておきましょう

続いて、売上登録で商品の登録をしてみましょう。同日売上分として、複数商品の追加ができました

保存して、売上の詳細画面を確認してみます

内訳(親となるメインデータ)に対し、商品名と単価(繰り返されるデータ)が子として紐づいて保存されました

繰り返しコンテナの特徴

繰り返しコンテナに似た機能に親子モデルがありますが、繰り返しコンテナは以下の特徴があります

・ページネーションがない

親子モデル同時更新機能では子モデル部のページネーションを設定できますが、繰り返しコンテナにはページネーションはありません。

・データ更新時は一括処理される

親子モデル同時更新機能では変更があったデータのみが処理されますが、繰り返しコンテナの場合は常にすべてのデータ(その繰り返しコンテナに含まれるすべての行)が更新されます。

・常に一つの親とのみ紐づく

親子モデル関係では1つの親に複数の子を紐づけることができますが、繰り返しコンテナは常に1つの親とのみ、紐づきます。

・繰り返しコンテナ内で参照連動が利用できる

参照先・参照先には、同じ繰り返しコンテナ内の項目同士を設定できます。なお、参照先のデータは、別の独立したモデルとして存在している必要があります。

繰り返し項目

モデルの中に、一つの項目を何個も作成できるようにしたものを繰り返し項目といいます

繰り返しコンテナは専用の項目の設定が必要でしたが、繰り返し項目は項目自体に「繰り返し」属性を設定する方法です

設定方法

顧客モデルに電話番号を追加します

詳細ボタンからモデル項目詳細定義を開き、「繰り返しとして利用する」にチェックを入れます

設定ができたら、差分ビルドを行ってアプリケーション画面を見てみましょう

アプリで確認

顧客の新規登録画面を見てみます

電話番号項目と併せて追加ボタンが表示されるようになりました

データを入力した状態で追加ボタンを押下すると、入力欄を一つ増やすことができます

INFO

・データ未入力のまま、入力欄を増やすことはできません。

・新規入力欄の追加は一つずつとなります。同時に複数個の入力欄を追加することはできません。

データを複数登録して、顧客の詳細画面を見てみましょう

データがカンマで区切られて表示されます

INFO

・登録できるデータの数に上限はありません。

・空白のデータは登録できません。新規の入力欄を空白状態で保存すると、そのデータは処理されずに無視されます。

なお、繰り返し項目の設定を適用できる型は以下のとおりです。

  • 文字列(文字列、メールアドレス、URL)
  • 数値
  • 日付
  • 日付時刻
  • 時刻
NOTICE

モデル参照、文字列(郵便番号、ファイル)は繰り返し項目として指定できないため、繰り返しコンテナを適用してください。

終わりに

今回は繰り返しコンテナ、繰り返し項目の設定方法について記載しました。次回はレイアウト設定vol.2として、タブ、レイアウト専用項目について紹介したいと思います

このページの内容が気になったらお気軽にお問い合わせください
また、さらに詳細なWagby EEの操作を見てみたい場合は紹介セミナーを開催しているのでこちらもお問い合わせください