ルックアップのキー[コピー元のフィールド]って、初心者の方にどう説明されていますか?
(過去から何度も議論されている話題ですが。例: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さんの「関連付けないルックアッププラグイン」が秀逸です。関連付けないけど関連付けることもできる優れもの。(絞り込み条件をクエリで設定させるのだけはどうにかして欲しいですが・・・)。
■本題
キンコミに参加されている皆さんは、上記のようなポイントを理解した上で運用されていると思いますが、
これからアプリ作成を始める初心者の方に、どこまで説明していますか?
現状としては、初期段階ではルックアップの細かい話までは説明していません。初心者レベルの方が作るアプリはある意味シンプルなので修正もどうにかはなるってのもあります。
「痛い目を見て学ぶ」のも成長の一部かなと思うのですが、よくわからんからもうやらない!ってなるのは悪手なので、うまくフォローできる方法がないかと悩んでいます。
(正直なところ、公式が「自動採番フィールド」と「ルックアップ仕様」を改善してくれるのが一番なんですが…笑)
ーーー
たまには質問してみようと思い投稿してみました!
皆さんの運用方針を是非参考にさせてください!!
ルックアップのキー[コピー元のフィールド]って、初心者の方にどう説明されていますか?
(過去から何度も議論されている話題ですが。例: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さんの「関連付けないルックアッププラグイン」が秀逸です。関連付けないけど関連付けることもできる優れもの。(絞り込み条件をクエリで設定させるのだけはどうにかして欲しいですが・・・)。
■本題
キンコミに参加されている皆さんは、上記のようなポイントを理解した上で運用されていると思いますが、
これからアプリ作成を始める初心者の方に、どこまで説明していますか?
現状としては、初期段階ではルックアップの細かい話までは説明していません。初心者レベルの方が作るアプリはある意味シンプルなので修正もどうにかはなるってのもあります。
「痛い目を見て学ぶ」のも成長の一部かなと思うのですが、よくわからんからもうやらない!ってなるのは悪手なので、うまくフォローできる方法がないかと悩んでいます。
(正直なところ、公式が「自動採番フィールド」と「ルックアップ仕様」を改善してくれるのが一番なんですが…笑)
ーーー
たまには質問してみようと思い投稿してみました!
皆さんの運用方針を是非参考にさせてください!!
10
18
なみおか|モノづくり開発企業
|
10/16
|
アイデア募集