krewSheetとは?
krewSheetはエクセルのような操作感覚でkintoneのデータを操作できる、とても高性能なプラグインです。
gusuku Customineは、このkrewSheetとも連携してカスタマイズを作成することが出来ます!
ということで今回は例として、krewSheetで管理されているマスタアプリを更新したら、それを参照している全てのレコードを更新するというカスタマイズを作成してみます。
krewSheetを利用しない場合で、ルックアップを更新するパターンには以下のようなケースがありますので、用途に応じてそれぞれを参考にしてください。
- マスタ側を更新したら、それを参照している全てのレコードを更新する → 【ルックアップ先の自動更新をするkintoneのカスタマイズ】
- ルックアップを参照している側で、常にルックアップを更新する → 【ルックアップしているフィールドの自動更新をするkintoneのカスタマイズ】
- ルックアップを参照しているレコードの中で、条件を指定して更新する → 【条件を指定してルックアップの更新をするkintoneのカスタマイズ】
Customineの基本的な事柄は、こちらの「はじめてのカスタマイズ」をご参照ください。
利用想定シーン
製品マスタが膨大なレコードを持っていて、それをkrewSheetで操作しているようなシーンを想定しています。
ここで管理しているルックアップのコピー元を更新したら、それを参照しているコピー先のレコードが全て更新されるようにします。
まず、アプリの構造は、【ルックアップ先の自動更新をするkintoneのカスタマイズ】で利用しているものと同様です。詳細はリンク先をご確認ください。
製品マスタを案件管理アプリが製品コードでルックアップしている形になります。
Customineの設定
krewSheetが利用可能になっている製品マスタアプリに対して、カスタマイズを作成します。
大まかな手順は以下の2段階になります。
- krewSheetで保存しようとしているレコードを取得して、
- そのレコードを元に、別のレコードを更新する。
それでは設定してみましょう。
保存しようとしているレコードの取得
まずkrewSheetが保存しようとしているレコードを取得します。
- 「やること」にカテゴリー:外部サービス連携の中から、「krewSheetで保存しようとしているレコードを取得する」を選択します
- 「条件」には「レコードを保存した直後(削除後は除く)」を選択します
これで、保存ボタンを押した時のレコードを取得することが出来ます。
ルックアップ先の更新
次にこれを使って、ルックアップの参照先を更新します。
若干設定項目が多いのですが、落ち着いて設定していきます。
- 「やること」にカテゴリー:レコードの中から、「レコードをもとに別のレコードを更新する」を選択します
- 「更新先アプリ」は、ルックアップを参照している、案件管理アプリを選択します
- 「キーとなる更新先のフィールド」は、ルックアップフィールド、ここでは「製品コード」を選択します
- 「元になるレコード」は、上記のアクション番号1を選択します
- 「キーの値となる元になるレコードのフィールド」は、製品マスタアプリの「製品コード」を選択します。この値をキーとして、更新処理を実行することになります
- 「マッピング」は製品コードフィールドに「= 製品コード」と記述します。ルックアップの値を再度セットし直しています
- 「更新の競合をチェックする」は「チェックする」を選択しておいてください
これで更新する設定は整いました。
条件側ですが、
- 「条件」には、「他のアクションの実行が完了した時」を選択します
- 「アクション」には、上記のアクション番号1を選択します
設定は以上になります。
黄色の「kintoneアプリへ登録」をクリックして、kintoneアプリに反映させて見てください。
ブラウザをリロードした後、製品マスタのレコードを更新して動作を確認してみてください。
krewSheetで更新されたマスタを参照している、案件管理側のレコードが更新されていることが確認できると思います。
まとめ
krewSheetでルックアップ先の自動更新をするkintoneのカスタマイズは以上になります。
krewSheetで更新したレコードを使って、他のアプリのレコードを書き換えられるようになると、更に使い道が広がりますね。ぜひお試しください。
もし分からないことがありましたら、チャットサポートまでお問い合わせください。