Cybozu Days 2025開催直前! gusukuシリーズで出来ることを再確認!!

公開日:

こんにちは、サポートの沖です。

本日は10/24で、来週の月曜日からはCybozu Daysですね。アールスリーではエブリサイトが2025/10/23(昨日ですね)に正式リリースで販売開始ということで、gusukuシリーズも充実してきました。

ただ、充実しすぎて全体が把握できないとか、実は出来る事に気づいていないなど、見落としが色々と発生している話も聞こえてきます。

注意

本記事は情報提供を目的としており、本記事の内容は無保証、サポートの対象外です。
サポート窓口、問合せ窓口にご質問をいただいても対応いたしかねますのでご了承ください。

今回のブログでは、それぞれの製品の出来ることの再確認と、実は気づいていないかも、という機能について紹介していこうと思います。「やること」や「条件」のリンク先にはドキュメントがあり、ドキュメントには関連記事があります。関連記事では設定例を案内しているので、具体的な設定についてはそちらもご確認ください!

速報!
カスタマインにプラグインモード爆誕!!
詳細はCybozu Daysの会場で聞けるようなので、是非現地にお越しくださいー!

カスタマインの概要

kintoneアプリをカスタマイズする、というのが一般的なイメージと思います。

画面のカスタマイズ、自動処理(バッチ)、帳票出力といった「kintoneの”できない”を”できる”に」
gusuku Customineがあればkintoneらしさをそのままにkintoneをカスタマイズできます

でもカスタマイズってどこまで出来るのかは意外と知らないと思うので、代表的な例を紹介です。

カスタマインの「kintoneアプリのカスタマイズ」

このカスタマイズはユーザーがアプリを操作しているときに動作するカスタマイズです。操作しているアプリ上で動作しますが、操作しているアプリとは別アプリからレコード取得をしたり更新したりが可能なので、複数アプリを対象にしたカスタマイズを作成可能です。

レコードの集計

実は、売り上げの集計のような処理も可能です。「レコードを仕分けして別のアプリに登録する」の場合、元レコードをキーで仕分けして明細をテーブルに追加する、というところまでを一気に処理できます。具体的な設定例は以下をご確認ください。更新がある場合は、仕分けで追加したレコードを一括削除して再実行が簡単です。

レコードを仕分けして別のアプリに登録するカスタマイズ

更新時に集計済みレコードを事前削除が面倒という場合は、更新する方法もあります。この場合、「リストから要素を取り出す」を使った方法になります。設定例はこちらのページをご確認ください。

合計請求書(合算請求書)を作成する:kintoneアプリのカスタマイズ編

同様の動きは、この後にご案内する「定期実行タスク」でも可能です。というか、どちらかというと「定期実行タスク」の方が向いていると思います。

Excel/PDF/CSVを出力

見落としがちですが、レコードからExcel出力が可能です。1レコードを1帳票にしたり、複数レコードを一覧表にしたりなどが可能です。また、テーブルを表にすることも出来ますし、関連レコードも表にすることが可能です。関連レコードは出力時点の情報を使用するので、出力内容は最新だったりします。

関連レコード出力のテンプレート例

一覧画面から関連レコードも表の中に含めた帳票を出す

また、画像が添付されている場合はPDF出力に含めるということも簡単に実現可能です。更には関連レコードにある添付ファイルも出力可能なので、担当者の印影をマスタアプリに保存しておくと見積書のレコードには添付が不要にもなります。

帳票に印影を含めて出力する

更には、テーブルや関連レコードをシートに展開する機能があるので、アプリの関連レコードをレコード数だけ別シートにして、別シート内では関連レコードにあるテーブルを表で出力、という多段構成も出力可能だったりします。

これらはExcelファイルでテンプレートを作成するので、書式なども自由に設定可能です。条件書式も使えるので自由度も高いと思います。

レコードを更新

種類が豊富なので、名称を見ただけだと見間違えるくらい。。。特に違いが分かりづらいのが「レコードを更新する(キーの値をフィールドで指定)」と「レコードを更新する(キーの値を直接指定)」だと思います。どちらも同じ更新ですが「キーの値」の指定方法が違います。

カスタマインでは、「フィールド」を指定した場合は表示されているフィールド値が全て対象になります。例えば、一覧画面で表示されているレコード(最大100レコード)を順に処理ということもできます。便利ですが強力なので使い方にはご注意ください。

また、「レコードをもとに別のレコードを更新または追加する」のように、取得したレコードとキーで紐づく他アプリのレコードを更新・追加という動きも可能です。お手軽にレコード連携ができるので使い勝手が良いと思います。

レコードに関する「やること」はこちらをご確認ください。

「レコード」

アプリの見た目を変更

フィールド文字色を変更する」や「ボタンをスペースに配置する」や「メニュー位置に文字を表示する」がイメージしやすいと思います。設定例はこちらで。

レコード一覧とレコード詳細画面で条件書式を設定する

その他には「スペースでQRコード読み取りを開始する」でQRコードの読み取りを開始したり、「ガントチャートをメニュー位置に表示する」でガントチャートを表示したりも出来ます。

見た目の変更にに関する「やること」は以下のページを見ると確認可能です。

「その他のUI」

なお、ボタンとタブは別メニューになっています。タブも結構人気の機能と思います。

「ボタン・タブ」

フィールド値をセット

フィールドに値をセットする」で編集画面や追加画面のような、ユーザーが文字入力が出来る画面で値をセットできます。また、詳細画面でも値をセットすることが可能です。この場合、カスタマインが自動的にレコード更新をして値を保存しているので、使い方には注意が必要です。以下のページをご確認ください。

詳細画面でフィールドに値をセットできますか?

なお、一覧画面でも値をセット出来るので、表示されているレコードに対して一括処理もできます。ただ、表示されているレコードが対象なので2ページ目は含まれません。この場合は、以下のページのように自動リロードで全ページ分を更新という仕組みになります。

更新専用の一覧を使って関連レコードの集計を一括で行う方法

フィールドに関する「やること」はこちらをご確認ください。

「フィールド」

「kintoneアプリのカスタマイズ」の「条件」の話

カスタマイズの「アクション」は「やること」と「条件」と「追加条件」で構成されています。先ほどまでは「やること」の説明でした。「条件」は画面を表示した時やフィールド値が変わった時など、色々な種類があります。

例えば「レコード追加・編集画面を表示した時またはフィールドの値を編集して値が変わった時」だと、追加画面か編集画面を表示した時か特定のフィールド値が変わった時に「アクション」が実行されます。フィールド地に紐づく値で何かの処理をする時に、「アクション」をまとめることができるので便利な「条件」です。

よく使われそうなのは「レコードを保存する直前(削除時は除く)」で、保存前に必須チェックや値のセットが可能です。「レコードを保存した直後(削除後は除く)」とは異なるので名称をよく見て間違えないようにしましょう。

カスタマイン独自の判定だと「計算フィールドの値が変わった時」や「ルックアップで取得が成功した時」というものもあります。

kintoneの動作に関する「条件」の一覧はこちらをご確認ください。

「イベント」

プラグイン連携に関する「条件」はこちら。

「プラグイン連携」

カスタマイン固有の「条件」はこちらです。

「その他条件」

「kintoneアプリのカスタマイズ」の「追加条件」の話

「条件」は「〜した時」で、「追加条件」は「〜ならば」という表記です。なので「アクション」の動作は『「〜した時」に「〜ならば」実行する』という事になります。

画面系で個人的に好きなのは「現在の画面が再利用モードの追加画面ならば」や「現在の画面がアプリアクションから開いた追加画面ならば」や「Customineの検索フォームで検索した一覧ならば」です。特定の画面を判定なので、これが無いと出来ない動きというものに対応出来るのが良いですね。

同様にフィールドとその他に関してもマニアックなものが用意されています。「フィールドの全ての選択値が指定の値のいずれかと等しいならば」は、毎回どんな動きになるのかが把握できません(苦笑)

その他だと「指定のグループ・組織のうち所属していないものが1つ以上あれば」のように組織の判定は種類がたくさんあります。他に気づきにくいのは「一覧のレコードがチェックボックスで選択されているならば」でしょうか。これを使うと、「一覧にチェックボックス列を追加する」や「一覧にラジオボタン列を追加する」で選択したレコードだけに「やること」を実行できます。

また、「追加条件」は反転できます。反転というのは、緑色のアイコンを押す操作です。反転すると逆の動きになるので使いこなすと便利です。詳しくはこちらのページをご確認ください。

追加条件は反転できます

「定期実行タスク」と「kintoneアプリのWebhook」はJob Runnerという仕組みで動きます

Job Runnerはkintone外で動作しているので、kintoneへの接続はAPIトークンを使って実行します。APIトークンは「kintone 接続設定を行う」で設定するのですが、kintoneの注意点として1回のリクエストで1アプリに指定できるAPIトークンは1つだけ、という制約があります。Job Runnerでは処理の最後に一括でレコード更新をするので、制約回避のため接続設定は1アプリに1つだけにしてください。

メインの処理が完了した時」という「条件」もありますが、これを使うケースはかなりレアなのであまり気にしなくても良いかも。。

カスタマインの「定期実行タスク」

設定した時間にカスタマイズを実行することが出来ます。kintoneアプリを操作しなくても実行出来るので、実行忘れなどがありません。

具体的には、毎晩実行させたり、CSVで読み込んだ後に一括更新をするために呼び出したりなどがあります。

また、月初に前月のレコードを集計するという使い方だと、出社してきたら集計が終わってるという夢のような環境を構築できます。また、「定期実行タスク」は「kintoneアプリのカスタマイズ」の「定期実行タスクを直ちに起動する」で任意に呼び出すことも可能です。設定例はこちらをご覧ください。

大量のレコードを安全に処理する方法 : 検索文字列を作成する事例

「定期実行タスク」の「条件」と「追加条件」の話

「kintoneアプリのカスタマイズ」と違って画面操作がないので、「条件」と「追加条件」の種類は少なめです。「定期実行タスク」の場合は「実行予定時刻になった時」でカスタマイズが開始します。設定が複数ページで作成されていて、特定の時間だけ実行させるのであば「時刻が指定範囲に入るならば」が使用できます。また「指定の日付が特定の曜日ならば」を使うと特定の曜日だけ実行ということも可能です。

カスタマインの「kintoneアプリのWebhook」

レコードで保存した時やkintone外からのレコード更新で、kintoneのWebhook通知が送信されるような場合にカスタマイズを実行できます。ただ、Webhook通知が送信されるには1レコードの追加や更新という制約があります。また、60回制限もありますので、詳細はkintoneの仕様をご確認ください。

なお、アプリの画面からボタンを押した時に「kintone Webhook を起動する」を使って呼び出すと、kintoneのwebhook通知を経由しないので60回制限はありません。制約を気にしないくていいので楽ですね。アプリでレコードを保存した時はWebhook通知で渡されるのは1レコードですが、「kintone Webhook を起動する」の場合は複数レコードを渡すことができます。

Webhook から渡されたレコードを取得する」の後に「レコード1行が準備できた時」で繋ぐと、複数レコードを1レコード単位で処理できます。とは言え、数千レコードとかでレコード毎に別アプリのレコードを取得するような仕組みだとkintoneのAPIリクエストの上限を超えたりと別の問題が発生するので避ける方がオススメです。

設定例はこちらのページをご確認ください。

はじめてのWebhookカスタマイズ : 関連レコードの集計

「kintoneアプリのWebhook」の「条件」と「追加条件」の話

Webhookの処理開始は「Webhook を開始した時」で始めます。

Webhookの発生がレコードの編集によるならば」のように、どのレコード操作で呼び出されたのかによって「アクション」の実行を制御できます。レアな設定としては「Webhookの発生がStripeのチェックアウトセッション完了によるならば」のように、Stripeで決済された時に呼び出すという「追加条件」もあります。

デプロイットの概要

アプリを開発環境から本番環境に配布、というのが一般的なイメージと思います。他にはレコードのバックアップとリストアが出来ます。

デプロイットについてはこちらのページをご確認ください。

https://deploit.gusuku.io

デプロイットの配布

デプロイットではプロジェクト内に環境を作成するので、その環境間でアプリを配布できます。配布に関しては以下のブログをご確認ください。

配布時にルックアップがあると注意が必要です。ルックアップがある場合の配布についてはこちらをご確認ください。

なお、配布時にエラーになった場合の対処方法はこちらのブログをご確認ください。かなり大作です。

デプロイットのバックアップとリストア

kintoneの仕様としてコメントのようにリストア出来ない項目もあるので、バックアップ元のアプリにリストアという操作はオススメできません。デプロイットでは環境を複数作成できるので、リストア専用の環境を作成してそちらのアプリにリストアしてフィールド値を確認する手順をオススメします。

エブリサイトの概要

エブリサイトではkintoneを始めとした様々なサービスのデータを、Webサイトとして入出力可能です。製品ページは以下をご確認ください。

社外もチームだ!
エブリサイトで社外DXを!

gusuku Everysite(グスク エブリサイト)は、kintoneをはじめとした複数のサービスと連携し、そのデータを自由なレイアウト・挙動でWebサイトとして入出力できるフロントエンド開発サービスです。

https://everysite.gusuku.io/

多様なページ構成が実現できるということもあるので、作成できる例を確認できるようにデモを作成しました。これらのページはCybozu Daysの会場で実際にデモを見ることが可能です!

その際に、エブリサイトの用語でつまづきそうな気がしますので、事前にこちらのページで予習していただければ!

https://docs.everysite.net

https://support.gusuku.io/ja-JP/support/solutions/36000200008

色々なデモページをご用意していますのでお楽しみに!

是非、ブースまでお越しください!!

投稿者プロフィール

アバター画像
"サイボウズ公認kintoneエバンジェリスト
カスタマインやデプロイットでも色々とやってます"