みんなの投稿

ルックアップのキー[コピー元のフィールド]って、初心者の方にどう説明されていますか?
(過去から何度も議論されている話題ですが。例:https://kincom.cybozu.co.jp/chats/sfnqkjn03tfhw0ix

■前提
各部署で必要なアプリはそれぞれの担当者が作成しています。
「やりたい」と言ってくれた人には基本的にアプリ管理権限を付与しているので、アプリ作成者のスキルはまちまちです。

■背景
最近、とある事情によりマスタアプリの切り替え作業があり、参照しているアプリを一通り見直したところ、少しモヤモヤしたことがありました。

例(脚色あり):
ルックアップの「関連付けるアプリ」は【顧客リスト】、
[コピー元のフィールド]が「会社名」になっているケースがチラホラ。
【顧客リスト】には「値の重複を禁止する」に設定した主キー「会社コード」があるので、そちらを使って欲しいのが本音。
このままだとデータ移行時にCSV読み込みがうまくいかないパターンがあり、アプリ修正やデータ加工が少し面倒でした。

■モヤモヤポイント
① 初心者向けガイドの事例設定
公式ガイド「kintone ルックアップの基本を学ぶ|便利に使おうガイドブック」https://kintone.cybozu.co.jp/material/pdf/kintone_guidebook_vol04.pdf を見ると、「値の重複を禁止していない」会社名をキーにする流れになっています。
公式セミナーも同様の傾向で、DBの考え方に慣れていない方だと「会社名」で設定してしまうのは自然な流れかなと思います。

② 重複禁止のフィールドをどうするか
・レコード番号は非推奨
CDNの記事「レコード番号をユニークキーにしない」https://cybozu.dev/ja/id/2151b1e14daba30d495c8c38/#not-use-record-number
にもあるように、レコード番号はご法度。
……となると、プラグイン・カスタマイズ等で自動採番という選択肢になりますが、CSV取り込み時にカスタマイズは動作しない点や、krewSheet等の標準画面以外の動作にも気を使う必要が出てきます。

・複合キー生成
「会社名+電話番号」などの例も見たことはありますが、社名変更リスクを考えると主キーにするのは不安。
基本的には「一生変わらない値」を主キーにしたいところです。
また計算フィールドで結合させると、重複禁止にできない問題もあるある。これもプラグイン・カスタマイズ頼み。

・コードは分かりにくい問題
[コピー元のフィールド]にどうにかして作成したユニークキーを設定できたとして、実際にルックアップ使用する側からするとコードなんて一々覚えてられないので面倒って声が出ます。
……となると、逆引きできるプラグイン・カスタマイズ。
皆さん大好きTISさんの「ルックアップコピーフィールド検索プラグイン」
個人的にはRibbit's worksさんの「関連付けないルックアッププラグイン」が秀逸です。関連付けないけど関連付けることもできる優れもの。(絞り込み条件をクエリで設定させるのだけはどうにかして欲しいですが・・・)。

■本題
キンコミに参加されている皆さんは、上記のようなポイントを理解した上で運用されていると思いますが、
これからアプリ作成を始める初心者の方に、どこまで説明していますか?

現状としては、初期段階ではルックアップの細かい話までは説明していません。初心者レベルの方が作るアプリはある意味シンプルなので修正もどうにかはなるってのもあります。
「痛い目を見て学ぶ」のも成長の一部かなと思うのですが、よくわからんからもうやらない!ってなるのは悪手なので、うまくフォローできる方法がないかと悩んでいます。



(正直なところ、公式が「自動採番フィールド」と「ルックアップ仕様」を改善してくれるのが一番なんですが…笑)

ーーー
たまには質問してみようと思い投稿してみました!
皆さんの運用方針を是非参考にさせてください!!

4件のコメント (新着順)

私は、一人kintone使用者、管理者ですので、
社内展開を行う段階になったときの良い勉強の機会になりました。
有り難うございます。
なお、弊社は、鉄道沿線の駅ナカ店舗の運営・管轄を事業とする会社です。

初心者への説明として、
・kintoneは、RDBMSではないにしてもデータベース的なプラットフォームであること。
・厳密に正規化を求められるものではないものの、正規化的な考えを基本とすること。
・よって、ユニークなコードを作成して管理すること。
この3つを丁寧にわかりやすい言葉と図示で説明しようと考えました。
そして、ユニークなコードは、
可能な限り他システムとの連携・連動を視野にして
他システム(会計、テナント管理等)と共通のコードを
使用することをお願いしようと思いました。
※例えば、取引先コード、店舗コード等

一方、ご指摘のとおり、
システムのコードに馴染みのない人たちに向けての対策も
十分練らないとならないと思いました。


ご返信ありがとうございます!

考え方が整理されていてとってもわかりやすいですね〜。
レベルアップ講座用に文面参考にさせていただきます!

システムのコードに馴染みのない人たちに向けての対策も
十分練らないとならないと思いました。

ここ難しいですよね。ノーコードツールとはいえ考え方を知っておく事は大切なので。
その時の状況次第で柔軟に、ってのが答えのない答えなんだろうとは思っています。

有り難うございます。

弊社の場合、店舗区画は、固有のコードが振られており、
私が相手とする営業方にとって、
日常的な業務の関係で「馴染みのあるコード」になっているのですが、
取引先(=賃借人)コードは、主に経理・会計システムで使用されるので、
営業方にとっては、「馴染みのないコード」になります。
この「馴染みのないコード」を
ふゆきさんが仰る「検索」を始めとして
どのように共有するかが検討課題であると認識しています。

現時点では、該当するアプリは、
実運用されていないプロトタイプになりますので、
営業方と協議、ヒアリングしながら検討課題の解決に向かうことになります。
とはいえ、営業方の負荷を完全払拭することは困難と想像していますので、
どこまで軽減できるのかという範疇に留まるのではと思ってもいます。

ふゆき
製造業
2025/10/16 09:57

ルックアップ...突き詰めていくと 結局
kintoneの弱点「検索エンジン」の使いにくさ(=めんどくさい!)
に突き当たるんですよね

ユニークCODE(≒英数文字の羅列)を覚えられないのは当然で
データベースは「ユニークCODE」を キー とするのも常識※で
 ※(○○奉行とか○○会計とか、ほとんどの データベースソフトでの常識)
各社 検索方法を考えているのではないでしょうか?

それを いちいち 説明するのは...
説明しても理解できるかはわからないとおもいます
 (データベースの仕組みの説明になる)
なので、

マスタアプリ(ルックアップの参照先)には
① Pluginを利用して、ユニークCODE(一意な№)を取得

トランザクションアプリ(ルックアップフィールドのあるアプリ)の
② ルックアップフィールドは ①で取得した№を指定
③ 関連付けないルックアッププラグイン(Ribbit's works)を
  利用して、検索窓フィールドを作る

と云うルールを作り
この①~③の厳守してもらうようにするのが、よいのではないでしょうか?

ご参考_【初心者入門】データベースとは?図解で仕組み・種類を簡単に解説!

---ちなみに、ですが-------------------

「関連付けないルックアッププラグイン」はテーブル内では機能しません
  (有料の「拡張ルックアップ プラス」なら機能するみたいですが...)
なので、自分はテーブルの外からドラッグすることで対応してますヨ


kintoneはRDBではない!
- 「kintoneにおけるデータ設計の基本」
- 「スクラッチ開発経験者向け!kintoneとリレーショナルデータベース(RDB)の違い」
というCDN記事がありました。

とはいえ、もう少しどうにかして欲しいかなって部分はありますよね〜w
標準機能で親子アプリ作ろうとするといずれぶち当たる壁ではあるので。

そこでどれだけ敷居を下げて説明できるか。プラグイン(やカスタマイズ)使えば何とかなるよってのは、ハードルを上げてしまう要因ではあります。
様々なスキルレベルの方がいるので①~③を厳守させるのは難しそうです。ただ、レベルアップ講座みたいな感じで、整理していただいた考え方を伝えるのが良いかなと思いました!

テーブル問題もあるあるですね。ここらへんの説明コストが高いのは、ノーコードツールの宿命であり仕方ないのかなあ

参考情報ありがとうございます!

ふゆき
製造業
2025/10/17 08:40

kintoneはRDBではない! 中略
というCDN記事がありました。

確かに、RDBではない とおもいます が!
kintone の は 「カード型データベース」ではないかと思います

理由①
 2002年10月15日に販売終了した 「サイボウズ DBメーカー」
 の後継ソフトウェアがない(=kintone と競合するから必要ない)
 また、ルックアップでリレーション機能を実現している(カタログ内に記載あり)

理由②
(テーブルDataをCSV出力で確認すると)
Dataの格納構造が「カード型データベース」と同じ

様々なスキルレベルの方がいるので①~③を厳守させるのは難しそうです

同感ですね...
嫁も、言うことを聞かずに苦労して泣いて、初めて気づいたって感じでしたから
ま~~「文系管理職でもシュッシュとできちゃう俺~~」なんて CMの話ですから

ここらへんの説明コストが高いのは、ノーコードツールの宿命であり仕方ないのかなあ

これも同感ですね
そして最終的には、個人個人がkintoneを覚えて
楽に仕事をしようとする意欲次第かな~
それが、DX ってことではないでしょうか

モカ
建設業
2025/10/16 09:32

おはようございます。

各部署で必要なアプリはそれぞれの担当者が作成しています。

弊社も同じような運用をしています。



ルックアップの「関連付けるアプリ」は【顧客リスト】、
[コピー元のフィールド]が「会社名」になっているケースがチラホラ。

弊社も同様に[コピー元のフィールド]は【会社名】となっていることが多いです。



【顧客リスト】には「値の重複を禁止する」に設定した主キー「会社コード」があるので、
そちらを使って欲しいのが本音。

基幹システムがあり、取引先マスタアプリは基幹システム内の取引先マスタから
CSVで書き出したものを加工してkintoneに取り込んでおります。

基幹システムでは【会社コード】【会社名】のどちらでも引用できる仕組みになっており
kintoneでも引き続き同じように運用希望とのことでした。
【会社コード】【会社名】のどちらも重複禁止設定にしてあります。
管理側が作成するアプリやCSVで一括更新する予定のあるアプリは
【会社コード】を[コピー元のフィールド]にしています。

【会社名】は同じものが出てきますので、CSVで書き出した後に関数でに加工して
重複したものは【会社名】の語尾に【2】をつけるようにしています
(2社以上あれば3,4など)

kintoneでは伝票発行など、【会社名】が取引先に渡らないため
現状問題にはなっていません。
今後も伝票発行などは基幹システムで運用するのでkintoneの方針も
変更なさそうです。

ルックアップで【会社名】を参照する際に住所も表示されるようになっているので
打ち間違えは今のところ聞いておりません。

【会社名】は変更されますが、ルックアップで取得する際に【会社コードも】
取得されるようにしていますので、関連レコードでも対応可能です。



初心者の方にどう説明されていますか?

管理側はkintoneの知識が深い方がアプリを作成しているのですが
営業側(レコード入力者)がアプリを作る場合はあまり知識の深くない方が多いので
作成する際に管理側に質問が入ります。
その際に、どのように運用したいのか聞いて【会社コード】【会社名】のどちらを
[コピー元のフィールド]にするのか決めております。

弊社は管理側でアプリが作成されることが圧倒的に多いので、色々な方が
アプリを作成される場合は考え方を統一させるのは難しいですよね。



・コードは分かりにくい問題
[コピー元のフィールド]にどうにかして作成したユニークキーを設定できたとして、
実際にルックアップ使用する側からするとコードなんて一々覚えてられないので面倒って声が出ます。
……となると、逆引きできるプラグイン・カスタマイズ。
皆さん大好きTISさんの「ルックアップコピーフィールド検索プラグイン」
個人的にはRibbit's worksさんの「関連付けないルックアッププラグイン」が秀逸です。

こちらのプラグイン知りませんでした!
弊社もコードを覚えているのは事務員くらいなので、便利そうですね!
情報ありがとうございます!調べてみます😊


こんばんわ!(日を跨いでしまった)

弊社も同じような運用

ナカーマ!
現場主導がkintoneの価値だと思っています。その分ガバナンスに苦悩するのですが…

また、当社も取引先マスタは基幹と連携しています。
実は元々基幹を主でkintoneにデータを渡していたのを、kintoneを主に切り替えた。というのが事の発端になっています。

kintoneでは伝票発行など、【会社名】が取引先に渡らないため
現状問題にはなっていません。

なるほど。割り切ってしまう考えもありですね。

あまり知識の深くない方が多いので
作成する際に管理側に質問が入ります。

良い体制ですね!相談に乗りやすい環境作りも大切。
当社の場合、良くも悪くも自前主義で結構好き勝手にやってくれるので、細かく仕様を見切れていないアプリが沢山ありますw

「関連付けないルックアッププラグイン」は無料でも使えるのでオススメです!
Ribbitさんのプラグインは他ではあまり見ない独自の機能があって使い勝手が良いので重宝しています

こんにちは。

お話の内容は、ルックアップアプリのあるあるですね。

基本的には「一生変わらない値」を主キーにしたいところです。

RDBの仕組みに詳しい方なら当然の考え方ですが、その辺の学習コストが低いのも、kintoneの強みですね。

私は、ユーザー様のレベルに合わせて、以下の様にお願いしています。

レベル1
顧客の電話番号(重複禁止)を、マスターの主キーにして、ルックアップのキーも電話番号にする。会社名は参照フィールドにする。
電話番号なら、顧客を識別する情報として、違和感が少ないです。

レベル2
法人番号又はインボイス登録番号を、マスターの主キーにして、ルックアップのキーも同じにする。
会社名は参照フィールドにする。
インボイス番号は、請求書の確認で見ることが多いので、電話番号の次によく見られる重複の無い会社の属性情報です。

レベル3
自動採番プラグイン(無料版)を導入して、マスタの主キーを顧客番号にする。

いずれの場合も、ルックアップの候補は、会社名のフリガナの昇順でソート表示しています。

ご参考になりましたら。

PS
Ribbit's worksさんの「関連付けないルックアッププラグイン」が秀逸なのは、同意見です。
私も良くお世話になってます。


ご返信ありがとうございます!

学習コストが低いのも、kintoneの強み

これは確かに!
ある意味データベース的には適当でも運用が回る仕組みはできてしまうので、それはそれでいいのかなとも思っています。
csvで一括更新できない → 運用方法にもよるが、そもそもそういう場面ってそこまでない。あっても力技でなんとかはなる

ユーザーのレベルに合わせて伝える情報を分ける。
ステップアップしていくのがやっぱり良さそうですね〜
参考になりました!