カスタマイン「やること」オススメ3つ【2021年8月】
はじめに
イシイケンタロウです。
ハケを作ってるマルテー大塚という会社でkintoneに触っています。
早速ですが今回はカスタマインについてです。kintoneでjsカスタマイズをされる方や、カスタマイズスペシャリスト資格を保有している方は共感してくださると思うけど、カスタマインの「やること」には難度の濃淡が結構あります。
年額1000プランの方はコスパを気にせずお好きに使っていただければと思いますが、ヘイシャのような月額プラナーのみなさまは、同じ6,000円なのでなるべくコスパ良く「やること」をゴリゴリ使い倒しちゃいましょう!
ということであくまで個人的にですが、コスパが良い( ≒ 普通のカスタマイズでは実現できない、または実現できるとしてもすごく大変な)「やること」3つをオススメです!
一覧表示のままレコード詳細も表示
もったいぶっても仕方ないので1位から発表しちゃいますが、私が最もオススメする「やること」は「一覧画面と詳細画面の複合画面を作成する」です!
https://docs-customine.gusuku.io/ja/actions/other_ui/create_mix_view/
カスタマイズビューでiframeすごく頑張れば内製できなくはないのだけど、『母さんの居るあの空の下』より遠い遥かな道のりに絶望します。解決する課題とのバランスを考えたらダントツでコスパ最強です。
適しているのは承認系のアプリです。複数レコードを承認しなければならない場合、一覧から詳細を開いて承認してまた一覧に戻って・・・という作業が無くなります。
プロセス管理を使ってもいいけど、詳細画面にボタンとユーザー選択をその人数分設置する方法があります。①ボタン配置②ログインユーザー取得③画面リロード、とアクション3つだけです。
単純ゆえにプロセス管理ではできない代理承認もできます。簡単なので内部統制にこだわりなければやってみてください。
ボタンとユーザー選択それぞれ1つずつでできそうだけど、2人目以降ボタン押下時ユーザー選択には追加ではなく上書きになるので、承認者人数分用意してね。(誤認だったり回避策あったらご指摘お願いします)
ワークフローだけじゃなくて、日報などのコミュニケーションを伴う報告系のアプリでも便利です。一覧画面から画面遷移なしでコメント書けるしもちろん読めるし。
保存時の赤いヤツ回避
次のおすすめは「レコード編集画面をロックする」です!
https://docs-customine.gusuku.io/ja/actions/other/lock_record/
時間かけて苦労しながら頑張ってレコード内容を編集してやっと保存、ってときに出るこの『クリリンのことかー!』くらい腹立つヤツを回避できます。
何よりkintone単体のjsカスタマイズでは実現できません。コスパとかじゃなく要件として存在したらカスタマインが必須となる機能です。
用途としては、そのまんまですがマスタ系など同じレコードをたくさんの人が編集するアプリに適しています。ましてやフィールド数が多かったり長文を書く必要があったら無いと困る機能です。
嫌われがち縦長マスタがスッキリ
その次は「タブグループを作成する」!
https://docs-customine.gusuku.io/ja/actions/button/create_tab_group/
kintone ui component V0 に tabs という代替品があるんだけど、残念ながらV1ではなくなってしまいました。
もしかしたら今後追加されるかもしれませんが、現時点ではカスタマインでの実現が最もコスパが良いと思います。
この機能もマスタ系アプリ向きです。kintoneの詳細画面はテーブルや関連レコードなど1対nになる情報も同じ画面に入れられるため、どうしてもマスタの属性フィールドが多岐に渡ります。詳細画面が縦長で使いづらいと言われたら活用してみてください。
ラジオボタンの値変更後イベント+グループの表示/非表示で疑似的に同等機能を作成できるけど、選択肢文字列が長くなるとちょっとカッコ悪い。かといってドロップダウンを使うと1クリック増えちゃう。ってことで今のところカスタマインが良いかなって感じです。
後に続く自動処理の起点として便利
次は「やること」じゃなくて「条件」なんだけど、「ルックアップで取得が失敗した時」です!
https://docs-customine.gusuku.io/ja/conditions/condition_event/when_lookup_failed/
こちらも禁断ではない普通のカスタマイズをする場合は実現できません。代替手段が無いので、要件発生時にはカスタマイン必須です。
ルックアップなのでマスタを呼び出す側のアプリに適しているのですが、その中でもマスタ側フィールドが1つしかない場合が最適です。失敗したら即登録して再度ルックアップできます。
余談ですが「ルックアップで取得が成功した時」は代替手段あります。
「ほかのフィールドへコピー」するダミーフィールドを作っておいて、そのダミーフィールドの値変更時に処理を記述すれば、疑似的に「ルックアップで取得が成功した時」の処理となります。
その他
jobrunnerとガントチャートと出力はまだ使いこなせてないのでまた今度。今回は選考対象外です。
おわりに
「やること」オススメ3つって言ってたのに勢いで4つ書いちゃったし、しかも最後は「条件」になっちゃったけど、参考になれば幸いです。
最後までお読みいただきありがとうございました。