みなさまこんにちは、ジョイゾーの倉石です!
本ブログでは、kintoneのルックアップ設定に関するテーマについて記載しております。
ルックアップをもっと活用したい!kintoneをもっと使いこなしたい!
こんな方はぜひ、最後までご覧ください!
とっても便利なルックアップ機能!
ルックアップはアプリのフォームでデータを入力する際に、他のアプリのデータを取得できるようになる便利な機能です。
たとえば、「案件管理アプリ」に「顧客マスタアプリ」を参照するルックアップを設定すると、「顧客マスタアプリ」から顧客情報を取得して「案件管理アプリ」に必要なデータをコピーできるようになります。
それだけでなく、ボタン一つで選択できるので手入力による入力ミスを防ぐこともできます。
詳しいルックアップの設定方法については、kintoneヘルプのルックアップを設定するをご覧ください。
選択肢項目を使用する場合は注意
「コピーするフィールド」として指定できるフィールドは、「文字列(1行)」、「数値」、「リンク」などさまざまです。
その中で、「ドロップダウン」や「ラジオボタン」などの選択肢項目も、
“コピーするフィールド“として指定できるフィールドのひとつですね。
選択肢項目は全部で4つあります。
- ドロップダウン
- ラジオボタン
- チェックボックス
- 複数選択
ルックアップ用のフィールドはコピー元のアプリに配置された選択肢項目と同じものをそれぞれ設定することが多いですが、その分少し注意が必要な点もあるんです。
それは、
「コピー元のフィールドに選択肢を新たに追加・編集した場合、コピー先フィールドの選択肢の更新を忘れてしまうと正しくルックアップができなくなってしまう」
ということ・・・。
本ブログでは、選択肢を新たに追加した場合、編集した場合、削除した場合それぞれに分け、デモを交えながらお話しし、皆様がよりルックアップを使いやすくなるような情報をお届けしていきたいと思います。
今回のデモで使用するアプリ
今回、「献立一覧」アプリと「注文履歴」アプリという二つのアプリを作成しました。
◉コピー元アプリ
「献立一覧アプリ」。
名前の通り献立を一覧で見ることができます。
ラジオボタンで主食、ドロップダウンでメインディッシュ、チェックボックスで飲み物、複数選択で副菜を選択し、献立を登録します。
◉コピー先アプリ
「注文履歴アプリ」。
顧客がどの献立を選択したのかを一覧で見ることができます。
■献立一覧アプリ、注文履歴アプリのそれぞれのコピー先フィールドに設定した選択肢
主食(ラジオボタン) | ・白米 ・玄米 |
主菜(ドロップダウン) | ・鮭の塩焼き ・金目の煮付け ・ハンバーグ ・唐揚げ |
飲み物(チェックボックス) | ・緑茶 ・ほうじ茶 |
副菜(複数選択) | ・白和え ・切り干し大根 ・ひじきの煮物 ・きんぴらごぼう |
イメージで言うと、学食の食堂をイメージして、どのお客さまがどのメニュー(献立)を頼んだのか管理をするというものです。(あくまでもイメージです笑)
早速デモに入っていきましょう!
まずは、献立一覧アプリに登録されたレコードを注文管理アプリのルックアップで呼び出してみましょう。
現在、献立一覧アプリには2つのレコードが登録されています。
献立番号「K-0001」の献立を呼び出します。
注文履歴アプリからルックアップの取得ボタンを押し、「K-0001」の献立の情報を取得します。
すると、このように注文履歴アプリのフィールドに「K-0001」の献立の情報が読み込まれました。
このように、コピー先にも入力したい選択肢がある場合は全ての項目に該当のデータが入ります。
コピー先フィールドの選択肢とコピー元アプリの選択肢が異なる場合はどうなってしまうのか
コピー先フィールドの選択肢とコピー元アプリの選択肢が異なる場合はどうなってしまうのか、実際に見ていきましょう。
今回は、コピー元アプリにだけ選択肢を追加した場合にどうなるのか、実際にデモをお見せして説明をしていきたいと思います。
早速、下記内容の選択肢をそれぞれのコピー元アプリである献立一覧アプリに追加します。
■献立一覧アプリに追加した選択肢
主食(ラジオボタン) | パン |
主菜(ドロップダウン) | お刺身 |
飲み物(チェックボックス) | オレンジジュース |
副菜(複数選択) | ポテトサラダ |
この検証では、わざと注文履歴アプリのそれぞれのコピー先フィールドには上記の選択肢の追加を行いません。
具体的にいうと、例えばドロップダウンの項目である「主菜」では、献立一覧アプリには追加した選択肢である「お刺身」が入っていますが、注文履歴アプリには登録されていないという状態です。
他項目の「主食」、「飲み物」、「副菜」も新たに追加した選択肢がコピー先アプリのコピー先フィールドに追加されておらず、献立一覧アプリ、注文管理アプリのそれぞれのコピー先フィールドで選択肢が異なります。
では、献立一覧アプリで、追加した選択肢を選んだレコードを作成し、このレコードの情報をコピー先アプリのルックアップで呼び出してみましょう。
呼び出した結果がこちらです。▼
◉ラジオボタンの場合
ラジオボタンの場合は、元々設定した「初期値」で登録されます。
◉チェックボックス、ドロップダウン、複数選択の場合
登録したいデータがない場合は、空白の状態で登録されます。
ドロップダウン、複数選択の場合、複数登録されたうちコピー先にも選択肢があるものはルックアップの値として登録されます。
今回の場合だと、複数選択の「ポテトサラダ」と「ひじきの煮物」のうち、コピー先にも選択肢が存在している「ひじきの煮物」のみ登録されるイメージですね。
今回はコピー元アプリの選択肢を追加した場合についてお話ししてきましたが、選択肢を変更したり、削除した場合でも、コピー先に呼び出したいデータがない場合はこのように正しくデータが登録されません。
このように、ルックアップで選択肢を入れているはずなのに、空欄になってしまったり初期値になってしまう際は、コピー先のアプリの選択肢がコピー元の選択肢と一致しているか確認をしてみてください。
※【補足】初期値が入る場合と入らない場合の違いとは?
項目によって、初期値が入っているものと入っていないものがあることに疑問を感じた方も多いと思います。
初期値が入るラジオボタンとそのほかの項目の違いは、「必須項目か必須項目でないか」です。
●ラジオボタン
ラジオボタンは必須項目です。
必須項目はデータの入力を空にすることができないため、登録したいデータが選択肢にない場合は初期値として設定された選択肢が自動的に選択されます。
今回の場合だと、初期値は「白米」のため、コピー先アプリには「白米」として登録されます。
●そのほかの選択肢項目
ドロップダウン、チェックボックス、複数選択は必須項目ではありません。
空でも登録ができる項目は空白で登録されます。
アプリの設定で、コピー元フィールドで初期値の設定をしていた場合でも、ラジオボタンのように初期値のデータが自動的入ることはありません。
また、それぞれのコピー先フィールドを必須項目にした場合は、「以下の入力内容にエラーがあるため保存できません。」とエラーが発生し、登録することがができなくなります。
コピー先アプリ更新をアプリ更新を忘れた際の対策・忘れないようにするテクニック
このようなエラーを起こさないようにするには、もちろんコピー先のアプリの更新を行うことが重要ですが、人間忘れてしまうこともありますよね。
コピー元アプリ、コピー先アプリで選択肢を揃えることは大前提ですが、その上でアプリ更新を忘れた際の対策・忘れないようにするテクニックついてお話ししていきたいと思います。
◉アプリ更新を忘れた際の対策
コピー先アプリ更新を忘れた際の対策としては、
「コピー先フィールドを文字列(1行)フィールドにしてしまう。」
というものがあります。
ラジオボタン、ドロップダウン(選択できるのが一つのフィールド)のコピー先のフィールドには、コピー元のフィールドと同じ選択肢項目のフィールドだけでなく、文字列(1行)フィールドを指定することができるのですが・・・。
文字列(1行)フィールドは、自由入力のフィールドとなるため、コピー元のフィールドの選択肢が追加されてもコピー先アプリの更新を行う必要がありません!
そのため、今回の例で言うと、ラジオボタンフィールドの「主食」、ドロップダウンフィールドの「主菜」のコピー先フィールドを文字列(1行)フィールドで設定すると、このように正しくルックアップができるようになります。
もし、選択肢の追加を行う頻度が多い場合は、コピー先フィールドを文字列(1行)フィールドで持たせるのも一つの手です!
しかし、複数選択、チェックボックスといった2つ以上の選択肢を選ぶ場合は文字列(1行)フィールドを選択することはできませんのでご注意ください。
また、文字列にしてしまうと絞り込みの際にドロップダウンやラジオボタンのように選択肢から選べなくなってしまうので注意しましょう。
◉コピー先フィールドの更新を忘れないようにするテクニック
コピー先フィールドの更新を忘れないようにするテクニックとしては、コピー元フィールドの付近にラベルフィールドを配置し、
「ルックアップとして参照している項目なのでコピー先アプリの選択肢の追加を忘れないでほしい」
という旨を記しておくという方法があります。
この方法で、事前に更新忘れを防ぐことができます。
是非皆様も試してみてはいかがでしょうか。
まとめ
本ブログでは、選択肢項目をルックアップに設定する際の注意点についてお話しいたしました。
選択肢項目を使用してルックアップを設定する際や選択肢を追加するときは、コピー元とコピー先で選択肢を揃えることを忘れないようにしましょう。
その上で、今回ご提案したテクニックもぜひ使ってみてくださいね。
弊社では初回開発無料の定額39万円でkintoneアプリを開発する定額型開発サービス「システム39」を提供しております。kintoneの導入やアプリ開発でお困りな方は、お気軽にご相談ください。
*Webでの打ち合わせも可能です。