こんにちは、笹川です。今回は、ルックアップフィールドを使っているアプリにファイルを読み込む手順についてまとめました!
ちなみに、前回はフィールドのタイプによって注意するポイントをまとめていますので、こちらもぜひ併せてご覧ください。
ルックアップの設定
kintoneでは、複数のアプリを関連付けてデータを持たせることで、より便利に活用することができます。そんなときに活躍してくれるのが「ルックアップ」です。
ルックアップを設定することで、他のアプリから必要なデータをコピーして取得できるようになります。詳しい使い方はkintoneヘルプのルックアップを設定するをご覧ください。
今回は、従業員の配属・異動情報をkintoneで管理する想定でアプリを用意してみました。
このような構成で「従業員名簿アプリ」に登録した従業員に対し、入社以降の配属の情報を「配属・異動情報アプリ」に登録します。

従業員名簿アプリには、1従業員1レコードで登録します。

配属・異動情報アプリには、従業員に関連付けて登録できるよう、従業員名簿からデータを取得するルックアップを設定します。

従業員番号を入力して、氏名を取得するようにします。
ファイルの読み込み
それでは早速、過去データのCSVファイルを読み込んでみましょう。ファイルの読み込み方はkintoneヘルプをご覧ください。

サンプルとしてこのようなデータを用意しました。従業員番号があるので、この列をルックアップに読み込ませればOKです。
しかし、ここで困ったことになりました。

なんと、ルックアップである従業員番号が、読み込むフィールドに表示されません!ルックアップはCSVでは登録できないのでしょうか?
重複禁止の設定
心配になってしまった方はご安心ください。ポイントは「重複の禁止」です。
ルックアップは、コピー元のフィールドを重複禁止に設定することで、ファイル読み込みでデータが登録できるようになります。
<追記>
2024年8月のアップデートで利用可能になった「新しいファイル読み込み方式」では、「参照先が重複禁止設定されていない『ルックアップフィールド』」を指定できるようになりました。詳しくはこちらをご覧ください。
また、2024年10月のアップデートで、デフォルトのファイル読み込み方式が「新しいファイル読み込み方式」に変更されました。
配属・異動情報アプリに設定したルックアップの、コピー元のフィールドを確認してみましょう。

コピー元のフィールドは「従業員番号」ですね。
早速、従業員名簿アプリの従業員番号を重複禁止に設定しましょう。

右上の歯車マークから設定に進んで、

「値の重複を禁止する」にチェックを入れたら、アプリを更新します。
もう一度、配属・異動情報アプリのファイル読み込みにチャレンジしてみましょう!

今度は、従業員番号が表示されました!

ファイルの読み込みも成功、無事にデータを登録することができました!
なぜ、重複禁止の設定が必要なのか
ルックアップは、その名の通り、他のアプリから必要なデータを「検索」する機能です。
データを検索した結果、候補が1つならよいのですが、2つ以上あった場合にどちらがいま探しているデータなのかは判断ができません。
例えば、従業員番号ではなく人の名前でルックアップをした場合、同姓同名の人がいると候補が複数表示されます。

この場合、どちらを登録したいのかは、人にしか分かりません。
このように複数候補が存在する状態にならないよう、検索の対象(=コピー元のフィールド)を重複禁止に設定して、同じ値が入らないようにします。
これは、CSVファイルを読み込むときだけではなく、「プララグインを使う」、「個別にカスタマイズ開発をする」といった場面でも意識する必要があります。つまりは、人が直接kintoneの入力画面を操作するのではない方法でデータを登録するとき、と覚えてもらうと良いと思います。
例えば、krewSheetでルックアップを編集させる、じぶんページでルックアップを使う、というときには設定が必要です。
ルックアップを設定するときに「名前で探す方がやりやすい」と思っても、将来的に機能拡張をするときに、「同姓同名がいて重複禁止にできない…」と困ったことにならないよう、ルックアップの特性を理解してアプリを作っていきましょう!
今回は、ルックアップを設定したアプリにファイル読み込みでデータを登録する方法をまとめました。
さて、登録ができると、次に気になるのは「更新」ですね。というわけで次回は、ファイル読み込みによるデータの更新について、整理していきたいと思います。お楽しみに!
関連記事
- kintoneから書き出したCSVファイルの0が落ちないようにする方法
- kintoneのCSVファイル読み込みで失敗しないための工夫(1)フィールド編
- kintoneのCSVファイル読み込みで失敗しないための工夫(3)レコード更新編
- CSVファイルの書き出し・読み込みの注意点
- 「このアプリを参照しているアプリ」画面を追加【2024年8月アップデート情報】
弊社では、定額39万円でkintoneアプリを開発する定額型対面開発サービス「システム39」を提供しております。kintoneの導入やアプリ開発でお困りの方は、お気軽にご相談ください。