kintone の便利な機能の一つに既存の「レコードを再利用する」という機能があります。

今回は、このレコードを再利用する際にあると便利な、ちょっとしたカスタマイズをご紹介します。


Customineの基本的な事柄は、こちらの「はじめてのカスタマイズ」をご参照ください。


利用想定シーン

kintone でよく利用されるアプリの一つに、日報アプリがあると思います。アプリストアのおすすめアプリにも入っています。

日報や週報は、業務内容は昨日のものを継続していたりするので、前回作成したレコードを再利用するとすばやく入力できるものの代表ではないかと思います。

ただしそのままコピーしてしまっては日付など色々困ることも多いと思いますので、カスタマイズで工夫したいアプリの代表とも言えると思います。

今回はこの日報アプリをカスタマイズしてみたいと思います。


Customine の設定

それではカスタマイズを始めていきます。カスタマイズのアプリ選択から、日報アプリを選択します。もしまだ画面上に現れていない場合には、「追加」をクリックして kintone アプリを Customine でカスタマイズできる状態にして下さい。


今回は、「やること」ではなく、「条件」を先に考えてみましょう。レコードを再利用するときに利用する条件は現在のところ「再利用モードで追加画面を表示した時」の一つしかありません。ですのでここでのカスタマイズは、

  • 「再利用モード」を使ったときに、フィールドをクリアする & 必要な初期値を入れる

ということを考えてみます。早速やってみましょう。


フィールドの値をクリアする

まず、再利用した際に、どのフィールドを再利用して、どのフィールドを再利用しない(新たに入力する)のかを考えます。この日報アプリでは、今回は「目標達成度」と「所感、学び」のフィールドを再利用させないようにしたいと思います。


さきほど「条件」を先に考えて、というお話をしましたので、まず条件として「再利用モードで追加画面を表示した時」をセットします。

次に「やること」で以下のように設定します。

  • 「やること」にカテゴリー:ボタンの中から、「フィールド値をクリアする」を選択します
  • 「フィールド」は、「目標達成度」と「所感、学び」のフィールドを選択して下さい

これでこのアクションは完成です。最終的にはこのような形になります。

一旦ここまでで、kintoneに登録して動作を確認してみましょう。「kintoneアプリへの登録」をクリックします。

日報の kintone アプリを開いて、既存レコードの詳細画面から「レコードを再利用する」をクリックして動作を確認してみて下さい。


気になる部分の動きを修正する

実際に動かしてみると、いくつか気になる部分があるかと思います。

  • 「目標達成度」フィールドがいつも「達成」になる
  • 「日付」フィールドが過去の日付のまま

これらを修正してみましょう。


ラジオボタンをクリアしたときの動きについて

ラジオボタンをクリアしたときの動作は、kintone アプリ自体のフォームの設定の「初期値」の設定に従います。 kintone 側でアプリの設定を開いて、目標達成度のフォームの設定を見ると確かに初期値が「達成」になっています。

これを変更することで、コピーしたあとの、カスタマイズでクリアしたときの動きが決定されるので、必要に応じて「未達」に変更することを検討して下さい。


日付フィールドの設定

日付フィールドは、コピーするのではなく当日の日付が自動的に入ると便利ですので、そのようなカスタマイズを追加してみましょう。


以下のように設定します。

  • カテゴリー:フィールドの中から、「フィールドに値をセットする」を選択します
  • 「フィールド」は「日付」を選択します
  • 「値」には「=today()」と入力します

この設定で、日付フィールドに当日の日付がセットされます。

これを実行する条件は、フィールド値のクリアと同じく「再利用モードで追加画面を表示した時」をセットしておきましょう。

最終的にはこのような形になります。

「kintoneアプリへ登録」して動きを確認してみてください。思ったようなカスタマイズになりましたでしょうか?


おまけ:フィールドが非常に多いアプリの場合

この日報アプリは非常にシンプルなので、「フィールドの値をクリアする」を便利に使うことが出来ました。これが仮にフィールド数が非常に多いアプリに対してカスタマイズをしたい場合、クリアするフィールドの選択も非常に多くなり、設定するのが大変になってしまいます。


そのような場合に便利なのが、やること「指定以外のすべてのフィールド値をクリアする」です。これを利用すると、「クリアしたくない」フィールドを選択することが可能です。

このアプリで利用するとすると、以下のような設定になります。アプリのフィールド数によって、使い分けて下さい。

まとめ

レコード再利用時のカスタマイズは以上になります。アプリのフィールド数に合わせて、クリアするフィールドを指定するのか、残すフィールドを指定するのか、どちらかを選んでカスタマイズしてみて下さい。


また、日付フィールドには「today()」、日時フィールドには「now()」で現在の日付や時刻が取得できますので、これらの値をフィールドにセットすることが可能です。これらも合わせてご活用下さい。


もし分からないことがありましたら、フォーラムの方でご質問ください。